Changes

Jump to navigation Jump to search

Tinsel/TODO

452 bytes added, 20:01, 15 December 2012
Update DW1 Mac status
{{Infobox_TODO|taskname=Tinsel Engine TODO|techcontact= Missing features =[[Tinsel]] Engine Team|subsystem=Engine|}}
* The Adlib music does not sound right. I'm speculating that we would need to use the SAMPLE.* files from the original for Adlib instruments. Here is a description of the format probably used by SAMPLE.BNK: http://www.descent2.com/ddn/specs/bnk/ . The adlib.diff patch could possibly provide a starting point.== TODO ==
== Game * The AdLib music does not sound right. I'm speculating that we would need to use the SAMPLE.* files from the original for Adlib instruments. Here is a description of the format probably used by SAMPLE.BNK: http://www.descent2.com/ddn/specs/bnk/ . The adlib.diff patch could possibly provide a starting point.* Return to launcher is currently impossible, because the game uses a ton of global variables to keeps its state. These are not reset when one exits one Tinsel game to the launcher and then starts another Tinsel game (possibly the same). A quick way to fix it would be the following:*# Identify all global variables (this includes "static" variables hidden inside function bodies).*# Optionally, remove the inline initialization for all of them. This way, [http://valgrind.org/ Valgrind] can detect if they are used uninitialized, which may help in tracking down problematic vars.*# Initialize each global variable (or at least each that needs it) in an InitFILENAME() method in each file, which is to be called by the TinselEngine constructor or some other appropriate place.*# On the long run, turning all these variables into members of to-be-added classes (i.e. objectifying the engine) is preferable, but the above seems to be the easiest and quickest solution.* Check engine code for any 64-bit system incompatible code.* Check engine code for endian issues ==, specifically Big Endian issues (most issues should be fixed by now).
* Perform play testingThe following (minor) bugs were found in a Discworld 1 playthrough on 2012-05-27. It is suspected, look for problemsbut unconfirmed that they occur in the original interpreter. If so, and then add them all here!they should be moved to [[Tinsel/Bugs]].* The scene where Rincewind finds * Act 2: After the dragon's loot at first trip through L-Space to the end of act 1 is severely bugged. Rincewind and library in the dragon's treasure constantly disappear and reappearpast, the game can get stuck when the "Hiding From Thief" script is triggered and Rincewind's animations constantly restart (ehides.gThis appears to be caused by a problem with the Luggage pathfinding to hide and getting stuck. As the animation where he enters mouse is disabled at this point and the scene, game is waiting for the animation where he stuffs Luggage to hide before the treasure into Thief appears, the trunk and so on)game is stuck. I do not remember This only seems to occur when playing the game from a clean new game start to this bug from earlier revisionspoint i.e. during release playtesting, perhaps but it is recoverable as exiting and loading a regression savegame from just before this does not exhibit the bug and allows the latest ProcessSleep removals?game to continue.** UpdateAct 2: The buggy animation is directly related scene outside of the Hideout waiting for the Thief to give the subtitles speed. If password can glitch badly if the subtitles speed slider glass is moved all used on the way pipe very early. This causes a bad GFX glitch with Ego (Rincewind) jumping to the top left (fast subtitles/no delay), of the scene screen and then walking down-right until back to normal. This is shown correctlynot game-breaking.** Subtitle speed seems to cause other glitches much earlier Acts 1-3: (Seen in Act 3) At the gameLivery Stable, e.g. at the very beginningdrunk Donkey's "hiccup" bubbles are in the top left of the screen, when Rincewind gets out of his bedrather than correctly located over the Donkey's head. (These, or at least something similar, happen in Unsure if the original interpreter)exhibits this.* The Rincewind looking out screen saver sequence can occur during the credits* Act 4: Loading Mambo/M16 with coals, after only the ending sequence. When that sequence coughing animation is stopped (via mouse click)shown each time, except for the credits fail to resumelast time when he "roars" and smokes. (Though this doesnact't happen in s scripts are known to be buggy, IIRC the original interpreter)* After finishing the game, after the ending shows an animation and of Rincewind pouring the credits screen, we are taken back coals into M16 prior to coughing animations...** Act 2-4: In the title screen Dark Wood (where it says "Press any key heading to start"Nanny Ogg's cottage). If the game is started again, its state has not been reset so all the actors there are in two trees on the state they were in act 3/4 - i.epath with a large spider web between. On the luggage is awakefirst walk, Ego (Rincewind) triggers a "Walking into Spiderweb" animation, and the dean web is missing, the sleazy guy in prison and so no longer visible onlatter visits. (this happens in the original interpreter)* When you ask the Lecturer of Recent Runes (in the Dining Room) about the librarianHowever, the subtitles say "No, noeither on any latter visit or after load, no." while the voice-over says "Did you get the number of that donkey cart?" It is probably though the sample that web is wrong, not the scriptvisible, since the sample IDs are played in order"Walking into Spiderweb" animation plays when Ego walks through this point. (Only in English V2?) (this happens This probably occurs in the original interpreter).* When examining * Act 3-4: Pathfinding on the trapdoor drive at Lady Ramkin's Dragon Sancturary is buggy and can result in the broken drum, its description Ego ("Hmmmm... that characteristic scent of turpentine, crushed cockroaches and recycled beer!"Rincewind) does not fit on screenwalking through the closed gate/gatepost. (this happens This probably occurs in the original interpreter).* After openingAdd fixes/closing workarounds for bugs present in the Luggage's inventory, the frame around Rincewind's inventory is sometimes drawn wrong. I've only seen this happen after learning how to pick pockets. You can try original games - See [[http:Tinsel//wwwBugs]].update.uu.se* Currently, we semi-arbitrarily assigned F5 & F7 to open the load/~d91tan/ScummVM/dw.004 save dialogs (dreammaster did this savegame]to match Lure, for English v2which in turn follows the 'Sierra standard'). Maybe we should agree on some standard hotkeys which work in all (this happens in the original interpretermost/many)engines?
== Other stuff == * Discworld 1 Mac (medium) Add support for both the v1 and v2, and maybe even the demo. The opcode list may require tweaking. Various ways come to mind, for example, do it like in the ScummEngine (instead of one big switch/case for opcode dispatching, use a table with member funcs, and then have multiple such tables, one for each game versionfull).TODO ==* Right now, we semi-arbitrarily assigned F5 & F7 to open the load/save dialogs (dreammaster did that to match Lure, which Some stray black pixels are shown in turn follows the 'Sierra standard'). I (Fingolfin) would prefer if we could agree on some standard hotkeys which work in all sprites (most/many) engines... == Bugs Also in the Original ==In the following you will find a number of bugs which actually already occur when using the original interpreter / .EXE. That ispalette glitch, those errors are bugs in the games themselves, not in ScummVM. Still, we sometimes are able to implement workarounds, meaning ScummVM at times works better than the original ;or an issue with our graphics function implementation). Note that neither of these lists is complete. === Not Yet Fixed ===* In DW1 Alchemist animation glitch (Act II). {{BugTrack|num=2807633}}* In DW1 Luggage animation glitch. {{BugTrack|num=2805881}}
1,419

edits

Navigation menu