[r1578] pr_spawnmobj is used by dynamic lights (sync issue)
Posted: Thu May 30, 2013 7:54
At present, dynamic lights are spawning actual objects that end up using the pr_spawnmobj RNG. The 2 main problems with this is:
1) Players can load their own dynamic light definitions, none at all, or have dynamic lights disabled all-together, inconsistently offsetting pr_spawnmobj between each session.
2) Changing some display settings will re-initialize dynamic lights. Window mode and resolution, for example.
This, predictably, creates synchronization issues in demos and netgames due to inconsistent dynamic light spawns. At least preventing them or using a separate RNG at p_mobj.cpp: line 3780 (AActor::StaticSpawn) should suffice.
1) Players can load their own dynamic light definitions, none at all, or have dynamic lights disabled all-together, inconsistently offsetting pr_spawnmobj between each session.
2) Changing some display settings will re-initialize dynamic lights. Window mode and resolution, for example.
This, predictably, creates synchronization issues in demos and netgames due to inconsistent dynamic light spawns. At least preventing them or using a separate RNG at p_mobj.cpp: line 3780 (AActor::StaticSpawn) should suffice.