Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Summer Update Mechanics (12.7) #9

Closed
wants to merge 10 commits into from
Closed

Conversation

hyresu
Copy link
Contributor

@hyresu hyresu commented Aug 24, 2021

Description

This pull request is intended to include the new mechanics from the Summer Update 2021 (12.7)

Type of change

Please delete options that are not relevant.

  • New feature (non-breaking change which adds functionality)

How Has This Been Tested

I tested the mechanics using the new items, you can test it as well including the following attributes on new items:

For the specialized magic levels:
"deathmagiclevelpoints"
"energymagiclevelpoints"
"earthmagiclevelpoints"
"firemagiclevelpoints"
"healingmagiclevelpoints"
"holymagiclevelpoints"
"icemagiclevelpoints"

For the incremented magic shield capacity:
"magicshieldcapacitypercent"
"magicshieldcapacityflat"

For perfect shot:
"perfectshotdamage"
"perfectshotrange"

For cleave:
"cleavepercent"

For reflect:
"reflectflatall"
"reflectpercentall"

Test Configuration:

  • Server Version: 12.7
  • Client: 12.7
  • Operating System: Windows Client / Ubuntu 20.04 Server

Checklist

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I checked the PR checks reports
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works

@dudantas
Copy link
Member

Your pull request is greatly appreciated, thank you

@beats-dh
Copy link
Collaborator

Sorry if you haven't finished, just a reminder.

Screenshot_20210824-091013-266

@Bipbop69
Copy link

Bipbop69 commented Sep 5, 2021

image
I'm pulling to the forehead on the base otbr more I'm having this error do you have any idea what it is?

@hyresu
Copy link
Contributor Author

hyresu commented Sep 11, 2021

image
I'm pulling to the forehead on the base otbr more I'm having this error do you have any idea what it is?

Sorry for not replying, updated the pr, can you try again?

@sonarqubecloud
Copy link

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

@Bipbop69
Copy link

image
I'm pulling to the forehead on the base otbr more I'm having this error do you have any idea what it is?

Sorry for not replying, updated the pr, can you try again?

using your last commit i had another error
/usr/include/c++/6/bits/stl_map.h:474:7: note: candidate: std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const key_type&) [with _Key = CombatType_t; _Tp = int; _Compare = std::less<CombatType_t>; _Alloc = std::allocator<std::pair<const CombatType_t, int> >; std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type = int; std::map<_Key, _Tp, _Compare, _Alloc>::key_type = CombatType_t] <near match> operator[](const key_type& __k) ^~~~~~~~ /usr/include/c++/6/bits/stl_map.h:474:7: note: conversion of argument 1 would be ill-formed: In file included from /home/ot/otbr/src/game.h:32:0, from /home/ot/otbr/src/actions.cpp:26: /home/ot/otbr/src/player.h:447:42: error: invalid conversion from ‘size_t {aka long unsigned int}’ to ‘std::map<CombatType_t, int>::key_type {aka CombatType_t}’ [-fpermissive] this->reflectMapFlat[combatTypeToIndex(combatType)] = std::max(0, this->reflectMapFlat[combatTypeToIndex(combatType)] + value); ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ In file included from /usr/include/c++/6/map:61:0, from /home/ot/otbr/src/otpch.h:34, from /home/ot/otbr/src/actions.cpp:20: /usr/include/c++/6/bits/stl_map.h:494:7: note: candidate: std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](std::map<_Key, _Tp, _Compare, _Alloc>::key_type&&) [with _Key = CombatType_t; _Tp = int; _Compare = std::less<CombatType_t>; _Alloc = std::allocator<std::pair<const CombatType_t, int> >; std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type = int; std::map<_Key, _Tp, _Compare, _Alloc>::key_type = CombatType_t] <near match> operator[](key_type&& __k) ^~~~~~~~ /usr/include/c++/6/bits/stl_map.h:494:7: note: conversion of argument 1 would be ill-formed: In file included from /home/ot/otbr/src/game.h:32:0, from /home/ot/otbr/src/actions.cpp:26: /home/ot/otbr/src/player.h:447:42: error: invalid conversion from ‘size_t {aka long unsigned int}’ to ‘std::map<CombatType_t, int>::key_type {aka CombatType_t}’ [-fpermissive] this->reflectMapFlat[combatTypeToIndex(combatType)] = std::max(0, this->reflectMapFlat[combatTypeToIndex(combatType)] + value); ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/ot/otbr/src/player.h:447:90: error: ambiguous overload for ‘operator[]’ (operand types are ‘std::map<CombatType_t, int>’ and ‘size_t {aka long unsigned int}’) this->reflectMapFlat[combatTypeToIndex(combatType)] = std::max(0, this->reflectMapFlat[combatTypeToIndex(combatType)] + value); ^ In file included from /usr/include/c++/6/map:61:0, from /home/ot/otbr/src/otpch.h:34, from /home/ot/otbr/src/actions.cpp:20: /usr/include/c++/6/bits/stl_map.h:474:7: note: candidate: std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const key_type&) [with _Key = CombatType_t; _Tp = int; _Compare = std::less<CombatType_t>; _Alloc = std::allocator<std::pair<const CombatType_t, int> >; std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type = int; std::map<_Key, _Tp, _Compare, _Alloc>::key_type = CombatType_t] <near match> operator[](const key_type& __k) ^~~~~~~~ /usr/include/c++/6/bits/stl_map.h:474:7: note: conversion of argument 1 would be ill-formed: In file included from /home/ot/otbr/src/game.h:32:0, from /home/ot/otbr/src/actions.cpp:26: /home/ot/otbr/src/player.h:447:108: error: invalid conversion from ‘size_t {aka long unsigned int}’ to ‘std::map<CombatType_t, int>::key_type {aka CombatType_t}’ [-fpermissive] this->reflectMapFlat[combatTypeToIndex(combatType)] = std::max(0, this->reflectMapFlat[combatTypeToIndex(combatType)] + value); ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ In file included from /usr/include/c++/6/map:61:0, from /home/ot/otbr/src/otpch.h:34, from /home/ot/otbr/src/actions.cpp:20: /usr/include/c++/6/bits/stl_map.h:494:7: note: candidate: std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](std::map<_Key, _Tp, _Compare, _Alloc>::key_type&&) [with _Key = CombatType_t; _Tp = int; _Compare = std::less<CombatType_t>; _Alloc = std::allocator<std::pair<const CombatType_t, int> >; std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type = int; std::map<_Key, _Tp, _Compare, _Alloc>::key_type = CombatType_t] <near match> operator[](key_type&& __k) ^~~~~~~~ /usr/include/c++/6/bits/stl_map.h:494:7: note: conversion of argument 1 would be ill-formed: In file included from /home/ot/otbr/src/game.h:32:0, from /home/ot/otbr/src/actions.cpp:26: /home/ot/otbr/src/player.h:447:108: error: invalid conversion from ‘size_t {aka long unsigned int}’ to ‘std::map<CombatType_t, int>::key_type {aka CombatType_t}’ [-fpermissive] this->reflectMapFlat[combatTypeToIndex(combatType)] = std::max(0, this->reflectMapFlat[combatTypeToIndex(combatType)] + value); ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ CMakeFiles/otbr_lib.dir/build.make:103: recipe for target 'CMakeFiles/otbr_lib.dir/src/actions.cpp.o' failed make[2]: *** [CMakeFiles/otbr_lib.dir/src/actions.cpp.o] Error 1 CMakeFiles/Makefile2:103: recipe for target 'CMakeFiles/otbr_lib.dir/all' failed make[1]: *** [CMakeFiles/otbr_lib.dir/all] Error 2 Makefile:90: recipe for target 'all' failed make: *** [all] Error 2 root@:/home/ot/otbr/cmake# ]

