-
Notifications
You must be signed in to change notification settings - Fork 16
Level Design
Ricardo Lüders edited this page Jul 3, 2021
·
1 revision
The purpose of this part of the document is to explain how to design levels for Pod Escape.
There are right now two groups of obstacles:
-
killingObstacles
: All obstacles that kill the player when colliding with them. -
dashable
: All obstacles that the player can dash through them but if it is not dashing, they will kill him (e.g.fire wall)
Every new obstacle need to be added to one of those groups for collisions to work
- Create a new scene with a Node2D as root.
- Click on the "Instance a scene as a Node" button.
- Select
res://src/Levels/Floor.tscn
as the scene to instance so you can add the first floor. - Repeat step 2 for every obstacle or collectable to add to the scene (always as a child of the root node, if you want to create a new obstacle, do it in
res://src/Scenes
directory). - Add a
VisibilityNotifier2D
as a child of the root node and move it to the end of the level (seeHardBlockFire.tscn
as an example) - Select the difficulty of the level.
- Save the scene with the name you want in the
res://src/Levels
directory. - Open
res://src/Levels/World.tscn
in the Godot editor. - Select
LevelController
node. - Add your new scene to the corresponding array in the inspector, depending on the difficulty of the level.
- Save the World scene.
- Test your scene and do all the modifications you want. Check next section for easy tests.
- Commit and push your code.
For testing your levels in an easy way and not having to wait for a medium or hard level to appear, do the following:
- In
World
scene, add your level toDebug Levels
array. - Enable
Level Debug
. - Run the game. The levels you want to test now will appear in the first minute.
- Remember to disable
Level Debug
before pushing and cleaning the array.