TsAGE/TODO
< TsAGE
This is a list of things that still need to be handled properly for the Ringworld game:
- Add sound support
- Adlib
- Sound Blaster
- Midi (MT-32)
Known engine bugs:
- There's a Valgrind warning in SceneObject::removeObject() about _visage being undefined when it tests for it. ("Conditional jump or move depends on uninitialised value(s)".
- The start play / introduction dialog looks a bit different in DOSBox than it does in ScummVM. It's positioned slightly different, the "Introduction" button has a different border (default button, perhaps?), and when clicked the button goes black, not red.
- In DOSBox, the button remains selected unless I move the mouse entirely off the button. (Should be fixed now, but the fix is a bit hackish.)
- Quitting the game while the inventory dialog is open generates a failed assertion.
Known hardcoded logic bugs in floppy version:
- In scene #6100, the Rocks occasionally get drawn on-screen over-sized at the very bottom of the screen. This is most easily noticable by navigating into a sunflower.
- Restoring a savegame in scene2320 results in a crash whenever the lift is used
Known hardcoded logic bugs in First Wave version:
- Scene 2320: When Quinn picks the arms, there a priority glitch (to be verified)
- Scene 6100: At the end, texts are not skippable, it looks wrong (to be verified)
Known hardcoded logic bugs in CD version:
- Scene 2100: If you sit down at Quinn's console and then get back up again, his walk animation gets screwed up until you leave the scene. (Update: This still happens for me, even after the fix. Note that I just click on the floor to walk away from the seat. If I click to use the seat, the animation works as it should. I wasn't even aware I could do that before.)
- Scene 4000 (or maybe 4045): If you tell the chief to show you the Tech, Miranda will say "Quinn, it's a simple force field regulator", even if she's not in the room with you because she's stuck with Rock. (Update: This is apparently a bug in the original interpreter as well, but could perhaps be fixed in ScummVM?)
- Scene 4100: If you enter from scene 4150 (the sleeping chamber/kitchen), and Rock is already passed out from the ale, the mouse cursor will stay invisible until you click the mouse.
- Scene 4025: Trying to save while looking at the "Tech" triggers an assertion: "engines/tsage/saveload.cpp:76: void tSage::Serializer::syncPointer(tSage::SavedObject**, Common::Serializer::Version, Common::Serializer::Version): Assertion `idx > 0' failed."
- Scene 2100: Talking to or looking at Miranda right after Seeker has been lost in the cave causes an "***I have no response.!" error. I guess that means that _globals->getFlag(59) didn't return 0 ("getflag 59" in the debugger prints 1). Forcing the flag to be 0 prints appropriate messages for the situation, but is it the condition or the value of the flag that is wrong? (The flag is set when the transmission ends and you leave scene 3700, and since that's when you find out that Seeker is lost, I'm guesing it's the test that's wrong. The flag is tested in a few others places, but those aren't necessarily wrong just because of that of course.)
Game status:
- Floppy version: Completable.
- First wave version: Completable.
- CD version: status unknown