SCRMaps
/
Sign in

Plugin order decides the screen

When two plugins write the same line, only the later one is visible.

4 min read

List several plugins in an eds file and they are called every cycle in that order. If each minds its own business the order does not matter. But the screen text lines are a shared resource, and when two plugins write the same line the later one overwrites the earlier.

The symptom is nasty: the overwritten side raises no error. A feature appears to have vanished, and reading the code for that feature shows nothing wrong. The culprit is in a different file.

[ntd.eps]        // 먼지 돌며 HUD와 카운트다운을 그린다
[ntdsave.eps]    // 나중에 돌며 같은 줄에 상태줄을 그린다
Result: the HUD and the countdown both disappear.
  • Keep everything that writes one line in one place. That is the surest fix.
  • If the other side is a generated plugin, look for an option that turns its output off. There usually is one.
  • Decide which side should win and keep the other quiet. Whichever redraws every cycle always wins.
  • A screen drawn once loses to anything drawn every cycle. If the screen matters, redraw it every cycle too.

Reads have the same problem. If a plugin consumes a counter, code that reads it has to live in a file that runs earlier. Order in the eds is execution order, so reordering can kill a feature that was working.

Sign in to track your progress