Env
I created a small play-anywhere cartridge which displays the keyword/value pairs of the Env table.
Keyword | Emulator | Colorado / Oregon | Pocket PC | OpenWIG |
---|---|---|---|---|
Platform | Win32 | Vendor 1 ARM9 | PocketPC 2003 | MIDP-2.0/CLDC-1.1 |
CartFolder | <current GWC directory> | <0/1>:/Wherigo | <current GWC directory> | c:/what/is/it/to/you |
SyncFolder | <current GWC directory> | <0/1>:/Wherigo/Saves | <current GWC directory> | c:/what/is/it/to/you |
PathSep | \ | / | \ | / |
DeviceID | Desktop | <device serial #> | <very long serial #> | <value of java microedition.platform property on the device> |
Version | 2.11 | 2.11 | 2.11 | 2.11-compatible |
CartFilename | <gwc-filename>.gwc | <gwc-filename>.gwc | <gwc-filename>.gwc | <gwc-filename>.gwc |
LogFolder | <windows directory> / nil value | <0/1>:/Wherigo/Logs | \My Documents\ | c:/what/is/it/to/you |
Downloaded | <secs since 1970-01-01> | <secs since 1989-12-31> | <secs since 1970-01-01> | 0 |
Device | <built-for device> | <built-for device> | <built-for device> | <built-for device> |
There's some interesting stuff in there. For a start, there seem to be plenty of better ways to detect the emulator than checking is the player's altitude is zero. For example:
if Env.Platform == "Win32"
or
if Env.DeviceID == "Desktop"
or of course something more complicated that is harder to patch with a binary editor. (My own builder, currently in alpha testing, will allow you to specify that strings are obfuscated in the final cartridge and converted back to the real values at runtime, which will make all sorts of cheating harder.)
If someone who has a Pocket PC would like to run this and either update the tables or send the results to me for interpretation (I'm particularly interested in the timestamp), please let me know (nick dot brown at free dot fr).