This page details one or more prototype versions of Disney's Donald Duck: Goin' Quackers (Windows).
| To do:
- The executable Donald.exe is full of references to debug tools and a menu. Is it possible to activate these? Note that it runs on the same engine as Rayman 2.
|
The Donald Duck Demo was included in various demo discs from Mickey Mouse magazines and more. It has several differences between the final. Only 4 levels can be played in the demo. It can be downloaded from here: http://kuribo64.net/board/thread.php?id=3352
General
- The game's executable is 2157 kb in size while the final version is just 681 kb.
Proto |
Final |
---|
 |
 |
- Donald Duck Goin Quackers was simply named "Donald Duck Demo" and it also had a simple copyright.
Proto |
Final |
---|
 |
 |
Proto |
Final |
---|
 |
 |
- Only three languages could be selected and Gyro's house looks different and unfinished.
Proto |
Final |
---|
 |
 |
- The HUD had a more mechanic design that was changed drastically in the final. The golden warp pad was absent in the HUD.
Proto |
Final |
---|
 |
 |
| To do: On the final game's data, the string "DDPC991119-v0002" can be found at the top. This may still be true here, on the proto, since the Pause Screen doesn't show the full image in-game. Add extra information regarding the "off-screen" information if that's the case. |
Proto |
Final |
---|
 |
 |
Proto |
Final |
---|
 |
 |
Proto |
Final |
---|
 |
 |
- The One-Ups had no animation yet and were static.
- The warp pads had a different animation; It changes to black instead of changing back to the gray texture, when entering it.
Level Differences
First Avenue
Proto |
Final |
---|
 |
 |
- The electric areas were darker and some planks were thicker. Some walls and fences were changed and some lamps were moved around.
- Many of the enemies had a different model, including the painter and the criminal trash can.
- The background was also absent and used a light blue color instead.
Proto |
Final |
---|
 |
 |
- The car had a different design. In the final, it was changed to a blue and red theme to present Scrooge McDuck's car.
Proto |
Final |
---|
 |
 |
- The little balcony to the room with the golden warp pad is not present.
Urban High-Rises
| This page or section needs more images. There's a whole lotta words here, but not enough pictures. Please fix this.
|
- Some textures were different.
- Shading was less detailed.
Haunted Hall
| This page or section needs more images. There's a whole lotta words here, but not enough pictures. Please fix this.
|
- The frankenstein's monsters had a different, less detailed model
- Same goes for the skeleton hand platform, which also lacked some shading
Creepy Corridor
- The area with the golden warp pad was not present.
- The wooden signs from the coffins had different textures:
- The music used here is an early version of Eerie Alley's theme.
Audio Differences
Music
First Avenue
The music has a slightly different instrumentation, a longer melody in the beginning and a different crash noice heard at 1:47 (1:30 for the final) that was changed in the final.
Urban High Rise
Percussion was missing and the instrumentation was slightly different. A crash noise can be heard at 0:49 that was removed in the final.
Eerie Alley
The instrumentation was simpler and lacked some ghostly effects and echoes.
Haunted Halls
The music is completely different. It appears to be borrowed from the PlayStation version.
Unused Graphics
Early Rayman 2 Leftovers
A big number of graphics of an early Rayman 2. Some of them still exist in some proto and final versions of Rayman 2.
Early Icons
HUD






