Just a hex number? That works for the death table trigger, but not memory trigger. Or do you mean hex address relative to 0? I don't think I'd add that, because then the meaning of the number depends on the format, and that is not intuitive. Perhaps I can try something like saying Memory at death table + [XXX] (0xYYY), but then the 4 byte alignment would need to be enforced somehow.
EUD Editor (which a lot of people are using to generate EUD actions) generates the actions like this: SetMemory(0x6635D8, SetTo, 754975234);
chkdraft supports this format natively so we can just copy and paste the triggers directly into there. scmdraft doesn't, and requires the hex address to be changed to an EPD, meaning you have to double-handle everything. The EUD editor also supports being able to convert your EUD actions back into units.dat etc changes, so it's helpful to keep the actions in a format that can be used in either tool directly.
I don't think solely supporting EPD in the long term makes sense - now that in SCR we know that addresses are never going to change again, there's no real benefit to EPD. It just adds a layer of indirection away from the real memory addresses that we're messing with.
As far as enforcing 4-byte alignment, just throw an invalid error during compilation whenever the address is not divisible by 4.
New bug report: I made about a dozen changes to my map (in chkdraft, per above reasons) without testing any of them, and then went into scmdraft to make some final changes. Now my map crashes SC at startup. So I went to the scmdraft backup database so I could do a diff against the latest triggers, and there are many copies of my map in there, however only the most recent copy is openable by SC or Scmdraft. Older versions aren't detected as legal maps by either, making the backup DB rather less useful than it should be.
I'm happy to send you the DB or selected maps from the backup, but the whole DB is 50mb so will need to email it or host somewhere.
Edit: Ah, I just pre-placed too many units (lazily copy and pasted a huge number for each player). So deleting the units now lets me open the map properly, so there's no urgency on needing the backed up maps to work.