Scene Setup
Getting started
Each ULTRAKILL level must have certain objects and scripts in order to work properly. For example: StatsManager
, Event System
and etc.
Let's get started by first creating a new scene in Spite and from there we will explain what each one of them does.
Start by pressing the Spite button in the toolbar and hit New Level
. Give names to the scene and doomah file, and preferably, check the Auto create level folder in assets
for organization.
StatsManager

This is StatsManager
. It defines ranks and secrets for the level. The ranks are defined in an ascending order, from the top to bottom(D at the top and S at the bottom). In the Secret Objects
tab, secret orbs(bonuses) are defined. This works only with objects defined as Bonus. Inside of the gameobject you can find MusicManager, you will learn more about it by proceeding further into the tutorial.
The level number must be set to -1 to open the tab menu to see rankings, time, etc.
StockMapInfo

This is StockMapInfo
, You can think of it as an extension of StatsManager
, The key difference is it's only used for visual information about the level such as the level layer and level name that appears when coming out of the hellevator, It also shows the level name from the tab menu in the Large Text
field, Another thing is the Large Image
field which is used by the game's discord RPC system.
Essentially, Using an image hosting website like https://imgbb.com/ , you can upload a 4:3 image of the level and copy its link, and paste it in that field to make it so the level's image shows on Discord when you play it.
FirstRoom

This is by far the most important gameobject in the scene, as it contains the player. You may be inclined to use the direct prefab of the first room but it requires some tweaks before it can be used due to containing missing scripts.
FinalRoom

The difference between final room and first room is the fact that final room allows you to use its direct prefab, which means you can easily add custom stuff there.
The final room does not open by itself, in order to open it, you need to activate FinalDoorOpener
gameobject.
Do not be alarmed that the final room has no pit, upon the activation of the gameobject FinalDoorOpener
the door opens and the pit is activated.
EventSystem

This is a crucial part of ULTRAKILL and is not intended to be changed. Please do not modify or delete this component, otherwise your level will no longer work.