Race The Sun

Race The Sun

108 ratings
Simplex World Creator: Full Documentation
By freakyforest and 1 collaborators
Full documentation of the Simplex World Creator features including settings, patterns, objects and game events.
 
Rate  
Favorite
Favorited
Unfavorite
Philosophy of the Simplex World Creator
The Simplex World Creator was created during the development of Race the Sun. We were in need of a fast way to add quality content to the game, and only having one programmer on the team was limiting. To overcome this bottleneck our programmer (Aaron) came up with the idea of making modular chunks of code that could be strung together and attached to objects in the game. This would allow our non-programmer (Forest) to create dynamic and interesting events on his own. This idea of modular pieces of the game was extended to 3D game objects and the World Creator was born. Our philosophy while making these tools was to make what we needed, as we needed it. If we needed to make something fall from the sky, then we would create a nice general-purpose game event to allow for that. We put a strong emphasis on simplicity, but not on polish. The World Creator is the 'backend' of Race the Sun and we consider it to be in Beta. We hope to keep experimenting with new ideas for the tools - and things may get ugly along the way. We hope that is okay with you folks as it means that you can experiment along with us and take part in ongoing development. Features listed as "In Testing" are experimental and may be buggy (other things may be buggy as well, but these ones more so). These features may be changed in future updates. We used the World Creator to make all of the content in Race the Sun as a way of "eating our own dog food".
Modes and Master Controls
About Modes
The world creator is divided into four distinct modes which are accessed via buttons on the lefthand column. Each mode lets you edit different pieces of a world. The modes (World Settings, Objects, Patterns and Events) are covered in detail later in this document.

Mode Controls
  • World Settings (Button)
    • This button brings up the world settings mode.
  • Objects (Button)
    • This button brings up object creation and editing mode.
  • Patterns (Button)
    • This button brings up pattern creation and editing mode.
  • Events (Button)
    • This button brings up event creation and editing mode.

Saving and Testing
  • Back (Button)
    • This button exits the World Creator and brings you back to the previous screen.
  • Save (Button)
    • This button saves your world in its current state.
  • Test (Button)
    • This button starts a test run of your world and brings up the Test Parameters dialog.

Test Parameters
  • Begin Stage (Number Value, 1 - Infinite)
    • Entering a region number here will make your test run start at that region.
  • Force Pattern Index (Number Value, 1 - Infinite Depending On Number of Patterns)
    • Entering a patterns index number here will force that pattern to be spawned in your test run. Entering "-1" in this field means that no patterns will be forced to spawn.
  • Go (Button)
    • Hitting this button begins a test run of your world.
  • Cancel (Button)
    • Hitting this button cancels your test run and closes the Test Parameters dialog.
World Settings Mode
Overview

The World Settings mode allows you to make global changes to the way your world looks and behaves. Changing a setting here can have a profound impact on the way players experience your world. Feel feel free to play around and have fun with these settings! You may be surprised at what you discover.


Basic World Parameters
  • World Name (Text Field)
    • Text entered in this field appears in the sky at the start of a run. It is also the name that will be listed when browsing for worlds.
  • World Description (Text Field)
    • Text entered in this field appears as a description when browsing player worlds.
  • Ambient Light (Color Picker)
    • This setting defines the color of ambient light in the world.
  • Default Sunlight Intensity (Number Value, 0.0 - 1.0 recommended, higher values are brighter.)
    • This number defines the default brightness of the sun.
  • Sun Begin Rotation (Number Value, 0 - 90)
    • This number defines in degrees the starting position of the sun. “0” = directly overhead and “90” = the Western horizon. Settings between 0 and 90 are recommended.
  • Sun Rotation Rate (Number Value, 0.0 - infinite)
    • This number defines in degrees per second the default speed of the sun rotation.
  • Region Pattern Length Override (Number Value, 0 - infinite)
    • This number defines the length of one region in your world. A value of “-1” represents infinite length.

Sky Colors
  • Add Sky Color (Button)
    • This button creates a “slot” that allows you to set the color of the sky at a specified sun rotation angle.
  • Sun Angle (Number Value, 0 - 90)
    • This number defines in degrees a target rotation of the sun. When the sun reaches this angle the sky will fully turn to the color defined in the related “sky color” setting.
  • Sky Color (Color Picker)
    • This setting defines the color that the sky will turn when the sun reaches the angle defined in the “Sun Angle” setting.
  • Sunset Color (Color Picker)
    • This setting defines the color that the sunset rays will turn when the sun reaches the angle defined in the “Sun Angle” setting.
  • Sun Test Position (Vertical Slider)
    • This slider simply lets you preview your light and sky color settings by changing the position of the sun in the 3D preview image.

Materials
  • Sky Material (Icon Picker)
    • This picker allows you to set the material that will be rendered as sky in your world. Either the “sky_gradient” or “sky_stars” option is recommended.
  • Ground Material (Icon Picker)
    • This picker allows you to set the material that will be rendered as ground in your world.

