SlideShare a Scribd company logo
‭
0‬
‭
Geometry Dash Editor Guide‬
‭
The Geometry Dash editor allows you to create custom levels any way you‬
‭
want. A level can be simple or detailed, short or long, easy or difficult, and so‬
‭
on. The opportunities are endless. However, to be able to make exactly what‬
‭
you want, there are a wide variety of features that are helpful or even‬
‭
necessary. Learning everything yourself is a near impossible task given the‬
‭
size of the editor as of update 2.2. That is exactly what this guide's purpose is:‬
‭
To help you out, whether you are new to the editor or already a veteran. There‬
‭
should be something helpful here either way. Use the list below if there is‬
‭
anything specific you are looking for.‬
‭
Other Languages‬
‭
●‬ ‭
Para acceder a una traducción española, mire‬‭
aquí‬
‭
.‬
‭
●‬ ‭
Перейдите‬‭
сюда‬‭
для русского перевода этого документа.‬
‭
Table of Contents‬
‭
1. Basics‬ ‭
6‬
‭
Getting Started‬ ‭
6‬
‭
Level Settings‬ ‭
7‬
‭
Placing Objects‬ ‭
11‬
‭
Editing Objects‬ ‭
14‬
‭
Scaling & Warping‬ ‭
16‬
‭
Select Color‬ ‭
17‬
‭
Deleting Objects‬ ‭
20‬
‭
Other Buttons‬ ‭
22‬
‭
2. Picking Song‬ ‭
26‬
‭
Starting Song‬ ‭
26‬
‭
Music Library‬ ‭
27‬
‭
Newgrounds‬ ‭
28‬
‭
1‬
‭
Song Settings‬ ‭
30‬
‭
Guideline Creator‬ ‭
30‬
‭
Later Customization‬ ‭
31‬
‭
3. Gameplay Objects‬ ‭
32‬
‭
Description‬ ‭
32‬
‭
Pads‬ ‭
32‬
‭
Orbs‬ ‭
33‬
‭
Portals‬ ‭
34‬
‭
Speed Changers‬ ‭
36‬
‭
Letter Objects‬ ‭
36‬
‭
Force Objects‬ ‭
39‬
‭
4. Animated Objects‬ ‭
40‬
‭
Description‬ ‭
40‬
‭
Monsters‬ ‭
40‬
‭
Edit Special‬ ‭
41‬
‭
Particle Editor‬ ‭
43‬
‭
5. Items‬ ‭
51‬
‭
Description‬ ‭
51‬
‭
User Coins‬ ‭
51‬
‭
Custom Collectables‬ ‭
52‬
‭
6. Edit Group‬ ‭
54‬
‭
Functionality‬ ‭
54‬
‭
Using Groups‬ ‭
56‬
‭
Extra Options‬ ‭
57‬
‭
Special IDs‬ ‭
60‬
‭
7. Triggers‬ ‭
61‬
‭
Description‬ ‭
61‬
‭
Start Pos‬ ‭
62‬
‭
Color‬ ‭
62‬
‭
Move‬ ‭
63‬
‭
Stop‬ ‭
66‬
‭
Pulse‬ ‭
67‬
‭
Alpha‬ ‭
68‬
‭
Toggle‬ ‭
68‬
‭
Spawn‬ ‭
68‬
‭
Rotate‬ ‭
71‬
‭
2‬
‭
Scale‬ ‭
73‬
‭
Follow‬ ‭
74‬
‭
Shake‬ ‭
75‬
‭
Animate‬ ‭
75‬
‭
Keyframe Animation‬ ‭
76‬
‭
Follow Player Y‬ ‭
76‬
‭
Advanced Follow‬ ‭
77‬
‭
Edit Advanced Follow‬ ‭
84‬
‭
Re-Target Advanced Follow‬ ‭
85‬
‭
Keyframe‬ ‭
85‬
‭
Area Move/Rotate/Scale/Fade/Tint‬ ‭
90‬
‭
Edit Area Move/Rotate/Scale/Fade/Tint‬ ‭
99‬
‭
Area Stop‬ ‭
99‬
‭
Change BG/G/MG‬ ‭
99‬
‭
Touch‬ ‭
99‬
‭
Count‬ ‭
100‬
‭
Instant Count‬ ‭
101‬
‭
Pickup‬ ‭
101‬
‭
Time‬ ‭
102‬
‭
Time Event‬ ‭
103‬
‭
Time Control‬ ‭
103‬
‭
Item Edit‬ ‭
104‬
‭
Item Compare‬ ‭
108‬
‭
Persistent Item‬ ‭
111‬
‭
Random‬ ‭
111‬
‭
Advanced Random‬ ‭
111‬
‭
Sequence‬ ‭
112‬
‭
Spawn Particles‬ ‭
113‬
‭
Reset‬ ‭
114‬
‭
Zoom‬ ‭
115‬
‭
Static Camera‬ ‭
115‬
‭
Camera Offset‬ ‭
116‬
‭
Gameplay Offset‬ ‭
116‬
‭
Camera Rotation‬ ‭
116‬
‭
Camera Edge‬ ‭
117‬
‭
Camera Guide‬ ‭
117‬
‭
3‬
‭
Reverse‬ ‭
118‬
‭
Rotate Gameplay‬ ‭
118‬
‭
Song‬ ‭
119‬
‭
Edit Song‬ ‭
119‬
‭
SFX‬ ‭
124‬
‭
Edit SFX‬ ‭
125‬
‭
Event‬ ‭
126‬
‭
TimeWarp‬ ‭
127‬
‭
Camera Mode‬ ‭
127‬
‭
Setup MG‬ ‭
127‬
‭
BG/MG Speed‬ ‭
128‬
‭
Counter Label‬ ‭
128‬
‭
UI Settings‬ ‭
129‬
‭
Visibility Link‬ ‭
130‬
‭
Collision‬ ‭
130‬
‭
Instant Collision‬ ‭
131‬
‭
Collision State‬ ‭
131‬
‭
Collision Block‬ ‭
131‬
‭
Toggle Block‬ ‭
132‬
‭
On Death‬ ‭
132‬
‭
Disable/Enable Trail‬ ‭
133‬
‭
Show/Hide‬ ‭
133‬
‭
BG Effect On/Off‬ ‭
133‬
‭
End‬ ‭
134‬
‭
Player Control‬ ‭
134‬
‭
Options‬ ‭
135‬
‭
BPM Guide‬ ‭
135‬
‭
Gradient‬ ‭
136‬
‭
Gravity‬ ‭
137‬
‭
Teleport‬ ‭
137‬
‭
Shader‬ ‭
139‬
‭
ShockWave‬ ‭
139‬
‭
Shock Line‬ ‭
141‬
‭
Glitch‬ ‭
142‬
‭
Chromatic‬ ‭
143‬
‭
Chromatic Glitch‬ ‭
143‬
‭
4‬
‭
Pixelate‬ ‭
144‬
‭
Lens Circle‬ ‭
145‬
‭
Radial Blur‬ ‭
145‬
‭
Motion Blur‬ ‭
147‬
‭
Bulge‬ ‭
148‬
‭
Pinch‬ ‭
148‬
‭
Gray Scale‬ ‭
149‬
‭
Sepia‬ ‭
149‬
‭
Invert Color‬ ‭
150‬
‭
Hue‬ ‭
151‬
‭
Edit Color‬ ‭
152‬
‭
Split Screen‬ ‭
152‬
‭
Enter Effects‬ ‭
152‬
‭
Move/Rotate/Scale/Fade/Tint Enter‬ ‭
156‬
‭
Stop Enter‬ ‭
158‬
‭
8. Custom Objects‬ ‭
159‬
‭
9. Channel System‬ ‭
161‬
‭
10. Keyframe System‬ ‭
165‬
‭
11. Auto-Build System‬ ‭
175‬
‭
12. Pause Menu‬ ‭
189‬
‭
Options‬ ‭
189‬
‭
Buttons‬ ‭
191‬
‭
13. Sharing Your Level‬ ‭
193‬
‭
Verifying‬ ‭
193‬
‭
Level Menu‬ ‭
193‬
‭
Uploading‬ ‭
194‬
‭
Updating Levels‬ ‭
197‬
‭
Updating Descriptions‬ ‭
198‬
‭
Rating‬ ‭
199‬
‭
14. Afterword‬ ‭
201‬
‭
Suggestions‬ ‭
201‬
‭
Special Thanks‬ ‭
201‬
‭
5‬
‭
1. Basics‬
‭
Getting Started‬
‭
First, you have to find your way to the editor. On the main menu, click the‬
‭
right button, and then click "Create" in the top left. This brings you to the‬
‭
screen in figure 1.1, which is your list of custom levels. Note that levels here are‬
‭
not public, but rather custom levels saved locally on your account. Public‬
‭
levels are accessed through the bottom left button. More on that later. To‬
‭
start a new level, do as the text says and click "New" in the bottom right.‬
‭
6‬
‭
At the top, you can set a level name and an optional description. The button‬
‭
in the middle lets you play the level, while the right button is where you share‬
‭
the level with others through the servers. To start editing, click the left button.‬
‭
This brings you into the editor itself.‬
‭
Level Settings‬
‭
A good place to start is the main level settings, which are accessed by clicking‬
‭
the gear button in the top right corner of the editor. This opens the window‬
‭
seen below.‬
‭
7‬
‭
These settings decide the level's starting state. This means that they define‬
‭
what a player sees at the start of their attempt. Many of these settings, such‬
‭
as Speed, Game Mode, and colors, can be changed inside the level itself too.‬
‭
This allows you to change them further into the level. Going through each‬
‭
option in figure 1.4 in turn, we have:‬
‭
●‬ ‭
Game Type:‬‭
This is perhaps the most important option‬‭
to decide on, as it‬
‭
changes how your level plays completely. It cannot be changed‬
‭
throughout the level.‬
‭
○‬ ‭
Classic is the original way to play Geometry Dash levels, in which the‬
‭
camera automatically scrolls to the side. To beat the level, the player has‬
‭
to avoid obstacles to make it all the way to the end of the level. This is‬
‭
done by clicking to change their vertical position in different ways‬
‭
depending on the Game Mode. For example, in the most simple mode,‬
‭
Cube, you jump by clicking, while something like Wave moves your icon‬
‭
diagonally from holding.‬
‭
○‬ ‭
Platformer is the newest Game Type, and as the name implies, it lets‬
‭
the player move around freely. You can click to move left or right as you‬
‭
please, and another input allows jumping. How exactly the inputs work‬
‭
depend on the device you are playing on.‬
‭
8‬
‭
●‬ ‭
Speed:‬‭
This sets the starting speed of your level. It can be changed at any‬
‭
point in the level. The blue option is the default speed, and the others are‬
‭
modifiers of this. Each one is fittingly indicated by a reversed arrow or‬
‭
more arrows depending on how much they modify the speed. The‬
‭
reversed orange option is the slowest option, which is roughly 25% slower‬
‭
than the normal speed. For double, triple, and quadruple arrows, the‬
‭
modifier is roughly 25%, 50%, and 75% faster than the normal option.‬
‭
●‬ ‭
Mode:‬‭
This alters the way the icon moves when the‬‭
player clicks. It is often‬
‭
referred to as Game Mode, and should not be confused with Game Type.‬
‭
This can also be changed at any point in the level. The different ones are‬
‭
shown in figure 1.6 below. From left to right, we have:‬
‭
○‬ ‭
Cube is the default Game Mode, which has the player click to jump as‬
‭
previously mentioned. Interaction with objects such as Pads and Orbs‬
‭
make it a bit more complex, but those are handled later.‬
‭
○‬ ‭
Ship lets the player fly, and the exact trajectory is dependent on clicks.‬
‭
Holding down takes you up very fast, while letting go makes you fly‬
‭
downwards. Clicking fast in a consistent pattern makes it possible to fly‬
‭
in a straight horizontal line.‬
‭
○‬ ‭
Ball makes the player's icon circular, and movement makes it roll.‬
‭
Clicking switches the gameplay gravity, which means that the icon goes‬
‭
from rolling on the ground to rolling on the roof (or vice versa).‬
‭
9‬
‭
○‬ ‭
UFO also makes the player fly, but instead of precise control like Ship,‬
‭
clicking makes you boost a certain distance upwards. Holding down is‬
‭
not possible.‬
‭
○‬ ‭
Wave has the player move diagonally by holding or letting go. If you‬
‭
hold down, you move diagonally upwards, while letting go makes you‬
‭
move diagonally downwards. This is disabled in Platformer.‬
‭
○‬ ‭
Robot is similar to Cube, but instead of a set jump height, the amount‬
‭
you hold down decides the vertical movement. Clicking very fast leads‬
‭
to a small jump, while holding down (to a certain limit) takes you‬
‭
higher.‬
‭
○‬ ‭
Spider is similar to Ball, but clicking makes gravity switch instantly‬
‭
rather than a slower rolling motion.‬
‭
○‬ ‭
Swing is also based on flying, but each click changes the player's gravity.‬
‭
This is disabled in Platformer.‬
‭
●‬ ‭
Options:‬‭
This lets you set various other options.‬‭
Most of them, like Flip‬
‭
Gravity and Reverse Gameplay, speak for themselves. Mini makes the‬
‭
player's icon smaller, altering the effects of clicks to some degree. Dual‬
‭
duplicates the icon into two, making it so that the player has to control two‬
‭
icons. Every click affects both icons. Enabling 2-Player changes this to‬
‭
require clicking on each side of the screen for each icon. Spawn Group lets‬
‭
you set a specific target object, given by its Group ID, as the spawn‬
‭
position. Applying Group IDs are covered more later, but essentially an‬
‭
object may have a Group ID for Triggers to interact with it. Clicking the top‬
‭
right gear button opens Legacy Options, which fix various older bugs.‬
‭
These should not be changed in new levels.‬
‭
●‬ ‭
BG, G, and MG:‬‭
This sets the type of Background, Ground,‬‭
and‬
‭
Middleground art to use from the start. The Ground is on the front layer,‬
‭
making it the only one the player interacts with directly at the bottom of‬
‭
the level. BG and MG are seen behind the player. The difference between‬
‭
10‬
‭
these two is their layering, with Background being furthest back. All of‬
‭
these three can be‬‭
changed‬‭
at any point in the level.‬
‭
●‬ ‭
Font:‬‭
There is normally an attempt counter found at‬‭
the start of levels, and‬
‭
this option changes the font used for this. It also changes any other text‬
‭
objects found in the level. You cannot change this further into the level.‬
‭
●‬ ‭
Select Color:‬‭
At the top of the window, you can set‬‭
colors for various parts‬
‭
of the level. BG, G, and MG set the colors for the art described earlier. (G2‬
‭
and MG2 are secondary colors used for details.) Line is an outline for the‬
‭
Ground. Clicking "More" lets you change the starting settings for the‬
‭
custom Color Channels. These are used for other objects. Note that any‬
‭
colors can be changed at any time in a level.‬
‭
●‬ ‭
Select Song:‬‭
This is where you set what song to use.‬‭
The various options‬
‭
and menus are handled in the next chapter.‬
‭
Placing Objects‬
‭
Back to the main editor screen, the main part you will interact with is the‬
‭
bottom section, seen in figure 1.7. To begin creating, have the "Build" button‬
‭
on the left selected (indicated by blue color). This is where all the different‬
‭
objects in the game are located. We will write "objects" in lower case to refer‬
‭
to objects in general, so any goes. Clicking on an object selects it for use,‬
‭
which lets you place it in your level. This is done by clicking at the desired‬
‭
position on the grid. While an object is selected, you can enable "Swipe" on‬
‭
the right side to place objects over the area you swipe (hold down and drag).‬
‭
11‬
‭
There are various types of objects, which are grouped into specific tabs based‬
‭
on their properties. Each object is only found within one tab. Inside a tab, you‬
‭
can also click through several pages using the arrow buttons. Going through‬
‭
each tab in order, we have:‬
‭
●‬ ‭
Blocks:‬‭
This tab ranges from simple squares to more‬‭
detailed blocks.‬
‭
Some have outlines, while others do not. This is visible by the white lines,‬
‭
indicating that they are solid, which means they interact with the player‬
‭
upon collision. Putting these in front of the player's movement means that‬
‭
they have to jump to pass them. Colliding with a line horizontally leads to‬
‭
death. However, landing on top of them is fine.‬
‭
●‬ ‭
Outlines:‬‭
Various basic outlines are found here. As‬‭
mentioned for the‬
‭
previous tab, these interact with the player when touched.‬
‭
●‬ ‭
Slopes:‬‭
These are similar to blocks, but instead of‬‭
being square they are‬
‭
sloped. There are two types of slopes in the game. One is basically a block‬
‭
cut in half diagonally, making a 45 degree angle, while the other makes a‬
‭
slope over 2 blocks. Interaction with a sloped outline is safe in most cases.‬
‭
●‬ ‭
Spikes:‬‭
Spikes lead to death on any collision no matter‬‭
what.‬
‭
●‬ ‭
3D:‬‭
These can be combined with blocks to make them‬‭
look 3D.‬
‭
12‬
‭
●‬ ‭
Gameplay Objects:‬‭
Various objects that affect gameplay are found here.‬
‭
For example, this is where you find objects that change the Speed and‬
‭
Game Mode as mentioned earlier. These are covered more in-depth in‬
‭
their own chapter later. Click the title for a direct link to the chapter.‬
‭
●‬ ‭
Animated Objects:‬‭
While most objects are still by‬‭
default, the ones found‬
‭
in this tab have certain animations built in. These are also covered more‬
‭
in-depth in their own chapter later.‬
‭
●‬ ‭
Pixel Art:‬‭
Lots of different art made up of small‬‭
pixels are found here. None‬
‭
of them interact with the player by default, but you can combine them‬
‭
with lines or Spikes for the effect you want.‬
‭
●‬ ‭
Items:‬‭
These objects are used as Collectables that‬‭
can be picked up during‬
‭
gameplay.‬
‭
●‬ ‭
Symbols:‬‭
Various Symbols, even some art from the game's‬‭
menus, are‬
‭
found here. None of these are solid.‬
‭
●‬ ‭
Decorations:‬‭
Different types of objects that do not‬‭
interact with the player.‬
‭
As the name implies, they are meant to be used as decorations to fill space.‬
‭
●‬ ‭
Pulsing Objects:‬‭
These are called Pulsing Objects‬‭
because they‬
‭
automatically pulse to the beat of the song. Pulsing in this case means‬
‭
scaling to a bigger size for more intense audio.‬
‭
●‬ ‭
Rotating Objects:‬‭
Many circular objects that automatically‬‭
rotate, such as‬
‭
saws but also decorations. Saws are spiky and lead to death upon collision.‬
‭
The speed and direction of all these objects can be customized.‬
‭
13‬
‭
●‬ ‭
Triggers:‬‭
Triggers are more complex objects that let you do endless‬
‭
customization, whether it is something as simple as moving an object to‬
‭
something complex like making a bossfight. None of these objects show in‬
‭
the level itself when played, but start their set operation when passed on‬
‭
the X axis during gameplay. You can also make them Trigger when‬
‭
touched by the player. Every Trigger is covered in-depth in its own chapter.‬
‭
●‬ ‭
Custom Objects:‬‭
This tab is empty when you are new‬‭
to the editor. It lets‬
‭
you save combinations of objects to be reused at any time, even in another‬
‭
level. Each one can have maximum 1000 objects, and you can make 250‬
‭
custom objects in total. See the dedicated chapter for more details.‬
‭
Editing Objects‬
‭
After successfully placing objects in the editor, you may want to edit them in‬
‭
some way. Figure 1.10 shows an example. Assume you want to move these‬
‭
three Spikes (often referred to as a "triple Spike") one block to the right. To do‬
‭
this, you have to click the "Edit" button in the bottom left. Afterwards, you can‬
‭
click an object to select it for editing. Normally, you can only select one object‬
‭
at a time. To select all three at once, enable "Swipe" in the bottom right as‬
‭
seen in the example. This lets you swipe over the objects you want to select.‬
‭
14‬
‭
Now that the objects are selected, indicated by the green outline, we can‬
‭
move onto actually editing them. The buttons in the lower section, seen in‬
‭
figure 1.11, are all used for this. Most of these are self-explanatory, so testing‬
‭
them out yourself is recommended. The various arrows move the selected‬
‭
object(s) in their given direction. How much they move is indicated by the‬
‭
number of arrows. Other buttons, like the circular arrows, let you rotate the‬
‭
object(s) a given amount. The one with "Free" inside it lets you rotate as much‬
‭
as you would like.‬
‭
Having found the correct button, double arrow to the right, we get the result‬
‭
in figure 1.12. Another way to do this is by selecting "Free Move" and "Snap" in‬
‭
the bottom right. The former lets you move the selected objects wherever you‬
‭
want, even outside of exact grid positions, while "Snap" puts the objects in‬
‭
exact grid positions. Together, this combination gives us the result we‬
‭
wanted, but you can also use "Free Move" on its own to move off-grid.‬
‭
15‬
‭
If you are satisfied with your edits, click the "Deselect" button on the far right.‬
‭
You can also deselect the objects by placing new objects. After this, you can‬
‭
go ahead and place or edit other objects. Additionally, you may see another‬
‭
"Rotate" button in the bottom right that has not been covered yet. This has‬
‭
the same functionality as the previously mentioned "Free" rotation button but‬
‭
is easier to access.‬
‭
Scaling & Warping‬
‭
The last three buttons in the "Edit" tab, as the names imply, let you scale or‬
‭
warp the object. This means to change its form and/or size in some way. In‬
‭
essence, each of these buttons can do the same thing, but with even more‬
‭
control sequentially. The first "Scale" only lets you scale the objects in place,‬
‭
which means they keep their original aspect ratio. With the second one, you‬
‭
can scale for the X and Y axis as you wish, allowing for even more control.‬
‭
With "Warp", you get the most control. Selecting it opens the interface seen in‬
‭
figure 1.13, which features various buttons. Each of the square buttons let you‬
‭
scale as with the previous two buttons. You use them by holding one down‬
‭
and dragging to your desired scale. If you want the scaling to be in place, you‬
‭
can toggle the lock in the top right. As for the circular buttons, the middle one‬
‭
16‬
‭
is used as an anchor point for rotation, while the outer one performs the‬
‭
actual rotation. Finally, we have the two rectangular buttons outside the‬
‭
square ones. These let you skew the objects in a given direction. As an‬
‭
example, dragging the top one to the left results in the example below. The‬
‭
anchor point also affects how much you can skew.‬
‭
Select Color‬
‭
After having warped the Spikes successfully, you may want to change their‬
‭
color a bit. Assume you want to make the outline of the left Spike red. This is‬
‭
done by selecting the object and clicking "Edit Object" on the far right, which‬
‭
opens the menu seen below.‬
‭
17‬
‭
In here, you have various options for coloring the object. Selecting "P-Col 1" or‬
‭
"P-Col 2" makes the color based on the player's colors. "Light BG" makes it a‬
‭
lighter shade of the Background Color, while "Default" simply sets it to its‬
‭
default. For Spikes, this is white, but it varies from object to object. Below this,‬
‭
you can select custom Color Channels that can be specified freely. These are‬
‭
numbered from 1 to 999. "Next Free" finds the next unused Color Channel,‬
‭
which is 1 in our case. To begin customizing it, click on top of the colored‬
‭
square in the bottom right. This opens the following menu:‬
‭
Here, you have various options to set the color of the object. Selecting the‬
‭
color by using the outer wheel and then its shade by using the inner circle is‬
‭
the easiest way. You can also specify a color exactly by its "RGB" or "HEX"‬
‭
values in the bottom right, while "Opacity" changes how transparent the color‬
‭
is. "Copy" and "Paste" in the top right are used if you want to copy and paste‬
‭
colors across channels, while "Default" sets it back to the standard white.‬
‭
18‬
‭
On the left, "Copy Color" lets you input another Color Channel to copy from‬
‭
but with potential changes to HSV. HSV is also seen in figure 1.15 as a "HSV"‬
‭
button. This allows you to change hue, saturation, and brightness of the color‬
‭
for the selected object (and not the channel as a whole). By default, the color‬
‭
is solid, but enabling Blending makes it blend with the visuals behind it.‬
‭
"Player Color 1" and "Player Color 2" are, as explained earlier, based on the‬
‭
player's choice of colors.‬
‭
With the object's color set to red, it is successfully colored as seen above. The‬
‭
defined Color Channel can also be given to other objects you wish to have the‬
‭
same color. It is worth noting that the Color Channel's settings can be‬
‭
changed throughout the level using a‬‭
Color Trigger‬
‭
.‬‭
Changing it inside the‬
‭
menu in figure 1.15 only sets the starting values for the channel. Additionally,‬
‭
note that some objects have two different parts that can be colored. This is‬
‭
indicated by a "Detail" button next to "Base" in the top left of the color menu,‬
‭
allowing you to switch between the settings of each. In our example, the‬
‭
Spike only has one customizable color, which is the outline, so only "Base" is‬
‭
shown. This is called the Base Color, while some objects also have Detail Color.‬
‭
19‬
‭
Deleting Objects‬
‭
If you place the wrong object, you may want to delete it from the level‬
‭
entirely. This is done in the bottom tab called "Delete", which is shown in‬
‭
figure 1.18. Just having this tab opened allows you to click any object to delete‬
‭
it. As with building and editing, you can select "Swipe" on the right to drag‬
‭
over multiple objects you want to delete. However, there are numerous other‬
‭
options inside the tab as seen below.‬
‭
The four buttons on the right are filters for deleting. These are useful if you‬
‭
have many different types of objects overlapping, and you only wish to delete‬
‭
certain types of them. If you have "None" selected, which is the default, any‬
‭
objects can be deleted. Switching to "Static" means that only solid blocks can‬
‭
be deleted. As for "Details", this covers a lot of different types of objects, such‬
‭
as Portals, decorations, Triggers, and more.‬
‭
20‬
‭
If you enter this tab while having an object selected (from the "Edit" tab), you‬
‭
get some more options. Switching to "Custom" on the right makes it so that‬
‭
only the selected object can be deleted. After enabling this, you can head‬
‭
back to "Edit" and swipe to select an area of objects you want to delete from.‬
‭
Afterwards, head back to "Delete" and click the top left deletion button‬
‭
(indicated by a trash can), either within the tab or in the top left of the editor.‬
‭
Both of these do the same action, but the latter is easier to access at any time.‬
‭
There is also the "All" button on the left which deletes every instance of this‬
‭
object in your level. Next to this is a button to delete all‬‭
Start Pos Triggers‬
‭
.‬
‭
Finally, we have the four middle buttons marked in the figure above. Opening‬
‭
each one gives a good idea of what they do, but they are covered shortly here.‬
‭
The top left one lets you find a specific Group ID. Looking up Group ID 23, for‬
‭
example, will take you to an object using this if it still exists and is not deleted.‬
‭
If there are multiple objects using this Group ID, you are taken to the object‬
‭
that received it first. The two buttons to the right are Group ID and Color‬
‭
Channel filters respectively. As an example, writing "1" in either means that‬
‭
you can only delete objects with Group ID or Color Channel 1 while in the‬
‭
"Delete" tab. This is useful if you wish to delete only objects using that specific‬
‭
color among many others. The bottom left trash can button is a quick way of‬
‭
resetting all of these filters without having to go into their window. You can‬
‭
also use these filters to select objects by enabling "Select Filter" in‬‭
Options‬
‭
.‬
‭
21‬
‭
Other Buttons‬
‭
There are still many buttons in the user interface that we have not touched on‬
‭
yet, which are summarized here. Some of them are covered more in-depth‬
‭
later on when appropriate. We will be using figure 1.21 to cover specific‬
‭
buttons, referencing them by colored boxes that have been drawn on top (not‬
‭
from the game).‬
‭
In the top left, marked in purple, are buttons to undo and redo the recent‬
‭
action. As an example, you can use this to recovered a wrongly deleted object.‬
‭
However, note that not all actions can be undone or redone, such as applying‬
‭
Color Channels or Group IDs. Below these two buttons, we have playtesting‬
‭
buttons marked in yellow. The top one playtests the music of the level,‬
‭
showing a line moving to help sync visuals to the song. The lower one lets you‬
‭
playtest your level inside the editor, starting from the start or a set start‬
‭
position.‬
‭
22‬
‭
In the white box are buttons for zooming in and out inside the editor, letting‬
‭
you see details more clearly or whole areas at once. Right next to these are‬
‭
some optional buttons that are enabled from‬‭
Options‬‭
referred to as Link‬
‭
Controls. Clicking the top one links several selected objects together, making‬
‭
them act as a single object (for editing or deleting). The bottom one, on the‬
‭
other hand, unlinks linked objects.‬
‭
At the top, marked in black, is a slider that simply lets you slide through your‬
‭
level horizontally inside the editor. You can also move around by simply‬
‭
swiping in a given direction. To the right of this slider, in the top right, we have‬
‭
the start level settings covered earlier, as well as the‬‭
Pause Menu‬‭
shown‬
‭
below. This opens up many other options covered later. However, for now, we‬
‭
note the middle buttons since these are most important as a beginner.‬
‭
"Resume" goes back into the editor, while "Save and Play" saves the level and‬
‭
starts an attempt on it. This lets you see exactly how the level will play for‬
‭
other users once uploaded, unlike playtesting in the editor. "Save and Exit",‬
‭
"Save", and "Exit" are self-explanatory.‬
‭
23‬
‭
Back to figure 1.21, we have the numerous buttons inside the red and blue‬
‭
boxes on the right. These are shown together in an edited image below for‬
‭
easier access. Many of these are self-explanatory, while others are not.‬
‭
"Copy", "Paste" and "Copy+Paste" all do similar actions, which is making a new‬
‭
copy of the selected object(s). The button that has both in one will copy the‬
‭
selected object(s) and place the copy on top of the old one. If you wish to copy‬
‭
something from one spot in the editor to somewhere far away, the separate‬
‭
buttons are useful. Simply use "Copy" on what you want to copy, move to‬
‭
where you want to paste, and click "Paste". This also works across levels if you‬
‭
want to copy something into another level you are working on.‬
‭
"Copy Values" copies Group IDs and Color Channels, allowing you to paste‬
‭
them onto other objects. "Paste State" does both, while "Paste Color" only‬
‭
pastes the color information. "Edit Special", "Edit Group" and "Edit Object" are‬
‭
all for editing objects, but they work in different ways.‬‭
Edit Special‬‭
and‬‭
Edit‬
‭
Group‬‭
have a lot of functionality, and are covered‬‭
in later chapters found by‬
‭
the links, while‬‭
Edit Object‬‭
was covered earlier for‬‭
a Spike. For many objects,‬
‭
this simply lets you change the object's color as shown there. However, for‬
‭
some objects, such as‬‭
Triggers‬
‭
, it lets you change‬‭
their settings.‬
‭
24‬
‭
The button with three colored circles give you quick access to editing a Color‬
‭
Channel, opening a menu that can be used while editing objects. Clicking it‬
‭
another time switches to a HSV menu. As mentioned earlier, "Deselect" is‬
‭
simply used to deselect selected objects.‬
‭
Finally, we have "Go To Layer", which is closely tied to the arrows and number‬
‭
below it. The pink arrows allow you to switch between different layers to build‬
‭
on, making it easier to organize more complex constructions. You can only‬
‭
access objects on a specific layer for editing or deletion if you are on it.‬
‭
However, you can also toggle editing or deleting a layer by clicking on top of‬
‭
the number, which locks the layer's objects from being changed. Click it‬
‭
again to unlock it. As for the blue arrow on the left, this simply returns you to‬
‭
the "All" layer, which shows every layer together. While in here, you can select‬
‭
an object and click "Go To Layer" to go its specific layer quickly.‬
‭
25‬
‭
2. Picking Song‬
‭
Starting Song‬
‭
The majority of the community's favorite Geometry Dash levels are largely‬
‭
due to their great music synchronization, so picking a song is obviously‬
‭
important when creating. To pick one, we head back to the level settings:‬
‭
The bottom of this image is where the starting song of a level is set. By‬
‭
default, it shows "Normal" songs, which are the official main level songs‬
‭
("Stereo Madness", "Back On Track", and so on). If you want to make a level‬
‭
with one of these songs, use the arrows to go through and stop on the one‬
‭
you want.‬
‭
Selecting "Custom" instead, we have hundreds of thousands of songs to pick‬
‭
from. Click "Select Custom Song" to open the menu seen in figure 2.2 below.‬
‭
This has various buttons that serve different purposes. For now, we focus on‬
‭
the two circular buttons in the middle, one called "Music Library" and the‬
‭
other being the logo of‬‭
Newgrounds‬
‭
. This is a website‬‭
for various user-created‬
‭
content, such as music.‬
‭
26‬
‭
Music Library‬
‭
The Music Library is a new addition in update 2.2, which has many songs‬
‭
handpicked by RobTop for use by the community in levels. Once clicked, the‬
‭
interface below is seen. By default, every song is shown in alphabetical order‬
‭
by their title, which is a lot to scroll through given the song count. (As of‬
‭
writing, it is 6391, seen at the bottom of the menu.) To sort through the library,‬
‭
use the buttons on the sides. On the right side, the first button lets you filter‬
‭
by specific genres, while the second lets you filter by specific artists. As for the‬
‭
left side, there is a search button that lets you search for title keywords.‬
‭
27‬
‭
The figure shows both downloaded and non-downloaded songs. You have to‬
‭
download them to be able to listen to or use them. Once a song is‬
‭
downloaded, click the playtest button to listen to it. Once you have found a‬
‭
song you wish to use from the start of your level, simply download it and click‬
‭
the pink "Use" button. Exiting the Music Library, the selection is now filled in:‬
‭
Newgrounds‬
‭
Before 2.2, the main way to select a custom song was through Newgrounds.‬
‭
Clicking its button gives more details on how it works, but you basically have‬
‭
to search a song by its specific ID. The ID is found at the end of its link on the‬
‭
website. For example, imagine that I am a fan of Creo and want to use his‬
‭
song‬‭
"Dimension"‬
‭
. Click the link to open the following‬‭
page:‬
‭
28‬
‭
Here, you can listen to the song and easily skip around to hear different parts‬
‭
of the song. Browse the "Audio" tab to find other songs to use. Once you have‬
‭
found a song you want to use, you have to write its ID into Geometry Dash. As‬
‭
seen in the top left of the previous example, the link for "Dimension" by Creo‬
‭
ends with "709578". Typing this and clicking "Search" finds the song as seen‬
‭
below. Note that not all songs are available in Geometry Dash. This is‬
‭
something the artist can toggle themselves. The best way to find out is by‬
‭
testing its ID, which will give an error if it is not available for use in the game.‬
‭
Make sure you click the download button and then "Use" on this screen too.‬
‭
After downloading any songs, whether it is through the Music Library or‬
‭
Newgrounds, you can find them all through the "Saved" button in the bottom‬
‭
right. This is also the case for any songs you download while playing custom‬
‭
levels on the servers. In here, you can easily select a previously downloaded‬
‭
song for use too.‬
‭
29‬
‭
Song Settings‬
‭
When picking a song, you may not want to use it from the start but rather‬
‭
from a set point further into the song. Clicking the gear in the top right of the‬
‭
custom song selection menu lets you do this. "Start Offset" is given in‬
‭
seconds, allowing up to 3 decimals, with a playtest button to help you make it‬
‭
as exact as possible. The fade options makes the song fade in at the start or‬
‭
out at the end. Note that these can be used even with a main level song.‬
‭
Guideline Creator‬
‭
To help you sync the gameplay and visuals of your level to your song of choice,‬
‭
you can click "Create Lines" in the bottom left. This opens the menu seen‬
‭
below. The text itself gives good steps for how to do it, which is essentially‬
‭
clicking "Record" and then clicking to the song. You can, for example, time‬
‭
each click to the main beat. After you are done, click "Stop" and vertical lines‬
‭
will be shown in the editor to indicate when you clicked. As a result, you can‬
‭
time specific gameplay or visuals to these lines, for example to‬‭
Pulse Triggers‬
‭
(where a specific color, such as the Background, turns brighter for a split‬
‭
second). Note that you can toggle the guidelines in the‬‭
Pause Menu‬
‭
.‬
‭
30‬
‭
Later Customization‬
‭
The settings covered thus far are all for the starting song. However, the editor‬
‭
lets you change the song further into the level, as well as customizing the‬
‭
current song in many ways. You can, for example, change the speed or edit‬
‭
the volume based on proximity (to the player). Additionally, up to 5 songs can‬
‭
be overlapped at once, giving a lot of possibilities. These customizations are‬
‭
done using the‬‭
Song‬‭
and‬‭
Edit Song Triggers‬‭
at the‬‭
point you want them to‬
‭
take effect. Further audio customization is possible using‬‭
SFX Triggers‬
‭
handled in the same chapter.‬
‭
With the possible complexity of your level's audio using these Triggers, the‬
‭
Guideline Creator shown above is not as helpful anymore. To handle such‬
‭
cases, you can use BPM Finder within each song's details. Click "More" next to‬
‭
a song and then "BPM" to open its menu. The way it works is similar to the‬
‭
Guideline Creator, but it only finds the BPM for you and does not draw‬
‭
guidelines automatically. Afterwards, you can use a‬‭
BPM Guide Trigger‬
‭
together with the song's placement in the editor to create guidelines.‬
‭
31‬
‭
3. Gameplay Objects‬
‭
Description‬
‭
This chapter handles the sixth tab in the editor, referred to as Gameplay‬
‭
Objects because they affect gameplay or interact with the player in a different‬
‭
way than other objects. These range from giving small boosts through‬‭
Pads‬
‭
or‬‭
Orbs‬‭
to customizing the starting settings further‬‭
into the level, such as‬
‭
Game Mode and Speed. The first page is seen below. Many of these only work‬
‭
the first time they are interacted with, but you can enable "Multi Activate" in‬
‭
Edit Special‬‭
or‬‭
Edit Object‬‭
to allow multiple interactions.‬‭
This is useful if your‬
‭
gameplay switches direction, making the player pass by a Gameplay Object‬
‭
several times.‬
‭
Pads‬
‭
The first 5 objects in the tab are often referred to as Pads. When a player‬
‭
touches one of these, they are affected in some way depending on the type of‬
‭
Pad. The first three give various vertical boosts, while the last two switch‬
‭
gravity in different ways. For the blue one, the gravity switch is natural,‬
‭
keeping horizontal velocity, while the purple one teleports you vertically until‬
‭
an object is hit. This is similar to how Spider works. An illustration of the‬
‭
various Pads, with the player path in green, is shown below. To refer to a‬
‭
specific one, you simply use the color, so the leftmost one is called Yellow Pad.‬
‭
32‬
‭
Orbs‬
‭
Orbs work similarly to Pads, but instead of being activated upon being‬
‭
touched, they have to be clicked by the player. The ones with the same color‬
‭
as in figure 3.2 have a similar effect, as seen in figure 3.3. There is also a Green‬
‭
Orb, which works like a Yellow Orb but also switches your gravity. However,‬
‭
there are five extra Orbs that do not have an equivalent in Pads. These are‬
‭
seen in figure 3.4 with their common names in the figure text. The Black Orb‬
‭
simply pushes you downwards, while the Dash Orbs take you in a straight line‬
‭
in the arrow's direction as long as the player holds down. Once released, the‬
‭
Green Dash Orb keeps the original gravity, while the Pink Dash Orb switches‬
‭
it. The Teleport Orb lets you set a specific object to teleport to when clicked.‬
‭
Finally, the Trigger Orb lets you toggle a specific Group ID.‬
‭
33‬
‭
Portals‬
‭
Portals change the gameplay in various ways. Their effect is only activated if‬
‭
the player passes through them. First, we have the Game Mode Portals. These‬
‭
are seen in figure 3.5 below, ordered in the same way as in the start settings:‬
‭
Green is Cube, pink is Ship, red is Ball, orange is UFO, blue is Wave, gray is‬
‭
Robot, purple is Spider, and yellow is Swing. Use these at any point in your‬
‭
level to switch the player's Game Mode. Some Game Modes, such as Ship,‬
‭
have a floor and roof by default. Click "Edit Object" and enable "Free Mode" to‬
‭
remove these.‬
‭
34‬
‭
In figure 3.6, various other types of Portals are shown. First, on the left, are‬
‭
Gravity Portals. The blue one changes gravity to be normal (down), while the‬
‭
yellow changes it to be upside-down. As for the green one, it switches to the‬
‭
opposite gravity depending on your current gravity. If you are upside-down‬
‭
and go through it, gravity turns normal, and vice versa. This is useful if a part's‬
‭
gravity is dependent on the player's actions and you want to force a gravity‬
‭
switch. After all, if you are in normal gravity and pass through a Blue Gravity‬
‭
Portal, it has no effect since that is already the player's gravity.‬
‭
Secondly, we have Mirror Portals, which essentially mirror the entire level.‬
‭
Once activated, this means that instead of going towards the right, the level‬
‭
goes towards the left. The Orange Mirror Portal switches to the left, while the‬
‭
Blue Mirror Portal switches to the right (which is default).‬
‭
Third are Size Portals. The pink one makes the player's icon smaller in the‬
‭
current Game Mode, often referred to as Mini Mode. This changes the‬
‭
gameplay in some ways depending on the Game Mode, such as jumps being‬
‭
lower and shorter in Cube and Robot. If the Game Mode changes, Mini Mode‬
‭
is still kept until the size is changed back to normal. That is done with the‬
‭
Green Size Portal.‬
‭
35‬
‭
Finally, on the far right, we have Dual Portals. The orange one enables Dual‬
‭
Mode, which duplicates the player's icon into two. Both of these are controlled‬
‭
upon clicking. By default, every click affects both. However, you can enable‬
‭
2-Player Mode in the level settings, making it so that clicks on each side of the‬
‭
screen control each icon. To switch back to one icon, use the Blue Dual Portal.‬
‭
Speed Changers‬
‭
Speed Changers are pretty self-explanatory, but if you want more details,‬
‭
check‬‭
Level Settings‬
‭
. As with Portals, they are enabled‬‭
when a player interacts‬
‭
with them. The blue lines around them (not seen in-game, only in the editor)‬
‭
indicate their hitbox. This is where you have to touch them to change the‬
‭
speed. Naturally, if the Speed is already normal, for example, going through a‬
‭
Blue Speed Changer (one arrow to the right) does nothing.‬
‭
Letter Objects‬
‭
At the end of the tab, there are various letters inside white squares. These are‬
‭
only visible in the editor itself (and not in-game). They are used in very specific‬
‭
use cases to alter player interactions in some way. In order from first to last,‬
‭
we have Letter Objects with "D", "J", "S", "H", and "F" written on them, which‬
‭
are covered in order here.‬
‭
36‬
‭
First is "D", which is used when the Game Mode is Wave. As seen in figure 3.8‬
‭
on the left, the player will normally die when the icon hits a block below it‬
‭
(and similar above it). However, adding D Letter Objects allows the icon to hit‬
‭
the blocks. The placement of these objects decide which blocks are safe.‬
‭
The J Letter Object is used to stop jumps when the player holds down in‬
‭
Cube. Many players hold down a little after using an Orb, such as a Blue Orb,‬
‭
and after hitting objects this may lead to an unwanted jump. This is seen on‬
‭
the left in figure 3.9. Adding the J Letter Objects here, holding down from the‬
‭
Blue Orb does not result in a jump. Note that clicking again while on top of‬
‭
these Letter Objects does lead to a jump. This only affects holding.‬
‭
37‬
‭
By default, using a Dash Orb lets you hold it down as long as you want. The‬
‭
player decides when its action ends by releasing. However, at times it may be‬
‭
wanted to control when a Dash Orb's effect stops. This is done by placing S‬
‭
Letter Objects as seen in figure 3.10. The player can still release before this if‬
‭
they wish, but they cannot use the Dash Orb for longer than the S Letter‬
‭
Object's placement.‬
‭
In Cube, jumping into a block above you and "hitting your head" normally‬
‭
leads to death. Using H Letter Objects stops this. This works the same way if‬
‭
the gravity is switched, and it also applies for Robot. Last are F Letter Objects,‬
‭
which switch gravity when you hit your head on them. An example of this is‬
‭
seen here:‬
‭
38‬
‭
Force Objects‬
‭
Last in the tab are Force Objects, seen as an arrow inside a circle or square.‬
‭
These apply a set force in the direction of the arrow when touched. This‬
‭
means that you can rotate them in the direction you want them to work. The‬
‭
difference between the two lies in the hitbox, which is indicated by the circle‬
‭
and square. Similar to letter objects, these do not show in the level itself, so it‬
‭
is probably smart to find some way to indicate them with decorations. This‬
‭
makes it less annoying for the player. Use "Edit Object" to change various‬
‭
settings, such as the force applied.‬
‭
39‬
‭
4. Animated Objects‬
‭
Description‬
‭
Animated Objects are in the seventh tab. Each object here consists of several‬
‭
frames, which the game cycles through and loops forever to create‬
‭
animations. The most complex Animated Objects are particles, which can be‬
‭
customized in the‬‭
Particle Editor‬
‭
. Many‬‭
Collectable‬‭
Objects‬‭
are animated as‬
‭
well and have similar settings. The first page of the tab is seen here:‬
‭
Monsters‬
‭
As seen above, the first 5 objects in the tab are various Monsters. Once placed,‬
‭
these do different default animations. However, they can be customized using‬
‭
the‬‭
Animate Trigger‬‭
covered later. To use the‬‭
Animate‬‭
Trigger‬‭
on a Monster,‬
‭
you have to assign it a Group ID. Select the Monster you want to change the‬
‭
animation of and click the "Edit Group" button found on the right. In this‬
‭
menu, enter a value in the "Add Group ID" field. "Next Free" is helpful to find‬
‭
an unused Group ID. To assign that value, click the "Add" button, as seen in‬
‭
figure 4.2. You can use the same Group ID for different kinds of Monsters.‬
‭
However, their animation cycles may not align with each other, resulting in‬
‭
unwanted results. Because of this it is recommended to use a different Group‬
‭
ID for every kind of monster. You can find more information about‬‭
Groups‬
‭
and‬‭
Triggers‬‭
in the later chapters.‬
‭
40‬
‭
.‬
‭
Edit Special‬
‭
The objects beyond the Monsters do not let you change to another animation‬
‭
specifically, but you can use "Edit Special" to customize its default animation‬
‭
in some ways. To do so, select the objects you want to edit and click the "Edit‬
‭
Special" button found to the right. The menu will look like this:‬
‭
41‬
‭
All options change different attributes of the animation cycle. Here is a list of‬
‭
all options and what they do:‬
‭
●‬ ‭
Randomized Start:‬‭
By default all Animated Objects‬‭
start on their first‬
‭
frame. With this option enabled, the first frame is random, and the‬
‭
animation will continue normally from that point.‬
‭
●‬ ‭
Use Speed:‬‭
Uses a custom speed for the animation,‬‭
which gets configured‬
‭
with the slider below. A speed below 1.00 is slower than default, while a‬
‭
speed above 1.00 is faster. You can input negative values to reverse the‬
‭
animation.‬
‭
●‬ ‭
Animate on Trigger:‬‭
The objects freeze on the first‬‭
frame. They begin their‬
‭
animation when an‬‭
Animate‬‭
or‬‭
Spawn Trigger‬‭
Triggers‬‭
them.‬
‭
●‬ ‭
Disable Delayed Loop:‬‭
Some objects get delayed before‬‭
looping. This‬
‭
option instantly starts the next loop.‬
‭
●‬ ‭
Disable AnimShine:‬‭
Some Animated Objects have a white‬‭
flash at the‬
‭
start of their animation, which gets deactivated with this option.‬
‭
●‬ ‭
Only if active:‬‭
Addition to the "Animate on Trigger"‬‭
option. With this‬
‭
option, the "Animate on Trigger" option will only play if the object is active.‬
‭
If the animation is not active while an‬‭
Animate‬‭
or‬‭
Spawn Trigger‬‭
Triggers‬
‭
it, the animation will instead begin once the object is active again.‬
‭
●‬ ‭
Single Frame:‬‭
The animation will not play and instead‬‭
only display a single‬
‭
frame of the animation, which gets chosen with the number field below.‬
‭
42‬
‭
Particle Editor‬
‭
The Particle Editor allows you to create your own set of particles. To get‬
‭
started, you first have to place its object. It is the first object in the tab, seen as‬
‭
a white "P" and shown in figure 4.4.‬
‭
While having this object placed and selected, you can access the Particle‬
‭
Editor by clicking the "Edit Special" button on the right. This opens the menu‬
‭
in figure 4.5. In here, you can configure different attributes of your particles,‬
‭
such as their movement, color, texture, and more.‬
‭
In the following sections we will go through all the tabs and explain what‬
‭
every option does. You can copy and paste configurations from different‬
‭
particles by using the "C" and "P" buttons at the top.‬
‭
43‬
‭
First, we have the "Motion" tab, which configures the particles' movement.‬
‭
You can edit the motion of your particles in "Gravity" or "Radius" mode.‬
‭
Depending on what mode you choose, you will have different options‬
‭
available.‬
‭
●‬ ‭
Max Particles:‬‭
The amount of particles that can be‬‭
visible at once.‬
‭
●‬ ‭
Duration:‬‭
How long particles will be generated. "-1.00"‬‭
means they will‬
‭
spawn forever, which you can input by clicking the "Inf." button to the‬
‭
right.‬
‭
●‬ ‭
Lifetime:‬‭
How long particles are visible before they‬‭
disappear.‬
‭
●‬ ‭
Emission:‬‭
At what rate particles spawn. You can click‬‭
the "Max" button for‬
‭
the highest possible rate or click the "Calc" button to use the "Max‬
‭
Particles" and "Lifetime" values to generate them at an even rate.‬
‭
●‬ ‭
Angle:‬‭
The angle at which the particles will go. A‬‭
value of "0" means right,‬
‭
"90" down, "180" left, and so on.‬
‭
●‬ ‭
Speed:‬‭
The speed at which the particles go from the‬‭
center.‬
‭
44‬
‭
●‬ ‭
PosVar:‬‭
Position variables indicate the space in which the particles can‬
‭
spawn.‬
‭
●‬ ‭
Gravity:‬‭
This applies a gravity force to the particles.‬‭
The higher the value,‬
‭
the stronger the force. Positive values make the gravity go right and up,‬
‭
while negative values make the gravity go left and down, depending on‬
‭
what slider you choose.‬
‭
●‬ ‭
AccelRad:‬‭
Refers to the radial acceleration of the‬‭
particles.‬
‭
●‬ ‭
AccelTan:‬‭
Refers to the tangential acceleration of‬‭
the particles.‬
‭
●‬ ‭
StartRad:‬‭
This option is only available in "Radius"‬‭
mode. It sets the start‬
‭
radius of the particles.‬
‭
●‬ ‭
EndRad:‬‭
This option is only available in the "Radius"‬‭
mode. It sets the end‬
‭
radius of the particles.‬
‭
●‬ ‭
RotSec:‬‭
This option is only available in the "Radius"‬‭
mode. It refers to‬
‭
rotations per second.‬
‭
Next is the "Visual" tab, which lets you change how the particles look. The‬
‭
start and end colors are customized in the top left.‬
‭
45‬
‭
●‬ ‭
StartSize:‬‭
The size the particles have when they spawn.‬
‭
●‬ ‭
EndSize:‬‭
The size the particles have when they despawn.‬
‭
●‬ ‭
StartSpin:‬‭
The rotation of the particles when they‬‭
spawn.‬
‭
●‬ ‭
EndSpin:‬‭
The rotation of the particles when they despawn.‬
‭
●‬ ‭
Start R/G/B:‬‭
Percentage of red, green, and blue values‬‭
when the particles‬
‭
spawn.‬
‭
●‬ ‭
Start A:‬‭
Opacity when the particles spawn.‬
‭
●‬ ‭
End R/G/B:‬‭
Percentage of red, green, and blue values‬‭
when the particles‬
‭
despawn.‬
‭
●‬ ‭
End A:‬‭
Opacity when the particles despawn.‬
‭
In the "Extra" tab, seen below, various other configuration can be done.‬
‭
46‬
‭
●‬ ‭
Free:‬‭
With this option enabled, you do not move the particles but pan the‬
‭
camera around.‬
‭
●‬ ‭
Relative:‬‭
With this option, particles do not move‬‭
when you move the‬
‭
object but spawn at the new position.‬
‭
●‬ ‭
Grouped:‬‭
With this option, all particles move when‬‭
you move the object.‬
‭
●‬ ‭
Fade in/out:‬‭
Fade time for the particles to appear‬‭
and disappear.‬
‭
●‬ ‭
FrictionP:‬‭
Adds friction to the particles.‬
‭
●‬ ‭
FrictionS:‬‭
Adds friction to the particle speed.‬
‭
●‬ ‭
FrictionR:‬‭
Adds friction to the particle rotation.‬
‭
●‬ ‭
Respawn:‬‭
Modifies the rate at which particles respawn.‬
‭
●‬ ‭
Additive:‬‭
This is comparable to the blending option‬‭
for Color Channels.‬
‭
●‬ ‭
Start Size = End:‬‭
The particles have the same size‬‭
at the end as the start.‬
‭
●‬ ‭
Start Spin = End:‬‭
The particles have the same rotation‬‭
at the end as the‬
‭
start.‬
‭
●‬ ‭
Start Rad = End:‬‭
Changes the "StartRad" value to be‬‭
the end instead of‬
‭
the start. This option only works in "Radius" mode.‬
‭
●‬ ‭
Start rot is dir:‬‭
The rotation of the particles when‬‭
they spawn is the‬
‭
direction they will go towards.‬
‭
●‬ ‭
Use obj color:‬‭
Particles use Color Channels instead‬‭
of the color specified in‬
‭
the visual tab.‬
‭
●‬ ‭
Uniform obj color:‬‭
Makes the beginning and ending‬‭
colors the same.‬
‭
●‬ ‭
Dynamic rotation:‬‭
The particles rotate to face towards‬‭
the direction they‬
‭
are going.‬
‭
●‬ ‭
Animate on Trigger:‬‭
The objects freeze on the first‬‭
frame. They begin their‬
‭
animation when an‬‭
Animate Trigger‬‭
Triggers them.‬
‭
●‬ ‭
Animate Active Only:‬‭
Addition to the "Animate on Trigger"‬‭
option. With‬
‭
this option, the "Animate on Trigger" option will only play if the object is‬
‭
active. If the animation is not active while the‬‭
Animate‬‭
Trigger‬‭
is activated,‬
‭
the animation will instead begin once the object is active again.‬
‭
47‬
‭
●‬ ‭
Order Sensitive:‬‭
Orders particles with newest ones on top.‬
‭
●‬ ‭
StartRGB Var Sync:‬‭
Syncs the "Start R/G/B" values‬‭
from the "Visual" tab.‬
‭
●‬ ‭
EndRGB Var Sync:‬‭
Syncs the "End R/G/B" values from‬‭
the "Visual" tab.‬
‭
●‬ ‭
Quick Start:‬‭
By default, the particles will start‬‭
slowly before reaching their‬
‭
normal movement. With this option, normal movement is achieved‬
‭
instantly.‬
‭
In the "Texture" tab, the actual texture of your particle is chosen. Note that for‬
‭
textures with a Base Color other than white, such as the Difficulty Faces, the‬
‭
particle color has to be white. Choosing a color other than white will tint the‬
‭
colors, which may lead to unwanted results. Based on prior settings, the‬
‭
particles may even disappear if you choose black for the particle color.‬
‭
48‬
‭
The Particle Editor preview is on the left half of the settings menu. In this‬
‭
editor, you can configure motion options by dragging lines around and‬
‭
positioning the particles at different locations. The default version of the‬
‭
editor looks like figure 4.10, but it will automatically update the motion, color,‬
‭
and texture depending on prior configurations.‬
‭
All buttons allow you to modify different parts of the motion. Choose the‬
‭
mode by clicking on the corresponding button. If no button is enabled, you‬
‭
can move the particles inside the editor. Their movement depends on the‬
‭
"Free", "Relative", and "Grouped" options from the "Extra" tab.‬
‭
The first button, "1",‬‭
edits the "PosVar" values in‬‭
"Gravity" mode, and the‬
‭
"StartRad" value in "Radius" mode. You can change them by clicking on the‬
‭
green line and moving it around to scale it, as seen in figure 4.11. If you click on‬
‭
an edge, you can change the size on the corresponding axis. If you click on a‬
‭
corner, the size will change relative to the corner position in the square.‬
‭
49‬
‭
The second button, "2", edits the "Gravity" values in "Gravity" mode, and the‬
‭
"EndRad" value in "Radius" mode. You can change them by clicking‬
‭
somewhere in the editor and moving around. The blue line will draw from the‬
‭
center to the position you are at, with a longer line indicating a stronger‬
‭
gravity in the corresponding direction, as seen in figure 4.11.‬
‭
The third button, "3", edits the "Angle" value in both modes, as well as the‬
‭
"Speed" value in "Gravity" mode. You can change them by clicking‬
‭
somewhere in the editor and moving around. The angle will change to the‬
‭
angle between the center and your click, and the speed will adjust depending‬
‭
on how far the mouse is from the center. The angle is indicated by the‬
‭
rounder yellow line, while the speed is indicated by the straight yellow line, as‬
‭
seen in figure 4.11.‬
‭
The "C" button recenters the particles if you moved them around, and the last,‬
‭
colored button changes the background color of the editor.‬
‭
50‬
‭
5. Items‬
‭
Description‬
‭
Items are found in the tenth tab of the editor, and consist of various objects‬
‭
that are suitable as Collectables. This means that they can be picked up‬
‭
throughout the level, whether they are optional extra challenges or necessary‬
‭
to advance. You can also use many of these as decorations if you wish. The‬
‭
first page of the tab is seen here:‬
‭
User Coins‬
‭
The first object in the tab are User Coins. These are the most used‬
‭
Collectables in the game because they are official. This means that they show‬
‭
on a level's menu screen and may count towards player statistics. You can‬
‭
place up to three of these in your level, but note that you do not need to put‬
‭
any. They are supposed to offer an extra, optional challenge for the player,‬
‭
meaning that they should not be a part of the level's normal route and free to‬
‭
get when beating the level. Once you upload your level, they will initially show‬
‭
as bronze both inside the level and on its menu screen. However, if your level‬
‭
gets rated, RobTop can "verify" the coins, making them silver and count for‬
‭
statistics. This means that players get more User Coins on their Profile if they‬
‭
collect yours and beat the level. Note that he may not verify them if your User‬
‭
Coins are free. Similar to Animated Objects, you can use‬‭
Edit Special‬‭
to edit‬
‭
their default rotating animation.‬
‭
51‬
‭
Custom Collectables‬
‭
All other objects in the tab function as custom Collectables. You can assign‬
‭
specific actions to them that will be activated once they get collected. This‬
‭
can be editing a specific Item ID, activating or deactivating a specific Group‬
‭
ID, or assigning Points that add up for the player. To access these options, first‬
‭
place the Collectable you want to use and click "Edit Special". This opens the‬
‭
following menu:‬
‭
You can use "Pickup Item" to change the value of an Item ID. Item IDs are‬
‭
variables that can be edited and referenced throughout the level. Enter the‬
‭
Item ID you want to change in the "ItemID" field. By default, the Item ID will‬
‭
be increased by one. By enabling the "Sub Count" option, it will be decreased‬
‭
by one instead. You can read the‬‭
Pickup Trigger‬‭
section,‬‭
as well as the various‬
‭
Item Triggers‬
‭
, for more information on Item IDs.‬
‭
52‬
‭
Use "Toggle Trigger" if you want the Collectable to behave like a‬‭
Toggle‬‭
or‬
‭
Spawn Trigger‬
‭
. By default, the Group ID will be toggled off. If you click the‬
‭
"Enable Group" option, the Group ID you input in the "Group ID" field will‬
‭
toggle on instead. If the Group ID is assigned to a‬‭
Trigger‬
‭
, the Trigger will be‬
‭
activated like a Spawn Trigger instead. You can read the‬‭
Using Groups‬‭
section‬
‭
for an explanation of what Group IDs are and how to use them.‬
‭
The "Particle" option allows you to spawn particles when the custom‬
‭
Collectables are collected. Assign a Group ID to your set of particles and enter‬
‭
that Group ID in the "Particle" field. Note that your particles cannot have an‬
‭
infinite duration for this to work. You can check the‬‭
Particle Editor‬‭
subchapter‬
‭
for more information about particles and how to use them.‬
‭
Lastly, you can assign Points to the Collectables. Points function similarly to‬
‭
Item IDs. However, they count as a single variable and are used for the Level‬
‭
Leaderboards in Platformer levels. The number you input in the "Points" field‬
‭
is how many Points the custom Collectables will award when collected.‬
‭
53‬
‭
6. Edit Group‬
‭
"Edit Group" is one of the most important buttons in the game. It is found on‬
‭
the right side of the editor when the object(s) you want to edit are selected.‬
‭
This menu is what enables you to change attributes of your objects through‬
‭
various options, as well as adding Group IDs to link to‬‭
Triggers‬
‭
.‬
‭
Functionality‬
‭
The options are used to set editor layer, assign Group IDs, change the Z‬
‭
position, set the Order, and set up Channels. Here is a list of all the settings‬
‭
seen in figure 6.1 and a short explanation of what they do.‬
‭
●‬ ‭
Editor L and Editor L2:‬‭
These options place objects‬‭
at different editor‬
‭
layers. Objects will appear on both editor layers once set. If "Editor L2" is 0,‬
‭
however, the objects will only appear on the layer set in "Editor L". You can‬
‭
use the "+" buttons to get the lowest layer that has no objects placed on it.‬
‭
●‬ ‭
Z Layer:‬‭
Seen at the bottom, this is used as the drawing‬‭
order of objects. In‬
‭
order of increasing priority, it goes from "B5" to "T4" selected by the‬
‭
54‬
‭
buttons. Objects in layers starting with a "B" are below the player, while‬
‭
objects in layers starting with a "T" are above the player. When multiple‬
‭
selected objects are in different "Z Layers", you can use the "+" and "-"‬
‭
buttons to move everything up or down one step in layer respectively. To‬
‭
change the drawing order of objects even further, see below.‬
‭
●‬ ‭
Tileset:‬‭
This term is not directly seen in figure‬‭
6.1, but its value marked to‬
‭
the right of "Z Layer" in parentheses. It specifies the tileset number of the‬
‭
selected object(s). For similar types of objects, this will typically be the‬
‭
same value. For different types of objects in the same "Z Layer", the tileset‬
‭
value specifies its priority. Within the same "Z Layer", an object with a lower‬
‭
tileset number is always drawn above one with a higher value. To bypass‬
‭
this, you can move the object with a higher value to a higher "Z layer". See‬
‭
figure 6.2 for an example.‬
‭
●‬ ‭
Z Order:‬‭
Seen in the top right of figure 6.1, this‬‭
sets the drawing order of‬
‭
objects that are in the same "Z Layer" and also have the same tileset‬
‭
number. If this is the case, putting a higher "Z Order" makes it drawn on‬
‭
top. You can input positive and negative values in this field.‬
‭
●‬ ‭
Add Group ID:‬‭
Assign up to ten Group IDs, which you‬‭
can later use in other‬
‭
Triggers. How to use Group IDs is covered later in this chapter.‬
‭
●‬ ‭
ORD:‬‭
This option only appears for‬‭
Gameplay Objects‬‭
and‬‭
Triggers‬
‭
. It sets‬
‭
an Order in which the objects get activated.‬
‭
●‬ ‭
CH:‬‭
This option only appears for‬‭
Gameplay Objects‬‭
and‬‭
Triggers‬
‭
. It assigns‬
‭
a Channel to the objects, which are used for‬‭
Rotate‬‭
Gameplay Triggers‬‭
to‬
‭
work with different gameplay directions. See‬‭
Channel‬‭
System‬‭
for more‬
‭
information.‬
‭
Copy and paste settings from different objects using the "Copy" and "Paste"‬
‭
buttons in the top right. The "Extra" and "Extra2" categories have special‬
‭
options, and are covered‬‭
below‬
‭
.‬
‭
55‬
‭
Using Groups‬
‭
Group IDs are essential for Trigger usage. You can add up to ten Group IDs to‬
‭
a specific object. To assign a Group ID to objects, enter the Group ID you want‬
‭
to add into the number field and click the "Add" button. The number will be‬
‭
added to the window below in gray, as seen in figure 6.3. Clicking the "Next‬
‭
Free" button inputs the lowest Group ID value that has not been used in the‬
‭
level yet.‬
‭
56‬
‭
To remove a Group ID, simply click the one you want to remove. If you have a‬
‭
single object selected, a new "P" button appears next to "Add". This is used to‬
‭
mark the object as Group Parent ID. After clicking the "P" button, the‬
‭
corresponding Group ID will show in pink instead of the normal gray, as seen‬
‭
in figure 6.4. You can use Group Parent IDs for different‬‭
Triggers‬
‭
.‬
‭
Extra Options‬
‭
Extra options are in the "Extra" and "Extra2" buttons on the right side of the‬
‭
menu. These tabs have many options that change the attributes of objects,‬
‭
some of which are only accessible if the selected object is a‬‭
Gameplay Object‬
‭
or‬‭
Trigger‬
‭
, and others are only useful for Platformer.‬‭
Here is a list and a short‬
‭
explanation of the options in "Extra" do:‬
‭
●‬ ‭
Dont Fade:‬‭
Disables fading in and out when entering‬‭
and exiting the‬
‭
screen. This is default behavior for all visible objects.‬
‭
●‬ ‭
Dont Enter:‬‭
Disables any applied‬‭
Enter Effects‬
‭
.‬
‭
●‬ ‭
No Effects:‬‭
This option deactivates the effects of‬‭
Portals. Some examples‬
‭
include the Background lightning for Size Portals and gravity lines for‬
‭
Gravity Portals.‬
‭
57‬
‭
●‬ ‭
Group Parent:‬‭
Sets an object as a Group ID Parent, which is used for‬
‭
scaling and rotating objects.‬
‭
●‬ ‭
Area Parent:‬‭
Marks an object as the Area Parent, which‬‭
can be used for‬
‭
Area Triggers‬
‭
.‬
‭
●‬ ‭
Dont Boost Y/X:‬‭
Disables the player being boosted‬‭
by a moving object for‬
‭
the given axis.‬
‭
●‬ ‭
High Detail:‬‭
Marks an object as High Detail. Objects‬‭
marked as High Detail‬
‭
get disabled when the player enables the Low Detail Mode on the level‬
‭
page. This is useful if your level has a lot of extra, unnecessary details that‬
‭
can lead to poor performance for some users.‬
‭
●‬ ‭
NoTouch:‬‭
Disables interactions between the player‬‭
and the objects‬
‭
●‬ ‭
Passable:‬‭
You can jump through solid objects but land‬‭
on them from the‬
‭
top.‬
‭
●‬ ‭
Hide:‬‭
Makes objects invisible.‬
‭
●‬ ‭
NonStickX/NonStickY:‬‭
Only usable for Platformer. The‬‭
player will stick to‬
‭
moving objects by default. This option removes the friction so the player‬
‭
does not stick to the objects.‬
‭
●‬ ‭
ExtraSticky:‬‭
When the player stands on an object that‬‭
moves down too‬
‭
fast, the player will not stick to the block anymore. This option increases‬
‭
how sticky it is.‬
‭
●‬ ‭
Extended Collision:‬‭
Objects with a scale larger than‬‭
a value of 6 have‬
‭
inaccurate hitboxes. This option fixes the hitbox to be accurate again. Note‬
‭
that this does not apply to the visuals of objects.‬
‭
●‬ ‭
IceBlock:‬‭
Only usable for Platformer. This option‬‭
makes blocks slippery, so‬
‭
the player slides further. Controls are also harder.‬
‭
●‬ ‭
GripSlope:‬‭
By default, the player can not slide up‬‭
steep slopes and will‬
‭
slide down instead. With this option enabled, the player has more grip on‬
‭
slopes so that they can slide up.‬
‭
58‬
‭
●‬ ‭
NoGlow:‬‭
Disables the glow emitted from solid objects and Spikes, as seen‬
‭
in figure 6.5.‬
‭
●‬ ‭
ScaleStick:‬‭
By default, the player's X position will‬‭
not change when‬
‭
standing on a scaling object. With this option enabled, the player's‬
‭
position moves the corresponding distance from the scale center.‬
‭
●‬ ‭
NoParticle:‬‭
Disables the particles on Orbs and Portals.‬
‭
●‬ ‭
Center Effect:‬‭
When previewing Triggers with "Touch‬‭
Trigger" enabled in‬
‭
the editor, the effect spawns when the player touches the Trigger at all.‬
‭
With this option enabled, it will only spawn when at the Trigger center.‬
‭
●‬ ‭
Single PTouch:‬‭
This option is used for Rotate Gameplay‬‭
Triggers and Dual‬
‭
Mode. If one of the players touches the Trigger, only that one is affected.‬
‭
●‬ ‭
No Audio Scale:‬‭
Disables pulsing for both Orbs and‬‭
Pulsing Objects. See‬
‭
the figure below.‬
‭
59‬
‭
Special IDs‬
‭
Special IDs are in the "Extra2" tab and are used for some‬‭
Triggers‬
‭
. They have‬
‭
no effect on their own. Here is a list of all the Special IDs and a short‬
‭
explanation of their usage.‬
‭
●‬ ‭
Enter Channel:‬‭
Enter Channel IDs are used for‬‭
Enter‬‭
Effects‬‭
and‬‭
Custom‬
‭
Enter Effects‬
‭
, which are covered in greater detail‬‭
later. You can click the "+"‬
‭
button to get the lowest Enter Channel ID that is unused.‬
‭
●‬ ‭
Material:‬‭
You can assign Material IDs to objects for‬‭
set events upon‬
‭
interaction. For example, you can add a Material ID to all ground blocks‬
‭
and use it in‬‭
Event Triggers‬‭
to Trigger a stone sound‬‭
whenever the player‬
‭
lands on them.‬
‭
●‬ ‭
ControlID:‬‭
This option is only available for‬‭
Gameplay‬‭
Objects‬‭
and‬‭
Triggers‬
‭
.‬
‭
Control IDs are used to reference specific objects when using the‬
‭
remapping setting in‬‭
Spawn Triggers‬
‭
.‬
‭
When using "Edit Group" with a Trigger, additional options "Preview" and‬
‭
"Playback" show below the "Extra" buttons. The former enables "Touch‬
‭
Trigger" Triggers while playtesting, while the latter makes music playtesting‬
‭
start from this Trigger.‬
‭
60‬
‭
7. Triggers‬
‭
Description‬
‭
There are over a hundred Triggers in the game. These are found in the second‬
‭
to last tab, seen below. As explained earlier, Triggers are used to perform‬
‭
various complex actions. They may alter visible objects, such as blocks, in‬
‭
some way, or just change the gameplay or visuals. Since they work in this way,‬
‭
they are never visible objects that can be seen when playing a level. You place‬
‭
them in the editor, and they do their action when the player passes the‬
‭
Trigger's position or other linked events. For example, Triggers that have the‬
‭
"Touch Trigger" option enabled will be triggered when the player touches‬
‭
them. There is also a "Spawn Trigger" option, which means it is spawned by a‬
‭
Spawn Trigger‬‭
or different conditional Triggers, like‬‭
Touch Triggers‬
‭
,‬‭
Count‬
‭
Triggers‬
‭
,‬‭
Time Triggers‬
‭
, and more.‬
‭
Below this, every Trigger is covered in-depth in order. If you are unsure about‬
‭
the name of a Trigger found in-game, you can find it by looking at the title‬
‭
inside‬‭
Edit Object‬
‭
. This is also where you will edit‬‭
a Trigger's settings. Note‬
‭
that you can also find some simple quick help there by clicking the‬
‭
information button (shown as an "i" in one of the corners). This guide works‬
‭
best as an additional resource if any of that text is unclear. Previous‬
‭
knowledge in this document, such as‬‭
Edit Group‬
‭
, is‬‭
expected to be able to‬
‭
work with Triggers well.‬
‭
61‬
‭
Start Pos‬
‭
This Trigger is used to set a custom starting location of the player for‬
‭
playtesting. Levels cannot be verified if they include a Start Pos Trigger.‬
‭
The "Speed" and "Mode" options are used to set the‬‭
Speed‬‭
and‬‭
Game Mode‬‭
to‬
‭
use from the Trigger. The "Options" menu features more settings, such as‬
‭
starting in Mini Mode, Dual Mode, or Rotated Gameplay.‬
‭
The "Reset Camera" option resets all prior camera settings.‬
‭
"Target Order" and "Target Channel" refer to the "Order" and "Channel"‬
‭
options found in the‬‭
Edit Group‬‭
menu. They are used‬‭
to activate‬‭
Gameplay‬
‭
Objects‬‭
and Triggers in a specific order.‬
‭
You can temporarily disable a Start Pos by enabling the "Disable" option.‬
‭
Color‬
‭
Color Triggers are used to change the settings of a Color Channel. It works the‬
‭
same way as the normal color selection, which was covered in the‬‭
Select Color‬
‭
section.‬
‭
The "Color ID" field refers to what Color Channel you want to edit. You can‬
‭
click the "+" button for more options, such as the Background Color.‬
‭
If you wish to change a Color Channel to the player's colors, you can use‬
‭
"Player Color 1" or "Player Color 2".‬
‭
The "Blending" option applies blending to the color, which makes it multiply‬
‭
with the colors below it.‬
‭
62‬
‭
By enabling the "Copy Color" option, you can copy the color of a different‬
‭
Color Channel. The Color Channel you wish to copy is input in the "Channel‬
‭
ID" field. You can change attributes of the color you copy by using the "Hue",‬
‭
"Saturation", and "Brightness" sliders.‬
‭
You can use the "Copy" and "Paste" buttons to copy the color from one Color‬
‭
Trigger to another. By clicking the "Default" button, it will automatically show‬
‭
the color the corresponding Color Channel has in the‬‭
Select Color‬‭
screen.‬
‭
Move‬
‭
This Trigger is used to move a specific Group ID. Its interface is seen below.‬
‭
After that, each option is described.‬
‭
63‬
‭
●‬ ‭
Target Group ID:‬‭
The Group ID you want to move.‬
‭
●‬ ‭
Move X:‬‭
Moves blocks along the X-axis. One block is‬‭
equal to a value of 10.‬
‭
Input a positive number to move to the right, and a negative one to move‬
‭
to the left.‬
‭
●‬ ‭
Move Y:‬‭
Moves blocks along the Y-axis. One block is‬‭
equal to a value of 10.‬
‭
Input a positive number to move up, and a negative one to move down.‬
‭
●‬ ‭
Move Time:‬‭
The duration you want the movement to last.‬
‭
●‬ ‭
Easing:‬‭
Easing options change the way the objects‬‭
start and end their‬
‭
movement.‬
‭
●‬ ‭
Player:‬‭
You can select a "Player" option for both‬‭
the X-axis and Y-axis.‬
‭
When this option is selected, the objects will follow the player's movement‬
‭
in the given direction.‬
‭
●‬ ‭
Camera:‬‭
The "Camera" option can also be selected for‬‭
both the X-axis and‬
‭
Y-axis. It functions similarly to the "Player" option, but follows the screen‬
‭
movement instead of the player movement.‬
‭
●‬ ‭
Target Mode:‬‭
Moves the objects to a "Target Group‬‭
ID". This must be a‬
‭
single object. "Center Group ID" declares the center of the objects you‬
‭
want to move. This must also consist of a single object only. Selecting "P1"‬
‭
or "P2" declares Player 1 or 2, in Dual Mode, respectively as "Target Group"‬
‭
and moves the objects to that player's location instead.‬
‭
64‬
‭
●‬ ‭
Direction Mode:‬‭
Moves the objects in the direction of a "Target Group ID".‬
‭
This must be a single object. "Center Group ID" declares the center of the‬
‭
objects you want to move. This must also be a single object. Selecting "P1"‬
‭
or "P2" declares Player 1 or 2, in Dual Mode, respectively as "Target Group"‬
‭
and moves the objects to that player's location instead. "Distance"‬
‭
indicates how far in the direction the objects move. As before, one block is‬
‭
equal to a value of 10.‬
‭
●‬ ‭
Small Step:‬‭
Enabling this option changes the value‬‭
for one block from 10‬
‭
to 30. This improves accuracy and allows for more precise movements.‬
‭
●‬ ‭
Dynamic Mode:‬‭
This option checks if the "Target Group‬‭
ID" moves when in‬
‭
"Target Mode" or "Direction Mode". Normally the Trigger will only check‬
‭
upon activation where the target is and move towards that direction. With‬
‭
"Dynamic Mode" enabled, it will update its direction based on the target‬
‭
moving.‬
‭
●‬ ‭
Silent:‬‭
In Platformer mode, the player sticks to solid‬‭
blocks that move‬
‭
instantly. With this option enabled, blocks move instantly without the‬
‭
player following their movement.‬
‭
65‬
‭
Stop‬
‭
This Trigger shows as a Stop, Pause or Resume Trigger depending on what‬
‭
option you choose inside "Edit Object".‬
‭
"Stop" is used to stop the action of other Triggers permanently. Give the‬
‭
Triggers you want to stop a Group ID and enter that Group ID in the Stop‬
‭
Trigger.‬
‭
"Pause" pauses the action of other Triggers temporarily. Give the Triggers you‬
‭
want to pause a Group ID and enter that Group ID in the Stop Trigger. The‬
‭
difference to a Stop Trigger is that you can resume the Trigger later by using a‬
‭
Resume Trigger.‬
‭
"Resume" resumes the action of other Triggers. Give the Triggers you want to‬
‭
resume a Group ID and enter that Group ID in the Stop Trigger. Only Triggers‬
‭
that were paused with a Pause Trigger can be resumed.‬
‭
"Use Control ID" allows you to only stop a specific Group ID when using‬
‭
remapping. For example, if you remap a‬‭
Spawn Trigger‬‭
to use Group IDs 1, 2,‬
‭
and 3, and you only want to stop Group ID 3, you can enter a "Control ID" and‬
‭
enable the option in the Stop Trigger. You can find the "Control ID" option in‬
‭
the "Extra 2" category after clicking "Edit Group".‬
‭
66‬
‭
Pulse‬
‭
This Trigger is normally used to change the color of a Color Channel or Group‬
‭
ID temporarily. The interface and various options are as follows:‬
‭
●‬ ‭
Channel:‬‭
With "Channel", you pulse an entire Color‬‭
Channel. Clicking the‬
‭
"+" button allows you to select a special color. This includes for example the‬
‭
Background, Ground, Middleground, and Player Colors.‬
‭
●‬ ‭
Group:‬‭
With "Group", you pulse objects with that Group‬‭
ID.‬
‭
●‬ ‭
Main/Secondary Only:‬‭
These options are only available‬‭
when clicking‬
‭
"Group". Some objects have a Base Color and Detail Color, which can be‬
‭
seen in the "Edit Object" menu.‬
‭
●‬ ‭
Color:‬‭
With "Color", the objects pulse the color you‬‭
select.‬
‭
●‬ ‭
HSV:‬‭
With "HSV", you can pulse the objects using another‬‭
"Color ID" and‬
‭
change the "Hue", "Saturation" and "Brightness" of that "Color ID". If you‬
‭
leave this value at 0, you pulse the color you put into the "Channel ID" field‬
‭
67‬
‭
●‬ ‭
Fade In:‬‭
The duration for the objects to reach the pulse color.‬
‭
●‬ ‭
Hold:‬‭
How long the objects hold the pulse color.‬
‭
●‬ ‭
Fade Out:‬‭
The duration for the objects to return to‬‭
their original color.‬
‭
●‬ ‭
Exclusive:‬‭
This option disables all other pulses with‬‭
the same ID, and only‬
‭
plays the current pulse.‬
‭
Alpha‬
‭
This Trigger is used to change the opacity of an object over a given time‬
‭
frame. The options are as follows:‬
‭
●‬ ‭
Group ID:‬‭
The objects you want to change the opacity‬‭
of.‬
‭
●‬ ‭
Fade Time:‬‭
The duration until the objects reach the‬‭
set opacity.‬
‭
●‬ ‭
Opacity:‬‭
The opacity you want the objects to have.‬
‭
Toggle‬
‭
The Toggle Trigger enables or disables objects. Objects that are disabled are‬
‭
invisible, and the player cannot interact with them anymore.‬
‭
●‬ ‭
Group ID:‬‭
The objects you want to disable or enable.‬
‭
●‬ ‭
Activate Group:‬‭
With this option enabled the objects‬‭
will be enabled. With‬
‭
the option disabled, objects will be disabled.‬
‭
Spawn‬
‭
Spawn Triggers can activate other Triggers.‬
‭
●‬ ‭
Group ID:‬‭
The Triggers you want to spawn.‬
‭
●‬ ‭
Delay:‬‭
The delay before you spawn the Trigger.‬
‭
●‬ ‭
Preview Disabled:‬‭
Disables the Spawn Trigger when‬‭
in "Preview Mode".‬
‭
The Trigger will still activate when you playtest in the editor.‬
‭
68‬
‭
●‬ ‭
Spawn Ordered:‬‭
All Triggers within this Group ID will be activated from‬
‭
left to right, with the distance between the Triggers indicating the delay‬
‭
between them.‬
‭
●‬ ‭
Reset Remap:‬‭
Resets the remapping of Group IDs.‬
‭
You can use the second page of the Trigger's interface to remap Spawn‬
‭
Trigger setups. This is useful to save Group IDs.‬
‭
69‬
‭
Due to this being complex, we will use an example. In figure 7.8, we are‬
‭
moving a block left and right by using a Spawn Loop. Now we want to add‬
‭
another block that also moves left and right. Normally we would need to copy‬
‭
all the Triggers and change their values. With remapping, we can copy the‬
‭
Spawn Trigger on the left, and remap the Group ID of the old setup to the‬
‭
new block. This is seen in figure 7.9.‬
‭
Now Group ID 4 will behave the same as Group ID 1. You can spawn Group ID‬
‭
4 at a later time to offset the two block movements. This particular‬
‭
remapping saves 3 Group IDs.‬
‭
70‬
‭
Rotate‬
‭
This Trigger is used to rotate a specific Group ID. Its interface is seen below.‬
‭
After that, each option is described.‬
‭
●‬ ‭
Target Group ID:‬‭
The objects you want to rotate.‬
‭
●‬ ‭
Center Group ID:‬‭
The center the objects should rotate‬‭
around. This Group‬
‭
ID can only consist of a single object. Leaving this as 0 will result in all‬
‭
objects rotating around their own center.‬
‭
●‬ ‭
Move Time:‬‭
The duration you want the rotation to last.‬
‭
●‬ ‭
Degrees:‬‭
How many degrees you want the objects to‬‭
rotate. Enter a‬
‭
negative value to rotate counter-clockwise and enter a positive value to‬
‭
rotate clockwise.‬
‭
●‬ ‭
x360:‬‭
How many full rotations (360 degrees) you want‬‭
to do. Enter a‬
‭
negative value to rotate counter-clockwise and enter a positive value to‬
‭
rotate clockwise.‬
‭
71‬
‭
●‬ ‭
Aim Mode:‬‭
The objects will face towards the "Rot Target‬‭
ID". This must be a‬
‭
Group ID with a single object. You can offset the rotation with "Rot Offset".‬
‭
Choosing "P1" or "P2" will make the objects face towards Player 1 and Player‬
‭
2 respectively. If this is enabled, you can limit the rotation to be between‬
‭
objects set on the second page of the Trigger.‬
‭
●‬ ‭
Follow Mode:‬‭
The objects will follow the rotation‬‭
of "Rot Target ID". This‬
‭
must be a Group ID with a single object. You can offset the rotation with‬
‭
"Rot Offset". Choosing "P1" or "P2" will make the objects face towards‬
‭
Player 1 and Player 2 respectively. The second page of the overall Trigger‬
‭
lets you set Group IDs of single objects as boundaries for following. This‬
‭
means that the rotation will not continue to follow the target if it reaches‬
‭
these positions.‬
‭
72‬
‭
●‬ ‭
Dynamic Mode:‬‭
This option checks if the target moves when in "Aim‬
‭
Mode" or "Follow Mode". Normally the Trigger will only check upon‬
‭
activation where the target is and face towards that direction. Moving the‬
‭
Target Group ID does not update the direction. With "Dynamic Mode"‬
‭
enabled, it will update its direction based on the target moving.‬
‭
●‬ ‭
Lock Obj Rotation:‬‭
The objects themselves will not‬‭
rotate but instead only‬
‭
update their position.‬
‭
Scale‬
‭
This Trigger is used to scale a specific Group ID. Every text field and option is‬
‭
described in order below.‬
‭
●‬ ‭
Target Group ID:‬‭
The objects you want to scale.‬
‭
●‬ ‭
Center Group ID:‬‭
The center the objects should scale‬‭
from. This Group ID‬
‭
can only consist of a single object. Leaving this as 0 will result in all objects‬
‭
scaling from their own center.‬
‭
●‬ ‭
Duration:‬‭
The duration you want the scaling to last.‬
‭
●‬ ‭
ScaleX/ScaleY:‬‭
How much you want to scale the objects‬‭
in the X and Y‬
‭
direction respectively.‬
‭
●‬ ‭
Div by Value X/Y:‬‭
Divides the current scale by this‬‭
number and uses this‬
‭
as the target value.‬
‭
If you want to scale an object and have it return to its original size, you can‬
‭
use "ScaleX/ScaleY" like normal on the first Scale Trigger, and simply tick the‬
‭
"Div by Value" boxes when scaling back on another Scale Trigger. For‬
‭
example, if you want to scale a block to 3.00, put "ScaleX" and "ScaleY" to 3.00.‬
‭
If you want it to return to 1.00 now, you would need to put 1/3 into the fields.‬
‭
This is not possible and leads to inaccuracies. By ticking the "Divide by Value"‬
‭
box, you divide the scale by 3.00, which brings you back to 1.00.‬
‭
73‬
‭
●‬ ‭
Only Move:‬‭
The objects will only move to the place‬‭
they would be when‬
‭
you scale them. They will not change their size.‬
‭
●‬ ‭
Relative Rotation:‬‭
When blocks are rotated, they will‬‭
rotate their X-axis‬
‭
and Y-axis as well. Turning this option on draws a new X-axis and Y-axis and‬
‭
puts it at the correct place. In the example below, the blocks are rotated 45‬
‭
degrees.‬
‭
●‬ ‭
Relative Scale:‬‭
This option makes the scale value‬‭
adjust based on a‬
‭
reference object. Normally, if you scale an object down by 0.95 for example,‬
‭
each scale will be smaller and smaller. With this option enabled, the scale‬
‭
will instead refer to the object in the Center Group ID to decide what the‬
‭
next scale factor should be.‬
‭
Follow‬
‭
This Trigger is used to make objects mimic the movement of other objects. All‬
‭
options are explained below.‬
‭
●‬ ‭
Target Group ID:‬‭
The objects you want to follow another‬‭
Group ID.‬
‭
74‬
‭
●‬ ‭
Follow Group ID:‬‭
The Group ID that should be followed. This Group ID can‬
‭
only consist of a single object.‬
‭
●‬ ‭
Move Time:‬‭
How long you want the objects to follow‬‭
the Group ID.‬
‭
●‬ ‭
X/Y Mod:‬‭
The values you put here will be multiplied‬‭
with the movement of‬
‭
the "Follow Group ID". For example, if the "Follow Group ID" moves 50‬
‭
blocks to the right, and you put 0.5 in "X Mod", the objects move 25 blocks‬
‭
to the right instead of 50.‬
‭
Shake‬
‭
The Shake Trigger applies a temporary shake effect to the screen. Be careful‬
‭
to not overuse this Trigger or input large numbers into the options, as it may‬
‭
result in a bad experience for players. The options are explained below.‬
‭
●‬ ‭
Strength:‬‭
How intense the shake effect is.‬
‭
●‬ ‭
Interval:‬‭
The interval between every shake effect.‬‭
Leaving this value at 0‬
‭
results in the screen shaking every frame.‬
‭
●‬ ‭
Duration:‬‭
How long the shake effect is applied to‬‭
the screen.‬
‭
Animate‬
‭
The Animate Trigger is used to give custom animations to Monsters, and it‬
‭
can also be used to activate the animation of‬‭
Animated‬‭
Objects‬
‭
.‬
‭
●‬ ‭
Group ID:‬‭
The Group ID of the objects you want to‬‭
animate or change the‬
‭
animation of.‬
‭
●‬ ‭
Animation ID:‬‭
Only used for Monsters. Check the information‬‭
box in-game‬
‭
to get information about what "Animation ID" refers to what monster.‬
‭
75‬
‭
Keyframe Animation‬
‭
This Trigger is used to activate a keyframe animation. You can find all settings‬
‭
below, as well as a detailed example of its usage in the‬‭
Keyframe System‬
‭
chapter.‬
‭
●‬ ‭
Animation Group ID:‬‭
Group ID of your‬‭
Keyframe Triggers‬
‭
.‬‭
It is enough for‬
‭
the first Keyframe Trigger in your animation to have this Group ID.‬
‭
●‬ ‭
Target ID:‬‭
The objects you want to follow the animation.‬
‭
●‬ ‭
Parent ID:‬‭
The Group ID that should be used as the‬‭
center for scaling and‬
‭
rotating. By default objects will choose their own center. You can also set‬
‭
the center of the objects using the "Group Parent ID".‬
‭
●‬ ‭
Time/Position/Rotation/Scale Mod:‬‭
The values you put‬‭
here will be‬
‭
multiplied with the movement of the keyframes. For example, if the‬
‭
keyframes move 50 blocks to the right, rotate 90 degrees, and scale to‬
‭
4.00, and you put 0.5 for all modifiers, the target objects will only move 25‬
‭
blocks, rotate 45 degrees, and scale to 2.00.‬
‭
Follow Player Y‬
‭
Follow Player Y Triggers are used to make objects follow the Y movement of‬
‭
the player. The movement can be modified by using the different options‬
‭
explained below.‬
‭
●‬ ‭
Target Group ID:‬‭
The objects you want to follow the‬‭
player's Y movement.‬
‭
●‬ ‭
Move Time:‬‭
How long you want the objects to follow‬‭
the player's Y‬
‭
movement.‬
‭
●‬ ‭
Speed:‬‭
Modifies the speed the object has when following‬‭
the movement‬
‭
of the player. The value you put here will be multiplied with the player‬
‭
movement. For example, if the player moves 5 blocks per second and you‬
‭
put 0.5, the objects will move 2.5 blocks per second.‬
‭
76‬
‭
●‬ ‭
Delay:‬‭
Delay before the objects follow the movement.‬
‭
●‬ ‭
Offset:‬‭
Offsets the objects. Normally the objects‬‭
will snap to the exact Y‬
‭
position. A value of 10 is equal to one block offset above the player. Enter a‬
‭
negative value to offset below the player.‬
‭
●‬ ‭
Max Speed:‬‭
The maximum speed the objects can reach‬‭
when following‬
‭
the movement. The formula used to calculate the speed is (Max‬
‭
Speed/(Max Speed + 1)). Thus, if you put 5.0 for "Max Speed", for example,‬
‭
the objects will do 5/6 of the movement the player did in the same time.‬
‭
Advanced Follow‬
‭
Advanced Follow Triggers are used to make objects move towards a target‬
‭
and make them follow its movement. They are by far one of the most‬
‭
complex Triggers in the game. We highly suggest you follow along on your‬
‭
own example when testing out the options.‬
‭
77‬
‭
●‬ ‭
Target GID:‬‭
The Group ID of the objects that should go towards the Group‬
‭
ID set in "Follow GID".‬
‭
●‬ ‭
Follow GID:‬‭
The Group ID of the object that should‬‭
be the new target. You‬
‭
can choose from the buttons below for more options.‬
‭
●‬ ‭
Priority:‬‭
The priority at which the movements will‬‭
be applied if an object is‬
‭
affected by more than one Advanced Follow Trigger.‬
‭
●‬ ‭
X/Y Only:‬‭
The objects will only follow the X or Y‬‭
movement of the Group ID‬
‭
in "Follow GID" respectively.‬
‭
●‬ ‭
P1/P2/C:‬‭
Corresponds to Player 1, Player 2, and the‬‭
screen center‬
‭
respectively.‬
‭
●‬ ‭
Rotation Offset:‬‭
Offsets the rotation of the objects.‬‭
Enter a negative value‬
‭
to offset the rotation to the left or a positive value to offset the rotation to‬
‭
the right.‬
‭
●‬ ‭
Ignore Disabled:‬‭
The movement is not applied if the‬‭
objects are not‬
‭
active. Activating them again starts the movement.‬
‭
●‬ ‭
Rotate Dir:‬‭
Makes the objects rotate towards the target.‬
‭
●‬ ‭
Rotate Easing:‬‭
Adds easing to the rotation of the‬‭
objects.‬
‭
●‬ ‭
Rotate DeadZ:‬‭
A deadzone for the rotation of the objects.‬
‭
●‬ ‭
Init:‬‭
This option is used for the second and third‬‭
mode, and controls how‬
‭
the values you define in "Startspeed" and "StartDir" are applied. With this‬
‭
option, the values are used only when the object has no speed values.‬
‭
●‬ ‭
Set:‬‭
This option is used for the second and third‬‭
mode, and controls how‬
‭
the values you define in "Startspeed" and "StartDir" are applied. With this‬
‭
option, any current velocity gets overridden.‬
‭
●‬ ‭
Add:‬‭
This option is used for the second and third‬‭
mode, and controls how‬
‭
the values you define in "Startspeed" and "StartDir" are applied. With this‬
‭
option, the velocity gets added to the current one.‬
‭
●‬ ‭
Exclusive:‬‭
Advanced Follow Triggers have a "Priority"‬‭
value. When multiple‬
‭
Advanced Follow Triggers for the same object are active, it will process‬
‭
78‬
‭
them in order based on "Priority". If an action is exclusive, it will not process‬
‭
any other actions after it.‬
‭
On the second page you can choose between 3 different modes by using the‬
‭
three buttons labeled 1, 2, and 3 in the top right. We will be going through all‬
‭
options and what their differences are.‬
‭
The "+-" sliders on all options indicate variance. For example, if you input a‬
‭
"Delay" of 3 and enter 2 into the "+-" field, the "Delay" will randomly be chosen‬
‭
in a range of 2 below and above. As a result, you get 1 to 5 "Delay".‬
‭
In the first mode, the objects will simply move towards the target.‬
‭
●‬ ‭
Delay:‬‭
Delay before the movement starts.‬
‭
●‬ ‭
MaxSpeed:‬‭
Max speed the objects can reach. Leaving‬‭
this at 0 results in no‬
‭
movement at all.‬
‭
●‬ ‭
MaxRange:‬‭
Range in which the "Follow GID" has to be‬‭
to the "Target GID"‬
‭
to start the movement. One block is equal to 30.‬
‭
79‬
‭
●‬ ‭
Easing:‬‭
Adds an easing to the start and end of the movement.‬
‭
In the second mode, the objects will also move towards the target. However,‬
‭
you have more options to customize the movement depending on how close‬
‭
the objects are to the target.‬
‭
●‬ ‭
Delay:‬‭
Delay before the movement starts.‬
‭
●‬ ‭
MaxSpeed:‬‭
Max speed the objects can reach. Leaving‬‭
this at 0 results in no‬
‭
movement at all.‬
‭
●‬ ‭
MaxRange:‬‭
Range in which the "Follow GID" has to be‬‭
to the "Target GID"‬
‭
to start the movement. One block is equal to 30.‬
‭
●‬ ‭
StartSpeed:‬‭
The speed the objects have when they start‬‭
their movement.‬
‭
●‬ ‭
StartDir:‬‭
The direction the objects face when they‬‭
start their movement,‬
‭
with 0 meaning up, 90 right, and so on.‬
‭
●‬ ‭
Acceleration:‬‭
The acceleration of the objects.‬
‭
●‬ ‭
Friction:‬‭
The friction that is applied to the objects.‬
‭
●‬ ‭
NearDist:‬‭
At what distance the objects are considered‬‭
near the target. One‬
‭
block is equal to 30.‬
‭
80‬
‭
●‬ ‭
NearFriction:‬‭
The friction of the objects when they get near the target.‬
‭
What counts as near is configured by the "NearDist" value.‬
‭
●‬ ‭
NearAccel:‬‭
The acceleration of the objects when they‬‭
get near the target.‬
‭
What counts as near is configured by the "NearDist" value.‬
‭
The three boxes on the right correspond to their respective options. They‬
‭
apply their setting towards a set reference object. "MaxRange" will be drawn‬
‭
from the objects to the reference object. "StartSpeed" functions like a‬
‭
multiplier in this setting. It will copy the movement speed of the reference‬
‭
object. By inputting a 2 in the slider, you double the speed. "StartDir" makes‬
‭
the objects face towards the reference object.‬
‭
In the third mode the objects will also move towards the target. However, you‬
‭
can also edit more attributes of the movement.‬
‭
81‬
‭
●‬ ‭
Delay:‬‭
Delay before the movement starts.‬
‭
●‬ ‭
MaxSpeed:‬‭
Max speed the objects can reach. Leaving‬‭
this at 0 results in no‬
‭
movement at all.‬
‭
●‬ ‭
MaxRange:‬‭
Range in which the "Follow GID" has to be‬‭
to the "Target GID"‬
‭
to start the movement. One block is equal to 30.‬
‭
●‬ ‭
StartSpeed:‬‭
The speed the objects have when they start‬‭
their movement.‬
‭
●‬ ‭
StartDir:‬‭
The direction the objects face when they‬‭
start their movement,‬
‭
with 0 meaning up, 90 right and so on.‬
‭
●‬ ‭
Acceleration:‬‭
The acceleration of the objects.‬
‭
●‬ ‭
SteerForce:‬‭
The force that is applied when the objects‬‭
steer towards the‬
‭
target.‬
‭
82‬
‭
The three boxes on the right correspond to their respective options. They‬
‭
apply their setting towards a reference object. "MaxRange" will be drawn from‬
‭
the objects to the reference object. Secondly, "StartSpeed" functions like a‬
‭
multiplier in this setting. It will copy the movement speed of the reference‬
‭
object. For example, by inputting "2" in the slider, you double the speed.‬
‭
Lastly, "StartDir" makes the objects face towards the reference object.‬
‭
●‬ ‭
SteerForceLow:‬‭
The lowest the steer force can get.‬
‭
●‬ ‭
SpeedRangeLow:‬‭
The speed of the objects when they‬‭
are not within the‬
‭
"MaxRange".‬
‭
●‬ ‭
SteerForceHigh:‬‭
The highest the steer force can get.‬
‭
●‬ ‭
SpeedRangeHigh:‬‭
The speed of the objects when they‬‭
are within the‬
‭
"MaxRange".‬
‭
●‬ ‭
SlowAccel:‬‭
The acceleration of the objects when in‬‭
the "SlowDist" distance‬
‭
from the target object.‬
‭
●‬ ‭
SlowDist:‬‭
The distance from the target object that‬‭
is considered slow,‬
‭
which applies the "SlowAccel" setting. One block is equal to 30.‬
‭
●‬ ‭
BreakForce:‬‭
The force at which the objects brake when‬‭
the target‬
‭
suddenly goes in a different direction.‬
‭
●‬ ‭
BreakAngle:‬‭
The angle at which the objects will brake.‬
‭
●‬ ‭
BreakSteerForce:‬‭
The force at which the objects steer‬‭
while braking.‬
‭
●‬ ‭
BreakSteer SpeedLimit:‬‭
The max speed at which the‬‭
objects can steer‬
‭
while braking.‬
‭
●‬ ‭
Target Dir:‬‭
The objects move in the direction of target.‬
‭
The checkboxes next to "SteerForceLow" and "SteerForceHigh" enable low‬
‭
and high speed modes respectively. As a last note for this Trigger, you can‬
‭
select from two premade settings by clicking the "Pre" button on the first‬
‭
page.‬
‭
83‬
‭
Edit Advanced Follow‬
‭
This Trigger is used to edit the attributes of an Advanced Follow Trigger. An‬
‭
explanation of all options can be found below.‬
‭
●‬ ‭
Target GID:‬‭
The Group ID of the objects that should‬‭
go towards the‬
‭
"Follow GID".‬
‭
●‬ ‭
X/Y Only:‬‭
The objects will only apply the change on‬‭
the X or Y movement‬
‭
respectively.‬
‭
●‬ ‭
Mod X/Y:‬‭
Modifies the movement on the X-axis and Y-axis‬‭
respectively.‬
‭
●‬ ‭
Speed:‬‭
Modifies the speed of the objects.‬
‭
●‬ ‭
Dir:‬‭
Modifies the direction at which the movement‬‭
is applied.‬
‭
●‬ ‭
Target Control ID:‬‭
Control ID allows you to only target‬‭
a specific Group ID‬
‭
when using remapping. For example, if you remap a‬‭
Spawn Trigger‬‭
to use‬
‭
Group ID 1, 2, and 3, and you only want to target Group ID 3, you can enter‬
‭
a Control ID and enable the option in the Trigger. You can find the Control‬
‭
ID option in the "Extra 2" category after clicking "Edit Group" with the‬
‭
Trigger selected.‬
‭
●‬ ‭
Redirect Dir:‬‭
Redirects the direction towards a reference‬‭
object, which is‬
‭
input in the box to the right.‬
‭
The two boxes on the right correspond to their respective options. They apply‬
‭
their setting towards a reference object. "Speed" functions like a multiplier in‬
‭
this setting. It will copy the movement speed of the reference object. By‬
‭
inputting a 2 in the slider, you double the speed. "Dir" will apply the‬
‭
movement towards the direction of the reference object.‬
‭
84‬
‭
Re-Target Advanced Follow‬
‭
This Trigger is used to change the target of an Advanced Follow Trigger.‬
‭
●‬ ‭
Target GID:‬‭
The Group ID of the objects that should‬‭
go towards the Group‬
‭
ID set in "Follow GID".‬
‭
●‬ ‭
Follow GID:‬‭
The Group ID of the object that should‬‭
be the new target. You‬
‭
can choose from the buttons below for more options.‬
‭
●‬ ‭
Target Control ID:‬‭
Control ID allows you to only target‬‭
a specific Group ID‬
‭
when using remapping. For example, if you remap a‬‭
Spawn Trigger‬‭
to use‬
‭
Group ID 1, 2, and 3, and you only want to target Group ID 3, you can enter‬
‭
a Control ID and enable the option in the Trigger. You can find the Control‬
‭
ID option in the "Extra 2" category after clicking "Edit Group" with the‬
‭
Trigger selected.‬
‭
●‬ ‭
P1/P2/C:‬‭
Corresponds to Player 1, Player 2, and the‬‭
screen center‬
‭
respectively.‬
‭
Keyframe‬
‭
This Trigger is used to set up keyframes. You can find an explanation of all‬
‭
settings below, as well as an in-depth example in the‬‭
Keyframe System‬
‭
chapter.‬
‭
The Keyframe Trigger is one of the most complex Triggers. We suggest‬
‭
following along with your own example when testing the options.‬
‭
85‬
‭
●‬ ‭
GroupID:‬‭
The objects you want to reference for your‬‭
animation. Note that‬
‭
these are not necessarily the objects that will do the animation. Those‬
‭
objects are normally set in the Keyframe Animation Trigger. "GroupID" in‬
‭
this Trigger is mainly used for referencing the art when you enable‬
‭
"Preview Art". However, it is also used as the target if you do not input any‬
‭
override when calling the Keyframe Animation Trigger.‬
‭
●‬ ‭
Duration:‬‭
The duration until the Keyframe Trigger‬‭
reaches the next one.‬
‭
This time is always used unless it is a "Ref Only" Keyframe. "Time", "Even"‬
‭
and "Dist" set how the time is used.‬
‭
●‬ ‭
Easing:‬‭
Applies easing to the start and end of the‬‭
keyframe.‬
‭
●‬ ‭
x360:‬‭
If you want to do a full rotation (360 degrees)‬‭
before reaching the‬
‭
next keyframe.‬
‭
●‬ ‭
CCW/CW:‬‭
Whether you want the rotation to be done clockwise‬‭
or‬
‭
counter-clockwise. Applies to all rotations, including full ones.‬
‭
86‬
‭
●‬ ‭
SpawnGID:‬‭
Spawns a Group ID when the target objects reach the‬
‭
keyframe.‬
‭
●‬ ‭
SpawnDelay:‬‭
Delay before "SpawnGID" is spawned.‬
‭
●‬ ‭
Prox:‬‭
"SpawnGID" is spawned when the target objects‬‭
are close to the‬
‭
keyframe.‬
‭
●‬ ‭
Curve:‬‭
Keyframes use Bézier curve to get to the next‬‭
keyframe.‬
‭
●‬ ‭
Time:‬‭
With this option enabled, "Duration" is used‬‭
to reach the next‬
‭
keyframe.‬
‭
●‬ ‭
Even:‬‭
The time between the keyframes is distributed‬‭
evenly between all‬
‭
the "Ref Only" keyframes in between.‬
‭
●‬ ‭
Dist:‬‭
The duration before reaching the next keyframe‬‭
is distributed‬
‭
between all "Ref Only" keyframes based on their distance from each other.‬
‭
Let us look at an example to better understand how the different options‬
‭
work.‬
‭
87‬
‭
The red Keyframe Triggers are marked as "Ref Only", while the green and blue‬
‭
ones are not. The green keyframe controls the animation until the blue one,‬
‭
and the blue one controls it until the end. If you set easing on the green‬
‭
keyframe, that easing will be used to reach the blue keyframe. All red easing‬
‭
values are ignored since they are reference points only.‬
‭
The numbers in the figure are example durations set on the Triggers. If you‬
‭
select "Time" on the green Keyframe Trigger, it will take 10 seconds to reach‬
‭
the next red keyframe. Afterwards, the red keyframe's duration will be used to‬
‭
reach the next one, so 5 seconds, and then 7 seconds from the next until you‬
‭
reach the blue keyframe. As a result, it takes 22 seconds in total to reach the‬
‭
blue one.‬
‭
If you instead select "Even" on the green keyframe, it will ignore all the‬
‭
duration values of the red (reference) keyframes, and evenly spread out the 10‬
‭
seconds between each keyframes. As a result, it will take 10 seconds in total to‬
‭
reach the blue one.‬
‭
●‬ ‭
Close Loop:‬‭
The objects return back to the first keyframe‬‭
after completing‬
‭
the last one.‬
‭
●‬ ‭
Preview Art:‬‭
Used to preview the art you want to animate.‬‭
By default, you‬
‭
only see the arrow icon. For this option to work, you have to put a Group ID‬
‭
and also declare a Group Parent ID. With this option enabled, the objects‬
‭
will spawn at the arrow position, with the Group Parent ID functioning like‬
‭
the arrow icon.‬
‭
88‬
‭
●‬ ‭
Ref Only:‬‭
Reference objects. Objects marked as reference‬‭
have a lower‬
‭
opacity and are not considered for the "Even" and "Dist" options. Check the‬
‭
corresponding options to see how their movement is handled.‬
‭
●‬ ‭
Auto Layer:‬‭
Automatically layers the keyframes, so‬‭
that the new one is the‬
‭
highest. Most useful when using "Preview Art".‬
‭
●‬ ‭
Select All:‬‭
Selects all keyframes.‬
‭
●‬ ‭
Update Art:‬‭
Updates the art for the "Preview Art"‬‭
option. Changes done to‬
‭
the reference Group ID are not updated instantly, so you need to press this‬
‭
if you change your design.‬
‭
●‬ ‭
Dup Anim:‬‭
Duplicates the keyframes. You cannot copy‬‭
and paste them‬
‭
like normal, since the copy would be considered connected in that case.‬
‭
●‬ ‭
Reverse Order:‬‭
Reverses the keyframe settings. For‬‭
example, instead of‬
‭
scaling by 2 and moving 5 blocks to the right, it will scale by 0.5 and move 5‬
‭
blocks to the left.‬
‭
89‬
‭
Area Move/Rotate/Scale/Fade/Tint‬
‭
Area Triggers are used to apply different effects to an area of objects. Due to‬
‭
many Area Triggers having the same settings, we will be explaining their‬
‭
general options first and provide specific ones below. Note that Area Triggers‬
‭
are on the more complicated side. Follow along with your own example.‬
‭
Area Triggers work by taking the center you provide, drawing a circle around‬
‭
the center (or a specific direction depending on what you pick below the‬
‭
"Deadzone" option). This is done using the length you provide and calculating‬
‭
the steps in between. For example, if you have "From Opacity" at 1.00 and "To‬
‭
Opacity" at 0.50, the center will be shown as 1.00 opacity, and the borders will‬
‭
be at 0.50 opacity. All other steps in between will be calculated gradually. For‬
‭
example, right in the middle ("Length"/2), the opacity will be (1.00 + 0.50)/2 =‬
‭
0.75.‬
‭
●‬ ‭
Length:‬‭
Length in which objects will be affected.‬
‭
●‬ ‭
Offset:‬‭
Offsets the center position in the X direction.‬‭
The "+/-" is how off it‬
‭
can go. For example, "Offset" at 40 with "+/-" at 10 would offset the center‬
‭
between 3 and 5 blocks.‬
‭
●‬ ‭
Offset Y:‬‭
Offsets the center position in the Y direction.‬‭
The "+/-" is how off it‬
‭
can go. For example, "Offset" at 40 with "+/-" at 10 would offset the center‬
‭
between 3 and 5 blocks.‬
‭
●‬ ‭
Deadzone:‬‭
Divides the length by the value you set‬‭
here and changes the‬
‭
transition between center and edge accordingly. For example, having a‬
‭
length of 40 and setting a "Deadzone" of 0.5 would do 0 to 100% between 0‬
‭
and 20, and stay 100% from 20-40.‬
‭
90‬
‭
●‬ ‭
ModFront/ModBack:‬‭
Modify the front and back of your‬‭
center position.‬
‭
The value you put here is multiplied with your center.‬
‭
●‬ ‭
Ignore Linked:‬‭
Objects linked together will be seen‬‭
as one object by‬
‭
default. Enabling this option disables this behavior and makes the objects‬
‭
behave as if they are not linked. Note that you have to set an object as‬
‭
Group Parent or Area Parent for this to work.‬
‭
●‬ ‭
Ignore GParent:‬‭
If you set a Group Parent ID it will‬‭
be seen as the center of‬
‭
your objects, and all objects will behave exactly like that one. The action‬
‭
also only starts when you are within this object's range. Enabling this‬
‭
option disables the Group Parent ID and makes all blocks behave as if they‬
‭
do not have a Group Parent ID.‬
‭
●‬ ‭
DE AP:‬‭
Stands for "Don't Edit AreaParent". The object‬‭
that is set as Group‬
‭
Parent ID will not perform any of the area actions.‬
‭
●‬ ‭
Easing:‬‭
The easing the objects have when they start‬‭
their action.‬
‭
91‬
‭
●‬ ‭
Ease Out:‬‭
Allows modifying the easing the objects have when they end‬
‭
their action.‬
‭
●‬ ‭
Priority:‬‭
If several Area Triggers of the same kind‬‭
are active at once, the‬
‭
one with the higher priority will perform its action.‬
‭
●‬ ‭
Effect ID:‬‭
Specific ID that can be referenced later,‬‭
for example in‬‭
Edit Area‬
‭
Triggers‬
‭
.‬
‭
●‬ ‭
P1:‬‭
Player 1.‬
‭
●‬ ‭
P2:‬‭
Player 2.‬
‭
●‬ ‭
C:‬‭
Center of the screen.‬
‭
●‬ ‭
BL:‬‭
Bottom left of the screen.‬
‭
●‬ ‭
CL:‬‭
Left of the screen from the center.‬
‭
●‬ ‭
TL:‬‭
Top left of the screen.‬
‭
92‬
‭
●‬ ‭
BC:‬‭
Bottom of the screen from the center.‬
‭
●‬ ‭
TC:‬‭
Top of the screen from the center.‬
‭
●‬ ‭
BR:‬‭
Bottom right of the screen.‬
‭
●‬ ‭
CR:‬‭
Right of the screen from the center.‬
‭
●‬ ‭
TR:‬‭
Top right of the screen.‬
‭
The buttons below the "Deadzone" option indicate what direction the length‬
‭
will be drawn. Here’s a table of all the variations and what their range looks‬
‭
like.‬
‭
93‬
‭
Table 7.1: Direction settings.‬
‭
94‬
‭
95‬
‭
96‬
‭
For Area Move, we have these unique settings:‬
‭
●‬ ‭
MoveDist:‬‭
Distance the objects move.‬
‭
●‬ ‭
MoveAngle:‬‭
Angle in which objects move. 0 is up, 90‬‭
right, 180 down, 270‬
‭
left, and so on.‬
‭
●‬ ‭
Relative:‬‭
Moves away in angle depending on where the‬‭
center is. If the‬
‭
center is above the object, it will move down. If it is to the right, it will move‬
‭
left, and so on.‬
‭
●‬ ‭
RFade:‬‭
Fade when using "Relative". Basically distance‬‭
ratio between‬
‭
objects. 0 means a big gap, and the higher the number the smaller the‬
‭
gap ratio.‬
‭
●‬ ‭
XY Mode:‬‭
You can enter X and Y values like in the‬‭
normal‬‭
Move Trigger‬
‭
instead of choosing a direction.‬
‭
97‬
‭
For Area Rotate, we have these unique settings:‬
‭
●‬ ‭
Rotation:‬‭
The degrees you want the objects to rotate.‬‭
Enter a positive‬
‭
value to rotate clockwise, and a negative value to rotate counter-clockwise.‬
‭
For Area Scale, we have these unique settings:‬
‭
●‬ ‭
ScaleX/ScaleY:‬‭
The size the objects scale in the X-axis‬‭
and Y-axis‬
‭
respectively.‬
‭
For Area Fade, we have these unique settings:‬
‭
●‬ ‭
From Opacity:‬‭
The opacity the objects closest to the‬‭
center have.‬
‭
●‬ ‭
To Opacity:‬‭
The opacity the objects furthest from‬‭
the center have.‬
‭
For Area Tint, we have these unique settings:‬
‭
●‬ ‭
Color Channel:‬‭
The color you want to tint the objects‬‭
in.‬
‭
●‬ ‭
%:‬‭
The percentage you want to tint the color. For‬‭
example, if you want to‬
‭
tint a black object white and set "%" to 0.5, the object will turn gray.‬
‭
●‬ ‭
Main/Secondary Only:‬‭
Some objects have a Base Color‬‭
and Detail Color,‬
‭
which is seen in the "Edit Object" menu. These options only change the‬
‭
these colors respectively.‬
‭
●‬ ‭
HSV:‬‭
Instead of tinting the color of a different Color‬‭
Channel, you can‬
‭
simply tint the same Color Channel and change the "HSV" values of it.‬
‭
98‬
‭
Edit Area Move/Rotate/Scale/Fade/Tint‬
‭
Edit Area Triggers change the values of Area Triggers. Due to all options being‬
‭
the same, you can check the section above to find detailed information about‬
‭
all settings. Edit Area Triggers have the option to use Effect IDs to reference‬
‭
Area Triggers. The Effect ID can be configured within the Area Triggers.‬
‭
Area Stop‬
‭
Area Stop Triggers stops Area Triggers. Area Stop Triggers can only reference‬
‭
the Effect ID, which is configured in the Area Triggers.‬
‭
Change BG/G/MG‬
‭
These Triggers change the Background, Ground or Middleground‬
‭
respectively. Pick a Background, Ground, or Middleground from the menu to‬
‭
switch to the respective one from this Trigger's activation.‬
‭
Touch‬
‭
Touch Triggers are used to enable or disable a Group ID upon player touch.‬
‭
Touch Triggers also function as‬‭
Spawn Triggers‬
‭
, meaning‬‭
that they can spawn‬
‭
other Triggers. By default, the Touch Triggers switch between disabling and‬
‭
enabling an object on player touch. It is worth noting, that moving left and‬
‭
right also count as a player touch in Platformer, despite the player not‬
‭
jumping.‬
‭
●‬ ‭
Group ID:‬‭
The Group ID you want to enable, disable,‬‭
or spawn.‬
‭
●‬ ‭
Hold Mode:‬‭
Changes to enable the Group ID while the‬‭
player holds, and‬
‭
disabling when the player releases. By default the Touch Triggers switch‬
‭
between disabling and enabling an object on player touch.‬
‭
●‬ ‭
Dual Mode:‬‭
This is an obsolete option from 2.1, which‬‭
disables counting‬
‭
inputs from player 2. Avoid using this option and use "P1/P2 Only" instead.‬
‭
99‬
‭
●‬ ‭
P1/P2 Only:‬‭
Only counts touches from one player instead of both.‬
‭
●‬ ‭
Toggle On/Off:‬‭
Toggles a Group ID on or off when the‬‭
player touches. For‬
‭
example, if you enable "Hold Mode" and "Toggle Off", holding will disable‬
‭
the object and releasing will enable it. If you want to spawn a Group ID on‬
‭
player touch, you should enable the "Toggle On" option.‬
‭
Count‬
‭
Count Triggers are used to enable, disable, or spawn a Group ID when an Item‬
‭
ID reaches a specific number. Count IDs can be activated at any time when‬
‭
that number is reached, as opposed to‬‭
Instant Count‬‭
Triggers‬‭
which only‬
‭
check if the condition is met when the Trigger is hit.‬
‭
●‬ ‭
Item ID:‬‭
The Item ID you want to check the value for.‬‭
Place the "0" object‬
‭
and click "Edit Special" to configure a unique Item ID.‬
‭
●‬ ‭
Target Count:‬‭
The number the Item ID needs to have‬‭
to activate the‬
‭
Group ID.‬
‭
●‬ ‭
Target ID:‬‭
The Group ID which should be enabled, disabled,‬‭
or spawned‬
‭
when the Item ID reaches the "Target Count".‬
‭
●‬ ‭
Activate Group:‬‭
Enable this option to enable a Group‬‭
ID, or to spawn a‬
‭
Group ID. By default, the Group ID will be disabled when the count is‬
‭
reached. Reaching the count again does not reactivate the Group ID, and‬
‭
Triggers are only spawned if this option is enabled.‬
‭
●‬ ‭
Multi Activate:‬‭
Allows the Group ID to be enabled,‬‭
disabled, or spawned‬
‭
again when the "Target Count" is reached several times. By default, the‬
‭
action will only be performed once.‬
‭
100‬
‭
Instant Count‬
‭
Instant Count Triggers are used to enable, disable, or spawn a Group ID if an‬
‭
Item ID is equal, smaller, or larger than a specific number. Instant Count‬
‭
Triggers only check if the condition is met when they are hit and never again‬
‭
afterwards, as opposed to‬‭
Count Triggers‬‭
which check‬‭
for their condition‬
‭
constantly.‬
‭
●‬ ‭
Item ID:‬‭
The Item ID you want to check the value for.‬‭
Place the "0" object‬
‭
and click "Edit Special" to configure a unique Item ID.‬
‭
●‬ ‭
Target Count:‬‭
The number the Item ID needs to have‬‭
to activate the‬
‭
Group ID.‬
‭
●‬ ‭
Target ID:‬‭
The Group ID which should be enabled, disabled,‬‭
or spawned‬
‭
when the Item ID reaches the "Target Count".‬
‭
●‬ ‭
Activate Group:‬‭
Enable this option to enable a Group‬‭
ID, or to spawn a‬
‭
Group ID. By default, the Group ID will be disabled when the count is‬
‭
reached. Reaching the count again does not reactivate the Group ID, and‬
‭
Triggers are only spawned if this option is enabled.‬
‭
●‬ ‭
Equals/Larger/Smaller:‬‭
This option will trigger "Target‬‭
ID" if the Item ID is‬
‭
equal, larger, or smaller respectively when the Trigger is reached.‬
‭
Pickup‬
‭
Pickup Triggers can be used to change the values of Item IDs.‬
‭
●‬ ‭
Item ID:‬‭
The Item ID you want to check the value for.‬‭
Place the "0" object‬
‭
and click "Edit Special" to configure a unique Item ID.‬
‭
●‬ ‭
Count:‬‭
The number you want to increase the current‬‭
Item ID value by. By‬
‭
default, this will use addition. Check the options below for different‬
‭
arithmetics.‬
‭
101‬
‭
●‬ ‭
Override:‬‭
The Item ID value will override the current value with the new‬
‭
one instead of using addition.‬
‭
●‬ ‭
Multiply:‬‭
Multiplies the previous value with your‬‭
set modifier.‬
‭
●‬ ‭
Divide:‬‭
Divides the previous value with your set modifier.‬‭
Note that the‬
‭
Item ID will drop all numbers after the decimal point. For example,‬
‭
dividing a value of 5 by 2 will result in 2 instead of 2.5, since the 0.5 is‬
‭
dropped.‬
‭
Time‬
‭
Time Triggers function as an in-game Timer. In-game Timers use Item IDs to‬
‭
work.‬
‭
●‬ ‭
StartTime/StopTime:‬‭
The time you want the Timer to‬‭
start and stop at‬
‭
respectively. Note that you have to enable the checkbox to the right of‬
‭
"StopTime" for the time to actually stop. If "StopTime" is lower than‬
‭
"StartTime", "StopTime" will be ignored.‬
‭
●‬ ‭
ItemID:‬‭
The Item ID you want to use as a Timer. Place‬‭
the "0" object and‬
‭
click "Edit Special" to configure a unique Item ID. Note that you have to set‬
‭
the Item ID to "Time Counter" in the "Edit Special" page of the Item ID for‬
‭
this Trigger to work.‬
‭
●‬ ‭
TargetID:‬‭
The Group ID you want to spawn when "StopTime"‬‭
is hit. Note‬
‭
that you actually have to stop the time at the "StopTime" to enable the‬
‭
Group ID. In other words, you have to enable the checkbox to the right of‬
‭
the "StopTime" option.‬
‭
●‬ ‭
TimeMod:‬‭
Modifies the Timer. The number you input‬‭
here will be‬
‭
multiplied with the normal Timer, resulting in the time going quicker if the‬
‭
value is above 1 and slower if it is below 1.‬
‭
●‬ ‭
Ignore TimeWarp:‬‭
Using a‬‭
TimeWarp Trigger‬‭
will also‬‭
slow down or speed‬
‭
up the Timer. Enabling this option makes the time behave the same.‬
‭
102‬
‭
●‬ ‭
StartPaused:‬‭
The Timer will display your "StartTime", but it will not start‬
‭
until activated by a different Time Trigger or a‬‭
Time‬‭
Control Trigger‬
‭
.‬
‭
●‬ ‭
Dont Override:‬‭
Time Triggers with this option enabled‬‭
will only affect the‬
‭
Timer if it is at 0.00 or has the "StartPaused" option enabled. If the Timer is‬
‭
currently counting, the Triggers will not change the value.‬
‭
Time Event‬
‭
Time Event Triggers spawn a Group ID if a specific time is hit in the Timer.‬
‭
Unlike the "TargetID" in the‬‭
Time Trigger‬
‭
, the Timer‬‭
does not have to stop at‬
‭
this value to Trigger it.‬
‭
●‬ ‭
ItemID:‬‭
The Item ID you want to use as a Timer. Place‬‭
the "0" object and‬
‭
click "Edit Special" to configure a unique Item ID. Note that you have to set‬
‭
the Item ID to "Time Counter" in the "Edit Special" page of the Item ID for‬
‭
this Trigger to work.‬
‭
●‬ ‭
TargetID:‬‭
The Group ID you want to spawn when "TargetTime"‬‭
is hit.‬
‭
●‬ ‭
TargetTime:‬‭
The time at which you want to spawn "TargetID".‬
‭
●‬ ‭
Multi Activate:‬‭
The Triggers can spawn again if the‬‭
"TargetTime" is hit‬
‭
several times.‬
‭
Time Control‬
‭
Time Control Triggers can start and stop a Timer.‬
‭
●‬ ‭
ItemID:‬‭
The Item ID you want to use as a Timer. Place‬‭
the "0" object and‬
‭
click "Edit Special" to configure a unique Item ID. Note that you have to set‬
‭
the Item ID to "Time Counter" in the "Edit Special" page of the Item ID for‬
‭
this Trigger to work.‬
‭
103‬
‭
Item Edit‬
‭
This Trigger is used to edit an Item ID using two different Item IDs. You can do‬
‭
many different operations with these two Item IDs. Note that Item Edit‬
‭
Triggers are pretty complicated, so we suggest following along with your own‬
‭
example.‬
‭
●‬ ‭
ItemID1/ItemID2:‬‭
The Item IDs you want to use to do‬‭
operations. Note that‬
‭
depending on what option you have selected in the "Edit Special" menu in‬
‭
the Item Trigger, you have to select the respective option from the menu‬
‭
to the right of "ItemID1" and "ItemID2". For example, if "ItemID1" is a normal‬
‭
Item ID, and "ItemID2" is a Timer, you would select the "Item" and "Timer"‬
‭
options respectively. Place the "0" object and click "Edit Special" to‬
‭
configure a unique Item ID.‬
‭
●‬ ‭
Target ItemID:‬‭
The Item ID you want to edit. Note‬‭
that depending on what‬
‭
option you have selected in the "Edit Special" menu in the Item Trigger,‬
‭
you have to select the respective option from the menu to the right of‬
‭
"Target ItemID". Place the "0" object and click "Edit Special" to configure a‬
‭
unique Item ID.‬
‭
104‬
‭
●‬ ‭
Mod:‬‭
Modifies the value that "ItemID1" and "ItemID2" produce. Leaving this‬
‭
option at 1 will disable the third button, which is "•" in the picture below.‬
‭
The three buttons in figure 7.26 correspond to how the numbers interact with‬
‭
each other. We will explain what each one does, and then show some‬
‭
examples for better understanding.‬
‭
●‬ ‭
The first button decides how the new values interact with the "Target‬
‭
ItemID". If you set it to "=", the "Target ItemID" will use the new value. If you‬
‭
set it to "+", the value will be added to the current value of the "Target‬
‭
ItemID". Likewise, if you set it to "-", the value will be subtracted from the‬
‭
current value. If you set it to "•" instead, the current value will be multiplied‬
‭
with the value, while setting it to "/", divides the current value.‬
‭
●‬ ‭
The second button decides how "ItemID1" and "ItemID2" interact with each‬
‭
other to calculate the value. If you set it to "+", "ItemID1" will be added to‬
‭
"ItemID2". If you set it to "-", "ItemID2" will be subtracted from "ItemID1".‬
‭
Similarly, if you set it to "•", "ItemID1" and "ItemID2" are multiplied, and with‬
‭
"/", "ItemID1" will be divided by "ItemID2".‬
‭
●‬ ‭
The third button decides how the modifier interacts with the value that‬
‭
"ItemID1" and "ItemID2" create. If you set it to "•", the value will be‬
‭
multiplied with the modifier value. If you set it to "/", the value will be‬
‭
divided by the modifier value.‬
‭
105‬
‭
To the right of these, there are two empty, optional buttons (figure 7.25),‬
‭
which can be set to "N" or "A" for "neg" and "abs" respectively. In order, these‬
‭
negate or find the absolute value of the number. Absolute value essentially‬
‭
drops a negative sign and only uses positive values.‬
‭
For our example, "ItemID1" has the value 8, "ItemID2" has the value 5, and‬
‭
"Target ItemID" has the value 2. All values and operations are color coded for‬
‭
convenience. As you can see, we selected "+" in the first box. This means that‬
‭
the value will be added to the current value, indicated by the "I3 +" at the‬
‭
bottom. In the second box, we selected "-", which means "ItemID2" will be‬
‭
subtracted from "ItemID1", as indicated by "(I1 - I2)". Lastly, we set a modifier.‬
‭
We chose "/" in the third box, which means that our value will be divided by‬
‭
our modifier.‬
‭
106‬
‭
Let us replace the Item IDs with the values we chose to see what the result‬
‭
should be. (Note that this is edited and cannot be achieved in normal‬
‭
Geometry Dash.)‬
‭
Doing the calculations, we get I3 = 2 + 3/2 = 2 + 1.5, which cannot be‬
‭
represented due to how Geometry Dash rounds by default. Because of this,‬
‭
the .5 is dropped and we are left with 2 + 1. Now our equation is I3 = 2 + 1 = 3,‬
‭
which means the new value of our "Target ItemID" is 3.‬
‭
Dropping of .5 may not be ideal in all cases. Luckily, we can fix this with the‬
‭
"NA" buttons. The first "NA" button decides how the value you calculate is‬
‭
handled. To use our example, this button decides how decimals are handled‬
‭
for (8 - 5) / 2.000. The second "NA" decides how the new value is handled by‬
‭
the "Target ItemID", so I3 in our example. Here are all the options you can set‬
‭
and how they behave.‬
‭
●‬ ‭
NA:‬‭
The default way Geometry Dash handles the numbers.‬‭
Using this‬
‭
mode will drop all decimal points.‬
‭
●‬ ‭
RND:‬‭
Rounds the number to the closest integer. If‬‭
we take our example,‬
‭
3/2 = 1.5 would be rounded to 2, which would mean our answer would be 4‬
‭
instead of 3.‬
‭
●‬ ‭
FLR:‬‭
Stands for floor function, which means it will‬‭
always round down to‬
‭
the next lower integer. For example, 4/5 = 0.8 would be rounded down to 0.‬
‭
●‬ ‭
CEI:‬‭
Stands for ceiling function, which means it will‬‭
always round up to the‬
‭
next higher integer. For example 1/10 = 0.1 would be rounded up to 1.‬
‭
107‬
‭
Item Compare‬
‭
This Trigger is used to compare two Item IDs and spawn Group IDs‬
‭
depending on whether their condition is true or not. Item Compare Triggers‬
‭
are pretty complicated, so we suggest following along with your own‬
‭
example.‬
‭
●‬ ‭
ItemID1/ItemID2:‬‭
The Item IDs you want to compare‬‭
with each other. Note‬
‭
that depending on what option you have selected in the "Edit Special"‬
‭
menu in the Item Trigger, you have to select the respective option from‬
‭
the menu to the right of "ItemID1" and "ItemID2". For example, if "ItemID1"‬
‭
is a normal Item ID, and "ItemID2" is a Timer, you would select the "Item"‬
‭
and "Timer" options respectively. Place the "0" object and click "Edit‬
‭
Special" to configure a unique Item ID.‬
‭
●‬ ‭
Mod1/Mod2:‬‭
Modifiers for "ItemID1" and "ItemID2" respectively.‬‭
How the‬
‭
modifier interacts with the values can be changed with the "•" buttons,‬
‭
which is explained below.‬
‭
●‬ ‭
TrueID/FalseID:‬‭
The IDs that will be spawned if your‬‭
condition is true or‬
‭
false respectively.‬
‭
108‬
‭
●‬ ‭
Tol+-:‬‭
The tolerance. For example, if you set 0.5 here and "ItemID1" is 1,‬
‭
while "ItemID2" is 0.5, this would count as true despite "ItemID1" and‬
‭
"ItemID2" not being equal.‬
‭
The three buttons to the right decide how the values are compared, and how‬
‭
the modifiers interact with them. The first box decides the operation for‬
‭
"ItemID1" and "Mod1", the second box decides the operation for "ItemID2" and‬
‭
"Mod2", and the third box decides how the two values are compared to each‬
‭
other.‬
‭
For the first and second box, you can select the following options:‬
‭
●‬ ‭
"+" means that the corresponding modifier will be added to the Item ID‬
‭
value.‬
‭
●‬ ‭
"-" means that the corresponding modifier will be subtracted from the‬
‭
Item ID value.‬
‭
●‬ ‭
"•" means that the corresponding modifier will be multiplied with the Item‬
‭
ID value.‬
‭
●‬ ‭
"/" means that‬‭
the Item ID value will be divided by‬‭
the corresponding‬
‭
modifier.‬
‭
109‬
‭
For the third box, you can select the following options:‬
‭
●‬ ‭
"==" will return true if "ItemID1" is equal to "ItemID2".‬
‭
●‬ ‭
">" will return true if "ItemID1" is larger than "ItemID2".‬
‭
●‬ ‭
">=" will return true if "ItemID1" is larger than or equal to "ItemID2".‬
‭
●‬ ‭
"<" will return true if "ItemID1" is smaller than "ItemID2".‬
‭
●‬ ‭
"<=" will return true if "ItemID1" is smaller than or equal to "ItemID2".‬
‭
The first "NA" decides how the left side of the equation is handled, so‬
‭
"ItemID1" and "Mod1". The second "NA" decides how the right side of the‬
‭
equation is handled, so "ItemID2" and "Mod2". Here are all the options you can‬
‭
set and how they behave.‬
‭
●‬ ‭
NA:‬‭
The default way Geometry Dash handles the numbers.‬‭
Using this‬
‭
mode will drop all decimal points.‬
‭
●‬ ‭
RND:‬‭
Rounds the number to the closest integer. If‬‭
we take our example,‬
‭
3/2 = 1.5 would be rounded to 2, which would mean our answer would be 4‬
‭
instead of 3.‬
‭
●‬ ‭
FLR:‬‭
Stands for floor function, which means it will‬‭
always round down to‬
‭
the next lower integer. For example, 4/5 = 0.8 would be rounded down to 0.‬
‭
●‬ ‭
CEI:‬‭
Stands for ceiling function, which means it will‬‭
always round up to the‬
‭
next higher integer. For example 1/10 = 0.1 would be rounded up to 1.‬
‭
110‬
‭
Persistent Item‬
‭
This Trigger marks Item IDs as persistent. Persistent Item IDs do not get reset‬
‭
when you die. However, they are reset when you exit the level.‬
‭
●‬ ‭
Item ID:‬‭
The Item ID you want to mark as persistent.‬‭
Note that if your Item‬
‭
ID is a Timer, you have to select the "Timer" option to the right of "Item ID".‬
‭
●‬ ‭
Persistent:‬‭
Marks the ID as persistent, so the value‬‭
will not be reset upon‬
‭
death.‬
‭
●‬ ‭
TargetAll:‬‭
Targets all persistent Item IDs at once.‬
‭
●‬ ‭
Reset:‬‭
Resets the Item ID to 0.‬
‭
Random‬
‭
Randomly triggers one of two Group IDs.‬
‭
●‬ ‭
Group ID 1/2:‬‭
The two Group IDs that can be triggered.‬
‭
●‬ ‭
Chance %:‬‭
The chance that "Group ID 1" is triggered.‬‭
For example, if this is‬
‭
set to 80, "Group ID 1" has an 80% chance of being triggered, while "Group‬
‭
ID 2" has a chance of 100% - 80% = 20%.‬
‭
Advanced Random‬
‭
Randomly triggers one of up to 10 Group IDs.‬
‭
●‬ ‭
Group ID:‬‭
The Group ID you want to have a chance of‬‭
being triggered.‬
‭
●‬ ‭
Chance:‬‭
How likely it is for this Group ID to be triggered.‬‭
The way the odds‬
‭
are calculated is by multiplying the "Chance" value by 100, and then‬
‭
dividing it by the sum of all "Chance" values so far and the one you are‬
‭
about to add.‬
‭
111‬
‭
For example, if you add Group ID 1 with a "Chance" of 20, and then add Group‬
‭
ID 2 with a "Chance" of 50, the odds will be calculated as follows. "Chance" of‬
‭
Group ID 2, 50, is multiplied by 100, resulting in 5000. Afterwards, it is divided‬
‭
by both the "Chance" of Group ID 1 and 2, so 5000 / 70 ≈ 71%. This is the odds‬
‭
Group ID 2 will have, while Group ID 1 will have odds of (20 * 100) / 70 ≈ 29%. If‬
‭
you were to add Group ID 3 with "Chance" at 60, the odds would change to‬
‭
(20 * 100) / 130 ≈ 15% for Group ID 1, (50 * 100) / 130 ≈ 38% for Group ID 2, and‬
‭
(60 * 100) / 130 ≈ 46% for Group ID 3.‬
‭
Sequence‬
‭
The Sequence Trigger is used to spawn a sequence of Triggers. Every time the‬
‭
Trigger is triggered, it will advance one step further in the sequence.‬
‭
●‬ ‭
GroupID/Count:‬‭
The Group ID you want to spawn, with‬‭
"Count" being how‬
‭
often you want to spawn it.‬
‭
●‬ ‭
MinInt:‬‭
Minimum interval that has to pass before you‬‭
can activate the next‬
‭
step in the sequence.‬
‭
112‬
‭
●‬ ‭
Reset:‬‭
If set to 0, this option is ignored. If the Trigger is not triggered for‬
‭
the duration you input here, it will stop the sequence and start from the‬
‭
beginning again the next time you use it.‬
‭
●‬ ‭
Mode Stop:‬‭
The sequence stops once you reach the end.‬
‭
●‬ ‭
Mode Loop:‬‭
The sequence starts from the beginning‬‭
again after you reach‬
‭
the end.‬
‭
●‬ ‭
Mode Last:‬‭
The sequence will finish like normal, and‬‭
after hitting the‬
‭
Trigger again, only the last Group ID will be triggered every time.‬
‭
●‬ ‭
Reset Full:‬‭
If the Trigger has not been triggered‬‭
for the "Reset" time, the‬
‭
Trigger will return to the first Group ID in the sequence.‬
‭
●‬ ‭
Reset Step:‬‭
If the Trigger has not been triggered‬‭
for the "Reset" time, the‬
‭
sequence will go back to the Group ID before the current one.‬
‭
For example, let us say you have a sequence of Group IDs 1, 2, 3, and 4, and‬
‭
use "Reset Step" with a "Reset" time of 1 second. You trigger the first 4‬
‭
sequences. If you do not activate the Trigger for 1 second, it will trigger Group‬
‭
ID 3. If you do not activate the Trigger for 2 seconds, it will trigger Group ID 2.‬
‭
Spawn Particles‬
‭
Spawns particles upon activating the Trigger. Note that the particles you‬
‭
want to spawn cannot have an infinite duration, and that the Trigger will‬
‭
spawn the particles once on activation and not loop like normal.‬
‭
●‬ ‭
Particle Group:‬‭
Group ID of the particles you want‬‭
to spawn at the‬
‭
"Position Group". It can consist of multiple particles.‬
‭
●‬ ‭
Position Group:‬‭
Position at which the particles will‬‭
spawn. This Group ID‬
‭
can only consist of one object.‬
‭
113‬
‭
●‬ ‭
Offset X/Y:‬‭
Offsets the position the particles are spawned at relatives to‬
‭
"Position Group". A positive value adds an offset right and up respectively,‬
‭
and vice versa. Note that one block is equal to 30.‬
‭
●‬ ‭
OffVar X/Y:‬‭
Adds a variance for the particle target‬‭
position. This basically‬
‭
means that the particles will spawn in a random location within these‬
‭
boundaries. Note that one block is equal to 30, and that the value is drawn‬
‭
in both directions.‬
‭
●‬ ‭
Rotation:‬‭
Changes the rotation of the particles.‬
‭
●‬ ‭
Scale:‬‭
Changes the scale of the particles.‬
‭
●‬ ‭
Match Rot:‬‭
Makes the rotation of the spawned particles‬‭
match. Only‬
‭
useful when "Particle Group" contains multiple particles without rotation‬
‭
set in their own settings.‬
‭
Reset‬
‭
Resets‬‭
Collectables‬‭
and the checkpoint object. Objects‬‭
will appear again‬
‭
when this Trigger is activated and can be collected again.‬
‭
●‬ ‭
Group ID:‬‭
Group ID of the objects you want to reset.‬
‭
114‬
‭
Zoom‬
‭
Zooms the camera. The center point for the zoom is the camera center.‬
‭
●‬ ‭
Zoom:‬‭
The value you want to zoom to. If you want to‬‭
return to the default‬
‭
state, leave this value at 1.000.‬
‭
●‬ ‭
Time:‬‭
The duration in which the zoom should happen.‬
‭
●‬ ‭
Easing:‬‭
Easing options change the way the objects‬‭
start and end their‬
‭
movement.‬
‭
Static Camera‬
‭
Uses a Target Group ID as the center of the screen and locks to that object.‬
‭
●‬ ‭
Target Group ID:‬‭
The Group ID that should be seen‬‭
as the camera center.‬
‭
Can only consist of a single object.‬
‭
●‬ ‭
X/Y Only:‬‭
The camera only takes the object's X or‬‭
Y position as the camera‬
‭
X or Y center respectively.‬
‭
●‬ ‭
Follow:‬‭
Follows the movement of the object.‬
‭
●‬ ‭
Easing:‬‭
Adds an easing duration when following an‬‭
object.‬
‭
●‬ ‭
Smooth Velocity:‬‭
Reacts to player velocity and tries‬‭
to move the camera‬
‭
smoothly to where you want. The path is calculated by using a Bézier‬
‭
curve.‬
‭
●‬ ‭
Modifier:‬‭
Shifts the Bézier curve for the "Smooth‬‭
Velocity" option.‬
‭
●‬ ‭
Exit Static:‬‭
Exits the static mode and returns to‬‭
the default camera‬
‭
location.‬
‭
●‬ ‭
Exit Instant:‬‭
The camera instantly snaps back to the‬‭
default camera‬
‭
location when using "Exit Static".‬
‭
●‬ ‭
Duration:‬‭
The duration for the camera to reach the‬‭
object.‬
‭
115‬
‭
Camera Offset‬
‭
Offsets the camera center.‬
‭
●‬ ‭
Offset X:‬‭
Moves the camera center along the X-axis.‬‭
One block is equal to‬
‭
10. Input a positive number to move to the right, and input a negative one‬
‭
to move to the left.‬
‭
●‬ ‭
Offset Y:‬‭
Moves the camera center along the Y-axis.‬‭
One block is equal to‬
‭
10. Input a positive number to move up, and input a negative one to move‬
‭
down.‬
‭
●‬ ‭
Move Time:‬‭
The duration for the camera to finish offsetting.‬
‭
Gameplay Offset‬
‭
Changes the offset between the player and the camera center.‬
‭
●‬ ‭
Offset X/Y:‬‭
Similar to the same options for‬‭
Camera‬‭
Offset‬
‭
. 0 puts the‬
‭
player in the center of the screen.‬
‭
●‬ ‭
X/Y Only:‬‭
Limits change to the X-axis or Y-axis respectively.‬
‭
●‬ ‭
Dont Zoom:‬‭
Does not consider any zoom values when‬‭
applying offset.‬
‭
Camera Rotation‬
‭
Rotates the camera.‬
‭
●‬ ‭
Move Time:‬‭
How long it should take to reach the rotation.‬
‭
●‬ ‭
Degrees:‬‭
Rotation you want to have. Enter a positive‬‭
value to rotate‬
‭
clockwise, and enter a negative one to rotate counter-clockwise. Leave this‬
‭
at 0 to return to the default rotation.‬
‭
●‬ ‭
Easing:‬‭
Changes the way the objects start and end‬‭
their movement.‬
‭
116‬
‭
Camera Edge‬
‭
Sets edges for the camera. If the edge is within the current screen, it will‬
‭
either snap for the object to be at the edge or ignore it until the object is‬
‭
outside the screen, depending on the zoom level. The camera edge will adjust‬
‭
with the movement of the edge objects.‬
‭
●‬ ‭
Target ID:‬‭
The Group ID you want to set as the edge.‬‭
It can only consist of‬
‭
a single object.‬
‭
●‬ ‭
Left/Right/Up/Down:‬‭
Defines what kind of edge it is.‬‭
Enabling left would‬
‭
set the object as the left edge of the screen, while down would set it at the‬
‭
bottom edge of the screen, and so on.‬
‭
●‬ ‭
Unlock:‬‭
Press this button to return to the default‬‭
state. You can also just‬
‭
leave "Target ID" at 0.‬
‭
Camera Guide‬
‭
Does not serve any other purpose besides functioning as a guide to see the‬
‭
camera edges of different zooms. Can also be used as the "Target Group" for‬
‭
the‬‭
Static Camera Trigger‬‭
to always have a good understanding‬‭
of what the‬
‭
screen will look like.‬
‭
●‬ ‭
Zoom:‬‭
The zoom level you want to display. If you want‬‭
to return to the‬
‭
default state, leave this value at 1.000.‬
‭
●‬ ‭
Offset X:‬‭
Moves the outlines along the X-axis. One‬‭
block is equal to 30.‬
‭
Input a positive number to move to the right, and input a negative one to‬
‭
move to the left.‬
‭
●‬ ‭
Offset Y:‬‭
Moves the outlines along the Y-axis. One‬‭
block is equal to 10.‬
‭
Input a positive number to move up, and input a negative one to move‬
‭
down.‬
‭
117‬
‭
Reverse‬
‭
Reverses the player direction in Classic levels. Does not do anything in‬
‭
Platformer.‬
‭
Rotate Gameplay‬
‭
Rotates the gameplay (not the camera) in the direction the arrow points. The‬
‭
line that is below the arrow indicates the gravity.‬
‭
The Rotate Gameplay Trigger direction determines how the Channel’s‬
‭
Triggers are sorted. For example, if the Rotate Gameplay Trigger points up,‬
‭
Triggers with a smaller Y value are triggered first, and higher ones later. If the‬
‭
Trigger points right, Triggers with a smaller X value are triggered first and‬
‭
higher ones later, and so on. See‬‭
Channel System‬‭
for‬‭
more information.‬
‭
●‬ ‭
Keep Velocity:‬‭
Keeps the velocity the player has before‬‭
the gameplay‬
‭
rotation and smoothly transitions it to the new gravity. Results in smoother‬
‭
movement overall.‬
‭
●‬ ‭
Change Channel:‬‭
Changes the Channel to the number‬‭
you have entered‬
‭
in the number box at the bottom.‬
‭
●‬ ‭
Channel Only:‬‭
Only changes the Channel and does not‬‭
update the‬
‭
gameplay rotation.‬
‭
●‬ ‭
Instant Offset:‬‭
The camera updates instantly when‬‭
switching gameplay to‬
‭
the opposite direction.‬
‭
118‬
‭
Song‬
‭
Changes the song in the middle of a level.‬
‭
●‬ ‭
Channel:‬‭
There are 5 Channels on which a song can‬‭
play. Songs on‬
‭
different Channels will play simultaneously, while only one song can play‬
‭
on the same Channel. Note that Channels used for music are not the same‬
‭
as Color Channels or the ones mentioned for‬‭
Rotate‬‭
Gameplay Triggers‬
‭
.‬
‭
●‬ ‭
Start/End:‬‭
The time (in milliseconds) at which you‬‭
want the song to start‬
‭
and end.‬
‭
●‬ ‭
Fade In/Out:‬‭
The time (in milliseconds) at which the‬‭
song should fade in‬
‭
and out.‬
‭
●‬ ‭
Prep/Load Prep:‬‭
Setting a song time introduces some‬‭
delay depending‬
‭
on the seek time. If you need the song to sync precisely, you first have to‬
‭
"Prep" the Trigger, then "Load Prep" later. "Prep" overwrites any previous‬
‭
"Prep", so if you have multiple Song Triggers, you have to alternate‬
‭
between loading them. For example, "Prep" and "Load Prep" for the first,‬
‭
"Prep" and "Load Prep" for the second, and so on.‬
‭
Edit Song‬
‭
Edits attributes of a song, such as volume, speed and also allows for proximity‬
‭
options.‬
‭
●‬ ‭
Channel:‬‭
The Channel you want to edit the song of.‬
‭
●‬ ‭
Duration:‬‭
How long it should take for the song to‬‭
change to the new‬
‭
settings.‬
‭
●‬ ‭
Speed:‬‭
Changes the speed of the song. Note that you‬‭
have to enable the‬
‭
"Change Speed" button for the speed to actually change.‬
‭
●‬ ‭
Volume:‬‭
Changes the volume of the song. Note that‬‭
you have to enable‬
‭
the "Change Volume" button for the speed to actually change.‬
‭
119‬
‭
●‬ ‭
Stop/Stop Loop:‬‭
"Stop" stops the song entirely, while "Stop Loop" stops the‬
‭
looping of the song, so it will stop the next time it reaches the end.‬
‭
●‬ ‭
Group ID 1:‬‭
Used for proximity. This is the Group‬‭
ID where the distance‬
‭
should be drawn from.‬
‭
●‬ ‭
Group ID 2:‬‭
Used for proximity. This is the Group‬‭
ID the distance will be‬
‭
measured to. For example, if your "MinDist" is 60, the "VolNear" volume will‬
‭
be played when the Group ID is within 6 blocks of Group ID 1. Choosing‬
‭
"P1", "P2", or "Cam" from the buttons below turns Group ID 2 into Player 1,‬
‭
Player 2, or the camera center respectively.‬
‭
●‬ ‭
VolNear/VolMed/VolFar:‬‭
Volume near, medium, and far‬‭
away for‬
‭
proximity. "VolNear" means you are within the "MinDist" boundaries from‬
‭
Group ID 1, while "VolMed" refers to "Dist2" and "VolFar" to "Dist3".‬
‭
120‬
‭
●‬ ‭
MinDist/Dist2/Dist3:‬‭
Sets the boundaries for "VolNear", "VolMed", and‬
‭
"VolFar" respectively. Above is an example with "MinDist" set to 30 and‬
‭
both "Dist2" and "Dist3" set to 20. "MinDist" refers to the closest length and‬
‭
is drawn in red, while "Dist2" refers to the middle length and is drawn in‬
‭
green. Finally, "Dist3" refers to the furthest length and is drawn in blue. The‬
‭
distances stack with each other. For example, if your "MinDist" is 20 and‬
‭
your "Dist2" is 30, the "Dist2" circle will be drawn 5 blocks from the object in‬
‭
Group ID 1, and not 3 blocks.‬
‭
The various arrow buttons indicate how proximity is handled. Here are all‬
‭
options and how their sound is drawn. The distance options will be drawn‬
‭
from the Group ID 2 object (in this case Player 1) towards the arrow direction.‬
‭
In these examples, black is equal to the highest volume and gray is equal to‬
‭
the lowest.‬
‭
Table 7.2: Proximity buttons.‬
‭
121‬
‭
122‬
‭
123‬
‭
SFX‬
‭
You can choose a sound effect (SFX) to play from the menu in the top right of‬
‭
the first page.‬
‭
●‬ ‭
Reverb:‬‭
Reverb is created when a sound occurs in a‬‭
space, resulting in the‬
‭
SFX changing pitch and echo accordingly. By clicking the "+" button, you‬
‭
can select different spaces for the SFX to occur in.‬
‭
●‬ ‭
FFT:‬‭
Stands for fast Fourier transform. "FFT" is used‬‭
to determine the‬
‭
fundamental frequencies and therefore pitches that are present in the raw‬
‭
signal.‬
‭
●‬ ‭
Loop:‬‭
Loops the SFX until stopped.‬
‭
●‬ ‭
Pre Load:‬‭
Setting a start time introduces some delay‬‭
depending on the‬
‭
seek time. If you need the SFX to sync precisely, you can preload it.‬
‭
●‬ ‭
Start/End:‬‭
Start and end of the SFX in milliseconds.‬
‭
●‬ ‭
FadeIn/FadeOut:‬‭
Fades the SFX in and out respectively,‬‭
with the values‬
‭
being in milliseconds.‬
‭
●‬ ‭
Unique ID:‬‭
Assigns a unique ID to SFX within their‬‭
respective "SFXGroup".‬
‭
By enabling the "IsUnique" option, you mark the ID as unique, resulting in‬
‭
no other SFX being able to take that ID if it is in the same "SFXGroup".‬
‭
●‬ ‭
SFXGroup:‬‭
You can have several SFX and put them into‬‭
their own‬
‭
"SFXGroup". This Group ID can later be edited.‬
‭
●‬ ‭
MinInterval:‬‭
Minimum interval before the SFX can be‬‭
triggered again.‬
‭
●‬ ‭
Override:‬‭
If another SFX has the same "Unique ID"‬‭
and "SFXGroup", this‬
‭
new SFX will override the old one.‬
‭
●‬ ‭
Ignore Volume Test:‬‭
SFX played at volume 0 are ignored.‬‭
Enable this‬
‭
option to not ignore them. This is mainly used for the proximity options,‬
‭
where the sound will not play if any distance has a volume of 0.‬
‭
●‬ ‭
Group ID 1:‬‭
Used for proximity. This is the Group‬‭
ID where the distance‬
‭
should be drawn from.‬
‭
124‬
‭
●‬ ‭
Group ID 2:‬‭
Used for proximity. This is the Group ID the distance will be‬
‭
measured to. For example, if your "MinDist" is 60, the "VolNear" volume will‬
‭
be played when the Group ID is within 6 blocks of Group ID 1. Choosing‬
‭
"P1", "P2", or "Cam" from the buttons below turns Group ID 2 into Player 1,‬
‭
Player 2, or the camera center respectively.‬
‭
●‬ ‭
VolNear/VolMed/VolFar:‬‭
Volume near, medium, and far‬‭
away for‬
‭
proximity. "VolNear" means you are within the "MinDist" boundaries from‬
‭
Group ID 1, while "VolMed" refers to "Dist2" and "VolFar" to "Dist3".‬
‭
●‬ ‭
MinDist/Dist2/Dist3:‬‭
Sets the boundaries for "VolNear",‬‭
"VolMed", and‬
‭
"VolFar" respectively.‬
‭
See figure 7.33 and table 7.2 under‬‭
Edit Song Trigger‬‭
for more information on‬
‭
proximity.‬
‭
Edit SFX‬
‭
Edits attributes of a sound effect (SFX), such as volume, speed and also allows‬
‭
setting up proximity options.‬
‭
●‬ ‭
Group ID:‬‭
You can give the SFX Triggers you want to‬‭
edit a Group ID and‬
‭
change them through this field.‬
‭
●‬ ‭
SFXGroup/UniqueID: "‬
‭
SFXGroup" and "UniqueID" can be‬‭
used to reference‬
‭
the exact SFX you want to edit. You should put the same values you put‬
‭
into the SFX Trigger here.‬
‭
●‬ ‭
Duration:‬‭
How long it should take for the SFX to change‬‭
to the new‬
‭
settings.‬
‭
●‬ ‭
Speed:‬‭
Changes the speed of the SFX. Note that you‬‭
have to enable the‬
‭
"Change Speed" button for the speed to actually change.‬
‭
●‬ ‭
Volume:‬‭
Changes the volume of the SFX. Note that you‬‭
have to enable the‬
‭
"Change Volume" button for the speed to actually change.‬
‭
125‬
‭
●‬ ‭
Stop/Stop Loop:‬‭
"Stop" stops the SFX entirely, while "Stop Loop" stops the‬
‭
looping of the SFX, so it will stop the next time it reaches the end.‬
‭
●‬ ‭
Group ID 1:‬‭
Used for proximity. This is the Group‬‭
ID where the distance‬
‭
should be drawn from.‬
‭
●‬ ‭
Group ID 2:‬‭
Used for proximity. This is the Group‬‭
ID the distance will be‬
‭
measured to. For example, if your "MinDist" is 60, the "VolNear" volume will‬
‭
be played when the Group ID is within 6 blocks of Group ID 1. Choosing‬
‭
"P1", "P2", or "Cam" from the buttons below turns Group ID 2 into Player 1,‬
‭
Player 2, or the camera center respectively.‬
‭
●‬ ‭
VolNear/VolMed/VolFar:‬‭
Volume near, medium, and far‬‭
away for‬
‭
proximity. "VolNear" means you are within the "MinDist" boundaries from‬
‭
Group ID 1, while "VolMed" refers to "Dist2" and "VolFar" to "Dist3".‬
‭
●‬ ‭
MinDist/Dist2/Dist3:‬‭
Sets the boundaries for "VolNear",‬‭
"VolMed", and‬
‭
"VolFar" respectively.‬
‭
See figure 7.33 and table 7.2 under‬‭
Edit Song Trigger‬‭
for more information on‬
‭
proximity.‬
‭
Event‬
‭
Spawns a Group ID upon a player action. The action can be selected from the‬
‭
top right menu.‬
‭
●‬ ‭
Group ID:‬‭
The Group ID that is spawned when the player‬‭
does the action.‬
‭
●‬ ‭
Extra ID/ID2:‬‭
You can input a Material ID here for‬‭
the action to only apply if‬
‭
you are on that Material ID. For example, if you choose "Normal Landing"‬
‭
and enter a Material ID used for a specific a block, you will only activate the‬
‭
Group ID if you land on that block.‬
‭
126‬
‭
TimeWarp‬
‭
Speeds up or slows down time. This affects everything, including player‬
‭
movement, durations in Triggers, Timers, and so on..‬
‭
●‬ ‭
TimeMod:‬‭
Modifier for the time. The value you input‬‭
here will be‬
‭
multiplied with the normal time, so less than 1 will slow the time down and‬
‭
above 1 will speed time up.‬
‭
Camera Mode‬
‭
Allows switching between Free Mode and Normal Mode for camera. In Free‬
‭
Mode, the borders for Ship, Ball, UFO, Wave, Spider, and Swing are removed.‬
‭
●‬ ‭
Edit Camera Settings:‬‭
Allows you to edit how the camera‬‭
follows the‬
‭
player in Free Mode. "Easing" changes how the camera starts and ends its‬
‭
movement, while "Padding" modifies how close the player has to be to the‬
‭
top or bottom of the screen for the camera to start following.‬
‭
●‬ ‭
Disable GridSnap:‬‭
Normally the camera center will‬‭
snap to the closest grid‬
‭
space. With this option enabled, the snapping will not happen.‬
‭
Setup MG‬
‭
Moves the Middleground.‬
‭
●‬ ‭
Offset Y:‬‭
Moves the Middleground up or down. Input‬‭
a positive value to‬
‭
move it up, and enter a negative value to move it down.‬
‭
●‬ ‭
Easing:‬‭
Easing options change the way the Middleground‬‭
starts and ends‬
‭
its movement.‬
‭
●‬ ‭
Move Time:‬‭
Duration until the Middleground finishes‬‭
its movement.‬
‭
127‬
‭
BG/MG Speed‬
‭
Modifies the speed at which the Background and Middleground follow the‬
‭
player.‬
‭
●‬ ‭
Mod X/Y:‬‭
Modifies the X-axis speed and Y-axis speed‬‭
respectively. The‬
‭
value you input here will be multiplied with the default speed, with 0‬
‭
stopping the movement entirely.‬
‭
Counter Label‬
‭
Displays Item IDs, Timers, or Points.‬
‭
●‬ ‭
ItemID:‬‭
The Item ID that should be displayed. The‬‭
value of Item IDs can be‬
‭
changed with‬‭
Pickup Triggers‬
‭
,‬‭
Time Triggers‬‭
or‬‭
Collectables‬‭
depending on‬
‭
what option you choose.‬
‭
●‬ ‭
Time Counter:‬‭
Functions as a Timer. You need a‬‭
Time‬‭
Trigger‬‭
to use this‬
‭
Timer.‬
‭
●‬ ‭
Seconds Only:‬‭
The Timer only displays the seconds.‬
‭
●‬ ‭
MainTime:‬‭
Also functions as a Timer that displays‬‭
the exact game time.‬
‭
●‬ ‭
Points:‬‭
Points can be configured in the "Edit Special"‬‭
page of‬‭
Collectables‬
‭
.‬
‭
●‬ ‭
Attempts:‬‭
Displays the current attempt the player‬‭
is on.‬
‭
●‬ ‭
Left/Right Align:‬‭
Aligns the ID to the left or right‬‭
border respectively. The‬
‭
width will change depending on what value it has (for example 8 is wider‬
‭
than 1). By default, the width will be extended the same to the left and‬
‭
right. Choosing "Left Align", the width will expand only to the right, while‬
‭
choosing "Right Align" will expand only to the left.‬
‭
128‬
‭
UI Settings‬
‭
Marks objects as user interface and puts them on a UI layer which is in front of‬
‭
everything else, including the Ground. The UI layer is permanent and cannot‬
‭
be edited.‬
‭
●‬ ‭
Group ID:‬‭
The objects that get marked as UI.‬
‭
●‬ ‭
UI Target:‬‭
This Group ID is marked as the camera center‬‭
reference and can‬
‭
only consist of one object.‬
‭
●‬ ‭
XRef/YRef:‬‭
The reference points for aligning the object.‬
‭
●‬ ‭
Auto/Center/Left/Right/Top/Bottom:‬‭
"Auto" aligns objects‬‭
based on the‬
‭
camera edges of the "UI Target" object. "Center" uses the center of the‬
‭
object as the camera center. "Left" uses the object as the left edge of the‬
‭
camera, while "Right" uses the object as the right edge of the camera.‬
‭
Similarly, "Top" uses the object as the top edge of the camera, while‬
‭
"Bottom" uses the object as the bottom edge of the camera.‬
‭
●‬ ‭
Relative:‬‭
The position of the UI will scale with the‬‭
screen aspect ratio.‬
‭
129‬
‭
Visibility Link‬
‭
This makes every object in a Group ID visible, as long as any of its objects are‬
‭
on screen. It is useful for larger collection of blocks that go offscreen often.‬
‭
Note that it cannot be toggled throughout the level.‬
‭
●‬ ‭
Group ID:‬‭
The objects you want to be fully visible.‬‭
This is processed at‬
‭
level load.‬
‭
Collision‬
‭
Spawns a Group ID when two‬‭
Collision Blocks‬‭
collide.‬‭
One of the two blocks‬
‭
must have the "Dynamic Block" activated.‬
‭
●‬ ‭
BlockA/BlockB ID:‬‭
Groups of Block 1 and Block 2, one‬‭
of which has to have‬
‭
the "Dynamic Block" option enabled.‬
‭
●‬ ‭
Target ID:‬‭
The Group ID that gets spawned when the‬‭
blocks collide.‬
‭
●‬ ‭
P1/P2/PP:‬‭
Enabling "P1" or "P2" allows triggering‬‭
upon Player 1 or 2‬
‭
colliding with "BlockB ID" respectively. Enabling both options allows for‬
‭
triggering when either player collides with it. "PP" triggers the Group ID‬
‭
when both players collide with each other in Dual Mode.‬
‭
●‬ ‭
Activate Group:‬‭
Activates the Group ID. By default,‬‭
the Group ID will be‬
‭
toggled off. Enable this option if you want to spawn a Group ID or toggle‬
‭
an object on.‬
‭
●‬ ‭
Trigger On Exit:‬‭
The Group ID will be triggered when‬‭
the blocks do not‬
‭
collide anymore.‬
‭
130‬
‭
Instant Collision‬
‭
Instant Collision Triggers function similarly to Collision Triggers, however it is‬
‭
only checked on Trigger activation if the condition is true or false. Normal‬
‭
Collision Triggers check if the condition is true all the time.‬
‭
●‬ ‭
BlockA/BlockB ID:‬‭
Groups of Block 1 and Block 2, one‬‭
of which has to have‬
‭
the "Dynamic Block" option enabled.‬
‭
●‬ ‭
True/False ID:‬‭
The Group ID that gets spawned if "BlockA‬‭
ID" and "BlockB‬
‭
ID" collide or do not collide respectively in the moment the Trigger is‬
‭
activated.‬
‭
●‬ ‭
P1/P2/PP:‬‭
Enabling "P1" or "P2" allows triggering‬‭
upon Player 1 or 2‬
‭
colliding with "BlockB ID" respectively. Enabling both options allows for‬
‭
triggering when either player collides with it. "PP" triggers the Group ID‬
‭
when both players collide with each other in Dual Mode.‬
‭
Collision State‬
‭
Spawns a Group ID when the player enters and exits the block hitbox.‬
‭
Functions as a quicker alternative to‬‭
Collision Blocks‬
‭
.‬
‭
●‬ ‭
State On/Off:‬‭
The Group ID that is spawned if the‬‭
player is colliding with‬
‭
the Collision State hitbox or not colliding respectively.‬
‭
Collision Block‬
‭
The blocks used for (Instant) Collision Triggers. If you want two blocks to‬
‭
collide, you will have to mark one of them as "Dynamic".‬
‭
131‬
‭
Toggle Block‬
‭
Toggles or spawns a Group ID if the player clicks while within the block hitbox.‬
‭
●‬ ‭
Group ID:‬‭
The Group ID that gets spawned or toggled‬‭
when the Trigger‬
‭
gets activated.‬
‭
●‬ ‭
Activate Group:‬‭
Activates the Group ID. By default,‬‭
the Group ID will be‬
‭
toggled off. Enable this option if you want to spawn a Group ID or toggle‬
‭
an object on.‬
‭
●‬ ‭
Claim Touch:‬‭
The player will not jump and no rings‬‭
will spawn. The click‬
‭
can not be buffered.‬
‭
●‬ ‭
Spawn Only:‬‭
Clicking only spawns the Group ID and‬‭
does not toggle it on‬
‭
or off.‬
‭
●‬ ‭
NO Multi Activate:‬‭
By default, the Group ID will be‬‭
toggled or spawned‬
‭
every time you click within the hitbox. With this option enabled, you can‬
‭
only toggle or spawn it once.‬
‭
On Death‬
‭
Toggles or spawns a Group ID when the player dies.‬
‭
●‬ ‭
Group ID:‬‭
The Group ID that gets spawned or toggled‬‭
when the player‬
‭
dies.‬
‭
●‬ ‭
Activate Group:‬‭
Activates the Group ID. By default,‬‭
the Group ID will be‬
‭
toggled off. Enable this option if you want to spawn a Group ID or toggle‬
‭
an object on.‬
‭
132‬
‭
Disable/Enable Trail‬
‭
Disables and enables the player trail respectively.‬
‭
Show/Hide‬
‭
Shows and hides the player respectively. Hiding the player makes it invisible,‬
‭
but note that you can still see the trail if enabled.‬
‭
BG Effect On/Off‬
‭
Enables and disables the background particles in Ship, Ball, UFO, Wave.‬
‭
133‬
‭
End‬
‭
Marks an object as the end of the level. The player gets pulled towards it. This‬
‭
Trigger can be used in both Classic and Platformer levels.‬
‭
●‬ ‭
TargetPos:‬‭
The Group ID of the object that should‬‭
be considered as the‬
‭
position for the end. The Group ID can only consist of one object.‬
‭
●‬ ‭
SpawnID:‬‭
A Group ID that gets spawned when the player‬‭
reaches the end.‬
‭
This is optional.‬
‭
●‬ ‭
Instant:‬‭
The player will teleport to the end as soon‬‭
as the object is on‬
‭
screen instead of slowly jumping towards it.‬
‭
●‬ ‭
No Effects:‬‭
Disables the effects that play when you‬‭
reach the end, such as‬
‭
the effect lines.‬
‭
●‬ ‭
No SFX:‬‭
Disables the SFX that plays when you reach‬‭
the end.‬
‭
Player Control‬
‭
Controls behavior of the player.‬
‭
●‬ ‭
P1/P2:‬‭
What player you want to control. Both options‬‭
enabled or disabled‬
‭
results in both players being affected.‬
‭
●‬ ‭
Stop Jump:‬‭
Stops the player jumping.‬
‭
●‬ ‭
Stop Move:‬‭
Stops the player movement.‬
‭
●‬ ‭
Stop Rot:‬‭
Stops the player rotation.‬
‭
●‬ ‭
Stop Slide:‬‭
Stops the low friction state you are in‬‭
after being launched by a‬
‭
force block. It does not stop the sliding from slopes or ice blocks.‬
‭
134‬
‭
Options‬
‭
Several options to change attributes of the level.‬
‭
●‬ ‭
Streak Additive:‬‭
Changes the trail and particles to‬‭
be blending.‬
‭
●‬ ‭
Hide Ground/MG:‬‭
Makes the Ground and Middleground‬‭
invisible‬
‭
respectively.‬
‭
●‬ ‭
Hide P1/P2:‬‭
Hides Player 1 or Player 2 respectively.‬‭
Functions the same way‬
‭
as the‬‭
Hide Trigger‬
‭
.‬
‭
●‬ ‭
Disable P1/P2 Controls:‬‭
Disables all input for Player‬‭
1 and Player 2‬
‭
respectively.‬
‭
●‬ ‭
Hide Attempts:‬‭
Hides the attempts counter.‬
‭
●‬ ‭
Unlink Dual Gravity:‬‭
Unlinks the gravity of the icons‬‭
in Dual Mode. By‬
‭
default, if one icon switches gravity, the other icon will switch gravity as‬
‭
well.‬
‭
●‬ ‭
Audio on Death:‬‭
Continues to play audio after death.‬
‭
●‬ ‭
No Death SFX:‬‭
Disables the death SFX.‬
‭
●‬ ‭
Edit Respawn Time:‬‭
Lets you customize the respawn‬‭
time.‬
‭
●‬ ‭
Boost Slide:‬‭
Increases how far the player slides after‬‭
a force is applied.‬
‭
BPM Guide‬
‭
Draws lines in the editor at beats per minute you configure. Helps to make‬
‭
parts sync based on the BPM the song uses.‬
‭
135‬
‭
●‬ ‭
BPM:‬‭
Stands for beats per minute. Lines will be drawn based on this‬
‭
number. For example, if you have 60 BPM, a line will be drawn every‬
‭
second.‬
‭
●‬ ‭
BPB:‬‭
Stands for beats per bar. One bar is the space‬‭
between two BPM‬
‭
lines. The number you input here will split each space into the‬
‭
corresponding sections. For example, if you have a BPM of 60 and a BPB of‬
‭
2, a line will be drawn every 0.5 seconds.‬
‭
●‬ ‭
Duration:‬‭
How long you want the lines to be drawn.‬
‭
●‬ ‭
Speed:‬‭
Changes the distance between the lines to account‬‭
for the‬
‭
different speeds.‬
‭
●‬ ‭
Disable:‬‭
Hides the lines.‬
‭
Gradient‬
‭
Creates a gradient between two colors. You can change the way the gradient‬
‭
looks by rotating the Gradient Trigger.‬
‭
●‬ ‭
Vertex Mode:‬‭
Draws the gradient between 3 or 4 points‬‭
which get‬
‭
connected. By default, the gradient can only be a square with defined top,‬
‭
bottom, left, and right boundaries. Using "Vertex Mode" allows the gradient‬
‭
to have more interesting shapes.‬
‭
●‬ ‭
U/D/L/R:‬‭
Used to draw the gradient if "Vertex Mode"‬‭
is disabled. The‬
‭
variables refer to the Group IDs of target objects set as up, down, left, and‬
‭
right respectively. These variables work as boundaries for the gradient, so‬
‭
you do not have to set all.‬
‭
●‬ ‭
BL/BR/TL/TR:‬‭
Used for the "Vertex Mode" boundaries.‬‭
The variables refer to‬
‭
the Group IDs of target objects set as bottom left, bottom right, top left,‬
‭
and top right respectively. Note that putting 3 of those variables is enough‬
‭
to draw the gradient in "Vertex Mode".‬
‭
●‬ ‭
Blending:‬‭
How the gradient behaves with colors beneath‬‭
it.‬
‭
136‬
‭
●‬ ‭
ID:‬‭
Can be used to reference gradients. For example if you want to disable‬
‭
a gradient later on.‬
‭
●‬ ‭
Disable All:‬‭
Disables all gradients. You can disable‬‭
only a single gradient by‬
‭
using its "ID" and choosing the "Disable" option.‬
‭
●‬ ‭
Preview Opacity:‬‭
The opacity the gradient has in the‬‭
editor preview.‬
‭
Gravity‬
‭
Changes the gravity force.‬
‭
●‬ ‭
Gravity:‬‭
Modifies the gravity. A value below 1 makes‬‭
the player lighter,‬
‭
while a value above 1 makes the player heavier.‬
‭
●‬ ‭
P1/P2/PT:‬‭
The gravity only affects Player 1 or Player‬‭
2 respectively. "PT" only‬
‭
affects the player that touches the Trigger.‬
‭
Teleport‬
‭
Teleports the player to a set location.‬
‭
137‬
‭
●‬ ‭
Target GroupID‬
‭
: The Group ID the player teleports to. The Group ID can‬
‭
only consist of one object.‬
‭
●‬ ‭
Gravity:‬‭
The gravity the player should have after‬‭
finishing the teleportation.‬
‭
●‬ ‭
Normal:‬‭
Normal gravity after teleporting.‬
‭
●‬ ‭
Flipped:‬‭
Flipped gravity after teleporting.‬
‭
●‬ ‭
Toggle:‬‭
The gravity flips to the opposite, depending‬‭
on what gravity you‬
‭
are when teleporting. You flip from normal to flipped and from flipped to‬
‭
normal.‬
‭
●‬ ‭
Smooth Ease:‬‭
The camera follows smoothly to the new‬‭
position of the‬
‭
player.‬
‭
●‬ ‭
Save Offset:‬‭
The offset the player has to the Trigger‬‭
center when‬
‭
activating it is saved and applied to the target object, resulting in a slightly‬
‭
offset teleport.‬
‭
●‬ ‭
Ignore X/Y:‬‭
Does not teleport on the X-axis or Y-axis‬‭
respectively.‬
‭
●‬ ‭
Instant Camera:‬‭
The camera instantly snaps to the‬‭
new position.‬
‭
●‬ ‭
Snap Ground:‬‭
The Ground snaps to the new position.‬
‭
●‬ ‭
Redirect Dash:‬‭
Rotates Dash Orb effect to match teleport‬‭
exit rotation.‬
‭
Only for Platformer levels.‬
‭
●‬ ‭
Static Force:‬‭
You exit the rotation based on the rotation‬‭
of the target, with‬
‭
a force applied.‬
‭
●‬ ‭
Force:‬‭
The force the player should have when exiting‬‭
the teleport. The‬
‭
force is applied in the direction of the target object rotation.‬
‭
●‬ ‭
Redirect Force:‬‭
The force the player should have when‬‭
exiting the‬
‭
teleport. The force is applied in the direction of the target object rotation‬
‭
and an input force.‬
‭
●‬ ‭
Min/Max:‬‭
Limits the exit force. If you leave this‬‭
value at 0, no limit will be‬
‭
set.‬
‭
●‬ ‭
Mod:‬‭
Modifies the input force value. The speed you‬‭
have will be this value‬
‭
multiplied with the speed you have when teleporting.‬
‭
138‬
‭
Shader‬
‭
Shader Triggers edit how the other Shader Triggers work. You can disable‬
‭
shader effects and limit the layers they affect.‬
‭
●‬ ‭
Disable All:‬‭
Disables all other shaders.‬
‭
●‬ ‭
No Player Particles:‬‭
When using a shader which only‬‭
affects the player‬
‭
layer, the particles might look weird due to different rendering. This option‬
‭
disables the shader from the particles.‬
‭
With the buttons at the bottom, you can choose the layers affected by the‬
‭
shaders. The blue buttons are the highest and lowest layer that will be‬
‭
affected. The green buttons are the ones in between which will be affected,‬
‭
and the gray ones will not be affected.‬
‭
ShockWave‬
‭
Creates a shockwave effect. Note that for this and every following shader‬
‭
effect, you can click the top right checkbox to disable it in the editor.‬
‭
139‬
‭
●‬ ‭
Speed:‬‭
The speed at which the shockwave will happen.‬
‭
●‬ ‭
Strength:‬‭
How strong the shockwave is. The lower the‬‭
value, the less‬
‭
distorted objects get.‬
‭
●‬ ‭
Thickness:‬‭
The "thickness" of each wave. The higher‬‭
the value, the thicker‬
‭
the wave will be.‬
‭
●‬ ‭
WaveW:‬‭
Wave width. The higher the value, the less‬‭
distorted it is.‬
‭
●‬ ‭
FadeIn/FadeOut:‬‭
Fades the shockwave in and out. The‬‭
higher the value,‬
‭
the longer it takes to fade in or out respectively.‬
‭
●‬ ‭
TimeOff:‬‭
Time offset before the shockwave starts,‬‭
with the value being in‬
‭
seconds.‬
‭
●‬ ‭
MaxSize:‬‭
Modifies the max size of the wave. Leaving‬‭
it at 0 will put it at the‬
‭
max value. The value you put here will be multiplied with the wave size.‬
‭
●‬ ‭
Invert:‬‭
Inverts the shockwave effect to go from outside‬‭
to inside instead of‬
‭
inside to outside.‬
‭
●‬ ‭
Inner:‬‭
Size of the waves in the middle of the shockwave.‬‭
Option only‬
‭
available with "Invert" enabled.‬
‭
140‬
‭
●‬ ‭
Outer:‬‭
Size of the waves at the outside of the shockwave. Higher values‬
‭
means it will take longer to reach the center. Option only available with‬
‭
"Invert" enabled.‬
‭
●‬ ‭
Target:‬‭
Chooses a Group ID as the center of the shockwave.‬‭
The Group ID‬
‭
can only consist of one object.‬
‭
●‬ ‭
P1/P2:‬‭
Makes Player 1 or Player 2, respectively, the‬‭
center of the shockwave.‬
‭
Option only available with "Target" enabled.‬
‭
●‬ ‭
Follow:‬‭
Follows "Target". By default, it will only‬‭
check the position of the‬
‭
target when the Trigger is activated and spawn the shockwave there. With‬
‭
this option enabled, the center will follow the target. Option only available‬
‭
with "Target" enabled.‬
‭
●‬ ‭
Relative:‬‭
The shockwave follows the screen movement.‬‭
By default, it will‬
‭
stay at the position it was triggered at.‬
‭
●‬ ‭
Screen OffX/OffY:‬‭
Offsets the center of the shockwave.‬‭
Negative numbers‬
‭
offset it to the left or bottom respectively, while positive numbers offset it‬
‭
to the right or up respectively.‬
‭
Shock Line‬
‭
Creates a shock line effect.‬
‭
●‬ ‭
Speed:‬‭
The speed at which the shockline will happen.‬
‭
●‬ ‭
Strength:‬‭
How strong the shockline is. The lower the‬‭
value, the less‬
‭
distorted objects get.‬
‭
●‬ ‭
Thickness:‬‭
The thickness of each line. The higher‬‭
the value, the thicker the‬
‭
wave will be.‬
‭
●‬ ‭
WaveW:‬‭
Line width. The higher the value, the less‬‭
distorted it is.‬
‭
●‬ ‭
FadeIn/FadeOut:‬‭
Fades the shockline in and out. The‬‭
higher the value, the‬
‭
longer it takes to fade in or out respectively.‬
‭
141‬
‭
●‬ ‭
TimeOff:‬‭
Time offset before the shockline starts with the value being in‬
‭
seconds.‬
‭
●‬ ‭
MaxSize:‬‭
Modifies the max size of the line. Leaving‬‭
it at 0 will put it at the‬
‭
max value. The value you put here will be multiplied with the line size.‬
‭
●‬ ‭
Invert:‬‭
Inverts the shockline. If considered in a‬‭
3D perspective, the highs of‬
‭
the line will become lows and the other way around.‬
‭
●‬ ‭
Flip:‬‭
Flips the line to go from right to left instead‬‭
of left to right.‬
‭
●‬ ‭
Rotate:‬‭
Rotates the line to go from bottom to top‬‭
instead of left to right.‬
‭
●‬ ‭
Dual:‬‭
Creates two shock lines from the middle, which‬‭
go to the left and‬
‭
right respectively.‬
‭
●‬ ‭
Target:‬‭
Chooses a Group ID as the center of the shockline.‬‭
The Group ID‬
‭
can only consist of one object.‬
‭
●‬ ‭
P1/P2:‬‭
Makes Player 1 or Player 2 respectively the‬‭
center of the shockline.‬
‭
Option only available with "Target" enabled.‬
‭
●‬ ‭
Relative:‬‭
The shockline follows the screen movement.‬‭
By default, it will‬
‭
stay at the position it was triggered at.‬
‭
●‬ ‭
ScreenOff:‬‭
Offsets the center of the shockline. Negative‬‭
numbers offset it‬
‭
to the left or bottom respectively, while positive numbers offset it to the‬
‭
right or up respectively. Note that the directions depend on what option‬
‭
you choose from the buttons above.‬
‭
Glitch‬
‭
Creates a glitch effect.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully.‬
‭
●‬ ‭
Strength:‬‭
Strength of the effect. All other values‬‭
will be multiplied with the‬
‭
strength and adjusted accordingly.‬
‭
●‬ ‭
Speed:‬‭
Speed at which the glitch effects happen. The‬‭
lower the value, the‬
‭
slower the effects.‬
‭
142‬
‭
●‬ ‭
SliceHeight:‬‭
During the glitch effect the screen will be sliced, which refers‬
‭
to the higher blocks getting offset on the X-axis.‬
‭
●‬ ‭
MaxSliceXOff:‬‭
Max offset on the X-axis that the objects‬‭
can be sliced.‬
‭
●‬ ‭
MaxColXOff/MaxColYOff:‬‭
Max distance offset for the‬‭
color on the X-axis‬
‭
and Y-axis respectively.‬
‭
●‬ ‭
Relative:‬‭
The shockline follows the screen movement.‬‭
By default, it will‬
‭
stay at the position it was triggered at.‬
‭
Chromatic‬
‭
Chromatically splits the colors.‬
‭
●‬ ‭
TargetX/TargetY:‬‭
How far the colors will split on‬‭
the X-axis and Y-axis‬
‭
respectively. You have to enable the "Use X" and/or "Use Y" option for the‬
‭
distance to apply.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully.‬
‭
Chromatic Glitch‬
‭
Chromatically splits the colors while adding a wave effect and glitch lines.‬
‭
●‬ ‭
Speed:‬‭
Speed at which the wave effect happens.‬
‭
●‬ ‭
Strength:‬‭
How big the waves are.‬
‭
●‬ ‭
LineThickness:‬‭
Thickness of the glitch lines.‬
‭
●‬ ‭
LineStrength:‬‭
Opacity of the glitch lines.‬
‭
●‬ ‭
RGBOff:‬‭
How far the RGB values are offset.‬
‭
●‬ ‭
Duration:‬‭
Time for the effect to apply fully.‬
‭
●‬ ‭
SegmentH:‬‭
Height of a segment. A segment consists‬‭
of one wave effect‬
‭
and a glitch line.‬
‭
143‬
‭
●‬ ‭
RelativePos:‬‭
With this option enabled, the shape of the effect will stay in‬
‭
place no matter the Y height. With it off, the effect will always stay in the‬
‭
center of the screen.‬
‭
Pixelate‬
‭
Pixelates the screen.‬
‭
●‬ ‭
TargetX/TargetY:‬‭
How much the screen will pixelate‬‭
on the X-axis and‬
‭
Y-axis respectively. You have to enable the "Use X" and/or "Use Y" option for‬
‭
the distance to apply.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully.‬
‭
●‬ ‭
Snap Grid:‬‭
Snaps the pixels to the grid. Without this‬‭
option, the pixels will‬
‭
smear a little when the player moves.‬
‭
144‬
‭
Lens Circle‬
‭
Creates a lens circle.‬
‭
●‬ ‭
Size:‬‭
Size of the circle. The smaller the number,‬‭
the more closed the circle‬
‭
is.‬
‭
●‬ ‭
Fade:‬‭
How much the circle fades out. The smaller the‬‭
number, the less‬
‭
fade there is.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully. The‬‭
circle will zoom in or out‬
‭
instead of fading in.‬
‭
●‬ ‭
Strength:‬‭
Opacity of the lens circle.‬
‭
●‬ ‭
Screen OffX/OffY:‬‭
Offsets the center of the lens circle.‬‭
Negative numbers‬
‭
offset it to the left or bottom respectively, while positive numbers offset it‬
‭
to the right or up respectively.‬
‭
●‬ ‭
CenterID:‬‭
Center of the lens circle. The Group ID‬‭
can only consist of one‬
‭
object.‬
‭
●‬ ‭
Tint Channel:‬‭
Color Channel to use for the lens circle.‬‭
It will be black by‬
‭
default.‬
‭
●‬ ‭
Easing:‬‭
Easing options change the way the circle starts‬‭
and ends its‬
‭
movement.‬
‭
Radial Blur‬
‭
Blurs the screen radially, so drawing a circle around the center with a given‬
‭
radius.‬
‭
●‬ ‭
Size:‬‭
Size of the blur. In other words, how much it‬‭
is blurred per distance‬
‭
from the center.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully.‬
‭
●‬ ‭
Intensity:‬‭
Opacity of the blur.‬
‭
145‬
‭
●‬ ‭
Ref Channel:‬‭
Uses a Color Channel to reference the fade color. By default,‬
‭
the fade will go towards the Background Color.‬
‭
Table 7.3: "Ref Channel" behavior.‬
‭
No Ref Channel‬ ‭
Ref Channel‬
‭
The red object has blur applied. As‬
‭
you can see, the blur color fades‬
‭
towards the Background Color,‬
‭
which looks weird on a yellow‬
‭
Background.‬
‭
Here we set the yellow Color Channel‬
‭
as the "Ref Channel", which makes‬
‭
the blur fade towards yellow.‬
‭
●‬ ‭
Screen OffX/OffY:‬‭
Offsets the blur center. Negative‬‭
numbers offset it to‬
‭
the left or bottom respectively, while positive numbers offset it to the right‬
‭
or up respectively.‬
‭
●‬ ‭
Fade:‬‭
The smaller the fade value, the more blocks‬‭
will blur out. You can‬
‭
compare this setting to the "Fade" setting in the‬‭
Lens Circle Trigger‬
‭
, where‬
‭
it is easier to visualize.‬
‭
●‬ ‭
Easing:‬‭
Easing options change the way the circle starts‬‭
and ends its‬
‭
movement.‬
‭
146‬
‭
●‬ ‭
Target:‬‭
Uses a Group ID as the center the blur from. The Group ID can only‬
‭
consist of one object.‬
‭
●‬ ‭
EmptyOnly:‬‭
The blur will only be drawn to pixels that‬‭
are empty.‬
‭
Table 7.4: "EmptyOnly" behavior.‬
‭
Without EmptyOnly‬ ‭
With EmptyOnly‬
‭
Motion Blur‬
‭
Blurs objects based on the X-axis, Y-axis, or a Center Group ID.‬
‭
●‬ ‭
TargetX/TargetY:‬‭
Amount of blur that will be applied‬‭
to the X-axis and‬
‭
Y-axis respectively.‬
‭
●‬ ‭
Ref Channel:‬‭
Uses a Color Channel to reference the‬‭
fade color. By default‬
‭
the fade will go towards the Background Color. See table 7.3.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully.‬
‭
●‬ ‭
Fade:‬‭
The smaller the fade value, the more blocks‬‭
will blur out. You can‬
‭
compare this setting to the "Fade" setting in the‬‭
Lens Circle Trigger‬
‭
, where‬
‭
it is easier to visualize.‬
‭
●‬ ‭
Follow Ease:‬‭
Used for the "TargetID" option, which‬‭
follows the object's or‬
‭
player's movement to reference the blur. "Follow Ease" eases the‬
‭
movement, resulting in less or more blur upon movement.‬
‭
147‬
‭
●‬ ‭
Intensity:‬‭
Opacity of the blur.‬
‭
●‬ ‭
DualDir:‬‭
Blurs in both directions instead of only‬‭
one. By default, "TargetX"‬
‭
will only blur left and "TargetY" will only blur down.‬
‭
●‬ ‭
EmptyOnly:‬‭
The blur will only be drawn to pixels that‬‭
are empty. See table‬
‭
7.4.‬
‭
●‬ ‭
TargetID:‬‭
Uses a Group ID or the player's movement‬‭
as the reference for‬
‭
the blur. If the Group ID or player does not move, there will be no blur. On‬
‭
quick movements, there will be a lot of blur. If a Group ID is used, it can‬
‭
only consist of one object.‬
‭
Bulge‬
‭
Bulges the screen.‬
‭
●‬ ‭
Bulge:‬‭
How much the screen will bulge.‬
‭
●‬ ‭
Radius:‬‭
How large the bulge circle is.‬
‭
●‬ ‭
Screen OffX/OffY:‬‭
Offsets the center of the bulge.‬‭
Negative numbers‬
‭
offset it to the left or bottom respectively, while positive numbers offset it‬
‭
to the right or up respectively.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully. The‬‭
bulge will zoom in and out‬
‭
instead of fading in.‬
‭
●‬ ‭
Target:‬‭
Uses a Group ID as the center the bulge zooms‬‭
from. The Group ID‬
‭
can only consist of one object.‬
‭
Pinch‬
‭
Pinches the screen. Works in the opposite way of the‬‭
Bulge Trigger‬
‭
.‬
‭
●‬ ‭
TargetX/TargetY:‬‭
How much the screen gets pinched‬‭
on the X-axis and‬
‭
Y-axis respectively. The smaller the number, the smaller the pinch.‬
‭
148‬
‭
●‬ ‭
Screen OffX/OffY:‬‭
Offsets the pinch center. Negative numbers offset it to‬
‭
the left or bottom respectively, while positive numbers offset it to the right‬
‭
or up respectively.‬
‭
●‬ ‭
Radius:‬‭
The radius of the circle.‬
‭
●‬ ‭
Modifier:‬‭
Modifies all values. All values will be‬‭
multiplied with the value you‬
‭
put here.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully. The‬‭
pinch will zoom in and out‬
‭
instead of fading in.‬
‭
Gray Scale‬
‭
Adds a grayscale filter to the screen.‬
‭
●‬ ‭
Target:‬‭
Percentage of grayscale that is applied. For‬‭
example, with 0.5 the‬
‭
screen will tint 50% gray.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully.‬
‭
●‬ ‭
Tint Channel:‬‭
Tints the screen in a Color Channel‬‭
instead of gray.‬
‭
●‬ ‭
UseLum:‬‭
Refers to luminosity, which is a different‬‭
way to convert color to‬
‭
grayscale. Luminosity forms a weighted average to account for human‬
‭
perception. The formula for luminosity is 0.21*R + 0.72*G + 0.07*B.‬
‭
●‬ ‭
Easing:‬‭
Easing options change the way the colors start‬‭
and end their‬
‭
transitions.‬
‭
Sepia‬
‭
Adds a sepia filter to the screen.‬
‭
●‬ ‭
Target:‬‭
Percentage of sepia that is applied. For example,‬‭
with 0.5 the‬
‭
screen will tint 50% sepia.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully.‬
‭
149‬
‭
Invert Color‬
‭
Inverts the screen colors.‬
‭
●‬ ‭
Target:‬‭
Percentage of how much color inversion will‬‭
be applied. For‬
‭
example, with 0.5 the screen will be 50% inverted.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully.‬
‭
●‬ ‭
R/G/B:‬‭
Percentage of the red, green, and blue value‬‭
respectively. For‬
‭
example, the color white has the RGB values 255, 255, 255. If you put the R‬
‭
slider to 0.5, it will multiply 255 with 0.5, which is 127.5. Now, the new color‬
‭
would be 127.5, 255, 255, which is a brighter blue color. Note that the color‬
‭
values are inverted due to the Trigger.‬
‭
●‬ ‭
EditRGB:‬‭
Allows editing the RGB values with the sliders‬‭
above.‬
‭
●‬ ‭
TweenRGB:‬‭
If you are in the inverted color state with‬‭
EditRGB values, and‬
‭
want to change to different RGB values the switch will be instant. With this‬
‭
option enabled, they will transition smoothly to the new RGB you set.‬
‭
●‬ ‭
ClampRGB:‬‭
Limits the values to 1 so that they cannot‬‭
go past that value.‬
‭
●‬ ‭
Easing:‬‭
Easing options change the way the colors start‬‭
and end their‬
‭
transitions.‬
‭
150‬
‭
Table 7.5: Example of Invert Color Trigger options.‬
‭
"R/G/B" with 1, 1, 1‬ ‭
"R/G/B" with 2, 1, 1‬ ‭
"R/G/B" with 2, 1, 1 and‬
‭
"ClampRGB"‬
‭
Normal transition to the‬
‭
inverted color. Same‬
‭
with "EditRGB" enabled‬
‭
or disabled.‬
‭
The transition to red will‬
‭
be quicker, resulting in‬
‭
an overall red tint. Only‬
‭
with "EditRGB" enabled.‬
‭
The same result as‬
‭
using 1, 1, 1. The‬
‭
transition is still quicker‬
‭
for the red color,‬
‭
however the result is‬
‭
not tinted. "ClampRGB"‬
‭
limits the values‬
‭
between 0 and 1.‬
‭
Hue‬
‭
Shifts the screen hue.‬
‭
●‬ ‭
Degrees:‬‭
How many degrees the color should shift.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully.‬
‭
●‬ ‭
Easing:‬‭
Easing options change the way the colors start‬‭
and end their‬
‭
transitions.‬
‭
151‬
‭
Edit Color‬
‭
Edits the color of the screen.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully.‬
‭
●‬ ‭
CR/CG/CB:‬‭
Stands for color red, green and blue. Tints‬‭
the screen in the‬
‭
corresponding color, with 1 being no tint. The smaller the value, the more‬
‭
of that color is used.‬
‭
●‬ ‭
BR/BG/BB:‬‭
Brightness red, green and blue. Works like‬‭
the "Brightness"‬
‭
slider in the "HSV" menu when editing colors.‬
‭
Split Screen‬
‭
Splits the screen in identical sections.‬
‭
●‬ ‭
TargetX/TargetY:‬‭
How many sections the screen gets‬‭
split in the X-axis‬
‭
and Y-axis respectively. The number you input here gets one more added,‬
‭
so with "TargetX" at 1 you split the screen in 2 sections. You have to enable‬
‭
the "Use X" and/or "Use Y" option respectively to split the screen.‬
‭
●‬ ‭
FadeTime:‬‭
Time for the effect to apply fully.‬
‭
●‬ ‭
Easing:‬‭
Easing options change the way the movements‬‭
start and end‬
‭
their transitions.‬
‭
Enter Effects‬
‭
Changes how blocks enter and/or exit the screen.‬
‭
●‬ ‭
Target Enter Channel:‬‭
Input a Enter Channel ID and‬‭
assign an Enter‬
‭
Channel ID to objects. The Enter Effect will only affect the objects with the‬
‭
same Enter Channel ID. By default, all blocks will be affected.‬
‭
●‬ ‭
Enter/Exit Only:‬‭
The effect will only be displayed‬‭
when the objects enter‬
‭
or exit the screen respectively.‬
‭
152‬
‭
Table 7.6: Enter Effects.‬
‭
Effect‬ ‭
Explanation‬ ‭
Example‬
‭
The objects do not scale in‬
‭
and out, but they still fade‬
‭
in and out.‬
‭
Objects enter the screen by‬
‭
moving down from the top‬
‭
and fading in. Objects exit‬
‭
the screen by moving up‬
‭
and fading out.‬
‭
Objects enter the screen by‬
‭
moving up from the bottom‬
‭
and fading in. Objects exit‬
‭
the screen by moving down‬
‭
and fading out.‬
‭
Objects enter the screen by‬
‭
appearing from behind the‬
‭
blocks and moving to the‬
‭
right. Objects exit the‬
‭
screen by moving to the left‬
‭
and fading out.‬
‭
Objects enter the screen by‬
‭
moving in from the right‬
‭
and fading in. Objects exit‬
‭
the screen by disappearing‬
‭
behind the blocks and‬
‭
fading out.‬
‭
153‬
‭
Objects enter the screen by‬
‭
scaling up and fading in.‬
‭
Objects exit the screen by‬
‭
scaling down and fading‬
‭
out.‬
‭
Objects enter the screen by‬
‭
scaling down and fading in.‬
‭
Objects exit the screen by‬
‭
scaling up and fading out.‬
‭
Objects enter and exit the‬
‭
screen in a chaotic‬
‭
movement, fading and out‬
‭
respectively.‬
‭
Objects enter the screen by‬
‭
the top half moving down,‬
‭
and the bottom half moving‬
‭
up. They also appear from‬
‭
behind the blocks and‬
‭
move to the right and fade‬
‭
in. Objects exit the screen‬
‭
by splitting in half, with the‬
‭
top moving up and the‬
‭
bottom moving down while‬
‭
moving to the left and‬
‭
fading out.‬
‭
Objects enter the screen by‬
‭
the top half moving down‬
‭
and the bottom half moving‬
‭
up. They move in from the‬
‭
right and fade in. Objects‬
‭
exit the screen by splitting‬
‭
in half, with the top moving‬
‭
154‬
‭
up and the bottom moving‬
‭
down while disappearing‬
‭
behind the blocks and‬
‭
fading out.‬
‭
Objects enter the screen by‬
‭
the top half moving down‬
‭
and the bottom half moving‬
‭
up while fading in. Objects‬
‭
exit the screen by splitting‬
‭
in half, with the top moving‬
‭
up and the bottom moving‬
‭
down while fading out.‬
‭
Objects enter the screen by‬
‭
the top half moving up and‬
‭
the bottom half moving‬
‭
down while fading in.‬
‭
Objects exit the screen by‬
‭
splitting in half, with the top‬
‭
moving down and the‬
‭
bottom moving up while‬
‭
fading out.‬
‭
Objects do not fade in and‬
‭
out and also do not have an‬
‭
Enter Effect.‬
‭
155‬
‭
Move/Rotate/Scale/Fade/Tint Enter‬
‭
Lets you create custom Enter Effects, similar to the default ones above. Due to‬
‭
these having many of the same settings, we will be explaining them all first‬
‭
and only mention specific ones below. Note that one block is equal to 30 for‬
‭
all of these.‬
‭
●‬ ‭
Length:‬‭
Distance from the screen borders where the‬‭
effect is applied.‬
‭
●‬ ‭
Offset:‬‭
Offsets the screen borders. Enter a positive‬‭
value to offset it to the‬
‭
right, and a negative value to offset it to the left.‬
‭
●‬ ‭
Enter Channel:‬‭
Used similarly to Group IDs. The objects‬‭
you want to have‬
‭
the Enter Effect can be set with "Enter Channel" under "Extra2" in "Edit‬
‭
Group".‬
‭
●‬ ‭
Effect ID:‬‭
Specific ID that can be referenced later,‬‭
for example in‬‭
Stop‬
‭
Enter Effect Triggers.‬
‭
●‬ ‭
Enter/Exit Only:‬‭
The effect is only applied on screen‬‭
entrance or exit‬
‭
respectively.‬
‭
●‬ ‭
Easing:‬‭
Modifies how the objects start and end their‬‭
transitions.‬
‭
156‬
‭
For Move Enter, we have these unique settings:‬
‭
●‬ ‭
MoveDist:‬‭
Distance the objects move.‬
‭
●‬ ‭
MoveAngle:‬‭
Angle at which the objects will move. 0‬‭
is up, 90 right, 180‬
‭
down, 270 left, and so on.‬
‭
●‬ ‭
XY Mode:‬‭
You can enter X and Y values like in the‬‭
normal‬‭
Move Trigger‬
‭
instead of choosing a direction.‬
‭
For Rotate Enter, we have these unique settings:‬
‭
●‬ ‭
Rotation:‬‭
The degrees you want the objects to rotate.‬‭
Enter a positive‬
‭
value to rotate clockwise, and enter a negative value to rotate‬
‭
counter-clockwise.‬
‭
For Scale Enter, we have these unique settings:‬
‭
●‬ ‭
ScaleX/ScaleY:‬‭
The size the objects scale in the X-axis‬‭
and Y-axis‬
‭
respectively.‬
‭
For Fade Enter, we have these unique settings:‬
‭
●‬ ‭
Opacity:‬‭
The opacity the objects will fade to when‬‭
they are near the screen‬
‭
edge.‬
‭
157‬
‭
For Tint Enter, we have these unique settings:‬
‭
●‬ ‭
Color Channel:‬‭
The color you want to tint the objects‬‭
in.‬
‭
●‬ ‭
%:‬‭
The percentage you want to tint the color. For‬‭
example, if you want to‬
‭
tint a black object white and set "%" to 0.5, the object will turn gray.‬
‭
●‬ ‭
Main/Secondary Only:‬‭
Some objects have a Base Color‬‭
and Detail Color,‬
‭
which is seen in the "Edit Object" menu. These options only change the‬
‭
these colors respectively.‬
‭
●‬ ‭
HSV:‬‭
Instead of tinting the color of a different Color‬‭
Channel, you can‬
‭
simply tint the same Color Channel and change the "HSV" values of it.‬
‭
Stop Enter‬
‭
Stops an Enter Effect. You can stop it by referencing its Enter Channel or its‬
‭
Effect ID.‬
‭
158‬
‭
8. Custom Objects‬
‭
As mentioned earlier, you can create your own sets of Custom Objects, which‬
‭
can be used across different levels. Custom Objects are in the last tab in the‬
‭
"Build" category.‬
‭
From left to right, the buttons indicate moving a Custom Object design up‬
‭
and down a position, adding a new Custom Object, and deleting an existing‬
‭
one. To add a Custom Object, first create the design. For example:‬
‭
159‬
‭
Now select all of the objects in your design, and click the "+" button to add‬
‭
them as a Custom Object. Your design should appear as a new button in the‬
‭
Custom Objects tab, as seen in figure 8.3.‬
‭
You can now select the Custom Object and place it in the editor whenever‬
‭
you wish. Custom Objects can consist of up to 1000 objects, and you can add‬
‭
up to 200 unique Custom Objects. Select a Custom Object and click the "–"‬
‭
button to delete it, as shown in figure 8.4. Note that this action cannot be‬
‭
undone.‬
‭
160‬
‭
9. Channel System‬
‭
Working with‬‭
Rotate Gameplay Triggers‬‭
can be tricky,‬‭
especially when you‬
‭
change directions often and want to use many‬‭
Triggers‬
‭
.‬‭
See the example in‬
‭
figure 9.1. Normally Triggers are read from left to right, but this can lead to‬
‭
issues in the example. How should the editor know when these Triggers‬
‭
should be activated? This is handled by using the Channel System. Here, we‬
‭
cover a short example on how to use Channels well.‬
‭
In this example, we want the player to go in a circle across all sides and pulse‬
‭
the background in a different color when jumping over a Spike. When‬
‭
playtesting in the editor, you will find that the player does not change rotation‬
‭
when reaching the top left Rotate Gameplay Trigger. This is because the‬
‭
Trigger gets activated first and is immediately overridden by the Trigger in‬
‭
the bottom left. To fix this, we have to change the order in which the Triggers‬
‭
are read.‬
‭
161‬
‭
Rotate Gameplay Triggers have a "Change Channel" option, which puts the‬
‭
player on a different Channel when that Trigger is activated. By default, the‬
‭
player, all Triggers, and all‬‭
Gameplay Objects‬‭
are‬‭
on Channel 0, resulting in‬
‭
everything getting activated from left to right.‬
‭
In our example, we want to activate the Rotate Gameplay Triggers in the‬
‭
following order: bottom right, top right, top left, and bottom left. To achieve‬
‭
this, we change the Channel of the player after reaching the bottom right‬
‭
Trigger, as seen in figure 9.2.‬
‭
After reaching the Trigger, the player is on Channel 1 instead of 0. While on‬
‭
the right side of the square, we want to activate the right‬‭
Pulse Trigger‬‭
and‬
‭
the top right Rotate Gameplay Trigger. To achieve this, we have to put them‬
‭
on the same Channel as the player.‬
‭
To put objects on a different Channel, first select them and click "Edit Group".‬
‭
In the bottom right of the menu, you will find a textbox titled "CH". This refers‬
‭
to the Channel of the objects. As seen in figure 9.3, you can input "1" in "CH" to‬
‭
put them on the same Channel as the player.‬
‭
162‬
‭
We will now activate the first and second Pulse and Rotate Gameplay Triggers‬
‭
in the correct order. When reaching the second Rotate Gameplay Trigger, we‬
‭
want to put the player on a different Channel again. If we do not do this, the‬
‭
top left Rotate Gameplay Trigger is activated at the same time as the second‬
‭
one, resulting in unwanted behavior. Similar to figure 9.2, we now change the‬
‭
Channel of the player to 2 by using the "Change Channel" option in the‬
‭
Rotate Gameplay Trigger.‬
‭
163‬
‭
We repeat this for all Triggers. We change the Triggers that we want to‬
‭
activate to the Channel the player is currently on, and we change the Channel‬
‭
of the player whenever we reach a new Rotate Gameplay Trigger. See figure‬
‭
9.5 for the final settings for our example.‬
‭
Channels should be used for‬‭
Speed Changers‬‭
as well,‬‭
to ensure that the sync‬
‭
does not behave weirdly when having rotated or reversed gameplay. When‬
‭
playtesting the music in the editor, you will see that the line now changes‬
‭
directions accordingly and at the right position. If you have several Triggers on‬
‭
one Channel, they will be read in the direction of the arrow. You can playtest‬
‭
the music and see the direction in which the line goes to see the order in‬
‭
which the Triggers or Gameplay Objects will be activated.‬
‭
164‬
‭
10. Keyframe System‬
‭
The Keyframe System allows you to create precise animations using‬
‭
movement, rotation, and scaling with a single Trigger. This is done with‬
‭
several keyframes, which can be freely modified in turn.‬
‭
We will be going through all the options by creating an example. Assume we‬
‭
want to animate a cube moving in and jumping over Spikes. We will first‬
‭
create the cube we plan to animate and assign a Group ID to it, as well as the‬
‭
Spikes the cube will interact with, as seen in figure 10.2.‬
‭
165‬
‭
The cube has Group ID 1 assigned to it. We will now place a‬‭
Keyframe Trigger‬
‭
to understand how basic movement using keyframes works. Place one of‬
‭
these Triggers, click "Copy+Paste" to duplicate it, and move the copied Trigger‬
‭
some blocks to the right. The Triggers will draw a green line between them, as‬
‭
seen in figure 10.3. The line indicates that they are connected and are part of‬
‭
the same animation.‬
‭
The Keyframe Triggers by themselves are not enough to create the animation.‬
‭
You need to configure a‬‭
Keyframe Animation Trigger‬‭
as well. Assign a Group‬
‭
ID to your first Keyframe Trigger, and input your Group IDs in the Keyframe‬
‭
Animation Trigger, as seen in figure 10.4. The Animation Group ID refers to the‬
‭
Group ID your first Keyframe Trigger has. The Target ID refers to the objects‬
‭
that get animated. The Parent ID is optional and is used to reference the‬
‭
center of the target objects for rotation and scaling. By default, all objects will‬
‭
use their own center. The second page of the Keyframe Animation Trigger‬
‭
modifies several animation options. We will be using some of them later. For‬
‭
more information regarding the settings, check its subchapter in the Triggers‬
‭
chapter.‬
‭
166‬
‭
When playtesting, the cube should now move the same distance to the right‬
‭
as the distance between the two Keyframe Triggers. We can now add more‬
‭
Keyframe Triggers and change their positions, rotations, and sizes, and the‬
‭
cube will follow all of them. However, creating precise animations with only‬
‭
the Keyframe Triggers is difficult, as we do not have any reference points. To‬
‭
change this, we will use the "Preview Art" option in the Keyframe Triggers.‬
‭
For the Keyframe Triggers to preview our cube, we have to assign a Parent‬
‭
Group ID to the cube. This Parent Group ID works as a reference point for the‬
‭
Keyframe Triggers. All movement, rotation, and scaling will use the Parent‬
‭
Group ID as the center. Our cube should scale and rotate around its own‬
‭
center, so we will add a new object to our cube, as seen in figure 10.5. This‬
‭
object also follows the animation. To mark this object as the Group Parent ID,‬
‭
we will click the "P" button in the‬‭
Edit Group‬‭
menu.‬‭
Doing so turns the Group‬
‭
ID pink, as seen in figure 10.6.‬
‭
167‬
‭
In the first Keyframe Trigger, we can input the Group ID of our cube now. By‬
‭
clicking the Preview Art option, the keyframe will be replaced with our cube‬
‭
objects, as seen in figure 10.7. Note that the Preview Art option does not work‬
‭
without the objects having a Group Parent ID, as the Keyframe Triggers have‬
‭
no center to draw from without it. You can enable the Preview Art option in‬
‭
the other Keyframe Triggers and hide the Group Parent ID object now.‬
‭
168‬
‭
With our keyframes looking like our art now, we have a lot more control over‬
‭
the movements. However, with all the frames showing at full opacity and‬
‭
layering between them inconsistently, doing exact animations is difficult. You‬
‭
can enable the "Ref Only" option in Keyframe Triggers for lower opacity, as‬
‭
seen in figure 10.7. The "Auto Layer" option fixes our layering issues. This‬
‭
option draws the most recent keyframe at the highest layer, so you always‬
‭
have it completely visible.‬
‭
You can now create your animation by setting more keyframes at important‬
‭
locations. In our example, this is the beginning of the animation, the position‬
‭
where the cube begins to jump, the movement and rotation during the jump,‬
‭
and the position the cube lands at. You can modify each keyframe position,‬
‭
rotation, and size, as seen in figure 10.8.‬
‭
169‬
‭
If you look closely, the jump is not smooth at all. It consists of only straight‬
‭
lines between frames with no curvature. To fix this, enable the "Curve" option‬
‭
for the relevant Keyframe Triggers, which results in a much smoother‬
‭
animation, as seen in figure 10.9.‬
‭
170‬
‭
When playtesting, you will notice that the animation still looks weird. The‬
‭
movement speed between the frames is inconsistent, resulting in the jump‬
‭
being slower than the sliding. The is is because of the "Time" option, which‬
‭
checks for the "Duration" value. Right now, the "Duration" value is 0.5, which‬
‭
means the animation from one keyframe to the next one takes 0.5 seconds.‬
‭
However, we want the duration to change based on the distance of the‬
‭
Triggers. Triggers that are further apart take longer than ones closer to each‬
‭
other.‬
‭
We can achieve this by enabling the "Dist" option. The "Even" option makes‬
‭
the time between keyframes even, disregarding the distance. Note that the‬
‭
first Keyframe Trigger should always use the "Time" option, as the other‬
‭
keyframes marked as "Ref Only" will not be considered for the other options‬
‭
otherwise, resulting in rash movements. The Keyframe Triggers should look‬
‭
like this now.‬
‭
171‬
‭
Depending on how many keyframes you placed, the movement may still look‬
‭
too slow. You can change this by modifying the time variable in the Keyframe‬
‭
Animation Trigger. On the second page, you will find the "Time Mod" option,‬
‭
which speeds up or slows down your animation depending on what value you‬
‭
put. A value smaller than 1 will speed the animation up, while a value greater‬
‭
than 1 will slow the animation down. Play around with the "Time", "Even",‬
‭
"Dist", "Duration", and modifier settings to find a good balance to create‬
‭
smooth movements.‬
‭
With this, our first animation is complete. Assume that we want to create a‬
‭
second cube jumping over the Spikes from the other side using the same‬
‭
keyframe animation. We first create our second cube and give it a new Group‬
‭
ID. We now want to make a copy of our keyframes. However, using‬
‭
"Copy+Paste" does not work, as the keyframes will be connected. We can‬
‭
instead use the "Dup Anim" button within the keyframes. By inputting our‬
‭
new Group ID, we are now referencing the new cube. Assign a new Group ID‬
‭
to the first Keyframe Trigger and place a new Keyframe Animation Trigger‬
‭
with all new Group IDs. The result is figure 10.11.‬
‭
172‬
‭
When playtesting, you will see that the second cube will not jump over the‬
‭
Spikes. Instead, it will follow the exact movement of the first cube. By clicking‬
‭
the "Reverse Order" button, the animation is done in reverse like we want.‬
‭
Movement to the right will go to the left instead.‬
‭
If we want to change anything about our cube art, for example adding more‬
‭
details or changing the color, we will see that the Keyframe Trigger art is not‬
‭
updated accordingly. To fix this, click the "Update Art" button in any Keyframe‬
‭
Trigger.‬
‭
Due to how we set up the keyframes, our rotations will always be in the‬
‭
correct direction. However, you might want to rotate some frames clockwise‬
‭
and others counter-clockwise. You can achieve this by clicking "CW" for‬
‭
clockwise or "CCW" for counter-clockwise. By default, rotations happen in the‬
‭
closer direction. The "x360" option adds an entire rotation before reaching the‬
‭
keyframe.‬
‭
We want to finalize our animation by adding a screen pulse when the cubes‬
‭
land. To do this, we can use the "Spawn ID" feature in the Keyframe Triggers.‬
‭
Configure a‬‭
Pulse Trigger‬‭
like normal and assign it‬‭
a Group ID. Input this‬
‭
Group ID into a Keyframe Trigger. The pulse will spawn when the animation‬
‭
reaches that keyframe. Using the "SpawnDelay" option can delay the Trigger‬
‭
by a set duration. Alternatively, you can use the "Prox" option to spawn the‬
‭
pulse when the cube is close to the keyframe.‬
‭
173‬
‭
And with that, our animation is finished. Figure 10.12 shows the final setup.‬
‭
You can move the Keyframe Triggers out of the screen now without the‬
‭
animation changing. For an easy way to select all keyframes in an animation,‬
‭
click one of them and click the "Select All" button.‬
‭
174‬
‭
11. Auto-Build System‬
‭
The Auto-Build System allows you to create designs from a premade‬
‭
template. This makes it particularly useful to speed up block design creation.‬
‭
However, the system can also be used across levels, making it work well for 3D‬
‭
lines, layouts, and more too. To get started, place one of the last 3 objects in‬
‭
the Blocks tab (first tab under "Build") in the editor. These are called‬
‭
Smart-Blocks. Afterwards, click "Edit Special" to open the following menu:‬
‭
We will be going through all the settings by creating several examples. First,‬
‭
we will use premade templates to achieve some basic designs. Then, we will‬
‭
set up our own templates for more complex designs and use the system to‬
‭
generate random Spike designs.‬
‭
We start by creating a new template. To do this, go to the "Browser" tab. It‬
‭
should look like figure 11.2 when you first open it. Click the "New" button and‬
‭
enter a name to create a new template.‬
‭
175‬
‭
You will see information about our template below the name. "Defined" refers‬
‭
to how many different templates we have created. "Variations" refers to how‬
‭
many variations our designs have. The "46" refers to the default template‬
‭
blocks, which we will use in our first example to create a block design.‬
‭
176‬
‭
Click the "Browse" button to see all premade Smart-Block templates, as seen‬
‭
in figure 11.4. By clicking on a template, you can add it to the editor. The‬
‭
amount of templates you add does not matter, but by creating all 46‬
‭
premade ones, you ensure your template is functional for simple structures.‬
‭
For our example, we will design all templates.‬
‭
177‬
‭
We can now start creating our design on the template. Blocks with dashed‬
‭
outlines function as references. You fill out the solid outline blocks as if the‬
‭
reference blocks were in your design. See the figure below.‬
‭
You can build your design across different layers. Additionally, you can add‬
‭
details up to 1 block space outside of the Smart-Block. After finishing every‬
‭
design, we have the result in figure 11.7.‬
‭
178‬
‭
Now that we have finished our design, we want to update our template to‬
‭
include our decoration. Select everything you have created, as well as the‬
‭
Smart-Blocks. Go into the "Browser" tab again and ensure you use your‬
‭
template. After doing so, click the blue "Template" button on the initial page.‬
‭
If you return to the screen from which we copied the premade templates, our‬
‭
new designs can now be seen, as shown below.‬
‭
179‬
‭
With that, we have created our first template. We now want to test it by‬
‭
generating the design for custom structures. To do so, build structures using‬
‭
the Smart-Blocks, as seen in figure 11.10. After doing so, select all the‬
‭
Smart-Blocks, open the system's menu from "Edit Special", and click the‬
‭
"Create" button. This gives the result in figure 11.11.‬
‭
We can automatically fill any Smart-Block structures with our template‬
‭
design. It can also be used across levels if we wish to reuse it at any point.‬
‭
180‬
‭
Even though the premade templates worked well for our structures, we are‬
‭
still limited in what we can create. Because of this, we now want to add to our‬
‭
template and expand it with new structures and slopes. Click the "Create All"‬
‭
button to paste all of your templates so far. Click "Paste Template" to see the‬
‭
first structure we want to expand. As you can see, the template does not‬
‭
create the designs correctly, as seen in figure 11.12. We now recreate our‬
‭
design in the new structures to be correct, as seen in figure 11.13.‬
‭
181‬
‭
We created these structures like new templates. We now also want to add‬
‭
slopes to our templates. To do this, we can make our own templates to‬
‭
decorate. To create your own templates, use the Smart-Blocks to create the‬
‭
structures you need. With more variations, your result gets more precise.‬
‭
You would usually have to create versions for all rotations of the slopes.‬
‭
However, by enabling "Allow Rotation", "Allow Flip X", and "Allow Flip Y" in the‬
‭
main menu, seen below, one version is enough.‬
‭
182‬
‭
We can now fill the slopes with our design. Like with the premade templates,‬
‭
we can place details up to 1 block space outside the Smart-Blocks.‬
‭
Let us create a new template now with all the new templates added. Like‬
‭
before, go to the "Browser" tab and create a new template. Use it, select all‬
‭
designs along with their Smart-Blocks, and click "Template". The Auto-Build‬
‭
System will deconstruct our slopes into singular blocks, as shown in figure‬
‭
10.17. With that, we have finished our second template.‬
‭
183‬
‭
Templates can have several variations, indicated by a small number on the‬
‭
templates, as seen in figure 11.18. Variations can have different odds of being‬
‭
used, which can create more details. In our third and final example, we want‬
‭
to create a template that generates unique configurations of Spikes on the‬
‭
ground.‬
‭
We first decide what Spike variations we want to use. The best way to achieve‬
‭
this is to create all the variations we want in the editor as follows:‬
‭
184‬
‭
As you can see, the Spikes always start and end with the same Spikes. We also‬
‭
want our Spikes to be variable in length and only have the corner Spikes at‬
‭
the start and end. To achieve this, we will be using reference blocks.‬
‭
Reference blocks indicate that a variation gets used if another Smart-Block is‬
‭
at the location of the reference block. We can use this to set up our templates,‬
‭
as shown in figure 11.21. The left corner Spike requires another Spike to the‬
‭
right of it, while the right corner Spike requires another Spike to the left of it.‬
‭
(You mark a Smart-Block as a reference by clicking the "Reference Only"‬
‭
option, as shown in figure 11.20.)‬
‭
185‬
‭
For our other Spikes, we require another Spike to the left and the right of‬
‭
each. We can use the reference blocks to indicate this by placing one to the‬
‭
left and one to the right of our Smart-Block. Using the same templates six‬
‭
times for all our Spike variations leaves us with the result shown in figure 11.22.‬
‭
We now create a new template, and update it with the templates we created.‬
‭
The template browser should show our corner Spikes and one of the other six‬
‭
Spikes with a small "6" on it.‬
‭
186‬
‭
You can click on the Spike template to view all variations, as seen in figure‬
‭
11.24. Right now, none of the variations have the odds to appear. To change‬
‭
this, click all variations and hit the "Add" button.‬
‭
187‬
‭
Doing so has made the odds of each appear below the respective variation.‬
‭
Currently, every variation has a one in six chance. For our example, we want‬
‭
the fifth variation to be rarer than the others and the third to be more likely.‬
‭
To do this, we first deselect variation five and click "Add" to increase their‬
‭
odds. After that, we deselect all besides variation three and click "Add". This‬
‭
process changes the odds of the selected variations appropriately.‬
‭
Now, all the odds should have changed accordingly. We can now place‬
‭
Smart-Blocks and click "Create" to generate unique variations of ground‬
‭
Spikes, with each Spike having different odds, the length being variable, and‬
‭
the corner Spikes always at the correct position. Figure 11.26 shows some‬
‭
examples.‬
‭
188‬
‭
12. Pause Menu‬
‭
There are various options and buttons that can customize your experience in‬
‭
the editor. These are mostly found in the Pause Menu of the editor, which is‬
‭
found by clicking the button in the top right. It looks like this:‬
‭
Here, there are a lot of options (seen as checkboxes) and buttons that may or‬
‭
may not be self-explanatory. In this chapter, a small description of each is‬
‭
provided in case you need help. For clarity, the options are shown inside a‬
‭
blue box, while the buttons are shown inside the red boxes.‬
‭
Options‬
‭
These options, shown in blue in figure 11.1, customize the editor view in‬
‭
specific ways. In other words, they have no actual effect on the level itself, but‬
‭
rather the experience of making it. Here is a short description of each one.‬
‭
189‬
‭
●‬ ‭
Show Hitboxes:‬‭
Draws hitboxes for objects that interact with the player.‬
‭
The hitboxes of blocks are drawn in white, while the hitboxes of obstacles,‬
‭
such as saws and Spikes, are drawn in red. In other words, collision with a‬
‭
red line leads to death.‬‭
Gameplay Objects‬‭
are drawn‬‭
in green.‬
‭
●‬ ‭
Hide Invisible:‬‭
Hides objects that are set to be invisible‬‭
in the editor. (This‬
‭
only affects objects that are set to "Hide" inside‬‭
Extras‬‭
of‬‭
Edit Group‬
‭
.)‬
‭
●‬ ‭
Preview Mode:‬‭
Shows the level close to how it looks‬‭
in-game when played.‬
‭
This means that you can see how the colors of objects, the Background,‬
‭
Ground, and so on look together while in the editor.‬
‭
●‬ ‭
Preview Animations:‬‭
Shows‬‭
Animated Objects‬‭
how they‬‭
look in-game.‬
‭
●‬ ‭
Preview Particles:‬‭
Shows particles how they look in-game.‬
‭
●‬ ‭
Preview Shaders:‬‭
Shows shader effects how they look‬‭
in-game.‬
‭
●‬ ‭
Show Ground:‬‭
Shows the Ground. Disabling this is useful‬‭
if you want to‬
‭
place objects underneath it.‬
‭
●‬ ‭
Show Object‬‭
Info:‬‭
Shows some information about selected‬‭
objects. This is‬
‭
seen as text in the top left of the editor. The different abbreviations are as‬
‭
follows: "C" is Color Channel, "C1" is Base Color, "C2" is Detail Color, "G" is‬
‭
grid position, and "EL" is editor layer.‬
‭
●‬ ‭
Show Grid:‬‭
Shows the editor grid.‬
‭
●‬ ‭
Select Filter:‬‭
Lets you use the Group ID and Color‬‭
Channel filters in the‬
‭
"Delete" tab to select objects (while in the "Edit" tab).‬
‭
●‬ ‭
Ignore Damage:‬‭
Lets you playtest without dying, regardless‬‭
of the‬
‭
obstacles you touch.‬
‭
190‬
‭
Buttons‬
‭
The buttons seen in red in figure 12.1 perform various actions that are helpful‬
‭
when creating. First are the two buttons in the center at the bottom, which‬
‭
toggle‬‭
music guidelines‬‭
and open this guide, respectively.‬
‭
●‬ ‭
ReGroup:‬‭
If you have selected objects with various‬‭
Group IDs, you can use‬
‭
this to change all the corresponding Group IDs to use the lowest ones not‬
‭
yet used.‬
‭
●‬ ‭
Create Loop:‬‭
After selecting a Trigger setup, you‬‭
can click this to create a‬
‭
Spawn Loop for you.‬
‭
●‬ ‭
Keys:‬‭
Shows various key bindings that are useful while‬‭
in the editor.‬
‭
●‬ ‭
AlignX/AlignY:‬‭
If you have various objects selected,‬‭
they are all aligned‬
‭
evenly on the X-axis or Y-axis respectively.‬
‭
●‬ ‭
Build Helper:‬‭
If you select various objects in your‬‭
level, including Triggers,‬
‭
and click this, any already used Group IDs and their references inside‬
‭
Triggers will be distributed to new unused Group IDs. Useful for‬
‭
collaborations where some people may have used overlapping Group IDs.‬
‭
●‬ ‭
Copy+Color:‬‭
Copies the selected objects including‬‭
all of their Color‬
‭
Channels' starting settings. Useful for copying and pasting across levels. By‬
‭
default, copying and pasting across levels does not include the Color‬
‭
Channel information.‬
‭
●‬ ‭
Select All:‬‭
Selects every object in the level.‬
‭
●‬ ‭
Paste+Color:‬‭
Pastes the objects and Color Channel‬‭
information after using‬
‭
"Copy+Color".‬
‭
●‬ ‭
Select All Left/Right:‬‭
Selects all objects to the‬‭
left or right, respectively, of‬
‭
where you are in the editor.‬
‭
●‬ ‭
Create Extras:‬‭
This adds outline objects for certain‬‭
types of blocks, such as‬
‭
the ones that look like rocks.‬
‭
●‬ ‭
Unlock Layers:‬‭
Unlocks all layers that are locked‬‭
at once.‬
‭
191‬
‭
●‬ ‭
New GroupX/Y:‬‭
Assigns new Group IDs to the selected objects, going from‬
‭
left to right or bottom to top respectively.‬
‭
●‬ ‭
Reset Unused:‬‭
Resets all Color Channels that are not‬‭
used by any objects.‬
‭
●‬ ‭
Uncheck Portals:‬‭
Unchecks all checked Portals. Checked‬‭
Portals show the‬
‭
roof and ground boundaries.‬
‭
Not mentioned in this list is the gear in the top right. This is used to customize‬
‭
the editor in various ways. You can, for example, increase the amount of rows‬
‭
or buttons per row for "Build" and "Edit". This is helpful when working with‬
‭
tabs that have many buttons. Additionally, there are many other options that‬
‭
toggle different things in the editor. If you are unsure what an option does,‬
‭
click the information box (seen as an "i" button).‬
‭
192‬
‭
13. Sharing Your Level‬
‭
Verifying‬
‭
Once you are finished with your level, you have to verify it before you can‬
‭
publish it. This means that you have to beat your level by clicking "Save and‬
‭
Play" in the‬‭
Pause Menu‬
‭
. You can also click the play‬‭
button from the Level‬
‭
Menu (figure 13.1). It must be an attempt from the start of the level, so a‬‭
Start‬
‭
Position‬‭
cannot be used. If your level has any‬‭
User‬‭
Coins‬
‭
, these must also be‬
‭
collected. Note that you can collect the User Coins on different attempts, as‬
‭
long as all lead to you beating the level. For example, if your level has 2 User‬
‭
Coins, you can collect the first in one attempt, and then the second in another‬
‭
attempt.‬
‭
Level Menu‬
‭
After successfully verifying your level (and its potential User Coins), head out‬
‭
of the level and go to the Level Menu, seen in figure 13.1. As you can see, it says‬
‭
that the status is "Verified" on the bottom right. This means that you are ready‬
‭
to upload your level.‬
‭
193‬
‭
The other text gives various other details about the level. To the left is the‬
‭
level's length if the Game Type is Classic: 0-10 seconds is "Tiny", 10-30 seconds‬
‭
is "Short", 30-60 seconds is "Medium", 60-120 seconds is "Long", and 120+‬
‭
seconds is "XL" (for Extra Long). If the level is Platformer, this will simply say‬
‭
"Plat." since these levels' length cannot be determined easily. In the middle is‬
‭
the starting song, and below that is the version and ID (once shared).‬
‭
On the right are buttons for various actions. First is deleting the local editor‬
‭
level. This action cannot be undone, so only use this if you are certain. Below‬
‭
that is a button that opens this guide. Third is a button to make another‬
‭
editor copy of the level, and finally is a button to move the level to the top of‬
‭
your editor levels (indicated by the arrow). Clicking this will put the level at the‬
‭
top in the list seen by clicking the back arrow in the top left. To organize this‬
‭
list better, you can put your level into a specific folder, indicated by the folder‬
‭
with a "0" on the left side of the menu. The information button in the bottom‬
‭
left shows various statistics about your level.‬
‭
Before sharing your level, putting in a title and description at the top is most‬
‭
important. The title of a level cannot be updated once it is shared. You would‬
‭
have to reupload a new copy with a new name. However, the description can‬
‭
easily be changed. Note that writing one is optional.‬
‭
Uploading‬
‭
Once you have set a title you are satisfied with, click the third big button. This‬
‭
opens the level sharing interface, which is shown below. Here, the name and‬
‭
description is shown at the top. Below that, you can select how many Stars or‬
‭
Moons you want to request. To decide this accurately, we recommend playing‬
‭
levels on the Featured tab and getting an idea of the difficulty of rated levels.‬
‭
Note that you can skip choosing one without any problems later.‬
‭
194‬
‭
In the top right, indicated by the gear, are some extra settings. Clicking this‬
‭
opens the menu seen in figure 13.3. The "Unlisted" option means that your‬
‭
level will not show on any level lists or general search results. It will not show‬
‭
on your profile either. For users to find it, they must search the exact ID. Note‬
‭
that you do not need to verify a level to upload it as unlisted. On top of a level‬
‭
being unlisted, you can also enable "Friends Only", which means that a user‬
‭
must be your friend and search the exact ID to find it.‬
‭
195‬
‭
Once you are happy with all these settings, go ahead and click "Share Level".‬
‭
This will upload your level to the servers if there are no issues. On the Level‬
‭
Menu, the ID field will now be updated with your level's ID. This can be shared‬
‭
with others to help them find your level. To see how your level looks on the‬
‭
servers, head back to your list of editor levels seen below.‬
‭
Here, click the button in the bottom left (marked in red) to see your published‬
‭
levels. Your recently published level shows at the top. Clicking it takes you to‬
‭
its level page seen below. Here you can play it, see comments and the Level‬
‭
Leaderboards, and more.‬
‭
196‬
‭
The two buttons on the left, marked in red, may be useful in some cases. First‬
‭
is a button that removes your level from the server entirely. The button in the‬
‭
top right of this page only deletes it from your saved levels, but it can still be‬
‭
found by others. Secondly is another copy button, which is always enabled for‬
‭
the creator of a level (regardless of the copying options set earlier). This is‬
‭
useful if you no longer have a local editor copy of your level.‬
‭
Updating Levels‬
‭
The easiest way to update an uploaded level is to make edits on the local‬
‭
editor copy. This will change its status from "Uploaded" to "Unverified", and‬
‭
the version number also says 2 instead of 1. Once done with your edits, go‬
‭
through the process of verifying again, and then share it as you did before.‬
‭
This will automatically update the online level.‬
‭
197‬
‭
If you no longer have a local editor copy of the level, copy the online level from‬
‭
the button seen in figure 13.5. This makes a copy with an additional number at‬
‭
the end of the name. If you want to use this copy to update the level, you have‬
‭
to edit the title of this copy to be the exact same as the online level. After that,‬
‭
do your edits and share it as before. This also links the update to the shared‬
‭
level.‬
‭
Updating Descriptions‬
‭
As for updating only the description and not the level content, it is also best to‬
‭
have the exact copy that was uploaded. Once uploaded, the copy will show a‬
‭
new refresh button on the left, marked in red below. This is solely used to‬
‭
update the description. Simply type in your new description and click it.‬
‭
If you do not have the exact copy, you have to do the same as when you want‬
‭
to update a level by copying the published level. Unfortunately, the refresh‬
‭
description button will not show up in this case. You will have to verify the‬
‭
level again, type in your new description, and go through the sharing process.‬
‭
Make sure the level name is the exact same as the online level.‬
‭
198‬
‭
Rating‬
‭
After you have published a level publicly, the displayed Difficulty of the level‬
‭
may update. This is based on community ratings through the bottom right‬
‭
button in figure 13.5. Using this, players can get an idea of the Difficulty of your‬
‭
level. However, this does not mean the level gives any rewards when it is‬
‭
beaten.‬
‭
Your level gives rewards if RobTop, the developer of the game, plays it and‬
‭
gives it a certain amount of Stars or Moons. The amount ranges from 1 to 10.‬
‭
Stars are rewarded for Classic levels, while Moons are rewarded for Platformer‬
‭
levels. These show below the Difficulty face on the level page or level lists.‬
‭
Once rated, the Difficulty is locked and community votes are no longer‬
‭
available. These are the Star and Moon values for each Difficulty:‬
‭
●‬ ‭
Auto:‬‭
1 Star or Moon‬
‭
●‬ ‭
Easy:‬‭
2 Stars or Moons‬
‭
●‬ ‭
Normal:‬‭
3 Stars or Moons‬
‭
●‬ ‭
Hard:‬‭
4 to 5 Stars or Moons‬
‭
●‬ ‭
Harder:‬‭
6 to 7 Stars or Moons‬
‭
●‬ ‭
Insane:‬‭
8 to 9 Stars or Moons‬
‭
●‬ ‭
Demon:‬‭
10 Stars or Moons‬
‭
Within Demon levels, there is an additional separation into Easy, Medium,‬
‭
Hard, Insane, and Extreme Demons in order of increasing difficulty. This is‬
‭
solely based on community votes on levels already rated Demon by RobTop.‬
‭
Getting a higher Demon rating does not change the reward, only the‬
‭
Difficulty Face shown on the level.‬
‭
199‬
‭
If a player beats a Rated level, the amount of Stars or Moons are added to‬
‭
their profile statistics. If the level has User Coins, a rating may also involve‬
‭
verifying these so that they show on a user's profile when collected. This is the‬
‭
case if they are done properly as explained‬‭
here‬
‭
.‬
‭
There are no specific guidelines to ensure your level gets a rating. It is simply‬
‭
about whether RobTop likes it or not. However, some general tips are:‬
‭
●‬ ‭
At least 30 seconds in length‬
‭
●‬ ‭
Overall clear gameplay‬
‭
●‬ ‭
Decent visuals‬
‭
●‬ ‭
Optimized performance‬
‭
Additionally, how much RobTop likes it results in various types of ratings. This‬
‭
is indicated by an additional effect around the Difficulty Face, which is seen‬
‭
below. From left to right, we have Rated, Featured, Epic, Legendary, and‬
‭
Mythic. Each gives 1 more Creator Point than the last, which is a statistic‬
‭
shown on profiles and the Creators Leaderboard to highlight creators.‬
‭
One way to increase the chances of your level being rated is by requesting it‬
‭
to a Moderator. Moderators are players that can suggest high-quality levels to‬
‭
RobTop for a rating. They are indicated by a special "M" badge on their‬
‭
in-game profile.‬
‭
200‬
‭
For more information about the Rating System:‬
‭
https://www.boomlings.com/GDRating‬
‭
For more information about the Leaderboards:‬
‭
https://www.boomlings.com/GDLeaderboards‬
‭
14. Afterword‬
‭
Suggestions‬
‭
This document took a long time to write for us (Viprin and AutoNick). We‬
‭
hope that there is a lot of useful information here to help you create, whether‬
‭
you are new or experienced. However, it is by no means perfect. If you have‬
‭
suggestions for additions or changes, feel free to contact us through social‬
‭
media:‬
‭
●‬ ‭
Viprin:‬‭
Discord‬
‭
,‬‭
Twitter‬
‭
, and‬‭
YouTube‬
‭
.‬
‭
●‬ ‭
AutoNick:‬‭
Discord‬
‭
,‬‭
Twitter‬
‭
, and‬‭
YouTube‬
‭
.‬
‭
Special Thanks‬
‭
First, special thanks to‬‭
Erdyuri‬‭
and‬‭
Spu7Nix‬‭
for creating the cover. Of course,‬
‭
we also have to give a special thanks to‬‭
RobTop‬‭
for‬‭
creating this amazing‬
‭
editor in the first place. There are extremely few games that can compete in‬
‭
terms of complexity and possibilities. He also provided explanations and‬
‭
support for many parts of this document. Finally, special thanks to you for‬
‭
reading this document. Good luck creating in Geometry Dash!‬
‭
201‬

More Related Content

PDF
Sln skill cards
PDF
Controller trollers nielsens 10 heuristics_1115
PDF
Pong analysis gs
PPTX
Mercurial studios odoricodante_assignment1_0315.pptx
PDF
UE4BlueprintLadderVolumeTutorial
PPTX
02 unity 3_d_part_1
PDF
Scratch Animation
PPTX
Presentation2
Sln skill cards
Controller trollers nielsens 10 heuristics_1115
Pong analysis gs
Mercurial studios odoricodante_assignment1_0315.pptx
UE4BlueprintLadderVolumeTutorial
02 unity 3_d_part_1
Scratch Animation
Presentation2

Similar to Como usar Geometry Dash Editor (GDE).pdf (20)

PDF
Up cloth - GameDesignDoccument
PDF
Geometry Dash is tough but a terrific creative outlet.
PDF
This is an exciting platform game called Geometry Dash
PPT
Advanced Digital Photography
PDF
Animation basics
PDF
90%+ positive by design - takeaway version
PDF
TheAdventuresofLionel-GDD
PPTX
Fearsome Thorny Pigeons Laz Matech_week1assignment_march2015
PPTX
Fearsome thornypigeons leelisa_teamassignment1_0315
PPTX
04 Car race track game
DOC
roldan
PPTX
Alien invasion
PPTX
STS SEM User Interface
PPTX
Presentationsssssssssssssssssssssssssssssssssss.pptx
PDF
Tutorial2 scrolling shooter
PPTX
Jello karaboosqaud steyeraustin_assignment1_0715
DOC
Vicky stacey question four answer
PPTX
Control freaks nieslens10heuristics_1215.pptx
PPT
Presentation1.ppt
PDF
Drawing Splines on 3D
Up cloth - GameDesignDoccument
Geometry Dash is tough but a terrific creative outlet.
This is an exciting platform game called Geometry Dash
Advanced Digital Photography
Animation basics
90%+ positive by design - takeaway version
TheAdventuresofLionel-GDD
Fearsome Thorny Pigeons Laz Matech_week1assignment_march2015
Fearsome thornypigeons leelisa_teamassignment1_0315
04 Car race track game
roldan
Alien invasion
STS SEM User Interface
Presentationsssssssssssssssssssssssssssssssssss.pptx
Tutorial2 scrolling shooter
Jello karaboosqaud steyeraustin_assignment1_0715
Vicky stacey question four answer
Control freaks nieslens10heuristics_1215.pptx
Presentation1.ppt
Drawing Splines on 3D
Ad

Recently uploaded (20)

PPTX
Mathew Digital SEO Checklist Guidlines 2025
PDF
📍 LABUAN4D EXCLUSIVE SERVER STAR GAMING ASIA NO.1 TERPOPULER DI INDONESIA ! 🌟
PPTX
Layers_of_the_Earth_Grade7.pptx class by
PDF
Alethe Consulting Corporate Profile and Solution Aproach
PPTX
IPCNA VIRTUAL CLASSES INTERMEDIATE 6 PROJECT.pptx
PDF
Introduction to the IoT system, how the IoT system works
DOC
Rose毕业证学历认证,利物浦约翰摩尔斯大学毕业证国外本科毕业证
PDF
📍 LABUAN4D EXCLUSIVE SERVER STAR GAMING ASIA NO.1 TERPOPULER DI INDONESIA ! 🌟
PPTX
Slides PPTX: World Game (s): Eco Economic Epochs.pptx
PPTX
1402_iCSC_-_RESTful_Web_APIs_--_Josef_Hammer.pptx
PPT
12 Things That Make People Trust a Website Instantly
PDF
BIOCHEM CH2 OVERVIEW OF MICROBIOLOGY.pdf
PPT
FIRE PREVENTION AND CONTROL PLAN- LUS.FM.MQ.OM.UTM.PLN.00014.ppt
PDF
Session 1 (Week 1)fghjmgfdsfgthyjkhfdsadfghjkhgfdsa
PDF
The Ikigai Template _ Recalibrate How You Spend Your Time.pdf
PDF
SlidesGDGoCxRAIS about Google Dialogflow and NotebookLM.pdf
PPTX
Introduction to cybersecurity and digital nettiquette
PDF
Lean-Manufacturing-Tools-Techniques-and-How-To-Use-Them.pdf
PPTX
APNIC Report, presented at APAN 60 by Thy Boskovic
PDF
The Evolution of Traditional to New Media .pdf
Mathew Digital SEO Checklist Guidlines 2025
📍 LABUAN4D EXCLUSIVE SERVER STAR GAMING ASIA NO.1 TERPOPULER DI INDONESIA ! 🌟
Layers_of_the_Earth_Grade7.pptx class by
Alethe Consulting Corporate Profile and Solution Aproach
IPCNA VIRTUAL CLASSES INTERMEDIATE 6 PROJECT.pptx
Introduction to the IoT system, how the IoT system works
Rose毕业证学历认证,利物浦约翰摩尔斯大学毕业证国外本科毕业证
📍 LABUAN4D EXCLUSIVE SERVER STAR GAMING ASIA NO.1 TERPOPULER DI INDONESIA ! 🌟
Slides PPTX: World Game (s): Eco Economic Epochs.pptx
1402_iCSC_-_RESTful_Web_APIs_--_Josef_Hammer.pptx
12 Things That Make People Trust a Website Instantly
BIOCHEM CH2 OVERVIEW OF MICROBIOLOGY.pdf
FIRE PREVENTION AND CONTROL PLAN- LUS.FM.MQ.OM.UTM.PLN.00014.ppt
Session 1 (Week 1)fghjmgfdsfgthyjkhfdsadfghjkhgfdsa
The Ikigai Template _ Recalibrate How You Spend Your Time.pdf
SlidesGDGoCxRAIS about Google Dialogflow and NotebookLM.pdf
Introduction to cybersecurity and digital nettiquette
Lean-Manufacturing-Tools-Techniques-and-How-To-Use-Them.pdf
APNIC Report, presented at APAN 60 by Thy Boskovic
The Evolution of Traditional to New Media .pdf
Ad

Como usar Geometry Dash Editor (GDE).pdf

  • 2. ‭ Geometry Dash Editor Guide‬ ‭ The Geometry Dash editor allows you to create custom levels any way you‬ ‭ want. A level can be simple or detailed, short or long, easy or difficult, and so‬ ‭ on. The opportunities are endless. However, to be able to make exactly what‬ ‭ you want, there are a wide variety of features that are helpful or even‬ ‭ necessary. Learning everything yourself is a near impossible task given the‬ ‭ size of the editor as of update 2.2. That is exactly what this guide's purpose is:‬ ‭ To help you out, whether you are new to the editor or already a veteran. There‬ ‭ should be something helpful here either way. Use the list below if there is‬ ‭ anything specific you are looking for.‬ ‭ Other Languages‬ ‭ ●‬ ‭ Para acceder a una traducción española, mire‬‭ aquí‬ ‭ .‬ ‭ ●‬ ‭ Перейдите‬‭ сюда‬‭ для русского перевода этого документа.‬ ‭ Table of Contents‬ ‭ 1. Basics‬ ‭ 6‬ ‭ Getting Started‬ ‭ 6‬ ‭ Level Settings‬ ‭ 7‬ ‭ Placing Objects‬ ‭ 11‬ ‭ Editing Objects‬ ‭ 14‬ ‭ Scaling & Warping‬ ‭ 16‬ ‭ Select Color‬ ‭ 17‬ ‭ Deleting Objects‬ ‭ 20‬ ‭ Other Buttons‬ ‭ 22‬ ‭ 2. Picking Song‬ ‭ 26‬ ‭ Starting Song‬ ‭ 26‬ ‭ Music Library‬ ‭ 27‬ ‭ Newgrounds‬ ‭ 28‬ ‭ 1‬
  • 3. ‭ Song Settings‬ ‭ 30‬ ‭ Guideline Creator‬ ‭ 30‬ ‭ Later Customization‬ ‭ 31‬ ‭ 3. Gameplay Objects‬ ‭ 32‬ ‭ Description‬ ‭ 32‬ ‭ Pads‬ ‭ 32‬ ‭ Orbs‬ ‭ 33‬ ‭ Portals‬ ‭ 34‬ ‭ Speed Changers‬ ‭ 36‬ ‭ Letter Objects‬ ‭ 36‬ ‭ Force Objects‬ ‭ 39‬ ‭ 4. Animated Objects‬ ‭ 40‬ ‭ Description‬ ‭ 40‬ ‭ Monsters‬ ‭ 40‬ ‭ Edit Special‬ ‭ 41‬ ‭ Particle Editor‬ ‭ 43‬ ‭ 5. Items‬ ‭ 51‬ ‭ Description‬ ‭ 51‬ ‭ User Coins‬ ‭ 51‬ ‭ Custom Collectables‬ ‭ 52‬ ‭ 6. Edit Group‬ ‭ 54‬ ‭ Functionality‬ ‭ 54‬ ‭ Using Groups‬ ‭ 56‬ ‭ Extra Options‬ ‭ 57‬ ‭ Special IDs‬ ‭ 60‬ ‭ 7. Triggers‬ ‭ 61‬ ‭ Description‬ ‭ 61‬ ‭ Start Pos‬ ‭ 62‬ ‭ Color‬ ‭ 62‬ ‭ Move‬ ‭ 63‬ ‭ Stop‬ ‭ 66‬ ‭ Pulse‬ ‭ 67‬ ‭ Alpha‬ ‭ 68‬ ‭ Toggle‬ ‭ 68‬ ‭ Spawn‬ ‭ 68‬ ‭ Rotate‬ ‭ 71‬ ‭ 2‬
  • 4. ‭ Scale‬ ‭ 73‬ ‭ Follow‬ ‭ 74‬ ‭ Shake‬ ‭ 75‬ ‭ Animate‬ ‭ 75‬ ‭ Keyframe Animation‬ ‭ 76‬ ‭ Follow Player Y‬ ‭ 76‬ ‭ Advanced Follow‬ ‭ 77‬ ‭ Edit Advanced Follow‬ ‭ 84‬ ‭ Re-Target Advanced Follow‬ ‭ 85‬ ‭ Keyframe‬ ‭ 85‬ ‭ Area Move/Rotate/Scale/Fade/Tint‬ ‭ 90‬ ‭ Edit Area Move/Rotate/Scale/Fade/Tint‬ ‭ 99‬ ‭ Area Stop‬ ‭ 99‬ ‭ Change BG/G/MG‬ ‭ 99‬ ‭ Touch‬ ‭ 99‬ ‭ Count‬ ‭ 100‬ ‭ Instant Count‬ ‭ 101‬ ‭ Pickup‬ ‭ 101‬ ‭ Time‬ ‭ 102‬ ‭ Time Event‬ ‭ 103‬ ‭ Time Control‬ ‭ 103‬ ‭ Item Edit‬ ‭ 104‬ ‭ Item Compare‬ ‭ 108‬ ‭ Persistent Item‬ ‭ 111‬ ‭ Random‬ ‭ 111‬ ‭ Advanced Random‬ ‭ 111‬ ‭ Sequence‬ ‭ 112‬ ‭ Spawn Particles‬ ‭ 113‬ ‭ Reset‬ ‭ 114‬ ‭ Zoom‬ ‭ 115‬ ‭ Static Camera‬ ‭ 115‬ ‭ Camera Offset‬ ‭ 116‬ ‭ Gameplay Offset‬ ‭ 116‬ ‭ Camera Rotation‬ ‭ 116‬ ‭ Camera Edge‬ ‭ 117‬ ‭ Camera Guide‬ ‭ 117‬ ‭ 3‬
  • 5. ‭ Reverse‬ ‭ 118‬ ‭ Rotate Gameplay‬ ‭ 118‬ ‭ Song‬ ‭ 119‬ ‭ Edit Song‬ ‭ 119‬ ‭ SFX‬ ‭ 124‬ ‭ Edit SFX‬ ‭ 125‬ ‭ Event‬ ‭ 126‬ ‭ TimeWarp‬ ‭ 127‬ ‭ Camera Mode‬ ‭ 127‬ ‭ Setup MG‬ ‭ 127‬ ‭ BG/MG Speed‬ ‭ 128‬ ‭ Counter Label‬ ‭ 128‬ ‭ UI Settings‬ ‭ 129‬ ‭ Visibility Link‬ ‭ 130‬ ‭ Collision‬ ‭ 130‬ ‭ Instant Collision‬ ‭ 131‬ ‭ Collision State‬ ‭ 131‬ ‭ Collision Block‬ ‭ 131‬ ‭ Toggle Block‬ ‭ 132‬ ‭ On Death‬ ‭ 132‬ ‭ Disable/Enable Trail‬ ‭ 133‬ ‭ Show/Hide‬ ‭ 133‬ ‭ BG Effect On/Off‬ ‭ 133‬ ‭ End‬ ‭ 134‬ ‭ Player Control‬ ‭ 134‬ ‭ Options‬ ‭ 135‬ ‭ BPM Guide‬ ‭ 135‬ ‭ Gradient‬ ‭ 136‬ ‭ Gravity‬ ‭ 137‬ ‭ Teleport‬ ‭ 137‬ ‭ Shader‬ ‭ 139‬ ‭ ShockWave‬ ‭ 139‬ ‭ Shock Line‬ ‭ 141‬ ‭ Glitch‬ ‭ 142‬ ‭ Chromatic‬ ‭ 143‬ ‭ Chromatic Glitch‬ ‭ 143‬ ‭ 4‬
  • 6. ‭ Pixelate‬ ‭ 144‬ ‭ Lens Circle‬ ‭ 145‬ ‭ Radial Blur‬ ‭ 145‬ ‭ Motion Blur‬ ‭ 147‬ ‭ Bulge‬ ‭ 148‬ ‭ Pinch‬ ‭ 148‬ ‭ Gray Scale‬ ‭ 149‬ ‭ Sepia‬ ‭ 149‬ ‭ Invert Color‬ ‭ 150‬ ‭ Hue‬ ‭ 151‬ ‭ Edit Color‬ ‭ 152‬ ‭ Split Screen‬ ‭ 152‬ ‭ Enter Effects‬ ‭ 152‬ ‭ Move/Rotate/Scale/Fade/Tint Enter‬ ‭ 156‬ ‭ Stop Enter‬ ‭ 158‬ ‭ 8. Custom Objects‬ ‭ 159‬ ‭ 9. Channel System‬ ‭ 161‬ ‭ 10. Keyframe System‬ ‭ 165‬ ‭ 11. Auto-Build System‬ ‭ 175‬ ‭ 12. Pause Menu‬ ‭ 189‬ ‭ Options‬ ‭ 189‬ ‭ Buttons‬ ‭ 191‬ ‭ 13. Sharing Your Level‬ ‭ 193‬ ‭ Verifying‬ ‭ 193‬ ‭ Level Menu‬ ‭ 193‬ ‭ Uploading‬ ‭ 194‬ ‭ Updating Levels‬ ‭ 197‬ ‭ Updating Descriptions‬ ‭ 198‬ ‭ Rating‬ ‭ 199‬ ‭ 14. Afterword‬ ‭ 201‬ ‭ Suggestions‬ ‭ 201‬ ‭ Special Thanks‬ ‭ 201‬ ‭ 5‬
  • 7. ‭ 1. Basics‬ ‭ Getting Started‬ ‭ First, you have to find your way to the editor. On the main menu, click the‬ ‭ right button, and then click "Create" in the top left. This brings you to the‬ ‭ screen in figure 1.1, which is your list of custom levels. Note that levels here are‬ ‭ not public, but rather custom levels saved locally on your account. Public‬ ‭ levels are accessed through the bottom left button. More on that later. To‬ ‭ start a new level, do as the text says and click "New" in the bottom right.‬ ‭ 6‬
  • 8. ‭ At the top, you can set a level name and an optional description. The button‬ ‭ in the middle lets you play the level, while the right button is where you share‬ ‭ the level with others through the servers. To start editing, click the left button.‬ ‭ This brings you into the editor itself.‬ ‭ Level Settings‬ ‭ A good place to start is the main level settings, which are accessed by clicking‬ ‭ the gear button in the top right corner of the editor. This opens the window‬ ‭ seen below.‬ ‭ 7‬
  • 9. ‭ These settings decide the level's starting state. This means that they define‬ ‭ what a player sees at the start of their attempt. Many of these settings, such‬ ‭ as Speed, Game Mode, and colors, can be changed inside the level itself too.‬ ‭ This allows you to change them further into the level. Going through each‬ ‭ option in figure 1.4 in turn, we have:‬ ‭ ●‬ ‭ Game Type:‬‭ This is perhaps the most important option‬‭ to decide on, as it‬ ‭ changes how your level plays completely. It cannot be changed‬ ‭ throughout the level.‬ ‭ ○‬ ‭ Classic is the original way to play Geometry Dash levels, in which the‬ ‭ camera automatically scrolls to the side. To beat the level, the player has‬ ‭ to avoid obstacles to make it all the way to the end of the level. This is‬ ‭ done by clicking to change their vertical position in different ways‬ ‭ depending on the Game Mode. For example, in the most simple mode,‬ ‭ Cube, you jump by clicking, while something like Wave moves your icon‬ ‭ diagonally from holding.‬ ‭ ○‬ ‭ Platformer is the newest Game Type, and as the name implies, it lets‬ ‭ the player move around freely. You can click to move left or right as you‬ ‭ please, and another input allows jumping. How exactly the inputs work‬ ‭ depend on the device you are playing on.‬ ‭ 8‬
  • 10. ‭ ●‬ ‭ Speed:‬‭ This sets the starting speed of your level. It can be changed at any‬ ‭ point in the level. The blue option is the default speed, and the others are‬ ‭ modifiers of this. Each one is fittingly indicated by a reversed arrow or‬ ‭ more arrows depending on how much they modify the speed. The‬ ‭ reversed orange option is the slowest option, which is roughly 25% slower‬ ‭ than the normal speed. For double, triple, and quadruple arrows, the‬ ‭ modifier is roughly 25%, 50%, and 75% faster than the normal option.‬ ‭ ●‬ ‭ Mode:‬‭ This alters the way the icon moves when the‬‭ player clicks. It is often‬ ‭ referred to as Game Mode, and should not be confused with Game Type.‬ ‭ This can also be changed at any point in the level. The different ones are‬ ‭ shown in figure 1.6 below. From left to right, we have:‬ ‭ ○‬ ‭ Cube is the default Game Mode, which has the player click to jump as‬ ‭ previously mentioned. Interaction with objects such as Pads and Orbs‬ ‭ make it a bit more complex, but those are handled later.‬ ‭ ○‬ ‭ Ship lets the player fly, and the exact trajectory is dependent on clicks.‬ ‭ Holding down takes you up very fast, while letting go makes you fly‬ ‭ downwards. Clicking fast in a consistent pattern makes it possible to fly‬ ‭ in a straight horizontal line.‬ ‭ ○‬ ‭ Ball makes the player's icon circular, and movement makes it roll.‬ ‭ Clicking switches the gameplay gravity, which means that the icon goes‬ ‭ from rolling on the ground to rolling on the roof (or vice versa).‬ ‭ 9‬
  • 11. ‭ ○‬ ‭ UFO also makes the player fly, but instead of precise control like Ship,‬ ‭ clicking makes you boost a certain distance upwards. Holding down is‬ ‭ not possible.‬ ‭ ○‬ ‭ Wave has the player move diagonally by holding or letting go. If you‬ ‭ hold down, you move diagonally upwards, while letting go makes you‬ ‭ move diagonally downwards. This is disabled in Platformer.‬ ‭ ○‬ ‭ Robot is similar to Cube, but instead of a set jump height, the amount‬ ‭ you hold down decides the vertical movement. Clicking very fast leads‬ ‭ to a small jump, while holding down (to a certain limit) takes you‬ ‭ higher.‬ ‭ ○‬ ‭ Spider is similar to Ball, but clicking makes gravity switch instantly‬ ‭ rather than a slower rolling motion.‬ ‭ ○‬ ‭ Swing is also based on flying, but each click changes the player's gravity.‬ ‭ This is disabled in Platformer.‬ ‭ ●‬ ‭ Options:‬‭ This lets you set various other options.‬‭ Most of them, like Flip‬ ‭ Gravity and Reverse Gameplay, speak for themselves. Mini makes the‬ ‭ player's icon smaller, altering the effects of clicks to some degree. Dual‬ ‭ duplicates the icon into two, making it so that the player has to control two‬ ‭ icons. Every click affects both icons. Enabling 2-Player changes this to‬ ‭ require clicking on each side of the screen for each icon. Spawn Group lets‬ ‭ you set a specific target object, given by its Group ID, as the spawn‬ ‭ position. Applying Group IDs are covered more later, but essentially an‬ ‭ object may have a Group ID for Triggers to interact with it. Clicking the top‬ ‭ right gear button opens Legacy Options, which fix various older bugs.‬ ‭ These should not be changed in new levels.‬ ‭ ●‬ ‭ BG, G, and MG:‬‭ This sets the type of Background, Ground,‬‭ and‬ ‭ Middleground art to use from the start. The Ground is on the front layer,‬ ‭ making it the only one the player interacts with directly at the bottom of‬ ‭ the level. BG and MG are seen behind the player. The difference between‬ ‭ 10‬
  • 12. ‭ these two is their layering, with Background being furthest back. All of‬ ‭ these three can be‬‭ changed‬‭ at any point in the level.‬ ‭ ●‬ ‭ Font:‬‭ There is normally an attempt counter found at‬‭ the start of levels, and‬ ‭ this option changes the font used for this. It also changes any other text‬ ‭ objects found in the level. You cannot change this further into the level.‬ ‭ ●‬ ‭ Select Color:‬‭ At the top of the window, you can set‬‭ colors for various parts‬ ‭ of the level. BG, G, and MG set the colors for the art described earlier. (G2‬ ‭ and MG2 are secondary colors used for details.) Line is an outline for the‬ ‭ Ground. Clicking "More" lets you change the starting settings for the‬ ‭ custom Color Channels. These are used for other objects. Note that any‬ ‭ colors can be changed at any time in a level.‬ ‭ ●‬ ‭ Select Song:‬‭ This is where you set what song to use.‬‭ The various options‬ ‭ and menus are handled in the next chapter.‬ ‭ Placing Objects‬ ‭ Back to the main editor screen, the main part you will interact with is the‬ ‭ bottom section, seen in figure 1.7. To begin creating, have the "Build" button‬ ‭ on the left selected (indicated by blue color). This is where all the different‬ ‭ objects in the game are located. We will write "objects" in lower case to refer‬ ‭ to objects in general, so any goes. Clicking on an object selects it for use,‬ ‭ which lets you place it in your level. This is done by clicking at the desired‬ ‭ position on the grid. While an object is selected, you can enable "Swipe" on‬ ‭ the right side to place objects over the area you swipe (hold down and drag).‬ ‭ 11‬
  • 13. ‭ There are various types of objects, which are grouped into specific tabs based‬ ‭ on their properties. Each object is only found within one tab. Inside a tab, you‬ ‭ can also click through several pages using the arrow buttons. Going through‬ ‭ each tab in order, we have:‬ ‭ ●‬ ‭ Blocks:‬‭ This tab ranges from simple squares to more‬‭ detailed blocks.‬ ‭ Some have outlines, while others do not. This is visible by the white lines,‬ ‭ indicating that they are solid, which means they interact with the player‬ ‭ upon collision. Putting these in front of the player's movement means that‬ ‭ they have to jump to pass them. Colliding with a line horizontally leads to‬ ‭ death. However, landing on top of them is fine.‬ ‭ ●‬ ‭ Outlines:‬‭ Various basic outlines are found here. As‬‭ mentioned for the‬ ‭ previous tab, these interact with the player when touched.‬ ‭ ●‬ ‭ Slopes:‬‭ These are similar to blocks, but instead of‬‭ being square they are‬ ‭ sloped. There are two types of slopes in the game. One is basically a block‬ ‭ cut in half diagonally, making a 45 degree angle, while the other makes a‬ ‭ slope over 2 blocks. Interaction with a sloped outline is safe in most cases.‬ ‭ ●‬ ‭ Spikes:‬‭ Spikes lead to death on any collision no matter‬‭ what.‬ ‭ ●‬ ‭ 3D:‬‭ These can be combined with blocks to make them‬‭ look 3D.‬ ‭ 12‬
  • 14. ‭ ●‬ ‭ Gameplay Objects:‬‭ Various objects that affect gameplay are found here.‬ ‭ For example, this is where you find objects that change the Speed and‬ ‭ Game Mode as mentioned earlier. These are covered more in-depth in‬ ‭ their own chapter later. Click the title for a direct link to the chapter.‬ ‭ ●‬ ‭ Animated Objects:‬‭ While most objects are still by‬‭ default, the ones found‬ ‭ in this tab have certain animations built in. These are also covered more‬ ‭ in-depth in their own chapter later.‬ ‭ ●‬ ‭ Pixel Art:‬‭ Lots of different art made up of small‬‭ pixels are found here. None‬ ‭ of them interact with the player by default, but you can combine them‬ ‭ with lines or Spikes for the effect you want.‬ ‭ ●‬ ‭ Items:‬‭ These objects are used as Collectables that‬‭ can be picked up during‬ ‭ gameplay.‬ ‭ ●‬ ‭ Symbols:‬‭ Various Symbols, even some art from the game's‬‭ menus, are‬ ‭ found here. None of these are solid.‬ ‭ ●‬ ‭ Decorations:‬‭ Different types of objects that do not‬‭ interact with the player.‬ ‭ As the name implies, they are meant to be used as decorations to fill space.‬ ‭ ●‬ ‭ Pulsing Objects:‬‭ These are called Pulsing Objects‬‭ because they‬ ‭ automatically pulse to the beat of the song. Pulsing in this case means‬ ‭ scaling to a bigger size for more intense audio.‬ ‭ ●‬ ‭ Rotating Objects:‬‭ Many circular objects that automatically‬‭ rotate, such as‬ ‭ saws but also decorations. Saws are spiky and lead to death upon collision.‬ ‭ The speed and direction of all these objects can be customized.‬ ‭ 13‬
  • 15. ‭ ●‬ ‭ Triggers:‬‭ Triggers are more complex objects that let you do endless‬ ‭ customization, whether it is something as simple as moving an object to‬ ‭ something complex like making a bossfight. None of these objects show in‬ ‭ the level itself when played, but start their set operation when passed on‬ ‭ the X axis during gameplay. You can also make them Trigger when‬ ‭ touched by the player. Every Trigger is covered in-depth in its own chapter.‬ ‭ ●‬ ‭ Custom Objects:‬‭ This tab is empty when you are new‬‭ to the editor. It lets‬ ‭ you save combinations of objects to be reused at any time, even in another‬ ‭ level. Each one can have maximum 1000 objects, and you can make 250‬ ‭ custom objects in total. See the dedicated chapter for more details.‬ ‭ Editing Objects‬ ‭ After successfully placing objects in the editor, you may want to edit them in‬ ‭ some way. Figure 1.10 shows an example. Assume you want to move these‬ ‭ three Spikes (often referred to as a "triple Spike") one block to the right. To do‬ ‭ this, you have to click the "Edit" button in the bottom left. Afterwards, you can‬ ‭ click an object to select it for editing. Normally, you can only select one object‬ ‭ at a time. To select all three at once, enable "Swipe" in the bottom right as‬ ‭ seen in the example. This lets you swipe over the objects you want to select.‬ ‭ 14‬
  • 16. ‭ Now that the objects are selected, indicated by the green outline, we can‬ ‭ move onto actually editing them. The buttons in the lower section, seen in‬ ‭ figure 1.11, are all used for this. Most of these are self-explanatory, so testing‬ ‭ them out yourself is recommended. The various arrows move the selected‬ ‭ object(s) in their given direction. How much they move is indicated by the‬ ‭ number of arrows. Other buttons, like the circular arrows, let you rotate the‬ ‭ object(s) a given amount. The one with "Free" inside it lets you rotate as much‬ ‭ as you would like.‬ ‭ Having found the correct button, double arrow to the right, we get the result‬ ‭ in figure 1.12. Another way to do this is by selecting "Free Move" and "Snap" in‬ ‭ the bottom right. The former lets you move the selected objects wherever you‬ ‭ want, even outside of exact grid positions, while "Snap" puts the objects in‬ ‭ exact grid positions. Together, this combination gives us the result we‬ ‭ wanted, but you can also use "Free Move" on its own to move off-grid.‬ ‭ 15‬
  • 17. ‭ If you are satisfied with your edits, click the "Deselect" button on the far right.‬ ‭ You can also deselect the objects by placing new objects. After this, you can‬ ‭ go ahead and place or edit other objects. Additionally, you may see another‬ ‭ "Rotate" button in the bottom right that has not been covered yet. This has‬ ‭ the same functionality as the previously mentioned "Free" rotation button but‬ ‭ is easier to access.‬ ‭ Scaling & Warping‬ ‭ The last three buttons in the "Edit" tab, as the names imply, let you scale or‬ ‭ warp the object. This means to change its form and/or size in some way. In‬ ‭ essence, each of these buttons can do the same thing, but with even more‬ ‭ control sequentially. The first "Scale" only lets you scale the objects in place,‬ ‭ which means they keep their original aspect ratio. With the second one, you‬ ‭ can scale for the X and Y axis as you wish, allowing for even more control.‬ ‭ With "Warp", you get the most control. Selecting it opens the interface seen in‬ ‭ figure 1.13, which features various buttons. Each of the square buttons let you‬ ‭ scale as with the previous two buttons. You use them by holding one down‬ ‭ and dragging to your desired scale. If you want the scaling to be in place, you‬ ‭ can toggle the lock in the top right. As for the circular buttons, the middle one‬ ‭ 16‬
  • 18. ‭ is used as an anchor point for rotation, while the outer one performs the‬ ‭ actual rotation. Finally, we have the two rectangular buttons outside the‬ ‭ square ones. These let you skew the objects in a given direction. As an‬ ‭ example, dragging the top one to the left results in the example below. The‬ ‭ anchor point also affects how much you can skew.‬ ‭ Select Color‬ ‭ After having warped the Spikes successfully, you may want to change their‬ ‭ color a bit. Assume you want to make the outline of the left Spike red. This is‬ ‭ done by selecting the object and clicking "Edit Object" on the far right, which‬ ‭ opens the menu seen below.‬ ‭ 17‬
  • 19. ‭ In here, you have various options for coloring the object. Selecting "P-Col 1" or‬ ‭ "P-Col 2" makes the color based on the player's colors. "Light BG" makes it a‬ ‭ lighter shade of the Background Color, while "Default" simply sets it to its‬ ‭ default. For Spikes, this is white, but it varies from object to object. Below this,‬ ‭ you can select custom Color Channels that can be specified freely. These are‬ ‭ numbered from 1 to 999. "Next Free" finds the next unused Color Channel,‬ ‭ which is 1 in our case. To begin customizing it, click on top of the colored‬ ‭ square in the bottom right. This opens the following menu:‬ ‭ Here, you have various options to set the color of the object. Selecting the‬ ‭ color by using the outer wheel and then its shade by using the inner circle is‬ ‭ the easiest way. You can also specify a color exactly by its "RGB" or "HEX"‬ ‭ values in the bottom right, while "Opacity" changes how transparent the color‬ ‭ is. "Copy" and "Paste" in the top right are used if you want to copy and paste‬ ‭ colors across channels, while "Default" sets it back to the standard white.‬ ‭ 18‬
  • 20. ‭ On the left, "Copy Color" lets you input another Color Channel to copy from‬ ‭ but with potential changes to HSV. HSV is also seen in figure 1.15 as a "HSV"‬ ‭ button. This allows you to change hue, saturation, and brightness of the color‬ ‭ for the selected object (and not the channel as a whole). By default, the color‬ ‭ is solid, but enabling Blending makes it blend with the visuals behind it.‬ ‭ "Player Color 1" and "Player Color 2" are, as explained earlier, based on the‬ ‭ player's choice of colors.‬ ‭ With the object's color set to red, it is successfully colored as seen above. The‬ ‭ defined Color Channel can also be given to other objects you wish to have the‬ ‭ same color. It is worth noting that the Color Channel's settings can be‬ ‭ changed throughout the level using a‬‭ Color Trigger‬ ‭ .‬‭ Changing it inside the‬ ‭ menu in figure 1.15 only sets the starting values for the channel. Additionally,‬ ‭ note that some objects have two different parts that can be colored. This is‬ ‭ indicated by a "Detail" button next to "Base" in the top left of the color menu,‬ ‭ allowing you to switch between the settings of each. In our example, the‬ ‭ Spike only has one customizable color, which is the outline, so only "Base" is‬ ‭ shown. This is called the Base Color, while some objects also have Detail Color.‬ ‭ 19‬
  • 21. ‭ Deleting Objects‬ ‭ If you place the wrong object, you may want to delete it from the level‬ ‭ entirely. This is done in the bottom tab called "Delete", which is shown in‬ ‭ figure 1.18. Just having this tab opened allows you to click any object to delete‬ ‭ it. As with building and editing, you can select "Swipe" on the right to drag‬ ‭ over multiple objects you want to delete. However, there are numerous other‬ ‭ options inside the tab as seen below.‬ ‭ The four buttons on the right are filters for deleting. These are useful if you‬ ‭ have many different types of objects overlapping, and you only wish to delete‬ ‭ certain types of them. If you have "None" selected, which is the default, any‬ ‭ objects can be deleted. Switching to "Static" means that only solid blocks can‬ ‭ be deleted. As for "Details", this covers a lot of different types of objects, such‬ ‭ as Portals, decorations, Triggers, and more.‬ ‭ 20‬
  • 22. ‭ If you enter this tab while having an object selected (from the "Edit" tab), you‬ ‭ get some more options. Switching to "Custom" on the right makes it so that‬ ‭ only the selected object can be deleted. After enabling this, you can head‬ ‭ back to "Edit" and swipe to select an area of objects you want to delete from.‬ ‭ Afterwards, head back to "Delete" and click the top left deletion button‬ ‭ (indicated by a trash can), either within the tab or in the top left of the editor.‬ ‭ Both of these do the same action, but the latter is easier to access at any time.‬ ‭ There is also the "All" button on the left which deletes every instance of this‬ ‭ object in your level. Next to this is a button to delete all‬‭ Start Pos Triggers‬ ‭ .‬ ‭ Finally, we have the four middle buttons marked in the figure above. Opening‬ ‭ each one gives a good idea of what they do, but they are covered shortly here.‬ ‭ The top left one lets you find a specific Group ID. Looking up Group ID 23, for‬ ‭ example, will take you to an object using this if it still exists and is not deleted.‬ ‭ If there are multiple objects using this Group ID, you are taken to the object‬ ‭ that received it first. The two buttons to the right are Group ID and Color‬ ‭ Channel filters respectively. As an example, writing "1" in either means that‬ ‭ you can only delete objects with Group ID or Color Channel 1 while in the‬ ‭ "Delete" tab. This is useful if you wish to delete only objects using that specific‬ ‭ color among many others. The bottom left trash can button is a quick way of‬ ‭ resetting all of these filters without having to go into their window. You can‬ ‭ also use these filters to select objects by enabling "Select Filter" in‬‭ Options‬ ‭ .‬ ‭ 21‬
  • 23. ‭ Other Buttons‬ ‭ There are still many buttons in the user interface that we have not touched on‬ ‭ yet, which are summarized here. Some of them are covered more in-depth‬ ‭ later on when appropriate. We will be using figure 1.21 to cover specific‬ ‭ buttons, referencing them by colored boxes that have been drawn on top (not‬ ‭ from the game).‬ ‭ In the top left, marked in purple, are buttons to undo and redo the recent‬ ‭ action. As an example, you can use this to recovered a wrongly deleted object.‬ ‭ However, note that not all actions can be undone or redone, such as applying‬ ‭ Color Channels or Group IDs. Below these two buttons, we have playtesting‬ ‭ buttons marked in yellow. The top one playtests the music of the level,‬ ‭ showing a line moving to help sync visuals to the song. The lower one lets you‬ ‭ playtest your level inside the editor, starting from the start or a set start‬ ‭ position.‬ ‭ 22‬
  • 24. ‭ In the white box are buttons for zooming in and out inside the editor, letting‬ ‭ you see details more clearly or whole areas at once. Right next to these are‬ ‭ some optional buttons that are enabled from‬‭ Options‬‭ referred to as Link‬ ‭ Controls. Clicking the top one links several selected objects together, making‬ ‭ them act as a single object (for editing or deleting). The bottom one, on the‬ ‭ other hand, unlinks linked objects.‬ ‭ At the top, marked in black, is a slider that simply lets you slide through your‬ ‭ level horizontally inside the editor. You can also move around by simply‬ ‭ swiping in a given direction. To the right of this slider, in the top right, we have‬ ‭ the start level settings covered earlier, as well as the‬‭ Pause Menu‬‭ shown‬ ‭ below. This opens up many other options covered later. However, for now, we‬ ‭ note the middle buttons since these are most important as a beginner.‬ ‭ "Resume" goes back into the editor, while "Save and Play" saves the level and‬ ‭ starts an attempt on it. This lets you see exactly how the level will play for‬ ‭ other users once uploaded, unlike playtesting in the editor. "Save and Exit",‬ ‭ "Save", and "Exit" are self-explanatory.‬ ‭ 23‬
  • 25. ‭ Back to figure 1.21, we have the numerous buttons inside the red and blue‬ ‭ boxes on the right. These are shown together in an edited image below for‬ ‭ easier access. Many of these are self-explanatory, while others are not.‬ ‭ "Copy", "Paste" and "Copy+Paste" all do similar actions, which is making a new‬ ‭ copy of the selected object(s). The button that has both in one will copy the‬ ‭ selected object(s) and place the copy on top of the old one. If you wish to copy‬ ‭ something from one spot in the editor to somewhere far away, the separate‬ ‭ buttons are useful. Simply use "Copy" on what you want to copy, move to‬ ‭ where you want to paste, and click "Paste". This also works across levels if you‬ ‭ want to copy something into another level you are working on.‬ ‭ "Copy Values" copies Group IDs and Color Channels, allowing you to paste‬ ‭ them onto other objects. "Paste State" does both, while "Paste Color" only‬ ‭ pastes the color information. "Edit Special", "Edit Group" and "Edit Object" are‬ ‭ all for editing objects, but they work in different ways.‬‭ Edit Special‬‭ and‬‭ Edit‬ ‭ Group‬‭ have a lot of functionality, and are covered‬‭ in later chapters found by‬ ‭ the links, while‬‭ Edit Object‬‭ was covered earlier for‬‭ a Spike. For many objects,‬ ‭ this simply lets you change the object's color as shown there. However, for‬ ‭ some objects, such as‬‭ Triggers‬ ‭ , it lets you change‬‭ their settings.‬ ‭ 24‬
  • 26. ‭ The button with three colored circles give you quick access to editing a Color‬ ‭ Channel, opening a menu that can be used while editing objects. Clicking it‬ ‭ another time switches to a HSV menu. As mentioned earlier, "Deselect" is‬ ‭ simply used to deselect selected objects.‬ ‭ Finally, we have "Go To Layer", which is closely tied to the arrows and number‬ ‭ below it. The pink arrows allow you to switch between different layers to build‬ ‭ on, making it easier to organize more complex constructions. You can only‬ ‭ access objects on a specific layer for editing or deletion if you are on it.‬ ‭ However, you can also toggle editing or deleting a layer by clicking on top of‬ ‭ the number, which locks the layer's objects from being changed. Click it‬ ‭ again to unlock it. As for the blue arrow on the left, this simply returns you to‬ ‭ the "All" layer, which shows every layer together. While in here, you can select‬ ‭ an object and click "Go To Layer" to go its specific layer quickly.‬ ‭ 25‬
  • 27. ‭ 2. Picking Song‬ ‭ Starting Song‬ ‭ The majority of the community's favorite Geometry Dash levels are largely‬ ‭ due to their great music synchronization, so picking a song is obviously‬ ‭ important when creating. To pick one, we head back to the level settings:‬ ‭ The bottom of this image is where the starting song of a level is set. By‬ ‭ default, it shows "Normal" songs, which are the official main level songs‬ ‭ ("Stereo Madness", "Back On Track", and so on). If you want to make a level‬ ‭ with one of these songs, use the arrows to go through and stop on the one‬ ‭ you want.‬ ‭ Selecting "Custom" instead, we have hundreds of thousands of songs to pick‬ ‭ from. Click "Select Custom Song" to open the menu seen in figure 2.2 below.‬ ‭ This has various buttons that serve different purposes. For now, we focus on‬ ‭ the two circular buttons in the middle, one called "Music Library" and the‬ ‭ other being the logo of‬‭ Newgrounds‬ ‭ . This is a website‬‭ for various user-created‬ ‭ content, such as music.‬ ‭ 26‬
  • 28. ‭ Music Library‬ ‭ The Music Library is a new addition in update 2.2, which has many songs‬ ‭ handpicked by RobTop for use by the community in levels. Once clicked, the‬ ‭ interface below is seen. By default, every song is shown in alphabetical order‬ ‭ by their title, which is a lot to scroll through given the song count. (As of‬ ‭ writing, it is 6391, seen at the bottom of the menu.) To sort through the library,‬ ‭ use the buttons on the sides. On the right side, the first button lets you filter‬ ‭ by specific genres, while the second lets you filter by specific artists. As for the‬ ‭ left side, there is a search button that lets you search for title keywords.‬ ‭ 27‬
  • 29. ‭ The figure shows both downloaded and non-downloaded songs. You have to‬ ‭ download them to be able to listen to or use them. Once a song is‬ ‭ downloaded, click the playtest button to listen to it. Once you have found a‬ ‭ song you wish to use from the start of your level, simply download it and click‬ ‭ the pink "Use" button. Exiting the Music Library, the selection is now filled in:‬ ‭ Newgrounds‬ ‭ Before 2.2, the main way to select a custom song was through Newgrounds.‬ ‭ Clicking its button gives more details on how it works, but you basically have‬ ‭ to search a song by its specific ID. The ID is found at the end of its link on the‬ ‭ website. For example, imagine that I am a fan of Creo and want to use his‬ ‭ song‬‭ "Dimension"‬ ‭ . Click the link to open the following‬‭ page:‬ ‭ 28‬
  • 30. ‭ Here, you can listen to the song and easily skip around to hear different parts‬ ‭ of the song. Browse the "Audio" tab to find other songs to use. Once you have‬ ‭ found a song you want to use, you have to write its ID into Geometry Dash. As‬ ‭ seen in the top left of the previous example, the link for "Dimension" by Creo‬ ‭ ends with "709578". Typing this and clicking "Search" finds the song as seen‬ ‭ below. Note that not all songs are available in Geometry Dash. This is‬ ‭ something the artist can toggle themselves. The best way to find out is by‬ ‭ testing its ID, which will give an error if it is not available for use in the game.‬ ‭ Make sure you click the download button and then "Use" on this screen too.‬ ‭ After downloading any songs, whether it is through the Music Library or‬ ‭ Newgrounds, you can find them all through the "Saved" button in the bottom‬ ‭ right. This is also the case for any songs you download while playing custom‬ ‭ levels on the servers. In here, you can easily select a previously downloaded‬ ‭ song for use too.‬ ‭ 29‬
  • 31. ‭ Song Settings‬ ‭ When picking a song, you may not want to use it from the start but rather‬ ‭ from a set point further into the song. Clicking the gear in the top right of the‬ ‭ custom song selection menu lets you do this. "Start Offset" is given in‬ ‭ seconds, allowing up to 3 decimals, with a playtest button to help you make it‬ ‭ as exact as possible. The fade options makes the song fade in at the start or‬ ‭ out at the end. Note that these can be used even with a main level song.‬ ‭ Guideline Creator‬ ‭ To help you sync the gameplay and visuals of your level to your song of choice,‬ ‭ you can click "Create Lines" in the bottom left. This opens the menu seen‬ ‭ below. The text itself gives good steps for how to do it, which is essentially‬ ‭ clicking "Record" and then clicking to the song. You can, for example, time‬ ‭ each click to the main beat. After you are done, click "Stop" and vertical lines‬ ‭ will be shown in the editor to indicate when you clicked. As a result, you can‬ ‭ time specific gameplay or visuals to these lines, for example to‬‭ Pulse Triggers‬ ‭ (where a specific color, such as the Background, turns brighter for a split‬ ‭ second). Note that you can toggle the guidelines in the‬‭ Pause Menu‬ ‭ .‬ ‭ 30‬
  • 32. ‭ Later Customization‬ ‭ The settings covered thus far are all for the starting song. However, the editor‬ ‭ lets you change the song further into the level, as well as customizing the‬ ‭ current song in many ways. You can, for example, change the speed or edit‬ ‭ the volume based on proximity (to the player). Additionally, up to 5 songs can‬ ‭ be overlapped at once, giving a lot of possibilities. These customizations are‬ ‭ done using the‬‭ Song‬‭ and‬‭ Edit Song Triggers‬‭ at the‬‭ point you want them to‬ ‭ take effect. Further audio customization is possible using‬‭ SFX Triggers‬ ‭ handled in the same chapter.‬ ‭ With the possible complexity of your level's audio using these Triggers, the‬ ‭ Guideline Creator shown above is not as helpful anymore. To handle such‬ ‭ cases, you can use BPM Finder within each song's details. Click "More" next to‬ ‭ a song and then "BPM" to open its menu. The way it works is similar to the‬ ‭ Guideline Creator, but it only finds the BPM for you and does not draw‬ ‭ guidelines automatically. Afterwards, you can use a‬‭ BPM Guide Trigger‬ ‭ together with the song's placement in the editor to create guidelines.‬ ‭ 31‬
  • 33. ‭ 3. Gameplay Objects‬ ‭ Description‬ ‭ This chapter handles the sixth tab in the editor, referred to as Gameplay‬ ‭ Objects because they affect gameplay or interact with the player in a different‬ ‭ way than other objects. These range from giving small boosts through‬‭ Pads‬ ‭ or‬‭ Orbs‬‭ to customizing the starting settings further‬‭ into the level, such as‬ ‭ Game Mode and Speed. The first page is seen below. Many of these only work‬ ‭ the first time they are interacted with, but you can enable "Multi Activate" in‬ ‭ Edit Special‬‭ or‬‭ Edit Object‬‭ to allow multiple interactions.‬‭ This is useful if your‬ ‭ gameplay switches direction, making the player pass by a Gameplay Object‬ ‭ several times.‬ ‭ Pads‬ ‭ The first 5 objects in the tab are often referred to as Pads. When a player‬ ‭ touches one of these, they are affected in some way depending on the type of‬ ‭ Pad. The first three give various vertical boosts, while the last two switch‬ ‭ gravity in different ways. For the blue one, the gravity switch is natural,‬ ‭ keeping horizontal velocity, while the purple one teleports you vertically until‬ ‭ an object is hit. This is similar to how Spider works. An illustration of the‬ ‭ various Pads, with the player path in green, is shown below. To refer to a‬ ‭ specific one, you simply use the color, so the leftmost one is called Yellow Pad.‬ ‭ 32‬
  • 34. ‭ Orbs‬ ‭ Orbs work similarly to Pads, but instead of being activated upon being‬ ‭ touched, they have to be clicked by the player. The ones with the same color‬ ‭ as in figure 3.2 have a similar effect, as seen in figure 3.3. There is also a Green‬ ‭ Orb, which works like a Yellow Orb but also switches your gravity. However,‬ ‭ there are five extra Orbs that do not have an equivalent in Pads. These are‬ ‭ seen in figure 3.4 with their common names in the figure text. The Black Orb‬ ‭ simply pushes you downwards, while the Dash Orbs take you in a straight line‬ ‭ in the arrow's direction as long as the player holds down. Once released, the‬ ‭ Green Dash Orb keeps the original gravity, while the Pink Dash Orb switches‬ ‭ it. The Teleport Orb lets you set a specific object to teleport to when clicked.‬ ‭ Finally, the Trigger Orb lets you toggle a specific Group ID.‬ ‭ 33‬
  • 35. ‭ Portals‬ ‭ Portals change the gameplay in various ways. Their effect is only activated if‬ ‭ the player passes through them. First, we have the Game Mode Portals. These‬ ‭ are seen in figure 3.5 below, ordered in the same way as in the start settings:‬ ‭ Green is Cube, pink is Ship, red is Ball, orange is UFO, blue is Wave, gray is‬ ‭ Robot, purple is Spider, and yellow is Swing. Use these at any point in your‬ ‭ level to switch the player's Game Mode. Some Game Modes, such as Ship,‬ ‭ have a floor and roof by default. Click "Edit Object" and enable "Free Mode" to‬ ‭ remove these.‬ ‭ 34‬
  • 36. ‭ In figure 3.6, various other types of Portals are shown. First, on the left, are‬ ‭ Gravity Portals. The blue one changes gravity to be normal (down), while the‬ ‭ yellow changes it to be upside-down. As for the green one, it switches to the‬ ‭ opposite gravity depending on your current gravity. If you are upside-down‬ ‭ and go through it, gravity turns normal, and vice versa. This is useful if a part's‬ ‭ gravity is dependent on the player's actions and you want to force a gravity‬ ‭ switch. After all, if you are in normal gravity and pass through a Blue Gravity‬ ‭ Portal, it has no effect since that is already the player's gravity.‬ ‭ Secondly, we have Mirror Portals, which essentially mirror the entire level.‬ ‭ Once activated, this means that instead of going towards the right, the level‬ ‭ goes towards the left. The Orange Mirror Portal switches to the left, while the‬ ‭ Blue Mirror Portal switches to the right (which is default).‬ ‭ Third are Size Portals. The pink one makes the player's icon smaller in the‬ ‭ current Game Mode, often referred to as Mini Mode. This changes the‬ ‭ gameplay in some ways depending on the Game Mode, such as jumps being‬ ‭ lower and shorter in Cube and Robot. If the Game Mode changes, Mini Mode‬ ‭ is still kept until the size is changed back to normal. That is done with the‬ ‭ Green Size Portal.‬ ‭ 35‬
  • 37. ‭ Finally, on the far right, we have Dual Portals. The orange one enables Dual‬ ‭ Mode, which duplicates the player's icon into two. Both of these are controlled‬ ‭ upon clicking. By default, every click affects both. However, you can enable‬ ‭ 2-Player Mode in the level settings, making it so that clicks on each side of the‬ ‭ screen control each icon. To switch back to one icon, use the Blue Dual Portal.‬ ‭ Speed Changers‬ ‭ Speed Changers are pretty self-explanatory, but if you want more details,‬ ‭ check‬‭ Level Settings‬ ‭ . As with Portals, they are enabled‬‭ when a player interacts‬ ‭ with them. The blue lines around them (not seen in-game, only in the editor)‬ ‭ indicate their hitbox. This is where you have to touch them to change the‬ ‭ speed. Naturally, if the Speed is already normal, for example, going through a‬ ‭ Blue Speed Changer (one arrow to the right) does nothing.‬ ‭ Letter Objects‬ ‭ At the end of the tab, there are various letters inside white squares. These are‬ ‭ only visible in the editor itself (and not in-game). They are used in very specific‬ ‭ use cases to alter player interactions in some way. In order from first to last,‬ ‭ we have Letter Objects with "D", "J", "S", "H", and "F" written on them, which‬ ‭ are covered in order here.‬ ‭ 36‬
  • 38. ‭ First is "D", which is used when the Game Mode is Wave. As seen in figure 3.8‬ ‭ on the left, the player will normally die when the icon hits a block below it‬ ‭ (and similar above it). However, adding D Letter Objects allows the icon to hit‬ ‭ the blocks. The placement of these objects decide which blocks are safe.‬ ‭ The J Letter Object is used to stop jumps when the player holds down in‬ ‭ Cube. Many players hold down a little after using an Orb, such as a Blue Orb,‬ ‭ and after hitting objects this may lead to an unwanted jump. This is seen on‬ ‭ the left in figure 3.9. Adding the J Letter Objects here, holding down from the‬ ‭ Blue Orb does not result in a jump. Note that clicking again while on top of‬ ‭ these Letter Objects does lead to a jump. This only affects holding.‬ ‭ 37‬
  • 39. ‭ By default, using a Dash Orb lets you hold it down as long as you want. The‬ ‭ player decides when its action ends by releasing. However, at times it may be‬ ‭ wanted to control when a Dash Orb's effect stops. This is done by placing S‬ ‭ Letter Objects as seen in figure 3.10. The player can still release before this if‬ ‭ they wish, but they cannot use the Dash Orb for longer than the S Letter‬ ‭ Object's placement.‬ ‭ In Cube, jumping into a block above you and "hitting your head" normally‬ ‭ leads to death. Using H Letter Objects stops this. This works the same way if‬ ‭ the gravity is switched, and it also applies for Robot. Last are F Letter Objects,‬ ‭ which switch gravity when you hit your head on them. An example of this is‬ ‭ seen here:‬ ‭ 38‬
  • 40. ‭ Force Objects‬ ‭ Last in the tab are Force Objects, seen as an arrow inside a circle or square.‬ ‭ These apply a set force in the direction of the arrow when touched. This‬ ‭ means that you can rotate them in the direction you want them to work. The‬ ‭ difference between the two lies in the hitbox, which is indicated by the circle‬ ‭ and square. Similar to letter objects, these do not show in the level itself, so it‬ ‭ is probably smart to find some way to indicate them with decorations. This‬ ‭ makes it less annoying for the player. Use "Edit Object" to change various‬ ‭ settings, such as the force applied.‬ ‭ 39‬
  • 41. ‭ 4. Animated Objects‬ ‭ Description‬ ‭ Animated Objects are in the seventh tab. Each object here consists of several‬ ‭ frames, which the game cycles through and loops forever to create‬ ‭ animations. The most complex Animated Objects are particles, which can be‬ ‭ customized in the‬‭ Particle Editor‬ ‭ . Many‬‭ Collectable‬‭ Objects‬‭ are animated as‬ ‭ well and have similar settings. The first page of the tab is seen here:‬ ‭ Monsters‬ ‭ As seen above, the first 5 objects in the tab are various Monsters. Once placed,‬ ‭ these do different default animations. However, they can be customized using‬ ‭ the‬‭ Animate Trigger‬‭ covered later. To use the‬‭ Animate‬‭ Trigger‬‭ on a Monster,‬ ‭ you have to assign it a Group ID. Select the Monster you want to change the‬ ‭ animation of and click the "Edit Group" button found on the right. In this‬ ‭ menu, enter a value in the "Add Group ID" field. "Next Free" is helpful to find‬ ‭ an unused Group ID. To assign that value, click the "Add" button, as seen in‬ ‭ figure 4.2. You can use the same Group ID for different kinds of Monsters.‬ ‭ However, their animation cycles may not align with each other, resulting in‬ ‭ unwanted results. Because of this it is recommended to use a different Group‬ ‭ ID for every kind of monster. You can find more information about‬‭ Groups‬ ‭ and‬‭ Triggers‬‭ in the later chapters.‬ ‭ 40‬
  • 42. ‭ .‬ ‭ Edit Special‬ ‭ The objects beyond the Monsters do not let you change to another animation‬ ‭ specifically, but you can use "Edit Special" to customize its default animation‬ ‭ in some ways. To do so, select the objects you want to edit and click the "Edit‬ ‭ Special" button found to the right. The menu will look like this:‬ ‭ 41‬
  • 43. ‭ All options change different attributes of the animation cycle. Here is a list of‬ ‭ all options and what they do:‬ ‭ ●‬ ‭ Randomized Start:‬‭ By default all Animated Objects‬‭ start on their first‬ ‭ frame. With this option enabled, the first frame is random, and the‬ ‭ animation will continue normally from that point.‬ ‭ ●‬ ‭ Use Speed:‬‭ Uses a custom speed for the animation,‬‭ which gets configured‬ ‭ with the slider below. A speed below 1.00 is slower than default, while a‬ ‭ speed above 1.00 is faster. You can input negative values to reverse the‬ ‭ animation.‬ ‭ ●‬ ‭ Animate on Trigger:‬‭ The objects freeze on the first‬‭ frame. They begin their‬ ‭ animation when an‬‭ Animate‬‭ or‬‭ Spawn Trigger‬‭ Triggers‬‭ them.‬ ‭ ●‬ ‭ Disable Delayed Loop:‬‭ Some objects get delayed before‬‭ looping. This‬ ‭ option instantly starts the next loop.‬ ‭ ●‬ ‭ Disable AnimShine:‬‭ Some Animated Objects have a white‬‭ flash at the‬ ‭ start of their animation, which gets deactivated with this option.‬ ‭ ●‬ ‭ Only if active:‬‭ Addition to the "Animate on Trigger"‬‭ option. With this‬ ‭ option, the "Animate on Trigger" option will only play if the object is active.‬ ‭ If the animation is not active while an‬‭ Animate‬‭ or‬‭ Spawn Trigger‬‭ Triggers‬ ‭ it, the animation will instead begin once the object is active again.‬ ‭ ●‬ ‭ Single Frame:‬‭ The animation will not play and instead‬‭ only display a single‬ ‭ frame of the animation, which gets chosen with the number field below.‬ ‭ 42‬
  • 44. ‭ Particle Editor‬ ‭ The Particle Editor allows you to create your own set of particles. To get‬ ‭ started, you first have to place its object. It is the first object in the tab, seen as‬ ‭ a white "P" and shown in figure 4.4.‬ ‭ While having this object placed and selected, you can access the Particle‬ ‭ Editor by clicking the "Edit Special" button on the right. This opens the menu‬ ‭ in figure 4.5. In here, you can configure different attributes of your particles,‬ ‭ such as their movement, color, texture, and more.‬ ‭ In the following sections we will go through all the tabs and explain what‬ ‭ every option does. You can copy and paste configurations from different‬ ‭ particles by using the "C" and "P" buttons at the top.‬ ‭ 43‬
  • 45. ‭ First, we have the "Motion" tab, which configures the particles' movement.‬ ‭ You can edit the motion of your particles in "Gravity" or "Radius" mode.‬ ‭ Depending on what mode you choose, you will have different options‬ ‭ available.‬ ‭ ●‬ ‭ Max Particles:‬‭ The amount of particles that can be‬‭ visible at once.‬ ‭ ●‬ ‭ Duration:‬‭ How long particles will be generated. "-1.00"‬‭ means they will‬ ‭ spawn forever, which you can input by clicking the "Inf." button to the‬ ‭ right.‬ ‭ ●‬ ‭ Lifetime:‬‭ How long particles are visible before they‬‭ disappear.‬ ‭ ●‬ ‭ Emission:‬‭ At what rate particles spawn. You can click‬‭ the "Max" button for‬ ‭ the highest possible rate or click the "Calc" button to use the "Max‬ ‭ Particles" and "Lifetime" values to generate them at an even rate.‬ ‭ ●‬ ‭ Angle:‬‭ The angle at which the particles will go. A‬‭ value of "0" means right,‬ ‭ "90" down, "180" left, and so on.‬ ‭ ●‬ ‭ Speed:‬‭ The speed at which the particles go from the‬‭ center.‬ ‭ 44‬
  • 46. ‭ ●‬ ‭ PosVar:‬‭ Position variables indicate the space in which the particles can‬ ‭ spawn.‬ ‭ ●‬ ‭ Gravity:‬‭ This applies a gravity force to the particles.‬‭ The higher the value,‬ ‭ the stronger the force. Positive values make the gravity go right and up,‬ ‭ while negative values make the gravity go left and down, depending on‬ ‭ what slider you choose.‬ ‭ ●‬ ‭ AccelRad:‬‭ Refers to the radial acceleration of the‬‭ particles.‬ ‭ ●‬ ‭ AccelTan:‬‭ Refers to the tangential acceleration of‬‭ the particles.‬ ‭ ●‬ ‭ StartRad:‬‭ This option is only available in "Radius"‬‭ mode. It sets the start‬ ‭ radius of the particles.‬ ‭ ●‬ ‭ EndRad:‬‭ This option is only available in the "Radius"‬‭ mode. It sets the end‬ ‭ radius of the particles.‬ ‭ ●‬ ‭ RotSec:‬‭ This option is only available in the "Radius"‬‭ mode. It refers to‬ ‭ rotations per second.‬ ‭ Next is the "Visual" tab, which lets you change how the particles look. The‬ ‭ start and end colors are customized in the top left.‬ ‭ 45‬
  • 47. ‭ ●‬ ‭ StartSize:‬‭ The size the particles have when they spawn.‬ ‭ ●‬ ‭ EndSize:‬‭ The size the particles have when they despawn.‬ ‭ ●‬ ‭ StartSpin:‬‭ The rotation of the particles when they‬‭ spawn.‬ ‭ ●‬ ‭ EndSpin:‬‭ The rotation of the particles when they despawn.‬ ‭ ●‬ ‭ Start R/G/B:‬‭ Percentage of red, green, and blue values‬‭ when the particles‬ ‭ spawn.‬ ‭ ●‬ ‭ Start A:‬‭ Opacity when the particles spawn.‬ ‭ ●‬ ‭ End R/G/B:‬‭ Percentage of red, green, and blue values‬‭ when the particles‬ ‭ despawn.‬ ‭ ●‬ ‭ End A:‬‭ Opacity when the particles despawn.‬ ‭ In the "Extra" tab, seen below, various other configuration can be done.‬ ‭ 46‬
  • 48. ‭ ●‬ ‭ Free:‬‭ With this option enabled, you do not move the particles but pan the‬ ‭ camera around.‬ ‭ ●‬ ‭ Relative:‬‭ With this option, particles do not move‬‭ when you move the‬ ‭ object but spawn at the new position.‬ ‭ ●‬ ‭ Grouped:‬‭ With this option, all particles move when‬‭ you move the object.‬ ‭ ●‬ ‭ Fade in/out:‬‭ Fade time for the particles to appear‬‭ and disappear.‬ ‭ ●‬ ‭ FrictionP:‬‭ Adds friction to the particles.‬ ‭ ●‬ ‭ FrictionS:‬‭ Adds friction to the particle speed.‬ ‭ ●‬ ‭ FrictionR:‬‭ Adds friction to the particle rotation.‬ ‭ ●‬ ‭ Respawn:‬‭ Modifies the rate at which particles respawn.‬ ‭ ●‬ ‭ Additive:‬‭ This is comparable to the blending option‬‭ for Color Channels.‬ ‭ ●‬ ‭ Start Size = End:‬‭ The particles have the same size‬‭ at the end as the start.‬ ‭ ●‬ ‭ Start Spin = End:‬‭ The particles have the same rotation‬‭ at the end as the‬ ‭ start.‬ ‭ ●‬ ‭ Start Rad = End:‬‭ Changes the "StartRad" value to be‬‭ the end instead of‬ ‭ the start. This option only works in "Radius" mode.‬ ‭ ●‬ ‭ Start rot is dir:‬‭ The rotation of the particles when‬‭ they spawn is the‬ ‭ direction they will go towards.‬ ‭ ●‬ ‭ Use obj color:‬‭ Particles use Color Channels instead‬‭ of the color specified in‬ ‭ the visual tab.‬ ‭ ●‬ ‭ Uniform obj color:‬‭ Makes the beginning and ending‬‭ colors the same.‬ ‭ ●‬ ‭ Dynamic rotation:‬‭ The particles rotate to face towards‬‭ the direction they‬ ‭ are going.‬ ‭ ●‬ ‭ Animate on Trigger:‬‭ The objects freeze on the first‬‭ frame. They begin their‬ ‭ animation when an‬‭ Animate Trigger‬‭ Triggers them.‬ ‭ ●‬ ‭ Animate Active Only:‬‭ Addition to the "Animate on Trigger"‬‭ option. With‬ ‭ this option, the "Animate on Trigger" option will only play if the object is‬ ‭ active. If the animation is not active while the‬‭ Animate‬‭ Trigger‬‭ is activated,‬ ‭ the animation will instead begin once the object is active again.‬ ‭ 47‬
  • 49. ‭ ●‬ ‭ Order Sensitive:‬‭ Orders particles with newest ones on top.‬ ‭ ●‬ ‭ StartRGB Var Sync:‬‭ Syncs the "Start R/G/B" values‬‭ from the "Visual" tab.‬ ‭ ●‬ ‭ EndRGB Var Sync:‬‭ Syncs the "End R/G/B" values from‬‭ the "Visual" tab.‬ ‭ ●‬ ‭ Quick Start:‬‭ By default, the particles will start‬‭ slowly before reaching their‬ ‭ normal movement. With this option, normal movement is achieved‬ ‭ instantly.‬ ‭ In the "Texture" tab, the actual texture of your particle is chosen. Note that for‬ ‭ textures with a Base Color other than white, such as the Difficulty Faces, the‬ ‭ particle color has to be white. Choosing a color other than white will tint the‬ ‭ colors, which may lead to unwanted results. Based on prior settings, the‬ ‭ particles may even disappear if you choose black for the particle color.‬ ‭ 48‬
  • 50. ‭ The Particle Editor preview is on the left half of the settings menu. In this‬ ‭ editor, you can configure motion options by dragging lines around and‬ ‭ positioning the particles at different locations. The default version of the‬ ‭ editor looks like figure 4.10, but it will automatically update the motion, color,‬ ‭ and texture depending on prior configurations.‬ ‭ All buttons allow you to modify different parts of the motion. Choose the‬ ‭ mode by clicking on the corresponding button. If no button is enabled, you‬ ‭ can move the particles inside the editor. Their movement depends on the‬ ‭ "Free", "Relative", and "Grouped" options from the "Extra" tab.‬ ‭ The first button, "1",‬‭ edits the "PosVar" values in‬‭ "Gravity" mode, and the‬ ‭ "StartRad" value in "Radius" mode. You can change them by clicking on the‬ ‭ green line and moving it around to scale it, as seen in figure 4.11. If you click on‬ ‭ an edge, you can change the size on the corresponding axis. If you click on a‬ ‭ corner, the size will change relative to the corner position in the square.‬ ‭ 49‬
  • 51. ‭ The second button, "2", edits the "Gravity" values in "Gravity" mode, and the‬ ‭ "EndRad" value in "Radius" mode. You can change them by clicking‬ ‭ somewhere in the editor and moving around. The blue line will draw from the‬ ‭ center to the position you are at, with a longer line indicating a stronger‬ ‭ gravity in the corresponding direction, as seen in figure 4.11.‬ ‭ The third button, "3", edits the "Angle" value in both modes, as well as the‬ ‭ "Speed" value in "Gravity" mode. You can change them by clicking‬ ‭ somewhere in the editor and moving around. The angle will change to the‬ ‭ angle between the center and your click, and the speed will adjust depending‬ ‭ on how far the mouse is from the center. The angle is indicated by the‬ ‭ rounder yellow line, while the speed is indicated by the straight yellow line, as‬ ‭ seen in figure 4.11.‬ ‭ The "C" button recenters the particles if you moved them around, and the last,‬ ‭ colored button changes the background color of the editor.‬ ‭ 50‬
  • 52. ‭ 5. Items‬ ‭ Description‬ ‭ Items are found in the tenth tab of the editor, and consist of various objects‬ ‭ that are suitable as Collectables. This means that they can be picked up‬ ‭ throughout the level, whether they are optional extra challenges or necessary‬ ‭ to advance. You can also use many of these as decorations if you wish. The‬ ‭ first page of the tab is seen here:‬ ‭ User Coins‬ ‭ The first object in the tab are User Coins. These are the most used‬ ‭ Collectables in the game because they are official. This means that they show‬ ‭ on a level's menu screen and may count towards player statistics. You can‬ ‭ place up to three of these in your level, but note that you do not need to put‬ ‭ any. They are supposed to offer an extra, optional challenge for the player,‬ ‭ meaning that they should not be a part of the level's normal route and free to‬ ‭ get when beating the level. Once you upload your level, they will initially show‬ ‭ as bronze both inside the level and on its menu screen. However, if your level‬ ‭ gets rated, RobTop can "verify" the coins, making them silver and count for‬ ‭ statistics. This means that players get more User Coins on their Profile if they‬ ‭ collect yours and beat the level. Note that he may not verify them if your User‬ ‭ Coins are free. Similar to Animated Objects, you can use‬‭ Edit Special‬‭ to edit‬ ‭ their default rotating animation.‬ ‭ 51‬
  • 53. ‭ Custom Collectables‬ ‭ All other objects in the tab function as custom Collectables. You can assign‬ ‭ specific actions to them that will be activated once they get collected. This‬ ‭ can be editing a specific Item ID, activating or deactivating a specific Group‬ ‭ ID, or assigning Points that add up for the player. To access these options, first‬ ‭ place the Collectable you want to use and click "Edit Special". This opens the‬ ‭ following menu:‬ ‭ You can use "Pickup Item" to change the value of an Item ID. Item IDs are‬ ‭ variables that can be edited and referenced throughout the level. Enter the‬ ‭ Item ID you want to change in the "ItemID" field. By default, the Item ID will‬ ‭ be increased by one. By enabling the "Sub Count" option, it will be decreased‬ ‭ by one instead. You can read the‬‭ Pickup Trigger‬‭ section,‬‭ as well as the various‬ ‭ Item Triggers‬ ‭ , for more information on Item IDs.‬ ‭ 52‬
  • 54. ‭ Use "Toggle Trigger" if you want the Collectable to behave like a‬‭ Toggle‬‭ or‬ ‭ Spawn Trigger‬ ‭ . By default, the Group ID will be toggled off. If you click the‬ ‭ "Enable Group" option, the Group ID you input in the "Group ID" field will‬ ‭ toggle on instead. If the Group ID is assigned to a‬‭ Trigger‬ ‭ , the Trigger will be‬ ‭ activated like a Spawn Trigger instead. You can read the‬‭ Using Groups‬‭ section‬ ‭ for an explanation of what Group IDs are and how to use them.‬ ‭ The "Particle" option allows you to spawn particles when the custom‬ ‭ Collectables are collected. Assign a Group ID to your set of particles and enter‬ ‭ that Group ID in the "Particle" field. Note that your particles cannot have an‬ ‭ infinite duration for this to work. You can check the‬‭ Particle Editor‬‭ subchapter‬ ‭ for more information about particles and how to use them.‬ ‭ Lastly, you can assign Points to the Collectables. Points function similarly to‬ ‭ Item IDs. However, they count as a single variable and are used for the Level‬ ‭ Leaderboards in Platformer levels. The number you input in the "Points" field‬ ‭ is how many Points the custom Collectables will award when collected.‬ ‭ 53‬
  • 55. ‭ 6. Edit Group‬ ‭ "Edit Group" is one of the most important buttons in the game. It is found on‬ ‭ the right side of the editor when the object(s) you want to edit are selected.‬ ‭ This menu is what enables you to change attributes of your objects through‬ ‭ various options, as well as adding Group IDs to link to‬‭ Triggers‬ ‭ .‬ ‭ Functionality‬ ‭ The options are used to set editor layer, assign Group IDs, change the Z‬ ‭ position, set the Order, and set up Channels. Here is a list of all the settings‬ ‭ seen in figure 6.1 and a short explanation of what they do.‬ ‭ ●‬ ‭ Editor L and Editor L2:‬‭ These options place objects‬‭ at different editor‬ ‭ layers. Objects will appear on both editor layers once set. If "Editor L2" is 0,‬ ‭ however, the objects will only appear on the layer set in "Editor L". You can‬ ‭ use the "+" buttons to get the lowest layer that has no objects placed on it.‬ ‭ ●‬ ‭ Z Layer:‬‭ Seen at the bottom, this is used as the drawing‬‭ order of objects. In‬ ‭ order of increasing priority, it goes from "B5" to "T4" selected by the‬ ‭ 54‬
  • 56. ‭ buttons. Objects in layers starting with a "B" are below the player, while‬ ‭ objects in layers starting with a "T" are above the player. When multiple‬ ‭ selected objects are in different "Z Layers", you can use the "+" and "-"‬ ‭ buttons to move everything up or down one step in layer respectively. To‬ ‭ change the drawing order of objects even further, see below.‬ ‭ ●‬ ‭ Tileset:‬‭ This term is not directly seen in figure‬‭ 6.1, but its value marked to‬ ‭ the right of "Z Layer" in parentheses. It specifies the tileset number of the‬ ‭ selected object(s). For similar types of objects, this will typically be the‬ ‭ same value. For different types of objects in the same "Z Layer", the tileset‬ ‭ value specifies its priority. Within the same "Z Layer", an object with a lower‬ ‭ tileset number is always drawn above one with a higher value. To bypass‬ ‭ this, you can move the object with a higher value to a higher "Z layer". See‬ ‭ figure 6.2 for an example.‬ ‭ ●‬ ‭ Z Order:‬‭ Seen in the top right of figure 6.1, this‬‭ sets the drawing order of‬ ‭ objects that are in the same "Z Layer" and also have the same tileset‬ ‭ number. If this is the case, putting a higher "Z Order" makes it drawn on‬ ‭ top. You can input positive and negative values in this field.‬ ‭ ●‬ ‭ Add Group ID:‬‭ Assign up to ten Group IDs, which you‬‭ can later use in other‬ ‭ Triggers. How to use Group IDs is covered later in this chapter.‬ ‭ ●‬ ‭ ORD:‬‭ This option only appears for‬‭ Gameplay Objects‬‭ and‬‭ Triggers‬ ‭ . It sets‬ ‭ an Order in which the objects get activated.‬ ‭ ●‬ ‭ CH:‬‭ This option only appears for‬‭ Gameplay Objects‬‭ and‬‭ Triggers‬ ‭ . It assigns‬ ‭ a Channel to the objects, which are used for‬‭ Rotate‬‭ Gameplay Triggers‬‭ to‬ ‭ work with different gameplay directions. See‬‭ Channel‬‭ System‬‭ for more‬ ‭ information.‬ ‭ Copy and paste settings from different objects using the "Copy" and "Paste"‬ ‭ buttons in the top right. The "Extra" and "Extra2" categories have special‬ ‭ options, and are covered‬‭ below‬ ‭ .‬ ‭ 55‬
  • 57. ‭ Using Groups‬ ‭ Group IDs are essential for Trigger usage. You can add up to ten Group IDs to‬ ‭ a specific object. To assign a Group ID to objects, enter the Group ID you want‬ ‭ to add into the number field and click the "Add" button. The number will be‬ ‭ added to the window below in gray, as seen in figure 6.3. Clicking the "Next‬ ‭ Free" button inputs the lowest Group ID value that has not been used in the‬ ‭ level yet.‬ ‭ 56‬
  • 58. ‭ To remove a Group ID, simply click the one you want to remove. If you have a‬ ‭ single object selected, a new "P" button appears next to "Add". This is used to‬ ‭ mark the object as Group Parent ID. After clicking the "P" button, the‬ ‭ corresponding Group ID will show in pink instead of the normal gray, as seen‬ ‭ in figure 6.4. You can use Group Parent IDs for different‬‭ Triggers‬ ‭ .‬ ‭ Extra Options‬ ‭ Extra options are in the "Extra" and "Extra2" buttons on the right side of the‬ ‭ menu. These tabs have many options that change the attributes of objects,‬ ‭ some of which are only accessible if the selected object is a‬‭ Gameplay Object‬ ‭ or‬‭ Trigger‬ ‭ , and others are only useful for Platformer.‬‭ Here is a list and a short‬ ‭ explanation of the options in "Extra" do:‬ ‭ ●‬ ‭ Dont Fade:‬‭ Disables fading in and out when entering‬‭ and exiting the‬ ‭ screen. This is default behavior for all visible objects.‬ ‭ ●‬ ‭ Dont Enter:‬‭ Disables any applied‬‭ Enter Effects‬ ‭ .‬ ‭ ●‬ ‭ No Effects:‬‭ This option deactivates the effects of‬‭ Portals. Some examples‬ ‭ include the Background lightning for Size Portals and gravity lines for‬ ‭ Gravity Portals.‬ ‭ 57‬
  • 59. ‭ ●‬ ‭ Group Parent:‬‭ Sets an object as a Group ID Parent, which is used for‬ ‭ scaling and rotating objects.‬ ‭ ●‬ ‭ Area Parent:‬‭ Marks an object as the Area Parent, which‬‭ can be used for‬ ‭ Area Triggers‬ ‭ .‬ ‭ ●‬ ‭ Dont Boost Y/X:‬‭ Disables the player being boosted‬‭ by a moving object for‬ ‭ the given axis.‬ ‭ ●‬ ‭ High Detail:‬‭ Marks an object as High Detail. Objects‬‭ marked as High Detail‬ ‭ get disabled when the player enables the Low Detail Mode on the level‬ ‭ page. This is useful if your level has a lot of extra, unnecessary details that‬ ‭ can lead to poor performance for some users.‬ ‭ ●‬ ‭ NoTouch:‬‭ Disables interactions between the player‬‭ and the objects‬ ‭ ●‬ ‭ Passable:‬‭ You can jump through solid objects but land‬‭ on them from the‬ ‭ top.‬ ‭ ●‬ ‭ Hide:‬‭ Makes objects invisible.‬ ‭ ●‬ ‭ NonStickX/NonStickY:‬‭ Only usable for Platformer. The‬‭ player will stick to‬ ‭ moving objects by default. This option removes the friction so the player‬ ‭ does not stick to the objects.‬ ‭ ●‬ ‭ ExtraSticky:‬‭ When the player stands on an object that‬‭ moves down too‬ ‭ fast, the player will not stick to the block anymore. This option increases‬ ‭ how sticky it is.‬ ‭ ●‬ ‭ Extended Collision:‬‭ Objects with a scale larger than‬‭ a value of 6 have‬ ‭ inaccurate hitboxes. This option fixes the hitbox to be accurate again. Note‬ ‭ that this does not apply to the visuals of objects.‬ ‭ ●‬ ‭ IceBlock:‬‭ Only usable for Platformer. This option‬‭ makes blocks slippery, so‬ ‭ the player slides further. Controls are also harder.‬ ‭ ●‬ ‭ GripSlope:‬‭ By default, the player can not slide up‬‭ steep slopes and will‬ ‭ slide down instead. With this option enabled, the player has more grip on‬ ‭ slopes so that they can slide up.‬ ‭ 58‬
  • 60. ‭ ●‬ ‭ NoGlow:‬‭ Disables the glow emitted from solid objects and Spikes, as seen‬ ‭ in figure 6.5.‬ ‭ ●‬ ‭ ScaleStick:‬‭ By default, the player's X position will‬‭ not change when‬ ‭ standing on a scaling object. With this option enabled, the player's‬ ‭ position moves the corresponding distance from the scale center.‬ ‭ ●‬ ‭ NoParticle:‬‭ Disables the particles on Orbs and Portals.‬ ‭ ●‬ ‭ Center Effect:‬‭ When previewing Triggers with "Touch‬‭ Trigger" enabled in‬ ‭ the editor, the effect spawns when the player touches the Trigger at all.‬ ‭ With this option enabled, it will only spawn when at the Trigger center.‬ ‭ ●‬ ‭ Single PTouch:‬‭ This option is used for Rotate Gameplay‬‭ Triggers and Dual‬ ‭ Mode. If one of the players touches the Trigger, only that one is affected.‬ ‭ ●‬ ‭ No Audio Scale:‬‭ Disables pulsing for both Orbs and‬‭ Pulsing Objects. See‬ ‭ the figure below.‬ ‭ 59‬
  • 61. ‭ Special IDs‬ ‭ Special IDs are in the "Extra2" tab and are used for some‬‭ Triggers‬ ‭ . They have‬ ‭ no effect on their own. Here is a list of all the Special IDs and a short‬ ‭ explanation of their usage.‬ ‭ ●‬ ‭ Enter Channel:‬‭ Enter Channel IDs are used for‬‭ Enter‬‭ Effects‬‭ and‬‭ Custom‬ ‭ Enter Effects‬ ‭ , which are covered in greater detail‬‭ later. You can click the "+"‬ ‭ button to get the lowest Enter Channel ID that is unused.‬ ‭ ●‬ ‭ Material:‬‭ You can assign Material IDs to objects for‬‭ set events upon‬ ‭ interaction. For example, you can add a Material ID to all ground blocks‬ ‭ and use it in‬‭ Event Triggers‬‭ to Trigger a stone sound‬‭ whenever the player‬ ‭ lands on them.‬ ‭ ●‬ ‭ ControlID:‬‭ This option is only available for‬‭ Gameplay‬‭ Objects‬‭ and‬‭ Triggers‬ ‭ .‬ ‭ Control IDs are used to reference specific objects when using the‬ ‭ remapping setting in‬‭ Spawn Triggers‬ ‭ .‬ ‭ When using "Edit Group" with a Trigger, additional options "Preview" and‬ ‭ "Playback" show below the "Extra" buttons. The former enables "Touch‬ ‭ Trigger" Triggers while playtesting, while the latter makes music playtesting‬ ‭ start from this Trigger.‬ ‭ 60‬
  • 62. ‭ 7. Triggers‬ ‭ Description‬ ‭ There are over a hundred Triggers in the game. These are found in the second‬ ‭ to last tab, seen below. As explained earlier, Triggers are used to perform‬ ‭ various complex actions. They may alter visible objects, such as blocks, in‬ ‭ some way, or just change the gameplay or visuals. Since they work in this way,‬ ‭ they are never visible objects that can be seen when playing a level. You place‬ ‭ them in the editor, and they do their action when the player passes the‬ ‭ Trigger's position or other linked events. For example, Triggers that have the‬ ‭ "Touch Trigger" option enabled will be triggered when the player touches‬ ‭ them. There is also a "Spawn Trigger" option, which means it is spawned by a‬ ‭ Spawn Trigger‬‭ or different conditional Triggers, like‬‭ Touch Triggers‬ ‭ ,‬‭ Count‬ ‭ Triggers‬ ‭ ,‬‭ Time Triggers‬ ‭ , and more.‬ ‭ Below this, every Trigger is covered in-depth in order. If you are unsure about‬ ‭ the name of a Trigger found in-game, you can find it by looking at the title‬ ‭ inside‬‭ Edit Object‬ ‭ . This is also where you will edit‬‭ a Trigger's settings. Note‬ ‭ that you can also find some simple quick help there by clicking the‬ ‭ information button (shown as an "i" in one of the corners). This guide works‬ ‭ best as an additional resource if any of that text is unclear. Previous‬ ‭ knowledge in this document, such as‬‭ Edit Group‬ ‭ , is‬‭ expected to be able to‬ ‭ work with Triggers well.‬ ‭ 61‬
  • 63. ‭ Start Pos‬ ‭ This Trigger is used to set a custom starting location of the player for‬ ‭ playtesting. Levels cannot be verified if they include a Start Pos Trigger.‬ ‭ The "Speed" and "Mode" options are used to set the‬‭ Speed‬‭ and‬‭ Game Mode‬‭ to‬ ‭ use from the Trigger. The "Options" menu features more settings, such as‬ ‭ starting in Mini Mode, Dual Mode, or Rotated Gameplay.‬ ‭ The "Reset Camera" option resets all prior camera settings.‬ ‭ "Target Order" and "Target Channel" refer to the "Order" and "Channel"‬ ‭ options found in the‬‭ Edit Group‬‭ menu. They are used‬‭ to activate‬‭ Gameplay‬ ‭ Objects‬‭ and Triggers in a specific order.‬ ‭ You can temporarily disable a Start Pos by enabling the "Disable" option.‬ ‭ Color‬ ‭ Color Triggers are used to change the settings of a Color Channel. It works the‬ ‭ same way as the normal color selection, which was covered in the‬‭ Select Color‬ ‭ section.‬ ‭ The "Color ID" field refers to what Color Channel you want to edit. You can‬ ‭ click the "+" button for more options, such as the Background Color.‬ ‭ If you wish to change a Color Channel to the player's colors, you can use‬ ‭ "Player Color 1" or "Player Color 2".‬ ‭ The "Blending" option applies blending to the color, which makes it multiply‬ ‭ with the colors below it.‬ ‭ 62‬
  • 64. ‭ By enabling the "Copy Color" option, you can copy the color of a different‬ ‭ Color Channel. The Color Channel you wish to copy is input in the "Channel‬ ‭ ID" field. You can change attributes of the color you copy by using the "Hue",‬ ‭ "Saturation", and "Brightness" sliders.‬ ‭ You can use the "Copy" and "Paste" buttons to copy the color from one Color‬ ‭ Trigger to another. By clicking the "Default" button, it will automatically show‬ ‭ the color the corresponding Color Channel has in the‬‭ Select Color‬‭ screen.‬ ‭ Move‬ ‭ This Trigger is used to move a specific Group ID. Its interface is seen below.‬ ‭ After that, each option is described.‬ ‭ 63‬
  • 65. ‭ ●‬ ‭ Target Group ID:‬‭ The Group ID you want to move.‬ ‭ ●‬ ‭ Move X:‬‭ Moves blocks along the X-axis. One block is‬‭ equal to a value of 10.‬ ‭ Input a positive number to move to the right, and a negative one to move‬ ‭ to the left.‬ ‭ ●‬ ‭ Move Y:‬‭ Moves blocks along the Y-axis. One block is‬‭ equal to a value of 10.‬ ‭ Input a positive number to move up, and a negative one to move down.‬ ‭ ●‬ ‭ Move Time:‬‭ The duration you want the movement to last.‬ ‭ ●‬ ‭ Easing:‬‭ Easing options change the way the objects‬‭ start and end their‬ ‭ movement.‬ ‭ ●‬ ‭ Player:‬‭ You can select a "Player" option for both‬‭ the X-axis and Y-axis.‬ ‭ When this option is selected, the objects will follow the player's movement‬ ‭ in the given direction.‬ ‭ ●‬ ‭ Camera:‬‭ The "Camera" option can also be selected for‬‭ both the X-axis and‬ ‭ Y-axis. It functions similarly to the "Player" option, but follows the screen‬ ‭ movement instead of the player movement.‬ ‭ ●‬ ‭ Target Mode:‬‭ Moves the objects to a "Target Group‬‭ ID". This must be a‬ ‭ single object. "Center Group ID" declares the center of the objects you‬ ‭ want to move. This must also consist of a single object only. Selecting "P1"‬ ‭ or "P2" declares Player 1 or 2, in Dual Mode, respectively as "Target Group"‬ ‭ and moves the objects to that player's location instead.‬ ‭ 64‬
  • 66. ‭ ●‬ ‭ Direction Mode:‬‭ Moves the objects in the direction of a "Target Group ID".‬ ‭ This must be a single object. "Center Group ID" declares the center of the‬ ‭ objects you want to move. This must also be a single object. Selecting "P1"‬ ‭ or "P2" declares Player 1 or 2, in Dual Mode, respectively as "Target Group"‬ ‭ and moves the objects to that player's location instead. "Distance"‬ ‭ indicates how far in the direction the objects move. As before, one block is‬ ‭ equal to a value of 10.‬ ‭ ●‬ ‭ Small Step:‬‭ Enabling this option changes the value‬‭ for one block from 10‬ ‭ to 30. This improves accuracy and allows for more precise movements.‬ ‭ ●‬ ‭ Dynamic Mode:‬‭ This option checks if the "Target Group‬‭ ID" moves when in‬ ‭ "Target Mode" or "Direction Mode". Normally the Trigger will only check‬ ‭ upon activation where the target is and move towards that direction. With‬ ‭ "Dynamic Mode" enabled, it will update its direction based on the target‬ ‭ moving.‬ ‭ ●‬ ‭ Silent:‬‭ In Platformer mode, the player sticks to solid‬‭ blocks that move‬ ‭ instantly. With this option enabled, blocks move instantly without the‬ ‭ player following their movement.‬ ‭ 65‬
  • 67. ‭ Stop‬ ‭ This Trigger shows as a Stop, Pause or Resume Trigger depending on what‬ ‭ option you choose inside "Edit Object".‬ ‭ "Stop" is used to stop the action of other Triggers permanently. Give the‬ ‭ Triggers you want to stop a Group ID and enter that Group ID in the Stop‬ ‭ Trigger.‬ ‭ "Pause" pauses the action of other Triggers temporarily. Give the Triggers you‬ ‭ want to pause a Group ID and enter that Group ID in the Stop Trigger. The‬ ‭ difference to a Stop Trigger is that you can resume the Trigger later by using a‬ ‭ Resume Trigger.‬ ‭ "Resume" resumes the action of other Triggers. Give the Triggers you want to‬ ‭ resume a Group ID and enter that Group ID in the Stop Trigger. Only Triggers‬ ‭ that were paused with a Pause Trigger can be resumed.‬ ‭ "Use Control ID" allows you to only stop a specific Group ID when using‬ ‭ remapping. For example, if you remap a‬‭ Spawn Trigger‬‭ to use Group IDs 1, 2,‬ ‭ and 3, and you only want to stop Group ID 3, you can enter a "Control ID" and‬ ‭ enable the option in the Stop Trigger. You can find the "Control ID" option in‬ ‭ the "Extra 2" category after clicking "Edit Group".‬ ‭ 66‬
  • 68. ‭ Pulse‬ ‭ This Trigger is normally used to change the color of a Color Channel or Group‬ ‭ ID temporarily. The interface and various options are as follows:‬ ‭ ●‬ ‭ Channel:‬‭ With "Channel", you pulse an entire Color‬‭ Channel. Clicking the‬ ‭ "+" button allows you to select a special color. This includes for example the‬ ‭ Background, Ground, Middleground, and Player Colors.‬ ‭ ●‬ ‭ Group:‬‭ With "Group", you pulse objects with that Group‬‭ ID.‬ ‭ ●‬ ‭ Main/Secondary Only:‬‭ These options are only available‬‭ when clicking‬ ‭ "Group". Some objects have a Base Color and Detail Color, which can be‬ ‭ seen in the "Edit Object" menu.‬ ‭ ●‬ ‭ Color:‬‭ With "Color", the objects pulse the color you‬‭ select.‬ ‭ ●‬ ‭ HSV:‬‭ With "HSV", you can pulse the objects using another‬‭ "Color ID" and‬ ‭ change the "Hue", "Saturation" and "Brightness" of that "Color ID". If you‬ ‭ leave this value at 0, you pulse the color you put into the "Channel ID" field‬ ‭ 67‬
  • 69. ‭ ●‬ ‭ Fade In:‬‭ The duration for the objects to reach the pulse color.‬ ‭ ●‬ ‭ Hold:‬‭ How long the objects hold the pulse color.‬ ‭ ●‬ ‭ Fade Out:‬‭ The duration for the objects to return to‬‭ their original color.‬ ‭ ●‬ ‭ Exclusive:‬‭ This option disables all other pulses with‬‭ the same ID, and only‬ ‭ plays the current pulse.‬ ‭ Alpha‬ ‭ This Trigger is used to change the opacity of an object over a given time‬ ‭ frame. The options are as follows:‬ ‭ ●‬ ‭ Group ID:‬‭ The objects you want to change the opacity‬‭ of.‬ ‭ ●‬ ‭ Fade Time:‬‭ The duration until the objects reach the‬‭ set opacity.‬ ‭ ●‬ ‭ Opacity:‬‭ The opacity you want the objects to have.‬ ‭ Toggle‬ ‭ The Toggle Trigger enables or disables objects. Objects that are disabled are‬ ‭ invisible, and the player cannot interact with them anymore.‬ ‭ ●‬ ‭ Group ID:‬‭ The objects you want to disable or enable.‬ ‭ ●‬ ‭ Activate Group:‬‭ With this option enabled the objects‬‭ will be enabled. With‬ ‭ the option disabled, objects will be disabled.‬ ‭ Spawn‬ ‭ Spawn Triggers can activate other Triggers.‬ ‭ ●‬ ‭ Group ID:‬‭ The Triggers you want to spawn.‬ ‭ ●‬ ‭ Delay:‬‭ The delay before you spawn the Trigger.‬ ‭ ●‬ ‭ Preview Disabled:‬‭ Disables the Spawn Trigger when‬‭ in "Preview Mode".‬ ‭ The Trigger will still activate when you playtest in the editor.‬ ‭ 68‬
  • 70. ‭ ●‬ ‭ Spawn Ordered:‬‭ All Triggers within this Group ID will be activated from‬ ‭ left to right, with the distance between the Triggers indicating the delay‬ ‭ between them.‬ ‭ ●‬ ‭ Reset Remap:‬‭ Resets the remapping of Group IDs.‬ ‭ You can use the second page of the Trigger's interface to remap Spawn‬ ‭ Trigger setups. This is useful to save Group IDs.‬ ‭ 69‬
  • 71. ‭ Due to this being complex, we will use an example. In figure 7.8, we are‬ ‭ moving a block left and right by using a Spawn Loop. Now we want to add‬ ‭ another block that also moves left and right. Normally we would need to copy‬ ‭ all the Triggers and change their values. With remapping, we can copy the‬ ‭ Spawn Trigger on the left, and remap the Group ID of the old setup to the‬ ‭ new block. This is seen in figure 7.9.‬ ‭ Now Group ID 4 will behave the same as Group ID 1. You can spawn Group ID‬ ‭ 4 at a later time to offset the two block movements. This particular‬ ‭ remapping saves 3 Group IDs.‬ ‭ 70‬
  • 72. ‭ Rotate‬ ‭ This Trigger is used to rotate a specific Group ID. Its interface is seen below.‬ ‭ After that, each option is described.‬ ‭ ●‬ ‭ Target Group ID:‬‭ The objects you want to rotate.‬ ‭ ●‬ ‭ Center Group ID:‬‭ The center the objects should rotate‬‭ around. This Group‬ ‭ ID can only consist of a single object. Leaving this as 0 will result in all‬ ‭ objects rotating around their own center.‬ ‭ ●‬ ‭ Move Time:‬‭ The duration you want the rotation to last.‬ ‭ ●‬ ‭ Degrees:‬‭ How many degrees you want the objects to‬‭ rotate. Enter a‬ ‭ negative value to rotate counter-clockwise and enter a positive value to‬ ‭ rotate clockwise.‬ ‭ ●‬ ‭ x360:‬‭ How many full rotations (360 degrees) you want‬‭ to do. Enter a‬ ‭ negative value to rotate counter-clockwise and enter a positive value to‬ ‭ rotate clockwise.‬ ‭ 71‬
  • 73. ‭ ●‬ ‭ Aim Mode:‬‭ The objects will face towards the "Rot Target‬‭ ID". This must be a‬ ‭ Group ID with a single object. You can offset the rotation with "Rot Offset".‬ ‭ Choosing "P1" or "P2" will make the objects face towards Player 1 and Player‬ ‭ 2 respectively. If this is enabled, you can limit the rotation to be between‬ ‭ objects set on the second page of the Trigger.‬ ‭ ●‬ ‭ Follow Mode:‬‭ The objects will follow the rotation‬‭ of "Rot Target ID". This‬ ‭ must be a Group ID with a single object. You can offset the rotation with‬ ‭ "Rot Offset". Choosing "P1" or "P2" will make the objects face towards‬ ‭ Player 1 and Player 2 respectively. The second page of the overall Trigger‬ ‭ lets you set Group IDs of single objects as boundaries for following. This‬ ‭ means that the rotation will not continue to follow the target if it reaches‬ ‭ these positions.‬ ‭ 72‬
  • 74. ‭ ●‬ ‭ Dynamic Mode:‬‭ This option checks if the target moves when in "Aim‬ ‭ Mode" or "Follow Mode". Normally the Trigger will only check upon‬ ‭ activation where the target is and face towards that direction. Moving the‬ ‭ Target Group ID does not update the direction. With "Dynamic Mode"‬ ‭ enabled, it will update its direction based on the target moving.‬ ‭ ●‬ ‭ Lock Obj Rotation:‬‭ The objects themselves will not‬‭ rotate but instead only‬ ‭ update their position.‬ ‭ Scale‬ ‭ This Trigger is used to scale a specific Group ID. Every text field and option is‬ ‭ described in order below.‬ ‭ ●‬ ‭ Target Group ID:‬‭ The objects you want to scale.‬ ‭ ●‬ ‭ Center Group ID:‬‭ The center the objects should scale‬‭ from. This Group ID‬ ‭ can only consist of a single object. Leaving this as 0 will result in all objects‬ ‭ scaling from their own center.‬ ‭ ●‬ ‭ Duration:‬‭ The duration you want the scaling to last.‬ ‭ ●‬ ‭ ScaleX/ScaleY:‬‭ How much you want to scale the objects‬‭ in the X and Y‬ ‭ direction respectively.‬ ‭ ●‬ ‭ Div by Value X/Y:‬‭ Divides the current scale by this‬‭ number and uses this‬ ‭ as the target value.‬ ‭ If you want to scale an object and have it return to its original size, you can‬ ‭ use "ScaleX/ScaleY" like normal on the first Scale Trigger, and simply tick the‬ ‭ "Div by Value" boxes when scaling back on another Scale Trigger. For‬ ‭ example, if you want to scale a block to 3.00, put "ScaleX" and "ScaleY" to 3.00.‬ ‭ If you want it to return to 1.00 now, you would need to put 1/3 into the fields.‬ ‭ This is not possible and leads to inaccuracies. By ticking the "Divide by Value"‬ ‭ box, you divide the scale by 3.00, which brings you back to 1.00.‬ ‭ 73‬
  • 75. ‭ ●‬ ‭ Only Move:‬‭ The objects will only move to the place‬‭ they would be when‬ ‭ you scale them. They will not change their size.‬ ‭ ●‬ ‭ Relative Rotation:‬‭ When blocks are rotated, they will‬‭ rotate their X-axis‬ ‭ and Y-axis as well. Turning this option on draws a new X-axis and Y-axis and‬ ‭ puts it at the correct place. In the example below, the blocks are rotated 45‬ ‭ degrees.‬ ‭ ●‬ ‭ Relative Scale:‬‭ This option makes the scale value‬‭ adjust based on a‬ ‭ reference object. Normally, if you scale an object down by 0.95 for example,‬ ‭ each scale will be smaller and smaller. With this option enabled, the scale‬ ‭ will instead refer to the object in the Center Group ID to decide what the‬ ‭ next scale factor should be.‬ ‭ Follow‬ ‭ This Trigger is used to make objects mimic the movement of other objects. All‬ ‭ options are explained below.‬ ‭ ●‬ ‭ Target Group ID:‬‭ The objects you want to follow another‬‭ Group ID.‬ ‭ 74‬
  • 76. ‭ ●‬ ‭ Follow Group ID:‬‭ The Group ID that should be followed. This Group ID can‬ ‭ only consist of a single object.‬ ‭ ●‬ ‭ Move Time:‬‭ How long you want the objects to follow‬‭ the Group ID.‬ ‭ ●‬ ‭ X/Y Mod:‬‭ The values you put here will be multiplied‬‭ with the movement of‬ ‭ the "Follow Group ID". For example, if the "Follow Group ID" moves 50‬ ‭ blocks to the right, and you put 0.5 in "X Mod", the objects move 25 blocks‬ ‭ to the right instead of 50.‬ ‭ Shake‬ ‭ The Shake Trigger applies a temporary shake effect to the screen. Be careful‬ ‭ to not overuse this Trigger or input large numbers into the options, as it may‬ ‭ result in a bad experience for players. The options are explained below.‬ ‭ ●‬ ‭ Strength:‬‭ How intense the shake effect is.‬ ‭ ●‬ ‭ Interval:‬‭ The interval between every shake effect.‬‭ Leaving this value at 0‬ ‭ results in the screen shaking every frame.‬ ‭ ●‬ ‭ Duration:‬‭ How long the shake effect is applied to‬‭ the screen.‬ ‭ Animate‬ ‭ The Animate Trigger is used to give custom animations to Monsters, and it‬ ‭ can also be used to activate the animation of‬‭ Animated‬‭ Objects‬ ‭ .‬ ‭ ●‬ ‭ Group ID:‬‭ The Group ID of the objects you want to‬‭ animate or change the‬ ‭ animation of.‬ ‭ ●‬ ‭ Animation ID:‬‭ Only used for Monsters. Check the information‬‭ box in-game‬ ‭ to get information about what "Animation ID" refers to what monster.‬ ‭ 75‬
  • 77. ‭ Keyframe Animation‬ ‭ This Trigger is used to activate a keyframe animation. You can find all settings‬ ‭ below, as well as a detailed example of its usage in the‬‭ Keyframe System‬ ‭ chapter.‬ ‭ ●‬ ‭ Animation Group ID:‬‭ Group ID of your‬‭ Keyframe Triggers‬ ‭ .‬‭ It is enough for‬ ‭ the first Keyframe Trigger in your animation to have this Group ID.‬ ‭ ●‬ ‭ Target ID:‬‭ The objects you want to follow the animation.‬ ‭ ●‬ ‭ Parent ID:‬‭ The Group ID that should be used as the‬‭ center for scaling and‬ ‭ rotating. By default objects will choose their own center. You can also set‬ ‭ the center of the objects using the "Group Parent ID".‬ ‭ ●‬ ‭ Time/Position/Rotation/Scale Mod:‬‭ The values you put‬‭ here will be‬ ‭ multiplied with the movement of the keyframes. For example, if the‬ ‭ keyframes move 50 blocks to the right, rotate 90 degrees, and scale to‬ ‭ 4.00, and you put 0.5 for all modifiers, the target objects will only move 25‬ ‭ blocks, rotate 45 degrees, and scale to 2.00.‬ ‭ Follow Player Y‬ ‭ Follow Player Y Triggers are used to make objects follow the Y movement of‬ ‭ the player. The movement can be modified by using the different options‬ ‭ explained below.‬ ‭ ●‬ ‭ Target Group ID:‬‭ The objects you want to follow the‬‭ player's Y movement.‬ ‭ ●‬ ‭ Move Time:‬‭ How long you want the objects to follow‬‭ the player's Y‬ ‭ movement.‬ ‭ ●‬ ‭ Speed:‬‭ Modifies the speed the object has when following‬‭ the movement‬ ‭ of the player. The value you put here will be multiplied with the player‬ ‭ movement. For example, if the player moves 5 blocks per second and you‬ ‭ put 0.5, the objects will move 2.5 blocks per second.‬ ‭ 76‬
  • 78. ‭ ●‬ ‭ Delay:‬‭ Delay before the objects follow the movement.‬ ‭ ●‬ ‭ Offset:‬‭ Offsets the objects. Normally the objects‬‭ will snap to the exact Y‬ ‭ position. A value of 10 is equal to one block offset above the player. Enter a‬ ‭ negative value to offset below the player.‬ ‭ ●‬ ‭ Max Speed:‬‭ The maximum speed the objects can reach‬‭ when following‬ ‭ the movement. The formula used to calculate the speed is (Max‬ ‭ Speed/(Max Speed + 1)). Thus, if you put 5.0 for "Max Speed", for example,‬ ‭ the objects will do 5/6 of the movement the player did in the same time.‬ ‭ Advanced Follow‬ ‭ Advanced Follow Triggers are used to make objects move towards a target‬ ‭ and make them follow its movement. They are by far one of the most‬ ‭ complex Triggers in the game. We highly suggest you follow along on your‬ ‭ own example when testing out the options.‬ ‭ 77‬
  • 79. ‭ ●‬ ‭ Target GID:‬‭ The Group ID of the objects that should go towards the Group‬ ‭ ID set in "Follow GID".‬ ‭ ●‬ ‭ Follow GID:‬‭ The Group ID of the object that should‬‭ be the new target. You‬ ‭ can choose from the buttons below for more options.‬ ‭ ●‬ ‭ Priority:‬‭ The priority at which the movements will‬‭ be applied if an object is‬ ‭ affected by more than one Advanced Follow Trigger.‬ ‭ ●‬ ‭ X/Y Only:‬‭ The objects will only follow the X or Y‬‭ movement of the Group ID‬ ‭ in "Follow GID" respectively.‬ ‭ ●‬ ‭ P1/P2/C:‬‭ Corresponds to Player 1, Player 2, and the‬‭ screen center‬ ‭ respectively.‬ ‭ ●‬ ‭ Rotation Offset:‬‭ Offsets the rotation of the objects.‬‭ Enter a negative value‬ ‭ to offset the rotation to the left or a positive value to offset the rotation to‬ ‭ the right.‬ ‭ ●‬ ‭ Ignore Disabled:‬‭ The movement is not applied if the‬‭ objects are not‬ ‭ active. Activating them again starts the movement.‬ ‭ ●‬ ‭ Rotate Dir:‬‭ Makes the objects rotate towards the target.‬ ‭ ●‬ ‭ Rotate Easing:‬‭ Adds easing to the rotation of the‬‭ objects.‬ ‭ ●‬ ‭ Rotate DeadZ:‬‭ A deadzone for the rotation of the objects.‬ ‭ ●‬ ‭ Init:‬‭ This option is used for the second and third‬‭ mode, and controls how‬ ‭ the values you define in "Startspeed" and "StartDir" are applied. With this‬ ‭ option, the values are used only when the object has no speed values.‬ ‭ ●‬ ‭ Set:‬‭ This option is used for the second and third‬‭ mode, and controls how‬ ‭ the values you define in "Startspeed" and "StartDir" are applied. With this‬ ‭ option, any current velocity gets overridden.‬ ‭ ●‬ ‭ Add:‬‭ This option is used for the second and third‬‭ mode, and controls how‬ ‭ the values you define in "Startspeed" and "StartDir" are applied. With this‬ ‭ option, the velocity gets added to the current one.‬ ‭ ●‬ ‭ Exclusive:‬‭ Advanced Follow Triggers have a "Priority"‬‭ value. When multiple‬ ‭ Advanced Follow Triggers for the same object are active, it will process‬ ‭ 78‬
  • 80. ‭ them in order based on "Priority". If an action is exclusive, it will not process‬ ‭ any other actions after it.‬ ‭ On the second page you can choose between 3 different modes by using the‬ ‭ three buttons labeled 1, 2, and 3 in the top right. We will be going through all‬ ‭ options and what their differences are.‬ ‭ The "+-" sliders on all options indicate variance. For example, if you input a‬ ‭ "Delay" of 3 and enter 2 into the "+-" field, the "Delay" will randomly be chosen‬ ‭ in a range of 2 below and above. As a result, you get 1 to 5 "Delay".‬ ‭ In the first mode, the objects will simply move towards the target.‬ ‭ ●‬ ‭ Delay:‬‭ Delay before the movement starts.‬ ‭ ●‬ ‭ MaxSpeed:‬‭ Max speed the objects can reach. Leaving‬‭ this at 0 results in no‬ ‭ movement at all.‬ ‭ ●‬ ‭ MaxRange:‬‭ Range in which the "Follow GID" has to be‬‭ to the "Target GID"‬ ‭ to start the movement. One block is equal to 30.‬ ‭ 79‬
  • 81. ‭ ●‬ ‭ Easing:‬‭ Adds an easing to the start and end of the movement.‬ ‭ In the second mode, the objects will also move towards the target. However,‬ ‭ you have more options to customize the movement depending on how close‬ ‭ the objects are to the target.‬ ‭ ●‬ ‭ Delay:‬‭ Delay before the movement starts.‬ ‭ ●‬ ‭ MaxSpeed:‬‭ Max speed the objects can reach. Leaving‬‭ this at 0 results in no‬ ‭ movement at all.‬ ‭ ●‬ ‭ MaxRange:‬‭ Range in which the "Follow GID" has to be‬‭ to the "Target GID"‬ ‭ to start the movement. One block is equal to 30.‬ ‭ ●‬ ‭ StartSpeed:‬‭ The speed the objects have when they start‬‭ their movement.‬ ‭ ●‬ ‭ StartDir:‬‭ The direction the objects face when they‬‭ start their movement,‬ ‭ with 0 meaning up, 90 right, and so on.‬ ‭ ●‬ ‭ Acceleration:‬‭ The acceleration of the objects.‬ ‭ ●‬ ‭ Friction:‬‭ The friction that is applied to the objects.‬ ‭ ●‬ ‭ NearDist:‬‭ At what distance the objects are considered‬‭ near the target. One‬ ‭ block is equal to 30.‬ ‭ 80‬
  • 82. ‭ ●‬ ‭ NearFriction:‬‭ The friction of the objects when they get near the target.‬ ‭ What counts as near is configured by the "NearDist" value.‬ ‭ ●‬ ‭ NearAccel:‬‭ The acceleration of the objects when they‬‭ get near the target.‬ ‭ What counts as near is configured by the "NearDist" value.‬ ‭ The three boxes on the right correspond to their respective options. They‬ ‭ apply their setting towards a set reference object. "MaxRange" will be drawn‬ ‭ from the objects to the reference object. "StartSpeed" functions like a‬ ‭ multiplier in this setting. It will copy the movement speed of the reference‬ ‭ object. By inputting a 2 in the slider, you double the speed. "StartDir" makes‬ ‭ the objects face towards the reference object.‬ ‭ In the third mode the objects will also move towards the target. However, you‬ ‭ can also edit more attributes of the movement.‬ ‭ 81‬
  • 83. ‭ ●‬ ‭ Delay:‬‭ Delay before the movement starts.‬ ‭ ●‬ ‭ MaxSpeed:‬‭ Max speed the objects can reach. Leaving‬‭ this at 0 results in no‬ ‭ movement at all.‬ ‭ ●‬ ‭ MaxRange:‬‭ Range in which the "Follow GID" has to be‬‭ to the "Target GID"‬ ‭ to start the movement. One block is equal to 30.‬ ‭ ●‬ ‭ StartSpeed:‬‭ The speed the objects have when they start‬‭ their movement.‬ ‭ ●‬ ‭ StartDir:‬‭ The direction the objects face when they‬‭ start their movement,‬ ‭ with 0 meaning up, 90 right and so on.‬ ‭ ●‬ ‭ Acceleration:‬‭ The acceleration of the objects.‬ ‭ ●‬ ‭ SteerForce:‬‭ The force that is applied when the objects‬‭ steer towards the‬ ‭ target.‬ ‭ 82‬
  • 84. ‭ The three boxes on the right correspond to their respective options. They‬ ‭ apply their setting towards a reference object. "MaxRange" will be drawn from‬ ‭ the objects to the reference object. Secondly, "StartSpeed" functions like a‬ ‭ multiplier in this setting. It will copy the movement speed of the reference‬ ‭ object. For example, by inputting "2" in the slider, you double the speed.‬ ‭ Lastly, "StartDir" makes the objects face towards the reference object.‬ ‭ ●‬ ‭ SteerForceLow:‬‭ The lowest the steer force can get.‬ ‭ ●‬ ‭ SpeedRangeLow:‬‭ The speed of the objects when they‬‭ are not within the‬ ‭ "MaxRange".‬ ‭ ●‬ ‭ SteerForceHigh:‬‭ The highest the steer force can get.‬ ‭ ●‬ ‭ SpeedRangeHigh:‬‭ The speed of the objects when they‬‭ are within the‬ ‭ "MaxRange".‬ ‭ ●‬ ‭ SlowAccel:‬‭ The acceleration of the objects when in‬‭ the "SlowDist" distance‬ ‭ from the target object.‬ ‭ ●‬ ‭ SlowDist:‬‭ The distance from the target object that‬‭ is considered slow,‬ ‭ which applies the "SlowAccel" setting. One block is equal to 30.‬ ‭ ●‬ ‭ BreakForce:‬‭ The force at which the objects brake when‬‭ the target‬ ‭ suddenly goes in a different direction.‬ ‭ ●‬ ‭ BreakAngle:‬‭ The angle at which the objects will brake.‬ ‭ ●‬ ‭ BreakSteerForce:‬‭ The force at which the objects steer‬‭ while braking.‬ ‭ ●‬ ‭ BreakSteer SpeedLimit:‬‭ The max speed at which the‬‭ objects can steer‬ ‭ while braking.‬ ‭ ●‬ ‭ Target Dir:‬‭ The objects move in the direction of target.‬ ‭ The checkboxes next to "SteerForceLow" and "SteerForceHigh" enable low‬ ‭ and high speed modes respectively. As a last note for this Trigger, you can‬ ‭ select from two premade settings by clicking the "Pre" button on the first‬ ‭ page.‬ ‭ 83‬
  • 85. ‭ Edit Advanced Follow‬ ‭ This Trigger is used to edit the attributes of an Advanced Follow Trigger. An‬ ‭ explanation of all options can be found below.‬ ‭ ●‬ ‭ Target GID:‬‭ The Group ID of the objects that should‬‭ go towards the‬ ‭ "Follow GID".‬ ‭ ●‬ ‭ X/Y Only:‬‭ The objects will only apply the change on‬‭ the X or Y movement‬ ‭ respectively.‬ ‭ ●‬ ‭ Mod X/Y:‬‭ Modifies the movement on the X-axis and Y-axis‬‭ respectively.‬ ‭ ●‬ ‭ Speed:‬‭ Modifies the speed of the objects.‬ ‭ ●‬ ‭ Dir:‬‭ Modifies the direction at which the movement‬‭ is applied.‬ ‭ ●‬ ‭ Target Control ID:‬‭ Control ID allows you to only target‬‭ a specific Group ID‬ ‭ when using remapping. For example, if you remap a‬‭ Spawn Trigger‬‭ to use‬ ‭ Group ID 1, 2, and 3, and you only want to target Group ID 3, you can enter‬ ‭ a Control ID and enable the option in the Trigger. You can find the Control‬ ‭ ID option in the "Extra 2" category after clicking "Edit Group" with the‬ ‭ Trigger selected.‬ ‭ ●‬ ‭ Redirect Dir:‬‭ Redirects the direction towards a reference‬‭ object, which is‬ ‭ input in the box to the right.‬ ‭ The two boxes on the right correspond to their respective options. They apply‬ ‭ their setting towards a reference object. "Speed" functions like a multiplier in‬ ‭ this setting. It will copy the movement speed of the reference object. By‬ ‭ inputting a 2 in the slider, you double the speed. "Dir" will apply the‬ ‭ movement towards the direction of the reference object.‬ ‭ 84‬
  • 86. ‭ Re-Target Advanced Follow‬ ‭ This Trigger is used to change the target of an Advanced Follow Trigger.‬ ‭ ●‬ ‭ Target GID:‬‭ The Group ID of the objects that should‬‭ go towards the Group‬ ‭ ID set in "Follow GID".‬ ‭ ●‬ ‭ Follow GID:‬‭ The Group ID of the object that should‬‭ be the new target. You‬ ‭ can choose from the buttons below for more options.‬ ‭ ●‬ ‭ Target Control ID:‬‭ Control ID allows you to only target‬‭ a specific Group ID‬ ‭ when using remapping. For example, if you remap a‬‭ Spawn Trigger‬‭ to use‬ ‭ Group ID 1, 2, and 3, and you only want to target Group ID 3, you can enter‬ ‭ a Control ID and enable the option in the Trigger. You can find the Control‬ ‭ ID option in the "Extra 2" category after clicking "Edit Group" with the‬ ‭ Trigger selected.‬ ‭ ●‬ ‭ P1/P2/C:‬‭ Corresponds to Player 1, Player 2, and the‬‭ screen center‬ ‭ respectively.‬ ‭ Keyframe‬ ‭ This Trigger is used to set up keyframes. You can find an explanation of all‬ ‭ settings below, as well as an in-depth example in the‬‭ Keyframe System‬ ‭ chapter.‬ ‭ The Keyframe Trigger is one of the most complex Triggers. We suggest‬ ‭ following along with your own example when testing the options.‬ ‭ 85‬
  • 87. ‭ ●‬ ‭ GroupID:‬‭ The objects you want to reference for your‬‭ animation. Note that‬ ‭ these are not necessarily the objects that will do the animation. Those‬ ‭ objects are normally set in the Keyframe Animation Trigger. "GroupID" in‬ ‭ this Trigger is mainly used for referencing the art when you enable‬ ‭ "Preview Art". However, it is also used as the target if you do not input any‬ ‭ override when calling the Keyframe Animation Trigger.‬ ‭ ●‬ ‭ Duration:‬‭ The duration until the Keyframe Trigger‬‭ reaches the next one.‬ ‭ This time is always used unless it is a "Ref Only" Keyframe. "Time", "Even"‬ ‭ and "Dist" set how the time is used.‬ ‭ ●‬ ‭ Easing:‬‭ Applies easing to the start and end of the‬‭ keyframe.‬ ‭ ●‬ ‭ x360:‬‭ If you want to do a full rotation (360 degrees)‬‭ before reaching the‬ ‭ next keyframe.‬ ‭ ●‬ ‭ CCW/CW:‬‭ Whether you want the rotation to be done clockwise‬‭ or‬ ‭ counter-clockwise. Applies to all rotations, including full ones.‬ ‭ 86‬
  • 88. ‭ ●‬ ‭ SpawnGID:‬‭ Spawns a Group ID when the target objects reach the‬ ‭ keyframe.‬ ‭ ●‬ ‭ SpawnDelay:‬‭ Delay before "SpawnGID" is spawned.‬ ‭ ●‬ ‭ Prox:‬‭ "SpawnGID" is spawned when the target objects‬‭ are close to the‬ ‭ keyframe.‬ ‭ ●‬ ‭ Curve:‬‭ Keyframes use Bézier curve to get to the next‬‭ keyframe.‬ ‭ ●‬ ‭ Time:‬‭ With this option enabled, "Duration" is used‬‭ to reach the next‬ ‭ keyframe.‬ ‭ ●‬ ‭ Even:‬‭ The time between the keyframes is distributed‬‭ evenly between all‬ ‭ the "Ref Only" keyframes in between.‬ ‭ ●‬ ‭ Dist:‬‭ The duration before reaching the next keyframe‬‭ is distributed‬ ‭ between all "Ref Only" keyframes based on their distance from each other.‬ ‭ Let us look at an example to better understand how the different options‬ ‭ work.‬ ‭ 87‬
  • 89. ‭ The red Keyframe Triggers are marked as "Ref Only", while the green and blue‬ ‭ ones are not. The green keyframe controls the animation until the blue one,‬ ‭ and the blue one controls it until the end. If you set easing on the green‬ ‭ keyframe, that easing will be used to reach the blue keyframe. All red easing‬ ‭ values are ignored since they are reference points only.‬ ‭ The numbers in the figure are example durations set on the Triggers. If you‬ ‭ select "Time" on the green Keyframe Trigger, it will take 10 seconds to reach‬ ‭ the next red keyframe. Afterwards, the red keyframe's duration will be used to‬ ‭ reach the next one, so 5 seconds, and then 7 seconds from the next until you‬ ‭ reach the blue keyframe. As a result, it takes 22 seconds in total to reach the‬ ‭ blue one.‬ ‭ If you instead select "Even" on the green keyframe, it will ignore all the‬ ‭ duration values of the red (reference) keyframes, and evenly spread out the 10‬ ‭ seconds between each keyframes. As a result, it will take 10 seconds in total to‬ ‭ reach the blue one.‬ ‭ ●‬ ‭ Close Loop:‬‭ The objects return back to the first keyframe‬‭ after completing‬ ‭ the last one.‬ ‭ ●‬ ‭ Preview Art:‬‭ Used to preview the art you want to animate.‬‭ By default, you‬ ‭ only see the arrow icon. For this option to work, you have to put a Group ID‬ ‭ and also declare a Group Parent ID. With this option enabled, the objects‬ ‭ will spawn at the arrow position, with the Group Parent ID functioning like‬ ‭ the arrow icon.‬ ‭ 88‬
  • 90. ‭ ●‬ ‭ Ref Only:‬‭ Reference objects. Objects marked as reference‬‭ have a lower‬ ‭ opacity and are not considered for the "Even" and "Dist" options. Check the‬ ‭ corresponding options to see how their movement is handled.‬ ‭ ●‬ ‭ Auto Layer:‬‭ Automatically layers the keyframes, so‬‭ that the new one is the‬ ‭ highest. Most useful when using "Preview Art".‬ ‭ ●‬ ‭ Select All:‬‭ Selects all keyframes.‬ ‭ ●‬ ‭ Update Art:‬‭ Updates the art for the "Preview Art"‬‭ option. Changes done to‬ ‭ the reference Group ID are not updated instantly, so you need to press this‬ ‭ if you change your design.‬ ‭ ●‬ ‭ Dup Anim:‬‭ Duplicates the keyframes. You cannot copy‬‭ and paste them‬ ‭ like normal, since the copy would be considered connected in that case.‬ ‭ ●‬ ‭ Reverse Order:‬‭ Reverses the keyframe settings. For‬‭ example, instead of‬ ‭ scaling by 2 and moving 5 blocks to the right, it will scale by 0.5 and move 5‬ ‭ blocks to the left.‬ ‭ 89‬
  • 91. ‭ Area Move/Rotate/Scale/Fade/Tint‬ ‭ Area Triggers are used to apply different effects to an area of objects. Due to‬ ‭ many Area Triggers having the same settings, we will be explaining their‬ ‭ general options first and provide specific ones below. Note that Area Triggers‬ ‭ are on the more complicated side. Follow along with your own example.‬ ‭ Area Triggers work by taking the center you provide, drawing a circle around‬ ‭ the center (or a specific direction depending on what you pick below the‬ ‭ "Deadzone" option). This is done using the length you provide and calculating‬ ‭ the steps in between. For example, if you have "From Opacity" at 1.00 and "To‬ ‭ Opacity" at 0.50, the center will be shown as 1.00 opacity, and the borders will‬ ‭ be at 0.50 opacity. All other steps in between will be calculated gradually. For‬ ‭ example, right in the middle ("Length"/2), the opacity will be (1.00 + 0.50)/2 =‬ ‭ 0.75.‬ ‭ ●‬ ‭ Length:‬‭ Length in which objects will be affected.‬ ‭ ●‬ ‭ Offset:‬‭ Offsets the center position in the X direction.‬‭ The "+/-" is how off it‬ ‭ can go. For example, "Offset" at 40 with "+/-" at 10 would offset the center‬ ‭ between 3 and 5 blocks.‬ ‭ ●‬ ‭ Offset Y:‬‭ Offsets the center position in the Y direction.‬‭ The "+/-" is how off it‬ ‭ can go. For example, "Offset" at 40 with "+/-" at 10 would offset the center‬ ‭ between 3 and 5 blocks.‬ ‭ ●‬ ‭ Deadzone:‬‭ Divides the length by the value you set‬‭ here and changes the‬ ‭ transition between center and edge accordingly. For example, having a‬ ‭ length of 40 and setting a "Deadzone" of 0.5 would do 0 to 100% between 0‬ ‭ and 20, and stay 100% from 20-40.‬ ‭ 90‬
  • 92. ‭ ●‬ ‭ ModFront/ModBack:‬‭ Modify the front and back of your‬‭ center position.‬ ‭ The value you put here is multiplied with your center.‬ ‭ ●‬ ‭ Ignore Linked:‬‭ Objects linked together will be seen‬‭ as one object by‬ ‭ default. Enabling this option disables this behavior and makes the objects‬ ‭ behave as if they are not linked. Note that you have to set an object as‬ ‭ Group Parent or Area Parent for this to work.‬ ‭ ●‬ ‭ Ignore GParent:‬‭ If you set a Group Parent ID it will‬‭ be seen as the center of‬ ‭ your objects, and all objects will behave exactly like that one. The action‬ ‭ also only starts when you are within this object's range. Enabling this‬ ‭ option disables the Group Parent ID and makes all blocks behave as if they‬ ‭ do not have a Group Parent ID.‬ ‭ ●‬ ‭ DE AP:‬‭ Stands for "Don't Edit AreaParent". The object‬‭ that is set as Group‬ ‭ Parent ID will not perform any of the area actions.‬ ‭ ●‬ ‭ Easing:‬‭ The easing the objects have when they start‬‭ their action.‬ ‭ 91‬
  • 93. ‭ ●‬ ‭ Ease Out:‬‭ Allows modifying the easing the objects have when they end‬ ‭ their action.‬ ‭ ●‬ ‭ Priority:‬‭ If several Area Triggers of the same kind‬‭ are active at once, the‬ ‭ one with the higher priority will perform its action.‬ ‭ ●‬ ‭ Effect ID:‬‭ Specific ID that can be referenced later,‬‭ for example in‬‭ Edit Area‬ ‭ Triggers‬ ‭ .‬ ‭ ●‬ ‭ P1:‬‭ Player 1.‬ ‭ ●‬ ‭ P2:‬‭ Player 2.‬ ‭ ●‬ ‭ C:‬‭ Center of the screen.‬ ‭ ●‬ ‭ BL:‬‭ Bottom left of the screen.‬ ‭ ●‬ ‭ CL:‬‭ Left of the screen from the center.‬ ‭ ●‬ ‭ TL:‬‭ Top left of the screen.‬ ‭ 92‬
  • 94. ‭ ●‬ ‭ BC:‬‭ Bottom of the screen from the center.‬ ‭ ●‬ ‭ TC:‬‭ Top of the screen from the center.‬ ‭ ●‬ ‭ BR:‬‭ Bottom right of the screen.‬ ‭ ●‬ ‭ CR:‬‭ Right of the screen from the center.‬ ‭ ●‬ ‭ TR:‬‭ Top right of the screen.‬ ‭ The buttons below the "Deadzone" option indicate what direction the length‬ ‭ will be drawn. Here’s a table of all the variations and what their range looks‬ ‭ like.‬ ‭ 93‬
  • 95. ‭ Table 7.1: Direction settings.‬ ‭ 94‬
  • 98. ‭ For Area Move, we have these unique settings:‬ ‭ ●‬ ‭ MoveDist:‬‭ Distance the objects move.‬ ‭ ●‬ ‭ MoveAngle:‬‭ Angle in which objects move. 0 is up, 90‬‭ right, 180 down, 270‬ ‭ left, and so on.‬ ‭ ●‬ ‭ Relative:‬‭ Moves away in angle depending on where the‬‭ center is. If the‬ ‭ center is above the object, it will move down. If it is to the right, it will move‬ ‭ left, and so on.‬ ‭ ●‬ ‭ RFade:‬‭ Fade when using "Relative". Basically distance‬‭ ratio between‬ ‭ objects. 0 means a big gap, and the higher the number the smaller the‬ ‭ gap ratio.‬ ‭ ●‬ ‭ XY Mode:‬‭ You can enter X and Y values like in the‬‭ normal‬‭ Move Trigger‬ ‭ instead of choosing a direction.‬ ‭ 97‬
  • 99. ‭ For Area Rotate, we have these unique settings:‬ ‭ ●‬ ‭ Rotation:‬‭ The degrees you want the objects to rotate.‬‭ Enter a positive‬ ‭ value to rotate clockwise, and a negative value to rotate counter-clockwise.‬ ‭ For Area Scale, we have these unique settings:‬ ‭ ●‬ ‭ ScaleX/ScaleY:‬‭ The size the objects scale in the X-axis‬‭ and Y-axis‬ ‭ respectively.‬ ‭ For Area Fade, we have these unique settings:‬ ‭ ●‬ ‭ From Opacity:‬‭ The opacity the objects closest to the‬‭ center have.‬ ‭ ●‬ ‭ To Opacity:‬‭ The opacity the objects furthest from‬‭ the center have.‬ ‭ For Area Tint, we have these unique settings:‬ ‭ ●‬ ‭ Color Channel:‬‭ The color you want to tint the objects‬‭ in.‬ ‭ ●‬ ‭ %:‬‭ The percentage you want to tint the color. For‬‭ example, if you want to‬ ‭ tint a black object white and set "%" to 0.5, the object will turn gray.‬ ‭ ●‬ ‭ Main/Secondary Only:‬‭ Some objects have a Base Color‬‭ and Detail Color,‬ ‭ which is seen in the "Edit Object" menu. These options only change the‬ ‭ these colors respectively.‬ ‭ ●‬ ‭ HSV:‬‭ Instead of tinting the color of a different Color‬‭ Channel, you can‬ ‭ simply tint the same Color Channel and change the "HSV" values of it.‬ ‭ 98‬
  • 100. ‭ Edit Area Move/Rotate/Scale/Fade/Tint‬ ‭ Edit Area Triggers change the values of Area Triggers. Due to all options being‬ ‭ the same, you can check the section above to find detailed information about‬ ‭ all settings. Edit Area Triggers have the option to use Effect IDs to reference‬ ‭ Area Triggers. The Effect ID can be configured within the Area Triggers.‬ ‭ Area Stop‬ ‭ Area Stop Triggers stops Area Triggers. Area Stop Triggers can only reference‬ ‭ the Effect ID, which is configured in the Area Triggers.‬ ‭ Change BG/G/MG‬ ‭ These Triggers change the Background, Ground or Middleground‬ ‭ respectively. Pick a Background, Ground, or Middleground from the menu to‬ ‭ switch to the respective one from this Trigger's activation.‬ ‭ Touch‬ ‭ Touch Triggers are used to enable or disable a Group ID upon player touch.‬ ‭ Touch Triggers also function as‬‭ Spawn Triggers‬ ‭ , meaning‬‭ that they can spawn‬ ‭ other Triggers. By default, the Touch Triggers switch between disabling and‬ ‭ enabling an object on player touch. It is worth noting, that moving left and‬ ‭ right also count as a player touch in Platformer, despite the player not‬ ‭ jumping.‬ ‭ ●‬ ‭ Group ID:‬‭ The Group ID you want to enable, disable,‬‭ or spawn.‬ ‭ ●‬ ‭ Hold Mode:‬‭ Changes to enable the Group ID while the‬‭ player holds, and‬ ‭ disabling when the player releases. By default the Touch Triggers switch‬ ‭ between disabling and enabling an object on player touch.‬ ‭ ●‬ ‭ Dual Mode:‬‭ This is an obsolete option from 2.1, which‬‭ disables counting‬ ‭ inputs from player 2. Avoid using this option and use "P1/P2 Only" instead.‬ ‭ 99‬
  • 101. ‭ ●‬ ‭ P1/P2 Only:‬‭ Only counts touches from one player instead of both.‬ ‭ ●‬ ‭ Toggle On/Off:‬‭ Toggles a Group ID on or off when the‬‭ player touches. For‬ ‭ example, if you enable "Hold Mode" and "Toggle Off", holding will disable‬ ‭ the object and releasing will enable it. If you want to spawn a Group ID on‬ ‭ player touch, you should enable the "Toggle On" option.‬ ‭ Count‬ ‭ Count Triggers are used to enable, disable, or spawn a Group ID when an Item‬ ‭ ID reaches a specific number. Count IDs can be activated at any time when‬ ‭ that number is reached, as opposed to‬‭ Instant Count‬‭ Triggers‬‭ which only‬ ‭ check if the condition is met when the Trigger is hit.‬ ‭ ●‬ ‭ Item ID:‬‭ The Item ID you want to check the value for.‬‭ Place the "0" object‬ ‭ and click "Edit Special" to configure a unique Item ID.‬ ‭ ●‬ ‭ Target Count:‬‭ The number the Item ID needs to have‬‭ to activate the‬ ‭ Group ID.‬ ‭ ●‬ ‭ Target ID:‬‭ The Group ID which should be enabled, disabled,‬‭ or spawned‬ ‭ when the Item ID reaches the "Target Count".‬ ‭ ●‬ ‭ Activate Group:‬‭ Enable this option to enable a Group‬‭ ID, or to spawn a‬ ‭ Group ID. By default, the Group ID will be disabled when the count is‬ ‭ reached. Reaching the count again does not reactivate the Group ID, and‬ ‭ Triggers are only spawned if this option is enabled.‬ ‭ ●‬ ‭ Multi Activate:‬‭ Allows the Group ID to be enabled,‬‭ disabled, or spawned‬ ‭ again when the "Target Count" is reached several times. By default, the‬ ‭ action will only be performed once.‬ ‭ 100‬
  • 102. ‭ Instant Count‬ ‭ Instant Count Triggers are used to enable, disable, or spawn a Group ID if an‬ ‭ Item ID is equal, smaller, or larger than a specific number. Instant Count‬ ‭ Triggers only check if the condition is met when they are hit and never again‬ ‭ afterwards, as opposed to‬‭ Count Triggers‬‭ which check‬‭ for their condition‬ ‭ constantly.‬ ‭ ●‬ ‭ Item ID:‬‭ The Item ID you want to check the value for.‬‭ Place the "0" object‬ ‭ and click "Edit Special" to configure a unique Item ID.‬ ‭ ●‬ ‭ Target Count:‬‭ The number the Item ID needs to have‬‭ to activate the‬ ‭ Group ID.‬ ‭ ●‬ ‭ Target ID:‬‭ The Group ID which should be enabled, disabled,‬‭ or spawned‬ ‭ when the Item ID reaches the "Target Count".‬ ‭ ●‬ ‭ Activate Group:‬‭ Enable this option to enable a Group‬‭ ID, or to spawn a‬ ‭ Group ID. By default, the Group ID will be disabled when the count is‬ ‭ reached. Reaching the count again does not reactivate the Group ID, and‬ ‭ Triggers are only spawned if this option is enabled.‬ ‭ ●‬ ‭ Equals/Larger/Smaller:‬‭ This option will trigger "Target‬‭ ID" if the Item ID is‬ ‭ equal, larger, or smaller respectively when the Trigger is reached.‬ ‭ Pickup‬ ‭ Pickup Triggers can be used to change the values of Item IDs.‬ ‭ ●‬ ‭ Item ID:‬‭ The Item ID you want to check the value for.‬‭ Place the "0" object‬ ‭ and click "Edit Special" to configure a unique Item ID.‬ ‭ ●‬ ‭ Count:‬‭ The number you want to increase the current‬‭ Item ID value by. By‬ ‭ default, this will use addition. Check the options below for different‬ ‭ arithmetics.‬ ‭ 101‬
  • 103. ‭ ●‬ ‭ Override:‬‭ The Item ID value will override the current value with the new‬ ‭ one instead of using addition.‬ ‭ ●‬ ‭ Multiply:‬‭ Multiplies the previous value with your‬‭ set modifier.‬ ‭ ●‬ ‭ Divide:‬‭ Divides the previous value with your set modifier.‬‭ Note that the‬ ‭ Item ID will drop all numbers after the decimal point. For example,‬ ‭ dividing a value of 5 by 2 will result in 2 instead of 2.5, since the 0.5 is‬ ‭ dropped.‬ ‭ Time‬ ‭ Time Triggers function as an in-game Timer. In-game Timers use Item IDs to‬ ‭ work.‬ ‭ ●‬ ‭ StartTime/StopTime:‬‭ The time you want the Timer to‬‭ start and stop at‬ ‭ respectively. Note that you have to enable the checkbox to the right of‬ ‭ "StopTime" for the time to actually stop. If "StopTime" is lower than‬ ‭ "StartTime", "StopTime" will be ignored.‬ ‭ ●‬ ‭ ItemID:‬‭ The Item ID you want to use as a Timer. Place‬‭ the "0" object and‬ ‭ click "Edit Special" to configure a unique Item ID. Note that you have to set‬ ‭ the Item ID to "Time Counter" in the "Edit Special" page of the Item ID for‬ ‭ this Trigger to work.‬ ‭ ●‬ ‭ TargetID:‬‭ The Group ID you want to spawn when "StopTime"‬‭ is hit. Note‬ ‭ that you actually have to stop the time at the "StopTime" to enable the‬ ‭ Group ID. In other words, you have to enable the checkbox to the right of‬ ‭ the "StopTime" option.‬ ‭ ●‬ ‭ TimeMod:‬‭ Modifies the Timer. The number you input‬‭ here will be‬ ‭ multiplied with the normal Timer, resulting in the time going quicker if the‬ ‭ value is above 1 and slower if it is below 1.‬ ‭ ●‬ ‭ Ignore TimeWarp:‬‭ Using a‬‭ TimeWarp Trigger‬‭ will also‬‭ slow down or speed‬ ‭ up the Timer. Enabling this option makes the time behave the same.‬ ‭ 102‬
  • 104. ‭ ●‬ ‭ StartPaused:‬‭ The Timer will display your "StartTime", but it will not start‬ ‭ until activated by a different Time Trigger or a‬‭ Time‬‭ Control Trigger‬ ‭ .‬ ‭ ●‬ ‭ Dont Override:‬‭ Time Triggers with this option enabled‬‭ will only affect the‬ ‭ Timer if it is at 0.00 or has the "StartPaused" option enabled. If the Timer is‬ ‭ currently counting, the Triggers will not change the value.‬ ‭ Time Event‬ ‭ Time Event Triggers spawn a Group ID if a specific time is hit in the Timer.‬ ‭ Unlike the "TargetID" in the‬‭ Time Trigger‬ ‭ , the Timer‬‭ does not have to stop at‬ ‭ this value to Trigger it.‬ ‭ ●‬ ‭ ItemID:‬‭ The Item ID you want to use as a Timer. Place‬‭ the "0" object and‬ ‭ click "Edit Special" to configure a unique Item ID. Note that you have to set‬ ‭ the Item ID to "Time Counter" in the "Edit Special" page of the Item ID for‬ ‭ this Trigger to work.‬ ‭ ●‬ ‭ TargetID:‬‭ The Group ID you want to spawn when "TargetTime"‬‭ is hit.‬ ‭ ●‬ ‭ TargetTime:‬‭ The time at which you want to spawn "TargetID".‬ ‭ ●‬ ‭ Multi Activate:‬‭ The Triggers can spawn again if the‬‭ "TargetTime" is hit‬ ‭ several times.‬ ‭ Time Control‬ ‭ Time Control Triggers can start and stop a Timer.‬ ‭ ●‬ ‭ ItemID:‬‭ The Item ID you want to use as a Timer. Place‬‭ the "0" object and‬ ‭ click "Edit Special" to configure a unique Item ID. Note that you have to set‬ ‭ the Item ID to "Time Counter" in the "Edit Special" page of the Item ID for‬ ‭ this Trigger to work.‬ ‭ 103‬
  • 105. ‭ Item Edit‬ ‭ This Trigger is used to edit an Item ID using two different Item IDs. You can do‬ ‭ many different operations with these two Item IDs. Note that Item Edit‬ ‭ Triggers are pretty complicated, so we suggest following along with your own‬ ‭ example.‬ ‭ ●‬ ‭ ItemID1/ItemID2:‬‭ The Item IDs you want to use to do‬‭ operations. Note that‬ ‭ depending on what option you have selected in the "Edit Special" menu in‬ ‭ the Item Trigger, you have to select the respective option from the menu‬ ‭ to the right of "ItemID1" and "ItemID2". For example, if "ItemID1" is a normal‬ ‭ Item ID, and "ItemID2" is a Timer, you would select the "Item" and "Timer"‬ ‭ options respectively. Place the "0" object and click "Edit Special" to‬ ‭ configure a unique Item ID.‬ ‭ ●‬ ‭ Target ItemID:‬‭ The Item ID you want to edit. Note‬‭ that depending on what‬ ‭ option you have selected in the "Edit Special" menu in the Item Trigger,‬ ‭ you have to select the respective option from the menu to the right of‬ ‭ "Target ItemID". Place the "0" object and click "Edit Special" to configure a‬ ‭ unique Item ID.‬ ‭ 104‬
  • 106. ‭ ●‬ ‭ Mod:‬‭ Modifies the value that "ItemID1" and "ItemID2" produce. Leaving this‬ ‭ option at 1 will disable the third button, which is "•" in the picture below.‬ ‭ The three buttons in figure 7.26 correspond to how the numbers interact with‬ ‭ each other. We will explain what each one does, and then show some‬ ‭ examples for better understanding.‬ ‭ ●‬ ‭ The first button decides how the new values interact with the "Target‬ ‭ ItemID". If you set it to "=", the "Target ItemID" will use the new value. If you‬ ‭ set it to "+", the value will be added to the current value of the "Target‬ ‭ ItemID". Likewise, if you set it to "-", the value will be subtracted from the‬ ‭ current value. If you set it to "•" instead, the current value will be multiplied‬ ‭ with the value, while setting it to "/", divides the current value.‬ ‭ ●‬ ‭ The second button decides how "ItemID1" and "ItemID2" interact with each‬ ‭ other to calculate the value. If you set it to "+", "ItemID1" will be added to‬ ‭ "ItemID2". If you set it to "-", "ItemID2" will be subtracted from "ItemID1".‬ ‭ Similarly, if you set it to "•", "ItemID1" and "ItemID2" are multiplied, and with‬ ‭ "/", "ItemID1" will be divided by "ItemID2".‬ ‭ ●‬ ‭ The third button decides how the modifier interacts with the value that‬ ‭ "ItemID1" and "ItemID2" create. If you set it to "•", the value will be‬ ‭ multiplied with the modifier value. If you set it to "/", the value will be‬ ‭ divided by the modifier value.‬ ‭ 105‬
  • 107. ‭ To the right of these, there are two empty, optional buttons (figure 7.25),‬ ‭ which can be set to "N" or "A" for "neg" and "abs" respectively. In order, these‬ ‭ negate or find the absolute value of the number. Absolute value essentially‬ ‭ drops a negative sign and only uses positive values.‬ ‭ For our example, "ItemID1" has the value 8, "ItemID2" has the value 5, and‬ ‭ "Target ItemID" has the value 2. All values and operations are color coded for‬ ‭ convenience. As you can see, we selected "+" in the first box. This means that‬ ‭ the value will be added to the current value, indicated by the "I3 +" at the‬ ‭ bottom. In the second box, we selected "-", which means "ItemID2" will be‬ ‭ subtracted from "ItemID1", as indicated by "(I1 - I2)". Lastly, we set a modifier.‬ ‭ We chose "/" in the third box, which means that our value will be divided by‬ ‭ our modifier.‬ ‭ 106‬
  • 108. ‭ Let us replace the Item IDs with the values we chose to see what the result‬ ‭ should be. (Note that this is edited and cannot be achieved in normal‬ ‭ Geometry Dash.)‬ ‭ Doing the calculations, we get I3 = 2 + 3/2 = 2 + 1.5, which cannot be‬ ‭ represented due to how Geometry Dash rounds by default. Because of this,‬ ‭ the .5 is dropped and we are left with 2 + 1. Now our equation is I3 = 2 + 1 = 3,‬ ‭ which means the new value of our "Target ItemID" is 3.‬ ‭ Dropping of .5 may not be ideal in all cases. Luckily, we can fix this with the‬ ‭ "NA" buttons. The first "NA" button decides how the value you calculate is‬ ‭ handled. To use our example, this button decides how decimals are handled‬ ‭ for (8 - 5) / 2.000. The second "NA" decides how the new value is handled by‬ ‭ the "Target ItemID", so I3 in our example. Here are all the options you can set‬ ‭ and how they behave.‬ ‭ ●‬ ‭ NA:‬‭ The default way Geometry Dash handles the numbers.‬‭ Using this‬ ‭ mode will drop all decimal points.‬ ‭ ●‬ ‭ RND:‬‭ Rounds the number to the closest integer. If‬‭ we take our example,‬ ‭ 3/2 = 1.5 would be rounded to 2, which would mean our answer would be 4‬ ‭ instead of 3.‬ ‭ ●‬ ‭ FLR:‬‭ Stands for floor function, which means it will‬‭ always round down to‬ ‭ the next lower integer. For example, 4/5 = 0.8 would be rounded down to 0.‬ ‭ ●‬ ‭ CEI:‬‭ Stands for ceiling function, which means it will‬‭ always round up to the‬ ‭ next higher integer. For example 1/10 = 0.1 would be rounded up to 1.‬ ‭ 107‬
  • 109. ‭ Item Compare‬ ‭ This Trigger is used to compare two Item IDs and spawn Group IDs‬ ‭ depending on whether their condition is true or not. Item Compare Triggers‬ ‭ are pretty complicated, so we suggest following along with your own‬ ‭ example.‬ ‭ ●‬ ‭ ItemID1/ItemID2:‬‭ The Item IDs you want to compare‬‭ with each other. Note‬ ‭ that depending on what option you have selected in the "Edit Special"‬ ‭ menu in the Item Trigger, you have to select the respective option from‬ ‭ the menu to the right of "ItemID1" and "ItemID2". For example, if "ItemID1"‬ ‭ is a normal Item ID, and "ItemID2" is a Timer, you would select the "Item"‬ ‭ and "Timer" options respectively. Place the "0" object and click "Edit‬ ‭ Special" to configure a unique Item ID.‬ ‭ ●‬ ‭ Mod1/Mod2:‬‭ Modifiers for "ItemID1" and "ItemID2" respectively.‬‭ How the‬ ‭ modifier interacts with the values can be changed with the "•" buttons,‬ ‭ which is explained below.‬ ‭ ●‬ ‭ TrueID/FalseID:‬‭ The IDs that will be spawned if your‬‭ condition is true or‬ ‭ false respectively.‬ ‭ 108‬
  • 110. ‭ ●‬ ‭ Tol+-:‬‭ The tolerance. For example, if you set 0.5 here and "ItemID1" is 1,‬ ‭ while "ItemID2" is 0.5, this would count as true despite "ItemID1" and‬ ‭ "ItemID2" not being equal.‬ ‭ The three buttons to the right decide how the values are compared, and how‬ ‭ the modifiers interact with them. The first box decides the operation for‬ ‭ "ItemID1" and "Mod1", the second box decides the operation for "ItemID2" and‬ ‭ "Mod2", and the third box decides how the two values are compared to each‬ ‭ other.‬ ‭ For the first and second box, you can select the following options:‬ ‭ ●‬ ‭ "+" means that the corresponding modifier will be added to the Item ID‬ ‭ value.‬ ‭ ●‬ ‭ "-" means that the corresponding modifier will be subtracted from the‬ ‭ Item ID value.‬ ‭ ●‬ ‭ "•" means that the corresponding modifier will be multiplied with the Item‬ ‭ ID value.‬ ‭ ●‬ ‭ "/" means that‬‭ the Item ID value will be divided by‬‭ the corresponding‬ ‭ modifier.‬ ‭ 109‬
  • 111. ‭ For the third box, you can select the following options:‬ ‭ ●‬ ‭ "==" will return true if "ItemID1" is equal to "ItemID2".‬ ‭ ●‬ ‭ ">" will return true if "ItemID1" is larger than "ItemID2".‬ ‭ ●‬ ‭ ">=" will return true if "ItemID1" is larger than or equal to "ItemID2".‬ ‭ ●‬ ‭ "<" will return true if "ItemID1" is smaller than "ItemID2".‬ ‭ ●‬ ‭ "<=" will return true if "ItemID1" is smaller than or equal to "ItemID2".‬ ‭ The first "NA" decides how the left side of the equation is handled, so‬ ‭ "ItemID1" and "Mod1". The second "NA" decides how the right side of the‬ ‭ equation is handled, so "ItemID2" and "Mod2". Here are all the options you can‬ ‭ set and how they behave.‬ ‭ ●‬ ‭ NA:‬‭ The default way Geometry Dash handles the numbers.‬‭ Using this‬ ‭ mode will drop all decimal points.‬ ‭ ●‬ ‭ RND:‬‭ Rounds the number to the closest integer. If‬‭ we take our example,‬ ‭ 3/2 = 1.5 would be rounded to 2, which would mean our answer would be 4‬ ‭ instead of 3.‬ ‭ ●‬ ‭ FLR:‬‭ Stands for floor function, which means it will‬‭ always round down to‬ ‭ the next lower integer. For example, 4/5 = 0.8 would be rounded down to 0.‬ ‭ ●‬ ‭ CEI:‬‭ Stands for ceiling function, which means it will‬‭ always round up to the‬ ‭ next higher integer. For example 1/10 = 0.1 would be rounded up to 1.‬ ‭ 110‬
  • 112. ‭ Persistent Item‬ ‭ This Trigger marks Item IDs as persistent. Persistent Item IDs do not get reset‬ ‭ when you die. However, they are reset when you exit the level.‬ ‭ ●‬ ‭ Item ID:‬‭ The Item ID you want to mark as persistent.‬‭ Note that if your Item‬ ‭ ID is a Timer, you have to select the "Timer" option to the right of "Item ID".‬ ‭ ●‬ ‭ Persistent:‬‭ Marks the ID as persistent, so the value‬‭ will not be reset upon‬ ‭ death.‬ ‭ ●‬ ‭ TargetAll:‬‭ Targets all persistent Item IDs at once.‬ ‭ ●‬ ‭ Reset:‬‭ Resets the Item ID to 0.‬ ‭ Random‬ ‭ Randomly triggers one of two Group IDs.‬ ‭ ●‬ ‭ Group ID 1/2:‬‭ The two Group IDs that can be triggered.‬ ‭ ●‬ ‭ Chance %:‬‭ The chance that "Group ID 1" is triggered.‬‭ For example, if this is‬ ‭ set to 80, "Group ID 1" has an 80% chance of being triggered, while "Group‬ ‭ ID 2" has a chance of 100% - 80% = 20%.‬ ‭ Advanced Random‬ ‭ Randomly triggers one of up to 10 Group IDs.‬ ‭ ●‬ ‭ Group ID:‬‭ The Group ID you want to have a chance of‬‭ being triggered.‬ ‭ ●‬ ‭ Chance:‬‭ How likely it is for this Group ID to be triggered.‬‭ The way the odds‬ ‭ are calculated is by multiplying the "Chance" value by 100, and then‬ ‭ dividing it by the sum of all "Chance" values so far and the one you are‬ ‭ about to add.‬ ‭ 111‬
  • 113. ‭ For example, if you add Group ID 1 with a "Chance" of 20, and then add Group‬ ‭ ID 2 with a "Chance" of 50, the odds will be calculated as follows. "Chance" of‬ ‭ Group ID 2, 50, is multiplied by 100, resulting in 5000. Afterwards, it is divided‬ ‭ by both the "Chance" of Group ID 1 and 2, so 5000 / 70 ≈ 71%. This is the odds‬ ‭ Group ID 2 will have, while Group ID 1 will have odds of (20 * 100) / 70 ≈ 29%. If‬ ‭ you were to add Group ID 3 with "Chance" at 60, the odds would change to‬ ‭ (20 * 100) / 130 ≈ 15% for Group ID 1, (50 * 100) / 130 ≈ 38% for Group ID 2, and‬ ‭ (60 * 100) / 130 ≈ 46% for Group ID 3.‬ ‭ Sequence‬ ‭ The Sequence Trigger is used to spawn a sequence of Triggers. Every time the‬ ‭ Trigger is triggered, it will advance one step further in the sequence.‬ ‭ ●‬ ‭ GroupID/Count:‬‭ The Group ID you want to spawn, with‬‭ "Count" being how‬ ‭ often you want to spawn it.‬ ‭ ●‬ ‭ MinInt:‬‭ Minimum interval that has to pass before you‬‭ can activate the next‬ ‭ step in the sequence.‬ ‭ 112‬
  • 114. ‭ ●‬ ‭ Reset:‬‭ If set to 0, this option is ignored. If the Trigger is not triggered for‬ ‭ the duration you input here, it will stop the sequence and start from the‬ ‭ beginning again the next time you use it.‬ ‭ ●‬ ‭ Mode Stop:‬‭ The sequence stops once you reach the end.‬ ‭ ●‬ ‭ Mode Loop:‬‭ The sequence starts from the beginning‬‭ again after you reach‬ ‭ the end.‬ ‭ ●‬ ‭ Mode Last:‬‭ The sequence will finish like normal, and‬‭ after hitting the‬ ‭ Trigger again, only the last Group ID will be triggered every time.‬ ‭ ●‬ ‭ Reset Full:‬‭ If the Trigger has not been triggered‬‭ for the "Reset" time, the‬ ‭ Trigger will return to the first Group ID in the sequence.‬ ‭ ●‬ ‭ Reset Step:‬‭ If the Trigger has not been triggered‬‭ for the "Reset" time, the‬ ‭ sequence will go back to the Group ID before the current one.‬ ‭ For example, let us say you have a sequence of Group IDs 1, 2, 3, and 4, and‬ ‭ use "Reset Step" with a "Reset" time of 1 second. You trigger the first 4‬ ‭ sequences. If you do not activate the Trigger for 1 second, it will trigger Group‬ ‭ ID 3. If you do not activate the Trigger for 2 seconds, it will trigger Group ID 2.‬ ‭ Spawn Particles‬ ‭ Spawns particles upon activating the Trigger. Note that the particles you‬ ‭ want to spawn cannot have an infinite duration, and that the Trigger will‬ ‭ spawn the particles once on activation and not loop like normal.‬ ‭ ●‬ ‭ Particle Group:‬‭ Group ID of the particles you want‬‭ to spawn at the‬ ‭ "Position Group". It can consist of multiple particles.‬ ‭ ●‬ ‭ Position Group:‬‭ Position at which the particles will‬‭ spawn. This Group ID‬ ‭ can only consist of one object.‬ ‭ 113‬
  • 115. ‭ ●‬ ‭ Offset X/Y:‬‭ Offsets the position the particles are spawned at relatives to‬ ‭ "Position Group". A positive value adds an offset right and up respectively,‬ ‭ and vice versa. Note that one block is equal to 30.‬ ‭ ●‬ ‭ OffVar X/Y:‬‭ Adds a variance for the particle target‬‭ position. This basically‬ ‭ means that the particles will spawn in a random location within these‬ ‭ boundaries. Note that one block is equal to 30, and that the value is drawn‬ ‭ in both directions.‬ ‭ ●‬ ‭ Rotation:‬‭ Changes the rotation of the particles.‬ ‭ ●‬ ‭ Scale:‬‭ Changes the scale of the particles.‬ ‭ ●‬ ‭ Match Rot:‬‭ Makes the rotation of the spawned particles‬‭ match. Only‬ ‭ useful when "Particle Group" contains multiple particles without rotation‬ ‭ set in their own settings.‬ ‭ Reset‬ ‭ Resets‬‭ Collectables‬‭ and the checkpoint object. Objects‬‭ will appear again‬ ‭ when this Trigger is activated and can be collected again.‬ ‭ ●‬ ‭ Group ID:‬‭ Group ID of the objects you want to reset.‬ ‭ 114‬
  • 116. ‭ Zoom‬ ‭ Zooms the camera. The center point for the zoom is the camera center.‬ ‭ ●‬ ‭ Zoom:‬‭ The value you want to zoom to. If you want to‬‭ return to the default‬ ‭ state, leave this value at 1.000.‬ ‭ ●‬ ‭ Time:‬‭ The duration in which the zoom should happen.‬ ‭ ●‬ ‭ Easing:‬‭ Easing options change the way the objects‬‭ start and end their‬ ‭ movement.‬ ‭ Static Camera‬ ‭ Uses a Target Group ID as the center of the screen and locks to that object.‬ ‭ ●‬ ‭ Target Group ID:‬‭ The Group ID that should be seen‬‭ as the camera center.‬ ‭ Can only consist of a single object.‬ ‭ ●‬ ‭ X/Y Only:‬‭ The camera only takes the object's X or‬‭ Y position as the camera‬ ‭ X or Y center respectively.‬ ‭ ●‬ ‭ Follow:‬‭ Follows the movement of the object.‬ ‭ ●‬ ‭ Easing:‬‭ Adds an easing duration when following an‬‭ object.‬ ‭ ●‬ ‭ Smooth Velocity:‬‭ Reacts to player velocity and tries‬‭ to move the camera‬ ‭ smoothly to where you want. The path is calculated by using a Bézier‬ ‭ curve.‬ ‭ ●‬ ‭ Modifier:‬‭ Shifts the Bézier curve for the "Smooth‬‭ Velocity" option.‬ ‭ ●‬ ‭ Exit Static:‬‭ Exits the static mode and returns to‬‭ the default camera‬ ‭ location.‬ ‭ ●‬ ‭ Exit Instant:‬‭ The camera instantly snaps back to the‬‭ default camera‬ ‭ location when using "Exit Static".‬ ‭ ●‬ ‭ Duration:‬‭ The duration for the camera to reach the‬‭ object.‬ ‭ 115‬
  • 117. ‭ Camera Offset‬ ‭ Offsets the camera center.‬ ‭ ●‬ ‭ Offset X:‬‭ Moves the camera center along the X-axis.‬‭ One block is equal to‬ ‭ 10. Input a positive number to move to the right, and input a negative one‬ ‭ to move to the left.‬ ‭ ●‬ ‭ Offset Y:‬‭ Moves the camera center along the Y-axis.‬‭ One block is equal to‬ ‭ 10. Input a positive number to move up, and input a negative one to move‬ ‭ down.‬ ‭ ●‬ ‭ Move Time:‬‭ The duration for the camera to finish offsetting.‬ ‭ Gameplay Offset‬ ‭ Changes the offset between the player and the camera center.‬ ‭ ●‬ ‭ Offset X/Y:‬‭ Similar to the same options for‬‭ Camera‬‭ Offset‬ ‭ . 0 puts the‬ ‭ player in the center of the screen.‬ ‭ ●‬ ‭ X/Y Only:‬‭ Limits change to the X-axis or Y-axis respectively.‬ ‭ ●‬ ‭ Dont Zoom:‬‭ Does not consider any zoom values when‬‭ applying offset.‬ ‭ Camera Rotation‬ ‭ Rotates the camera.‬ ‭ ●‬ ‭ Move Time:‬‭ How long it should take to reach the rotation.‬ ‭ ●‬ ‭ Degrees:‬‭ Rotation you want to have. Enter a positive‬‭ value to rotate‬ ‭ clockwise, and enter a negative one to rotate counter-clockwise. Leave this‬ ‭ at 0 to return to the default rotation.‬ ‭ ●‬ ‭ Easing:‬‭ Changes the way the objects start and end‬‭ their movement.‬ ‭ 116‬
  • 118. ‭ Camera Edge‬ ‭ Sets edges for the camera. If the edge is within the current screen, it will‬ ‭ either snap for the object to be at the edge or ignore it until the object is‬ ‭ outside the screen, depending on the zoom level. The camera edge will adjust‬ ‭ with the movement of the edge objects.‬ ‭ ●‬ ‭ Target ID:‬‭ The Group ID you want to set as the edge.‬‭ It can only consist of‬ ‭ a single object.‬ ‭ ●‬ ‭ Left/Right/Up/Down:‬‭ Defines what kind of edge it is.‬‭ Enabling left would‬ ‭ set the object as the left edge of the screen, while down would set it at the‬ ‭ bottom edge of the screen, and so on.‬ ‭ ●‬ ‭ Unlock:‬‭ Press this button to return to the default‬‭ state. You can also just‬ ‭ leave "Target ID" at 0.‬ ‭ Camera Guide‬ ‭ Does not serve any other purpose besides functioning as a guide to see the‬ ‭ camera edges of different zooms. Can also be used as the "Target Group" for‬ ‭ the‬‭ Static Camera Trigger‬‭ to always have a good understanding‬‭ of what the‬ ‭ screen will look like.‬ ‭ ●‬ ‭ Zoom:‬‭ The zoom level you want to display. If you want‬‭ to return to the‬ ‭ default state, leave this value at 1.000.‬ ‭ ●‬ ‭ Offset X:‬‭ Moves the outlines along the X-axis. One‬‭ block is equal to 30.‬ ‭ Input a positive number to move to the right, and input a negative one to‬ ‭ move to the left.‬ ‭ ●‬ ‭ Offset Y:‬‭ Moves the outlines along the Y-axis. One‬‭ block is equal to 10.‬ ‭ Input a positive number to move up, and input a negative one to move‬ ‭ down.‬ ‭ 117‬
  • 119. ‭ Reverse‬ ‭ Reverses the player direction in Classic levels. Does not do anything in‬ ‭ Platformer.‬ ‭ Rotate Gameplay‬ ‭ Rotates the gameplay (not the camera) in the direction the arrow points. The‬ ‭ line that is below the arrow indicates the gravity.‬ ‭ The Rotate Gameplay Trigger direction determines how the Channel’s‬ ‭ Triggers are sorted. For example, if the Rotate Gameplay Trigger points up,‬ ‭ Triggers with a smaller Y value are triggered first, and higher ones later. If the‬ ‭ Trigger points right, Triggers with a smaller X value are triggered first and‬ ‭ higher ones later, and so on. See‬‭ Channel System‬‭ for‬‭ more information.‬ ‭ ●‬ ‭ Keep Velocity:‬‭ Keeps the velocity the player has before‬‭ the gameplay‬ ‭ rotation and smoothly transitions it to the new gravity. Results in smoother‬ ‭ movement overall.‬ ‭ ●‬ ‭ Change Channel:‬‭ Changes the Channel to the number‬‭ you have entered‬ ‭ in the number box at the bottom.‬ ‭ ●‬ ‭ Channel Only:‬‭ Only changes the Channel and does not‬‭ update the‬ ‭ gameplay rotation.‬ ‭ ●‬ ‭ Instant Offset:‬‭ The camera updates instantly when‬‭ switching gameplay to‬ ‭ the opposite direction.‬ ‭ 118‬
  • 120. ‭ Song‬ ‭ Changes the song in the middle of a level.‬ ‭ ●‬ ‭ Channel:‬‭ There are 5 Channels on which a song can‬‭ play. Songs on‬ ‭ different Channels will play simultaneously, while only one song can play‬ ‭ on the same Channel. Note that Channels used for music are not the same‬ ‭ as Color Channels or the ones mentioned for‬‭ Rotate‬‭ Gameplay Triggers‬ ‭ .‬ ‭ ●‬ ‭ Start/End:‬‭ The time (in milliseconds) at which you‬‭ want the song to start‬ ‭ and end.‬ ‭ ●‬ ‭ Fade In/Out:‬‭ The time (in milliseconds) at which the‬‭ song should fade in‬ ‭ and out.‬ ‭ ●‬ ‭ Prep/Load Prep:‬‭ Setting a song time introduces some‬‭ delay depending‬ ‭ on the seek time. If you need the song to sync precisely, you first have to‬ ‭ "Prep" the Trigger, then "Load Prep" later. "Prep" overwrites any previous‬ ‭ "Prep", so if you have multiple Song Triggers, you have to alternate‬ ‭ between loading them. For example, "Prep" and "Load Prep" for the first,‬ ‭ "Prep" and "Load Prep" for the second, and so on.‬ ‭ Edit Song‬ ‭ Edits attributes of a song, such as volume, speed and also allows for proximity‬ ‭ options.‬ ‭ ●‬ ‭ Channel:‬‭ The Channel you want to edit the song of.‬ ‭ ●‬ ‭ Duration:‬‭ How long it should take for the song to‬‭ change to the new‬ ‭ settings.‬ ‭ ●‬ ‭ Speed:‬‭ Changes the speed of the song. Note that you‬‭ have to enable the‬ ‭ "Change Speed" button for the speed to actually change.‬ ‭ ●‬ ‭ Volume:‬‭ Changes the volume of the song. Note that‬‭ you have to enable‬ ‭ the "Change Volume" button for the speed to actually change.‬ ‭ 119‬
  • 121. ‭ ●‬ ‭ Stop/Stop Loop:‬‭ "Stop" stops the song entirely, while "Stop Loop" stops the‬ ‭ looping of the song, so it will stop the next time it reaches the end.‬ ‭ ●‬ ‭ Group ID 1:‬‭ Used for proximity. This is the Group‬‭ ID where the distance‬ ‭ should be drawn from.‬ ‭ ●‬ ‭ Group ID 2:‬‭ Used for proximity. This is the Group‬‭ ID the distance will be‬ ‭ measured to. For example, if your "MinDist" is 60, the "VolNear" volume will‬ ‭ be played when the Group ID is within 6 blocks of Group ID 1. Choosing‬ ‭ "P1", "P2", or "Cam" from the buttons below turns Group ID 2 into Player 1,‬ ‭ Player 2, or the camera center respectively.‬ ‭ ●‬ ‭ VolNear/VolMed/VolFar:‬‭ Volume near, medium, and far‬‭ away for‬ ‭ proximity. "VolNear" means you are within the "MinDist" boundaries from‬ ‭ Group ID 1, while "VolMed" refers to "Dist2" and "VolFar" to "Dist3".‬ ‭ 120‬
  • 122. ‭ ●‬ ‭ MinDist/Dist2/Dist3:‬‭ Sets the boundaries for "VolNear", "VolMed", and‬ ‭ "VolFar" respectively. Above is an example with "MinDist" set to 30 and‬ ‭ both "Dist2" and "Dist3" set to 20. "MinDist" refers to the closest length and‬ ‭ is drawn in red, while "Dist2" refers to the middle length and is drawn in‬ ‭ green. Finally, "Dist3" refers to the furthest length and is drawn in blue. The‬ ‭ distances stack with each other. For example, if your "MinDist" is 20 and‬ ‭ your "Dist2" is 30, the "Dist2" circle will be drawn 5 blocks from the object in‬ ‭ Group ID 1, and not 3 blocks.‬ ‭ The various arrow buttons indicate how proximity is handled. Here are all‬ ‭ options and how their sound is drawn. The distance options will be drawn‬ ‭ from the Group ID 2 object (in this case Player 1) towards the arrow direction.‬ ‭ In these examples, black is equal to the highest volume and gray is equal to‬ ‭ the lowest.‬ ‭ Table 7.2: Proximity buttons.‬ ‭ 121‬
  • 125. ‭ SFX‬ ‭ You can choose a sound effect (SFX) to play from the menu in the top right of‬ ‭ the first page.‬ ‭ ●‬ ‭ Reverb:‬‭ Reverb is created when a sound occurs in a‬‭ space, resulting in the‬ ‭ SFX changing pitch and echo accordingly. By clicking the "+" button, you‬ ‭ can select different spaces for the SFX to occur in.‬ ‭ ●‬ ‭ FFT:‬‭ Stands for fast Fourier transform. "FFT" is used‬‭ to determine the‬ ‭ fundamental frequencies and therefore pitches that are present in the raw‬ ‭ signal.‬ ‭ ●‬ ‭ Loop:‬‭ Loops the SFX until stopped.‬ ‭ ●‬ ‭ Pre Load:‬‭ Setting a start time introduces some delay‬‭ depending on the‬ ‭ seek time. If you need the SFX to sync precisely, you can preload it.‬ ‭ ●‬ ‭ Start/End:‬‭ Start and end of the SFX in milliseconds.‬ ‭ ●‬ ‭ FadeIn/FadeOut:‬‭ Fades the SFX in and out respectively,‬‭ with the values‬ ‭ being in milliseconds.‬ ‭ ●‬ ‭ Unique ID:‬‭ Assigns a unique ID to SFX within their‬‭ respective "SFXGroup".‬ ‭ By enabling the "IsUnique" option, you mark the ID as unique, resulting in‬ ‭ no other SFX being able to take that ID if it is in the same "SFXGroup".‬ ‭ ●‬ ‭ SFXGroup:‬‭ You can have several SFX and put them into‬‭ their own‬ ‭ "SFXGroup". This Group ID can later be edited.‬ ‭ ●‬ ‭ MinInterval:‬‭ Minimum interval before the SFX can be‬‭ triggered again.‬ ‭ ●‬ ‭ Override:‬‭ If another SFX has the same "Unique ID"‬‭ and "SFXGroup", this‬ ‭ new SFX will override the old one.‬ ‭ ●‬ ‭ Ignore Volume Test:‬‭ SFX played at volume 0 are ignored.‬‭ Enable this‬ ‭ option to not ignore them. This is mainly used for the proximity options,‬ ‭ where the sound will not play if any distance has a volume of 0.‬ ‭ ●‬ ‭ Group ID 1:‬‭ Used for proximity. This is the Group‬‭ ID where the distance‬ ‭ should be drawn from.‬ ‭ 124‬
  • 126. ‭ ●‬ ‭ Group ID 2:‬‭ Used for proximity. This is the Group ID the distance will be‬ ‭ measured to. For example, if your "MinDist" is 60, the "VolNear" volume will‬ ‭ be played when the Group ID is within 6 blocks of Group ID 1. Choosing‬ ‭ "P1", "P2", or "Cam" from the buttons below turns Group ID 2 into Player 1,‬ ‭ Player 2, or the camera center respectively.‬ ‭ ●‬ ‭ VolNear/VolMed/VolFar:‬‭ Volume near, medium, and far‬‭ away for‬ ‭ proximity. "VolNear" means you are within the "MinDist" boundaries from‬ ‭ Group ID 1, while "VolMed" refers to "Dist2" and "VolFar" to "Dist3".‬ ‭ ●‬ ‭ MinDist/Dist2/Dist3:‬‭ Sets the boundaries for "VolNear",‬‭ "VolMed", and‬ ‭ "VolFar" respectively.‬ ‭ See figure 7.33 and table 7.2 under‬‭ Edit Song Trigger‬‭ for more information on‬ ‭ proximity.‬ ‭ Edit SFX‬ ‭ Edits attributes of a sound effect (SFX), such as volume, speed and also allows‬ ‭ setting up proximity options.‬ ‭ ●‬ ‭ Group ID:‬‭ You can give the SFX Triggers you want to‬‭ edit a Group ID and‬ ‭ change them through this field.‬ ‭ ●‬ ‭ SFXGroup/UniqueID: "‬ ‭ SFXGroup" and "UniqueID" can be‬‭ used to reference‬ ‭ the exact SFX you want to edit. You should put the same values you put‬ ‭ into the SFX Trigger here.‬ ‭ ●‬ ‭ Duration:‬‭ How long it should take for the SFX to change‬‭ to the new‬ ‭ settings.‬ ‭ ●‬ ‭ Speed:‬‭ Changes the speed of the SFX. Note that you‬‭ have to enable the‬ ‭ "Change Speed" button for the speed to actually change.‬ ‭ ●‬ ‭ Volume:‬‭ Changes the volume of the SFX. Note that you‬‭ have to enable the‬ ‭ "Change Volume" button for the speed to actually change.‬ ‭ 125‬
  • 127. ‭ ●‬ ‭ Stop/Stop Loop:‬‭ "Stop" stops the SFX entirely, while "Stop Loop" stops the‬ ‭ looping of the SFX, so it will stop the next time it reaches the end.‬ ‭ ●‬ ‭ Group ID 1:‬‭ Used for proximity. This is the Group‬‭ ID where the distance‬ ‭ should be drawn from.‬ ‭ ●‬ ‭ Group ID 2:‬‭ Used for proximity. This is the Group‬‭ ID the distance will be‬ ‭ measured to. For example, if your "MinDist" is 60, the "VolNear" volume will‬ ‭ be played when the Group ID is within 6 blocks of Group ID 1. Choosing‬ ‭ "P1", "P2", or "Cam" from the buttons below turns Group ID 2 into Player 1,‬ ‭ Player 2, or the camera center respectively.‬ ‭ ●‬ ‭ VolNear/VolMed/VolFar:‬‭ Volume near, medium, and far‬‭ away for‬ ‭ proximity. "VolNear" means you are within the "MinDist" boundaries from‬ ‭ Group ID 1, while "VolMed" refers to "Dist2" and "VolFar" to "Dist3".‬ ‭ ●‬ ‭ MinDist/Dist2/Dist3:‬‭ Sets the boundaries for "VolNear",‬‭ "VolMed", and‬ ‭ "VolFar" respectively.‬ ‭ See figure 7.33 and table 7.2 under‬‭ Edit Song Trigger‬‭ for more information on‬ ‭ proximity.‬ ‭ Event‬ ‭ Spawns a Group ID upon a player action. The action can be selected from the‬ ‭ top right menu.‬ ‭ ●‬ ‭ Group ID:‬‭ The Group ID that is spawned when the player‬‭ does the action.‬ ‭ ●‬ ‭ Extra ID/ID2:‬‭ You can input a Material ID here for‬‭ the action to only apply if‬ ‭ you are on that Material ID. For example, if you choose "Normal Landing"‬ ‭ and enter a Material ID used for a specific a block, you will only activate the‬ ‭ Group ID if you land on that block.‬ ‭ 126‬
  • 128. ‭ TimeWarp‬ ‭ Speeds up or slows down time. This affects everything, including player‬ ‭ movement, durations in Triggers, Timers, and so on..‬ ‭ ●‬ ‭ TimeMod:‬‭ Modifier for the time. The value you input‬‭ here will be‬ ‭ multiplied with the normal time, so less than 1 will slow the time down and‬ ‭ above 1 will speed time up.‬ ‭ Camera Mode‬ ‭ Allows switching between Free Mode and Normal Mode for camera. In Free‬ ‭ Mode, the borders for Ship, Ball, UFO, Wave, Spider, and Swing are removed.‬ ‭ ●‬ ‭ Edit Camera Settings:‬‭ Allows you to edit how the camera‬‭ follows the‬ ‭ player in Free Mode. "Easing" changes how the camera starts and ends its‬ ‭ movement, while "Padding" modifies how close the player has to be to the‬ ‭ top or bottom of the screen for the camera to start following.‬ ‭ ●‬ ‭ Disable GridSnap:‬‭ Normally the camera center will‬‭ snap to the closest grid‬ ‭ space. With this option enabled, the snapping will not happen.‬ ‭ Setup MG‬ ‭ Moves the Middleground.‬ ‭ ●‬ ‭ Offset Y:‬‭ Moves the Middleground up or down. Input‬‭ a positive value to‬ ‭ move it up, and enter a negative value to move it down.‬ ‭ ●‬ ‭ Easing:‬‭ Easing options change the way the Middleground‬‭ starts and ends‬ ‭ its movement.‬ ‭ ●‬ ‭ Move Time:‬‭ Duration until the Middleground finishes‬‭ its movement.‬ ‭ 127‬
  • 129. ‭ BG/MG Speed‬ ‭ Modifies the speed at which the Background and Middleground follow the‬ ‭ player.‬ ‭ ●‬ ‭ Mod X/Y:‬‭ Modifies the X-axis speed and Y-axis speed‬‭ respectively. The‬ ‭ value you input here will be multiplied with the default speed, with 0‬ ‭ stopping the movement entirely.‬ ‭ Counter Label‬ ‭ Displays Item IDs, Timers, or Points.‬ ‭ ●‬ ‭ ItemID:‬‭ The Item ID that should be displayed. The‬‭ value of Item IDs can be‬ ‭ changed with‬‭ Pickup Triggers‬ ‭ ,‬‭ Time Triggers‬‭ or‬‭ Collectables‬‭ depending on‬ ‭ what option you choose.‬ ‭ ●‬ ‭ Time Counter:‬‭ Functions as a Timer. You need a‬‭ Time‬‭ Trigger‬‭ to use this‬ ‭ Timer.‬ ‭ ●‬ ‭ Seconds Only:‬‭ The Timer only displays the seconds.‬ ‭ ●‬ ‭ MainTime:‬‭ Also functions as a Timer that displays‬‭ the exact game time.‬ ‭ ●‬ ‭ Points:‬‭ Points can be configured in the "Edit Special"‬‭ page of‬‭ Collectables‬ ‭ .‬ ‭ ●‬ ‭ Attempts:‬‭ Displays the current attempt the player‬‭ is on.‬ ‭ ●‬ ‭ Left/Right Align:‬‭ Aligns the ID to the left or right‬‭ border respectively. The‬ ‭ width will change depending on what value it has (for example 8 is wider‬ ‭ than 1). By default, the width will be extended the same to the left and‬ ‭ right. Choosing "Left Align", the width will expand only to the right, while‬ ‭ choosing "Right Align" will expand only to the left.‬ ‭ 128‬
  • 130. ‭ UI Settings‬ ‭ Marks objects as user interface and puts them on a UI layer which is in front of‬ ‭ everything else, including the Ground. The UI layer is permanent and cannot‬ ‭ be edited.‬ ‭ ●‬ ‭ Group ID:‬‭ The objects that get marked as UI.‬ ‭ ●‬ ‭ UI Target:‬‭ This Group ID is marked as the camera center‬‭ reference and can‬ ‭ only consist of one object.‬ ‭ ●‬ ‭ XRef/YRef:‬‭ The reference points for aligning the object.‬ ‭ ●‬ ‭ Auto/Center/Left/Right/Top/Bottom:‬‭ "Auto" aligns objects‬‭ based on the‬ ‭ camera edges of the "UI Target" object. "Center" uses the center of the‬ ‭ object as the camera center. "Left" uses the object as the left edge of the‬ ‭ camera, while "Right" uses the object as the right edge of the camera.‬ ‭ Similarly, "Top" uses the object as the top edge of the camera, while‬ ‭ "Bottom" uses the object as the bottom edge of the camera.‬ ‭ ●‬ ‭ Relative:‬‭ The position of the UI will scale with the‬‭ screen aspect ratio.‬ ‭ 129‬
  • 131. ‭ Visibility Link‬ ‭ This makes every object in a Group ID visible, as long as any of its objects are‬ ‭ on screen. It is useful for larger collection of blocks that go offscreen often.‬ ‭ Note that it cannot be toggled throughout the level.‬ ‭ ●‬ ‭ Group ID:‬‭ The objects you want to be fully visible.‬‭ This is processed at‬ ‭ level load.‬ ‭ Collision‬ ‭ Spawns a Group ID when two‬‭ Collision Blocks‬‭ collide.‬‭ One of the two blocks‬ ‭ must have the "Dynamic Block" activated.‬ ‭ ●‬ ‭ BlockA/BlockB ID:‬‭ Groups of Block 1 and Block 2, one‬‭ of which has to have‬ ‭ the "Dynamic Block" option enabled.‬ ‭ ●‬ ‭ Target ID:‬‭ The Group ID that gets spawned when the‬‭ blocks collide.‬ ‭ ●‬ ‭ P1/P2/PP:‬‭ Enabling "P1" or "P2" allows triggering‬‭ upon Player 1 or 2‬ ‭ colliding with "BlockB ID" respectively. Enabling both options allows for‬ ‭ triggering when either player collides with it. "PP" triggers the Group ID‬ ‭ when both players collide with each other in Dual Mode.‬ ‭ ●‬ ‭ Activate Group:‬‭ Activates the Group ID. By default,‬‭ the Group ID will be‬ ‭ toggled off. Enable this option if you want to spawn a Group ID or toggle‬ ‭ an object on.‬ ‭ ●‬ ‭ Trigger On Exit:‬‭ The Group ID will be triggered when‬‭ the blocks do not‬ ‭ collide anymore.‬ ‭ 130‬
  • 132. ‭ Instant Collision‬ ‭ Instant Collision Triggers function similarly to Collision Triggers, however it is‬ ‭ only checked on Trigger activation if the condition is true or false. Normal‬ ‭ Collision Triggers check if the condition is true all the time.‬ ‭ ●‬ ‭ BlockA/BlockB ID:‬‭ Groups of Block 1 and Block 2, one‬‭ of which has to have‬ ‭ the "Dynamic Block" option enabled.‬ ‭ ●‬ ‭ True/False ID:‬‭ The Group ID that gets spawned if "BlockA‬‭ ID" and "BlockB‬ ‭ ID" collide or do not collide respectively in the moment the Trigger is‬ ‭ activated.‬ ‭ ●‬ ‭ P1/P2/PP:‬‭ Enabling "P1" or "P2" allows triggering‬‭ upon Player 1 or 2‬ ‭ colliding with "BlockB ID" respectively. Enabling both options allows for‬ ‭ triggering when either player collides with it. "PP" triggers the Group ID‬ ‭ when both players collide with each other in Dual Mode.‬ ‭ Collision State‬ ‭ Spawns a Group ID when the player enters and exits the block hitbox.‬ ‭ Functions as a quicker alternative to‬‭ Collision Blocks‬ ‭ .‬ ‭ ●‬ ‭ State On/Off:‬‭ The Group ID that is spawned if the‬‭ player is colliding with‬ ‭ the Collision State hitbox or not colliding respectively.‬ ‭ Collision Block‬ ‭ The blocks used for (Instant) Collision Triggers. If you want two blocks to‬ ‭ collide, you will have to mark one of them as "Dynamic".‬ ‭ 131‬
  • 133. ‭ Toggle Block‬ ‭ Toggles or spawns a Group ID if the player clicks while within the block hitbox.‬ ‭ ●‬ ‭ Group ID:‬‭ The Group ID that gets spawned or toggled‬‭ when the Trigger‬ ‭ gets activated.‬ ‭ ●‬ ‭ Activate Group:‬‭ Activates the Group ID. By default,‬‭ the Group ID will be‬ ‭ toggled off. Enable this option if you want to spawn a Group ID or toggle‬ ‭ an object on.‬ ‭ ●‬ ‭ Claim Touch:‬‭ The player will not jump and no rings‬‭ will spawn. The click‬ ‭ can not be buffered.‬ ‭ ●‬ ‭ Spawn Only:‬‭ Clicking only spawns the Group ID and‬‭ does not toggle it on‬ ‭ or off.‬ ‭ ●‬ ‭ NO Multi Activate:‬‭ By default, the Group ID will be‬‭ toggled or spawned‬ ‭ every time you click within the hitbox. With this option enabled, you can‬ ‭ only toggle or spawn it once.‬ ‭ On Death‬ ‭ Toggles or spawns a Group ID when the player dies.‬ ‭ ●‬ ‭ Group ID:‬‭ The Group ID that gets spawned or toggled‬‭ when the player‬ ‭ dies.‬ ‭ ●‬ ‭ Activate Group:‬‭ Activates the Group ID. By default,‬‭ the Group ID will be‬ ‭ toggled off. Enable this option if you want to spawn a Group ID or toggle‬ ‭ an object on.‬ ‭ 132‬
  • 134. ‭ Disable/Enable Trail‬ ‭ Disables and enables the player trail respectively.‬ ‭ Show/Hide‬ ‭ Shows and hides the player respectively. Hiding the player makes it invisible,‬ ‭ but note that you can still see the trail if enabled.‬ ‭ BG Effect On/Off‬ ‭ Enables and disables the background particles in Ship, Ball, UFO, Wave.‬ ‭ 133‬
  • 135. ‭ End‬ ‭ Marks an object as the end of the level. The player gets pulled towards it. This‬ ‭ Trigger can be used in both Classic and Platformer levels.‬ ‭ ●‬ ‭ TargetPos:‬‭ The Group ID of the object that should‬‭ be considered as the‬ ‭ position for the end. The Group ID can only consist of one object.‬ ‭ ●‬ ‭ SpawnID:‬‭ A Group ID that gets spawned when the player‬‭ reaches the end.‬ ‭ This is optional.‬ ‭ ●‬ ‭ Instant:‬‭ The player will teleport to the end as soon‬‭ as the object is on‬ ‭ screen instead of slowly jumping towards it.‬ ‭ ●‬ ‭ No Effects:‬‭ Disables the effects that play when you‬‭ reach the end, such as‬ ‭ the effect lines.‬ ‭ ●‬ ‭ No SFX:‬‭ Disables the SFX that plays when you reach‬‭ the end.‬ ‭ Player Control‬ ‭ Controls behavior of the player.‬ ‭ ●‬ ‭ P1/P2:‬‭ What player you want to control. Both options‬‭ enabled or disabled‬ ‭ results in both players being affected.‬ ‭ ●‬ ‭ Stop Jump:‬‭ Stops the player jumping.‬ ‭ ●‬ ‭ Stop Move:‬‭ Stops the player movement.‬ ‭ ●‬ ‭ Stop Rot:‬‭ Stops the player rotation.‬ ‭ ●‬ ‭ Stop Slide:‬‭ Stops the low friction state you are in‬‭ after being launched by a‬ ‭ force block. It does not stop the sliding from slopes or ice blocks.‬ ‭ 134‬
  • 136. ‭ Options‬ ‭ Several options to change attributes of the level.‬ ‭ ●‬ ‭ Streak Additive:‬‭ Changes the trail and particles to‬‭ be blending.‬ ‭ ●‬ ‭ Hide Ground/MG:‬‭ Makes the Ground and Middleground‬‭ invisible‬ ‭ respectively.‬ ‭ ●‬ ‭ Hide P1/P2:‬‭ Hides Player 1 or Player 2 respectively.‬‭ Functions the same way‬ ‭ as the‬‭ Hide Trigger‬ ‭ .‬ ‭ ●‬ ‭ Disable P1/P2 Controls:‬‭ Disables all input for Player‬‭ 1 and Player 2‬ ‭ respectively.‬ ‭ ●‬ ‭ Hide Attempts:‬‭ Hides the attempts counter.‬ ‭ ●‬ ‭ Unlink Dual Gravity:‬‭ Unlinks the gravity of the icons‬‭ in Dual Mode. By‬ ‭ default, if one icon switches gravity, the other icon will switch gravity as‬ ‭ well.‬ ‭ ●‬ ‭ Audio on Death:‬‭ Continues to play audio after death.‬ ‭ ●‬ ‭ No Death SFX:‬‭ Disables the death SFX.‬ ‭ ●‬ ‭ Edit Respawn Time:‬‭ Lets you customize the respawn‬‭ time.‬ ‭ ●‬ ‭ Boost Slide:‬‭ Increases how far the player slides after‬‭ a force is applied.‬ ‭ BPM Guide‬ ‭ Draws lines in the editor at beats per minute you configure. Helps to make‬ ‭ parts sync based on the BPM the song uses.‬ ‭ 135‬
  • 137. ‭ ●‬ ‭ BPM:‬‭ Stands for beats per minute. Lines will be drawn based on this‬ ‭ number. For example, if you have 60 BPM, a line will be drawn every‬ ‭ second.‬ ‭ ●‬ ‭ BPB:‬‭ Stands for beats per bar. One bar is the space‬‭ between two BPM‬ ‭ lines. The number you input here will split each space into the‬ ‭ corresponding sections. For example, if you have a BPM of 60 and a BPB of‬ ‭ 2, a line will be drawn every 0.5 seconds.‬ ‭ ●‬ ‭ Duration:‬‭ How long you want the lines to be drawn.‬ ‭ ●‬ ‭ Speed:‬‭ Changes the distance between the lines to account‬‭ for the‬ ‭ different speeds.‬ ‭ ●‬ ‭ Disable:‬‭ Hides the lines.‬ ‭ Gradient‬ ‭ Creates a gradient between two colors. You can change the way the gradient‬ ‭ looks by rotating the Gradient Trigger.‬ ‭ ●‬ ‭ Vertex Mode:‬‭ Draws the gradient between 3 or 4 points‬‭ which get‬ ‭ connected. By default, the gradient can only be a square with defined top,‬ ‭ bottom, left, and right boundaries. Using "Vertex Mode" allows the gradient‬ ‭ to have more interesting shapes.‬ ‭ ●‬ ‭ U/D/L/R:‬‭ Used to draw the gradient if "Vertex Mode"‬‭ is disabled. The‬ ‭ variables refer to the Group IDs of target objects set as up, down, left, and‬ ‭ right respectively. These variables work as boundaries for the gradient, so‬ ‭ you do not have to set all.‬ ‭ ●‬ ‭ BL/BR/TL/TR:‬‭ Used for the "Vertex Mode" boundaries.‬‭ The variables refer to‬ ‭ the Group IDs of target objects set as bottom left, bottom right, top left,‬ ‭ and top right respectively. Note that putting 3 of those variables is enough‬ ‭ to draw the gradient in "Vertex Mode".‬ ‭ ●‬ ‭ Blending:‬‭ How the gradient behaves with colors beneath‬‭ it.‬ ‭ 136‬
  • 138. ‭ ●‬ ‭ ID:‬‭ Can be used to reference gradients. For example if you want to disable‬ ‭ a gradient later on.‬ ‭ ●‬ ‭ Disable All:‬‭ Disables all gradients. You can disable‬‭ only a single gradient by‬ ‭ using its "ID" and choosing the "Disable" option.‬ ‭ ●‬ ‭ Preview Opacity:‬‭ The opacity the gradient has in the‬‭ editor preview.‬ ‭ Gravity‬ ‭ Changes the gravity force.‬ ‭ ●‬ ‭ Gravity:‬‭ Modifies the gravity. A value below 1 makes‬‭ the player lighter,‬ ‭ while a value above 1 makes the player heavier.‬ ‭ ●‬ ‭ P1/P2/PT:‬‭ The gravity only affects Player 1 or Player‬‭ 2 respectively. "PT" only‬ ‭ affects the player that touches the Trigger.‬ ‭ Teleport‬ ‭ Teleports the player to a set location.‬ ‭ 137‬
  • 139. ‭ ●‬ ‭ Target GroupID‬ ‭ : The Group ID the player teleports to. The Group ID can‬ ‭ only consist of one object.‬ ‭ ●‬ ‭ Gravity:‬‭ The gravity the player should have after‬‭ finishing the teleportation.‬ ‭ ●‬ ‭ Normal:‬‭ Normal gravity after teleporting.‬ ‭ ●‬ ‭ Flipped:‬‭ Flipped gravity after teleporting.‬ ‭ ●‬ ‭ Toggle:‬‭ The gravity flips to the opposite, depending‬‭ on what gravity you‬ ‭ are when teleporting. You flip from normal to flipped and from flipped to‬ ‭ normal.‬ ‭ ●‬ ‭ Smooth Ease:‬‭ The camera follows smoothly to the new‬‭ position of the‬ ‭ player.‬ ‭ ●‬ ‭ Save Offset:‬‭ The offset the player has to the Trigger‬‭ center when‬ ‭ activating it is saved and applied to the target object, resulting in a slightly‬ ‭ offset teleport.‬ ‭ ●‬ ‭ Ignore X/Y:‬‭ Does not teleport on the X-axis or Y-axis‬‭ respectively.‬ ‭ ●‬ ‭ Instant Camera:‬‭ The camera instantly snaps to the‬‭ new position.‬ ‭ ●‬ ‭ Snap Ground:‬‭ The Ground snaps to the new position.‬ ‭ ●‬ ‭ Redirect Dash:‬‭ Rotates Dash Orb effect to match teleport‬‭ exit rotation.‬ ‭ Only for Platformer levels.‬ ‭ ●‬ ‭ Static Force:‬‭ You exit the rotation based on the rotation‬‭ of the target, with‬ ‭ a force applied.‬ ‭ ●‬ ‭ Force:‬‭ The force the player should have when exiting‬‭ the teleport. The‬ ‭ force is applied in the direction of the target object rotation.‬ ‭ ●‬ ‭ Redirect Force:‬‭ The force the player should have when‬‭ exiting the‬ ‭ teleport. The force is applied in the direction of the target object rotation‬ ‭ and an input force.‬ ‭ ●‬ ‭ Min/Max:‬‭ Limits the exit force. If you leave this‬‭ value at 0, no limit will be‬ ‭ set.‬ ‭ ●‬ ‭ Mod:‬‭ Modifies the input force value. The speed you‬‭ have will be this value‬ ‭ multiplied with the speed you have when teleporting.‬ ‭ 138‬
  • 140. ‭ Shader‬ ‭ Shader Triggers edit how the other Shader Triggers work. You can disable‬ ‭ shader effects and limit the layers they affect.‬ ‭ ●‬ ‭ Disable All:‬‭ Disables all other shaders.‬ ‭ ●‬ ‭ No Player Particles:‬‭ When using a shader which only‬‭ affects the player‬ ‭ layer, the particles might look weird due to different rendering. This option‬ ‭ disables the shader from the particles.‬ ‭ With the buttons at the bottom, you can choose the layers affected by the‬ ‭ shaders. The blue buttons are the highest and lowest layer that will be‬ ‭ affected. The green buttons are the ones in between which will be affected,‬ ‭ and the gray ones will not be affected.‬ ‭ ShockWave‬ ‭ Creates a shockwave effect. Note that for this and every following shader‬ ‭ effect, you can click the top right checkbox to disable it in the editor.‬ ‭ 139‬
  • 141. ‭ ●‬ ‭ Speed:‬‭ The speed at which the shockwave will happen.‬ ‭ ●‬ ‭ Strength:‬‭ How strong the shockwave is. The lower the‬‭ value, the less‬ ‭ distorted objects get.‬ ‭ ●‬ ‭ Thickness:‬‭ The "thickness" of each wave. The higher‬‭ the value, the thicker‬ ‭ the wave will be.‬ ‭ ●‬ ‭ WaveW:‬‭ Wave width. The higher the value, the less‬‭ distorted it is.‬ ‭ ●‬ ‭ FadeIn/FadeOut:‬‭ Fades the shockwave in and out. The‬‭ higher the value,‬ ‭ the longer it takes to fade in or out respectively.‬ ‭ ●‬ ‭ TimeOff:‬‭ Time offset before the shockwave starts,‬‭ with the value being in‬ ‭ seconds.‬ ‭ ●‬ ‭ MaxSize:‬‭ Modifies the max size of the wave. Leaving‬‭ it at 0 will put it at the‬ ‭ max value. The value you put here will be multiplied with the wave size.‬ ‭ ●‬ ‭ Invert:‬‭ Inverts the shockwave effect to go from outside‬‭ to inside instead of‬ ‭ inside to outside.‬ ‭ ●‬ ‭ Inner:‬‭ Size of the waves in the middle of the shockwave.‬‭ Option only‬ ‭ available with "Invert" enabled.‬ ‭ 140‬
  • 142. ‭ ●‬ ‭ Outer:‬‭ Size of the waves at the outside of the shockwave. Higher values‬ ‭ means it will take longer to reach the center. Option only available with‬ ‭ "Invert" enabled.‬ ‭ ●‬ ‭ Target:‬‭ Chooses a Group ID as the center of the shockwave.‬‭ The Group ID‬ ‭ can only consist of one object.‬ ‭ ●‬ ‭ P1/P2:‬‭ Makes Player 1 or Player 2, respectively, the‬‭ center of the shockwave.‬ ‭ Option only available with "Target" enabled.‬ ‭ ●‬ ‭ Follow:‬‭ Follows "Target". By default, it will only‬‭ check the position of the‬ ‭ target when the Trigger is activated and spawn the shockwave there. With‬ ‭ this option enabled, the center will follow the target. Option only available‬ ‭ with "Target" enabled.‬ ‭ ●‬ ‭ Relative:‬‭ The shockwave follows the screen movement.‬‭ By default, it will‬ ‭ stay at the position it was triggered at.‬ ‭ ●‬ ‭ Screen OffX/OffY:‬‭ Offsets the center of the shockwave.‬‭ Negative numbers‬ ‭ offset it to the left or bottom respectively, while positive numbers offset it‬ ‭ to the right or up respectively.‬ ‭ Shock Line‬ ‭ Creates a shock line effect.‬ ‭ ●‬ ‭ Speed:‬‭ The speed at which the shockline will happen.‬ ‭ ●‬ ‭ Strength:‬‭ How strong the shockline is. The lower the‬‭ value, the less‬ ‭ distorted objects get.‬ ‭ ●‬ ‭ Thickness:‬‭ The thickness of each line. The higher‬‭ the value, the thicker the‬ ‭ wave will be.‬ ‭ ●‬ ‭ WaveW:‬‭ Line width. The higher the value, the less‬‭ distorted it is.‬ ‭ ●‬ ‭ FadeIn/FadeOut:‬‭ Fades the shockline in and out. The‬‭ higher the value, the‬ ‭ longer it takes to fade in or out respectively.‬ ‭ 141‬
  • 143. ‭ ●‬ ‭ TimeOff:‬‭ Time offset before the shockline starts with the value being in‬ ‭ seconds.‬ ‭ ●‬ ‭ MaxSize:‬‭ Modifies the max size of the line. Leaving‬‭ it at 0 will put it at the‬ ‭ max value. The value you put here will be multiplied with the line size.‬ ‭ ●‬ ‭ Invert:‬‭ Inverts the shockline. If considered in a‬‭ 3D perspective, the highs of‬ ‭ the line will become lows and the other way around.‬ ‭ ●‬ ‭ Flip:‬‭ Flips the line to go from right to left instead‬‭ of left to right.‬ ‭ ●‬ ‭ Rotate:‬‭ Rotates the line to go from bottom to top‬‭ instead of left to right.‬ ‭ ●‬ ‭ Dual:‬‭ Creates two shock lines from the middle, which‬‭ go to the left and‬ ‭ right respectively.‬ ‭ ●‬ ‭ Target:‬‭ Chooses a Group ID as the center of the shockline.‬‭ The Group ID‬ ‭ can only consist of one object.‬ ‭ ●‬ ‭ P1/P2:‬‭ Makes Player 1 or Player 2 respectively the‬‭ center of the shockline.‬ ‭ Option only available with "Target" enabled.‬ ‭ ●‬ ‭ Relative:‬‭ The shockline follows the screen movement.‬‭ By default, it will‬ ‭ stay at the position it was triggered at.‬ ‭ ●‬ ‭ ScreenOff:‬‭ Offsets the center of the shockline. Negative‬‭ numbers offset it‬ ‭ to the left or bottom respectively, while positive numbers offset it to the‬ ‭ right or up respectively. Note that the directions depend on what option‬ ‭ you choose from the buttons above.‬ ‭ Glitch‬ ‭ Creates a glitch effect.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully.‬ ‭ ●‬ ‭ Strength:‬‭ Strength of the effect. All other values‬‭ will be multiplied with the‬ ‭ strength and adjusted accordingly.‬ ‭ ●‬ ‭ Speed:‬‭ Speed at which the glitch effects happen. The‬‭ lower the value, the‬ ‭ slower the effects.‬ ‭ 142‬
  • 144. ‭ ●‬ ‭ SliceHeight:‬‭ During the glitch effect the screen will be sliced, which refers‬ ‭ to the higher blocks getting offset on the X-axis.‬ ‭ ●‬ ‭ MaxSliceXOff:‬‭ Max offset on the X-axis that the objects‬‭ can be sliced.‬ ‭ ●‬ ‭ MaxColXOff/MaxColYOff:‬‭ Max distance offset for the‬‭ color on the X-axis‬ ‭ and Y-axis respectively.‬ ‭ ●‬ ‭ Relative:‬‭ The shockline follows the screen movement.‬‭ By default, it will‬ ‭ stay at the position it was triggered at.‬ ‭ Chromatic‬ ‭ Chromatically splits the colors.‬ ‭ ●‬ ‭ TargetX/TargetY:‬‭ How far the colors will split on‬‭ the X-axis and Y-axis‬ ‭ respectively. You have to enable the "Use X" and/or "Use Y" option for the‬ ‭ distance to apply.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully.‬ ‭ Chromatic Glitch‬ ‭ Chromatically splits the colors while adding a wave effect and glitch lines.‬ ‭ ●‬ ‭ Speed:‬‭ Speed at which the wave effect happens.‬ ‭ ●‬ ‭ Strength:‬‭ How big the waves are.‬ ‭ ●‬ ‭ LineThickness:‬‭ Thickness of the glitch lines.‬ ‭ ●‬ ‭ LineStrength:‬‭ Opacity of the glitch lines.‬ ‭ ●‬ ‭ RGBOff:‬‭ How far the RGB values are offset.‬ ‭ ●‬ ‭ Duration:‬‭ Time for the effect to apply fully.‬ ‭ ●‬ ‭ SegmentH:‬‭ Height of a segment. A segment consists‬‭ of one wave effect‬ ‭ and a glitch line.‬ ‭ 143‬
  • 145. ‭ ●‬ ‭ RelativePos:‬‭ With this option enabled, the shape of the effect will stay in‬ ‭ place no matter the Y height. With it off, the effect will always stay in the‬ ‭ center of the screen.‬ ‭ Pixelate‬ ‭ Pixelates the screen.‬ ‭ ●‬ ‭ TargetX/TargetY:‬‭ How much the screen will pixelate‬‭ on the X-axis and‬ ‭ Y-axis respectively. You have to enable the "Use X" and/or "Use Y" option for‬ ‭ the distance to apply.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully.‬ ‭ ●‬ ‭ Snap Grid:‬‭ Snaps the pixels to the grid. Without this‬‭ option, the pixels will‬ ‭ smear a little when the player moves.‬ ‭ 144‬
  • 146. ‭ Lens Circle‬ ‭ Creates a lens circle.‬ ‭ ●‬ ‭ Size:‬‭ Size of the circle. The smaller the number,‬‭ the more closed the circle‬ ‭ is.‬ ‭ ●‬ ‭ Fade:‬‭ How much the circle fades out. The smaller the‬‭ number, the less‬ ‭ fade there is.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully. The‬‭ circle will zoom in or out‬ ‭ instead of fading in.‬ ‭ ●‬ ‭ Strength:‬‭ Opacity of the lens circle.‬ ‭ ●‬ ‭ Screen OffX/OffY:‬‭ Offsets the center of the lens circle.‬‭ Negative numbers‬ ‭ offset it to the left or bottom respectively, while positive numbers offset it‬ ‭ to the right or up respectively.‬ ‭ ●‬ ‭ CenterID:‬‭ Center of the lens circle. The Group ID‬‭ can only consist of one‬ ‭ object.‬ ‭ ●‬ ‭ Tint Channel:‬‭ Color Channel to use for the lens circle.‬‭ It will be black by‬ ‭ default.‬ ‭ ●‬ ‭ Easing:‬‭ Easing options change the way the circle starts‬‭ and ends its‬ ‭ movement.‬ ‭ Radial Blur‬ ‭ Blurs the screen radially, so drawing a circle around the center with a given‬ ‭ radius.‬ ‭ ●‬ ‭ Size:‬‭ Size of the blur. In other words, how much it‬‭ is blurred per distance‬ ‭ from the center.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully.‬ ‭ ●‬ ‭ Intensity:‬‭ Opacity of the blur.‬ ‭ 145‬
  • 147. ‭ ●‬ ‭ Ref Channel:‬‭ Uses a Color Channel to reference the fade color. By default,‬ ‭ the fade will go towards the Background Color.‬ ‭ Table 7.3: "Ref Channel" behavior.‬ ‭ No Ref Channel‬ ‭ Ref Channel‬ ‭ The red object has blur applied. As‬ ‭ you can see, the blur color fades‬ ‭ towards the Background Color,‬ ‭ which looks weird on a yellow‬ ‭ Background.‬ ‭ Here we set the yellow Color Channel‬ ‭ as the "Ref Channel", which makes‬ ‭ the blur fade towards yellow.‬ ‭ ●‬ ‭ Screen OffX/OffY:‬‭ Offsets the blur center. Negative‬‭ numbers offset it to‬ ‭ the left or bottom respectively, while positive numbers offset it to the right‬ ‭ or up respectively.‬ ‭ ●‬ ‭ Fade:‬‭ The smaller the fade value, the more blocks‬‭ will blur out. You can‬ ‭ compare this setting to the "Fade" setting in the‬‭ Lens Circle Trigger‬ ‭ , where‬ ‭ it is easier to visualize.‬ ‭ ●‬ ‭ Easing:‬‭ Easing options change the way the circle starts‬‭ and ends its‬ ‭ movement.‬ ‭ 146‬
  • 148. ‭ ●‬ ‭ Target:‬‭ Uses a Group ID as the center the blur from. The Group ID can only‬ ‭ consist of one object.‬ ‭ ●‬ ‭ EmptyOnly:‬‭ The blur will only be drawn to pixels that‬‭ are empty.‬ ‭ Table 7.4: "EmptyOnly" behavior.‬ ‭ Without EmptyOnly‬ ‭ With EmptyOnly‬ ‭ Motion Blur‬ ‭ Blurs objects based on the X-axis, Y-axis, or a Center Group ID.‬ ‭ ●‬ ‭ TargetX/TargetY:‬‭ Amount of blur that will be applied‬‭ to the X-axis and‬ ‭ Y-axis respectively.‬ ‭ ●‬ ‭ Ref Channel:‬‭ Uses a Color Channel to reference the‬‭ fade color. By default‬ ‭ the fade will go towards the Background Color. See table 7.3.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully.‬ ‭ ●‬ ‭ Fade:‬‭ The smaller the fade value, the more blocks‬‭ will blur out. You can‬ ‭ compare this setting to the "Fade" setting in the‬‭ Lens Circle Trigger‬ ‭ , where‬ ‭ it is easier to visualize.‬ ‭ ●‬ ‭ Follow Ease:‬‭ Used for the "TargetID" option, which‬‭ follows the object's or‬ ‭ player's movement to reference the blur. "Follow Ease" eases the‬ ‭ movement, resulting in less or more blur upon movement.‬ ‭ 147‬
  • 149. ‭ ●‬ ‭ Intensity:‬‭ Opacity of the blur.‬ ‭ ●‬ ‭ DualDir:‬‭ Blurs in both directions instead of only‬‭ one. By default, "TargetX"‬ ‭ will only blur left and "TargetY" will only blur down.‬ ‭ ●‬ ‭ EmptyOnly:‬‭ The blur will only be drawn to pixels that‬‭ are empty. See table‬ ‭ 7.4.‬ ‭ ●‬ ‭ TargetID:‬‭ Uses a Group ID or the player's movement‬‭ as the reference for‬ ‭ the blur. If the Group ID or player does not move, there will be no blur. On‬ ‭ quick movements, there will be a lot of blur. If a Group ID is used, it can‬ ‭ only consist of one object.‬ ‭ Bulge‬ ‭ Bulges the screen.‬ ‭ ●‬ ‭ Bulge:‬‭ How much the screen will bulge.‬ ‭ ●‬ ‭ Radius:‬‭ How large the bulge circle is.‬ ‭ ●‬ ‭ Screen OffX/OffY:‬‭ Offsets the center of the bulge.‬‭ Negative numbers‬ ‭ offset it to the left or bottom respectively, while positive numbers offset it‬ ‭ to the right or up respectively.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully. The‬‭ bulge will zoom in and out‬ ‭ instead of fading in.‬ ‭ ●‬ ‭ Target:‬‭ Uses a Group ID as the center the bulge zooms‬‭ from. The Group ID‬ ‭ can only consist of one object.‬ ‭ Pinch‬ ‭ Pinches the screen. Works in the opposite way of the‬‭ Bulge Trigger‬ ‭ .‬ ‭ ●‬ ‭ TargetX/TargetY:‬‭ How much the screen gets pinched‬‭ on the X-axis and‬ ‭ Y-axis respectively. The smaller the number, the smaller the pinch.‬ ‭ 148‬
  • 150. ‭ ●‬ ‭ Screen OffX/OffY:‬‭ Offsets the pinch center. Negative numbers offset it to‬ ‭ the left or bottom respectively, while positive numbers offset it to the right‬ ‭ or up respectively.‬ ‭ ●‬ ‭ Radius:‬‭ The radius of the circle.‬ ‭ ●‬ ‭ Modifier:‬‭ Modifies all values. All values will be‬‭ multiplied with the value you‬ ‭ put here.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully. The‬‭ pinch will zoom in and out‬ ‭ instead of fading in.‬ ‭ Gray Scale‬ ‭ Adds a grayscale filter to the screen.‬ ‭ ●‬ ‭ Target:‬‭ Percentage of grayscale that is applied. For‬‭ example, with 0.5 the‬ ‭ screen will tint 50% gray.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully.‬ ‭ ●‬ ‭ Tint Channel:‬‭ Tints the screen in a Color Channel‬‭ instead of gray.‬ ‭ ●‬ ‭ UseLum:‬‭ Refers to luminosity, which is a different‬‭ way to convert color to‬ ‭ grayscale. Luminosity forms a weighted average to account for human‬ ‭ perception. The formula for luminosity is 0.21*R + 0.72*G + 0.07*B.‬ ‭ ●‬ ‭ Easing:‬‭ Easing options change the way the colors start‬‭ and end their‬ ‭ transitions.‬ ‭ Sepia‬ ‭ Adds a sepia filter to the screen.‬ ‭ ●‬ ‭ Target:‬‭ Percentage of sepia that is applied. For example,‬‭ with 0.5 the‬ ‭ screen will tint 50% sepia.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully.‬ ‭ 149‬
  • 151. ‭ Invert Color‬ ‭ Inverts the screen colors.‬ ‭ ●‬ ‭ Target:‬‭ Percentage of how much color inversion will‬‭ be applied. For‬ ‭ example, with 0.5 the screen will be 50% inverted.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully.‬ ‭ ●‬ ‭ R/G/B:‬‭ Percentage of the red, green, and blue value‬‭ respectively. For‬ ‭ example, the color white has the RGB values 255, 255, 255. If you put the R‬ ‭ slider to 0.5, it will multiply 255 with 0.5, which is 127.5. Now, the new color‬ ‭ would be 127.5, 255, 255, which is a brighter blue color. Note that the color‬ ‭ values are inverted due to the Trigger.‬ ‭ ●‬ ‭ EditRGB:‬‭ Allows editing the RGB values with the sliders‬‭ above.‬ ‭ ●‬ ‭ TweenRGB:‬‭ If you are in the inverted color state with‬‭ EditRGB values, and‬ ‭ want to change to different RGB values the switch will be instant. With this‬ ‭ option enabled, they will transition smoothly to the new RGB you set.‬ ‭ ●‬ ‭ ClampRGB:‬‭ Limits the values to 1 so that they cannot‬‭ go past that value.‬ ‭ ●‬ ‭ Easing:‬‭ Easing options change the way the colors start‬‭ and end their‬ ‭ transitions.‬ ‭ 150‬
  • 152. ‭ Table 7.5: Example of Invert Color Trigger options.‬ ‭ "R/G/B" with 1, 1, 1‬ ‭ "R/G/B" with 2, 1, 1‬ ‭ "R/G/B" with 2, 1, 1 and‬ ‭ "ClampRGB"‬ ‭ Normal transition to the‬ ‭ inverted color. Same‬ ‭ with "EditRGB" enabled‬ ‭ or disabled.‬ ‭ The transition to red will‬ ‭ be quicker, resulting in‬ ‭ an overall red tint. Only‬ ‭ with "EditRGB" enabled.‬ ‭ The same result as‬ ‭ using 1, 1, 1. The‬ ‭ transition is still quicker‬ ‭ for the red color,‬ ‭ however the result is‬ ‭ not tinted. "ClampRGB"‬ ‭ limits the values‬ ‭ between 0 and 1.‬ ‭ Hue‬ ‭ Shifts the screen hue.‬ ‭ ●‬ ‭ Degrees:‬‭ How many degrees the color should shift.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully.‬ ‭ ●‬ ‭ Easing:‬‭ Easing options change the way the colors start‬‭ and end their‬ ‭ transitions.‬ ‭ 151‬
  • 153. ‭ Edit Color‬ ‭ Edits the color of the screen.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully.‬ ‭ ●‬ ‭ CR/CG/CB:‬‭ Stands for color red, green and blue. Tints‬‭ the screen in the‬ ‭ corresponding color, with 1 being no tint. The smaller the value, the more‬ ‭ of that color is used.‬ ‭ ●‬ ‭ BR/BG/BB:‬‭ Brightness red, green and blue. Works like‬‭ the "Brightness"‬ ‭ slider in the "HSV" menu when editing colors.‬ ‭ Split Screen‬ ‭ Splits the screen in identical sections.‬ ‭ ●‬ ‭ TargetX/TargetY:‬‭ How many sections the screen gets‬‭ split in the X-axis‬ ‭ and Y-axis respectively. The number you input here gets one more added,‬ ‭ so with "TargetX" at 1 you split the screen in 2 sections. You have to enable‬ ‭ the "Use X" and/or "Use Y" option respectively to split the screen.‬ ‭ ●‬ ‭ FadeTime:‬‭ Time for the effect to apply fully.‬ ‭ ●‬ ‭ Easing:‬‭ Easing options change the way the movements‬‭ start and end‬ ‭ their transitions.‬ ‭ Enter Effects‬ ‭ Changes how blocks enter and/or exit the screen.‬ ‭ ●‬ ‭ Target Enter Channel:‬‭ Input a Enter Channel ID and‬‭ assign an Enter‬ ‭ Channel ID to objects. The Enter Effect will only affect the objects with the‬ ‭ same Enter Channel ID. By default, all blocks will be affected.‬ ‭ ●‬ ‭ Enter/Exit Only:‬‭ The effect will only be displayed‬‭ when the objects enter‬ ‭ or exit the screen respectively.‬ ‭ 152‬
  • 154. ‭ Table 7.6: Enter Effects.‬ ‭ Effect‬ ‭ Explanation‬ ‭ Example‬ ‭ The objects do not scale in‬ ‭ and out, but they still fade‬ ‭ in and out.‬ ‭ Objects enter the screen by‬ ‭ moving down from the top‬ ‭ and fading in. Objects exit‬ ‭ the screen by moving up‬ ‭ and fading out.‬ ‭ Objects enter the screen by‬ ‭ moving up from the bottom‬ ‭ and fading in. Objects exit‬ ‭ the screen by moving down‬ ‭ and fading out.‬ ‭ Objects enter the screen by‬ ‭ appearing from behind the‬ ‭ blocks and moving to the‬ ‭ right. Objects exit the‬ ‭ screen by moving to the left‬ ‭ and fading out.‬ ‭ Objects enter the screen by‬ ‭ moving in from the right‬ ‭ and fading in. Objects exit‬ ‭ the screen by disappearing‬ ‭ behind the blocks and‬ ‭ fading out.‬ ‭ 153‬
  • 155. ‭ Objects enter the screen by‬ ‭ scaling up and fading in.‬ ‭ Objects exit the screen by‬ ‭ scaling down and fading‬ ‭ out.‬ ‭ Objects enter the screen by‬ ‭ scaling down and fading in.‬ ‭ Objects exit the screen by‬ ‭ scaling up and fading out.‬ ‭ Objects enter and exit the‬ ‭ screen in a chaotic‬ ‭ movement, fading and out‬ ‭ respectively.‬ ‭ Objects enter the screen by‬ ‭ the top half moving down,‬ ‭ and the bottom half moving‬ ‭ up. They also appear from‬ ‭ behind the blocks and‬ ‭ move to the right and fade‬ ‭ in. Objects exit the screen‬ ‭ by splitting in half, with the‬ ‭ top moving up and the‬ ‭ bottom moving down while‬ ‭ moving to the left and‬ ‭ fading out.‬ ‭ Objects enter the screen by‬ ‭ the top half moving down‬ ‭ and the bottom half moving‬ ‭ up. They move in from the‬ ‭ right and fade in. Objects‬ ‭ exit the screen by splitting‬ ‭ in half, with the top moving‬ ‭ 154‬
  • 156. ‭ up and the bottom moving‬ ‭ down while disappearing‬ ‭ behind the blocks and‬ ‭ fading out.‬ ‭ Objects enter the screen by‬ ‭ the top half moving down‬ ‭ and the bottom half moving‬ ‭ up while fading in. Objects‬ ‭ exit the screen by splitting‬ ‭ in half, with the top moving‬ ‭ up and the bottom moving‬ ‭ down while fading out.‬ ‭ Objects enter the screen by‬ ‭ the top half moving up and‬ ‭ the bottom half moving‬ ‭ down while fading in.‬ ‭ Objects exit the screen by‬ ‭ splitting in half, with the top‬ ‭ moving down and the‬ ‭ bottom moving up while‬ ‭ fading out.‬ ‭ Objects do not fade in and‬ ‭ out and also do not have an‬ ‭ Enter Effect.‬ ‭ 155‬
  • 157. ‭ Move/Rotate/Scale/Fade/Tint Enter‬ ‭ Lets you create custom Enter Effects, similar to the default ones above. Due to‬ ‭ these having many of the same settings, we will be explaining them all first‬ ‭ and only mention specific ones below. Note that one block is equal to 30 for‬ ‭ all of these.‬ ‭ ●‬ ‭ Length:‬‭ Distance from the screen borders where the‬‭ effect is applied.‬ ‭ ●‬ ‭ Offset:‬‭ Offsets the screen borders. Enter a positive‬‭ value to offset it to the‬ ‭ right, and a negative value to offset it to the left.‬ ‭ ●‬ ‭ Enter Channel:‬‭ Used similarly to Group IDs. The objects‬‭ you want to have‬ ‭ the Enter Effect can be set with "Enter Channel" under "Extra2" in "Edit‬ ‭ Group".‬ ‭ ●‬ ‭ Effect ID:‬‭ Specific ID that can be referenced later,‬‭ for example in‬‭ Stop‬ ‭ Enter Effect Triggers.‬ ‭ ●‬ ‭ Enter/Exit Only:‬‭ The effect is only applied on screen‬‭ entrance or exit‬ ‭ respectively.‬ ‭ ●‬ ‭ Easing:‬‭ Modifies how the objects start and end their‬‭ transitions.‬ ‭ 156‬
  • 158. ‭ For Move Enter, we have these unique settings:‬ ‭ ●‬ ‭ MoveDist:‬‭ Distance the objects move.‬ ‭ ●‬ ‭ MoveAngle:‬‭ Angle at which the objects will move. 0‬‭ is up, 90 right, 180‬ ‭ down, 270 left, and so on.‬ ‭ ●‬ ‭ XY Mode:‬‭ You can enter X and Y values like in the‬‭ normal‬‭ Move Trigger‬ ‭ instead of choosing a direction.‬ ‭ For Rotate Enter, we have these unique settings:‬ ‭ ●‬ ‭ Rotation:‬‭ The degrees you want the objects to rotate.‬‭ Enter a positive‬ ‭ value to rotate clockwise, and enter a negative value to rotate‬ ‭ counter-clockwise.‬ ‭ For Scale Enter, we have these unique settings:‬ ‭ ●‬ ‭ ScaleX/ScaleY:‬‭ The size the objects scale in the X-axis‬‭ and Y-axis‬ ‭ respectively.‬ ‭ For Fade Enter, we have these unique settings:‬ ‭ ●‬ ‭ Opacity:‬‭ The opacity the objects will fade to when‬‭ they are near the screen‬ ‭ edge.‬ ‭ 157‬
  • 159. ‭ For Tint Enter, we have these unique settings:‬ ‭ ●‬ ‭ Color Channel:‬‭ The color you want to tint the objects‬‭ in.‬ ‭ ●‬ ‭ %:‬‭ The percentage you want to tint the color. For‬‭ example, if you want to‬ ‭ tint a black object white and set "%" to 0.5, the object will turn gray.‬ ‭ ●‬ ‭ Main/Secondary Only:‬‭ Some objects have a Base Color‬‭ and Detail Color,‬ ‭ which is seen in the "Edit Object" menu. These options only change the‬ ‭ these colors respectively.‬ ‭ ●‬ ‭ HSV:‬‭ Instead of tinting the color of a different Color‬‭ Channel, you can‬ ‭ simply tint the same Color Channel and change the "HSV" values of it.‬ ‭ Stop Enter‬ ‭ Stops an Enter Effect. You can stop it by referencing its Enter Channel or its‬ ‭ Effect ID.‬ ‭ 158‬
  • 160. ‭ 8. Custom Objects‬ ‭ As mentioned earlier, you can create your own sets of Custom Objects, which‬ ‭ can be used across different levels. Custom Objects are in the last tab in the‬ ‭ "Build" category.‬ ‭ From left to right, the buttons indicate moving a Custom Object design up‬ ‭ and down a position, adding a new Custom Object, and deleting an existing‬ ‭ one. To add a Custom Object, first create the design. For example:‬ ‭ 159‬
  • 161. ‭ Now select all of the objects in your design, and click the "+" button to add‬ ‭ them as a Custom Object. Your design should appear as a new button in the‬ ‭ Custom Objects tab, as seen in figure 8.3.‬ ‭ You can now select the Custom Object and place it in the editor whenever‬ ‭ you wish. Custom Objects can consist of up to 1000 objects, and you can add‬ ‭ up to 200 unique Custom Objects. Select a Custom Object and click the "–"‬ ‭ button to delete it, as shown in figure 8.4. Note that this action cannot be‬ ‭ undone.‬ ‭ 160‬
  • 162. ‭ 9. Channel System‬ ‭ Working with‬‭ Rotate Gameplay Triggers‬‭ can be tricky,‬‭ especially when you‬ ‭ change directions often and want to use many‬‭ Triggers‬ ‭ .‬‭ See the example in‬ ‭ figure 9.1. Normally Triggers are read from left to right, but this can lead to‬ ‭ issues in the example. How should the editor know when these Triggers‬ ‭ should be activated? This is handled by using the Channel System. Here, we‬ ‭ cover a short example on how to use Channels well.‬ ‭ In this example, we want the player to go in a circle across all sides and pulse‬ ‭ the background in a different color when jumping over a Spike. When‬ ‭ playtesting in the editor, you will find that the player does not change rotation‬ ‭ when reaching the top left Rotate Gameplay Trigger. This is because the‬ ‭ Trigger gets activated first and is immediately overridden by the Trigger in‬ ‭ the bottom left. To fix this, we have to change the order in which the Triggers‬ ‭ are read.‬ ‭ 161‬
  • 163. ‭ Rotate Gameplay Triggers have a "Change Channel" option, which puts the‬ ‭ player on a different Channel when that Trigger is activated. By default, the‬ ‭ player, all Triggers, and all‬‭ Gameplay Objects‬‭ are‬‭ on Channel 0, resulting in‬ ‭ everything getting activated from left to right.‬ ‭ In our example, we want to activate the Rotate Gameplay Triggers in the‬ ‭ following order: bottom right, top right, top left, and bottom left. To achieve‬ ‭ this, we change the Channel of the player after reaching the bottom right‬ ‭ Trigger, as seen in figure 9.2.‬ ‭ After reaching the Trigger, the player is on Channel 1 instead of 0. While on‬ ‭ the right side of the square, we want to activate the right‬‭ Pulse Trigger‬‭ and‬ ‭ the top right Rotate Gameplay Trigger. To achieve this, we have to put them‬ ‭ on the same Channel as the player.‬ ‭ To put objects on a different Channel, first select them and click "Edit Group".‬ ‭ In the bottom right of the menu, you will find a textbox titled "CH". This refers‬ ‭ to the Channel of the objects. As seen in figure 9.3, you can input "1" in "CH" to‬ ‭ put them on the same Channel as the player.‬ ‭ 162‬
  • 164. ‭ We will now activate the first and second Pulse and Rotate Gameplay Triggers‬ ‭ in the correct order. When reaching the second Rotate Gameplay Trigger, we‬ ‭ want to put the player on a different Channel again. If we do not do this, the‬ ‭ top left Rotate Gameplay Trigger is activated at the same time as the second‬ ‭ one, resulting in unwanted behavior. Similar to figure 9.2, we now change the‬ ‭ Channel of the player to 2 by using the "Change Channel" option in the‬ ‭ Rotate Gameplay Trigger.‬ ‭ 163‬
  • 165. ‭ We repeat this for all Triggers. We change the Triggers that we want to‬ ‭ activate to the Channel the player is currently on, and we change the Channel‬ ‭ of the player whenever we reach a new Rotate Gameplay Trigger. See figure‬ ‭ 9.5 for the final settings for our example.‬ ‭ Channels should be used for‬‭ Speed Changers‬‭ as well,‬‭ to ensure that the sync‬ ‭ does not behave weirdly when having rotated or reversed gameplay. When‬ ‭ playtesting the music in the editor, you will see that the line now changes‬ ‭ directions accordingly and at the right position. If you have several Triggers on‬ ‭ one Channel, they will be read in the direction of the arrow. You can playtest‬ ‭ the music and see the direction in which the line goes to see the order in‬ ‭ which the Triggers or Gameplay Objects will be activated.‬ ‭ 164‬
  • 166. ‭ 10. Keyframe System‬ ‭ The Keyframe System allows you to create precise animations using‬ ‭ movement, rotation, and scaling with a single Trigger. This is done with‬ ‭ several keyframes, which can be freely modified in turn.‬ ‭ We will be going through all the options by creating an example. Assume we‬ ‭ want to animate a cube moving in and jumping over Spikes. We will first‬ ‭ create the cube we plan to animate and assign a Group ID to it, as well as the‬ ‭ Spikes the cube will interact with, as seen in figure 10.2.‬ ‭ 165‬
  • 167. ‭ The cube has Group ID 1 assigned to it. We will now place a‬‭ Keyframe Trigger‬ ‭ to understand how basic movement using keyframes works. Place one of‬ ‭ these Triggers, click "Copy+Paste" to duplicate it, and move the copied Trigger‬ ‭ some blocks to the right. The Triggers will draw a green line between them, as‬ ‭ seen in figure 10.3. The line indicates that they are connected and are part of‬ ‭ the same animation.‬ ‭ The Keyframe Triggers by themselves are not enough to create the animation.‬ ‭ You need to configure a‬‭ Keyframe Animation Trigger‬‭ as well. Assign a Group‬ ‭ ID to your first Keyframe Trigger, and input your Group IDs in the Keyframe‬ ‭ Animation Trigger, as seen in figure 10.4. The Animation Group ID refers to the‬ ‭ Group ID your first Keyframe Trigger has. The Target ID refers to the objects‬ ‭ that get animated. The Parent ID is optional and is used to reference the‬ ‭ center of the target objects for rotation and scaling. By default, all objects will‬ ‭ use their own center. The second page of the Keyframe Animation Trigger‬ ‭ modifies several animation options. We will be using some of them later. For‬ ‭ more information regarding the settings, check its subchapter in the Triggers‬ ‭ chapter.‬ ‭ 166‬
  • 168. ‭ When playtesting, the cube should now move the same distance to the right‬ ‭ as the distance between the two Keyframe Triggers. We can now add more‬ ‭ Keyframe Triggers and change their positions, rotations, and sizes, and the‬ ‭ cube will follow all of them. However, creating precise animations with only‬ ‭ the Keyframe Triggers is difficult, as we do not have any reference points. To‬ ‭ change this, we will use the "Preview Art" option in the Keyframe Triggers.‬ ‭ For the Keyframe Triggers to preview our cube, we have to assign a Parent‬ ‭ Group ID to the cube. This Parent Group ID works as a reference point for the‬ ‭ Keyframe Triggers. All movement, rotation, and scaling will use the Parent‬ ‭ Group ID as the center. Our cube should scale and rotate around its own‬ ‭ center, so we will add a new object to our cube, as seen in figure 10.5. This‬ ‭ object also follows the animation. To mark this object as the Group Parent ID,‬ ‭ we will click the "P" button in the‬‭ Edit Group‬‭ menu.‬‭ Doing so turns the Group‬ ‭ ID pink, as seen in figure 10.6.‬ ‭ 167‬
  • 169. ‭ In the first Keyframe Trigger, we can input the Group ID of our cube now. By‬ ‭ clicking the Preview Art option, the keyframe will be replaced with our cube‬ ‭ objects, as seen in figure 10.7. Note that the Preview Art option does not work‬ ‭ without the objects having a Group Parent ID, as the Keyframe Triggers have‬ ‭ no center to draw from without it. You can enable the Preview Art option in‬ ‭ the other Keyframe Triggers and hide the Group Parent ID object now.‬ ‭ 168‬
  • 170. ‭ With our keyframes looking like our art now, we have a lot more control over‬ ‭ the movements. However, with all the frames showing at full opacity and‬ ‭ layering between them inconsistently, doing exact animations is difficult. You‬ ‭ can enable the "Ref Only" option in Keyframe Triggers for lower opacity, as‬ ‭ seen in figure 10.7. The "Auto Layer" option fixes our layering issues. This‬ ‭ option draws the most recent keyframe at the highest layer, so you always‬ ‭ have it completely visible.‬ ‭ You can now create your animation by setting more keyframes at important‬ ‭ locations. In our example, this is the beginning of the animation, the position‬ ‭ where the cube begins to jump, the movement and rotation during the jump,‬ ‭ and the position the cube lands at. You can modify each keyframe position,‬ ‭ rotation, and size, as seen in figure 10.8.‬ ‭ 169‬
  • 171. ‭ If you look closely, the jump is not smooth at all. It consists of only straight‬ ‭ lines between frames with no curvature. To fix this, enable the "Curve" option‬ ‭ for the relevant Keyframe Triggers, which results in a much smoother‬ ‭ animation, as seen in figure 10.9.‬ ‭ 170‬
  • 172. ‭ When playtesting, you will notice that the animation still looks weird. The‬ ‭ movement speed between the frames is inconsistent, resulting in the jump‬ ‭ being slower than the sliding. The is is because of the "Time" option, which‬ ‭ checks for the "Duration" value. Right now, the "Duration" value is 0.5, which‬ ‭ means the animation from one keyframe to the next one takes 0.5 seconds.‬ ‭ However, we want the duration to change based on the distance of the‬ ‭ Triggers. Triggers that are further apart take longer than ones closer to each‬ ‭ other.‬ ‭ We can achieve this by enabling the "Dist" option. The "Even" option makes‬ ‭ the time between keyframes even, disregarding the distance. Note that the‬ ‭ first Keyframe Trigger should always use the "Time" option, as the other‬ ‭ keyframes marked as "Ref Only" will not be considered for the other options‬ ‭ otherwise, resulting in rash movements. The Keyframe Triggers should look‬ ‭ like this now.‬ ‭ 171‬
  • 173. ‭ Depending on how many keyframes you placed, the movement may still look‬ ‭ too slow. You can change this by modifying the time variable in the Keyframe‬ ‭ Animation Trigger. On the second page, you will find the "Time Mod" option,‬ ‭ which speeds up or slows down your animation depending on what value you‬ ‭ put. A value smaller than 1 will speed the animation up, while a value greater‬ ‭ than 1 will slow the animation down. Play around with the "Time", "Even",‬ ‭ "Dist", "Duration", and modifier settings to find a good balance to create‬ ‭ smooth movements.‬ ‭ With this, our first animation is complete. Assume that we want to create a‬ ‭ second cube jumping over the Spikes from the other side using the same‬ ‭ keyframe animation. We first create our second cube and give it a new Group‬ ‭ ID. We now want to make a copy of our keyframes. However, using‬ ‭ "Copy+Paste" does not work, as the keyframes will be connected. We can‬ ‭ instead use the "Dup Anim" button within the keyframes. By inputting our‬ ‭ new Group ID, we are now referencing the new cube. Assign a new Group ID‬ ‭ to the first Keyframe Trigger and place a new Keyframe Animation Trigger‬ ‭ with all new Group IDs. The result is figure 10.11.‬ ‭ 172‬
  • 174. ‭ When playtesting, you will see that the second cube will not jump over the‬ ‭ Spikes. Instead, it will follow the exact movement of the first cube. By clicking‬ ‭ the "Reverse Order" button, the animation is done in reverse like we want.‬ ‭ Movement to the right will go to the left instead.‬ ‭ If we want to change anything about our cube art, for example adding more‬ ‭ details or changing the color, we will see that the Keyframe Trigger art is not‬ ‭ updated accordingly. To fix this, click the "Update Art" button in any Keyframe‬ ‭ Trigger.‬ ‭ Due to how we set up the keyframes, our rotations will always be in the‬ ‭ correct direction. However, you might want to rotate some frames clockwise‬ ‭ and others counter-clockwise. You can achieve this by clicking "CW" for‬ ‭ clockwise or "CCW" for counter-clockwise. By default, rotations happen in the‬ ‭ closer direction. The "x360" option adds an entire rotation before reaching the‬ ‭ keyframe.‬ ‭ We want to finalize our animation by adding a screen pulse when the cubes‬ ‭ land. To do this, we can use the "Spawn ID" feature in the Keyframe Triggers.‬ ‭ Configure a‬‭ Pulse Trigger‬‭ like normal and assign it‬‭ a Group ID. Input this‬ ‭ Group ID into a Keyframe Trigger. The pulse will spawn when the animation‬ ‭ reaches that keyframe. Using the "SpawnDelay" option can delay the Trigger‬ ‭ by a set duration. Alternatively, you can use the "Prox" option to spawn the‬ ‭ pulse when the cube is close to the keyframe.‬ ‭ 173‬
  • 175. ‭ And with that, our animation is finished. Figure 10.12 shows the final setup.‬ ‭ You can move the Keyframe Triggers out of the screen now without the‬ ‭ animation changing. For an easy way to select all keyframes in an animation,‬ ‭ click one of them and click the "Select All" button.‬ ‭ 174‬
  • 176. ‭ 11. Auto-Build System‬ ‭ The Auto-Build System allows you to create designs from a premade‬ ‭ template. This makes it particularly useful to speed up block design creation.‬ ‭ However, the system can also be used across levels, making it work well for 3D‬ ‭ lines, layouts, and more too. To get started, place one of the last 3 objects in‬ ‭ the Blocks tab (first tab under "Build") in the editor. These are called‬ ‭ Smart-Blocks. Afterwards, click "Edit Special" to open the following menu:‬ ‭ We will be going through all the settings by creating several examples. First,‬ ‭ we will use premade templates to achieve some basic designs. Then, we will‬ ‭ set up our own templates for more complex designs and use the system to‬ ‭ generate random Spike designs.‬ ‭ We start by creating a new template. To do this, go to the "Browser" tab. It‬ ‭ should look like figure 11.2 when you first open it. Click the "New" button and‬ ‭ enter a name to create a new template.‬ ‭ 175‬
  • 177. ‭ You will see information about our template below the name. "Defined" refers‬ ‭ to how many different templates we have created. "Variations" refers to how‬ ‭ many variations our designs have. The "46" refers to the default template‬ ‭ blocks, which we will use in our first example to create a block design.‬ ‭ 176‬
  • 178. ‭ Click the "Browse" button to see all premade Smart-Block templates, as seen‬ ‭ in figure 11.4. By clicking on a template, you can add it to the editor. The‬ ‭ amount of templates you add does not matter, but by creating all 46‬ ‭ premade ones, you ensure your template is functional for simple structures.‬ ‭ For our example, we will design all templates.‬ ‭ 177‬
  • 179. ‭ We can now start creating our design on the template. Blocks with dashed‬ ‭ outlines function as references. You fill out the solid outline blocks as if the‬ ‭ reference blocks were in your design. See the figure below.‬ ‭ You can build your design across different layers. Additionally, you can add‬ ‭ details up to 1 block space outside of the Smart-Block. After finishing every‬ ‭ design, we have the result in figure 11.7.‬ ‭ 178‬
  • 180. ‭ Now that we have finished our design, we want to update our template to‬ ‭ include our decoration. Select everything you have created, as well as the‬ ‭ Smart-Blocks. Go into the "Browser" tab again and ensure you use your‬ ‭ template. After doing so, click the blue "Template" button on the initial page.‬ ‭ If you return to the screen from which we copied the premade templates, our‬ ‭ new designs can now be seen, as shown below.‬ ‭ 179‬
  • 181. ‭ With that, we have created our first template. We now want to test it by‬ ‭ generating the design for custom structures. To do so, build structures using‬ ‭ the Smart-Blocks, as seen in figure 11.10. After doing so, select all the‬ ‭ Smart-Blocks, open the system's menu from "Edit Special", and click the‬ ‭ "Create" button. This gives the result in figure 11.11.‬ ‭ We can automatically fill any Smart-Block structures with our template‬ ‭ design. It can also be used across levels if we wish to reuse it at any point.‬ ‭ 180‬
  • 182. ‭ Even though the premade templates worked well for our structures, we are‬ ‭ still limited in what we can create. Because of this, we now want to add to our‬ ‭ template and expand it with new structures and slopes. Click the "Create All"‬ ‭ button to paste all of your templates so far. Click "Paste Template" to see the‬ ‭ first structure we want to expand. As you can see, the template does not‬ ‭ create the designs correctly, as seen in figure 11.12. We now recreate our‬ ‭ design in the new structures to be correct, as seen in figure 11.13.‬ ‭ 181‬
  • 183. ‭ We created these structures like new templates. We now also want to add‬ ‭ slopes to our templates. To do this, we can make our own templates to‬ ‭ decorate. To create your own templates, use the Smart-Blocks to create the‬ ‭ structures you need. With more variations, your result gets more precise.‬ ‭ You would usually have to create versions for all rotations of the slopes.‬ ‭ However, by enabling "Allow Rotation", "Allow Flip X", and "Allow Flip Y" in the‬ ‭ main menu, seen below, one version is enough.‬ ‭ 182‬
  • 184. ‭ We can now fill the slopes with our design. Like with the premade templates,‬ ‭ we can place details up to 1 block space outside the Smart-Blocks.‬ ‭ Let us create a new template now with all the new templates added. Like‬ ‭ before, go to the "Browser" tab and create a new template. Use it, select all‬ ‭ designs along with their Smart-Blocks, and click "Template". The Auto-Build‬ ‭ System will deconstruct our slopes into singular blocks, as shown in figure‬ ‭ 10.17. With that, we have finished our second template.‬ ‭ 183‬
  • 185. ‭ Templates can have several variations, indicated by a small number on the‬ ‭ templates, as seen in figure 11.18. Variations can have different odds of being‬ ‭ used, which can create more details. In our third and final example, we want‬ ‭ to create a template that generates unique configurations of Spikes on the‬ ‭ ground.‬ ‭ We first decide what Spike variations we want to use. The best way to achieve‬ ‭ this is to create all the variations we want in the editor as follows:‬ ‭ 184‬
  • 186. ‭ As you can see, the Spikes always start and end with the same Spikes. We also‬ ‭ want our Spikes to be variable in length and only have the corner Spikes at‬ ‭ the start and end. To achieve this, we will be using reference blocks.‬ ‭ Reference blocks indicate that a variation gets used if another Smart-Block is‬ ‭ at the location of the reference block. We can use this to set up our templates,‬ ‭ as shown in figure 11.21. The left corner Spike requires another Spike to the‬ ‭ right of it, while the right corner Spike requires another Spike to the left of it.‬ ‭ (You mark a Smart-Block as a reference by clicking the "Reference Only"‬ ‭ option, as shown in figure 11.20.)‬ ‭ 185‬
  • 187. ‭ For our other Spikes, we require another Spike to the left and the right of‬ ‭ each. We can use the reference blocks to indicate this by placing one to the‬ ‭ left and one to the right of our Smart-Block. Using the same templates six‬ ‭ times for all our Spike variations leaves us with the result shown in figure 11.22.‬ ‭ We now create a new template, and update it with the templates we created.‬ ‭ The template browser should show our corner Spikes and one of the other six‬ ‭ Spikes with a small "6" on it.‬ ‭ 186‬
  • 188. ‭ You can click on the Spike template to view all variations, as seen in figure‬ ‭ 11.24. Right now, none of the variations have the odds to appear. To change‬ ‭ this, click all variations and hit the "Add" button.‬ ‭ 187‬
  • 189. ‭ Doing so has made the odds of each appear below the respective variation.‬ ‭ Currently, every variation has a one in six chance. For our example, we want‬ ‭ the fifth variation to be rarer than the others and the third to be more likely.‬ ‭ To do this, we first deselect variation five and click "Add" to increase their‬ ‭ odds. After that, we deselect all besides variation three and click "Add". This‬ ‭ process changes the odds of the selected variations appropriately.‬ ‭ Now, all the odds should have changed accordingly. We can now place‬ ‭ Smart-Blocks and click "Create" to generate unique variations of ground‬ ‭ Spikes, with each Spike having different odds, the length being variable, and‬ ‭ the corner Spikes always at the correct position. Figure 11.26 shows some‬ ‭ examples.‬ ‭ 188‬
  • 190. ‭ 12. Pause Menu‬ ‭ There are various options and buttons that can customize your experience in‬ ‭ the editor. These are mostly found in the Pause Menu of the editor, which is‬ ‭ found by clicking the button in the top right. It looks like this:‬ ‭ Here, there are a lot of options (seen as checkboxes) and buttons that may or‬ ‭ may not be self-explanatory. In this chapter, a small description of each is‬ ‭ provided in case you need help. For clarity, the options are shown inside a‬ ‭ blue box, while the buttons are shown inside the red boxes.‬ ‭ Options‬ ‭ These options, shown in blue in figure 11.1, customize the editor view in‬ ‭ specific ways. In other words, they have no actual effect on the level itself, but‬ ‭ rather the experience of making it. Here is a short description of each one.‬ ‭ 189‬
  • 191. ‭ ●‬ ‭ Show Hitboxes:‬‭ Draws hitboxes for objects that interact with the player.‬ ‭ The hitboxes of blocks are drawn in white, while the hitboxes of obstacles,‬ ‭ such as saws and Spikes, are drawn in red. In other words, collision with a‬ ‭ red line leads to death.‬‭ Gameplay Objects‬‭ are drawn‬‭ in green.‬ ‭ ●‬ ‭ Hide Invisible:‬‭ Hides objects that are set to be invisible‬‭ in the editor. (This‬ ‭ only affects objects that are set to "Hide" inside‬‭ Extras‬‭ of‬‭ Edit Group‬ ‭ .)‬ ‭ ●‬ ‭ Preview Mode:‬‭ Shows the level close to how it looks‬‭ in-game when played.‬ ‭ This means that you can see how the colors of objects, the Background,‬ ‭ Ground, and so on look together while in the editor.‬ ‭ ●‬ ‭ Preview Animations:‬‭ Shows‬‭ Animated Objects‬‭ how they‬‭ look in-game.‬ ‭ ●‬ ‭ Preview Particles:‬‭ Shows particles how they look in-game.‬ ‭ ●‬ ‭ Preview Shaders:‬‭ Shows shader effects how they look‬‭ in-game.‬ ‭ ●‬ ‭ Show Ground:‬‭ Shows the Ground. Disabling this is useful‬‭ if you want to‬ ‭ place objects underneath it.‬ ‭ ●‬ ‭ Show Object‬‭ Info:‬‭ Shows some information about selected‬‭ objects. This is‬ ‭ seen as text in the top left of the editor. The different abbreviations are as‬ ‭ follows: "C" is Color Channel, "C1" is Base Color, "C2" is Detail Color, "G" is‬ ‭ grid position, and "EL" is editor layer.‬ ‭ ●‬ ‭ Show Grid:‬‭ Shows the editor grid.‬ ‭ ●‬ ‭ Select Filter:‬‭ Lets you use the Group ID and Color‬‭ Channel filters in the‬ ‭ "Delete" tab to select objects (while in the "Edit" tab).‬ ‭ ●‬ ‭ Ignore Damage:‬‭ Lets you playtest without dying, regardless‬‭ of the‬ ‭ obstacles you touch.‬ ‭ 190‬
  • 192. ‭ Buttons‬ ‭ The buttons seen in red in figure 12.1 perform various actions that are helpful‬ ‭ when creating. First are the two buttons in the center at the bottom, which‬ ‭ toggle‬‭ music guidelines‬‭ and open this guide, respectively.‬ ‭ ●‬ ‭ ReGroup:‬‭ If you have selected objects with various‬‭ Group IDs, you can use‬ ‭ this to change all the corresponding Group IDs to use the lowest ones not‬ ‭ yet used.‬ ‭ ●‬ ‭ Create Loop:‬‭ After selecting a Trigger setup, you‬‭ can click this to create a‬ ‭ Spawn Loop for you.‬ ‭ ●‬ ‭ Keys:‬‭ Shows various key bindings that are useful while‬‭ in the editor.‬ ‭ ●‬ ‭ AlignX/AlignY:‬‭ If you have various objects selected,‬‭ they are all aligned‬ ‭ evenly on the X-axis or Y-axis respectively.‬ ‭ ●‬ ‭ Build Helper:‬‭ If you select various objects in your‬‭ level, including Triggers,‬ ‭ and click this, any already used Group IDs and their references inside‬ ‭ Triggers will be distributed to new unused Group IDs. Useful for‬ ‭ collaborations where some people may have used overlapping Group IDs.‬ ‭ ●‬ ‭ Copy+Color:‬‭ Copies the selected objects including‬‭ all of their Color‬ ‭ Channels' starting settings. Useful for copying and pasting across levels. By‬ ‭ default, copying and pasting across levels does not include the Color‬ ‭ Channel information.‬ ‭ ●‬ ‭ Select All:‬‭ Selects every object in the level.‬ ‭ ●‬ ‭ Paste+Color:‬‭ Pastes the objects and Color Channel‬‭ information after using‬ ‭ "Copy+Color".‬ ‭ ●‬ ‭ Select All Left/Right:‬‭ Selects all objects to the‬‭ left or right, respectively, of‬ ‭ where you are in the editor.‬ ‭ ●‬ ‭ Create Extras:‬‭ This adds outline objects for certain‬‭ types of blocks, such as‬ ‭ the ones that look like rocks.‬ ‭ ●‬ ‭ Unlock Layers:‬‭ Unlocks all layers that are locked‬‭ at once.‬ ‭ 191‬
  • 193. ‭ ●‬ ‭ New GroupX/Y:‬‭ Assigns new Group IDs to the selected objects, going from‬ ‭ left to right or bottom to top respectively.‬ ‭ ●‬ ‭ Reset Unused:‬‭ Resets all Color Channels that are not‬‭ used by any objects.‬ ‭ ●‬ ‭ Uncheck Portals:‬‭ Unchecks all checked Portals. Checked‬‭ Portals show the‬ ‭ roof and ground boundaries.‬ ‭ Not mentioned in this list is the gear in the top right. This is used to customize‬ ‭ the editor in various ways. You can, for example, increase the amount of rows‬ ‭ or buttons per row for "Build" and "Edit". This is helpful when working with‬ ‭ tabs that have many buttons. Additionally, there are many other options that‬ ‭ toggle different things in the editor. If you are unsure what an option does,‬ ‭ click the information box (seen as an "i" button).‬ ‭ 192‬
  • 194. ‭ 13. Sharing Your Level‬ ‭ Verifying‬ ‭ Once you are finished with your level, you have to verify it before you can‬ ‭ publish it. This means that you have to beat your level by clicking "Save and‬ ‭ Play" in the‬‭ Pause Menu‬ ‭ . You can also click the play‬‭ button from the Level‬ ‭ Menu (figure 13.1). It must be an attempt from the start of the level, so a‬‭ Start‬ ‭ Position‬‭ cannot be used. If your level has any‬‭ User‬‭ Coins‬ ‭ , these must also be‬ ‭ collected. Note that you can collect the User Coins on different attempts, as‬ ‭ long as all lead to you beating the level. For example, if your level has 2 User‬ ‭ Coins, you can collect the first in one attempt, and then the second in another‬ ‭ attempt.‬ ‭ Level Menu‬ ‭ After successfully verifying your level (and its potential User Coins), head out‬ ‭ of the level and go to the Level Menu, seen in figure 13.1. As you can see, it says‬ ‭ that the status is "Verified" on the bottom right. This means that you are ready‬ ‭ to upload your level.‬ ‭ 193‬
  • 195. ‭ The other text gives various other details about the level. To the left is the‬ ‭ level's length if the Game Type is Classic: 0-10 seconds is "Tiny", 10-30 seconds‬ ‭ is "Short", 30-60 seconds is "Medium", 60-120 seconds is "Long", and 120+‬ ‭ seconds is "XL" (for Extra Long). If the level is Platformer, this will simply say‬ ‭ "Plat." since these levels' length cannot be determined easily. In the middle is‬ ‭ the starting song, and below that is the version and ID (once shared).‬ ‭ On the right are buttons for various actions. First is deleting the local editor‬ ‭ level. This action cannot be undone, so only use this if you are certain. Below‬ ‭ that is a button that opens this guide. Third is a button to make another‬ ‭ editor copy of the level, and finally is a button to move the level to the top of‬ ‭ your editor levels (indicated by the arrow). Clicking this will put the level at the‬ ‭ top in the list seen by clicking the back arrow in the top left. To organize this‬ ‭ list better, you can put your level into a specific folder, indicated by the folder‬ ‭ with a "0" on the left side of the menu. The information button in the bottom‬ ‭ left shows various statistics about your level.‬ ‭ Before sharing your level, putting in a title and description at the top is most‬ ‭ important. The title of a level cannot be updated once it is shared. You would‬ ‭ have to reupload a new copy with a new name. However, the description can‬ ‭ easily be changed. Note that writing one is optional.‬ ‭ Uploading‬ ‭ Once you have set a title you are satisfied with, click the third big button. This‬ ‭ opens the level sharing interface, which is shown below. Here, the name and‬ ‭ description is shown at the top. Below that, you can select how many Stars or‬ ‭ Moons you want to request. To decide this accurately, we recommend playing‬ ‭ levels on the Featured tab and getting an idea of the difficulty of rated levels.‬ ‭ Note that you can skip choosing one without any problems later.‬ ‭ 194‬
  • 196. ‭ In the top right, indicated by the gear, are some extra settings. Clicking this‬ ‭ opens the menu seen in figure 13.3. The "Unlisted" option means that your‬ ‭ level will not show on any level lists or general search results. It will not show‬ ‭ on your profile either. For users to find it, they must search the exact ID. Note‬ ‭ that you do not need to verify a level to upload it as unlisted. On top of a level‬ ‭ being unlisted, you can also enable "Friends Only", which means that a user‬ ‭ must be your friend and search the exact ID to find it.‬ ‭ 195‬
  • 197. ‭ Once you are happy with all these settings, go ahead and click "Share Level".‬ ‭ This will upload your level to the servers if there are no issues. On the Level‬ ‭ Menu, the ID field will now be updated with your level's ID. This can be shared‬ ‭ with others to help them find your level. To see how your level looks on the‬ ‭ servers, head back to your list of editor levels seen below.‬ ‭ Here, click the button in the bottom left (marked in red) to see your published‬ ‭ levels. Your recently published level shows at the top. Clicking it takes you to‬ ‭ its level page seen below. Here you can play it, see comments and the Level‬ ‭ Leaderboards, and more.‬ ‭ 196‬
  • 198. ‭ The two buttons on the left, marked in red, may be useful in some cases. First‬ ‭ is a button that removes your level from the server entirely. The button in the‬ ‭ top right of this page only deletes it from your saved levels, but it can still be‬ ‭ found by others. Secondly is another copy button, which is always enabled for‬ ‭ the creator of a level (regardless of the copying options set earlier). This is‬ ‭ useful if you no longer have a local editor copy of your level.‬ ‭ Updating Levels‬ ‭ The easiest way to update an uploaded level is to make edits on the local‬ ‭ editor copy. This will change its status from "Uploaded" to "Unverified", and‬ ‭ the version number also says 2 instead of 1. Once done with your edits, go‬ ‭ through the process of verifying again, and then share it as you did before.‬ ‭ This will automatically update the online level.‬ ‭ 197‬
  • 199. ‭ If you no longer have a local editor copy of the level, copy the online level from‬ ‭ the button seen in figure 13.5. This makes a copy with an additional number at‬ ‭ the end of the name. If you want to use this copy to update the level, you have‬ ‭ to edit the title of this copy to be the exact same as the online level. After that,‬ ‭ do your edits and share it as before. This also links the update to the shared‬ ‭ level.‬ ‭ Updating Descriptions‬ ‭ As for updating only the description and not the level content, it is also best to‬ ‭ have the exact copy that was uploaded. Once uploaded, the copy will show a‬ ‭ new refresh button on the left, marked in red below. This is solely used to‬ ‭ update the description. Simply type in your new description and click it.‬ ‭ If you do not have the exact copy, you have to do the same as when you want‬ ‭ to update a level by copying the published level. Unfortunately, the refresh‬ ‭ description button will not show up in this case. You will have to verify the‬ ‭ level again, type in your new description, and go through the sharing process.‬ ‭ Make sure the level name is the exact same as the online level.‬ ‭ 198‬
  • 200. ‭ Rating‬ ‭ After you have published a level publicly, the displayed Difficulty of the level‬ ‭ may update. This is based on community ratings through the bottom right‬ ‭ button in figure 13.5. Using this, players can get an idea of the Difficulty of your‬ ‭ level. However, this does not mean the level gives any rewards when it is‬ ‭ beaten.‬ ‭ Your level gives rewards if RobTop, the developer of the game, plays it and‬ ‭ gives it a certain amount of Stars or Moons. The amount ranges from 1 to 10.‬ ‭ Stars are rewarded for Classic levels, while Moons are rewarded for Platformer‬ ‭ levels. These show below the Difficulty face on the level page or level lists.‬ ‭ Once rated, the Difficulty is locked and community votes are no longer‬ ‭ available. These are the Star and Moon values for each Difficulty:‬ ‭ ●‬ ‭ Auto:‬‭ 1 Star or Moon‬ ‭ ●‬ ‭ Easy:‬‭ 2 Stars or Moons‬ ‭ ●‬ ‭ Normal:‬‭ 3 Stars or Moons‬ ‭ ●‬ ‭ Hard:‬‭ 4 to 5 Stars or Moons‬ ‭ ●‬ ‭ Harder:‬‭ 6 to 7 Stars or Moons‬ ‭ ●‬ ‭ Insane:‬‭ 8 to 9 Stars or Moons‬ ‭ ●‬ ‭ Demon:‬‭ 10 Stars or Moons‬ ‭ Within Demon levels, there is an additional separation into Easy, Medium,‬ ‭ Hard, Insane, and Extreme Demons in order of increasing difficulty. This is‬ ‭ solely based on community votes on levels already rated Demon by RobTop.‬ ‭ Getting a higher Demon rating does not change the reward, only the‬ ‭ Difficulty Face shown on the level.‬ ‭ 199‬
  • 201. ‭ If a player beats a Rated level, the amount of Stars or Moons are added to‬ ‭ their profile statistics. If the level has User Coins, a rating may also involve‬ ‭ verifying these so that they show on a user's profile when collected. This is the‬ ‭ case if they are done properly as explained‬‭ here‬ ‭ .‬ ‭ There are no specific guidelines to ensure your level gets a rating. It is simply‬ ‭ about whether RobTop likes it or not. However, some general tips are:‬ ‭ ●‬ ‭ At least 30 seconds in length‬ ‭ ●‬ ‭ Overall clear gameplay‬ ‭ ●‬ ‭ Decent visuals‬ ‭ ●‬ ‭ Optimized performance‬ ‭ Additionally, how much RobTop likes it results in various types of ratings. This‬ ‭ is indicated by an additional effect around the Difficulty Face, which is seen‬ ‭ below. From left to right, we have Rated, Featured, Epic, Legendary, and‬ ‭ Mythic. Each gives 1 more Creator Point than the last, which is a statistic‬ ‭ shown on profiles and the Creators Leaderboard to highlight creators.‬ ‭ One way to increase the chances of your level being rated is by requesting it‬ ‭ to a Moderator. Moderators are players that can suggest high-quality levels to‬ ‭ RobTop for a rating. They are indicated by a special "M" badge on their‬ ‭ in-game profile.‬ ‭ 200‬
  • 202. ‭ For more information about the Rating System:‬ ‭ https://www.boomlings.com/GDRating‬ ‭ For more information about the Leaderboards:‬ ‭ https://www.boomlings.com/GDLeaderboards‬ ‭ 14. Afterword‬ ‭ Suggestions‬ ‭ This document took a long time to write for us (Viprin and AutoNick). We‬ ‭ hope that there is a lot of useful information here to help you create, whether‬ ‭ you are new or experienced. However, it is by no means perfect. If you have‬ ‭ suggestions for additions or changes, feel free to contact us through social‬ ‭ media:‬ ‭ ●‬ ‭ Viprin:‬‭ Discord‬ ‭ ,‬‭ Twitter‬ ‭ , and‬‭ YouTube‬ ‭ .‬ ‭ ●‬ ‭ AutoNick:‬‭ Discord‬ ‭ ,‬‭ Twitter‬ ‭ , and‬‭ YouTube‬ ‭ .‬ ‭ Special Thanks‬ ‭ First, special thanks to‬‭ Erdyuri‬‭ and‬‭ Spu7Nix‬‭ for creating the cover. Of course,‬ ‭ we also have to give a special thanks to‬‭ RobTop‬‭ for‬‭ creating this amazing‬ ‭ editor in the first place. There are extremely few games that can compete in‬ ‭ terms of complexity and possibilities. He also provided explanations and‬ ‭ support for many parts of this document. Finally, special thanks to you for‬ ‭ reading this document. Good luck creating in Geometry Dash!‬ ‭ 201‬