I created Sonic Adventure... kind of
ฝัง
- เผยแพร่เมื่อ 22 พ.ค. 2024
- Go to boot.dev at sponsr.is/chaomix and use my code CHAOMIX to get 25% off your first payment. That’s 25% your first month or your first year, depending on the subscription you choose.
Hello. My name is chaomix. I am now the creator of Sonic Adventure. Watch me build it with my own hands.
---Table of Contents-----
0:00 Intro
1:15 Recreating Sonic Adventure Physics
Conclusion
Outro
End Screen
Intro song by Hyper Potions:
/ hyperpotions
⭐Become a chaomix TH-cam Member!
/ @chaomix
🔥Buy chaomix merch here!
th-cam.com/users/chaomixstore
👍Follow me!
Twitter: / chaomix
Twitch: / chaomixttv
Instagram: / chaomixttv
Facebook: / chaomixttv
💬Join the discord!
/ discord
#sonic #sonicthehedgehog #unity - เกม
Let me know if you'd like to see me continue this project, and if so, what features you'd like to see added next!
Also, huge thank you to boot.dev for making this video possible! Check out sponsr.is/chaomix and use my code CHAOMIX to get 25% off your first payment!
If you ever finish it let us test it!
Oh, so you're a sonic fan? Name every source code of every single sonic games (including fan-games)
Can't do it?
That's what I thought
You aren't a true sonic fan, are you?
SONIC ADVENTURE 3 BOIS!!! Plz continue
I wanna see how to attack enemies in your fan game!
You like toriyama's artstyle don't you
I’m so glad chaomix was apart of the original 1998 SEGA Sonic Team that made Sonic Adventure
Can’t believe he actually made Sonic the Hedgehog
Can't believe he was Sonic Adventure.
1998
Wait Chaomix worked on the original SA1?!
Chaomix created Sonic Adventure™, I know that because I was Sonic Adventure™.
I can’t believe Chaomix was a part of the original Sonic Adventure development when he was 4 years old. Truly an inspiration
Rip😢
he is asian.
h. u. h
如果你翻译了这个,那么你很可能会被破坏。如果你不想承受这种困境的后果,那么你必须在老鼠爬进来之前分享这个。🎉🎉🎉😊😊😊 这些表情符号使得这被伪装成一个以老小鸡为食的骗局。但是无论哪种方式。匆忙!为了你自己!!!!!!!
Let me guess he's 29 rn?
you are right
"The jump feels a bit janky at times" So, you've recreated it perfectly. No need to tweak it further.
Although there are already a bunch of great 3D Sonic Engines, I would absolutely love to see this project be turned into a fully fledged, open-source engine.
Yees
As would I! Hopefully he can remedy some of the wonky collision detection that was present in the original game. 😅🙏
The bumper engine:
Am I a joke to you?
@@user-mq8mo9zi4q I'm aware of it, but I don't see the problem with having more engines available to use. Some may have more advantages than others.
@@user-mq8mo9zi4qThe Bumper Engine has the issues that he explains plagues Sonic fan engines today.
It'd be really interesting if a actual SA1 decomp actually releases. Cause I know damn well sonic fans would turn it into a playground like mario fans did to SM64
I wonder if there's actually somebody out there right now working on a SA1decomp that will release in a few years down the line
@@AltKaxREAL ┐( ∵ )┌
I think there's some bloke that's trying to port the game to 3DS, and decompiling it in the process. I'm not sure if they're doing any progress with it tho....
Wait sa1 on the 3ds? I'm down for thatt
BRITISH@@T.T_CenrryTH
@@T.T_CenrryTHAAAAAAA
Great reference there 12:23 As someone who's a massive fan of SA1 and SA2 for how they play mechanically, alongside many other, separate reasons... I really love that you put in the time to recreate the SA1 physics here! PLEASE continue this project! I'd love to see your journey remaking SA1 in Unity and someday, hopefully, we can have the chance to play your remake of SA1, even if it's just a couple of levels like Speed Highway and Emerald Coast!
I hope that this project gets continued in the future, with more characters, and it being playable to the public when it is finished.
I’d love to see more of this project going forward! It’s fascinating to see how you reverse-engineered the mechanics from purely optical observation, able to explain it all relatively simple so the process is easier to digest; something that probably would be hard to do considering the world of coding, especially from people like me who have no basic understanding either. Best of luck if you decide to continue!
Can't wait for something like this to be backported to Gens or Frontiers like with SM64. Idk if it's possible with Unity, I just think it'd be cool.
Guess what
What? @@Pepenic
@@jast_yt_stuff check the Sonic Adventure Generations mod that includes the physics and the spindash
This might actually be the first time I ever check out a sponsor, boot dev actually looks extremely helpful, and I’ve been trying to get into game design for YEARS now 😁
Really fascinating! I have been looking into game design as well, and even simple rundowns like this are really invaluable to me. Hope you work on this project more, I'd like to see where it goes.
Chaomix really said "fine, I'll do it myself"
I think this’ll inspire me to make that mod I pitched for Sonic Adventure 2.
By the way, these are my issues.
Basically it’s an improvement mod that fixes the issues for Adventure 2.
My list of how I'd improve Sonic Adventure 2.
- Making Sonic and Shadow’s control like in S.A.1 as they’re slightly stiffer controls compared to his first game.
- Summersault would no longer slow speed.
- Mapping movements to different buttons.
For the X button, it’s SpinDash/Lightspeed Attack, Lightspeed Dash
For the B button, it’s Summersault, Bounce
- Improve the Lightspeed Dash to actually work.
- Fix some scripting parts of the levels because characters wouldn’t do what the levels tell them, messing up a play through.
- Make the grind rails less jank
- Mechs turning would be smoother, and lock on is more automatic, but it might mess one of Tails levels.
- I guess make the treasure hunting radar like S.A.1, even though I never had a problem with it.
- Electric shield being able to not get hit by electrical enemies.
- Also the Electric shield would not attract rings because it caused problems when Lightspeed Dashing in the actual games.
- Nerf enemies
- Remove the surprising enemies in the mech stages.
- Make all the levels less janky (yee all of them).
- Fixing the camera that usually cliffs through walls or floors
- Fix the sound mixing and voice lines from cutting each character off for the English dub.
- Improve the lighting to be like the original DreamCast but make it less dark (thinking of Aquatic Mine Zone).
- I’d also update the models by adding more poly counts and just refining them.
This is how’d I improve the game with a mod.
Sounds very ambitious indeed.
If you can figure out how to do this, that would be awesome! I recommend looking into what research has already been done into the code of the Sonic Adventure games. A few of these things have already been attempted, and you could probably help improve on it!
I hope you keep working on this! A dedicated roll button that just sets Sonic to his rolling state when it's pressed would be neat. If you still want to keep the spamdash, you could either set the roll to a different button than the spindash, or have a toggle-able setting and let players decide between one or the other.
For a person who wants to get into game development this is a very good inspiration to try and learn more about it. You made this seem very fun and you made such an amazing video. You should totally continue working on this. Keep it up king.
Great job its awesome to see someone recreating part of the greatest sonic game ever made. One observation though, I speedrun SA1/DX and there is one important detail in the spindash you may have missed (At least you didn't demonstrate if you didn't) In SA1 spindash spamming is a fun way to move but it is slightly inefficient due to the spin cancel mechanic, however there is a work around for this. It might have been an oversight but there are 2 buttons that will initiate a spindash. On Xbox the X button and PS the Square button is the normal spindash button, however the B or Circle buttons will also spindash. This is important because the spin cancel mechanic only applies when repeatedly tapping the same spindash button. We speedrunners use a technique called "TAS Dashing" or "Spindash Chaining" where we rapidly alternate between spamming the 2 spindash buttons, to gain greater acceleration and speed with none of the deceleration that comes with regular spindash spam and the spin cancel mechanic. We bypass the spin cancel mechanic Entirely by doing this. Another important note, directional input control becomes more sensitive the faster the player is moving, using TAS Dash constantly gives you Max speed, however this sacrifices controllability which acts as a limiter on where/ how TAS dashing can be used practically.
Also another small but sometimes important mechanic in SA1 is the Ariel Spin Cancel. ANY time that sonic is in the air and in ball form, for any reason, if the player hits either spindash button Sonic will immediately drop from ball form and begin falling. In addition to this ALL player momentum is cut and Sonic's speed becomes ZERO instantaneously, causing Sonic to sharply fall directly downward. If copying this mechanic you should take care when also setting how much ariel control the player has when falling not in ball form. Otherwise this could be abused too heavily trivialising some downward vertical platforming levels. In speedruns we usually use this mechanic to limit suboptimal air time as Sonic can only meaningfully accelerate when on the ground.
Also, Where da homing attack at?
I don't like these types of dev-log videos usually the creators try way too hard to be funny
for the sake of audience retention and the pacing is also too fast (for my taste at least) but
this was the complete opposite while also being enjoying to watch, as a fellow developer I'd love to see more of these types of videos
Please continue this. I really like gamedev vids so a series like this would be great.
Excited to see the homing attack!
Seconded! Homing Attack logic would be so interesting!
I personally don’t mind the so-called “vomit cam”. It’s like being on a roller coaster. Imo, that’s how you avoid having to deal with automation. Spark 3 did it.
I personally wanna see the Homing Attack and the Bounce next. I hope this becomes a series!
Thee cheers for Spark 3
Hip hip hooray
Yeah I actually _prefer_ that type of camera in Sonic games. It feels way less disorienting to me and like i'm always in total control.
This is awesome, I love how it shows every step of the process, while leaving out the more complex stuff (slope detection, normal calculation, input processing). It makes it feel like a story and not a tutorial, while still having enough detail to understand how everything works.
This is so cool! Hope you continue with this project. I've been enjoying how unique you've been with Sonic content.
This is amazing as someone with very little game dev knowledge, a fangame with you at the helm would be an amazing sight. Though…there is one thing missing…THE SA2 Magic Glove power up, otherwise known as the peak sonic mechanic rivalling Shadow the hedgehog gun gameplay.
I mean is the 3d sonic experience really complete without MAGIC GLOVE?
The way you handled the loops by rotating the controller's input variables is quite elegant, most Sonic games use a semi-fixed animation in a coordinate determinate conditional block with a timed interrupt, which is pretty dirty. Some even operate at a fixed velocity and restrict the controls to a forward/backward binary
Woah no way. I knew chaomix loves the Adventure games but I never knew he worked on them. Makes the signatures I got from him even better!
Dude, what? You never knew that?
@chaomix literally created the
Sonic the Hedgehog™ franchise.
*FAKE SONIC FAN!*
Great video! Exercises like this really show how much goes into the details that made these games so fun to control. (Well, likely followed by extensive polishing and bug-fixing.)
You still haven't revealed what Star Garden's gameplay will be like but this makes me especially intrigued for what the movement mechanics will be!
i'm glad you made a video like this, please make more videos like this one as well as getting deeper into game development cuz that's what i love, especially if it's sonic related
This was such a cool video! I'd give anything to be able to run up any wall I want again and to have variable height. Bonus points if the variable heights apply to springs too.
i always loved fan games that take inspiration from adventure formulas, but like you said, they all utilize "vomit cam" lol
If this Sonic Adventure remake video concept becomes a series that would be so epic- I've always looked for tutorials or at least dev log videos on actually remaking the Adventure 1 and 2 controls but they were always vomit cam or boost controlled..it was ambitious for sure but never 1 to 1 of that "adventure flair" I was hoping to see. And while yours is definitely rough around the edges, you really dive into the nitty gritty of what makes Adventure FEEL like Adventure in terms of control, camera, physics, just general feel from a back end perspective. Graphics can always come after, but alot of it comes down to how it plays and I think your approach is pretty good
I really hope you continue this project as a series dude! It was super engaging and it would also be nice to see some of the lines of code used too- maybe have the game project file for download once its all done for studying purposes
Keep it up!
We're all Sonic Adventure, aren't we?
Yes we are kazberry yes we are
For how long it took to dissect the classic games, dissecting the adventure games would take just as long.
Yes please to more of this project, I think it's one of if not THE most interesting videos you've ever put out! I know it's too big a jump from where you are now/in this video, but I'm looking forward to seeing you maybe recreate the level designs from the original game!
you know. the meme if you like the series, name every single thing on the series
theres just 1 small problem though. the only way to know all the names and 100% strategy, is to be a lunatic stan
Chao this implementation honestly looks awesome and I really appreciate that you took the time to explain your formulas. I'd absolutely love to see where you take this if you keep working on it!
Sega employee:
Izuka, sir! This talented individual is developing Sonic Adventure 3! We can't let him do tha-
Izuka:
hol' up, let him cook.
Thank you for being a part of the development of Sonic Adventure 1 😂
So Game Garage is going to make a Sonic Adventure remake? Brilliant 👍
Hey Chaomix, this project looks great! I do have a quick question though.
I was following along with the video, but I was a little confused about "spin dash charge time". Based on the way you described it, I'm assuming this variable refers to the extra speed that is gained from the spindash, scaled by how long you charged it(not including the "base charge speed" which is speed you are guaranteed to get from using a spindash).
Assuming this to be true, would it not make more sense to call it something like "spin dash charged speed" or something to that effect? Otherwise, if this is just the amount of time the spin dash was charged, would it not be used multiplicatively with the base speed to scale the amount of speed gained?
I just want some clarification lol.
P.S. I'm an aspiring game developer, so having poor naming conventions is pretty typical lol.
Very fun video! I'd love to see more, maybe adding the SA1 model and animations and trying to do a direct comparison with the physics to see how close they are to the original?
True, it doesn't matter if it's held together by duct tape if you can create something fun.
I still have advice for the animator. You can use 2D-FreeFormDirectional in a Blend Tree and use Y and X floats to make sonic blend between the running animations. Y would stand for speed and you could use X for steering in the right or left direction so Sonic tilts a little.
Still, really cool!!!
super glad that chaomix was on the SEGA SONIC TEAM from sonic adventure from the age of 2 from 1996 - 99
I can't wait to see chaomix's Sonic fangame!
I only have 1 note; the slope formulas could've been one formula. Instead of "slope assistance" and "slope drag", I think it would've been possible for that to simply be one variable, "slope influence" or something. Positive number when going downhill, negative when going uphill.
Of course, I'm no developer, so that's just a guess!
I really do love how Sonic (and Shadow) controls in SA1 and SA2. The closest to getting that high again is playing the Adventure Sonic character mod for SRB2. Really does feel a lot like SA1 and SA2 Sonic jammed together. And with all the custom worlds and campaigns in SRB2, I have so much content to play with the character.
Bro helped a whole batallion of sonic fans who can create games make this
I didn't exactly subscribe for stuff like this, but I'm sure not complaining!
This is kinda the amalgamation of my biggest interests lol
Love this video Chaomix! I always do lol
Great thumbnail and also great job on making this fan game 😁
Keep up the awesome work and videos chaomix love the video
i'd love to see the homing attack and light dash implemented
i usually don't comment under videos, but i really like this one of yours in particular, and i'd be very down to see this beceome a series!
11:48 🎵Spider-hog. Spider-hog. On the ceiling he does a jog.🎵
I love how the code is blurred so you won't get comments berating your programming. As a hobby dev, I'm right there with you.
What if the Sonic Adventure that chaomix kinda made was the videos we made along the way?
Please continue this project and style of video, it's truly entertaining!
This is really interesting. I tried recreating classic sonic physics in Game maker Studio 2 (with the help of the Sonic Retro Physics Guide ofc) and always got stuck at loop-de-loops, and had a hard time with bugs in general. I'm also familiar with Unity, and have attempted a Sonic character Controller with the Rigidbody instead of a Character Controller like you have. THAT was a terrible idea! Clearly fake it 'till you make it was the go-to strat with the physics here. Seeing your approach was really inspiring to me and I'd love see some expansions upon this system. Even, I'd love to have the the raw Unity project and inspect the code for myself, so if you feeling like sharing, I think there would be a fair share of people who'd really appreciate it!
Hey this is awesome man, I'd say keep it up. You explained things in such an easy to understand and non-pretentious way. I wouldn't mind listening to you teach a class in game development with Sonic as the example
Make a life counter, add sfx and improve janky parts, like the spin dash model being above the ground instead of it being halfway in and halfway out. I would love to see this become a series, so please don’t abandon it!
Goes to show how much fine tuning work is done for the controls on out favorite games! Great work man
This was superrrrrrr fun to watch as a beginner game dev !!! Id love to see some more of these types of videos!! Maybe next refining sonics control and importing some more adventure levels!
I'm surprised you didn't do what adventure does, for the loops themselves: it forces you to "snap" on a single track at a fixed minimum speed (it's usually the minimum speed for staying on walls) after you hit certain points (as many no-ring challenge runners have discovered). There's very few loops that give you full control or let you stop/slowdown past certain points, especially when the camera does a pan to a cinematic angle.
(the best early example is the Emerald Coast multiloop at the end of the wall-run that's near the snaking path full of boosters that launch you upward to the jump pad section you can skip. If you enter it with any amount of "wall-sticking" speed you're pushed into the corkscrews even if you didn't hit the boost pad, but if you walk in after jumping past the boosters you can drunkenly walk through the tunnel instead and fight with the auto-loop engine trying to push you through.)
Other than the autoloop trying to yank your controls out to what it WANTS Sonic to do, though, that looks just about right to me. (I've played too much of this game, on Dreamcast and Gamecube both.)
This was an awesome video. I'd love to see this develop into a full tutorial series, as I think it would open the floodgates to a new era of Adventure styled Sonic fan games for everyone to enjoy. Who knows? It might even kickstart a future game designer's passion? It's not unheard of for fan game developers to go on to become pros.
@0:56
chaomix: "It was the exact reason you subscribed. You .... are ... subscribed .... right?"
Me: Ehm, yea iam... subscribed *chuckles and fast clicking subscribe*
imo the way the jump in adventure games works is that there's a burst of velocity applied to Sonic and gravity gets reduced until Sonic's Y velocity lowers to a certain amount or the jump button is released, whichever happens first
this could make the jump less janky
Id definitely like to see more updates to the project your making, it looks fun
What I’d LOVE to see is Sonic accelerating past his max running speed while rolling downhill. I miss that classic Sonic feature!
The title should have been "I Recreated Sonic Adventure...Sort Of"
I love vomit camera! It's great for running on wall while keeping the sense of control.
Also congrats on 100k and awesome new intro
Hey I really liked this video. I love Sonic Adventure and I love that you attempted to understand how those games work on a gameplay level. Also ya I have been forgetting to subscribe. Changed that now, newly subscribed!
110% agree that Sonic has never controlled better in 3d than in SA1. Amazing how they got it so right on their first try. Sonic had a rough transition to 3d, my ass.
Definitely please continue making videos like this. As a (non-game) developer, this is super interesting!
SA1 is basically the best way Sonic has controlled in 3D in my opinion so it's nice to see you try and recreate it
If you remake the whole Sonic Adventure with some extras and put it on consoles, I will definitely buy this game, no matter the cost.
I just discovered this channel and I have to say. Its very interesting. I really enjoyed the video! Keep up the good work! I even learned a few new things with coding as well!
Well technically Sonic Frontiers has uptight camera too when going through loop de loops.
But in the short gameplay clip you showed of Frontiers, that was a section that can be bypassed when running towards it from the opposite direction, as that doesn't have the dash panels that would trigger the camera to stay uptight.
Because dash panels, and sometimes springs in Frontiers normally act as triggers for initiating some degree of automation when running through the loops in Frontiers.
Like zooming out the camera slightly, keeping it uptight and locking Sonic between invisible walls as to not bounce from wall to wall when running through them.
Adventure 1 & 2 also had this, but didn't always use the dash panels as the trigger factor.
Instead opting sometimes for some kind of invisible checkpoint, and using multiple during long loops or corkscrews to prevent players from accidentally fall off.
This is actually really cool. I've always wondered how sonic games were made in the code, so seeing a game development approach to the inner workings of sonic games is very interesting to me
This is so perfect and accurate! The only thing I’d say needs to be changed is fixing the Spin-Dash animation to be offset towards the center of the model and not the base. That and a homing attack might make this as close as possible.
This video was really cool and insightful! Nice work Chaomix!
I think it would be really cool if you shared the code you made here for other fan games to use once it's more refined. I really think you nailed the coding here. This really sparked something in me.
15:18 many fangame creators should do that more often, you should release the game once its fully done, its truly a better engine than most Unity engines
Dude you are by far the best Sonic TH-camr and you definitely deserve 1m!! Keep it up!
This is actually super impressive, well done!
Watching you do this was fun because I've made similar character controllers and...
You got great humour out of the mistakes I make every single time... even after learning solutions.
you should open source this, id love to see your code for doing some things
Holy shit this is something that'd be SO awesome work on.
YOOOOOO IT'S RUBY THE!!! SA2 ESSAY GUY!!!
can’t wait for this to be finished! I hope a new model and animations that are brand new are implemented, this includes you sonic team
I'd love to see this continue! I love creative stuff like this.
Thank you, Chaomix. For making the best Sonic game of all time, You've come a long way from making youtube videos. Hope your job at Sonic Team goes well!
EDIT: DONT EDIT YOUR COMMENT IT MAKES THE HEART GO AWAY
who gon tell him
when you edit a comment the heart gets removed@@sunkafunka9935
Note for future reference: editing your comment removes the heart 😅
I learned that the hard way :(
Aw...
@@sunkafunka9935 damn
I'm currently learning Unreal. Hopefully this can help me as well!
I'm a game dev myself and as a fellow Sonic fan this video just made my day! Thank you Chaomix this was a very intersting reverse engineering video. Also if you continue this controller I would love to see the adventure homing attack and the bounce bracelet or the adventure grind. These were the peak
Damn bro, this is great! I never really questionned what went into the games' programming...
This is amazing! I know its really from sa2, but i think grinding mechan8cs woupd be good next. Dont want to let those soap shoes go to waste
Awesome video! I hope indie devs one day make something just like Sonic Adventure 1 again; the multiple characters and play styles, the combination of realistic and cartoon y graphics, the speed, the set pieces and exciting level design, the ambitious stories, the legendary soundtracks....
The closest I've seen is spark 3, but even that lacks a lot of what I just described. The music is good, but the art style is still too cartoon y, and the levels don't feel the same because there's a lack of big set pieces like you'd see in both adventure games' levels.
This is super impressive... Looking back at adventure it's still so charming how naturally the original physics are implemented, it just feels right
Awesome video! This reminds me a lot of when I recreated Half Life 2's game feel for a game project back in college. A whole lot of trial and error, plus comparing the game in another window
now this is truly my new favorite channel to watch when i get home :D
12:14 i can imagine the speedrun trick possibilities. instead of disabling ground collision you should just set his state to falling (though at the same time speedrun tricks are fun and cool)
but yeah would be cool to see this turn into a small game of sorts
This is EXACTLY what I was looking for! I'm currently working on a 3D Sonic Fangame about Silver and I'm working on making the movement Adventure-styled. Thanks!
Make it so that he can monkey ***** blaze down !! “There’s no use”!! Revealing her thong
probably the most accurate sonic adventure physics in unity since Sonic Onset Adventure on roblox
This is dope! Gives me a new respect for the complexity of the movement in the adventure games
This is actually pretty impressive! I've been seeing alot of people trying to recreate their favorite games lately. I wonder if someone will recreate the gameplay of the console platformers of the Klonoa series at some point? Hmm...