Player
  • Max Speed (Number Value, 1 - infinite, Limited by game maximum)
    • This number defines the maximum forward speed of the ship. The ship will accelerate to this speed if fully charged.
  • Forward Acceleration (Number Value, 0 - infinite, Limited by game maximum)
    • This number defines the rate at which the ship will accelerate forward.
  • Strafe Acceleration (Number Value, 0 - infinite, Limited by game maximum)
    • This number defines the rate at which the ship will accelerate laterally.
  • Strafe Max Speed (Number Value, 0 - infinite, Limited by game maximum)
    • This number defines the maximum turning speed of the ship. The ship will accelerate to this lateral speed while turning.
  • Strafe Friction (Number Value, 0 - infinite)
    • This number defines how quickly the ship stops turning when the player is no longing holding the turn controls.
  • Player Scale (Number Value, 0.0 - infinite, default = 1)
    • This number defines the visual scale of the player ship.
  • Hover Height (Number Value, 0.0 - infinite)
    • This number defines the distance between the player and the ground plane .
  • Camera Offset Position (X,Y,Z Coordinates)
    • These coordinates define the position of the camera in relation to the player ship.
  • Camera Offset Rotation (X,Y,Z Rotation)
    • These angles define the rotation of the camera (on three axes) in relation to the default orientation.

Misc. Parameters
  • Spawn Clouds (Checkbox)
    • When checked, clouds will be spawned into the world based on built-in game logic.
  • Show Horizon (Checkbox)
    • When checked, a distant horizon will be visible in your world.
  • Show Ground (Checkbox)
    • When checked, the ground will be visible in your world. Unchecking this checkbox will give the sense of the ship flying through space - as opposed to hovering.
  • Gameplay Ignores Shadows (Checkbox)
    • When checked, shadows cast by the sun will not discharge the player’s power or slow the ship.
Objects Mode
Overview

This mode of the World Creator lets you create and edit Objects. Objects are 3D shapes that can be placed or spawned into the world. Objects are made up of ‘primitives’. These primitives (like a cube, sphere, or pyramid) are added together to create more meaningful and interesting objects.


Primitives
  • Empty
    • An empty primitive which you can use as a parent of other objects. This object has three colored spikes which point in the 3 directions used by the World Creator - X, Y and Z.
  • Cube
    • A 15x15x15 unit cube.
  • Octo
    • A simplified cylinder.
  • Ramp
    • A shape which makes for a perfect ramp to catch some air.
  • Sphere
    • A simplified 15x15x15 unit sphere.
  • Wall
    • A 75x15x3.75 unit wall-like shape.
  • Pyramid
    • A 5-sided pyramid.
  • UnitSphere
    • A small sphere that is mostly used for debugging… and was accidentally left in the World Creator by the developers.
  • 3DText (In Testing)
    • This object allows you to place white 3D text into the world.
  • Powerup
    • This object looks like a speed powerup, but actually represents all pickups in the game. When placed in the world an appropriate pickup will be spawned based on game logic. Pickups will not always spawn where this object is placed and are often swapped with a Tri for gameplay balance.
  • Tri
    • When a Tri (pronounced “try”) is placed in the world it can be picked up by players to gain points.
  • Portal
    • Placing this object in the world defines where a world portal will be spawned. Whether or not the portal is spawned is controlled by game logic.
  • FX_Cloud_Trail (This will probably be depreciated in a future release)
    • This object generates a trail of clouds when attached to a moving object.
  • FX_Vapor_Trail
    • This object generates a trail of vapor when attached to a moving object.
  • FX_Ambient_Particles
    • This object generates small, static white particles in a spherical area.
  • FX_Glow_Red
    • A red glowing effect.
  • FX_Glow_Green
    • A green glowing effect.
  • FX_Glow_SmallGreen
    • A small green glowing effect.
  • FX_Glow_White
    • A white glowing effect.
  • FX_Flash_White
    • This object will create a quick (one-time) white flash when spawned into the world.
  • FX_Flash_Colors
    • This object will create a cycle of flashing colors.

Object Parameters & Buttons
  • Add (Button)
    • Clicking this button allows you to create and name a new game object.
  • ID (Text Field)
    • Text entered in this field is the name of your object.
  • Event (Text Field)
    • The text in this field is a path to a game even that you would like to run on (or call from) the object (“EventGroupID.EventID”)
  • Test (Button)
    • This button tests the event listed in the “Event” field.
  • Primitive (Icon Picker)
    • This picker lets you choose the primitive (parent) object to start your object.
  • Material (Icon Picker)
    • This picker lets you pick the material / color of your object.
  • Offset (X,Y,Z Coordinates)
    • These coordinates let you define an offset for your object in relation to it’s default position.
  • Rotation (X,Y,Z Rotation)
    • These angles let you define the orientation of your object in relation to it’s default position.
  • Scale (X,Y,Z Scale, 1- infinite)
    • These settings let you define the scale of your object on each of the (X, Y, Z) directions. These scale settings will affect all child objects,
  • Apply Material To Children (Checkbox)
    • Checking this box applies the material chosen in the “Material” picker to all child objects.
  • No Collision (Checkbox)
    • Checking this box turns off collision for your object so that the player can not collide with it. This is nice for things like clouds - and it helps improve game performance.
  • Epitaph Name (Text Field)
    • The text in this field will be displayed if a player crashes and dies on your object.
  • Delete Object (Button)
    • This will delete your object - be careful!

