Giter Club home page Giter Club logo

abyssengineold's People

Contributors

darthgandalf avatar essial avatar fabiololix avatar gucio321 avatar zaprit avatar ziemas avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

abyssengineold's Issues

Plan for layouts

  • start with some base framework code, which will be unused for now
  • then add support for .sprite files (should be easy to port from old C++ code)
  • then fallback fs setup
  • then redo main menu on json
  • then reimplement translation
  • then add other panels like the quest/inventory I shown off earlier, because texts on all of them needs to be translateable (most of texts are on char creation screen and char stats panel though)

ButtonDef is bad abstraction

  1. It requires a filename of the image. This means that I need to load the image twice: to query the size of the frame, and to actually show it on screen.
  2. Far from every button has text/font, but ButtonDef requires it

Related: Button should be decoupled from "clickable area". Examples of non-button clickable areas are tabs in quests/waypoints panels, helmet/amulet/etc slots in inventory. Mouse handling isn't specific to Buttons

win: Hack font does not render in console in-game

Describe the bug
Hack font does not render in console in-game
also

(process:18748): Pango-WARNING **: 19:28:44.748: failed to create cairo scaled font, expect ugly output. the offending font is 'Hack Bold 9'

(process:18748): Pango-WARNING **: 19:28:44.749: font_face status is: out of memory

(process:18748): Pango-WARNING **: 19:28:44.749: scaled_font status is: out of memory

(process:18748): Pango-WARNING **: 19:28:44.752: failed to create cairo scaled font, expect ugly output. the offending font is 'Hack Bold 9'

(process:18748): Pango-WARNING **: 19:28:44.752: font_face status is: out of memory

(process:18748): Pango-WARNING **: 19:28:44.752: scaled_font status is: out of memory

(process:18748): Pango-WARNING **: 19:28:44.753: failed to create cairo scaled font, expect ugly output. the offending font is 'Hack Bold 9'

(process:18748): Pango-WARNING **: 19:28:44.753: font_face status is: out of memory

(process:18748): Pango-WARNING **: 19:28:44.753: scaled_font status is: out of memory

To Reproduce
Steps to reproduce the behavior:
Run Engine on Windows

Expected behavior
All text to render correctly

Screenshots
image

will abyssEngine crossplatform

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
will abyssEngine crossplatform ?

such as it can be build in macOS and Ubuntu. i see the gui using imgui.

Use after free in map test

[23:51:34.059] [debug] -> Loading level: Act 1 - Town 1                                                                                                                                                                                                                           
[23:51:34.059] [debug] -> Loading level alt: Act1/Town/TownN1.ds1                                                                                                                                                                                                                 
[23:51:51.408] [debug] -> Loading level alt: Act1/Town/TownE1.ds1                                                                                                                                                                                                                 
[23:51:54.975] [debug] -> Loading level: Act 1 - Cave Theme S                                                                                                                                                                                                                     
[23:51:54.975] [debug] -> Loading level alt: Act1/Caves/CaveSTheme1.ds1                                                                                                                                                                                                           
[23:52:10.492] [debug] -> Loading level: Act 5 - Barricade 3 Snow
[23:52:10.492] [debug] -> Loading level alt: Expansion/Siege/snowbarrCC1.ds1                                                                                                                                                                                             
=================================================================                                                                                                                                                                                                                 
==20496==ERROR: AddressSanitizer: heap-use-after-free on address 0x7f9c32aef900 at pc 0x556b12a851e1 bp 0x7ffe9b478370 sp 0x7ffe9b478368                                                                                                                                          
WRITE of size 4 at 0x7f9c32aef900 thread T0                                                                                                                                                                                                                                       
    #0 0x556b12a851e0 in Abyss::DataTypes::DT1::DT1(std::__1::basic_string_view<char, std::__1::char_traits<char>>, Abyss::DataTypes::Palette const&) /home/somebody/AbyssEngine/src/Abyss/DataTypes/DT1.cpp:176:71                                                               
    #1 0x556b128292e5 in Abyss::DataTypes::DT1* std::__1::construct_at[abi:ue170006]<Abyss::DataTypes::DT1, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&, Abyss::DataTypes::DT1*>(Abyss::DataType
