I've released a video of what I got so far for my new game. Figured maybe you guys might wanna check it out, so here it is:
And if you guys wanna share it on tumblr...
Happy watching! :D
Any feedback is good feedback!
Xen Assault - 4 Player Megaman?
Xen Assault - 4 Player Megaman?
http://cyanamazing.tumblr.com/ <-- check out my awesome games here!
Re: Xen Assault - 4 Player Megaman?
Not bad. Physics look good. (That sudden drop from some jumps is supposed to happen, right?)
Re: Xen Assault - 4 Player Megaman?
Thad wrote:Not bad. Physics look good. (That sudden drop from some jumps is supposed to happen, right?)
Yeah, there's a fast fall button.
Also, the blog has a "Reblog" button now. it was a whoops that it didn't before, lol.
http://cyanamazing.tumblr.com/ <-- check out my awesome games here!
Re: Xen Assault - 4 Player Megaman?
One way platforms are go!
http://cyanamazing.tumblr.com/ <-- check out my awesome games here!
Re: Xen Assault - 4 Player Megaman?
Movement looks a bit too slow and floaty in the youtube video, and movement looks a little too linear in the avatar.
Are you using acceleration and deceleration or just constant velocity?
Take a look at some other platformer jumping physics.
Are you using acceleration and deceleration or just constant velocity?
Take a look at some other platformer jumping physics.
Re: Xen Assault - 4 Player Megaman?
sei wrote:and movement looks a little too linear
Could you explain this a little better?
I've been hearing too floaty a lot, but there is a fast fall button, so I think that'll negate the complaint. I'll have to release a demo to know for sure though.
The movement is just like x += speed; pretty much. No velocity, as I feel that'd be out of place in a MegaMan style game.
http://cyanamazing.tumblr.com/ <-- check out my awesome games here!
Re: Xen Assault - 4 Player Megaman?
Fastfall won't fix it. Your basic jump is general. Fastfall is situational.
The "linear" comment is in reference to there being an up velocity until you hit your peak, then a down velocity until you land out. It doesn't feel like there's gravity accelerating the sprite. The acceleration/deceleration is instantaneous and feels unnatural.
Look at Mega Man 3, for example. The blue bomber's vertical velocity seems to slow near the peak of his jumps.
You should also add a straightforward running jump+landing to your demo, and a jump where the character stops early or adjusts/reverses trajectory.
Shitty mspaint aside, I think your jump probably looks more like the left than the right, but there isn't clear enough footage to be sure.
The "linear" comment is in reference to there being an up velocity until you hit your peak, then a down velocity until you land out. It doesn't feel like there's gravity accelerating the sprite. The acceleration/deceleration is instantaneous and feels unnatural.
Look at Mega Man 3, for example. The blue bomber's vertical velocity seems to slow near the peak of his jumps.
You should also add a straightforward running jump+landing to your demo, and a jump where the character stops early or adjusts/reverses trajectory.
Shitty mspaint aside, I think your jump probably looks more like the left than the right, but there isn't clear enough footage to be sure.
- Spooky Skeleton
- Posts: 359
- Joined: Sun Aug 16, 2015 10:54 pm
- Location: The Fabled Canadas
- Contact:
Re: Xen Assault - 4 Player Megaman?
How are your jumps done? Like what makes the player come down after they go up? It doesn't seem like there is much - or any, really - acceleration happening when you jump. The character just goes up at a set speed and then comes back down at the same exact speed they went up, just a reversed velocity. That's why people think it feels "floaty", the character doesn't appear to have any weight.
A better idea might be to immediately ( lets assume that up is +y for this) set your y velocity to some number when the player presses the jump button, lets call it JUMP_SPEED, and then every update, effect the y velocity with some set acceleration that we'll call GRAVITY. Just find a number for gravity that ends up working and feeling right for how you want your jump to be.
Also it's probably a good idea to set a "terminal velocity" of sorts. I dunno how much you know about real world physics, but stuff can only fall so fast on Earth before the amount of drag the air is putting on it, causes it to not be able to fall any faster. In platform games, I think it's usually better to make this cartoonishly slow unless your playing as a golem or something, or characters feel too heavy.
So basically something like this pseudo code here
and then
Where "detaTime" is time since the last update multiplied by whatever to get stuff moving at the speed you like.
Something like that. This will create what Sei is talking about with his lines because when you jump, GRAVITY will gradually slow your ascent until it zeros out at the top of the jump, and then you'll start falling faster and faster until you reach TERMINAL_VELOCITY.
A better idea might be to immediately ( lets assume that up is +y for this) set your y velocity to some number when the player presses the jump button, lets call it JUMP_SPEED, and then every update, effect the y velocity with some set acceleration that we'll call GRAVITY. Just find a number for gravity that ends up working and feeling right for how you want your jump to be.
Also it's probably a good idea to set a "terminal velocity" of sorts. I dunno how much you know about real world physics, but stuff can only fall so fast on Earth before the amount of drag the air is putting on it, causes it to not be able to fall any faster. In platform games, I think it's usually better to make this cartoonishly slow unless your playing as a golem or something, or characters feel too heavy.
So basically something like this pseudo code here
Code: Select all
jump()
{
if(canJump)
{
velocityY = JUMP_SPEED;
}
}
and then
Code: Select all
GRAVITY = some positive number
TERMINAL_VELOCITY = some negative number
update()
{
//other updateStuff
...
if(isAirborne)
{
velocityY -= GRAVITY * deltaTime;
if(velocityY < TERMINAL_VELOCITY)
{
velocityY = TERMINAL_VELOCITY
}
y += velocityY * deltaTime;
}
}
Where "detaTime" is time since the last update multiplied by whatever to get stuff moving at the speed you like.
Something like that. This will create what Sei is talking about with his lines because when you jump, GRAVITY will gradually slow your ascent until it zeros out at the top of the jump, and then you'll start falling faster and faster until you reach TERMINAL_VELOCITY.
Who is online
Users browsing this forum: No registered users and 1 guest