Children Objects Parameters & Buttons
  • Add Child Object (Button)
    • Clicking this button allows you to add a child object underneath your parent object. You can only select from objects you have already created.
  • Offset (X,Y,Z Coordinates)
    • These coordinates let you define an offset for your object in relation to the parent object.
  • Rotation (X,Y,Z Rotation)
    • These angles let you define the orientation of your object in relation to the parent object.
  • Scale (X,Y,Z Scale, 1 - infinite)
    • These settings let you define the scale of your object on each of the (X, Y, Z) directions. The child object is scaled independent of parent objects.
  • Event Delay (Number Value, 0.0 - Infinite, Seconds)
    • The number entered here represents the seconds of delay between a game event being triggered on any object higher in the child-parent hierarchy and this child object. If left unchecked, events on all child objects will be triggered simultaneously.
  • Remove (Button)
    • This button removes the child object from the parent object, but does not delete the object on which the child is based.
Patterns Mode
Overview

In the Pattern mode of the World Creator you can add and edit…patterns. A pattern is a chunk of the world where you can place objects. During gameplay, the game will arrange these patterns to create the world around you. You, as the world creator can set certain rules about how these patterns are spawned into the world. Each pattern has an invisible 64x64 grid to which objects are snapped. Patterns are automatically assigned a number (starting at 1) as they are created.

3D View Controls

The controls in pattern mode are slightly different in that most of the screen is taken up by a 3D view. Navigating the 3D view with the mouse involves these buttons:
  • Left Click (Places objects, removes objects, or selects object types)
  • Right Click & Hold (Moves 3D view)
  • Mouse Wheel (Zooms 3D view)
  • Test Pattern Button (Jumps into the game and tests the currently selected pattern)

Parameters & Buttons
  • Prev (Button)
    • This button navigates to the previous pattern index number.
  • Next (Button)
    • This button navigates to the next pattern index number.
  • Pattern Stage Frequency (Number Value, 0.0 - Infinite)
    • The number in this field sets the frequency that the selected pattern will be spawned relative to all the other available patterns in a region. If all available patterns are set to “1”, the patterns will all have an equal chance of spawning. If all patterns are set to “1” and you change a single pattern to have a frequency of “2”, it will be twice as likely to spawn as all other patterns.
  • Add (Button)
    • This button sets the object placement mode to “add”. This means that the currently selected object will be placed wherever you left-click on the pattern.
  • Remove (Button)
    • This button sets the object placement mode to “remove”. This means that any object you left-click will be removed.
  • Select Type (Button)
    • This button adds sets the object placement mode to “select type”. This means that if you left-click an object in a pattern, that object type will become the currently selected object - and the object placement mode will be changed to “add”.
  • New (Button)
    • This button adds a new blank pattern.
  • Delete (Button)
    • This button deletes the currently selected pattern (be careful!).
  • Pattern Complexity (Info)
    • This number represents the complexity level of the current pattern. Once the complexity level reaches 100, no more objects can be added to the pattern. To maximize available complexity try making simpler or larger objects - or make some objects that have collision turned off.
  • Min. Region (Number Value, 0 - Infinite)
    • This number value sets the minimum region at which the current pattern can spawn. The default setting is “0” which means that the pattern can start spawning in the first region. If the setting is changed to “2”, that would mean that the pattern will not spawn until the player reaches region 2. A trick is to set this value to “-1”, this means that the current pattern will only spawn if called for in the “pattern sequence next” setting of another pattern.
  • Max Region (Number Value, 0 - Infinite)
    • This number value sets the maximum stage at which the current pattern can spawn. If set to “2” the pattern will not spawn after stage 2 is cleared by the player. If the value is set to “-1” the pattern will have no maximum region at which it can spawn.
  • Pattern Sequence Next (Number Value, 1 - Infinite Depending on Available Patterns)
    • This number value sets the next pattern to be spawned after the current pattern. Using this setting you can create strings of patterns that will always spawn together.
  • Selected Object (Icon Picker)
    • This picker shows the currently selected object. This is the object that will be placed on the pattern if the placement mode is set to “add”. Clicking this picker will let you select another object to place. You can also scroll through available objects using the Left and Right arrow keys.
Events Mode
Overview

Events are what add motion sounds and color changes to a world. You could think of them as small programs that can be run on any object.

Game Event Concepts

Event ID

The event "ID" is a string of text or numbers that represents the event. You can choose a custom name for an event, but it should be unique.

Game Event Groups

The "Game Event Group" acts like a container for other game events. Anything placed inside (as a child) of the Event Group will be executed in sequence - top to bottom. Each Game Event Group has a special set of “Repeat” parameters.

Game Event Groups Repeat Parameters
  • Repeat (Checkbox)
    • This checkbox makes all events in the group repeat upon completion. The events will repeat in sequence from top to bottom. Checking this box will bring up options for repeat parameters.