s::DT1*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&) /usr/include/c++/v1/__memory/construct_at.h:41:46                                                                                         
    #2 0x556b128292e5 in void std::__1::allocator_traits<std::__1::allocator<Abyss::DataTypes::DT1>>::construct[abi:ue170006]<Abyss::DataTypes::DT1, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&
, void, void>(std::__1::allocator<Abyss::DataTypes::DT1>&, Abyss::DataTypes::DT1*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&) /usr/include/c++/v1/__memory/allocator_traits.h:304:9           
    #3 0x556b128292e5 in void std::__1::vector<Abyss::DataTypes::DT1, std::__1::allocator<Abyss::DataTypes::DT1>>::__construct_one_at_end[abi:ue170006]<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette con
st&>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&) /usr/include/c++/v1/vector:919:5                                                                                                              
    #4 0x556b12821cd9 in Abyss::DataTypes::DT1& std::__1::vector<Abyss::DataTypes::DT1, std::__1::allocator<Abyss::DataTypes::DT1>>::emplace_back<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&>(s
td::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&) /usr/include/c++/v1/vector:1678:9                                                                                                                   
    #5 0x556b12821cd9 in OD2::Scenes::MapTest::MapTest::loadTile(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) /home/somebody/AbyssEngine/src/OD2/Scenes/MapTest/MapTest.cpp:178:14                                                
    #6 0x556b12825c4a in OD2::Scenes::MapTest::MapTest::render() /home/somebody/AbyssEngine/src/OD2/Scenes/MapTest/MapTest.cpp:218:25                                                                                                                                             
    #7 0x556b12a9be8a in Abyss::AbyssEngine::render() const /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp:78:28                                                                                                                                                            
    #8 0x556b12a9f1db in Abyss::AbyssEngine::run() /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp:318:9                                                                                                                                                                     
    #9 0x556b12836964 in main /home/somebody/AbyssEngine/src/OD2/main.cpp:206:16                                                                                                                                                                                                  
    #10 0x7f9c55af89c9 in __libc_start_call_main /mnt/portagetmp/portage/sys-libs/glibc-2.37-r7/work/glibc-2.37/csu/../sysdeps/nptl/libc_start_call_main.h:58:16                                                                                                                  
    #11 0x7f9c55af8a84 in __libc_start_main /mnt/portagetmp/portage/sys-libs/glibc-2.37-r7/work/glibc-2.37/csu/../csu/libc-start.c:360:3                                                                                                                                          
    #12 0x556b12699910 in _start (/home/somebody/AbyssEngine/build3/src/OD2/OpenDiablo2+0x147910)                                                                                                                                                                                 
                                                                                                                                                                                                                                                                                  
0x7f9c32aef900 is located 73984 bytes inside of 512000-byte region [0x7f9c32add800,0x7f9c32b5a800)                                                                                                                                                                                
freed by thread T0 here:                                                                                                                                                                                                                                                          
    #0 0x556b1276fbf6 in free /mnt/portagetmp/portage/sys-libs/compiler-rt-sanitizers-17.0.6/work/compiler-rt/lib/asan/asan_malloc_linux.cpp:52:3                                                                                                                                 
    #1 0x556b12bf85a4 in real_free /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/stdlib/SDL_malloc.c:5199:43                                                                                                                                           
    #2 0x556b12bf88d8 in SDL_free_REAL /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/stdlib/SDL_malloc.c:5339:5                                                                                                                                        
    #3 0x556b12bca6fe in SDL_UpdateTextureNative /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/render/SDL_render.c:1737:13                                                                                                                             
    #4 0x556b12bc9a97 in SDL_UpdateTexture_REAL /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/render/SDL_render.c:1774:16                                                                                                                              
    #5 0x556b12b9136e in SDL_UpdateTexture /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/dynapi/SDL_dynapi_procs.h:349:1                                                                                                                               
    #6 0x556b12a84a2e in Abyss::DataTypes::DT1::DT1(std::__1::basic_string_view<char, std::__1::char_traits<char>>, Abyss::DataTypes::Palette const&) /home/somebody/AbyssEngine/src/Abyss/DataTypes/DT1.cpp:183:9                                                                
    #7 0x556b128292e5 in Abyss::DataTypes::DT1* std::__1::construct_at[abi:ue170006]<Abyss::DataTypes::DT1, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&, Abyss::DataTypes::DT1*>(Abyss::DataType
