Posted: Tue May 17, 2011 1:50 pm
Derrick has been working behind the scenes on a new compiler for Ultima Online Demo. During his testing he has discovered some new interesting typo-bugs in the OSI scripts.
The new decompiler, Mass M Decompiler, Publish 7, takes care of those typo bugs and produces clean output. It is important to note that almost none (at all?) of these typo bugs are producing buggy script behaviour. Most bugs are handled silently by the script parser found in the uodemo.exe.
A list of bugs fixed, between Publish 6 and Publish 7:
More missing semicolons bugs: 4159, 4161, detcthid, polymrphbase, shiptillerman, shrine, speechrelay, spellai, test1, trap_statue
More missing comma bugs: carpentry, chaosguild, hinttest, nonhuman, orderguild, player, virtueguild
Excess comma bug: flourmill
Double case bugs: dyetub, itemmanip, mydyetub, scissors, shipplank, torch
Assignment using '==' instead of '=': old_human
Assignment using '-' instead of '=': statue_spikes_one, statue_spikes_two
Download link:
The new decompiler also gives an option to handle and fix (comment out) double cases in switch statements. This option is only valid for UOSL (enhanced) output. Also, "return();" is automatically converted to "return;". Both are valid statements for the demo. Derrick and I discussed this and we chose to only allow "return;".
<Derrick> RunUO AI is kind of a functional prototype, which i have hacked into something resembling OSI behavior, but only by complitcating everything
|