Repeat Type Parameters
  • Until Destroy (Selection Button)
    • Selecting this option makes the events repeat until they are automatically destroyed by the game logic.
  • Count (Selection Button)
    • Selecting this option makes the events repeat the number of times listed in the “Value” field.
    • + Value (Number Value, 0 - Infinite)
    • + + Enter the number of times you would like the events to repeat.
  • Fixed Time (Selection Button)
    • Selecting this option makes the events repeat the number of seconds listed in the “Value” field.
    • + Value (Number Value, 0 - infinite)
    • + + Enter the time (in seconds) for which you would like the events to repeat.
  • PlayerTimeToPass_LessThan (Selection Button)
    • Selecting this option makes the events repeat until the player reaches a point in the world where they will pass the event location in fewer seconds than those listed in the “Value” field.
    • + Value (Number Value, 0 - Infinite)
    • + + Entering a time (in seconds) will make the events stop repeating when the player is within that timeframe of reaching the event location.
  • PlayerDistance_X_LessThan (Selection Button)
    • Selecting this option makes the events repeat until the player reaches a distance from the event location equal or less-than the distance listed in the “Value” field.
    • + Value (Number Value, 0 - Infinite)
    • + + Entering a distance (in world units) will make the events stop repeating when the player is within that distance of the event location.

Event Hierarchy

Events use a structure similar to directories in most operating systems. You can create a Game Event Group and place events inside - or you could place another Game Event Group inside that. To trigger an event within a group use this structure "GroupName.EventName". The period character (“.”) represents going down one directory - similar to the forward slash in a web URL. Events within a group are triggered in-sequence, top to bottom.

Event Conditions (In Testing)... Kinda Complicated

Event conditions are used to define the conditions under which an event group is triggered. A condition can be defined by typing its name and value in the “ID” and “Value” fields respectively. The condition is further defined by selecting one of the mathematical symbols - which relate to the condition value. The only condition currently supported is:
  • “region”

This feature of the World Creator is still in-testing and will likely be changed in the future.

Triggering Events

Events are usually triggered by typing the event ID in the "Event" field of a game object. If the event has no conditions or delays, it will be executed as soon as that object is spawned into the world.
GE_ExecuteRandomEvent
The "Execute Random Event" event acts very much like a game event group, except that when called, a random child of the event is executed. The randomness is defined by the current 24 hour period (as displayed by the in-game leader board) and should remain consistent for that duration.
GE_CameraShake
The Camera Shake event shakes the in-game camera. Many of the parameters for this event are hard to describe, so it’s just best to experiment with various settings.

Parameters:
  • Full Power Radius (Number Value, 0 - Infinite)
    • Up to this distance from the player, the shake will have full strength.
  • Maximum Range (Number Value, 0 - Infinite)
    • This sets the maximum range in world units at which the camera shake will have any effect.
  • Number of Shakes (Number Value, 0 - Infinite)
    • This sets the maximum number of shakes.
  • Shake Movement Extents (X,Y,Z Coordinates)
    • This sets the amount of shake movement in each direction.
  • Initial Shake Distance (Number Value)
    • This sets the initial distance of the first camera shake.
  • Shake Rotation Extents (X,Y,Z Rotation)
    • This sets the amount of shake rotation on each axis.
  • Speed Multiplier (Number Value, any positive value)
    • This sets the speed multiplier of the camera shake.
  • Decay (Number Value, 0.0 - 1)
    • This sets the speed at which the shaking decays. The higher the value, the faster the shaking will decay.
GE_Destroy
The Destroy event destroys (or deletes) an object in the world.

Parameters:
  • Object to Delete
    • None (Selection Button)
    • + Selecting this effectively “mutes” the event and it will have no effect.
    • Player (Selection Button)
    • + Selecting this will make the event affect the player. (This option most-likely will not work with this event)
    • MainCamera (Selection Button)
    • + Selecting this will make the event affect the main camera. (This option most-likely will not work with this event)
    • NamedObject (Selection Button)
    • + Selecting this will make the event affect a named object and reveals the “Object ID” text field.
    • + + Object ID (Text field)
    • + + + Typing an object name (as specified in spawn event) in this field will make the event affect that object.
    • Event Source (Selection Button)
    • + Selecting this makes the event effect the object which calls the event. See “Object Parameters & Buttons” for info on calling an event from an object.
GE_Delay
The delay event is one of the most powerful game events. Any events placed underneath the delay in the hierarchy will be delayed. It can also be used as a trigger since the delay can reference the location of the player.

Parameters:
  • Delay Type
    • Seconds (Selection Button)
    • + Delay Time (Number Value)
    • + + This number sets the delay time in seconds.
    • PlayerDistance_X_LessThan (Selection Button)
    • + Player Distance Less Than (Number Value)
    • + + This number sets a distance in world units. The event will continue to delay until the player reaches that distance from the event location. This event only measures distance on the X (forward) axis.
    • PlayerTimeToPass_LessThan (Selection Button)
    • + Player Time To Impact (Number Value, 0.0 - Infinite)
    • + + The event will continue to delay until it is determined that the player will cross the event location in the number of seconds entered here. This event only measures travel time on the X (forward) axis.
GE_DropObject
The Drop Object event is useful for disconnecting objects that were spawned together, and dropping objects from above the ground plane.

