• Do not use Works in Progress as a way of avoiding the releases system! Works in Progress can be used for sharing early betas and for getting suggestions for improvement. Releases of finished content are not allowed in this forum! If you would like to submit a finished addon, click here for instructions on how to do so.

Quest to recreate EVERY SINGLE SONIC ABILITY (4%)

So while I was scrolling through some discord channels, looking for things to do, being bored as per usual. I stumbled on this post on a certain discord server

1706567104580.png

So I thought to myself, "What if I recreated every single sonic ability ever?", and here we are

On this thread, I will try to recreate every single sonic ability inside of lua, Once this project is done it will be completely open source for anyone to edit or modify, It will also come with helpful comments that will go into detail on how I did it all! I'm going to try to make it very beginner friendly as well, and will hopefully use NO other sprites other then the ones in base game

Right now I'm looking at generalized abilities (Insta Shield, Peelout, Lightdash ect) but if you have any suggestions, I'd love to hear them!
 
Please take your time to make the code as clean and simple as possible.

That's my suggestion. Have fun lol
monch.gif
 
So while I was scrolling through some discord channels, looking for things to do, being bored as per usual. I stumbled on this post on a certain discord server

View attachment 110533
So I thought to myself, "What if I recreated every single sonic ability ever?", and here we are

On this thread, I will try to recreate every single sonic ability inside of lua, Once this project is done it will be completely open source for anyone to edit or modify, It will also come with helpful comments that will go into detail on how I did it all! I'm going to try to make it very beginner friendly as well, and will hopefully use NO other sprites other then the ones in base game

Right now I'm looking at generalized abilities (Insta Shield, Peelout, Lightdash ect) but if you have any suggestions, I'd love to hear them!
theres already insta shield and peelout iirc
but i think some cool moves could be the spring abilities from sonic rush adventure like the uppercut (idk what its called)
 
1706583745884.png

here's a example of the mass amount of commenting I will being doing (this lua script is for the classic-styled spindash I plan on doing)
Post automatically merged:

This is a bit late... But the classic styled spindash has been completed

Press spin to start spinning, Spam jump to charge for more power, release spin to go zoom

srb20052.gif
 
Last edited:
here's a example
a few pointers
  • Don't forget the thens
    • Good coding practices yadda yadda :knuxsmug:
  • P_RandomRange only accepts numbers whose distance doesn't exceed a FRACUNIT. Anything larger is undefined behavior
    • ANG30 is worth 357913941
    • Between -ANG30 and ANG30 there's... a lot
    • A less buggy way to do this is to get a random number between -30 and 30, then multiplying it by FRACUNIT then passing the result to FixedAngle to get an angle. (You can just multiply it by ANG1 but there may be some weird behavior. Big numbers tend to be dumb.)
  • Multiplying the angle by FRACUNIT does nothing useful.
    • The second argument of P_InstaThrust asks for an angle. Multiplying just skews the angle further, it does not "give it real distance". You probably meant to do something with the third argument, the "speed" of the thrust.
 
a few pointers
  • Don't forget the thens
    • Good coding practices yadda yadda :knuxsmug:
  • P_RandomRange only accepts numbers whose distance doesn't exceed a FRACUNIT. Anything larger is undefined behavior
    • ANG30 is worth 357913941
    • Between -ANG30 and ANG30 there's... a lot
    • A less buggy way to do this is to get a random number between -30 and 30, then multiplying it by FRACUNIT then passing the result to FixedAngle to get an angle. (You can just multiply it by ANG1 but there may be some weird behavior. Big numbers tend to be dumb.)
  • Multiplying the angle by FRACUNIT does nothing useful.
    • The second argument of P_InstaThrust asks for an angle. Multiplying just skews the angle further, it does not "give it real distance". You probably meant to do something with the third argument, the "speed" of the thrust.
I'll make sure to keep these in mind! Thanks for the pointers! This is kind of my second "super big" project outside of Open Character Assets (and that really needs some recoding to be more optimized, so I'm learn as well hehe
 
View attachment 110586
here's a example of the mass amount of commenting I will being doing (this lua script is for the classic-styled spindash I plan on doing)
Post automatically merged:

This is a bit late... But the classic styled spindash has been completed

Press spin to start spinning, Spam jump to charge for more power, release spin to go zoom

View attachment 110589
I actually meant the spamdash from sa1 but thats cool aswell, other thing, will all the abilities be on a separate download or all of them will be on one file?
 
I actually meant the spamdash from sa1 but thats cool aswell, other thing, will all the abilities be on a separate download or all of them will be on one file?
1706625142184.png

Here's how its formatted right now, each of these are inside their own separate folders, so you can easily find things (like the SA1 spin-dash once I get to that) fairly easy!

will there also be abilities from SB? (Sonic Battle) since i have a few for it
I wanted to recreate the "healing" ability, but if you got any suggestions id be happy to hear them!

on another note, the sonic 3 insta-shield ability has been completed!
srb20054.gif

Post automatically merged:

the dropdash has been completed! double jump to start a spindash in mid air, touch the ground to zoom forwards!


a bit lack luster compared to the other dropdashes but this IS suppose to be very simple

srb20058.gif
 
Last edited:
a special ability I wanted to include, a super basic hyper sonic! press custom 3 in mid air with at least 75 rings to become hyper sonic!

a pre-coded "nuke" will activate every time you do your mid air ability, but this was made with the intention that you edit it with your own hyper-exclusive moves!

has to be the hardest to generally understand, however

srb20062.gif
 
the sonic adventure-styled homing attack is done! double jump to do a dash forwards, do it near a enemy to home onto them

like the base game ability, but unlike that one if you don't hold jump your thrusted forwards when its completed!

I do wonder if I shouldn't use "P_HomingAttack" and instead recreate the homing chasing as I fear that would be a bit hard to understand, but its whatever

Small question however, Would it be okay if I used a SOC function in Lua for one of the abilities? the function is "A_FindTarget" and I find it to be very effective for what im doing next


srb20065.gif

Post automatically merged:

On second thought, I might not do it next, after I do the adventure spindash
 
the sonic adventure-styled homing attack is done! double jump to do a dash forwards, do it near a enemy to home onto them

like the base game ability, but unlike that one if you don't hold jump your thrusted forwards when its completed!

I do wonder if I shouldn't use "P_HomingAttack" and instead recreate the homing chasing as I fear that would be a bit hard to understand, but its whatever

Small question however, Would it be okay if I used a SOC function in Lua for one of the abilities? the function is "A_FindTarget" and I find it to be very effective for what im doing next


View attachment 110743
Post automatically merged:

On second thought, I might not do it next, after I do the adventure spindash
I don’t know if you plan on adding it, but you could recreate the SA1 midair recurl (The speed cancelling one)
 

Who is viewing this thread (Total: 1, Members: 0, Guests: 1)

Back
Top