SCRMaps
/
Sign in

What eudplib actually does

What is working underneath EUD Editor 3, and the three ideas you need.

3 min read

EUD Editor 3 is largely the buttons and windows. What produces the EUD sits underneath it.

eudplibThe Python library that generates EUD. Memory addresses, trigger generation and optimisation all live here.
euddraftThe tool that drives eudplib to build the map.
epScriptA language for writing EUD without touching eudplib directly. It compiles down through eudplib.

Three ideas make the rest of the reference legible.

  • EPD - a memory offset converted into the “player number” form the death-counter condition takes. That conversion is how EUD reaches arbitrary memory, and EPD(offset) performs it.
  • Current Player - the value holding who a trigger is running as. eudplib moves it around to reach memory; f_setcurpl moves it and f_getcurpl reads it.
  • Reads are expensive, writes are cheap - a write is one action, while a read has to evaluate conditions repeatedly. The documentation puts writes at roughly 32 times faster. When performance matters, read less.

This is why the f_dwread_cp family runs about twice as fast as f_dwread_epd - it reads relative to Current Player. And f_getcurpl is around 32 times faster than reading 0x6509B0 yourself.

eudplib syntax and epScript syntax are not the same, and a model will mix them. As the Claude Code module says, always have syntax confirmed against your own files.

Sign in to track your progress