Parameters:
  • Object To Drop
    • None (Selection Button)
    • + Selecting this effectively “mutes” the event and it will have no effect.
    • Player (Selection Button)
    • + Selecting this will make the event affect the player. (This option most-likely will not work with this event)
    • MainCamera (Selection Button)
    • + Selecting this will make the event affect the main camera. (This option most-likely will not work with this event)
    • NamedObject (Selection Button)
    • + Selecting this will make the event affect a named object and reveals the “Object ID” text field.
    • + + Object ID (Text field)
    • + + + Typing an object name in this field will make the event affect that object.
    • Event Source (Selection Button)
    • + Selecting this makes the event affect the object which calls the event. See “Object Parameters & Buttons” for info on calling an event from an object.
  • Inherit Parent Velocity Factor (Number Value, 0.0 - Infinite)
    • This number represents the amount of in-world velocity the dropped object will inherit from the object that is dropping it. A value of “1” represents 100%.
  • Gravity Scale (Number Value, 0.0 - Infinite)
    • This number represents the amount of gravity that will be applied to the dropped object. Experiment with different values to get a realistic falling effect.
GE_ExecuteEvent
The "Execute Event" event does just what it says. Any event listed in the "Event Path" field will be trigger when this event is called. This means that you can create and event group that triggers another event.

Parameters:
  • Event Path (Text Field)
    • The text in this field represents the path and name of the event you would like to execute. For instance, if you would like to execute an event called “SpinFast” which is inside an event group called “Rotation”, you would type “Rotation.SpinFast” in this field.
  • Share Context (Checkbox, In Testing)
    • Advanced: If true, events executed will have the same “context” for named objects. For example, an object spawned previously with a “missile” tag would be recognized by the executed event.
GE_PlayAudio
The Play Audio event lets you choose a sound from a list of built-in sounds effects and play them in game.

Parameters:
  • Clip
    • Shockwave (Selection Button)
    • + This selection represents a rumbling sound.
    • ShockwaveHit (Selection Button)
    • + This selection represents an interesting impact sound.
    • WhistleDown (Selection Button)
    • + This selection represents a missile-like whistling sound.
    • SmallBoom (Selection Button)
    • + This selection represents a booming sound.
    • BigBoom (Selection Button)
    • + This selection represents a large booming sound.
  • Source Object
    • None (Selection Button)
    • + Selecting this effectively “mutes” the event and it will have no effect.
    • Player (Selection Button)
    • + Selecting this will make the player the source of sound.
    • MainCamera (Selection Button)
    • + Selecting this will make the main camera the source of sound.
    • NamedObject (Selection Button)
    • + Selecting this will make a named object the source of sound and reveal the “Object ID” text field.
    • + + Object ID (Text field)
    • + + + Typing an object name in this field will make that object the source of sound.
    • Event Source (Selection Button)
    • + Selecting this makes the object which calls the event the source of sound. See “Object Parameters & Buttons” for info on calling an event from an object.
  • Loop (Checkbox)
    • Selecting this checkbox will make the sound loop repeatedly.
  • Volume (Number Value, 0.0 - 1)
    • This number represents the volume of the sound. A value of “1” means the sound will play at 100% of its original volume.
  • Min Distance (Number Value, 0 - Infinite)
    • This number represents the distance (in world units) from the source that the sound will be heard at full volume.
  • Max Distance (Number Value, 0 - Infinite)
    • This number represents the maximum distance (in world units) from the source that the sound will be heard.
  • Doppler Level (Number Value, 0.0 - 1)
    • This number represents how much doppler effect the player will experience when moving near the source of the sound.
GE_Shockwave
This event allows you to create a spherical trigger object in the world. An event can be triggered when the player comes into contact with the sphere. The shockwave is designed to be spawned into the world and grow in size until it is destroyed.

Parameters:
  • Source Object
    • None (Selection Button)
    • + Selecting this effectively “mutes” the event and it will have no effect.
    • Player (Selection Button)
    • + Selecting this will make the player the source of the shockwave.
    • MainCamera (Selection Button)
    • + Selecting this will make the main camera the source of the shockwave.
    • NamedObject (Selection Button)
    • + Selecting this will make a named object the source of the shockwave and reveal the “Object ID” text field.
    • + + Object ID (Text field)
    • + + + Typing an object name in this field will make that object the source of the shockwave.
    • Event Source (Selection Button)
    • + Selecting this makes the object which calls the event the source of the shockwave. See “Object Parameters & Buttons” for info on calling an event from an object.
  • Start Radius (Number Value, 0 - Infinite)
    • This number represents the radius of the shockwave (in world units) when it is created.
  • End Radius (Number Value, 0 - Infinite)
    • This number represents the radius of the shockwave (in world units) when it reaches the end of its duration period. The shockwave will be destroyed at the end of its duration.
  • Duration (Number Value, 0 - Infinite)
    • This number represents (in seconds) how long the shockwave will exist.
  • Hit Player Event ID (Text Field)
    • Typing an event path and name into this field will trigger that event when the player comes into contact with the shockwave.
  • Draw Shockwave Sphere (Checkbox)
    • Checking this box will draw in opaque white sphere where the shockwave exists in the world.
GE_MoveObject
This event allows you to move objects within the world.

