Forever - Endless Runner Engine

A user-friendly, flexible solution for the generation of linear, procedural levels. Forever is ideal for endless runner games, procedural racing games and more. Forever is now free for everyone to use commercially.

Used in the creation of Lifeslide


Key Features:
- Procedural path generation
- Automatic mesh and object extrusion along the generated path
- Multithreading support for the generation process
- Object Pooling
- Works great on mobile
- Works for both 3D and 2D projects
- Easy and straightforward setup
- Offers built-in logic for traversing level paths
- Minimal programming skills required to write player behaviors
- Flexible and easily extendable functionality
- Open Source
- Level streaming feature for bigger projects


The way Forever works is by extruding and snapping together level segments. The level segments are special kinds of prefabs that are created inside the Unity editor. Use the tools you know to create the level design for each segment and let our system do the rest.


Since we are using it to develop our own titles, Forever is constantly being worked on.


Check out Forever's DOCUMENTATION or watch our VIDEO TUTORIALS to get started.

Have a question? Check out the FAQ or join the COMMUNITY

Release Notes

-------- 1.17 -------- SUPPORT: Official Unity 6 support CHANGE: Renamed the FloatingOrigin component to OriginReset due to an unused trademark that was registered AFTER the plug-in's initial release. We are sorry for the inconvenience but were left no choice. API: Updated the splines editor to the latest 3.0.6 version -------- 1.16 -------- SUPPORT: Official Unity 2023 support SUPPORT: Support for Dreamteck Splines 3.0.5 FIX: Fixed custom level segments not starting at the location of the level generator FIX: Fixed level generation hanging when destroying and creating a segment from the API simultaneously FEATURE: Added a dialog warning if a level segment's scale is different than 1,1,1 OPTIMIZATION: Improved the performance of unloading assets when remote levels are used OPTIMIZATION: Reduced memory fragmentation -------- 1.15 -------- !!!DELETE THE OLD INSTALLATION BEFORE INSTALLING!!! SUPPORT: Official Unity 2022.1 support SUPPORT: Support for Splines 3 (Dreamteck Splines) FEATURE: Added a new override of the LevelGenerator.instance.QueueSegmentCreation method which forces the level generator to create a custom level segment FIX: Fixed improper path tangent generation for the Wavy Path Generator FIX: Fixed null reference exception when floating origin is triggered on a segment with custom paths FIX: Fixed repeating segments in Shuffle mode -------- 1.14 -------- SUPPORT: Official Unity 2021.2 support FEATURE: The package now comes with Assembly Definition files FEATURE: Added feature to exclude mesh batching on selected platforms (Create a MeshBatchSettings object and link it in the Mesh Batcher components) FEATURE: Added support for multiple custom Path Rule components per Level Segment object FEATURE: Added randomizer recording functionality for cases where levels need to be generated in the same way after retrying FIX: Memory and object reference optimization FIX: Fixed Welcome Screen throwing errors in versions 2021 and above FIX: The Path Generator sample rate option now works properly FIX: Small fixes in the examples package -------- 1.13 -------- FIX: Fixed and improved the behavior of looping levels FIX: Fixed an issue with registering the Bend Spline of the SegmentObjectSettings component FIX: Improved logic for handling (skipping) disabled levels FIX: Fixed the custom path editor inspector for segments with custom paths FIX: Logic of LevelGenerator.CalculateLength API: Added a SetPercent method to the Runner class so that it can be teleported anywhere along the existing path easily -------- 1.12 -------- FEATURE: Added a new Shuffle sequence mode which randomizes the segments' order without repeating them FEATURE: Introduced a new system for unloading assets which bypasses Resources.UnloadUnusedAssets - UnloadUnusedAssets can now be toggled through the LevelGenerator component FIX: Brought back the possibility to loop custom path generator splines FIX: Fixed an issue with segment creation and level loading order FIX: Various small performance optimizations FIX: Fixed custom paths behavior for custom level segments API: Added the "associatedRemoteLevel" property to ForeverLevel to provide a reference to the RemoteLevel component of remote levels API: Added the "onSegmentCreated" event to the LevelGenerator SUPPORT: Official Unity 2020.3 support SUPPORT: Official Unity 2021.1 support -------- 1.11 -------- FEATURE: Added support for dragging multiple level segment prefabs into the sequence editor at once FIX: Improved general stability of the generation logic FIX: Fixed errors and segments not removing when using Forever in Debug mode FIX: Fixed an issue where entire levels got skipped when calling ForeverLevel.SkipSequence FIX: LevelGenerator.levelChangeHandler will no longer be overridden upon each LevelGenerator.StartGeneration call FIX: Fixed segments not being destroyed in some cases when object pooling is enabled SUPPORT: Reworked segment generation multithreading to support a wider range of devices (Nintendo Switch) SUPPORT: Official 2020.2 support SUPPORT: Minimum supported version of Unity is now 2018.4 -------- 1.10 -------- FIX: Fixed errors in the editor when using custom segments with custom paths FIX: General code quality improvement FIX: Fixed the StackOverflow exception when drawing empty splines FIX: Fixed serialization issues with the SegmentObjectSettings component and the Extrusion Settings window FIX: Fixed editor crash when exiting play mode while having a path generator selected FIX: Fixed issues with Path Generator objects serialization FIX: Patched memory leaks related to LevelSegment.next and LevelSegment.previous FEATURE: Forever is now using the convenient Dreamteck Splines editor for for all spline editing FEATURE: Introducing object pooling for levels, defined in separate scenes FEATURE: Levels in Forever are now defined using Scriptable Objects and can be extended FEATURE: Introducing randomizer objects which allow custom randomization for path generation and level and sequence iteration FEATURE: Added per-level level path overriding SUPPORT: Minimum supported version of Unity is now 2018.3 SUPPORT: Official support for Unity 2020.1

Basic Information
Latest Version
1.17 (10 Nov 2024)
Publisher
Dreamteck
Category
Tools/Game Toolkits
Size
8.5 MB
Price
free
Asset Rating
(54)
Extended Information
Unity Versions
2021.3.21
Render Pipelines
BIRP URP HDRP
State
Published