Difference between revisions of "Cine/TODO"

From ScummVM :: Wiki
Jump to navigation Jump to search
(Removed fixup lockup in Operation Stealth)
(Add TODO on improving CINE savegames.)
Line 20: Line 20:
 
** Restart Game
 
** Restart Game
 
** Change Backup Drive
 
** Change Backup Drive
 +
* Add code to replace the original save/load dialogs with ScummVM dialogs, thus allowing 255 saveslots, rather than limited to 10 slots.
 +
* Add ScummVM savegame thumbnail support (Need to maintain loading of older savegames where this is not present).
 
* add support for AtariST sound and music resources (if different from Amiga)
 
* add support for AtariST sound and music resources (if different from Amiga)
 
* add support PC Speaker instruments in the PC SoundFX player code (write PCSoundDriver subclasses)
 
* add support PC Speaker instruments in the PC SoundFX player code (write PCSoundDriver subclasses)

Revision as of 19:21, 11 August 2012

TODO List
Name Cine Engine TODO
Technical Contact(s) Cine Engine Team
Subsystem Engine

Source Cleanup

  • Wrap the code into C++ classes where applicable/suitable. Possible classes candidates :
    • Gfx/Screen (bg_list.cpp, gfx.cpp)
    • Script (script.cpp)
    • Resource (bg.cpp, msg.cpp, part.cpp, prc.cpp, pal.cpp)
    • CineEngine (object.cpp, anim.cpp, various.cpp)
    • Sound (already done)
  • rename functions and variables that need it
  • reorganize functions and variables in cine/various.cpp

ToDo

  • implement, adapt or remove the following options in the system menu :
    • Pause
    • Restart Game
    • Change Backup Drive
  • Add code to replace the original save/load dialogs with ScummVM dialogs, thus allowing 255 saveslots, rather than limited to 10 slots.
  • Add ScummVM savegame thumbnail support (Need to maintain loading of older savegames where this is not present).
  • add support for AtariST sound and music resources (if different from Amiga)
  • add support PC Speaker instruments in the PC SoundFX player code (write PCSoundDriver subclasses)
  • (maybe) add support for MIDI playback on General Midi devices. Currently the MIDI driver uses MT-32 specific sysEx commands to setup the instruments etc.
  • add code for fadeIn/fadeOut
  • optimize the rendering (doing a full screen and palette refresh on each frame could be avoided)
  • use Common::List instead of custom linked lists (should allow removal and/or simplification of several functions)
  • cruisE and Cine have several chunks of code in common, find a way to factorize
    • sound code/system
    • gfx routines
    • unpacking routine
    • resource loading (parts, vol.cnf)
  • finish Operation Stealth support
    • Graphics Glitches:
      • Upon loading savegames, Palette is incorrect until you change screen.
      • Scene 6 Room 2 (Mansion Study, Safe Closeup) - LED Digits (mainly 4) Missing Segments.
      • Scene 8 (Cutscene - Top Of Porthole Tunnel Ladder) - Background around Ego (John) square with incorrect color.
      • Scene 8 Room 1 (Piranha Tank Cage) - Background to right of Cage incorrect color - Grey.
      • Scene 8 Room 1 (Piranha Tank Cage) - John on Wire to Grill animation is incorrect..
      • Scene 9 Room 12 (Master Control Room) - Background around console lights in bottom-left corner has square with incorrect color.
      • Scene 9 Room 12 (Master Control Room) - Countdown LED Digits (mainly 4) Missing Segments.
      • Scene 9 (On Gantry before boarding Helicopter) - Ego (John) background is incorrect and Ego is Black - incorrect palette?
    • Save/Load not possible between Scene 5 (Otto throws John into Sea off Boat) until after Scene 6 Labyrinth Arcade Sequence and During Scene 8 Rat Labyrinth Arcade Sequences - Think this was possible in the original and makes the arcade sequences much harder.
    • WARNING: Unable to find part file for filename '02-.ADL'!
    • WARNING: Unable to load soundfx instrument '02-.ADL'!
    • WARNING: Unable to find part file for filename 'QTRACK32.SPL'!
    • Misspelling Script Bugs :
      • Object "Bench of Bank Notes" - Should be Bunch
      • Read(y) - Missing y
      • Passport "English" should be British
      • Electrique Cable (for Razor) - should be Electric
  • Clean up any remaining memory leaks

Bugs

  • Future Wars: Looping samples don't loop in Amiga version (#3091660)