Parameters:
  • Object To Move
    • None (Selection Button)
    • + Selecting this effectively “mutes” the event and it will have no effect.
    • Player (Selection Button)
    • + Selecting this will make the movement apply to the player. (This option most-likely will not work with this event)
    • MainCamera (Selection Button)
    • + Selecting this will make the movement apply to the main camera. (This option most-likely will not work with this event)
    • NamedObject (Selection Button)
    • + Selecting this will make the movement apply to a named object and reveals the “Object ID” text field.
    • + + Object ID (Text field)
    • + + + Typing an object name in this field will make the movement apply to that object.
    • Event Source (Selection Button)
    • + Selecting this makes the movement apply to the object which calls the event. See “Object Parameters & Buttons” for info on calling an event from an object.
  • Target Object
    • None (Selection Button)
    • + Selecting this effectively “mutes” the event and it will have no effect.
    • Player (Selection Button)
    • + Selecting this will make the movement apply relative to the position of player.
    • MainCamera (Selection Button)
    • + Selecting this will make the movement apply relative to the position of the main camera.
    • NamedObject (Selection Button)
    • + Selecting this will make the movement apply relative to the position of a named object and reveals the “Object ID” text field.
    • + + Object ID (Text field)
    • + + + Typing an object name in this field will make the movement apply relative to the position of that object.
    • Event Source (Selection Button)
    • + Selecting this makes the movement apply relative to the position of the object which calls the event. See “Object Parameters & Buttons” for info on calling an event from an object.
  • Offset (X,Y,Z Coordinates)
    • The numbers in these fields represent movement distance in world units on each of the X, Y, Z Coordinates. If these values are left at “0” no movement will happen.
  • Offset Space (Selection Button)
    • World
    • + Selecting this button will make the movement happen in world space.
    • Local
    • + Selecting this button will make the movement happen in local space.
  • Face Movement Direction (Checkbox)
    • Checking this box will automatically attempt to rotate the object to face the direction in which it is moving.
  • Move Type
    • Interpolate_Linear (Selection Button)
    • + Selecting this button will make the movement happen along a linear curve. On other words, the movement will be of equal speed the entirety of its duration.
    • Interpolate_Smooth (Selection Button)
    • + Selecting this button will make the movement happen along a smooth curve. In other words, the movement will speed up, then slow down to give a smooth effect.
    • Interpolate_EeasIn (Selection Button)
    • + Selecting this button will make the movement speed up as it progresses. This is a good settings for animating things that fall.
    • Interpolate_EaseInSteep (Selection Button)
    • + Selecting this button will make the movement speed up quickly as it progresses. This is a good settings for animating things that fall quickly.
    • Accelerate (Selection Button)
    • + Selecting this button will make the movement accelerate to the selected target (used in conjunction with ‘acceleration’ field)
  • Interpolate Time (Number Value)
    • The number in this field represents time in seconds for objects to move the offset distance.
  • Acceleration (Number Value)
    • The number in this field represents the acceleration factor of the movement if the move type is set to “Accelerate”.
  • Max Speed (Number Value)
    • The number in this field represents the maximum speed an object can move if the move type is set to “Accelerate”.
GE_RotateObject
This event lets you (surprise, surprise) rotate objects within the world.

Parameters:
  • Object To Rotate
    • None (Selection Button)
    • + Selecting this effectively “mutes” the event and it will have no effect.
    • Player (Selection Button)
    • + Selecting this will make the rotation apply to the player. (This option most-likely will not work with this event)
    • MainCamera (Selection Button)
    • + Selecting this will make the rotation apply to the main camera. (This option most-likely will not work with this event)
    • NamedObject (Selection Button)
    • + Selecting this will make the rotation apply to a named object and reveals the “Object ID” text field.
    • + + Object ID (Text field)
    • + + + Typing an object name in this field will make the rotation apply to that object.
    • Event Source (Selection Button)
    • + Selecting this makes the rotation apply to the object which calls the event. See “Object Parameters & Buttons” for info on calling an event from an object.

  • Relative to Object
    • None (Selection Button)
    • + Selecting this is effectively the same as selecting “Event Source” in the case of this event.
    • Player (Selection Button)
    • + Selecting this will make the rotation apply relative to the position of player.
    • MainCamera (Selection Button)
    • + Selecting this will make the rotation apply relative to the position of the main camera.
    • NamedObject (Selection Button)
    • + Selecting this will make the rotation apply relative to the position of a named object and reveals the “Object ID” text field.
    • + + Object ID (Text field)
    • + + + Typing an object name in this field will make the rotation apply relative to the position of that object.
    • Event Source (Selection Button)
    • + Selecting this makes the rotation apply relative to the position of the object which calls the event. See “Object Parameters & Buttons” for info on calling an event from an object.
  • Rotation (X,Y,Z Rotation, 0 - 180)
    • The number in each of these fields represent rotation in degrees. If the values here are set to “0” no rotation will happen.
  • Move Type
    • Interpolate_Linear (Selection Button)
    • + Selecting this button will make the rotation happen along a linear curve. On other words, the rotation will be of equal speed the entirety of its duration.
    • Interpolate_Smooth (Selection Button)
    • + Selecting this button will make the rotation happen along a smooth curve. In other words, the rotation will speed up, then slow down to give a smooth effect.
    • Interpolate_EeasIn (Selection Button)
    • + Selecting this button will make the rotation speed up as it progresses. This is a good settings for animating things that fall over.
    • Interpolate_EaseInSteep (Selection Button)
    • + Selecting this button will make the rotation speed up quickly as it progresses. This is a good settings for animating things that fall over quickly.
    • Accelerate (Selection Button)
    • + This mode causes the rotation to “accelerate” towards the desired value.
  • Interpolate Time
    • Interpolate Time (Number Value)
    • + The number in this field represents time in seconds it will take to rotate the degrees listed in the rotation fields.
