Difference between revisions of "SCUMM/NES"

Jump to navigation Jump to search
1,357 bytes added ,  04:02, 4 December 2009
m
Clarify on this page about Famicom version not using SCUMM
(Sound is complete)
m (Clarify on this page about Famicom version not using SCUMM)
(8 intermediate revisions by 5 users not shown)
Line 1: Line 1:
== General ==
The NES version is supported(American, European, Swedish, French, German, Spanish, Italian).
The Famicom version(Japanese) is not supported as it does not use the SCUMM engine.
== Things To Do ==
== Things To Do ==
=== Inventory ===
* Make inventory work
=== Engine Verification ===
=== Engine Verification ===
* Verify functions:
* Verify functions:
Line 40: Line 42:
*** clearState01
*** clearState01
*** drawObject
*** drawObject
*** pickupObject * checking
*** pickupObject * partially checked
*** loadRoomWithEgo * unchecked
*** loadRoomWithEgo * unchecked
*** setBitVar * unchecked
*** setBitVar * unchecked
*** getBitVar * unchecked
*** getBitVar * unchecked
*** setOwnerOf * unchecked
*** setOwnerOf * unchecked
*** delay * unchecked
*** delay
*** walkActorToObject * unchecked
*** walkActorToObject * unchecked
*** putActorAtObject * unchecked
*** putActorAtObject * unchecked
*** walkActorTo * unchecked
*** walkActorTo * unchecked
*** setActorElevation * unchecked
*** setActorElevation * different - does not multiply elevation by 2, takes it as-is
*** putActor * unchecked
*** putActor * unchecked
*** setObjPreposition * unchecked
*** setObjPreposition * different - does nothing at all
*** getObjPreposition * unchecked
*** getObjPreposition
*** doSentence * unchecked
*** doSentence * partially checked
*** drawSentence * unchecked
*** drawSentence * unchecked
*** cutscene * unchecked
*** cutscene * difference - also saves _currentScript and clears some click-related vars
*** endCutscene * unchecked
*** endCutscene * difference - clears the _currentScript var saved in cutscene
*** setCameraAt * unchecked
*** setCameraAt * difference - sets camera to Panning mode, not Normal mode
*** panCameraTo * unchecked
*** panCameraTo * difference - no mention of camera._movingToActor
*** cursorCommand * unchecked
*** cursorCommand
*** getActorX * unchecked
*** getActorX
*** getActorY * unchecked
*** getActorY
*** getActorElevation * unchecked
*** getActorElevation * different - does not divide elevation by 2, returns it as-is
*** getActorWalkBox * unchecked
*** getActorWalkBox
*** animateActor * unchecked
*** animateActor * unchecked
*** lights * partially checked
*** setObjectName * unchecked
*** setObjectName * unchecked
*** saveLoadGame * unchecked
*** resourceRoutines * different - does nothing at all
*** resourceRoutines * unchecked
*** restart * unchecked
*** restart * unchecked
*** setBoxFlags * unchecked
*** setBoxFlags
*** verbOps * unchecked
*** verbOps * different - no case for 0xFF (verb on/off), sets fewer vars
*** roomOps * unchecked
*** roomOps * different - lacks case 2 (room color)
*** actorOps * unchecked
*** actorOps
*** actorFromPos * unchecked
*** actorFromPos * unchecked
*** findObject * unchecked
*** findObject * unchecked
Line 96: Line 98:
*** getDist * unchecked
*** getDist * unchecked
*** getClosestObjActor * unchecked
*** getClosestObjActor * unchecked
*** getRandomNr * unchecked
*** getRandomNr
*** getActorMoving * unchecked
*** getActorMoving
*** isSoundRunning * unchecked
*** isSoundRunning
*** isScriptRunning * unchecked
*** isScriptRunning
*** delayVariable * unchecked
*** delayVariable
*** stopSound * unchecked
*** stopSound
*** startMusic/startSound * unchecked
*** startMusic/startSound
*** walkActorToActor * unchecked
*** walkActorToActor * unchecked
*** putActorInRoom * unchecked
*** putActorInRoom * unchecked
*** actorFollowCamera * unchecked
*** actorFollowCamera * unchecked
*** getActorCostume * unchecked
*** getActorCostume
*** getActorRoom * unchecked
*** getActorRoom
*** getActorFacing * unchecked
*** getActorFacing
*** faceActor * unchecked
*** faceActor * unchecked
*** lights * unchecked
*** saveLoadGame
*** stopMusic * unchecked
*** stopMusic * different - only stops music track


=== Graphics ===
=== Graphics ===
Line 121: Line 123:
* Somehow add static MM logo and LucasArts logo (needs to be done before engine initializes)
* Somehow add static MM logo and LucasArts logo (needs to be done before engine initializes)


=== Sound ===
== Known Issues ==
* Still need to link in an NES APU module to get sound output; otherwise, Player_NES is complete.
* Moving the cursor in the verb/inventory area will 'select' objects in the room if they touch the top of the room (example: stairs)
* Text wrapping doesn't work for the sentence bar (it moves down 1 pixel, right in the middle of the word; needs to wrap at name/word boundaries)
* Walking and talking at the same time doesn't work - stop walking while talking and your mouth will not move, stop talking while walking and you start sliding across the room.
* Clicking in the top 16 pixels of the screen (above the subtitle bar) crashes the program.
* Walkboxes have some bugs - in some cases, you can walk through corners. This appears to be a bug with all V1-V2 games.
* After you select your characters and hit start, the first sound that gets played is 'chirping crickets' instead of 'pickup item'. This may be due to improper handling of o2_stopMusic()
* The 'maniac mansion' logo scroll during the intro gets stuck due to a camera issue (original engine expects screen to be 224 wide, but in ScummVM it's 256 wide so it can't scroll far enough).

Navigation menu