Open Surge
| Other names | Open Surge, Surge The Rabbit |
|---|---|
| Developer(s) | Alexandre "alemart" Martins |
| Initial release | February 7, 2009 |
| Stable release | 0.6.0.3
/ September 23, 2022 |
| Repository | https://github.com/alemart/opensurge |
| Engine | |
| Operating system | Microsoft Windows, MacOS (unofficially), Linux, Android (TBR) |
Search Open Surge on Amazon.
Open Surge is a 2D retro game engine inspired by the Mega Drive Sonic games. Headed by Alexandre Martins (originally as Open Sonic), it has expanded greatly from a basic Sonic fan game with a level editor to a fully-blown engine with its own scripting system.
The Engine (Open Surge Engine)
The Open Surge Engine, sometimes referred to simply as Open Surge (often without the space, as OpenSurge), is a game engine built off of the C language and powered by the Allegro software library and PhysicsFS[1]. The engine mainly uses momentum-based movement and physics based off of the original Sonic games, though these can be modified using various built-in features of the engine.
The engine has most of the data it reads fully available for the user to modify. Levels are stored as .lev files, usually in the /levels sub-directory. The characters you play as in a level are stored as .chr files within /characters. The sprite sheets used by other files in the engine are stored in a .png format and can be found in various sub-directories (most commonly in /images), usually using pure magenta (specifically colour code #FF00FF) as a stand-in for transparency, with alpha layers and true transparency coming into use in 0.6.0. .spr is used for dynamic animation files tied to scripted objects or player characters, .brk is used for the tile-sets found in levels within the engine, .bg is used for the background of each level, and all of these use the .png sprite sheets.[2]
The Scripting Language (SurgeScript)
Open Surge uses a custom scripting language known as SurgeScript, also worked on by Alexandre Martins. It is designed for use in game engines, using a state machine, object tagging, and a hierarchy system[3]. A basic example of a "Hello, world!" script in SurgeScript application would be:
object "Application"
{
state "main"
{
Console.print("Hello, world!");
Application.exit();
}
}SurgeScript can be used in Open Surge to give player characters special abilities, create menus, or make objects and enemies. An example of an application used in Open Surge's base game is Surge's "Thunder Boom".
The Game (Surge The Rabbit)
Surge the Rabbit is the base game distributed with the Open Surge Engine. While the plot takes a bit more of a backseat, it can be best explained as the titular character, Surge The Rabbit, going on an adventure to stop the evil wizard Gimacian the Dark from taking over the world.[1] There were a couple of different iterations of the game before landing on its current form, though.
Open Sonic
Before Surge was even a character, the engine started life in 2009 as Open Sonic. Open Sonic was a simple fan game based around the concept of ''"cooperative play"'', where the player controlled three characters (Sonic, Tails, and Knuckles) at once to solve puzzles and open doors.[4] This concept was similar to a previous game released by Alexandre, Neo Sonic Universe, where the player went on a Sonic Advance-inspired adventure, going through platforming challenges to open doors and beat stages. At this point, the only parts of the game not ingrained into the source code were the animations, the sprite sheets, and the levels. The last version of the Open Sonic phase was 0.1.4, released on September 19, 2010.
Open Surge
Sonic The Hedgehog isn't a public domain franchise, which means you can't exactly pass any of the content from it as your own. After Alexandre began to consider making the engine Free and Open-Source, he decided to make new characters to fill each role, and use those characters for the game.[citation needed] When these characters were first implemented in Open Surge 0.2.0, an actual story (copied word-for-word from the, at the time, somewhat unfinished official story document) was used in the game for pre-/post-stage cutscenes. A strange scripting language was implemented as well. There were only two completed acts (both for Sunshine Paradise) at the time being a bare-bones act 1 and a boss fight. As updates to things like the aspect ratio, fonts, and scripting were made, levels were added. It eventually shifted from one barely finished zone to two full zones (Sunshine Paradise and Waterworks) in 0.5.2. The last version of the Open Surge phase, and the last version to have the engine and game share a name was 0.5.2.1, released on April 14, 2021.
References
- ↑ 1.0 1.1 Martins, Alexandre (2023-03-17), alemart/opensurge, retrieved 2023-03-18
- ↑ "Introduction to Modding - Open Surge Engine Wiki". wiki.opensurge2d.org. Retrieved 2023-03-18.
- ↑ Martins, Alexandre (2023-02-26), SurgeScript: a scripting language for games, retrieved 2023-03-18
- ↑ "Open Sonic". opensnc.sourceforge.net. Retrieved 2023-03-18.
This article "Open Surge" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:Open Surge. Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.
