Sly 1:Builds/May 19 2002: Difference between revisions

Add debug flags
(Add subpage link)
(Add debug flags)
 
(One intermediate revision by the same user not shown)
Line 25:
 
{{Clear}}
 
== LiveEdit ==
=== LiveEdit ===
[[File:Sly 1 May 19 live edit.png|thumb]]
 
Line 32 ⟶ 33:
{{Clear}}
== Debug flags ==
[[File:Sly 1 May 19 debug flags.png|thumb]]
 
There are severalmany debug flags en memory that can be toggled by setting them to 0 or 1 in memory. The following screenshot shows the flags <code>showCameraEdges</code>, <code>ShowBones</code>, <code>ShowBrightnessBar</code>, <code>ShowPlayerSuck</code>, and <code>ShowShapes</code> enabled.
 
[[File:Sly 1 May 19 debug flags.png|480px|inline]]
{{To do|Add a table of all flags}}
 
{| class="wikitable"
|-
! Name !! Offset !! Description
|-
| ShowAxes || 0x2736f0 || Shows the XYZ axis gizmo on Sly's model.
|-
| showCameraEdges || 0x2736f4 ||
|-
| ReverseLook || 0x273990 || Inverts the look axis.
|-
| DrawEmitterGroupSelf || 0x0273a40 ||
|-
| ShowBones || 0x273bc0 || Renders the bones on entity models.
|-
| DisableSkin || 0x273bc4 ||
|-
| DisablePoses || 0x273bc8 ||
|-
| CdAvailable || 0x273e80 || Indicates whether the CD is available for a read operation; Used by the game engine.
|-
| CpmanOverride || 0x274f4c || Used by the game engine.
|-
| SkipDialog || 0x2752c0 ||
|-
| fontDebug || 0x276070 ||
|-
| RenderLoopIdle || 0x276218 || Used by the game engine.
|-
| FreezeReport || 0x27621c ||
|-
| CelAntiAlias || 0x27763c ||
|-
| Invulnerable || 0x279b24 || Makes Sly ignore all damage.
|-
| InfiniteCharms || 0x279b28 || Gives Sly infinite Lucky Charms.
|-
| ShowEffectObjects || 0x279b2c ||
|-
| ShowReachMap || 0d279b30 || Renders a 3D wireframe that shows how far Sly can reach with his cane.
|-
| ZapFreeze || 0x279b34 || Makes Sly freeze in place whenever he gets zapped by level hazards (i.e. drowning, falling, electricity).
|-
| DynamicLights || 0x27eb7c || Used by the game engine.
|-
| ReportXPs || 0x27f2e4 ||
|-
| LiveEdit || 0x27f9cc ||
|-
| ShowPaths || 0x28000c || Renders the pathfinding calculated by the guard AI.
|-
| DisableRumble || 0x281af0 || Disables controller rumble.
|-
| ShowBrightnessBar || 0x2890ec || Displays a grayscale color bar on-screen.
|-
| ShowPlayerSuck || 0x2890f0 || Displays the float value for the player's "suck" score (used to calculate difficulty).
|-
| LasenBusyListChange || 0d289190 ||
|-
| ShowShapes || 0x289494 || Renders a wireframe on top of 3D objects.
|-
| SneakyFeet || 0x2897c4 || Controls whether Sly's footsteps make guitar sounds.
|-
| RenderStepPhys || 0x289b10 ||
|-
| ForceFore || 0x289b70 ||
|-
| ForceBack || 0x289b74 ||
|-
| DisplayDetection || 0x289cb0 ||
|-
| LoadDebugInfo || 0x28a784 || Used by the game engine.
|-
| LoadBulkData || 0x28a798 || Used by the game engine.
|-
| ShowTargets || 0x28a98c ||
|-
| DisableSquish || 0x28a9c0 || Toggles whether Sly can get squished by level hazards.
|-
| R || 0x28b400 || Unknown
|-
| WmReversePlayed || 0x28b6c4 ||
|-
| ShowZapGeometry || 0x28c174 || Shows a wireframe around areas where Sly will drown/fall and die.
|}
 
