Start up is how long it takes for your attack to become active. Each of these parts lasts a certain number of frames. All attacks are broken up into three parts – start up, active, and recovery.
But before we do that, I need to give you a brief rundown on the anatomy of an attack in a fighting game. Now, the final step, we need to actually create the hitbox at the right time during our attack. We do this by first checking to see if our hitbox variable does NOT equal -1. This is slightly different than the hurtbox code, in that we always want to make sure we actually have a hitbox in game at the time. Open the create event and add the following code. Add the create, step, end step, and destroy events to this object. Then create the oHitbox object and assign the sprHitbox sprite. Create a one-pixel sprite named sprHitbox and color it red.
Just like the hurtbox, we need to create a sprite and an object. The hitbox is what actually checks for collisions and determines what to do after a collision is detected. The setup required for a hitbox is pretty similar to that of the hurtbox, but it has a bit more going on. Now that we have our hurtbox, we need to hit it. It is a lot harder to hit something that is 2x2 pixels than it is 50x50 pixels. When play-balancing your game, there is really only one rule to consider for hurtboxes – The smaller the hurtbox, the better it is. Now you can see your hurtbox following the player around in the game. In this case, that is our oPlayer object.
When using other in this context, it is referring back to the original object this code is running from. Since we are using with we can also use other. So when we say with(hurtbox) we are updating the x and y position from that particular oHurtbox object that we have stored in our hurtbox variable. When you use with followed by an object name (or specific object ID) the code following runs as if that object were running it. Using with and other may be a new concept, so let me explain. This little chunk of code makes sure the hurtbox is following our player around. Add the create event, and add the following code. Create a new object, name it oHurtbox, and assign the sprHurtbox sprite to it. Now that you have your sprite, let's create the object. The alternative would be to create a custom-sized hurtbox sprite for every game object that might need one, which would be tedious and wasteful. We only need a single pixel because we are going to scale it to whatever size we need whenever we instantiate a hurtbox. Create a new sprite, name it sprHurtbox, make it just a single pixel, and color it green. If Makoto were to touch someone else's hurtbox with her hitbox, the other player would be "hit."įirst, we need a sprite for our hurtbox. The red rectangle is the hitbox of the attack, while the green rectangle is the hurtbox. This is an upward-angled punch used as an anti-air attack, hitting an opponent that is jumping at you. Here we see Makoto performing one of her special moves, Fukiage. See the example below from Ultra Street Fighter IV. In my opinion, fighting games offer the clearest examples of hitboxes and hurtboxes. I am going to be using fighting games as the main example for this entry. Whenever the two collide, we consider the attack to have "landed" and we apply its effect on the target. A hurtbox is usually associated with a character (or any other "hittable" object in your game). A hitbox is usually associated with some form of attack, and describes where that attack is effective. Hitboxes and hurtboxes are specialized collision checks (collision checks allow you to determine when objects come in contact or overlap). On the off-chance you're trying to make a game that looks and sounds and plays like an RPG Maker Game, but want to know if you should make it instead with Game Maker, then RPG Maker was your answer.Written in October 2017 by Nathan Ranney, the founder of game development studio Gutter Arcade. Neither is a bad tool, but one is better than the other in context of what you're trying to do. GameMaker is a collection of unparticular mechanics and features for you to paint on to a blank canvas of a new project while RMMV spits out a working prototype of what your game will be the moment you start a new project.Ī better question will get you more applicable answers, because I'm sure you figured this much out on your own already if you've seen the previews for both products on Steam Store alone. One is designed for a specific genre and requires way more work to reverse engineer than using almost anything else out there to make any other kind of genre than was designed for. I'm not trying to be facetious - but they really don't compare. Originally posted by ◢ k r i s ◤:They don't.