TODO List
From Open Surge Engine Wiki
This section is deprecated due to newer versions. We ask that you don't use the information provided in this section, but read up on the most recent information available on this wiki or in the forum.
Overview
This list is related to programming.
This is the list of features that will be implemented in future versions of the game. Feature requests must be posted on the forums. Please note that *not* all requests may be accepted/implemented and that there are *no* deadlines, since this project is made in our free time. However, be sure that we're doing our best.
Tasks
Task | Assigned to | % |
---|---|---|
High priority | ||
Medium priority | ||
Ajustable water height in the editor - request | - | 0% |
Scripting engine: new command to write text to a log file - request | - | 0% |
Scripting engine :: new command: set/get the movement multipliers of the player - request | - | 0% |
Scripting engine :: new command: set_blending_mode | - | 0% |
Scripting engine :: new commands: play_quest, quest_levelid() | - | 0% |
Scripting engine :: new command: change_background - request | - | 0% |
Scripting engine :: new command: on_magic_glasses - request | - | 0% |
Scripting engine :: grant players shields through scripting | - | 0% |
Scripting engine :: dynamically change parameters of a playing sample - request | - | 0% |
Video settings - allow configurable resolution - request | - | 0% |
New item box: combine rings - request | - | 0% |
New item box: Open Surge ring box - request | - | 0% |
Scripting engine :: new command: pulverize - request | - | 0% |
Character system :: user defined properties - request | - | 0% |
Scripting engine :: new command: on_category_collision - request | - | 0% |
Scripting engine :: mouse input - request | - | 0% |
Scripting engine :: video playback - request | - | 0% |
Scripting engine :: give means to check if the player movement is enabled or not - request | - | 0% |
Scripting engine :: angularMove and angleTo() - request | - | 0% |
Scripting engine: string support | - | 0% |
Scripting engine: nanocalc - reference counting for arrays | - | 0% |
Port the engine to mobile devices (should be high priority, but this requires substantial resources to be developed) | - | 0% |
Bricks - friction coefficient - request | - | 0% |
Create new levels from within the game - request | - | 0% |
Low priority | ||
Bonus Levels (pseudo 3D). Alternatives: Mode7 or simple tubes | - | 0% |
Level snapshots - request | - | 0% |
Scripting engine :: ripples effect (water) - request | - | 0% |
Completed tasks | ||
Main game engine - completed on version 0.1.0 | Alexandre | 100% |
Improve the friction and the gravity - completed on version 0.1.1 | Alexandre | 100% |
Improve the teleporters - completed on version 0.1.1 | Alexandre | 100% |
Translation module - support for several languages - completed on version 0.1.2 | Alexandre | 100% |
.ogg music support - request - completed on version 0.1.2 | Alexandre | 100% |
Joystick support - completed on version 0.1.2 | Alexandre | 100% |
Reduce memory usage in order to make it easier to port the game to other platforms (like Dreamcast, PSP, etc) - request - completed on version 0.1.2 | Alexandre | 100% |
Foreground/background passable bricks (this is the z-index property of the bricks) - completed on version 0.1.3 | Alexandre | 100% |
Jump sensitivity - request - completed on version 0.1.3 | Alexandre | 100% |
Spindash through multiple boxes - request - completed on version 0.1.3 | Alexandre | 100% |
Cloud bricks (also known as "one-way platforms") - request - completed on version 0.1.3 | Alexandre | 100% |
Level templates - request - completed on version 0.1.3 | Alexandre | 100% |
Level Editor Grid - request - completed on version 0.1.3 | Alexandre | 100% |
Mac OS X Port - request | Christian Zigotzky | 100% |
Upgrade to Allegro 4.4 - completed on version 0.1.4 | Alexandre | 100% |
Rewrite the item system - completed on version 0.1.4 | Alexandre | 100% |
'Sticky' physics - request - completed on version 0.1.4 | Alexandre | 100% |
Foreground support - request - completed on version 0.1.4 | Alexandre | 100% |
MODding capabilities: users can change the graphics of the sprites - completed on version 0.1.4 | Alexandre | 100% |
MODding capabilities: users can change the sound effects - completed on version 0.1.4 | Alexandre | 100% |
MODding capabilities: scripting language | Alexandre | 100% |
MODding capabilities: users can develop custom enemies - completed on version 0.1.4 | Alexandre | 100% |
MODding capabilities: users can program new items - completed on version 0.1.4 | Alexandre | 100% |
MODing capabilities: users can develop new bosses - completed on version 0.1.4 | Alexandre | 100% |
Rewrite the enemy/baddies system - completed on version 0.1.4 | Alexandre | 100% |
Thunder shield - completed on version 0.1.4 | Alexandre | 100% |
Acid shield - completed on version 0.1.4 | Alexandre | 100% |
Water shield - completed on version 0.1.4 | Alexandre | 100% |
Wind shield - completed on version 0.1.4 | Alexandre | 100% |
Fire shield - completed on version 0.1.4 | Alexandre | 100% |
Multiple bosses per level - request - completed on version 0.1.4 | Alexandre | 100% |
Object scripting system - new command: set_zindex - request - completed on version 0.2.0 | Alexandre | 100% |
Object scripting system - mathematical capabilities and variables - completed on version 0.2.0 | Alexandre | 100% |
MODding capabilities: users can customize the fonts - completed on version 0.2.0 | Alexandre | 100% |
Use TTF to display texts - completed on version 0.2.0 | Alexandre | 100% |
Load a quest before the title screen (introduction cutscene) - request - completed on version 0.2.0 | Alexandre | 100% |
Object categories - request - completed on version 0.2.0 | Alexandre | 100% |
Object scripting system - detect when buttons get pressed - request - completed on version 0.2.0 | Alexandre | 100% |
Object scripting system - calendar functions - request - completed on version 0.2.0 | Alexandre | 100% |
Object scripting system - return_to_previous_state - request - completed on version 0.2.0 | Alexandre | 100% |
Object scripting system - switch_character - request - completed on version 0.2.0 | Alexandre | 100% |
Level editor - eraser - request - completed on version 0.2.0 | Alexandre | 100% |
Display the path of moveable platforms in the level editor - request - completed on version 0.2.0 | Alexandre | 100% |
Object scripting system - new command: load_level / teleport - request, request - completed on version 0.2.0 | Alexandre | 100% |
Level editor - create hotkey to reload the level - request - comments: completed on version 0.2.0 | Alexandre | 100% |
MODding capabilities: users can customize the HUD (head-up display) - comments: completed on version 0.2.0 | Alexandre | 100% |
Make a spatial hash to store the level entities - comments: completed on version 0.2.0 | Alexandre | 100% |
Waiting and winning animations - request - comments: completed on version 0.2.0 | Alexandre | 100% |
Single-play game mode (the player controls only one character at a time) - request - comments: completed on version 0.2.0 | Alexandre | 100% |
Rewrite and extend the characters system - comments: completed on version 0.2.0 | Alexandre | 100% |
Rewrite the physics engine - reference: http://www.youtube.com/watch?v=Q9WJDy02LUs&feature=related - comments: completed on version 0.2.0 | Alexandre | 100% |
Rewrite the loop system - reference: http://www.youtube.com/watch?v=Q9WJDy02LUs&feature=related - comments: completed on version 0.2.0 | Alexandre | 100% |
Scripting engine :: new command: set_scale scale_x scale_y - comments: completed on version 0.2.0 | Alexandre | 100% |
Improve the credits screen - comments: completed on version 0.2.0 | Alexandre | 100% |
Option to enable/disable joypad - comments: completed on version 0.2.0 | Alexandre | 100% |
Joypads track up to 8 buttons - comments: completed on version 0.2.0 | Alexandre | 100% |
Scripting engine :: stop_sample - comments: completed on version 0.2.0 | Alexandre | 100% |
Video settings - allow a few resize options: 1x, 2x, 3x, 4x - request - comments: completed on version 0.2.0 | Alexandre | 100% |
Input device: custom mapping (joystick/keyboard) - request - comments: completed on version 0.2.0 | Alexandre | 100% |
Input device: support for multiple input devices (2-player mode) - request - comments: completed on version 0.2.0 | Alexandre | 100% |
Use less CPU, especially when paused - request - comments: completed on version 0.2.0 | Alexandre | 100% |
Improve the camera - completed on version 0.2.0 | Alexandre | 100% |
Develop water (for water levels) - completed on version 0.2.0 | Alexandre | 100% |
Use the hqx image filter - request - completed on version 0.2.0 | Alexandre | 100% |
Rewrite the audio module (Linux): use OpenAL (f****** PulseAudio breaks all Allegro games out there...) - completed on version 0.2.0 | Alexandre | 100% |
Scripting engine :: array support - completed on version 0.2.0 | Alexandre | 100% |
Scripting engine :: new command: on_player_invincible / on_player_speedshoes | Alexandre & lunarrush | 100% |
Scripting engine :: reset global variables when the quest is over/aborted | Alexandre | 100% |
Dropped tasks | ||
Load quests and loop levels in the launcher - request - comments: the launcher program has been removed on version 0.1.3. Use the main menu and the options screen instead. | ||
A new level editor program - comments: the built-in level editor is improving gradually. There's also Level Creator, an external level editor made by a community member | ||
Implement doors/switches of multiple colors - request - comments: not needed anymore - one can implement it through the object scripting system | ||
Simple cutscenes support: custom quests can display slide shows - request - comments: not needed anymore - one can make cutscenes via scripting | ||
Simple cutscenes support: custom quests support video playback - request - comments: not needed anymore - one can make cutscenes via scripting | ||
New brick type: danger - request - comments: not needed; make it via scripting | ||
New brick type: gravity - request - comments: not needed; make it via scripting | ||
New brick type: pushable - request - comments: not needed; make it via scripting | ||
New brick type: portable - request - comments: not needed; make it via scripting | ||
Pipes - request - comments: not needed; make it via scripting | ||
New bricks types: sag, speed - request - comments: not needed; make it via scripting | ||
Object scripting system - new command: change_all_objects_states - request - comments: use global variables in your script to simulate this behavior | ||
Object scripting system - new commands: disable_character_switch, enable_character_switch - request - comments: customize the startup object to achieve this effect | ||
Configure in a .def file the position and the animation of the magic glasses relative to the character who is using it - comments: solve it with scripting | ||
Level Editor snap system - request - comments: use the grid | ||
New brick type: water - request - comments: make custom objects instead | ||
"Save progress" feature - comments: you can hack up such a system using save_level |