Wiki source code of Traversal
Version 2.1 by Alexandros Mloukie on 2025/12/17 15:24
Hide last authors
| author | version | line-number | content |
|---|---|---|---|
| |
2.1 | 1 | = 0 - Introduction = |
| 2 | |||
| 3 | Traversal defines the means through which the player explores the game world, and includes the mechanics and tools that allow the player to move from one point to another. | ||
| 4 | |||
| 5 | == 0.1 - Disclaimer == | ||
| 6 | |||
| 7 | The terminology used in this document (e.g. "Rock Climbing") functions as a conceptual descriptor of how the player's movement is affected by specific mechanics rather than literal items or objects. | ||
| 8 | |||
| 9 | == 0.2 - Design Philosophy == | ||
| 10 | |||
| 11 | Due to the high verticality of the game's level design, multiple vertical traversal mechanics are required to ensure fluid and engaging player movement. The goal is to combine these systems seamlessly, allowing the player to chain various traversal actions dynamically without breaking gameplay flow. | ||
| 12 | |||
| 13 | == 0.3 - Terminology == | ||
| 14 | |||
| 15 | (% class="table-bordered" %) | ||
| 16 | (% class="active" %)|=(% style="width: 169px;" %)Term|=(% style="width: 994px;" %)Meaning | ||
| 17 | |(% style="width:169px" %)PC|(% style="width:994px" %)Player Character | ||
| 18 | |(% style="width:169px" %) |(% style="width:994px" %) | ||
| 19 | |||
| 20 | ---- | ||
| 21 | |||
| 22 | = 1 - Traversal Mechanics = | ||
| 23 | |||
| 24 | == 1.1 - Basic Traversal == | ||
| 25 | |||
| 26 | (% class="table-bordered" %) | ||
| 27 | (% class="active" %)|=(% style="width: 167px;" %)Mechanic|=(% style="width: 995px;" %)Overview | ||
| 28 | |(% style="width:167px" %)Walking|(% style="width:995px" %)Standard for 3D games. Does not consume Stamina | ||
| 29 | |(% style="width:167px" %)Sprinting|(% style="width:995px" %)((( | ||
| 30 | Standard for 3D games | ||
| 31 | |||
| 32 | Features editable delays for acceleration/deceleration | ||
| 33 | |||
| 34 | Consumes Stamina over time | ||
| 35 | ))) | ||
| 36 | |(% style="width:167px" %)Jumping|(% style="width:995px" %)((( | ||
| 37 | True directional jumping | ||
| 38 | |||
| 39 | Consumes Stamina | ||
| 40 | |||
| 41 | PC remains steerable while airborne | ||
| 42 | ))) | ||
| 43 | |(% style="width:167px" %)Crouching|(% style="width:995px" %)((( | ||
| 44 | Standard crouch movement | ||
| 45 | |||
| 46 | Reduces visibility and hitbox size | ||
| 47 | |||
| 48 | Consumes stamina | ||
| 49 | ))) | ||
| 50 | |||
| 51 | == 1.2 Vertical Traversal == | ||
| 52 | |||
| 53 | (% class="table-bordered" %) | ||
| 54 | (% class="active" %)|=(% style="width: 168px;" %)Mechanic|=(% style="width: 995px;" %)Overview | ||
| 55 | |(% style="width:168px" %)Grappling Hook|(% style="width:995px" %)((( | ||
| 56 | Allows the player to attach to specific objects and climb up or down | ||
| 57 | |||
| 58 | The player can also swing to reach new surfaces | ||
| 59 | |||
| 60 | Consumes Stamina while the interaction is active | ||
| 61 | ))) | ||
| 62 | |(% style="width:168px" %)Rock Climbing|(% style="width:995px" %)((( | ||
| 63 | Enabled when interacting with designated surfaces | ||
| 64 | |||
| 65 | Upon activation the camera moves to 3rd person | ||
| 66 | |||
| 67 | The player can move along the vertical plane defined by the surface's orientation | ||
| 68 | |||
| 69 | If the player is touching the ground, no stamina is consumed | ||
| 70 | |||
| 71 | While not touching the ground, stamina is continuously consumed | ||
| 72 | |||
| 73 | If the player is actively moving, stamina is consumed faster | ||
| 74 | |||
| 75 | If stamina reaches 0, player enters a [[Freefall>>doc:Test file.TestDocPort.WebHome||anchor="PlayerStates"]] state | ||
| 76 | ))) | ||
| 77 | |(% style="width:168px" %)Rope|(% style="width:995px" %)((( | ||
| 78 | Restricts the PC's movement to the vertical axis | ||
| 79 | |||
| 80 | Stamina is consumed while the player is suspended or moving (LINK HERE!!!!!!!!!!!!!!!!!!) | ||
| 81 | |||
| 82 | If stamina reaches 0, player enters a [[Freefall>>doc:Test file.TestDocPort.WebHome||anchor="PlayerStates"]] state | ||
| 83 | ))) | ||
| 84 | |(% style="width:168px" %)Water|(% style="width:995px" %)Mitigates fall damage completely upon entry | ||
| 85 | |(% style="width:168px" %)Geyser|(% style="width:995px" %)((( | ||
| 86 | Launches the PC towards a vector defined per actor instance | ||
| 87 | |||
| 88 | Alternatively, it can add a launch vector to the PC's existing momentum | ||
| 89 | |||
| 90 | Both launching and landing consume stamina | ||
| 91 | |||
| 92 | If the PC is launched without the needed stamina, they enter the [[Freefall>>doc:Test file.TestDocPort.WebHome||anchor="PlayerStates"]] state | ||
| 93 | |||
| 94 | If the PC lands without the needed stamina, they get the [[Crippled>>doc:Test file.TestDocPort.WebHome||anchor="StatusList"]] status | ||
| 95 | ))) | ||
| 96 | |(% style="width:168px" %)Trampoline|(% style="width:995px" %)((( | ||
| 97 | Converts downwards momentum into upwards momentum | ||
| 98 | |||
| 99 | Allows the player to build and maintain speed | ||
| 100 | |||
| 101 | Each bounce consumes stamina | ||
| 102 | ))) | ||
| 103 | |||
| 104 | {{warning}} | ||
| 105 | [[image:icon:information]] Every mechanic that launches the PC by default puts them in the [[Controlled Fall>>doc:Test file.TestDocPort.WebHome||anchor="PlayerStates"]] state. For more info read the [[Player State Machine>>doc:Test file.TestDocPort.WebHome]] document | ||
| 106 | {{/warning}} | ||
| 107 | |||
| 108 | == 1.3 - Horizontal Traversal == | ||
| 109 | |||
| 110 | (% class="table-bordered" %) | ||
| 111 | (% class="active" %)|=(% style="width: 166px;" %)Mechanic|=(% style="width: 997px;" %)Overview | ||
| 112 | |(% style="width:166px" %)Rail Skating|(% style="width:997px" %)((( | ||
| 113 | The PC automatically snaps onto a predefined spline and follows it | ||
| 114 | |||
| 115 | The player can jump off at any moment at the cost of stamina | ||
| 116 | |||
| 117 | Splines can branch into multiple paths from which the player can choose using their standard movement input | ||
| 118 | |||
| 119 | While skating, stamina neither regenerates nor depletes | ||
| 120 | ))) | ||
| 121 | |(% style="width:166px" %)Grappling Hook|(% style="width:997px" %)((( | ||
| 122 | Can be used to propel the player in a horizontal direction | ||
| 123 | |||
| 124 | Allows traversal over gaps and hazards | ||
| 125 | ))) | ||
| 126 | |||
| 127 | ---- | ||
| 128 | |||
| 129 | = 2 - Technical Documentation = | ||
| 130 | |||
| 131 | == 2.1 - Walking Data == | ||
| 132 | |||
| 133 | (% class="table-bordered" %) | ||
| 134 | (% class="active" %)|=Parameter|=Type|=Description | ||
| 135 | |Walk Speed|{{success}}Float{{/success}}((( | ||
| 136 | |||
| 137 | )))|((( | ||
| 138 | The PC's base walking speed | ||
| 139 | ))) | ||
| 140 | |Acceleration|{{success}}Float{{/success}}|Time required to reach max walking speed | ||
| 141 | |Deceleration|{{success}}Float{{/success}}|Time required to come to a full stop | ||
| 142 | |Footstep Sound Cue| | | ||
| 143 | |Stamina Cost per Second|{{success}}Float{{/success}}| | ||
| 144 | |||
| 145 |