GE_MaintainOffset
The Maintain Offset event lets you force an object to stay in-place at a defined distance from another object. It is especially useful in that you can lock each direction independently.

Parameters:
  • Object To Move
    • None (Selection Button)
    • + Selecting this effectively “mutes” the event and it will have no effect.
    • Player (Selection Button)
    • + Selecting this will make the movement apply to the player. (This option most-likely will not work with this event)
    • MainCamera (Selection Button)
    • + Selecting this will make the movement apply to the main camera. (This option most-likely will not work with this event)
    • NamedObject (Selection Button)
    • + Selecting this will make the movement apply to a named object and reveals the “Object ID” text field.
    • + + Object ID (Text field)
    • + + + Typing an object name in this field will make the movement apply to that object.
    • Event Source (Selection Button)
    • + Selecting this makes the movement apply to the object which calls the event. See “Object Parameters & Buttons” for info on calling an event from an object.
  • Target Object
    • None (Selection Button)
    • + Selecting this effectively “mutes” the event and it will have no effect.
    • Player (Selection Button)
    • + Selecting this will make the movement apply relative to the position of player.
    • MainCamera (Selection Button)
    • + Selecting this will make the movement apply relative to the position of the main camera.
    • NamedObject (Selection Button)
    • + Selecting this will make the movement apply relative to the position of a named object and reveals the “Object ID” text field.
    • + + Object ID (Text field)
    • + + + Typing an object name in this field will make the movement apply relative to the position of that object.
    • Event Source (Selection Button)
    • + Selecting this makes the movement apply relative to the position of the object which calls the event. See “Object Parameters & Buttons” for info on calling an event from an object.
  • Offset (X, Y, Z Coordinates)
    • The numbers in these fields represent distance in world units that you would like for the offset. The object affected by this event will be locked this distance from the target object.
  • Maintain X (Checkbox)
    • If checked, the offset will only be effective on the X axis.
  • Maintain Y (Checkbox)
    • If checked, the offset will only be effective on the Y axis.
  • Maintain Z (Checkbox)
    • If checked, the offset will only be effective on the X axis.
GE_RepeatEvent
This event allows you to repeat another event. Its function is mostly duplicated by the "Repeat" toggle in Event Groups.

Parameters:
  • Event Path (Text Field)
    • This field should contain the path and event that you would like to repeat.
  • End Condition
    • RepeatCount (Selection Button)
    • + If selected the event will be repeated the number of times listed in the “End Condition Parameter” field.
    • FixedTime (Selection Button)
    • + If selected the event will be repeated for the number of seconds listed in the “End Condition Parameter” field.
    • DistanceBehindPlayer (Selection Button)
    • + If selected the event will be repeated until the location of the event reaches the distance (in world units) listed in the “End Condition Parameter” field.
  • End Condition Parameter (Number Field, 0 - Infinite)
    • The number in this field can represent a simple count, seconds, or distance, depending on the end condition button selected.
GE_Spawn
This event lets you spawn any game object into the world.

Parameters:
  • Spawn Object (Icon Picker)
    • This icon picker allows you to select the object to spawn. You can only spawn objects you have already created.
  • Offset (X, Y, Z Coordinates)
    • The number in these fields represent the distance (in world units) from the relative object that you would like the object to spawn.
  • Relative to Object
    • None (Selection Button)
    • + Selecting this effectively “mutes” the event and it will have no effect.
    • Player (Selection Button)
    • + Selecting this will make the object spawn relative to the position of player.
    • MainCamera (Selection Button)
    • + Selecting this will make the object spawn relative to the position of the main camera.
    • NamedObject (Selection Button)
    • + Selecting this will make the object spawn relative to the position of a named object and reveals the “Object ID” text field.
    • + + Object ID (Text field)
    • + + + Typing an object name in this field will make the object spawn relative to the position of that object.
    • Event Source (Selection Button)
    • + Selecting this makes the object spawn relative to the position of the object which calls the event. See “Object Parameters & Buttons” for info on calling an event from an object.
  • Attach To Relative Object (Checkbox)
    • Checking this box will attach the spawned object to the object referenced with the “Relative To Object” buttons.
  • Spawned Object Name (Text Field)
    • Use the text in this field to give your spawned object a unique name. This is useful if you want to reference this object from another event.
  • Spawned Game Event (Text Field)
    • Game event name to execute on the spawned object.
  • Object Lifetime (Number Field)
    • The number in this field represents the lifetime of the spawned object in seconds. After the lifetime of the object is complete, it will be destroyed.
