MantisBT - Zandronum
View Issue Details
0004155Zandronum[All Projects] Suggestionpublic2023-08-21 00:452025-05-05 14:18
TDRR 
 
normalminorN/A
newopen 
3.1 
 
0004155: Add a way to lift ACS VM instruction limit
Mods, especially more modern ones, can very easily hit the runaway script limit with more complex code. It's intended to help stop infinitely looping scripts, but the fact it's an instruction limit means it doesn't just limit the amount of loops, but also the amount of work done in a tic in general, so more than detecting infinite loops it's just a hindrance.

It's a rather arbitrary limit to still have around, too, given how neither DECORATE nor ZScript have any similar limits (DECORATE does have one, but only in Zandronum and it's purely clientside).

Some ways to lift the limit have been suggested, such as:
-A "BUSY" script flag, suggested by Dusk. Adds a script flag that removes the instruction limit only for the flagged script. Would require modifying ACC and would introduce more differences with GZDoom, but allows the most granular control.

-Disabling by default, but keeping a compatflag to enable it if an old mod needs it (or for debugging), suggested by Sean. Doesn't require modifying ACC and there's much less difference with GZDoom.

-Making it a branch limit instead, suggested by DavidPH. This would vastly increase the amount of work allowed and would address the issue much more directly. It would pretty much just limit the amount of loops and not the amount of work done in said loops.

-Removing it entirely. This is what GZDoom would most likely do, as I asked them a while ago and this was the solution that got the most acceptance.
No tags attached.
Issue History
2023-08-21 00:45TDRRNew Issue

There are no notes attached to this issue.