The Control Board

The control board is made up of 6 different buttons.

Save:
Save the game to a .smol file at the location provided. The Engine will not auto-save
your work, nor will it ask to save when you close out of it. So be sure to save often!
Load:
Loads the specified .smol file into the game. This will overwrite anything currently in the game.
This may take some time, so watch the debug log and wait patiently until it is done.
Play:
Begins a simulation of the game. Anything done while playing will not be saved.
While playing, nothing can be saved or loaded.
Stop:
Stops the game simulation and reverts it back to the state that play started in.
Build:
Builds the game into an executable. This can take a while, so be sure to watch the
debug log for any errors or when it finishes.
Generate Functions:
This will go through all the custom scripts and build them into the game. After making
any changes to the scripts, be sure to press this button and wait for them to compile.
(Watch the debug log for errors!)


The Engine Tools

There are 4 different things to place in the game world. Each one is listed here:

Circle:
Circles are a default circle that can be placed in the world. The physics of circles should be
mostly intact, but there may be some bugs due to favoring lower quality for performance
Square:
Squares are nothing special, just an easy to use square.
Triangle:
Triangles are special polygons that can have their vertices adjusted, however I would
recommend using Custom objects for that instead.
Custom:
Just like triangles. Literally exactly the same, just named differently because these have the
distinct purpose of being adjustable.


The Inspector

There are two types of inspectors, one for editing the game while it's stopped, and one for viewing things in the game while it's running.

Editing Inspector

Camera Focus:
If enabled, the camera will center to this object when playing. ONly one object can have this enabled.
X and Y Pos:
The position of the object in world space.
For larger projects, it may be more helpful to Ctrl+LeftClick the number and enter in a custom value.
Angle:
The angle that the object is rotated at.
Fixed Rotation:
When enabled, the object cannot be rotated due to pushing up against other objects.
Width and Height:
The height and width of the object. This will scale the image too.
Layer:
Objects can have physics interactions only with other objects on the same layer. Lower value layers are rendered in the back.
Tag:
Tags are used for Custom Scripting to determine collisions.
Density:
How dense an object's body is.
Friction:
The friction value when another object moves along this one.
Update Function:
The Update script that gets fun during play for this object.
Physics Type:
The type of physics interactions this object has. Static has no interaction. Dynamic has all interactions. Kinematic objects only interact with themselves.
Dynamic has all interactions. Kinematic objects only interact with themselves.
Physics Body:
The shape of the collision body for the object. It's recommended that you do not change this.
Color:
The colors of the object in RGBA.
Delete:
Deletes the object from the game.

Viewing Inspector

In game, the inspector displays a handful of the values shown above.