s::DT1*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&) /usr/include/c++/v1/__memory/construct_at.h:41:46
    #8 0x556b128292e5 in void std::__1::allocator_traits<std::__1::allocator<Abyss::DataTypes::DT1>>::construct[abi:ue170006]<Abyss::DataTypes::DT1, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&
, void, void>(std::__1::allocator<Abyss::DataTypes::DT1>&, Abyss::DataTypes::DT1*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&) /usr/include/c++/v1/__memory/allocator_traits.h:304:9
    #9 0x556b128292e5 in void std::__1::vector<Abyss::DataTypes::DT1, std::__1::allocator<Abyss::DataTypes::DT1>>::__construct_one_at_end[abi:ue170006]<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette con
st&>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&) /usr/include/c++/v1/vector:919:5
    #10 0x556b12821cd9 in Abyss::DataTypes::DT1& std::__1::vector<Abyss::DataTypes::DT1, std::__1::allocator<Abyss::DataTypes::DT1>>::emplace_back<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&>(
std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&) /usr/include/c++/v1/vector:1678:9
    #11 0x556b12821cd9 in OD2::Scenes::MapTest::MapTest::loadTile(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) /home/somebody/AbyssEngine/src/OD2/Scenes/MapTest/MapTest.cpp:178:14
    #12 0x556b12825c4a in OD2::Scenes::MapTest::MapTest::render() /home/somebody/AbyssEngine/src/OD2/Scenes/MapTest/MapTest.cpp:218:25
    #13 0x556b12a9be8a in Abyss::AbyssEngine::render() const /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp:78:28
    #14 0x556b12a9f1db in Abyss::AbyssEngine::run() /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp:318:9
    #15 0x556b12836964 in main /home/somebody/AbyssEngine/src/OD2/main.cpp:206:16
    #16 0x7f9c55af89c9 in __libc_start_call_main /mnt/portagetmp/portage/sys-libs/glibc-2.37-r7/work/glibc-2.37/csu/../sysdeps/nptl/libc_start_call_main.h:58:16

previously allocated by thread T0 here:
    #0 0x556b1276fe9e in malloc /mnt/portagetmp/portage/sys-libs/compiler-rt-sanitizers-17.0.6/work/compiler-rt/lib/asan/asan_malloc_linux.cpp:69:3
    #1 0x556b12bf8524 in real_malloc /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/stdlib/SDL_malloc.c:5196:53 
    #2 0x556b12bf877b in SDL_malloc_REAL /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/stdlib/SDL_malloc.c:5295:11
    #3 0x556b12bca68a in SDL_UpdateTextureNative /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/render/SDL_render.c:1729:33
    #4 0x556b12bc9a97 in SDL_UpdateTexture_REAL /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/render/SDL_render.c:1774:16
    #5 0x556b12b9136e in SDL_UpdateTexture /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/dynapi/SDL_dynapi_procs.h:349:1
    #6 0x556b12a84a2e in Abyss::DataTypes::DT1::DT1(std::__1::basic_string_view<char, std::__1::char_traits<char>>, Abyss::DataTypes::Palette const&) /home/somebody/AbyssEngine/src/Abyss/DataTypes/DT1.cpp:183:9
    #7 0x556b128292e5 in Abyss::DataTypes::DT1* std::__1::construct_at[abi:ue170006]<Abyss::DataTypes::DT1, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&, Abyss::DataTypes::DT1*>(Abyss::DataType
