Re: Minor Bug in Babylon Project v2.60
I've solved it. There appears to be a bug in Weird Worlds.
I put a lot of tracing into the Babylon 5 mod, and found that BOTH of these conditions were matched (at the same time) [Intel version]:
CONDITION 1
TYPE haveitem
STR0 it_datacrystal5
END CONDITION
CONDITION 2
TYPE noitem
STR0 it_datacrystal5
END CONDITION
The result is that the code that YOU GOT THE VIRUS would run, and then the code that YOUR CRYSTAL BACKUP PROTECTED YOU would run. But only the text from having the backup would be displayed. (Result: an item was actually sabotaged, but it'd display a message saying that it was averted.)
So there is a very clear (IMHO) fault in the 'NOITEM' code, because it is flagging it_datacrystal5 as not there, at a time when it clearly is (and also flagging it as 'HAVEITEM').
I worked around this bug by adding a key to the it_datacrystal5.ini definition. I said "KEYS backup". I then changed the conditions of the sabotage event...
CONDITION 1
TYPE haveitem
STR0 backup
END CONDITION
CONDITION 2
TYPE noitem
STR0 backup
END CONDITION
Finally! The backup prevented the SABT (aka "virus") from working. The only remaining problem is in their code...
TEXT You're not sure if it's a delayed attack from one of your battles, or incompatibility between your systems, but the <color=070><uvar=stolenitem><color=999> aboard the <uvar=affectedship> has developed a virus and is now inoperable! <br><br> Fortunately, you still have the backup copy of the operating system in the Data Crystal with you and you're able to re-install all the drivers you need. Whew! That was a close one.
...the problem there is that STOLENITEM and AFFECTEDSHIP are never populated, because no sabotage is attempted in the first place, so you can't be specific about an event that never happened. This should be replaced with more generic text. Perhaps something about 'the engines'.
|