GE_ColorOverride
The Color Override event is one of the most fun to play with. It lets you change the colors in the world and create effects like screen fades.

Parameters:
  • Override Sky Color (Checkbox)
    • Checking this box will bring up a color selector and make the color override affect the sky.
    • + Sky Color (Color Selector)
    • + + The color defined here will override the current sky color.
  • Override Sunlight Color (Checkbox)
    • Checking this box will bring up a color selector and make the color override affect the sunlight color.
    • + Sunlight Color (Color Selector)
    • + + The color defined here will override the current sunlight color.
  • Override Sunlight Intensity (Checkbox)
    • Checking this box will bring up the “Sunlight Intensity” field and make the override affect the sunlight intensity.
    • + Sunlight Intensity (Number Field, 0 - Infinite)
    • + + The number here will change the current sunlight intensity.
  • Override Ambient Color (Checkbox)
    • Checking this box will bring up a color selector and make the color override affect the color of the ambient light.
    • + Ambient Color (Color Selector)
    • + + The color defined here will override the current ambient color.
  • Override Screen Color (Checkbox)
    • Checking this box will bring up a color selector and make the color override affect the color of the entire screen. The effect is like transitioning the screen to a color.
    • + Screen Color (Color Selector)
    • + + The color defined here will override the current screen color.
  • Blend In Time (Number Field)
    • The number in this field represents the time in seconds that it will take the override color to reach full strength.
  • Duration (Number Field)
    • The number in this field represents the time in seconds that the override color will remain at full strength.
  • Blend Out Time (Number Field)
    • The number in this field represents the time (in seconds) that it will take the override color to transition from full strength to having no effect.
  • Override Tag (Text Field)
    • Advanced: Only one color override with a given tag will be active, with newer ones replacing older ones.
  • Priority (Number Field, 0 - Infinite)
    • The number in this field sets the priority of the color override relative to any other color overrides. The override with a higher priority number will be given precedence.
  • Blend Weight (Number Field, 0 - 1)
    • How much this color will affect the scene. Think of it like a multiplier on the alpha value.
GE_3DText (In Testing)
This event lets you create a 3D text object which can be spawned into the world.

Parameters:
  • Text (Text Field)
    • The text in this field will be displayed in the world wherever it is spawned.
  • Subtext (Text Field)
    • The text in this field will be displayed underneath the text in the “Text” field.
GE_GameOver (In Testing)
This event lets you end a run. This is useful for creating gameplay scenarios that differ from the core Race the Sun worlds. When this event is called, the run will end.

Parameters:
  • Game Over Message (Text Field)
    • This message will be displayed to the player if their run is ended by this event.
Tips & Tricks
The "RegionCleared" Trick

If you add a Game Event Group and name it "RegionCleared", the group will be triggered at the end of each region. This trick is how the bird is spawned at the end of each region in Race the Sun. A similar trick can be used when a group is named “GameStart” This triggers the event group at the very start of a run. We will likely replace this trick with a more proper feature in a future update.
< >
37 Comments
freakyforest  [author] Nov 13, 2015 @ 8:15am 
Hey, sorry to hear that things still aren't working High Fructose :\ We will be looking at the editor in more detail as we prep for our next update - so hopefully we can figure out what's up.

Also, I don't get to log into Steam as much as I would like, so if you've got questions about the editor and want a faster response, Twitter works great :) Drew (the guy running our Twitter) is a level editing expert and he's happy to help.
High Fructose Scorn Syrup Oct 11, 2015 @ 9:25pm 
Checking back in to say that I never did find a way to edit the default Race The Sun world in the editor. Either something still isn't working it's not obvious to me what I'm supposed to be doing.
jvhyde Oct 6, 2015 @ 5:02pm 
Is it ok if I bother you with some more problems? (I don't want to be annoying.)
jvhyde Sep 23, 2015 @ 6:42pm 
Thank you sooooooo much ! :o)
freakyforest  [author] Sep 23, 2015 @ 9:57am 
No problem! We did recently release an update. Maybe it was a bug we accidentally fixed :D
jvhyde Sep 19, 2015 @ 11:47am 
This is crazy, and it makes me feel like I've been anoying to you for no reason, but it just "decided" to start working again. Did you do any bug recent fixing? (So sorry about the trouble)
freakyforest  [author] Sep 15, 2015 @ 2:21pm 
Sorry about that, jvhyde. Would you be able to open a support ticket (http://flippfly.freshdesk.com/support/tickets/new) and send over some screenshots of the problem?
jvhyde Sep 6, 2015 @ 5:11pm 
Ok, still didn't work; I even tried starting a new one, but the new pattern just automatically started out as my previous one.
freakyforest  [author] Sep 1, 2015 @ 12:50pm 
Hmm.. that's weird jvhyde. One thing to look at is the Min. Region value when editing the patterns. Try setting that to "0" if it's not already. Check out the "Patterns Mode" section of this guide for more info.
jvhyde Aug 28, 2015 @ 5:30pm 
I tried to test my world, I'd see my ship and control it and such, but none of the objects I placed appear.