s::DT1*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&) /usr/include/c++/v1/__memory/construct_at.h:41:46
    #8 0x556b128292e5 in void std::__1::allocator_traits<std::__1::allocator<Abyss::DataTypes::DT1>>::construct[abi:ue170006]<Abyss::DataTypes::DT1, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&
, void, void>(std::__1::allocator<Abyss::DataTypes::DT1>&, Abyss::DataTypes::DT1*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&) /usr/include/c++/v1/__memory/allocator_traits.h:304:9
    #9 0x556b128292e5 in void std::__1::vector<Abyss::DataTypes::DT1, std::__1::allocator<Abyss::DataTypes::DT1>>::__construct_one_at_end[abi:ue170006]<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette con
st&>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&) /usr/include/c++/v1/vector:919:5
    #10 0x556b12821cd9 in Abyss::DataTypes::DT1& std::__1::vector<Abyss::DataTypes::DT1, std::__1::allocator<Abyss::DataTypes::DT1>>::emplace_back<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&>(
std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, Abyss::DataTypes::Palette const&) /usr/include/c++/v1/vector:1678:9
    #11 0x556b12821cd9 in OD2::Scenes::MapTest::MapTest::loadTile(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) /home/somebody/AbyssEngine/src/OD2/Scenes/MapTest/MapTest.cpp:178:14
    #12 0x556b12825c4a in OD2::Scenes::MapTest::MapTest::render() /home/somebody/AbyssEngine/src/OD2/Scenes/MapTest/MapTest.cpp:218:25
    #13 0x556b12a9be8a in Abyss::AbyssEngine::render() const /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp:78:28
    #14 0x556b12a9f1db in Abyss::AbyssEngine::run() /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp:318:9
    #15 0x556b12836964 in main /home/somebody/AbyssEngine/src/OD2/main.cpp:206:16

osx: font config warning in console

Describe the bug
shows warning

To Reproduce
Steps to reproduce the behavior:

  1. use osx
  2. run the engine
  3. See error

Expected behavior
no errors

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS] osx

Additional context
Add any other context about the problem here.

please assign this bug to me

Crash during shutdown

Doesn't happens always, but from time to time.

[22:30:17.245] [info] -> Shutting down...                                                                                                                                                                                                                                         
=================================================================                                                                                                                                                                                                                 
==11919==ERROR: AddressSanitizer: container-overflow on address 0x506000055f68 at pc 0x5639c52582ca bp 0x7f1d975f6c50 sp 0x7f1d975f6c48                                                                                                                                           
READ of size 8 at 0x506000055f68 thread T10                                                                                                                                                                                                                                       
    #0 0x5639c52582c9 in Abyss::AbyssEngine::fillAudioBuffer(unsigned char*, int) const /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp:265:37                                                                                                                               
    #1 0x5639c54dadcd in SDL_RunAudio /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/audio/SDL_audio.c:717:13                                                                                                                                           
    #2 0x5639c53b64b5 in SDL_RunThread /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/thread/SDL_thread.c:292:18                                                                                                                                        
    #3 0x5639c54cfa54 in RunThread /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/thread/pthread/SDL_systhread.c:76:5                                                                                                                                   
    #4 0x5639c4f015aa in asan_thread_start(void*) /mnt/portagetmp/portage/sys-libs/compiler-rt-sanitizers-17.0.6/work/compiler-rt/lib/asan/asan_interceptors.cpp:225:31                                                                                                           
    #5 0x7f1db68c42b8 in start_thread /mnt/portagetmp/portage/sys-libs/glibc-2.37-r7/work/glibc-2.37/nptl/pthread_create.c:444:8                                                                                                                                                  
    #6 0x7f1db69474bb in clone3 /mnt/portagetmp/portage/sys-libs/glibc-2.37-r7/work/glibc-2.37/misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:81                                                                                                                                 
                                                                                                                                                                                                                                                                                  
