Difference between revisions of "MADE/TODO"

From ScummVM :: Wiki
Jump to navigation Jump to search
(sfGetSynthType is only used in RtZ)
(Updated TODO)
Line 18: Line 18:
** sfGetCdTime
** sfGetCdTime
* For Return to Zork:
* For Return to Zork:
** sfGetSoundEnergy (used to animate the mouths of characters when they're talking). This has been implemented now, but the mouth animations are out of sync. This occurs because the original unpacked sounds on the fly, whereas ScummVM unpacks them when they're loaded. In ScummVM, the "sound energy" values are stored in an array (used as a stack), which means that sfGetSoundEnergy can empty that array prematurely. A proper fix would be to figure out when a value should be popped from the sound energy stack, or to unpack sounds on the fly like the original does
** sfGetSoundEnergy (used to animate the mouths of characters when they're talking). This has been implemented now, but the mouth animations are out of sync or wrong. Seems like an issue with the "mouth shut" state (0)
** sfShakeScreen
** sfShakeScreen
** sfGetSynthType
** sfGetSynthType
Line 36: Line 36:


=== Video ===
=== Video ===
* In RtZ's intro, after the flyover, an invalid number of sound chunks is read. There is currently a hack which stops the parser when this happens to prevent the game from crashing, but the intro credits screen is not shown
* The intro credits screen after the RtZ intro (after the flyover, in the scene with the sign) is not shown


== File-specific tasks ==
== File-specific tasks ==
=== database.cpp ===
=== database.cpp ===
* Read/verify database header
* Read/verify database header
* Verify save game header
=== pmvplayer.cpp ===
* Read/evaluate PMV file header


=== screen.cpp ===
=== screen.cpp ===

Revision as of 20:37, 13 January 2009

Status

  • Return to Zork is completable
  • Leather Goddesses of Phobos 2 is completable
  • The Manhole is playable
  • Rodney's Funscreen is playable

Still missing game features

  • The intro credits in RtZ are not played (invalid sound data is read at that point)
  • Only soundblaster music is played
  • The first version of the Manhole (EGA) is not supported

Bugs, glitches and ToDos

Script bugs

Implement/finish up some script functions:

  • Script functions:
  • For all:
    • sfGetMusicBeat
    • sfGetCdTime
  • For Return to Zork:
    • sfGetSoundEnergy (used to animate the mouths of characters when they're talking). This has been implemented now, but the mouth animations are out of sync or wrong. Seems like an issue with the "mouth shut" state (0)
    • sfShakeScreen
    • sfGetSynthType
  • For Manhole:NE:
    • sfPlayNote
    • sfStopNote
    • sfPlayTele
    • sfStopTele

General

Graphics

  • Use "dirty rectangles" (e.g. in updateSprites())

Sound

  • Finish up MIDI music playing/MT32 instrument mapping (only Soundblaster music is played for now)

Video

  • The intro credits screen after the RtZ intro (after the flyover, in the scene with the sign) is not shown

File-specific tasks

database.cpp

  • Read/verify database header

screen.cpp

  • Implement clipRect in placeSprite(), placeAnim() and placeText()
  • Finish up Screen::show()
  • Finish up printText()

Bugs of the original engine

  • The screen effect palette changes incorrectly after a PMV video
  • Animations in LGoP2 are incorrectly drawn above text (they should be drawn below it). An example can be seen when talking to the Indian as Lydia and performing the kiss/screw action. Also, with Barth, it can be seen from the first screen if you try and shoot Barth's spaceship: Barth will say something, and the smoke from the spaceship will be incorrectly drawn above the letters