Super cool Mark, great idea to make a game about making games, would love to see more in the future!
Log in with itch.io to leave a comment.
The implementation of your mechanics are actually pretty important, as much as the settings. Nintendo's platformer's variable height works by partially decreasing the gravity as long as the jump button is held, giving it its moon-jump feel (and hence why the gravity feels heavier when you drop), while Meat Boy's gravity I believe is on a counter that you cut short by releasing, giving it that constant linear climb and sharp vertical control.
Floor deceleration is usually tweaked trough friction instead, with acceleration being reused to make you stop faster, to avoid that feeling of disconnection when you U-turns at low speed and your speed doesn't behave as you'd expect. That implementation means that deceleration is at least equal to acceleration (without using an initial impulse). Unless you are making some special ice physics for a curling stone !
What I'm missing is a way to describe why a lot of out-of-the-box-2D Simulated Physics platfomer games (Little Big Planet...) with continuous quadratic curves don't feel as good to play as the ones where the physics are discrete (arithmetic progression) or made up ; the jumps often just feels wrong. Like it goes "voof" instead of "boing". Are realistic forces the wrong way to handle acceleration in a way where you feel like you are in control ? Is it because the initial impulse for such a jump would not work in a realistic setting ? Or is there something in the continuous simulated implementation that makes it harder to tweak a specific behavior, like it's hard to make a rectangle wave with sinuses ?
Great addition. I understand why there weren't multiple implementations in this demo, but the specifics of how you handle non-full-height jumps in particular often inform the rest of your jump physics. Meat Boy, I remember reading somewhere, actually goes one further than what you described and will invert your y-velocity when you release the jump button to prevent the top of your arc from feeling floaty (as opposed to increasing downward acceleration).
As to why directly physics-engine based platformers don't feel quite right, agree that it's pretty hard to pin down. My guess is that objects and the player receive the same gravity in a physics engine to keep things consistent, but a natural-looking gravity for objects is too floaty for players and good player gravity makes the objects feel like they're on Jupiter. I'd need to experiment more though.
This is so cool! It's so easy to tweak a value, test, repeat. This is such an amazing tool for learning about the technical details of platformers. I personally learned a ton about acc/deceleration and jump arcs, which has always been a topic I was unsure about.
It was such a good idea to include those presets at the end. I spent a lot of the tutorial attempting to replicate the feel of various game characters, so having those presets was a ton of fun! It's very informative to see the numbers used to replicate these characters.
Thank you for making this. I came down with a pretty awful ear infection and was feeling pretty crummy. This was a great way to distract myself for a while.
Absolutely brilliant! The concept of an interactive essay is so unique and the execution is outstanding! Can't wait for more of your work.
Vertical scroll (present in "Juice" and settings tabs) is too slow. A single click of the mouse scroll wheel scrolls by a uselessly tiny amount.
Great job Mark, I think this is really interesting and even people who don't make games can really understand the basics. Great explanation and performance!
I'd like to report a bug tho, and it is that sometimes the double jump doesn't trigger. I couldn't find the exact reason but a lot of times i tried to double jump, kit just wouldn't do it.
Very cool! Minor bug report tho - if you're in toolkit mode, the spikes can't kill you, they just disable your jump until you exit
You should do a 3d platformer Toolkit
This is awesome! I do think the mario approximation is a bit off :P
i think it's because you lack a run button. no one plays the mario games without running
It would be nice to be able to skip the voice lines.
I love this!
Little bug: Somehow when I'm running towards a stack of 2 boxes and jump, I'm pushed backwards instead of being allowed to move towards the boxes and get on top of them.
53 acceleration, 16 max speed, 74 deceleration, 3.8 Jump Height, 10 Down Gravity, 0.2 Duration, 1 Air Control, 1 Air Brake, both checkboxes set to on, 5 Zoom, 2 Damping X and Y, 0.5 Lookahead, Ignore Jumps off.
It started before I changed anything in Assists (Only noticed after I unlocked the assists panel though)
Absolutely amazing work Mark!
This an educational masterpiece!
Absolute visual treat and a solid source of knowledge is what this is!
I have always thought of your channel as a source of game dev wisdom and great hints on how dem big boys doing it.
This is however another level. This is a brilliantly executed interactive tutorial!
Thank you for your effort and time dedicated to make this.
Fun tool, well done.
I felt like the jumping speed should not receive so much input from the running speed though. Jumping acceleration and de-acceleration are off.
This is so cool
My one problem is that "air resistance" (deceleration when you let go of the buttons) is lumped under the same control as "air brakes" (deceleration when you hold the backward button in the air). Some games have them very similar, some games have them far apart, and that's an important design decision!
Hi, it would be nice if you added also a linux version
I think it would be nice if you uploaded the controller script so that people could use the settings they make here and use it in there own games.
This is fantastic man, great job! Very helpful to be able to easily make these changes and see how it affects the movement. Wish I would have had this before making my first game but it will certainly help for the next one!
Pretty fun! Only problem I ran into is that double jump sometimes doesn't reset when you hit the ground. Very frustrating to commit to a jump only to realize afterwards that for some reason you don't have a double jump. Also the bouncy mushrooms feel waaay too inconsistent. Would have been nice if we could tweak that bit too
I fell victim to the double jumping suddenly not working as well. Thankfully dying resets it.
Edit: Spoke too soon. Lost double jumps at the end and nothing seemed to reset it. Could not explore the presets. :-(
This is super cool. I just recently got a job in game design and was trying to decide how to show off demos of systems for games. this is a really compact and polished way to do it! Thanks for the ideas. I love this.
The running setting should be applied even in the air state Mark!
This is absolutely incredible. I can't begin to describe how cool this is and how surprised I was to see it, but at the same time realizing this might be why you started making a game to begin with.
One thing I would very much like to see is the possibility to EXPORT and IMPORT your settings or any other means of sharing with a friend to test out and give feedback.
Would also be useful in educational settings as well. Being able to turn it in for an assignment.
So this is neat. I like the idea of giving viewers a chance to experiment without needing to make their own game and levels first. I took note of a few issues that I think could be improved.
First, some potentially bugs:
- Jumping into a platform puts you in a grounded state, even if you continue to travel up. They seem to try to push you to the top of them when normally they should act like a normal tile but only when you are entirely above them. (your collider bottom is above the platform's collider top)
- Jumping into a corner with the rounded corners option on gets you sort of stuck. I assume this Unity's collision system at work which you should really try to avoid as much as possible when focusing on precise movement, at least in my opinion.
Some other more game-feel stuff:
- The base movement speed is too high. The slider would lead people to believe they need to set it to a point faster than most plaformers have. Those that do let you run really fast typically have a dedicated run button so you can be more precise when you need. The levels are also not really built for that amount of speed. I settled at a speed of 8, which felt fine, though tbf I am more used to action platformers like Hollow Knight and Dead Cells.
- Speaking of, the numbers you use for the sliders don't make any sense. If I wanted to actually import these into a game, I wouldn't be able to. A standard unit like pixels and frames would be nice. Edit: I see a lot of comments suggesting an import/export feature for the stats. I wouldn't necessarily recommend it since it doesn't help anyone not using Unity. It also doesn't teach people how to implement it on their own, so they'd have to come back to this every time they want to change something.
- This one's a bit personal, but I put a lot of attention into how short hops feel in my games. I like when it's not visually obvious when I release the button, but in this game it is. It mainly comes down to the exact math that goes into how jumping works, and again, personal preference.
- I think air brake and air control could be the same variable. (aka Air Acceleration) The whole point is how well you can change your momentum in the air. Both variables accomplish that in different ways, but they also heavily rely on eachother. For example, if I turn air control all the way up and air brake all the way down, the air control has no affect at all. A single air acceleration stat would also be easier to understand for people who aren't used to complex physics engines.
- The ignore jumps camera setting just looks awful. I get the idea, but you shouldn't make such drastic camera movements or it's easy to lose your character. It also struggles with the aforementioned platform issues.
- You can't close the toolkit while the narrator is talking.
- Maybe this was outside the scope of the project, but I was hoping to see the dialog react to my settings. Instead, they give generic information on how the stats work AFTER I've been given the chance to figure it out myself.
Overall, I think this sort of thing has potential. It just needs some work. I will say, I find it weird that this was inspired by the Celeste video where they stated they used XNA specifically to improve their movement, and then you used Unity for this anyway. It was probably the better call for familiarity and so you could use webGL, but when I can clearly see some stock Unity problems like the rounded colliders, it does hurt a bit.
I could nitpick more, but these are what I found most obvious and/or most counterintuitive to the idea this is going for. If you can clear some of these up, I think you're good to go, and I would love to see this sort of thing expanded upon.
Air brake and air control are frequently separated in games because it allows things like having high break but low control to let a player slow down or stop with out letting them completely turn around and float off in the opposite direction.
This is amazing. I think that the next step could be implementing an export button which makes you download your settings in a file. Then a custom unity script to use the settings. That would be awesome
Interactive GMTK? What a time to be alive. This is such a great educational tool and will help many. I also learned a few new tricks. Thank you.
If I have to nitpick, it's a bit weird that the obstacles, torches, and windows are not attached to the wall in the castle section of the level due to parallax. It actually makes the section harder.
If you fall onto the spikes there is no way to respon the player.
I love the way you visualize the variables, it's very clear and a good tool to teach how the 3C works.
i can see someone speedrunning this already
this is insane.
Awesome game! Quick few things (I’m sure you’re working on/aware of!):
- Spike pits don’t function properly during “toolkit mode,” softlocking the player
- Controls aren’t really presented to the player
- No option to quit to the menu/desktop Besides those minor things, I had a great time!
This game looks amazing! It would be great if you would release the source code on git for people who want to work these features into their game!
I love how the game is beatable without ever changing stats, if one really wanted to... I don't recommend it tho >u<
amazing game, it teaches you a lot about how to make a platformer feel good to play. 10/10
This is fantastic ! What a brillant and inspiring tool .
Thank you so much for all the energy you put on your content, the quality is out of this world.
My first video game will have a character called Mark for sure.
Best regards from France.
Noticed a bug with the smooth corner blocks creating the Land audio without jumping, normal blocks aren't doing this however.
Amazing work! A very creative way to make game development more clear and interesting
Even as someone who's been making games for a while now, this is a really cool resource and I've ended up learning a LOT more than I thought I would. Thanks GMTK, Looking forward to the game jam!