Difference between revisions of "SAGA/TODO"

From ScummVM :: Wiki
Jump to navigation Jump to search
(These legacy items already removed)
(Update TODOs. We've fixed many)
Line 21: Line 21:
** handleConverseUpdate scrolls converse too quickly.
** handleConverseUpdate scrolls converse too quickly.
** handleCommandUpdate scrolls inventory too quickly.
** handleCommandUpdate scrolls inventory too quickly.
** Options dialog functionality.
** "P" should be the hot-key for "Pick Up". In ScummVM, it's "Paws Game" instead.


* ORIGINAL ENGINE BUGS
* ORIGINAL ENGINE BUGS
Line 31: Line 29:
* Make actor animation Event-driven. See FIXME in actor.cpp. Maybe it should be INTERVAL_EVENT
* Make actor animation Event-driven. See FIXME in actor.cpp. Maybe it should be INTERVAL_EVENT
* No script func should use ScriptDataWord directly. All of them should be converted to appropriate data types via getTYPE() functions
* No script func should use ScriptDataWord directly. All of them should be converted to appropriate data types via getTYPE() functions
* Fix the usage of Rect so that it's more consistent with the rest of ScummVM, e.g. a rectangle covering the entire ITE screen should have right=320 and bottom=200. (eriktorbjorn, partly - mostly? - done)
* Inspect Font module - free memory, GameFontIds <-> FONT_ID
* Inspect Font module - free memory, GameFontIds <-> FONT_ID
* In many places RSC_LoadResource() is called but memory is not freed afterwards, i.e. there is a huge leak
* In many places RSC_LoadResource() is called but memory is not freed afterwards, i.e. there is a huge leak
Line 37: Line 34:
* When using the original XMIDI music resources, some songs play at the wrong speed. The worst example I've heard of this is the "Elk Fanfare" during the intro. It could be the meta events we don't handle, but at least the tempo event doesn't seem to make any difference. Maybe something in the data header instead...?
* When using the original XMIDI music resources, some songs play at the wrong speed. The worst example I've heard of this is the "Elk Fanfare" during the intro. It could be the meta events we don't handle, but at least the tempo event doesn't seem to make any difference. Maybe something in the data header instead...?
* In the dog's castle at guards' room (scene_change 177 ang go down) subtitles aren't shown. In floppy version there is complete silence both textual and audial. Looks to me as if subtitles are drawn outside the screen. Are the coordinates calculated wrong, or should the text drawing code compensate?
* In the dog's castle at guards' room (scene_change 177 ang go down) subtitles aren't shown. In floppy version there is complete silence both textual and audial. Looks to me as if subtitles are drawn outside the screen. Are the coordinates calculated wrong, or should the text drawing code compensate?
* Sound in old Win demo is all wrong -- either there is some unique sound format or I didn't guess it correctly
* Remove use of floating point, especially doubles.
=== Legacy items ===
* Remove use of floating point, especially doubles.
* Remove use of floating point, especially doubles.

Revision as of 11:47, 3 October 2005

Russian is allowed here. Можно пиÑ?ать и по-руÑ?Ñ?ки. Я переведу. [sev]

Status

Game is completable with occasional minor gfx glitches.

Short-term ToDos

  • Requests
    • We need to find out where following functions are called:
      • SF_cycleColors -- all implementation bits sit in palanim.cpp
      • sfPlayVoice -- used in ITE CD
    • There are currently two versions of ITE that are not uniquely identified: the Wyrmkeep "Win32 CD Version" and the original "DOS/Win32 CD Version". When adding games, the user gets to do the disambiguation, but what happens with the detection when playing the game?
  • BUGS
    • Protection screen (in Rats maze) is skipped in Floppy version.
    • Occasional graphics glitches in ISO rooms. (At least in the Rats maze.) Most notable when entering rounded doors. (3d draw sequence is wrong)
    • pressing ESC during making fire - brokes anim sequence
    • One puzzle voice-over sometimes cuts another one short.
  • Interface
    • wrong Option button draw sequence - some dots have inproper color.
    • handleConverseUpdate scrolls converse too quickly.
    • handleCommandUpdate scrolls inventory too quickly.
  • ORIGINAL ENGINE BUGS
    • Actors are drawn (some pixels above status bar) at Chota's falling. - Original engine draws its too - so it is not our bug

Long-term ToDos

Bugs/misfeatures

  • Make actor animation Event-driven. See FIXME in actor.cpp. Maybe it should be INTERVAL_EVENT
  • No script func should use ScriptDataWord directly. All of them should be converted to appropriate data types via getTYPE() functions
  • Inspect Font module - free memory, GameFontIds <-> FONT_ID
  • In many places RSC_LoadResource() is called but memory is not freed afterwards, i.e. there is a huge leak
  • Optimize screen output. Now we blit whole screen for each frame.
  • When using the original XMIDI music resources, some songs play at the wrong speed. The worst example I've heard of this is the "Elk Fanfare" during the intro. It could be the meta events we don't handle, but at least the tempo event doesn't seem to make any difference. Maybe something in the data header instead...?
  • In the dog's castle at guards' room (scene_change 177 ang go down) subtitles aren't shown. In floppy version there is complete silence both textual and audial. Looks to me as if subtitles are drawn outside the screen. Are the coordinates calculated wrong, or should the text drawing code compensate?
  • Remove use of floating point, especially doubles.