0x506000055f68 is located 40 bytes inside of 64-byte region [0x506000055f40,0x506000055f80)                                                                                                                                                                                       
allocated by thread T0 here:                                                                                                                                                                                                                                                      
    #0 0x5639c4f425fd in operator new(unsigned long) /mnt/portagetmp/portage/sys-libs/compiler-rt-sanitizers-17.0.6/work/compiler-rt/lib/asan/asan_new_delete.cpp:95:3                                                                                                            
    #1 0x5639c526a8aa in void* std::__1::__libcpp_operator_new[abi:ue170006]<unsigned long>(unsigned long) /usr/include/c++/v1/new:268:10                                                                                                                                         
    #2 0x5639c526a8aa in std::__1::__libcpp_allocate[abi:ue170006](unsigned long, unsigned long) /usr/include/c++/v1/new:294:10                                                                                                                                                   
    #3 0x5639c526a8aa in std::__1::allocator<Abyss::Common::SoundEffectInterface*>::allocate[abi:ue170006](unsigned long) /usr/include/c++/v1/__memory/allocator.h:114:38                                                                                                         
    #4 0x5639c526a8aa in std::__1::__allocation_result<std::__1::allocator_traits<std::__1::allocator<Abyss::Common::SoundEffectInterface*>>::pointer> std::__1::__allocate_at_least[abi:ue170006]<std::__1::allocator<Abyss::Common::SoundEffectInterface*>>(std::__1::allocator<
Abyss::Common::SoundEffectInterface*>&, unsigned long) /usr/include/c++/v1/__memory/allocate_at_least.h:55:19                                                                                                                                                                     
    #5 0x5639c526a8aa in std::__1::__split_buffer<Abyss::Common::SoundEffectInterface*, std::__1::allocator<Abyss::Common::SoundEffectInterface*>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<Abyss::Common::SoundEffectInterface*>&) /usr/include/c++/v1/
__split_buffer:379:29                                                                                                                                                                                                                                                             
    #6 0x5639c526a8aa in void std::__1::vector<Abyss::Common::SoundEffectInterface*, std::__1::allocator<Abyss::Common::SoundEffectInterface*>>::__push_back_slow_path<Abyss::Common::SoundEffectInterface* const&>(Abyss::Common::SoundEffectInterface* const&) /usr/include/c++/
v1/vector:1616:49                                                                                                                                                                                                                                                                 
    #7 0x5639c525ccd2 in std::__1::vector<Abyss::Common::SoundEffectInterface*, std::__1::allocator<Abyss::Common::SoundEffectInterface*>>::push_back[abi:ue170006](Abyss::Common::SoundEffectInterface* const&) /usr/include/c++/v1/vector:1634:9                                
    #8 0x5639c525ccd2 in Abyss::AbyssEngine::addSoundEffect(Abyss::Common::SoundEffectInterface*) /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp:406:93                                                                                                                     
    #9 0x5639c525ccd2 in non-virtual thunk to Abyss::AbyssEngine::addSoundEffect(Abyss::Common::SoundEffectInterface*) /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp                                                                                                       
    #10 0x5639c5250637 in Abyss::Streams::SoundEffect::SoundEffect(std::__1::unique_ptr<Abyss::Streams::AudioStream, std::__1::default_delete<Abyss::Streams::AudioStream>>) /home/somebody/AbyssEngine/src/Abyss/Streams/SoundEffect.cpp:11:42                                   
    #11 0x5639c4f68f06 in Abyss::UI::Button<Abyss::DataTypes::DC6>::Button(Abyss::UI::ButtonDef const&, std::__1::basic_string_view<char, std::__1::char_traits<char>>, Abyss::Concepts::FontRenderer const&, std::__1::function<void ()>) /home/somebody/AbyssEngine/src/Abyss/..
