M1 | M2 | 055 | 001
|Summary:||Client crash after pressing switch in Valiant.wad|
|Product:||Odamex||Reporter:||Ralph Vickers <Ralphis>|
|Component:||Client||Assignee:||Odamex Bug Reporter <odamex-bug-reporter>|
|Severity:||major||CC:||alexmax2742, Ch0wW, odamex-bug-reporter, stlaurent.nicholas|
Error seen in GZDoomBuilder
Description Ralph Vickers 2018-12-30 16:47:09 UTC
Created attachment 562 [details] Crash dump Git build: e307cc1a. Hard crash after pressing the first switch in valiant.wad MAP01. You can noclip right through the first door and up to the platform on the right to activate the switch, which results in a hard crash. Happens reliably. Crash dump is attached. https://www.doomworld.com/idgames/levels/doom2/Ports/megawads/valiant
Comment 1 Maëllig Desmottes 2019-01-05 08:53:05 UTC
Created attachment 565 [details] Error seen in GZDoomBuilder After debugging it, the problem has been reported in bool P_SetMobjState(AActor *mobj, statenum_t state, bool cl_update). After checking Valiant MAP01 in Doom Builder, I noticed this happened because of a voodoo doll.
Comment 2 Nick 2019-02-11 19:51:21 UTC
This happens because of the custom pinky in the closet. It looks like it's a dehacked parsing issue because the state it's attempting to set is an invalid number (1074) which overflows the state buffer which is size 1005.
Comment 3 Alexander Mayfield 2020-04-05 16:44:52 UTC
This is actually happening because the DeHackEd is referring to a state frames in the global state table that does not exist in Odamex. MBF has a number of extra frames in this table that handle states for things like the Helper Dog and the Beta BFG. Odamex simply does not have as many states in this table, despite having some ZDoom items and the CTF flags.