Skip to content

Conversation

@Sslaxx
Copy link

@Sslaxx Sslaxx commented Oct 12, 2021

This is based upon Sslaxx/Godot_Sonic_Engine#31 which is the most recent pull to date of my original repo based upon Flow Engine. The purpose of this pull request is to bring this up to date and eliminate the separate (non-forked) repository.

Supersedes #7
Supersedes #6
Supersedes #5

Fixes #4
Fixes #2
Partially fixes #3

Changes from the last pull of Flow Engine are as follows:

  • Reorganised the entire structure of the project. Other than the directory containing the actual source, there are directories meant for exported builds, raw resources used in the project, and documenting the project.
  • Removed unused assets (sounds, graphics, music etc.).
  • Reorganised assets. Tried to give consistent folder/file names wherever possible for assets, scenes and script files.
  • Optimised some assets - used a tool to shrink PNG files, made sure all sound effects were in mono. All sound effects are now also OGGs.
  • Removed unused or unnecessary functions and variables. Some functions and variables were never used, others duplicated existing Godot functionality.
  • Replaced HUD. The boost functionality now relies solely upon the value of the boost HUD bar. Added time, score and lives functionality as part of the HUD replacement. New hud functionality Sslaxx/Godot_Sonic_Engine#20
  • Added a debug HUD, which gives position, frame rate and action flags. Debug HUD time. Sslaxx/Godot_Sonic_Engine#25
  • Added basic checkpoints, made levels have their own scripts inheriting from a generic script. Generic levels and checkpoints. Sslaxx/Godot_Sonic_Engine#22
  • Attempted to eliminate most magic numbers. Some remain, and I'm not convinced I've replaced some of the others properly, will need checking further. Investigate magic numbers Sslaxx/Godot_Sonic_Engine#24
  • The player code is now separated between player_generic.gd and player_<name>.gd. Some functionality still needs moving over. Same with enemies. Genericising Sslaxx/Godot_Sonic_Engine#15
  • Replaced input code - movement direction is controlled via input strength. All input is via a central _input function. Movement improvements Sslaxx/Godot_Sonic_Engine#9
  • Added "capability" flags (can_) to determine what a player can do. As only currently Sonic exists in the codebase, the only flag used is can_boost. Made state flags follow similar conventions (e.g. is_boosting).
  • Standardised some node names and conventions.
  • Has a main menu, and a pause menu.
  • Has a basic "level intro" sequence and "level outro" sequence. Levels in, levels out! Sslaxx/Godot_Sonic_Engine#30

Caveats:

  • This is not bug-free. The level in 1.tscn appears to have collision issues with loops. A very few times I've noticed Sonic "glitch" through loops or walls. Not entirely sure yet what is causing this, shall need further investigation.
  • Needs more documentation and commenting, though some has already been done.

This updates Flow Engine.

Signed-off-by: Stuart "Sslaxx" Moore <stuart@sslaxx.co.uk>
* Updated README.md

Signed-off-by: Stuart "Sslaxx" Moore <stuart@sslaxx.co.uk>
* Sync with Sslaxx/Godot_Sonic_Engine#25

Signed-off-by: Stuart "Sslaxx" Moore <stuart@sslaxx.co.uk>
@coderman64
Copy link
Owner

Thanks for the pull request! I'll look through this and merge it into the main branch when I have time.

Sync the fork with Sslaxx/Godot_Sonic_Engine#26

Signed-off-by: Stuart "Sslaxx" Moore <stuart@sslaxx.co.uk>
Nothing much has changed, except for input mapping. This is probably NOT
going to be liked much by Godot 3.3 or earlier!

Signed-off-by: Stuart "Sslaxx" Moore <stuart@sslaxx.co.uk>
Export presets changed a little, stuff about Progressive Web Apps and
macOS changes.

Signed-off-by: Stuart "Sslaxx" Moore <stuart@sslaxx.co.uk>
Sync the Flow Engine fork to Sslaxx/Godot_Sonic_Engine#27

Signed-off-by: Stuart "Sslaxx" Moore <stuart@sslaxx.co.uk>
Just synching *.import file changes for Godot 3.4.

Signed-off-by: Stuart "Sslaxx" Moore <stuart@sslaxx.co.uk>
* Sync changes to Sslaxx/Godot_Sonic_Engine#28

Signed-off-by: Stuart "Sslaxx" Moore <stuart@sslaxx.co.uk>
Sync changes up to Sslaxx/Godot_Sonic_Engine#30

Signed-off-by: Stuart "Sslaxx" Moore <stuart@sslaxx.co.uk>
Signed-off-by: Stuart "Sslaxx" Moore <stuart@sslaxx.co.uk>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Losing rings causes repeated area_set_shape_disabled errors. Boost still working when colliding with a wall. MeepMeep.wav versus MeepMeep.ogg?

2 participants