I decided to remove the reflect system for the forehead it compiled
testing the 'cleavepercent' function crashed below

2021-09-14 23:20:03 - WeaponMelee::useWeapon (this=0x7fffeae10a30, player=0x7fff93db0c50, item=0x7fffcbdbad70, target=0x7fff93ecaf40) at /home/ot/otbr/src/weapons.cpp:643 2021-09-14 23:20:03 - 643 for (Creature* creature : *firstTile->getCreatures()) { 2021-09-14 23:20:03 - 2021-09-14 23:20:03 - Thread 4 (Thread 0x7fffecc02700 (LWP 29117)): 2021-09-14 23:20:03 - #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 2021-09-14 23:20:03 - No locals. 2021-09-14 23:20:03 - #1 0x00007ffff7b0b50c in std::condition_variable::wait(std::unique_lock<std::mutex>&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6 2021-09-14 23:20:03 - No symbol table info available. 2021-09-14 23:20:03 - #2 0x0000555555785fee in DatabaseTasks::threadMain() (this=0x555555a54060 <g_databaseTasks>) at /home/ot/otbr/src/databasetasks.cpp:60 2021-09-14 23:20:03 - taskLockUnique = {_M_device = 0x555555a54098 <g_databaseTasks+56>, _M_owns = true} 2021-09-14 23:20:03 - #3 0x00007ffff7b10e6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6 2021-09-14 23:20:03 - No symbol table info available. 2021-09-14 23:20:03 - #4 0x00007ffff78414a4 in start_thread (arg=0x7fffecc02700) at pthread_create.c:456 2021-09-14 23:20:03 - __res = <optimized out> 2021-09-14 23:20:03 - pd = 0x7fffecc02700 2021-09-14 23:20:03 - now = <optimized out> 2021-09-14 23:20:03 - unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737165403904, 4796081961131129359, 140737184351470, 140737184351471, 140737157013504, 3, -4796119601117054449, -4796065141148141041}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} 2021-09-14 23:20:03 - not_first_call = <optimized out> 2021-09-14 23:20:03 - pagesize_m1 = <optimized out> 2021-09-14 23:20:03 - sp = <optimized out> 2021-09-14 23:20:03 - freesize = <optimized out> 2021-09-14 23:20:03 - __PRETTY_FUNCTION__ = "start_thread" 2021-09-14 23:20:03 - #5 0x00007ffff51bed0f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97 2021-09-14 23:20:03 - No locals. 2021-09-14 23:20:03 - 2021-09-14 23:20:03 - Thread 3 (Thread 0x7fffed615700 (LWP 29116)): 2021-09-14 23:20:03 - #0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225 2021-09-14 23:20:03 - No locals. 2021-09-14 23:20:03 - #1 0x000055555572e622 in __gthread_cond_timedwait () at /usr/include/x86_64-linux-gnu/c++/6/bits/gthr-default.h:871 2021-09-14 23:20:03 - No locals. 2021-09-14 23:20:03 - #2 __wait_until_impl (__atime=..., __lock=..., this=0x555555a553e0 <g_scheduler+64>) at /usr/include/c++/6/condition_variable:166 2021-09-14 23:20:03 - __ts = {tv_sec = 1631672402, tv_nsec = 955236756} 2021-09-14 23:20:03 - #3 std::condition_variable::wait_until<std::chrono::duration<long, std::ratio<1l, 1000000000l> > >(std::unique_lock<std::mutex>&, std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&) () at /usr/include/c++/6/condition_variable:106 2021-09-14 23:20:03 - __lock = @0x7fffed614e50: {_M_device = 0x555555a553b8 <g_scheduler+24>, _M_owns = true} 2021-09-14 23:20:03 - this = 0x555555a553e0 <g_scheduler+64> 2021-09-14 23:20:03 - #4 Scheduler::threadMain() (this=0x555555a553a0 <g_scheduler>) at /home/ot/otbr/src/scheduler.cpp:34 2021-09-14 23:20:03 - ret = no_timeout 2021-09-14 23:20:03 - eventLockUnique = {_M_device = 0x555555a553b8 <g_scheduler+24>, _M_owns = true} 2021-09-14 23:20:03 - #5 0x00007ffff7b10e6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6 2021-09-14 23:20:03 - No symbol table info available. 2021-09-14 23:20:03 - #6 0x00007ffff78414a4 in start_thread (arg=0x7fffed615700) at pthread_create.c:456 2021-09-14 23:20:03 - __res = <optimized out> 2021-09-14 23:20:03 - pd = 0x7fffed615700 2021-09-14 23:20:03 - now = <optimized out> 2021-09-14 23:20:03 - unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737175967488, 4796081961131129359, 140737488346382, 140737488346383, 140737167577088, 3, -4796120432730097137, -4796065141148141041}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} 2021-09-14 23:20:03 - not_first_call = <optimized out> 2021-09-14 23:20:03 - pagesize_m1 = <optimized out> 2021-09-14 23:20:03 - sp = <optimized out> 2021-09-14 23:20:03 - freesize = <optimized out> 2021-09-14 23:20:03 - __PRETTY_FUNCTION__ = "start_thread" 2021-09-14 23:20:03 - #7 0x00007ffff51bed0f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97 2021-09-14 23:20:03 - No locals. 2021-09-14 23:20:03 - 2021-09-14 23:20:03 - Thread 2 (Thread 0x7fffede16700 (LWP 29115)): 2021-09-14 23:20:03 - #0 WeaponMelee::useWeapon (this=0x7fffeae10a30, player=0x7fff93db0c50, item=0x7fffcbdbad70, target=0x7fff93ecaf40) at /home/ot/otbr/src/weapons.cpp:643 2021-09-14 23:20:03 - Python Exception <class 'RuntimeError'> Type is not a template.: 2021-09-14 23:20:03 - creature = <optimized out> 2021-09-14 23:20:03 - __for_range = <error reading variable> 2021-09-14 23:20:03 - firstCleaveTargetPos = <optimized out> 2021-09-14 23:20:03 - secondCleaveTargetPos = <optimized out> 2021-09-14 23:20:03 - firstTile = 0x7fff733006d0 2021-09-14 23:20:03 - secondTile = 0x7fff73300610 2021-09-14 23:20:03 - damageModifier = 100 2021-09-14 23:20:03 - #1 0x00005555556665b1 in doAttacking (this=0x7fff93db0c50) at /home/ot/otbr/src/player.cpp:3820 2021-09-14 23:20:03 - tool = <optimized out> 2021-09-14 23:20:03 - weapon = <optimized out> 2021-09-14 23:20:03 - delay = 1200 2021-09-14 23:20:03 - result = false 2021-09-14 23:20:03 - classicSpeed = false 2021-09-14 23:20:03 - task = <optimized out> 2021-09-14 23:20:03 - #2 0x00005555556b774a in std::function<void ()>::operator()() const () at /usr/include/c++/6/functional:2127 2021-09-14 23:20:03 - this = 0x7fff4422fd80 2021-09-14 23:20:03 - #3 Task::operator()() () at /home/ot/otbr/src/tasks.h:40 2021-09-14 23:20:03 - this = 0x7fff4422fd70 2021-09-14 23:20:03 - #4 Dispatcher::threadMain() (this=0x555555a56200 <g_dispatcher>) at /home/ot/otbr/src/tasks.cpp:60 2021-09-14 23:20:03 - task = 0x7fff4422fd70 2021-09-14 23:20:03 - taskLockUnique = {_M_device = 0x555555a56210 <g_dispatcher+16>, _M_owns = false} 2021-09-14 23:20:03 - #5 0x00007ffff7b10e6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6 2021-09-14 23:20:03 - No symbol table info available. 2021-09-14 23:20:03 - #6 0x00007ffff78414a4 in start_thread (arg=0x7fffede16700) at pthread_create.c:456 2021-09-14 23:20:03 - __res = <optimized out> 2021-09-14 23:20:03 - pd = 0x7fffede16700 2021-09-14 23:20:03 - now = <optimized out> 2021-09-14 23:20:03 - unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737184360192, 4796081961131129359, 140737488346382, 140737488346383, 140737175969792, 3, -4796121531704854001, -4796065141148141041}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} 2021-09-14 23:20:03 - not_first_call = <optimized out> 2021-09-14 23:20:03 - pagesize_m1 = <optimized out> 2021-09-14 23:20:03 - sp = <optimized out> 2021-09-14 23:20:03 - freesize = <optimized out> 2021-09-14 23:20:03 - __PRETTY_FUNCTION__ = "start_thread" 2021-09-14 23:20:03 - #7 0x00007ffff51bed0f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97 2021-09-14 23:20:03 - No locals. 2021-09-14 23:20:03 - 2021-09-14 23:20:03 - Thread 1 (Thread 0x7ffff7fd0780 (LWP 29111)): 2021-09-14 23:20:03 - #0 0x00007ffff51bf303 in epoll_wait () at ../sysdeps/unix/syscall-template.S:84 2021-09-14 23:20:03 - No locals. 2021-09-14 23:20:03 - #1 0x0000555555590a9d in run (ops=..., block=<optimized out>, this=0x555555a8c8b0) at /usr/include/boost/asio/detail/impl/epoll_reactor.ipp:392 2021-09-14 23:20:03 - timeout = <optimized out> 2021-09-14 23:20:03 - events = {{events = 1, data = {ptr = 0x555555ab42b0, fd = 1437287088, u32 = 1437287088, u64 = 93824997868208}}, {events = 1, data = {ptr = 0x555555a8c908, fd = 1437124872, u32 = 1437124872, u64 = 93824997705992}}, {events = 4160585776, data = {ptr = 0x100007fff, fd = 32767, u32 = 32767, u64 = 4295000063}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 1, data = {ptr = 0xf7ffe17000000000, fd = 0, u32 = 0, u64 = 17870249717582004224}}, {events = 32767, data = {ptr = 0x55555555ef5d, fd = 1431695197, u32 = 1431695197, u64 = 93824992276317}}, {events = 2706792413, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x7ffff7ffe4c8, fd = -134224696, u32 = 4160742600, u64 = 140737354130632}}, {events = 4294959152, data = {ptr = 0xf7fe897800007fff, fd = 32767, u32 = 32767, u64 = 17869871519941820415}}, {events = 1, data = {ptr = 0x7ffff7ffe170, fd = -134225552, u32 = 4160741744, u64 = 140737354129776}}, {events = 4294959136, data = {ptr = 0x5555ca1100007fff, fd = 32767, u32 = 32767, u64 = 6149043040607567871}}, {events = 21845, data = {ptr = 0x4f152227, fd = 1326785063, u32 = 1326785063, u64 = 1326785063}}, {events = 4294967295, data = {ptr = 0xf63b8fd000000000, fd = 0, u32 = 0, u64 = 17742933280472170496}}, {events = 32767, data = {ptr = 0x7ffff783bef0, fd = -142360848, u32 = 4152606448, u64 = 140737345994480}}, {events = 4160656632, data = {ptr = 0x7fff, fd = 32767, u32 = 32767, u64 = 32767}}, {events = 0, data = {ptr = 0x7ffff7de7b94 <_dl_fixup+212>, fd = -136414316, u32 = 4158552980, u64 = 140737351941012}}, {events = 1, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x7ffff63b8e88, fd = -163869048, u32 = 4131098248, u64 = 140737324486280}}, {events = 4125550504, data = {ptr = 0xffffe46000007fff, fd = 32767, u32 = 32767, u64 = 18446713699700867071}}, {events = 32767, data = {ptr = 0x7ffff7def29a <_dl_runtime_resolve_xsavec+122>, fd = -136383846, u32 = 4158583450, u64 = 140737351971482}}, {events = 4131085584, data = {ptr = 0xf63b914800007fff, fd = 32767, u32 = 32767, u64 = 17742934895379906559}}, {events = 32767, data = {ptr = 0x7ffff63b5b88 <vtable for CryptoPP::ByteQueue+16>, fd = -163882104, u32 = 4131085192, u64 = 140737324473224}}, {events = 1436869200, data = {ptr = 0x55a561a800005555, fd = 21845, u32 = 21845, u64 = 6171446238563554645}}, {events = 21845, data = {ptr = 0x555555a55d50 <g_game+1168>, fd = 1436900688, u32 = 1436900688, u64 = 93824997481808}}, {events = 1436899720, data = {ptr = 0x55a559b800005555, fd = 21845, u32 = 21845, u64 = 6171437511190009173}}, {events = 21845, data = {ptr = 0x7fffffffe530, fd = -6864, u32 = 4294960432, u64 = 140737488348464}}, {events = 4158552980, data = {ptr = 0x100007fff, fd = 32767, u32 = 32767, u64 = 4295000063}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 1436895616, data = {ptr = 0xf783bef000005555, fd = 21845, u32 = 21845, u64 = 17835308887318746453}}, {events = 32767, data = {ptr = 0x7fffffffe4c0, fd = -6976, u32 = 4294960320, u64 = 140737488348352}}, {events = 4158583450, data = {ptr = 0x7fff, fd = 32767, u32 = 32767, u64 = 32767}}, {events = 0, data = {ptr = 0x380, fd = 896, u32 = 896, u64 = 896}}, {events = 29, data = {ptr = 0x55a8b35000000000, fd = 0, u32 = 0, u64 = 6172380445490020352}}, {events = 21845, data = {ptr = 0x555555a4fda0 <g_loaderLock>, fd = 1436876192, u32 = 1436876192, u64 = 93824997457312}}, {events = 3, data = {ptr = 0x2000000000, fd = 0, u32 = 0, u64 = 137438953472}}, {events = 0, data = {ptr = 0x6e69666e69736168, fd = 1769169256, u32 = 1769169256, u64 = 7956002841128296808}}, {events = 1936028777, data = {ptr = 0x800006c756f, fd = 7107951, u32 = 7107951, u64 = 8796100130159}}, {events = 0, data = {ptr = 0x7fffffffe160, fd = -7840, u32 = 4294959456, u64 = 140737488347488}}, {events = 8096, data = {ptr = 0xffff, fd = 65535, u32 = 65535, u64 = 65535}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0xff000000000000, fd = 0, u32 = 0, u64 = 71776119061217280}}, {events = 0, data = {ptr = 0x756c2e74696e692f, fd = 1768843567, u32 = 1768843567, u64 = 8461188877442246959}}, {events = 1966029665, data = {ptr = 0x756c2e3f732f7273, fd = 1932489331, u32 = 1932489331, u64 = 8461188649972626035}}, {events = 1966029665, data = {ptr = 0x6c61636f6c2f7273, fd = 1815048819, u32 = 1815048819, u64 = 7809632559044719219}}, {events = 1814970159, data = {ptr = 0x2f7273752f3b6175, fd = 792420725, u32 = 792420725, u64 = 3418922014268416373}}, {events = 1633906540, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0xff0000, fd = 16711680, u32 = 16711680, u64 = 16711680}}, {events = 1768843567, data = {ptr = 0x752f3b61756c2e74, fd = 1970024052, u32 = 1970024052, u64 = 8444033116110859892}}, {events = 1932489331, data = {ptr = 0x752f3b61756c2e3f, fd = 1970023999, u32 = 1970023999, u64 = 8444033116110859839}}, {events = 1815048819, data = {ptr = 0x6c2e3f2f6c61636f, fd = 1818321775, u32 = 1818321775, u64 = 7795237477939241839}}, {events = 792420725, data = {ptr = 0x61636f6c2f727375, fd = 796029813, u32 = 796029813, u64 = 7017575154816545653}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}} <repeats 13 times>, {events = 0, data = {ptr = 0x2, fd = 2, u32 = 2, u64 = 2}}, {events = 14, data = {ptr = 0x80000000, fd = -2147483648, u32 = 2147483648, u64 = 2147483648}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x200000000, fd = 0, u32 = 0, u64 = 8589934592}}, {events = 0, data = {ptr = 0x800000000000000e, fd = 14, u32 = 14, u64 = 9223372036854775822}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 1, data = {ptr = 0x55a3ffa000000000, fd = 0, u32 = 0, u64 = 6171056977087561728}}, {events = 21845, data = {ptr = 0x7fffffffe6b8, fd = -6472, u32 = 4294960824, u64 = 140737488348856}}, {events = 1436899720, data = {ptr = 0x55a559b800005555, fd = 21845, u32 = 21845, u64 = 6171437511190009173}}, {events = 21845, data = {ptr = 0x555555a8c170, fd = 1437122928, u32 = 1437122928, u64 = 93824997704048}}, {events = 1437122928, data = {ptr = 0x1100005555, fd = 21845, u32 = 21845, u64 = 73014465877}}, {events = 32767, data = {ptr = 0x100, fd = 256, u32 = 256, u64 = 256}}, {events = 2, data = {ptr = 0x1000000000, fd = 0, u32 = 0, u64 = 68719476736}}, {events = 0, data = {ptr = 0x3400000011, fd = 17, u32 = 17, u64 = 223338299409}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x6e0000005b, fd = 91, u32 = 91, u64 = 472446402651}}, {events = 0, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 0, data = {ptr = 0x7c00000077, fd = 119, u32 = 119, u64 = 532575944823}}, {events = 1, data = {ptr = 0xf546fb0000000000, fd = 0, u32 = 0, u64 = 17674089765080662016}}, {events = 32767, data = {ptr = 0x100, fd = 256, u32 = 256, u64 = 256}}, {events = 4115069696, data = {ptr = 0x1000007fff, fd = 32767, u32 = 32767, u64 = 68719509503}}, {events = 0, data = {ptr = 0x7ffff63b8e88, fd = -163869048, u32 = 4131098248, u64 = 140737324486280}}, {events = 4131098576, data = {ptr = 0xf63b907800007fff, fd = 32767, u32 = 32767, u64 = 17742934002026708991}}, {events = 32767, data = {ptr = 0x555555a54970 <g_RSA+112>, fd = 1436895600, u32 = 1436895600, u64 = 93824997476720}}, {events = 4111798116, data = {ptr = 0x55a8c42000007fff, fd = 32767, u32 = 32767, u64 = 6172398931029295103}}, {events = 21845, data = {ptr = 0x10, fd = 16, u32 = 16, u64 = 16}}, {events = 4131097832, data = {ptr = 0xf609593200007fff, fd = 32767, u32 = 32767, u64 = 17728799479403937791}}, {events = 32767, data = {ptr = 0x555555a54a90 <g_RSA+400>, fd = 1436895888, u32 = 1436895888, u64 = 93824997477008}}, {events = 4127702345, data = {ptr = 0x55a5490000007fff, fd = 32767, u32 = 32767, u64 = 6171419128729993215}}, {events = 21845, data = {ptr = 0x555555604adf <CryptoPP::InvertibleRSAFunction::InvertibleRSAFunction()+511>, fd = 1432373983, u32 = 1432373983, u64 = 93824992955103}}, {events = 1437123552, data = {ptr = 0x555f909000005555, fd = 21845, u32 = 21845, u64 = 6151794564161099093}}, {events = 21845, data = {ptr = 0x555555a4ece8, fd = 1436871912, u32 = 1436871912, u64 = 93824997453032}}, {events = 4111514601, data = {ptr = 0x55a55e4000007fff, fd = 32767, u32 = 32767, u64 = 6171442493352083455}}, {events = 21845, data = {ptr = 0x7fffffffe530, fd = -6864, u32 = 4294960432, u64 = 140737488348464}}, {events = 1436901800, data = {ptr = 0x5558f75500005555, fd = 21845, u32 = 21845, u64 = 6149937235618714965}}, {events = 21845, data = {ptr = 0x400000000, fd = 0, u32 = 0, u64 = 17179869184}}, {events = 4294960400, data = {ptr = 0xffffe50000007fff, fd = 32767, u32 = 32767, u64 = 18446714386895634431}}, {events = 32767, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 0}}, {events = 1869572096, data = {ptr = 0x696b532061206573, fd = 1629513075, u32 = 1629513075, u64 = 7596256595024045427}}, {events = 27756, data = {ptr = 0x555555a59830, fd = 1436915760, u32 = 1436915760, u64 = 93824997496880}}, {events = 22, data = {ptr = 0x1600000000, fd = 0, u32 = 0, u64 = 94489280512}}, {events = 0, data = {ptr = 0x646574756d, fd = 1702131053, u32 = 1702131053, u64 = 431198860653}}, {events = 0, data = {ptr = 0x7fff, fd = 32767, u32 = 32767, u64 = 32767}}, {events = 0, data = {ptr = 0x746e492064696100, fd = 1684627712, u32 = 1684627712, u64 = 8389723559310221568}}, {events = 1634103909, data = {ptr = 0x100006563, fd = 25955, u32 = 25955, u64 = 4294993251}}, {events = 0, data = {ptr = 0x1, fd = 1, u32 = 1, u64 = 1}}, {events = 2, data = {ptr = 0x55a3ffa000000000, fd = 0, u32 = 0, u64 = 6171056977087561728}}, {events = 21845, data = {ptr = 0x7fffffffe6b8, fd = -6472, u32 = 4294960824, u64 = 140737488348856}}, {events = 4294960808, data = {ptr = 0x100007fff, fd = 32767, u32 = 32767, u64 = 4295000063}}, {events = 0, data = {ptr = 0x5555557bce8d <__libc_csu_init+77>, fd = 1434177165, u32 = 1434177165, u64 = 93824994758285}}} 2021-09-14 23:20:03 - num_events = <optimized out> 2021-09-14 23:20:03 - check_timers = <optimized out> 2021-09-14 23:20:03 - #2 do_run_one (ec=..., this_thread=..., lock=..., this=0x555555a8c570) at /usr/include/boost/asio/detail/impl/task_io_service.ipp:356 2021-09-14 23:20:03 - on_exit = {task_io_service_ = 0x555555a8c570, lock_ = 0x7fffffffde30, this_thread_ = 0x7fffffffde80} 2021-09-14 23:20:03 - more_handlers = <optimized out> 2021-09-14 23:20:03 - #3 run (ec=..., this=0x555555a8c570) at /usr/include/boost/asio/detail/impl/task_io_service.ipp:149 2021-09-14 23:20:03 - this_thread = {private_op_queue = {front_ = 0x0, back_ = 0x0}, private_outstanding_work = 0} 2021-09-14 23:20:03 - ctx = {key_ = 0x555555a8c570, value_ = 0x7fffffffde80, next_ = 0x0} 2021-09-14 23:20:03 - lock = {mutex_ = @0x555555a8c5a0, locked_ = false} 2021-09-14 23:20:03 - n = 910 2021-09-14 23:20:03 - #4 _ZN5boost4asio10io_service3runEv.isra.238 () at /usr/include/boost/asio/impl/io_service.ipp:59 2021-09-14 23:20:03 - ec = {m_val = 0, m_cat = 0x7ffff71630c8} 2021-09-14 23:20:03 - #5 run (this=0x7fffffffdee0) at /home/ot/otbr/src/server.cpp:45 2021-09-14 23:20:03 - No locals. 2021-09-14 23:20:03 - #6 main (argc=<optimized out>, argv=<optimized out>) at /home/ot/otbr/src/otserv.cpp:97 2021-09-14 23:20:03 - serviceManager = {acceptors = {_M_h = {_M_buckets = 0x7fffa6b44c30, _M_bucket_count = 5, _M_before_begin = {_M_nxt = 0x7fff9c84b9f0}, _M_element_count = 2, _M_rehash_policy = {_M_max_load_factor = 1, _M_next_resize = 5}, _M_single_bucket = 0x0}}, io_service = {service_registry_ = 0x555555a8c150, impl_ = @0x555555a8c570}, signals = {set = {<No data fields>}}, death_timer = {<No data fields>}, running = true} 2021-09-14 23:20:03 - Saving server... 2021-09-14 23:20:03 - > Saved house items in: 0.204 seconds 2021-09-14 23:20:03 - A debugging session is active. 2021-09-14 23:20:03 - 2021-09-14 23:20:03 - Inferior 1 [process 29111] will be killed. 2021-09-14 23:20:03 - 2021-09-14 23:20:03 - Quit anyway? (y or n) [answered Y; input not from terminal]

@Costallat Costallat force-pushed the master branch 4 times, most recently from 70cfa99 to ccd27ed Compare September 24, 2021 18:26
@Costallat Costallat force-pushed the master branch 7 times, most recently from 3a437f9 to 3f6e165 Compare October 4, 2021 22:27
@Costallat Costallat force-pushed the master branch 4 times, most recently from f78d253 to 3b24951 Compare October 5, 2021 12:47
@Costallat Costallat force-pushed the master branch 3 times, most recently from 88b2e44 to 4ab42fc Compare October 6, 2021 20:09
Copy link

@Bipbop69 Bipbop69 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

file included from /home/ot/teste/src/game.h:32:0,
from /home/ot/teste/src/actions.cpp:26:
/home/ot/teste/src/player.h: In member function ‘virtual uint32_t Player::getReflectPercent(CombatType_t) const’:
/home/ot/teste/src/player.h:437:11: error: ‘reflectMapPercent’ was not declared in this scope
return reflectMapPercent[combatTypeToIndex(combatType)];
^~~~~~~~~~~~~~~~~
/home/ot/teste/src/player.h: In member function ‘virtual uint32_t Player::getReflectFlat(CombatType_t) const’:
/home/ot/teste/src/player.h:440:11: error: ‘reflectMapFlat’ was not declared in this scope
return reflectMapFlat[combatTypeToIndex(combatType)];
^~~~~~~~~~~~~~
/home/ot/teste/src/player.h: In member function ‘void Player::setReflectPercent(CombatType_t, int32_t)’:
/home/ot/teste/src/player.h:444:11: error: ‘class Player’ has no member named ‘reflectMapPercent’; did you mean ‘reflectPercent’?
this->reflectMapPercent[combatTypeToIndex(combatType)] = std::max(0, this->reflectMapPercent[combatTypeToIndex(combatType)] + value);
^~~~~~~~~~~~~~~~~
/home/ot/teste/src/player.h:444:80: error: ‘class Player’ has no member named ‘reflectMapPercent’; did you mean ‘reflectPercent’?
this->reflectMapPercent[combatTypeToIndex(combatType)] = std::max(0, this->reflectMapPercent[combatTypeToIndex(combatType)] + value);
^~~~~~~~~~~~~~~~~
In file included from /home/ot/teste/src/game.h:32:0,
from /home/ot/teste/src/actions.cpp:26:
/home/ot/teste/src/player.h: In member function ‘void Player::setReflectFlat(CombatType_t, int32_t)’:
/home/ot/teste/src/player.h:447:10: error: ‘class Player’ has no member named ‘reflectMapFlat’; did you mean ‘reflectFlat’?
this->reflectMapFlat[combatTypeToIndex(combatType)] = std::max(0, this->reflectMapFlat[combatTypeToIndex(combatType)] + value);
^~~~~~~~~~~~~~
/home/ot/teste/src/player.h:447:76: error: ‘class Player’ has no member named ‘reflectMapFlat’; did you mean ‘reflectFlat’?
this->reflectMapFlat[combatTypeToIndex(combatType)] = std::max(0, this->reflectMapFlat[combatTypeToIndex(combatType)] + value);
^~~~~~~~~~~~~~

@Bipbop69
Copy link

Bipbop69 commented Oct 9, 2021

@hyresu
-- teste using sword eldritch claymore (Cleave +5%). Cleave/reflectpercentall/reflectflatall

` - #20 0x000055555579fc08 in LuaScriptInterface::protectedCall(lua_State*, int, int) (L=L@entry=0x40000378, nargs=nargs@entry=7, nresults=nresults@entry=4) at /home/ot/otbr/src/luascript.cpp:302

  •      error_index = -1
    
  •      ret = <optimized out>
    
  • New spells functions and others fixes/improvements #21 0x000055555573c17b in CreatureEvent::executeHealthChange(Creature*, Creature*, CombatDamage&) (this=, creature=creature@entry=0x7fffc8315cf0, attacker=attacker@entry=0x0, damage=...) at /home/ot/otbr/src/creatureevent.cpp:608
  • No locals.
  • [OTBR compatibility] Factions source code, pulled from: opentibiabr/otservbr-global#2334 #22 0x00005555556ed459 in Game::combatChangeHealth(Creature*, Creature*, CombatDamage&, bool) [clone .constprop.301] (attacker=attacker@entry=0x0, target=target@entry=0x7fffc8315cf0, damage=..., isEvent=false, this=) at /home/ot/otbr/src/game.cpp:5709
  •      creatureEvent = <optimized out>
    
  •      events = @0x7fffee177140: {<No data fields>}
    
  •      attackerPlayer = <optimized out>
    
  •      targetPlayer = <optimized out>
    
  •      realHealthChange = <optimized out>
    
  • Fix all random crashes generated by protocolgame.cpp #23 0x00005555556ab6cf in Combat::CombatHealthFunc (caster=caster@entry=0x0, target=target@entry=0x7fffc8315cf0, params=..., data=data@entry=0x7fffee177970) at /home/ot/otbr/src/combat.cpp:524
  •      damage = {primary = {type = COMBAT_HEALING, value = 16}, secondary = {type = COMBAT_NONE, value = 0}, origin = ORIGIN_SPELL, critical = false, affected = 1, extension = false, cleave = false, canTrigerCharm = true, canTrigerLeach = true, exString = <incomplete type>}
    
  • Fix monster loot items stages display on bestiary #24 0x00005555556d32d1 in Combat::doCombatHealth(Creature*, Creature*, CombatDamage&, CombatParams const&) (caster=caster@entry=0x0, target=target@entry=0x7fffc8315cf0, damage=..., params=...) at /home/ot/otbr/src/combat.cpp:907
  •      canCombat = <optimized out>
    
  • [Improvement] - rework on exercise weapons system #25 0x00005555556eec16 in Game::combatChangeHealth(Creature*, Creature*, CombatDamage&, bool) [clone .constprop.301] (attacker=attacker@entry=0x7fffc8315cf0, target=target@entry=0x7fffa60f7a90, damage=..., isEvent=false, this=) at /home/ot/otbr/src/game.cpp:6039
  •      tmpParams = {conditionList = {<No data fields>}, valueCallback = {_M_t = {<No data fields>}}, tileCallback = {_M_t = {<No data fields>}}, targetCallback = {_M_t = {<No data fields>}}, itemId = 0, dispelType = CONDITION_NONE, combatType = COMBAT_NONE, origin = ORIGIN_SPELL, impactEffect = 0 '\000', distanceEffect = 0 '\000', blockedByArmor = false, blockedByShield = false, targetCasterOrTopMost = false, aggressive = true, useCharges = false}
    
  •      tmpDamage = {primary = {type = COMBAT_HEALING, value = 16}, secondary = {type = COMBAT_NONE, value = 0}, origin = ORIGIN_SPELL, critical = false, affected = 1, extension = false, cleave = false, canTrigerCharm = true, canTrigerLeach = true, exString = <incomplete type>}
    
  •      affected = <optimized out>
    
  •      lifeSkill = 25
    
  •      manaSkill = <optimized out>
    
  •      attackerPlayer = <optimized out>
    
  •      targetPlayer = <optimized out>
    
  •      perfectShot = <optimized out>
    
  •      message = {type = MESSAGE_STATUS, text = <incomplete type>, position = {x = 32369, y = 32218, z = 7 '\a'}, channelId = 0, primary = {value = 0, color = 0}, secondary = {value = 0, color = 0}}
    
  •      healthChange = <optimized out>
    
  •      spectators = {_M_h = {_M_buckets = 0x7fff4d1325b0, _M_bucket_count = 2, _M_before_begin = {_M_nxt = 0x7fff44b37f70}, _M_element_count = 1, _M_rehash_policy = {_M_max_load_factor = 1, _M_next_resize = 2}, _M_single_bucket = 0x0}}
    
  •      realDamage = <optimized out>
    
  •      hitEffect = 0 '\000'
    
  • Add xml npcs (for compatibility with otservbr-global) #26 0x00005555556ab6cf in Combat::CombatHealthFunc (caster=caster@entry=0x7fffc8315cf0, target=target@entry=0x7fffa60f7a90, params=..., data=data@entry=0x7fffee177cb0) at /home/ot/otbr/src/combat.cpp:524
  •      damage = {primary = {type = COMBAT_PHYSICALDAMAGE, value = 57}, secondary = {type = COMBAT_NONE, value = 0}, origin = ORIGIN_MELEE, critical = false, affected = 1, extension = false, cleave = false, canTrigerCharm = true, canTrigerLeach = true, exString = <incomplete type>}
    
  • Fix stored regeneration condition not using updated vocation values #27 0x00005555556d32d1 in Combat::doCombatHealth(Creature*, Creature*, CombatDamage&, CombatParams const&) (caster=caster@entry=0x7fffc8315cf0, target=target@entry=0x7fffa60f7a90, damage=..., params=...) at /home/ot/otbr/src/combat.cpp:907
  •      canCombat = <optimized out>
    
  • Some fixes events, configkey, optional stages, xp gain rate #28 0x00005555556adef8 in Weapon::internalUseWeapon (this=this@entry=0x7fffe81f69b0, player=player@entry=0x7fffc8315cf0, item=item@entry=0x7fff9e711f40, target=target@entry=0x7fffa60f7a90, damageModifier=damageModifier@entry=100, cleave=cleave@entry=false) at /home/ot/otbr/src/weapons.cpp:447
  •      damage = {primary = {type = COMBAT_PHYSICALDAMAGE, value = -57}, secondary = {type = COMBAT_NONE, value = 0}, origin = ORIGIN_MELEE, critical = false, affected = 1, extension = false, cleave = false, canTrigerCharm = true, canTrigerLeach = true, exString = <incomplete type>}
    
  •      weaponType = <optimized out>
    
  •      cleavePercent = <optimized out>
    
  • Add monsters walking back to spawn #29 0x00005555556aeb3c in WeaponMelee::useWeapon (this=0x7fffe81f69b0, player=0x7fffc8315cf0, item=0x7fff9e711f40, target=0x7fffa60f7a90) at /home/ot/otbr/src/weapons.cpp:657
  •      damageModifier = 100
    
  • [Compatibility] - Support for Canary with otbr-global and rework on jiddo npc lib #30 0x000055555568d6d1 in doAttacking (this=0x7fffc8315cf0) at /home/ot/otbr/src/player.cpp:3820
  •      tool = <optimized out>
    
  •      weapon = <optimized out>
    
  •      delay = 1300
    
  •      result = false
    
  •      classicSpeed = false
    
  •      task = <optimized out>
    
  • Sort loot of monsters to try most rare itens first #31 0x00005555556b787a in std::function<void ()>::operator()() const () at /usr/include/c++/6/functional:2127
  •      this = 0x7fffaa46fe00`
    

@sonarqubecloud
Copy link

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

@Methemia Methemia mentioned this pull request Oct 15, 2021
4 tasks
@beats-dh beats-dh marked this pull request as draft October 16, 2021 03:14
@github-actions
Copy link
Contributor

This PR is stale because it has been open 45 days with no activity.

@github-actions github-actions bot added the Stale No activity label Nov 21, 2021
@guispiller
Copy link
Contributor

guispiller commented Jan 22, 2022

Just tested It on OTBR
Specialized Magic level is working 100%;
Reflect flat is reflecting damage, but not flat damage (maybe wrong damage calc);
Reflect percent is reflecting damage, but wrong damage calc;
Cleave have wrong damage calculation, and crashes the server after a while;
Perfect shot damage and range working 100%;
Magic Shield bonus is not working.

@github-actions github-actions bot removed the Stale No activity label Jan 23, 2022
@dudantas
Copy link
Member

A new pull request will open soon with these mechanics complete.

@dudantas dudantas closed this Jan 27, 2022
@Zapotoczny Zapotoczny mentioned this pull request Oct 15, 2022
5 tasks
@QuebradaZN QuebradaZN mentioned this pull request Dec 27, 2022
10 tasks
luan pushed a commit that referenced this pull request Jul 11, 2023
…ing the compat folder (#9)

* Remove monster spells and folder data/spells

* Remove unused files, reorganize core folder and remove compat folder
Jonyrewind added a commit to Jonyrewind/canary that referenced this pull request Feb 17, 2025
Jonyrewind added a commit to Jonyrewind/canary that referenced this pull request Feb 17, 2025
Jonyrewind added a commit to Jonyrewind/canary that referenced this pull request Feb 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants