View Issue Details

IDProjectCategoryView StatusLast Update
0000339Gameplay + OpenGL[All Projects] Bugpublic2017-02-26 04:37
Assigned To 
Status resolvedResolutionfixed 
Summary0000339: When too many EventHandlers are used, they become unreliable. gzdoom-x64-g2.4pre-620-g10c6b7a
DescriptionThe more EventHandlers I add inside MAPINFO, the more likely the previous ones I made are to stop working.

Example PK3 sent via PM on the forum
Steps To ReproduceBind a key to "netevent SprintKeyHandler" and try to use it in-game.

If I QUICKLY start a new game as soon as the program launches, and IMMEDIATELY hit the Sprint key; the sprinting will work and I can trigger it repeatedly.

If I take my time at the title screen, then press new game, then wait a few more seconds and try to Sprint... the sprint key won't work.

I was able to reproduce this repeatedly.
Additional InformationHere's what @ZZYZX said:

SprintKeyHandler is static, and if you put it in MAPINFO, it's supposed to be loaded at the start of the engine and persist.
Yet, for whatever reason it gets removed at exactly tic 40 in titlemap. Tested with WorldTick callback that outputs level.time.
No idea what causes this really, will build latest GZDoom later and test, if Graf can't help sooner.
I really think this might be related to the recent GC edit which made static handlers non-fixed, but as well might not be that. Looks too deterministic to be a problem with GC (it's always 40 tics...).

Can you send that archive to Graf as well pls :)
TagsNo tags attached.





2017-02-25 21:41

reporter   ~0000774

Sorry for the big package but whenever I tried to make minimal, isolated examples, the bug would not reproduce.

Issue History

Date Modified Username Field Change
2017-02-25 21:39 Nash New Issue
2017-02-25 21:41 Nash Note Added: 0000774
2017-02-26 04:37 Graf Zahl Status new => resolved
2017-02-26 04:37 Graf Zahl Resolution open => fixed