Having medusa head like enemies, or enemies that just fly around in a certain pattern is a great idea for mushido. Theyre extremely easy to animate, they can be just 2 frames of a flying animation. And they would fit thematically since theres lots of flying bugs.
Looking good. Regarding a save/load system for behaviours, as someone who used to use a similar code generation technique in my own GameMaker project and eventually bit the bullet and created a proper data-oriented save/load system for entities (and a full Mario Maker-style level editor that has two-way live sync with my external tile editor) I regretted not doing it sooner as being able to develop your game in-engine and then hit CTRL+S and have it write my changes directly into the game files massively improved my iteration time. Idk if you'll see this, but if you do feel free to ask any questions.
Thanks for your perspective. I convinced myself this tool would be harder to make than it actually was, if I had known I'd have it up and running within a week, I probably would've tried the save/load approach to begin with. At the time it seemed like overcomplicating a problem before solving it. Now that the tool itself works I'll consider taking that next step. My priority right now is really content generation though, I'm a bit tired of working on systems and tools.
@@matthewmatosisextra You already have a live editor for actions, and the code you're generating contains all of information so no harm sinking your teeth into content creation as you always have the option to later add an export() function to your generated entities that dumps their behaviours to JSON/whatever and then rewire them to load that data in. Ultimately you just want a system that supports your design needs. Code generation was more than enough for my first project, but abstracting the behaviour data from the entities opened up some interesting design possibilities (entities that can learn behaviours from other entities, etc...) that I leveraged in later projects. The Behavioral Patterns chapter of Game Programming Patterns is a decent afternoon read that demonstrates a lot of different possibilities for entity-behaviour design.
A great rule of thumb for tweaking values is to use halving it or doubling it, basically binary search it first. Small tweaks work but it's a lot quicker to work that way in my experience. Something about how the human brain only recognizes changes that are a 10% difference from each other.
the fleas look pretty good now, i can start to imagine sorta how the game will look even with just this simple enemy. (I forgot if they're actually called fleas, they just remind me of fleamen in castlevania)
Another way to make changes in real time is to listen for changes into a file, with that you avoid having to build a UI to update your state without having to recompile
Acceleration gets applied to speed, you can think of it as a different way of modifying speed. If you're confused about the negative value, in some engines negative y values equate to upward movement. This can seem confusing because real-life graphs are typically drawn with y increasing upward. My understanding is that it's a popular standard for computers because screens are drawn with (0,0) being the top left pixel, so values increase as you move downward.
@@matthewmatosisextra what causes it to drop down then, if gravity is overriden by y acceleration(upwards)? As I understand it by the end of the curve y_accel is -7 which means it's accelerating upwards.
Check out the duration of the y acceleration, it's just 1 which means it only applies on the first frame. After that the default value takes over again. It's an easy detail to overlook, still catches me out sometimes, which is another reason I'm glad to have this tool now.
the input for the curve field in the ui should be a combo-box you can type in, but is also an organized dropdown with nested hierarchy to organize all the types of curves. but might be too difficult to implement if it doesnt exist in gamemaker
@@Stoonk Technically every engine is made for this since this every engine can do basic movement. I use Unreal and it's extremely easy to set up this kind of platformer, but he's gone to the trouble of making the equivalent of an animation graph in terms of functionality and a float/velocity modifier. That isn't standard practice for gamemaker; an engine typically used by armatures.
If you ever end up needing to make more tools like this I can't recommend Imguigml enough. It's an implementation of Dear Imgui for GameMaker and it's incredibly easy to set up for making quick UIs with buttons, sliders, text areas and etc.
The dilemma of watching more matthew content versus keeping the surprise for the full release
its a tool.
This is the microcosm of development that is kind of fascinating to see in application.
I’ve been eating a lot of beans lately and my ass is just blasting wind out now
An extremely clever system! You will be able to have a tonne of enemy variety with something like this, very cool!
Best Dwarf Fortress video I've seen yet!
Main title leaked, bigger deal than gta 6 leak
Having medusa head like enemies, or enemies that just fly around in a certain pattern is a great idea for mushido. Theyre extremely easy to animate, they can be just 2 frames of a flying animation. And they would fit thematically since theres lots of flying bugs.
This is a really cool system. You should be proud of it.
Looking good.
Regarding a save/load system for behaviours, as someone who used to use a similar code generation technique in my own GameMaker project and eventually bit the bullet and created a proper data-oriented save/load system for entities (and a full Mario Maker-style level editor that has two-way live sync with my external tile editor) I regretted not doing it sooner as being able to develop your game in-engine and then hit CTRL+S and have it write my changes directly into the game files massively improved my iteration time. Idk if you'll see this, but if you do feel free to ask any questions.
Thanks for your perspective. I convinced myself this tool would be harder to make than it actually was, if I had known I'd have it up and running within a week, I probably would've tried the save/load approach to begin with. At the time it seemed like overcomplicating a problem before solving it. Now that the tool itself works I'll consider taking that next step. My priority right now is really content generation though, I'm a bit tired of working on systems and tools.
@@matthewmatosisextra You already have a live editor for actions, and the code you're generating contains all of information so no harm sinking your teeth into content creation as you always have the option to later add an export() function to your generated entities that dumps their behaviours to JSON/whatever and then rewire them to load that data in.
Ultimately you just want a system that supports your design needs. Code generation was more than enough for my first project, but abstracting the behaviour data from the entities opened up some interesting design possibilities (entities that can learn behaviours from other entities, etc...) that I leveraged in later projects. The Behavioral Patterns chapter of Game Programming Patterns is a decent afternoon read that demonstrates a lot of different possibilities for entity-behaviour design.
A great rule of thumb for tweaking values is to use halving it or doubling it, basically binary search it first. Small tweaks work but it's a lot quicker to work that way in my experience. Something about how the human brain only recognizes changes that are a 10% difference from each other.
the fleas look pretty good now, i can start to imagine sorta how the game will look even with just this simple enemy. (I forgot if they're actually called fleas, they just remind me of fleamen in castlevania)
Is it just me or is placeholder character doing the dark souls 2 handed greatsword guard pose?
Another way to make changes in real time is to listen for changes into a file, with that you avoid having to build a UI to update your state without having to recompile
On 28:30 - how come the character moves up during the jump if it has no initial y speed, only negative y acceleration?
Acceleration gets applied to speed, you can think of it as a different way of modifying speed. If you're confused about the negative value, in some engines negative y values equate to upward movement. This can seem confusing because real-life graphs are typically drawn with y increasing upward. My understanding is that it's a popular standard for computers because screens are drawn with (0,0) being the top left pixel, so values increase as you move downward.
@@matthewmatosisextra what causes it to drop down then, if gravity is overriden by y acceleration(upwards)? As I understand it by the end of the curve y_accel is -7 which means it's accelerating upwards.
Check out the duration of the y acceleration, it's just 1 which means it only applies on the first frame. After that the default value takes over again. It's an easy detail to overlook, still catches me out sometimes, which is another reason I'm glad to have this tool now.
@@matthewmatosisextra ok, thank you for the explanation :)
discussing this seems to help you and teach us
Its the only time he ever "works" on it
Matt, please tell Leah that the animations for the little flying enemy are looking great!
yes!
the input for the curve field in the ui should be a combo-box you can type in, but is also an organized dropdown with nested hierarchy to organize all the types of curves. but might be too difficult to implement if it doesnt exist in gamemaker
Amazing how much work you're doing for the game maker engine
This is basic platforming exactly what game maker engine is made for. The impressive spritework is just his gf
@@Stoonk Technically every engine is made for this since this every engine can do basic movement. I use Unreal and it's extremely easy to set up this kind of platformer, but he's gone to the trouble of making the equivalent of an animation graph in terms of functionality and a float/velocity modifier.
That isn't standard practice for gamemaker; an engine typically used by armatures.
@@thelawgameplaywithcommenta2654 Looks like he has quite a lot of progress to show for it after over a year of quitting videos and working on this
Ooh, this is pretty neat.
Dev Room hype
yuhhh
cute flea
second
If you ever end up needing to make more tools like this I can't recommend Imguigml enough. It's an implementation of Dear Imgui for GameMaker and it's incredibly easy to set up for making quick UIs with buttons, sliders, text areas and etc.
yes!
yes!
yes!