/Abyss/UI/Button.h:62:11                                                                                                                                                                                                                                                          
    #12 0x5639c4f646c2 in OD2::Common::CreateButton(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()> const&) /home/somebody/AbyssEngine/src/Abyss/../OD2/Common/ButtonD
efManager.h:58:12                                                                                                                                                                                                                                                                 
    #13 0x5639c4f6314e in OD2::Scenes::MainMenu::MainMenu::MainMenu() /home/somebody/AbyssEngine/src/OD2/Scenes/MainMenu/MainMenu.h:50:57                                                                                                                                         
    #14 0x5639c4f8db0f in std::__1::__unique_if<OD2::Scenes::MainMenu::MainMenu>::__unique_single std::__1::make_unique[abi:ue170006]<OD2::Scenes::MainMenu::MainMenu>() /usr/include/c++/v1/__memory/unique_ptr.h:689:30                                                         
    #15 0x5639c4f8db0f in main /home/somebody/AbyssEngine/src/OD2/main.cpp:264:25                                                                                                                                                                                                 
    #16 0x7f1db68619c9 in __libc_start_call_main /mnt/portagetmp/portage/sys-libs/glibc-2.37-r7/work/glibc-2.37/csu/../sysdeps/nptl/libc_start_call_main.h:58:16                                                                                                                  
                                                                                                                                                                                                                                                                                  
Thread T10 created by T0 here:                                                                                                                                                                                                                                                    
    #0 0x5639c4ee999c in pthread_create /mnt/portagetmp/portage/sys-libs/compiler-rt-sanitizers-17.0.6/work/compiler-rt/lib/asan/asan_interceptors.cpp:237:3                                                                                                                      
    #1 0x5639c54cf9ed in SDL_SYS_CreateThread /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/thread/pthread/SDL_systhread.c:116:9                                                                                                                       
    #2 0x5639c53b6610 in SDL_CreateThreadWithStackSize_REAL /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/thread/SDL_thread.c:358:11                                                                                                                   
    #3 0x5639c53b675c in SDL_CreateThreadInternal /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/thread/SDL_thread.c:409:12                                                                                                                             
    #4 0x5639c54d96ff in open_audio_device /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/audio/SDL_audio.c:1509:26
    #5 0x5639c54d8928 in SDL_OpenAudio_REAL /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/audio/SDL_audio.c:1540:14
    #6 0x5639c534a690 in SDL_OpenAudio /home/somebody/vcpkg/buildtrees/sdl2/src/ase-2.28.5-29008dc59c.clean/src/dynapi/SDL_dynapi_procs.h:112:1
    #7 0x5639c5254f21 in Abyss::AbyssEngine::initializeAudio() /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp:241:9
    #8 0x5639c5253614 in Abyss::AbyssEngine::AbyssEngine() /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp:38:5
    #9 0x5639c525834a in Abyss::AbyssEngine::getInstance() /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp:280:24
    #10 0x5639c4f8da25 in main /home/somebody/AbyssEngine/src/OD2/main.cpp:246:24
    #11 0x7f1db68619c9 in __libc_start_call_main /mnt/portagetmp/portage/sys-libs/glibc-2.37-r7/work/glibc-2.37/csu/../sysdeps/nptl/libc_start_call_main.h:58:16

HINT: if you don't care about these errors you may set ASAN_OPTIONS=detect_container_overflow=0.
If you suspect a false positive see also: https://github.com/google/sanitizers/wiki/AddressSanitizerContainerOverflow.
SUMMARY: AddressSanitizer: container-overflow /home/somebody/AbyssEngine/src/Abyss/AbyssEngine.cpp:265:37 in Abyss::AbyssEngine::fillAudioBuffer(unsigned char*, int) const
Shadow bytes around the buggy address:
  0x506000055c80: fa fa fa fa 00 00 00 00 00 00 00 00 fa fa fa fa
  0x506000055d00: 00 00 00 00 00 00 00 00 fa fa fa fa fd fd fd fd
  0x506000055d80: fd fd fd fd fa fa fa fa fd fd fd fd fd fd fd fd
  0x506000055e00: fa fa fa fa fd fd fd fd fd fd fd fd fa fa fa fa
  0x506000055e80: fd fd fd fd fd fd fd fd fa fa fa fa fd fd fd fd
