|
|
(47 intermediate revisions by 9 users not shown) |
Line 1: |
Line 1: |
| | {{Infobox_TODO| |
| | taskname=MADE Engine TODO| |
| | techcontact=[[MADE]] Engine Team| |
| | subsystem=Engine| |
| | }} |
| | |
| == Status == | | == Status == |
| * Return to Zork is completable | | * Return to Zork is completable |
| * Leather Goddesses of Phobos 2 is completable with glitches | | * Leather Goddesses of Phobos 2 is completable |
| * The Manhole is playable | | * The Manhole is playable |
| | * Rodney's Funscreen is playable |
|
| |
|
| == Bugs, glitches and ToDos == | | == Still missing/incomplete game features == |
| === Script bugs ===
| | * The following script functions need to be implemented/finished: |
| * Implement several missing opcodes (check script.cpp below) | | ** sfShakeScreen (for RtZ) |
| * Implement several missing script functions (check scriptfuncs.cpp below)
| | ** sfPlayNote (Used in The Manhole) |
| | | *** Figure out exactly what the second parameter modifies |
| === General ===
| | * File-specific tasks: |
| * Barth's blaster cannot be moved to the left of the screen
| | ** Finish up printText() in screen.cpp |
| | | * Only soundblaster music is played. MIDI music playing/MT32 instrument mapping needs more work |
| === Graphics ===
| | * Dirty rectangle handling |
| * Some screen effects are missing | | * RTZ Japanese Font (DOS/FM-Towns/PC-98) |
| * Use "dirty rectangles" (e.g. in updateSprites()) | | ** Uses the KROM file found in the base directory for all three |
| | | * Implement missing optional keyboard controls {{Tracker|id=5457}} |
| === Sound ===
| | * Implement RTZ loading compatibility if possible. |
| * Music is disabled in LGoP2 and Manhole (it's not loaded correctly) | | ** RTZ savegames are not portable between v1.0 and v1.1+ versions, despite internal version being 623 for all. |
| * Finish up MIDI music playing (only Soundblaster music is played for now) | | ** V1.0 savegames are 2 bytes larger (when decompressed by gunzip) compared to v1.1+ (19064 vs. 19062 bytes for English). |
| | |
| === Video ===
| |
| * Letters in the intro text of RtZ are not erased properly
| |
| * The white house in the intro of RtZ has some strange artifacts when the camera moves around it
| |
| * 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
| |
| * Some of the "screwing" animations in LGoP2 are shown very quickly | |
| * Sound in videos can sometimes be a little choppy (has this been fixed already?) | |
| * Do the sounds in RtZ have weird frequencies? (11127 or 22254) | |
| | |
| == File-specific tasks ==
| |
| === database.cpp ===
| |
| * Read/verify database header | |
| * Verify save game header
| |
| | |
| === pmvplayer.cpp ===
| |
| * Read/evaluate PMV file header
| |
| | |
| === resource.cpp ===
| |
| * Implement resource destructors
| |
| | |
| === screen.cpp ===
| |
| * Implement drawMenuText in drawSpriteChannels
| |
| * Implement clipRect in placeSprite(), placeAnim() and placeText()
| |
| * Finish up Screen::show()
| |
| * Finish up printText() | |
| | |
| === script.cpp ===
| |
| * Implement the following commands (if needed): | |
| ** cmd_svar | |
| ** cmd_sset | |
| ** cmd_split
| |
| ** cmd_snlit
| |
| ** cmd_yorn
| |
| ** cmd_class
| |
| ** cmd_vectorp
| |
| ** cmd_restart
| |
| ** cmd_catch, cmd_cdone, cmd_throw, cmd_functionp (are these debug-related?)
| |
| ** cmd_varx | |
| ** cmd_setx | |
| | |
| === scriptfuncs.cpp ===
| |
| * Implement/finish up the following script functions: | |
| ** sfPollEvent | |
| ** sfPlayMusic (for LGoP2/Manhole) | |
| ** sfGetMusicBeat
| |
| ** sfAddSprite (for RtZ)
| |
| ** sfPlayCd, sfStopCd, sfGetCdStatus, sfGetCdTime, sfPlayCdSegment
| |
| ** sfGetSoundEnergy (used to animate the mouths of characters when they're talking)
| |
| ** sfGetSynthType
| |
| | |
| * Are the following script functions needed at all?
| |
| ** sfSetTextPos
| |
| ** sfPlayNote
| |
| ** sfStopNote
| |
| ** sfPlayTele
| |
| ** sfStopTele
| |
| ** sfHomeText
| |
| ** sfLoadResText
| |
| ** sfClearMono
| |
| ** sfClearText
| |
| ** sfAnimText
| |
| ** sfSetMusicVolume
| |
| ** sfRestartEvents
| |
| ** sfSetChannelLocation
| |
| ** sfSetChannelContent
| |
| ** sfDrawAnimPic
| |
| ** sfReadText
| |
| ** sfShakeScreen
| |
| ** sfPlaceMenu
| |
| ** sfIsSlowSystem
| |
|
| |
|
| == Bugs of the original engine == | | == Bugs of the original engine == |
| * The screen effect palette changes incorrectly after a PMV video | | ==== Not Yet Fixed ==== |
| | * The screen effect palette changes incorrectly after a PMV video {{Tracker|id=4457}} |
| | * 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 |