The memory overrun occurs when a ship dictionary contains the escort-ship key and that key is the same as the key of the dictionary containing it. An example will clarify immediately what I mean.
Let's take a recently developed popular ship, like the Caduceus. To reproduce the bug, open the Caduceus shipdata.plist and in the dictionary residing under the <key>caduceus</key> entry, paste this:
Code: Select all
<key>escort-ship</key>
<string>caduceus</string>
<key>escorts</key>
<integer>2</integer>
For now, anyone making ships should be aware of the bug and be very careful when assigning escorts this way. v1.73 will have this already fixed. In v1.73, when something like the above is encountered, the escort setup will be ignored and a warning message will be issued in the log.