Most likely an early HUD. The wooden vertical meter can still be found in an updated form unused in the final version of Rayman 2. The last 7 icons also exist unchanged and unused in the final. The horizontal yellow and red bar were later used for the music and sound settings in the final game.
Shoot Effect
A shiny shooting effect which is meant to be copied and flipped around like this:
Early Graphics
Early Boss Icons
The boss icons all had a lower pixel resolution. Some of these were later used in the Nintendo 64 version.
Early Dialogue Icons
Some early dialogue icons. Gladstone's icon got even updated in the final and went simply unused there too. Daisy's icon was later used for Donald's sleeping animation, where a dream cloud appears with her head in the cloud.
DiLog300_origin.gf
The title screen without the "Donald Duck DEMO /1.1" text.
Polices.tga
An unused font, possibly for debugging features. It also can be found in an early Rayman 2.
Unused Text
The executable is full with developer messages, error strings and debug texts. Interestingly there are also mentions about a "Dynamic Mode".
Developer Messages
You are not allow to use another group to the default
You try to release the default channel (0), you not allow to do that !
Strange, the number of free was not valid.
The debug function TestMalloc has repaired this data.
Please warn the developper of Mmg to fix the Bug
Strange, you have request a free with a NULL pointer, please change that
Strange, you have request an allocation of 0 Byte, the return value Will be NULL, please change
Can not free the Block (in Mmg_fn_vDeleteblock)
The number of requested allocation are too high, the debug information memory is full
Can not allocate (the block is full)
The Static memory address is not valid (not referenced in the debug table), or using a wrong static block
The dynamic memory address is not valid (not referenced in the debug table)
Can not allocate dynamic memory (in fn_p_vDynAlloc),
the system function for allocation failed (return NULL)
Impossible to Allocate the block (in Mmg_fn_vInitblock),
the system function for allocation failed (return NULL)
Can not free the dynamic memory
You can NOT use this function with this kind of block: block without Free management
The last Allocation Overwrite the Remain check Key, just after the p_cMaxMen
The size of the allocation is not compatible with the alignment requested duing the initialization of the block
Problem the Mmg_M_SetModeAlloc is not appropriate
Example: you try to use Dynamic memory but Mmg_M_SetModeAlloc is set for the Static memory
You have selected the Dynamic mode.
But __DYNAMIC_MALLOC_ALLOWED__ is not defined
The Mmg initialization have to be done before the Erm initialization
Malloc system failed in Mmg_fn_vInitBlock function
Malloc system failed in InitMmg function
Malloc system failed in FirstInitMmgModule function
Sorry, too much channels are used
Invalid number of channel
You've try to access to the memory through Mmg module.
But the memory have been locked with Mmg_fn_vLockAlloaction!
There is no static memory
The BlockId is impossible
The moduleId is impossible
The address is not a static address
The static block that you try to use, is not valid, it's should be not well initialize !
The virtualAlloc function failed (return NULL). Is that enough memory ??
There is too many allocation
Overflow after an allocation
Overflow before an allocation
Overflow after a static malloc
Overflow before a static malloc
Overflow after a dynamic malloc
Overflow before a dynamic malloc
the dynamic memory allocated is not aligned
(from the 'malloc' system function, in fn_p_vDynAlloc)
Alignment error of the beginning address of my block
(from the 'malloc' system function, in Mmg_fn_vInitblock)
The block tested by testMalloc is not valid, it's should be not initialize !
Mar 12 1998
Memory Manager
MMG V6.0.1
X:\cpa\tempgrp\MMG\CpaMmg.c
Because 0X%X it's not multiple of %d
the size requested (%d) is not a multiple of the alignment(%d)
The key expexted should be 0X%X, but we have 0X%X
the is not enought memory(%db) for the allocation size requested (%d)
there is no free space enougth big (i.e. %db)
,even with the 'added debug information' memory
=> Total Static Memory used for %d Modules/%d : %db (%.2fKb; %.2fMb)
-> Total Static Memory for the module #%d: %db (%.2fKb; %.2fMb)
* Block #%d: %db (%.2fKb; %.2fMb) allocated
-> Static Memory : General Data for %d Block(s) = %d
=> module (#%d) :
|-----------------------------------------|
| Memory Used for the management of Mmg : |
|-----------------------------------------|
]
]
%s
In [
%s{Memory Channel=%d [0X%X, %d]
%sMemory Channel=Default
], for Static mode (Block #%d)
], for Static mode (Block #%d)
%s
], for Dynamic mode
], for Dynamic mode
%s
�
�
RND
Base Id Card
Camera Id Card
MecMatCharacteristic
Mechanic
IPO structure
PCS structure
Physical CollSet
PO structure
Physical objet
Octree structure
Face index list
Octree node
Tagged face table
Tagged point table
Face index
Element base table
Octree
Visual set
Mip-mapping
Animated texture
Camera
ZList
Police
ZBufferForLight
Global
GLI
ViewPortArray
ObjectType Element
Always Model
Always Generator
Engine Object
Main Char
Font
Always Active char
Morph List
Morph Channels List
List of Maps
BinAnim
SnapShot
LipSynchro
CSO
GAM
Vignette
Speed Matrix
Cutted Anim
Morph Data
Events
Key Frames
FramesKF
Frames
Channels
Only Frames
NTTO
Hierarchy
Quaternions
Vectors
A3dGENERAL
Interpol
BlendRLI
Struct
Array
LOD
Element
Morphing
Main
A3D
3DOS
Collide Material
Miscellaneous file
Tga file
Gf file
Concat file
Bmp file
File
IPT
SAI
Element Cone
Element Aligned Box
Element Sphere
Element Line
Element Point
Element TMeshes
Element FaceMap
Element Indexed triangles
Element Sprite
Bounding Sphere
Rotative Sprite
Parallel Box
List Of Points Material
List Of Edges Material
List Of Edges
List Of Points
List Of Element
List Of ElementTypes
Main Object
IndexByElement
Normales points
GEO
Sound Event
Static Light
Dynamic Light
Sound Element
Active Element
Character Element
Collision Element
Graphic Element
Sector
Super-Object table
Super-Object
Position
AIDebug
GraphNode
Graph
NameOfGraphSection
NameOfGraph
Arc
ListOfArc
NodeVector
NodeString
DsgMem
DsgMemBuffer
DsgVar
DsgVarInfo
Intelligence
ScriptAI
Model
ActionTable
ActionTableEntry
Interpret
Rule
Comport
NodeMacro
Macro
Mind
ZoneSetEncapsulation
CsaListElement
ZoneSetListElement
GeometricZdxListElement
ZdxIndexListElement
ZdxListElement
ObjectTableEvent
ObjectTableElement
ObjectsTableList
Prohibit
Transition
State
Family
MS Magnet
MS AnimEffect
MS Sound
MS PrtSrc
MS Micro
MS SectInfo
MS Light
MS Way
MS CollSet
MS CineInfo
MS Brain
MS Dynamics
MS StdGame
MS 3dData
Mini-structure
Script
Not declared allocation
%i,%03i,%03i
%i,%03i
%i
</BODY>
</HTML>
bytes ave)
Sub-type #
Average size of block :
%s%s%i%s%s%s
blocks for one structure
%s%s%s%s%s%s%s%s%s%s
Average size of structure :
bytes (
%s%s%s%s%s
(
%s%s%s%s%s%s%s%s%s%s%s%s%s
 
bytes allocated (
bytes wasted) in
%s%s%i%s%s%s%s%s%s
-
<b>
</b>
%s%s%s
<A NAME="
"></A>
%s%s
</table>
</TH>
%s %s
blocks)
bytes freed)
in
structures
(
bytes wasted)
%s%s%s%s%s%s
<TD ALIGN=RIGHT>
<font size=+2>
bytes allocated
%s%s%s%s%s%s%s%s%s
<A HREF="#
">
<font size=+1>
</A>
%s%s%s%s%s%i%s
<TR>
<TD>
<font size=-1>
Type #
</font>
</TD>
%s
<table>
Number of types : %s%i%s%s%s
<font size=+1><b>
%s%s%s%s%s%s%s
<HTML>
<BODY>
<font size=+2><b>
MEMORY DUMP
</b></font>
</p>
<HR>
MemoryDump.htm
-> There are %d allocation(s) & %d free(s)
->%.2f%%%% remain i.e %ldb (%.2fKb; %.2fMb) / %ldb (%.2fKb; %.2fMb)
->%.2f%%%% lost for the management of free, i.e %ldb (%.2fKb; %.2fMb) / %ldb (%.2fKb; %.2fMb)
->%.2f%%%% used for allocation, i.e %ldb (%.2fKb; %.2fMb) / %ldb (%.2fKb; %.2fMb)
--> Current status:
--> MaxMen status: The higher allocation
--> not valid (should be not initialized)
-> %.2f%%%% used i.e %ldb (%.2fKb; %.2fMb) / %ldb (%.2fKb; %.2fMb)
--> MaxMen status: The higher address used in this block without Free
The block #%d:
The info are not valid !!!
Module Id = %d
===> Without __DEBUG_MALLOC_MODE__ <===
: <===
===> Print the used Static memory on
Ó�BÎûÿß?
€?ÿÿÿÿÓ�BÎûÿß?
€?
Ó�BÎûÿß?
€?X:\cpa\tempgrp\PCS\Specif\PhysColl.c
Ó�BÎûÿß?
€?X:\cpa\tempgrp\PO\Specif\PhObjs.c
Ó�BÎûÿß?
€?VS
VSE_HEADER
FichierRLI
FichierMOD
LOD_Threshold
Ó�BÎûÿß?
€?ÿ
y]
Œy]
€y]
�=]
Dec 04 1997
Physical objects
PO V5.1.0
PHY
PHY_HEADER
BV
AllCollideSets
CS
Ó�BÎûÿß?
€?ZOO_HEADER
ZDD
ZDE
ZDR
Ó�BÎûÿß?
€?X:\cpa\TempGrp\POS\Position.c
Ó�BÎûÿß?
€?�
monitor frequency : %i Hz, CPU frequency : %i Mhz
X:\cpa\tempgrp\PRF\Specif/profile.cxx
Ó�BÎûÿß?
€?
€?X:\cpa\tempgrp\PRT\PrtSrc.c
Ó�BÎûÿß?
€?X:\cpa\tempgrp\PRT\SprtPrt.c
Ó�BÎûÿß?
€?X:\cpa\tempgrp\PRT\SegmtPrt.c
Ó�BÎûÿß?
€?X:\cpa\tempgrp\PRT\PointPrt.c
Ó�BÎûÿß?
€?X:\cpa\tempgrp\PRT\PrtSyst.c
Ó�BÎûÿß?
€?X:\cpa\tempgrp\PRT\PrtEnv.c
Ó�BÎûÿß?
€?X:\cpa\tempgrp\PRT\PrtMeca.c
Strings
Mechanic Allocation Error
%s
to someone.
%s
to an unknown %s.
%s
to %s of the family : %s .
%s
to %s : %s
%s
to %s : %s
of family : %s
actors
actor
always
You must allocate an advanced mechanic
You must allocate complex mechanic
You must allocate a complex mechanic
You must allocate collision
X:\cpa\tempgrp\MEC\DNMDynam.c
Mechanic error
You must select a mechanic in action editor
to actor : %s .
Ó�BÎûÿß?
€?333?Ó�BÎûÿß?
€?
Ó�BÎûÿß?
€?
Ó�BÎûÿß?
€?X:\cpa\tempgrp\MEC\hidcard.c
Ó�BÎûÿß?
€?üÿ?@Ó�BÎûÿß?
€?
Ó�BÎûÿß?
€?
Ó�BÎûÿß?
€?SpeedingUp
LinearSpeed
AngularSpeed
MaxSpeed
TiltOrigin
TiltInertia
TiltIntensity
Iz
Iy
Ix
SlopeLimit
Rebound
Slide
Scale
StickOnPlatform
Stream
Inertia
SpeedLimit
KeepSpeedZ
CollisionControl
Tilt
Swim
Shoot
Spider
OnGround
Climb
Gi
Gravity
Collide
Animation
IdCardBase
IdCardCamera
Ó�BÎûÿß?
€?X:\cpa\tempgrp\MEC\hMecMatC.c
Ó�BÎûÿß?
€?BaseRebound
BaseSlide
MechanicalMaterial
Debug Window Text
X:\cpa\tempgrp\AI\AIBase\AI_Proto.c
Defines.ai
Debug Window
Test de la fonction %02d = %011ld : OK.
Test de la fonction %02d = %011ld : ERREUR !!!!!!!!!!!
== Lecteur : %c ==
== Test des protections ==
==========================
PTC_TEST.LOG
}
Consigne(%ld)
Result(%ld)
Parameter(%ld)
ComputeDataCode(%ld)
{CodePassif:
{CodeActif:
%s\%s\%s.patch.ptc
Ó�BÎûÿß?
€?X:\cpa\tempgrp\AI\AIBase\StrIntel.c
Error Messages
Call of a repositionning procedure on an uncontrolled channel
Wrong use of EngineGoto
This is a warning about AI script
Debug version : dynamic allocation in bloc AI (don't forget to increase the bloc)
This comport doesn't belong to perso
The execute action has interrupted
The array for cycling comport is too small
Cycle in comportement changing
Change comport to the same comport
Field or variable designer have not correct type to store the passed value
Strange a (out of range) designer variable has been truncated
Memory problem for free
Invalid save type for designer variable
Invalid model cast
Invalid use of Ultra operator
Super Object is not a camera
There was an error in the script
Reference not loaded
Button not defined
No Dynamics found
Division by zero
Wrong operator in left parameter of affect function
Bad entry in AIModel Script
Null vector is not allowed for this function
The first link must be a line (only for mode NbrOfLink = NbrOf WP)
The position specified for the access of a WP or a link in the way is invalid
The dynamic type of the link is invalid
The type of the link is invalid
Assertion failure
Attempt to access to an element in the array though it is empty
Attempt to add an element to the array though it is already full
WP handle is invalid
A function parameter is invalid
Unknown operator
This is not a valid condition
This is not a valid operator
Wrong Variable Designer ID
This is not a valid Procedure
This is not a valid Function
Wrong type for action's parameter
Not a good action to change to
Invalid access to dsgvar or field
Invalid access to dsgvar
Invalid access to field
Unknown node
Can't find perso
CreateComport section not in CreateIntelligence section
CreateRule section not in CreateComport section
CreateNode section not in CreateRule section
Bad rule number
Bad node number
Bad comportment number
Bad Type for left operand in affectation
Action table is too small
Too much Node Interpret Loaded
Unknown KeyWord Name
Priority of rule must be greater than 0
Unknown Condition Name
Unknown Procedure name
Unknown Function Name
Unknown Field Name
Wrong specified position in the Perso list! Can not delete the perso
The insert position in the Perso List is not available
The Perso List is Full
Script Read Problem: The type of the variable is not valid
Problem during an allocation memory
Invalid action
Wrong field in perso struct
Wrong number of parameter
Wrong number of parameter in the Condition
Too much elements in condition stack
There is no element in condition stack
Too much parameters for the Action
Too much parameters for the Condition
Too much Actions Loaded
Too much Conditions Loaded
This is not a valide AI fatal error
Module AI
Dec 5 1997
Artificial Intelligence
AI V5.0.
Debug Text
X:\cpa\Main2_0\Src\EngMain.c
alloc Channels
max alloc Channels
alloc PLA SPO
max alloc PLA SPO
Skipped anims
Shadow Elements
Fix Elements
Static Elements
Dynam Elements
Number of actors in collision with the main character
Number of objects of the map in collision with the main character
nb displayed sectors
Shadow faces
Fix faces
static faces
dynam faces
Shadow objects
Fix objects
static objects
dynam objects
Current Sector
VarGli8
VarGli7
VarGli6
VarGli5
VarGli4
VarGli3
VarGli2
VarGli1
Gli8
Gli7
Gli6
Gli5
Gli4
Gli3
Gli2
Gli1
Display Sprite
Display Specific 2
Display Specific
Wait for 3dFx
AI+DNM+PLA
Misc AI/DNM/PLA
Misc
Flip
Sound
Editor
Input
Player
Mechanics
Collisions with others Actors
All Collisions
AI
Display
Total
ISPAUSEDEVT
ISDEADEVT
EXITEVT
EXEFRAMEEVT