Jump to content

Nullus

Community Members
  • Posts

    102
  • Joined

  • Last visited

Everything posted by Nullus

  1. I have found a way to reproduce it now. It always crashes when I move the building placement preview for some reasonably complex building, such as a stable, over an area outside of the map boundaries. It doesn't seem to work with simpler buildings, such as a house.
  2. Unfortunately, it looks like I was wrong. I just got the same crash again, this time gdb reported: Thread 1 "main" received signal SIGSEGV, Segmentation fault. mozalloc_abort (msg=msg@entry=0x7ffff7c283b0 "Redirecting call to abort() to mozalloc_abort\n") at /home/aaron/0ad/libraries/source/spidermonkey/mozjs-78.6.0/memory/mozalloc/mozalloc_abort.cpp:33 33 MOZ_CRASH(); btdb) #0 mozalloc_abort ( msg=msg@entry=0x7ffff7c283b0 "Redirecting call to abort() to mozalloc_abort\n") at /home/aaron/0ad/libraries/source/spidermonkey/mozjs-78.6.0/memory/mozalloc/mozalloc_abort.cpp:33 #1 0x00007ffff723d607 in abort () at /home/aaron/0ad/libraries/source/spidermonkey/mozjs-78.6.0/memory/mozalloc/mozalloc_abort.cpp:82 #2 0x00005555555e4c28 in try_gui_display_error (no_continue=<optimized out>, allow_suppress=<optimized out>, manual_break=<optimized out>, text=<optimized out>) at ../../../source/lib/sysdep/os/unix/unix.cpp:197 #3 sys_display_error ( text=text@entry=0x555555d6bba0 <(anonymous namespace)::g_MessageBuffer> L"Assertion failed: \"framebuffer\"\r\nLocation: DeviceCommandContext.cpp:680 (SetFramebuffer)\r\n\r\nCall stack:\r\n\r\n(0x555555b53c15) /home/aaron/0ad/binaries/system/pyrogenesis(+0x5ffc15) [0x555555b53c15]\n(0x5"..., flags=<optimized out>, flags@entry=6) at ../../../source/lib/sysdep/os/unix/unix.cpp:216 #4 0x0000555555b0283b in CallDisplayError (flags=6, text=0x555555d6bba0 <(anonymous namespace)::g_MessageBuffer> L"Assertion failed: \"framebuffer\"\r\nLocation: DeviceCommandContext.cpp:680 (SetFramebuffer)\r\n\r\nCall stack:\r\n\r\n(0x555555b53c15) /home/aaron/0ad/binaries/system/pyrogenesis(+0x5ffc15) [0x555555b53c15]\n(0x5"...) at ../../../source/lib/debug.cpp:374 #5 debug_DisplayError ( description=0x7fffffffc400 L"Assertion failed: \"framebuffer\"", flags=6, context=<optimized out>, lastFuncToSkip=<optimized out>, --Type <RET> for more, q to quit, c to continue without paging-- pathname=<optimized out>, line=680, func=0x555555c43453 "SetFramebuffer", suppress=0x555555d69f60 <Renderer::Backend::GL::CDeviceCommandContext::SetFramebuffer(Renderer::Backend::GL::CFramebuffer*)::suppress__>) at ../../../source/lib/debug.cpp:460 #6 0x0000555555b02948 in debug_OnAssertionFailure ( expr=expr@entry=0x555555c43eb8 L"framebuffer", suppress=suppress@entry=0x555555d69f60 <Renderer::Backend::GL::CDeviceCommandContext::SetFramebuffer(Renderer::Backend::GL::CFramebuffer*)::suppress__>, file=file@entry=0x555555c434b8 L"../../../source/renderer/backend/gl/DeviceCommandContext.cpp", line=line@entry=680, func=func@entry=0x555555c43453 "SetFramebuffer") at ../../../source/lib/debug.cpp:547 #7 0x00005555559974b6 in Renderer::Backend::GL::CDeviceCommandContext::SetFramebuffer (this=0x555556347110, framebuffer=0x0) at ../../../source/renderer/backend/gl/DeviceCommandContext.cpp:680 #8 0x0000555555966fe1 in ShadowMap::BeginRender ( this=this@entry=0x555556452728) at /usr/include/c++/11/bits/unique_ptr.h:173 #9 0x000055555595d881 in CSceneRenderer::RenderShadowMap ( this=0x5555563b2280, deviceCommandContext=0x555556347110, context=...) at ../../../source/renderer/SceneRenderer.cpp:305 #10 0x0000555555961c0e in CSceneRenderer::RenderSubmissions ( this=0x5555563b2280, deviceCommandContext=0x555556347110, waterScissor=...) at ../../../source/renderer/SceneRenderer.cpp:798 #11 0x000055555596241e in CSceneRenderer::RenderScene (this=0x5555563b2280, deviceCommandContext=0x555556347110, scene=...) at ../../../source/renderer/SceneRenderer.cpp:1161 --Type <RET> for more, q to quit, c to continue without paging-- #12 0x00005555558e45e1 in CGameView::Render (this=<optimized out>) at ../../../source/graphics/GameView.cpp:238 #13 0x00005555559522a1 in CRenderer::RenderFrameImpl (this=0x5555564380e0, renderGUI=<optimized out>, renderLogger=<optimized out>) at ../../../source/ps/Game.h:167 #14 0x00005555559545ae in CRenderer::RenderFrame (this=0x5555564380e0, needsPresent=<optimized out>) at ../../../source/renderer/Renderer.cpp:429 #15 0x00005555556049bf in Frame () at ../../../source/ps/Singleton.h:51 #16 RunGameOrAtlas (argc=<optimized out>, argv=<optimized out>) at ../../../source/main.cpp:691 #17 0x00005555555f012e in main (argc=1, argv=0x7fffffffe028) at ../../../source/main.cpp:743
  3. I've updated the game and played several matches without any errors so far, so I'll cautiously assume that this is fixed.
  4. No, it occurs at some point during the game. It usually seems to be 10-15 minutes into the game, but I've had it sooner. In every case I was playing Han Chinese, if that helps.
  5. I haven't found any reliable steps to reproduce. I've been getting the error every time I play "Alpine Valleys", but not at any reliable time in the game. I don't know which other maps the error occurs on, or if it even depends on the map. I haven't changed my graphics settings since A26 development began. I've been playing SVN since the A25 release, and I haven't noticed this error until 1-2 weeks ago.
  6. It crashed again, gdb reported: DeviceCommandContext.cpp(680): Assertion failed: "framebuffer" Thread 1 "main" received signal SIGSEGV, Segmentation fault. Renderer::Backend::GL::CDeviceCommandContext::SetFramebuffer (this=0x55555631ed30, framebuffer=0x0) at ../../../source/renderer/backend/gl/DeviceCommandContext.cpp:681 681 ENSURE(framebuffer->GetHandle() == 0 || (framebuffer->GetWidth() > 0 && framebuffer->GetHeight() > 0)); [Current thread is 1 (Thread 0x7ffff2b28e40 (LWP 669743))] (gdb) bt #0 Renderer::Backend::GL::CDeviceCommandContext::SetFramebuffer ( this=0x55555631ed30, framebuffer=0x0) at ../../../source/renderer/backend/gl/DeviceCommandContext.cpp:681 #1 0x0000555555966fdc in ShadowMap::BeginRender ( this=this@entry=0x555556451fd8) at ../../../source/renderer/ShadowMap.cpp:578 #2 0x000055555595d881 in CSceneRenderer::RenderShadowMap ( this=0x5555563b1280, deviceCommandContext=0x55555631ed30, context=...) at ../../../source/renderer/SceneRenderer.cpp:305 #3 0x0000555555961c0e in CSceneRenderer::RenderSubmissions ( this=0x5555563b1280, deviceCommandContext=0x55555631ed30, waterScissor=...) at ../../../source/renderer/SceneRenderer.cpp:798 #4 0x000055555596241e in CSceneRenderer::RenderScene (this=0x5555563b1280, deviceCommandContext=0x55555631ed30, scene=...) at ../../../source/renderer/SceneRenderer.cpp:1161 #5 0x00005555558e45e1 in CGameView::Render (this=<optimized out>) at ../../../source/graphics/GameView.cpp:238 #6 0x00005555559522a1 in CRenderer::RenderFrameImpl (this=0x5555564375c0, renderGUI=<optimized out>, renderLogger=<optimized out>) at ../../../source/ps/Game.h:167 #7 0x00005555559545ae in CRenderer::RenderFrame (this=0x5555564375c0, needsPresent=<optimized out>) at ../../../source/renderer/Renderer.cpp:429 #8 0x00005555556049bf in Frame () at ../../../source/ps/Singleton.h:51 #9 RunGameOrAtlas (argc=<optimized out>, argv=<optimized out>) at ../../../source/main.cpp:691 --Type <RET> for more, q to quit, c to continue without paging-- #10 0x00005555555f012e in main (argc=1, argv=0x7fffffffe028) at ../../../source/main.cpp:743
  7. I've updated to the latest revision. I haven't managed to trigger a crash yet, but I'll upload the trace if I do.
  8. I updated this morning again, and this latest crash took place on revision 26498. Is there anything changed since then that would affect this?
  9. Okay, I ran the game with gdb and encountered the crash. The backtrace reported this: #0 Renderer::Backend::GL::CDeviceCommandContext::SetFramebuffer ( this=0x55555638a490, framebuffer=0x0) at ../../../source/renderer/backend/gl/DeviceCommandContext.cpp:681 #1 0x0000555555966fdc in ShadowMap::BeginRender ( this=this@entry=0x555556451838) at ../../../source/renderer/ShadowMap.cpp:578 #2 0x000055555595d881 in CSceneRenderer::RenderShadowMap ( this=0x5555563a8280, deviceCommandContext=0x55555638a490, context=...) at ../../../source/renderer/SceneRenderer.cpp:305 #3 0x0000555555961c0e in CSceneRenderer::RenderSubmissions ( this=0x5555563a8280, deviceCommandContext=0x55555638a490, waterScissor=...) at ../../../source/renderer/SceneRenderer.cpp:798 #4 0x000055555596241e in CSceneRenderer::RenderScene (this=0x5555563a8280, deviceCommandContext=0x55555638a490, scene=...) at ../../../source/renderer/SceneRenderer.cpp:1161 #5 0x00005555558e45e1 in CGameView::Render (this=<optimized out>) at ../../../source/graphics/GameView.cpp:238 #6 0x00005555559522a1 in CRenderer::RenderFrameImpl (this=0x555556436c00, renderGUI=<optimized out>, renderLogger=<optimized out>) at ../../../source/ps/Game.h:167 #7 0x00005555559545ae in CRenderer::RenderFrame (this=0x555556436c00, needsPresent=<optimized out>) at ../../../source/renderer/Renderer.cpp:429 #8 0x00005555556049bf in Frame () at ../../../source/ps/Singleton.h:51 #9 RunGameOrAtlas (argc=<optimized out>, argv=<optimized out>) at ../../../source/main.cpp:691 --Type <RET> for more, q to quit, c to continue without paging-- #10 0x00005555555f012e in main (argc=1, argv=0x7fffffffe028) at ../../../source/main.cpp:743
  10. When I run gdb pyrogenesis, the game never launches. It begins: "Reading symbols from pyrogenesis... (gdb)" There are no error messages, but the game never starts.
  11. How do I run it with GDB? I don't know how to reproduce the error, so I'm not sure how useful that would be.
  12. The map was "Alpine Valleys" the second time, the first time it was "Chang Jiang". The first case was within five minutes of the start, the second was about ten minutes in. I've played other, much longer games, so I don't think that the time played affects it.
  13. While playing the game, I've twice had it crash with the following message: Assertion failed: "data" Location: DeviceCommandContext.cpp:301 (UploadBufferRegion) Call stack: (0x558fdb1dde25) binaries/system/pyrogenesis(+0x603e25) [0x558fdb1dde25] (0x558fdb18ab9f) binaries/system/pyrogenesis(+0x5b0b9f) [0x558fdb18ab9f] (0x558fdb18c6b4) binaries/system/pyrogenesis(+0x5b26b4) [0x558fdb18c6b4] (0x558fdb18cb58) binaries/system/pyrogenesis(+0x5b2b58) [0x558fdb18cb58] (0x558fdb01ba56) binaries/system/pyrogenesis(+0x441a56) [0x558fdb01ba56] (0x558fdb077910) binaries/system/pyrogenesis(+0x49d910) [0x558fdb077910] (0x558fdb077ac8) binaries/system/pyrogenesis(+0x49dac8) [0x558fdb077ac8] (0x558fdaffbf58) binaries/system/pyrogenesis(+0x421f58) [0x558fdaffbf58] (0x558fdb0a2530) binaries/system/pyrogenesis(+0x4c8530) [0x558fdb0a2530] (0x558fdadb95da) binaries/system/pyrogenesis(+0x1df5da) [0x558fdadb95da] (0x558fdad0ee1f) binaries/system/pyrogenesis(+0x134e1f) [0x558fdad0ee1f] (0x558fdace6881) binaries/system/pyrogenesis(+0x10c881) [0x558fdace6881] (0x558fdafe5e16) binaries/system/pyrogenesis(+0x40be16) [0x558fdafe5e16] (0x558fdafd5d29) binaries/system/pyrogenesis(+0x3fbd29) [0x558fdafd5d29] (0x558fdafd809e) binaries/system/pyrogenesis(+0x3fe09e) [0x558fdafd809e] (0x558fdac8a81f) binaries/system/pyrogenesis(+0xb081f) [0x558fdac8a81f] errno = 11 (Try again later) OS error = ? I don't know how to reproduce it. I'm using Ubuntu 21.10, 0AD revision 26458.
  14. I realise that making one civilisation too powerful could be a problem. However, at the moment, there aren't really very many styles available. There are a lot of different troops, with different strengths, but not many different styles available. By style, I mean an overall strategy, e.g. rushing, turtling, booming, harassing, naval supremacy. Currently, the only viable styles are booming and rushing. I think that the best way to balance civs while still allowing differentiation would be to give each civ a significant strength, but also a weakness that negates the advantage. That way, each player has a chance to use a powerful strategy, but the other players also have an opportunity to stop that player. For example, the carthaginians, on a map with little metal, would have the opportunity to use a powerful mercenary attack, but only if they can establish a trading route to generate metal. To use their mercenaries, they would need to get and defend a trade route, while to stop this player, the other team would need to break this trade route or kill the traders. Admittedly, situations like this probably don't occur frequently in the current game, but they could improve it.
  15. The issue with this is that, in my opinion, differentiation should encourage different playstyles, not just have visual differences. If the differentiation is inconsequential, there is no real difference in the game, and the gameplay becomes bland. If different civs encouraged different playstyles, there would be some actual variety. If we want real variety, some civs will have to have advantages in certain situations.
  16. I don't find it confusing after playing with it a bit longer. However, it makes more intuitive sense for the default cursor to be a pointer, and the attack cursor to be a weapon.
  17. I don't find it confusing after playing with it a bit longer. However, it makes more intuitive sense for the default cursor to be a pointer, and the attack cursor to be a weapon.
  18. The way the old cursor was styled, it looked more like a "pointer" than part of a weapon. The new one looks more like an weapon, which is more confusing. I don't get the error any more, thanks!
  19. Testing the latest changes changes with the new cursors, it seems confusing to have the default cursor be a sword, and then the "attack" cursor another kind of sword. The old cursor seemed more straightforward.
  20. There seems to be a new graphics bug in this version. When units die next to or on the water, the water next to them is shaded with the texture underneath the water. Also, when I start a match with the han, I get this error message: Actor props/units/helmets/headband_generic.xml255: required texture sampler specTex not found (material art/materials/player_trans_normal.xml)
  21. Another idea would be to give organic units immunity against fire, plus a reduction in the ordinary damage from the cavalry. That could make them a more specialised unit, strong against structures, but weaker against armies.
  22. I opened the file to that line, but it seemed to be for error logging. It contained this: throw new Exception( "Error while loading file \"{$path}\": {$message}");
×
×
  • Create New...