How to use the level editor


Information on editor and levels

The Cubic Jumping level editor was used to create all the mainline levels and can be used to create custom levels too. Cubic Jumping levels are stored in a format called HFM (Header File Map), and saved with the ".hfm" file extension.

Opening the level editor

From the main menu, click "Play or edit custom level". Then, enter the name of the level you want to edit, in the textbox. If a level under that name does not exist, the game will try to create a file for it. Level names should be 1-8 characters long, not including the file extension. Enter something like "mylevel.hfm" to create your first level. Then, click "Edit custom level".

Looking around

Use the arrow keys to move the camera around the level. Press shift to move faster. These binds can be changed by editing the "options.conf" file in the game's directory.

The editor modes

The level editor has several different modes of interaction, which can be moved between using the top row of buttons in the panel. These modes are, in order, Tile-Paint (TileP), Tile-Fill (TileF), Trigger, Player, and Decal. The functionality of mouse and keyboard inputs is determined based on the selected mode, the default selected mode is Tile-Paint.

The editor modifiers and utilities

Under the top row in the panel, you will see the second row, which contains utilities and editor modifiers. Z+ will zoom the camera in. Z- will zoom the camera out. A+ and A- will change the argument value. T> and T< will change the current type, which is displayed in the colored cell in the top-right. Hide will toggle whether to show decals. Snap will toggle whether to align decals and triggers to the nearest 0.5 units. Single will change whether placed triggers will be single- or multi-trigger. (The role of the last few will be explained soon).

Saving and exiting

After you make a modification, you will see that the green bar at the bottom will turn red. This shows that there are unsaved changes. To save, press Save, and the bar will turn green, indicating the level has been written to the file. If you press Exit, the editor will terminate - be warned that doing this without saving first will lose changes.

Tile-Paint mode

This is the main mode for creating gameplay. In Tile-Paint mode, you can hover over a cell in the level and click to place a tile of the selected type (cycle through these using T> and T<). If cycling with T> and T< proves inconvenient, hover over a tile and press the quick select key (by default, "C"). The bounds of the map will be highlighted, and if you try to place tiles beyond the upper bounds of the map, it will grow to accommodate the new tiles. Upon saving, the map will be shrunk to the minimal allowable bounds.

Tile-Fill mode

This mode is used to fill large sections of a map. Tile-Fill mode is the same as Tile-Paint mode with two differences. Firstly, instead of clicking in the selected tile, you must drag over a region, and that entire region will be filled with the chosen tile type upon releasing LMB. Secondly, the map will not be grown to accommodate new tiles placed in Tile-Fill, and they will be constrained to the current bounds.

Trigger mode

Trigger mode is used in order to place triggers which control non-tile functionality. The triggers, just like tiles, have their own types, and the currently selected one is displayed in the cell at the top-right of the panel. Triggers can be multi- or single-use. If a trigger is single-use, it will be deleted immediately upon the execution of its function, which may depend upon its argument. Whether you are currently placing single- or multi-use triggers is displayed in the text which says "Sing." or "Mult." - toggle this using the Single button. The argument of a trigger will be shown in its top-left corner, and can be set using the A+ and A- buttons when placing a trigger, the current argument is displayed as a hexadecimal number in the bottom-left corner of the panel. Drag over a region to place a trigger there, similar to tile-paint mode, except that triggers are independent of the main map, so they can be placed anywhere.

In-game, the triggers have the following functions:

  • Yellow: display text - this trigger should not be used in custom levels.
  • Red: swap region - when the player is inside a red trigger, swap tile beat sound effects will play. This trigger should always be multi-use.
  • Purple: terminate text - this trigger should not be used in custom levels.
  • Green: enable capability - when the player hits a green trigger, one of their capabilities (determined by the argument) will be enabled. The argument values are as follows: 0 = jump, 1 = walljump, 2 = wallslide, 3 = powerjump, 4 = dash down, 5 = collide. All capabilities are enabled by default when entering a level.
  • Blue: disable capability - this trigger works the same as the green trigger, except that it will disable a capability rather than enable it.

Right click on a trigger to remove it.

Player mode

This mode is used to determine where the player will spawn when a level is loaded. Hover over a tile and click it in order to place the player spawn there.

Decal mode

The Decal mode is used to place textures (or decals) around the map. Like triggers, they are not part of the map data itself, and can be placed anywhere. The T> and T< buttons will change the current decal type which will be placed in the highlighted region upon a left click. The A+ and A- buttons will change the layer on which to place the decal (which is displayed in the top-left corner of the decal, similar to triggers). The only meaningful layers are 0 (below the player) and 1 (above the player), other layers are not rendered. Use the Hide button to toggle between showing and hiding decals, as they may be intrusive when editing gameplay. Right click on a decal to remove it.

Playing your map

After making your map and saving, press the Exit button to be taken back to the custom level menu. Enter the filename of your level (you do not need to do this if you just exited the editor, as the name will still be in the textbox). Press "Play custom level" to launch the game in your level. Once you exit the level, you will be taken back to the custom level menu.

Sharing your map

After you are satisfied with your map, you can share it with your friends. Simply send them the file for the map you have created. They will need to enter its filename in the custom level menu, and then they will be able to play it just as you are able to.

Get Cubic Jumping

Leave a comment

Log in with itch.io to leave a comment.