[Godot] Modern 2D Sonic Engine (WIP)

Coderman64

Sound Test
Oct 2, 2019
36
27
28
coderman64.github.io
FLOW ENGINE - Super beta
(because flow is a synonym of rush and I'll come up with a better name later)

A Rush/Advance-styled 2D sonic engine.

I built this engine a while ago when attempting to learn how to use Godot Engine. Today, I dig it up out of the mothballs to ask you folks if I should continue the project, or let more mature projects take the lead on this type of thing.

Update (12/15): Added a stomp move, mid-air particles, and some polish. The physics engine should now also run at 120fps, which should help with problems deriving from Sonic's speed. Also changed controls (see below).

Controls:
arrow keys - movement
Z - jump
X - boost
S - stomp
R - reset position

Download here.

9835 9836

The physics (gravity, controls, etc.) are not accurate to the Rush/Advance games, I know. I'm currently not in the mood to do pixel-accurate measurements and the like on my DS and GBA games. That being said, I tried to make it feel "good enough" even if it is different than the games that gave it inspiration.

KNOWN PROBLEMS
- Sometimes collision can be glitchy

NOT IMPLEMENTED (but on the to-do list)
- Boost meter
- Rings/Enemies (and other items)
- Spindash
(It is janky though)
- Air dash/homing attach (on LB/RB)
- Sonic Advance 2-styled mid-air movements?
- lots of visual polish
- and a WHOLE LOT MORE!

Update (04/23/2021)
Uploaded a new demo with a bunch of new stuff! (For more info see the comments) Includes Mac and Linux builds this time, too!
 

Attachments

Last edited:

SacKydzNG

Green Hill Zone
Sep 17, 2020
3
22
43
sackydz12.wixsite.com
There's tons of potential here, as stated by @xinconety. I suggest you keep on working on the project, and if you're using gdscript, then that gives it a bigger advantage since gdscript is quite simple to learn, and most other accurate engines either use paid software or use a hard programming language (C++, for example). Anyways, keep going =).
 

Sslaxx

Green Hill Zone
Sep 8, 2017
21
17
33
44
Malvern, UK
Show it on the Godot Discord server. Would be worth releasing the code, too. Is this using Marmito's Sonic Physics code at all?

I note that there are very few Sonic fangames using Godot. Sonic Relighted and Risemack's 2.5D demo are the only other things that come to mind. So yes, this is worth continuing.
 
Last edited:

Sslaxx

Green Hill Zone
Sep 8, 2017
21
17
33
44
Malvern, UK
I wouldn't worry too much about accuracy, either. The "feel" of the game is more important. Does it feel fast? Controllable? Fun to play? These questions matter, not the exact pixels the player character needs to move to accelerate.
 

Coderman64

Sound Test
Oct 2, 2019
36
27
28
coderman64.github.io
Hey all! Thanks for the encouraging words! I am indeed still working on this! Hopefully, I'll have something presentable done by SAGE that I can show off. For now, here are some spline-based rails, and placeholder/prototype versions of enemies and rings! I also made the new brick tiles, the background, and the music (using the Sonic Rush SoundFont).

I'll probably post a build once I get some of the placeholder things finished up.

Next steps:
- Create a HUD
- Finish rings
- Finish egg pawn enemies
- integrate all those things so Sonic can lose rings and a life.
- figure out checkpoints
- fix the spindash (it is objectively terrible)

Long-term future steps:
- add a trick system (Maybe Jet Set Radio 1 inspired?)

Any other ideas/help/feedback would always be appreciated!


View attachment FlowEngine_4-6-21.mp4
 
Last edited:
  • Like
Reactions: Arkenova and Sslaxx

Sslaxx

Green Hill Zone
Sep 8, 2017
21
17
33
44
Malvern, UK
Bring it to the Godot Discord.

Also: https://github.com/Sslaxx/Godot_Sonic_Engine - I dunno how much use this may be, if any of it (it never got anywhere near as close as you did, for a start), but there's HUD and checkpoint code that may be of use? Feel free to rip it out (or rip on it) at your leisure.
 
Last edited:

Arkenova

Queen of Shenanigans
Aug 29, 2017
32
21
38
31
East Coast USA
Hey all! Thanks for the encouraging words! I am indeed still working on this! Hopefully, I'll have something presentable done by SAGE that I can show off. For now, here are some spline-based rails, and placeholder/prototype versions of enemies and rings! I also made the new brick tiles, the background, and the music (using the Sonic Rush SoundFont).

I'll probably post a build once I get some of the placeholder things finished up.

Next steps:
- Create a HUD
- Finish rings
- Finish egg pawn enemies
- integrate all those things so Sonic can lose rings and a life.
- figure out checkpoints
- fix the spindash (it is objectively terrible)

Long-term future steps:
- add a trick system (Maybe Jet Set Radio 1 inspired?)

Any other ideas/help/feedback would always be appreciated!


View attachment 10422
It's looking up. Keep up on the good work! c=
 

Coderman64

Sound Test
Oct 2, 2019
36
27
28
coderman64.github.io
Weather update! Today's forecast includes a 100% chance of the HUD Actually Existing Now. Also featuring ring noises and the Incredibly Janky Spindash™.

Thanks for the Godot Sonic Engine link @Sslaxx ! I didn't actually end up reusing any of the code, but it served as a good example of a Godot HUD. I can also see this becoming a good engine with some de-jank-ification. If you need a reference for classic sonic's physics, I'd recommend the Sonic Physics Guide over on Sonic Retro (if you haven't seen this already). Your engine probably would act as a good alternative to my engine, since mine focuses more on Modern gameplay than classic.

Anywho, here's a video:

View attachment flowEngine_UI.mp4
 
  • Like
Reactions: Arkenova

Automatic Summer

CD DOUBLE Jumper
Jul 18, 2020
17
1
13
fun fact: your using a sprite sheet or level layout that says this: Sonic rush leaf storm (give credit if use)
i know this because you can easy go out of bounds to the left and you see the background stops and if you go too far and stop boosting theres no death plane at all and you will see the message
im not 100% sure what the full message says but it does say give credit.
WHY DOES IT SAY THAT?
 

Coderman64

Sound Test
Oct 2, 2019
36
27
28
coderman64.github.io
WHY DOES IT SAY THAT?
That's from the ripper that took that background from the DS game. The only reason that I haven't gone through and given credit to all the necessary folks yet is that this is a pre-release version. I will actually give credit in the final version. (I am not a monster :-D)
Also, I was too lazy to cut the credit portion off of the background.
 

Automatic Summer

CD DOUBLE Jumper
Jul 18, 2020
17
1
13
The only reason that I haven't gone through and given credit to all the necessary folks yet is that this is a pre-release version. I will actually give credit in the final version. (I am not a monster :-D)
:)
Also, I was too lazy to cut the credit portion off of the background.
Oof