== Unused game mechanics ==
=== Cycle ===
{{Infobox struct
| title = CYCLE
| official = y
| size = 0x6e0
}}
 
There is code for some kind of wheeled vehicle in <code>P2/cycle.c</code>. Its appearence is unknown, but the CYCLE data structure suggests it would have multple wheels, suspension, and the ability to boost. It would kick up dirt particles on the ground as it moves. It also seems that it could go on water, as it has values for leaving ripples in its wake. It's struct is similar to {{Sly 1|SUV|the van}}.
 
The CYCLES (cycle state) enum has the following values:
{{Enum top|CYCLES}}
{{Enum value|CYCLES_Nil|-1}}
{{Enum value|CYCLES_Brake|0}}
{{Enum value|CYCLES_Accelerate|1}}
{{Enum value|CYCLES_Coast|2}}
{{Enum value|CYCLES_Max|3}}
{{Enum bottom}}
 
=== Hang Glider ===
{{Infobox struct
| title = HG
| official = y
| side = 0x900
}}
 
There is code for a hang glider in <code>P2/hg.c</code>. The JTBS (JT body state) enum uses the following values for the hang glider:
{{Enum top|JTBS}}
{{Enum value|JTBS_Hang_Forward|50}}
{{Enum value|JTBS_Hang_Neutral|51}}
{{Enum value|JTBS_Hang_Backward|52}}
{{Enum value|JTBS_Hang_Idle|53}}
{{Enum bottom}}
 
The HGS (hang glider state) enum has the following values:
{{Enum top|HGS}}
{{Enum value|HGS_Nil|-1}}
{{Enum value|HGS_Passive|0}}
{{Enum value|HGS_Stand|1}}
{{Enum value|HGS_Run|2}}
{{Enum value|HGS_Glide|3}}
{{Enum value|HGS_Zap|4}}
{{Enum value|HGS_Dead|5}}
{{Enum value|HGS_Peek|6}}
{{Enum value|HGS_Max|7}}
{{Enum bottom}}
 
==== BHG ====
{{Infobox struct
| title = BHG
| official = y
| size = 0xba0
}}
 
There is a separate struct called BHG which is used in <code>P2/mb.h</code>. The functions and data structures suggest it may be a variant of the hang glider used by guards.
 
{{Clear}}
 
=== Skiing ===
[[File:Sly1_May19_Skis.png|480px|right]]
This build has code for a cut skiing mechanic in a file named <code>P2/stepski.c</code>. It would probably be used in {{Sly 1|Fire in the Sky}}, which is not present in this build. There is no dedicated SKI struct as the skis are part of Sly's character model.
 
The JTBS (JT body state) enum uses the following values for the hang glider:
 
{{Enum top|JTBS}}
{{Enum value|JTBS_Ski_Stand|45}}
{{Enum value|JTBS_Ski_Jump|46}}
{{Enum value|JTBS_Ski_Fall|47}}
{{Enum value|JTBS_Ski_Boost|48}}
{{Enum value|JTBS_Ski_Attack|49}}
{{Enum bottom}}
 
The IBLSKI enum has the following values:
 
{{Enum top|IBLSKI}}
{{Enum value|IBLSKI_Nil|-1}}
{{Enum value|IBLSKI_Forward|0}}
{{Enum value|IBLSKI_Right|1}}
{{Enum value|IBLSKI_Left|2}}
{{Enum value|IBLSKI_Max|3}}
{{Enum bottom}}
 
There is also an IBLSKI_2 enum with these values:
 
{{Enum top|IBLSKI_2}}
{{Enum value|IBLSKI_Stand_Forward|0}}
{{Enum value|IBLSKI_Stand_Right|1}}
{{Enum value|IBLSKI_Stand_Left|2}}
{{Enum value|IBLSKI_Speed_Forward|3}}
{{Enum value|IBLSKI_Speed_Right|4}}
{{Enum value|IBLSKI_Speed_Left|5}}
{{Enum value|IBLSKI_2_Max|6}}
{{Enum bottom}}
 
== Cheat Codes ==
The following are all cheat codes in the build.