=>0x506000055f00: fd fd fd fd fa fa fa fa fc fc fc fc fc[fc]fc fc
  0x506000055f80: fa fa fa fa fd fd fd fd fd fd fd fd fa fa fa fa
  0x506000056000: 00 00 00 00 00 00 00 00 fa fa fa fa 00 00 00 00
  0x506000056080: 00 00 00 00 fa fa fa fa 00 00 00 00 00 00 00 00
  0x506000056100: fa fa fa fa fd fd fd fd fd fd fd fd fa fa fa fa
  0x506000056180: fd fd fd fd fd fd fd fd fa fa fa fa 00 00 00 00
Shadow byte legend (one shadow byte represents 8 application bytes): 
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07 
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
==11919==ABORTING

Switch to Lua 5.1 / LuaJIT

LuaJIT implementation is faster than Lua, but it's compatible with Lua 5.1 with some extensions from 5.2 instead of Lua 5.4

C++ API should be mostly the same, but some lua code in OD2 may need to be updated

abyss_test linking: undefined symbol

Describe the bug
Reaching the end of build process this message pop out

[100%] Linking CXX executable abyss_test
mold: error: undefined symbol: absl::lts_20220623::container_internal::ConvertDeletedToEmptyAndFullToDeleted(absl::lts_20220623::container_internal::ctrl_t*, unsigned long)
>>> referenced by inifile.cpp

Would be great to skip the tests with an appropriate flag using cmake, for example launching:

cmake ../abyss-sources \
    -DBUILD_TESTING=off \

Thanks for your amazing efforts, I follow this project since the early days.

Additional note:
mold (referenced in the log) is a drop-in replacement for gold (the GNU linker). same issue also with gold anyway

Workaround
For now I'm using this workaround

# temporary workaround to disable tests
  pacman -S gtest
  rm -rf tests/*
  touch tests/CMakeLists.txt

absl not found

Where would I find the source to Absl. cmake can't find the cmakes for it. Not sure where to find it.

Install instructions

Hello,

Looking for install instruction for porting to Unix FreeBSD:

run, build, lib dependencies.

Thanks

Missing MSVCP140D.dll

Describe the bug

AbyssEngine.exe - System Error

The code execution cannot proceed because MSVCP140D.dll was not found. Reinstalling the program may fix this problem.

OK

Other similar errors about missing dlls follow this one.

To Reproduce
Steps to reproduce the behavior:
Run AbyssEngine.exe

Expected behavior
The game starts

Desktop (please complete the following information):

  • OS: Windows 10
  • Browser Chrome
  • Version 98.0.4758.102

Additional context

  • I couldn't find the runtime for the D variant
  • I also couldn't install VS2015 with the web installer, at which point I gave up.

Missing features for Sprites

  • Animation speed: e.g. the two balls (health/mana) have 24 and 20 frames per second, to avoid being in sync.
  • Partially render the sprite: the ball's image is just a ball, but when the health or mana is not full, only part of it should be drawn
  • Change color: mana is blue, poison is green, but the image is the same, and it's red. HD images do color changes in HSV space.

Race condition in fillAudioBuffer()

AbyssEngine::fillAudioBuffer accesses _soundEffects without any locking, but AbyssEngine::removeSoundEffect is called from main thread instead, and that causes crash.

[Suggestions] Additions to the Engine Lua Side

  • Scaling of map render node
  • label:setVerticalSpacing(pixels)
  • button.disabled
  • label:textAlign()
  • add color mod to image type, sec
  • node:getType() so you can also do node:getType().toString()

If I didn't start this now even with one thing I never would.

Discord server

Hi all!
Where is the discord server? I can't find it anymore...
also, the website doesn't work

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.