Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

2D All the way! / Street Fighter games: Where to start?

Author
Message
Sho Ryu Ken
20
Years of Service
User Offline
Joined: 26th Jul 2005
Location:
Posted: 1st Oct 2005 23:02
Hey, I wondering how to do a Street Fighter game. You know, like Marvel vs. Capcom and stuff. Except w/out the tag-team stuff. I can easily do stuff like moving, jumping, etc. But I want to know how to the more complicated stuff, for example the combos, beam supers, collision (you can't get punched if you touch your opponent's back for example), and just super moves in general. Also balancing stuff... You know, like not giving one character too many moves and making them too powerful. So basically, how do I do this kind of fighter.

BTW I have seen the MK fighter posts but Capcom (Street Fighter) ones are completely different. If you don't know what those games are like try using MAME or something.
Krimzon DestinE
20
Years of Service
User Offline
Joined: 18th Sep 2005
Location:
Posted: 10th Oct 2005 05:07
Marvel vs. Capcom 2, Capcom vs. SNK 2, and Super Smash Brothers are the three most bestest greatest fighting games ever!!! I was just thinking, why hasn't anyone made a good 2d fighter in DarkBASIC yet. Good luck dude! BTW, I wonder if M.U.G.E.N can be remade in DarkBASIC?!?!??!?!
MiR
22
Years of Service
User Offline
Joined: 13th Jul 2003
Location: Spain
Posted: 10th Oct 2005 13:21
Quote: "I was just thinking, why hasn't anyone made a good 2d fighter in DarkBASIC yet"

Because it takes alot of work to make a good combo system and even then you have to have an imense talent to draw all the sprites.

My signature has been erased by me because it's LARGE.
Thank you for the votez!1!
Van B
Moderator
23
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 10th Oct 2005 14:32
It's really a bigger 2D media concearn than a coding one, coding a 2D fighting game is about as complex as your media.

Like collision, even punching and kicking collision is easy when you look at the big picture.

Every sprite in your game should have an overlay sprite telling it what does what. Like it might be a memblock, or an array, but you need to be able to specify the property of each pixel so you can set the attach points and collision points. Imagine each sprite has a copy of itself, but maybe it looks more like a heat sensor image, where the vital areas like the head and chest are brighter to show that a hit there will inflict more damage. You also need to be able to set hot spots on the attacking limbs, like on a punch, it's fairly easy to see where the hot spots need to go - these are cross referenced with the enemies body map and bob's your uncle - all the heavy work is done in an art package. Varying levels of hot spot are needed too, like with a kick, there might be a time when the knee can cause damage, like when you kick really close to the enemy, the knee might do some damage. This method would allow enemies to reveal weak spots now and then, like maybe they stand and mock you, then a roundhouse kick to the back of the head would do severe damage and ultimately make for a more interesting game.

The system to handle the frames might be the toughest part to code, but really, if someone gets the media together then there's no reason why they can't make a cool fighter game in DBPro.


Van-B

Put those fiery biscuits away!
MiR
22
Years of Service
User Offline
Joined: 13th Jul 2003
Location: Spain
Posted: 10th Oct 2005 19:42 Edited at: 10th Oct 2005 19:42
mmm. Varying damage depending on the area hit? There´s an idea. I thought this was too much to calculate though. It´s slow enough having pixel perfect collision on an overlay sprite, let alone having to check the level of damage. Then again the main performance hit is making the memblock from the image in realtime, checking for collision is actually realy fast. It would be a lot less bother and would probably give the same results to have the moves give more or less damage depending on where they generaly hit given the speed of 2d fighting games. If you have a system with low and high kicks/punches then the lower ones don´t tend to hit people in the head and vice versa.

My signature has been erased by me because it's LARGE.
Thank you for the votez!1!
Van B
Moderator
23
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 11th Oct 2005 10:27
Nah Mir, you would'nt check anything in realtime - you'd store each set of overlays in an array, like say your character used 128x128 pixel sprites, you might take all those sprites and chop them downto 32, which is reall fine for this sort of thing. So with an array'd version of all your sprites, all you have to do is crossreference both current sprites and see where the hotspots have landed, and also check for collision - if there's a collision you just restrict movement, like so you can only step back from the enemy.

If someone has some sprites going begging I'd be happy to make a little example (ohh, if anyone had some full sets of streetfighter sprites, that'd be ideal).


Van-B

Put those fiery biscuits away!
MiR
22
Years of Service
User Offline
Joined: 13th Jul 2003
Location: Spain
Posted: 11th Oct 2005 16:32 Edited at: 11th Oct 2005 16:37
Quote: "If someone has some sprites going begging I'd be happy to make a little example (ohh, if anyone had some full sets of streetfighter sprites, that'd be ideal).
"

mmm. Well if you don´t mind making an example I released some unused dark fighter 2 sprites you can use.
http://forum.thegamecreators.com/xt/xt_apollo_download.php?i=465793
My brother knew a site that hosted quite a lot of the street fighter sprites. Though he didn´t seem to keep any bookmarks of the place. I´ll ask him when I see him but I haven´t spoken to him much recently so god knows when that will be.

Edit: In the meantime I found this site. It has a few animations. http://www.geocities.com/alpha96_ex/index-2.html

My signature has been erased by me because it's LARGE.
Thank you for the votez!1!
MiR
22
Years of Service
User Offline
Joined: 13th Jul 2003
Location: Spain
Posted: 11th Oct 2005 17:43 Edited at: 11th Oct 2005 20:48
I know I should edit but sometimes people can miss edits. I´ll risk the n00b slap.
My bro was online and gave me the site with street fighter sprites.
http://www.gsarchives.net/index2.php
Check out the guilty gear ones aswell. So beautiful.

My signature has been erased by me because it's LARGE.
Thank you for the votez!1!
Van B
Moderator
23
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 12th Oct 2005 10:23
Cool Mir, I'll see what I can come up with over the next couple of days.

Don't worry about being slapped, it'd be a helluva miserable mod that slapped someone for not editing a post!.


Van-B

Put those fiery biscuits away!
Van B
Moderator
23
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 12th Oct 2005 15:42
Ahhh!!! - check this site out, some awesome SFII sprite sheets, gonna make a little clone I think to show what I'm mangling on about.

http://members.tripod.com/~foxmagexl/spritesheets.html


Van-B

Put those fiery biscuits away!
MiR
22
Years of Service
User Offline
Joined: 13th Jul 2003
Location: Spain
Posted: 12th Oct 2005 21:47
Quite alot for Ryo. I wonder why they insert those chibis ramdomly through out the animations though
Quote: "gonna make a little clone I think to show what I'm mangling on about."

If you get stuck with anything have a look at the dark fighter code to see how to not make one (spegetti code galour).
I´ve been thinking abot your idea and it seems that I´ll have to make an editor to make the arrays or I could spend all day hand coding all the thousand or so overlays for collision.

P.S The best animations by far are the ones from street fighter 3rd strike from the dreamcast. There are so many frames it brings tears to your eyes looking at them. Some have 300 frames or so. Ok so some of them are repeated of course bet still it beggers beleif looking at them. Elena´s are probably the most impressive but I have a feeling they are traced.

My signature has been erased by me because it's LARGE.
Thank you for the votez!1!
Van B
Moderator
23
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 13th Oct 2005 11:01
My idea is that as much as possible will be done in an art package. Like each sprite sheet will be an entire character, and there'll be an overlay sheet to go with each character too, signifying the hot spots for every sprite - this will be edited in an art package, most likely edited as a seperate layer then saved out to .bmp. The easiest method and the cleanest is to use a set size of sprite, so the sprites will be on a grid, and then the engine will cut them out, analyse the overlay and put the required data in the array. Then it's a worry on how to animate, but really these games like a set frame rate (like 50 fps) so I'd use arrays for the animation loops too at a constant speed. So slower animations might use the same frames over and over, but it'd still be possible to have fast animations too because the frame rate is set.

Once the characters are on screen and can move about, it's a matter of handling the moves, which is not too difficult, and cross referencing the player and enemies overlays to check for collision and hits.

This is how I decided I'd do it when the original Street Fighter II arrived, and I haven't thought of an easier method yet . It would be really cool to be able to add any character using just the sprite sheet and overlay (to make a mad Capcom Vs style game) - I suppose stringing the animations together will be the telling part.

I'm probably gonna nab the full sets from that site and see what I can do with them - the animation sets are manageable right now, but folk with more time should be able to adopt really smooth animation sets instead.


Van-B

Put those fiery biscuits away!
X_MEN
22
Years of Service
User Offline
Joined: 14th Sep 2003
Location:
Posted: 15th Oct 2005 11:50
i will try to make one

You can do it if you try
MiR
22
Years of Service
User Offline
Joined: 13th Jul 2003
Location: Spain
Posted: 15th Oct 2005 22:19
VanB: mmm. I´m going reread what you´ve said a few times but I think I mostly understand. Personaly I think your method is a bit beyond me right now but I´l attempt and see what happens.

My signature has been erased by me because it's LARGE.
Thank you for the votez!1!
Sho Ryu Ken
20
Years of Service
User Offline
Joined: 26th Jul 2005
Location:
Posted: 19th Oct 2005 01:49 Edited at: 19th Oct 2005 04:19
Can you guys explain memblocks to me? I really don't know what those are. For what I wanna do, if I could find some way to have the program detect colors on a hidden overlay sprite, I could make each arm, each leg, the body, and the head different colors. I could use this to determine what colors hit (when attacking) to a similar effect as above but simpler.
And also I could find what colors are hit and make little "hit explosions" and their "laser hit" variant, you know, like the weird little energy crescent shaped bursts when you hit an enemy with a Shinkuu Hadouken. And make them appear at the right general location.
Sho Ryu Ken
20
Years of Service
User Offline
Joined: 26th Jul 2005
Location:
Posted: 19th Oct 2005 01:58
Another thing I was thinking was combining Street Fighter, Samurai Shodown, and Mortal Kombat. It would be like the "Isms" in Street Fighter Alpha 3 or Slash/Bust in Samurai Shodown. With each character, you could pick one of three fighting styles. You could do "C-Type", "M-Type", and "S-Type". Each type plays differently. C would play like SF (C as in "Capcom"), M would play like MK (M as in "Midway", not "Mortal"), and S like SS (S as in "SNK", not "Samurai"). Of course, each of the three would be like an alter ego of each character. It's a bit complicated but seems cool.
Van B
Moderator
23
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 19th Oct 2005 10:32
I'm determined to make a good example for you guys with a lot of the complex stuff done for you, like using the overlay sprites. I got as far as the animation editor, that works a treat - but one major ugly hurdle is that I can't find any complete sets of animations, like there's no walking on any of the ones I found, and most of them ignore punching moves for the elaborate kicks from SFII characters.

I'd rather take a step further back and show you the example using a full set, and the best set I can think of is IK+, the animation system I devised would support the slower smaller sprites of IK+ but also allow big sprites too, I think that's the best way for me to get it finished. I prefer IK+ to SFII anyway, 3 way karate rocks .


Van-B

Put those fiery biscuits away!
X_MEN
22
Years of Service
User Offline
Joined: 14th Sep 2003
Location:
Posted: 20th Oct 2005 21:13
Van B
why overlay sprites? there is a much Simpler way to do it

You can do it if you try
NanoBrain
21
Years of Service
User Offline
Joined: 20th Jan 2005
Location: Portland, OR
Posted: 21st Oct 2005 07:28
X_MEN,

How about an example?



+NanoBrain+
Van B
Moderator
23
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 21st Oct 2005 10:19
Not when you consider that the overlay sprites will look after attack positions too - it's the only way to set the attack spots as well as the damage level and collision handling. Looking for more than just collision from these sprites, they'll have to work harder than that .


Van-B

Put those fiery biscuits away!
MiR
22
Years of Service
User Offline
Joined: 13th Jul 2003
Location: Spain
Posted: 21st Oct 2005 17:49
mmm. On that site I gave you the link to they have Alex walking forward and backward. (dreamcast/street fighter 3rd strike/animated/playable/near the top) He also has the basic punch move (they call it jab). So he looks usable. The anmations aren´t in sprite sheet form though. If you tell me what sheet form is (I´m guessing an image containing a big line of frames for each of the characters moves so that there´s 1 image per move rarther than hungrreds of images) I´ll pass them to that if you like.

My signature has been erased by me because it's LARGE.
Thank you for the votez!1!
Van B
Moderator
23
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 21st Oct 2005 18:10
Mir, If you could get the sprites onto a single bitmap that would be great. The way I've arranged it so far is to have a big bitmap, 1024x1024, and the sprites are a maximum of 128x128, on a grid on this big bitmap, in other words 8x8 sprites.

The animation system will look after offsetting the sprites, so just worry about getting each sprite in it's 128x128 space.

I'd do this myself but unfortunately I have no home internet (still) and I've also left my usb drive at home .


Van-B

Put those fiery biscuits away!
MiR
22
Years of Service
User Offline
Joined: 13th Jul 2003
Location: Spain
Posted: 21st Oct 2005 19:04 Edited at: 21st Oct 2005 19:05
Right I´m on the case. It will take a while as they are 120 by 122 each which makes things dificult.

Edit: Do you want idle in there aswell?

My signature has been erased by me because it's LARGE.
Thank you for the votez!1!
MiR
22
Years of Service
User Offline
Joined: 13th Jul 2003
Location: Spain
Posted: 21st Oct 2005 21:14 Edited at: 21st Oct 2005 21:14
mmm. I have a problem with the punch animation. It is bigger than 128x128. I´ve had a look at all of his attacks and they are all wider than 128. If you want the punch animation I could provide it seperatly at 256x256 or make all of the frames 256x256 . Anyway, here are the walk forward, backwards and idle animations. Frame 1 to 14 is walk forward, 15 to 28 is the backwards animation and 29 to 40 is idle.

My signature has been erased by me because it's LARGE.
Thank you for the votez!1!
BlinkOk
22
Years of Service
User Offline
Joined: 22nd Oct 2003
Location:
Posted: 22nd Oct 2005 09:29
wow! this is one interesting thread. great stuff. is there some sort of basic set of animations for a character? i know they all have a special attack but i'm thinking the basic set of animations is;
walk forward
walk back
punch (middle attach)
air attack
crouch attack
special attack
idle
intro
fail
success
should there be any others. i mean in general?

P4 2.8Ghz, 2Gb, 128Mb Radeon Pro, Dark Basic PRO
MiR
22
Years of Service
User Offline
Joined: 13th Jul 2003
Location: Spain
Posted: 22nd Oct 2005 19:12
Well there are 2 types of fail. One where fall down (and have to get up again-can double up as the final death and just put in slow motion) and one where the character just flinches and steps backwards. Of course if you have kick then you have to add air/crouch/stand versions. Have a look at the dark fighter characters to see all the bear bone animations needed in a fighting game.

My signature has been erased by me because it's LARGE.
Thank you for the votez!1!
Van B
Moderator
23
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 24th Oct 2005 13:34
Ahh Mir, looking good - damn they used a lot of frames!

One thing, the system could be bent to take bigger sprites, so how about if you layout the bigger sprites on another bitmap, like use more than 1 bitmap for a character. I'm not sure a double size bitmap would be a good idea, so how about putting 256x256 sprites onto a bitmap in rows of 4x4 - so the bitmap stays the same size, the grid size doubles though, and we go to 16 sprites per bitmap. The bitmaps load sequence etc will have to be set in a little setup file for each character, so no need to worry if things get complicated.


Van-B

Put those fiery biscuits away!
MiR
22
Years of Service
User Offline
Joined: 13th Jul 2003
Location: Spain
Posted: 24th Oct 2005 18:24
Well here´s the punch move in 256x256. He looks so small. Any other animations you want in?
Quote: "damn they used a lot of frames!"

Hell yes. That´s the best animated game I´ve seen really.
Quote: "The bitmaps load sequence etc will have to be set in a little setup file for each character, so no need to worry if things get complicated.
"

Ah. I see. This all sounds very pro.

My signature has been erased by me because it's LARGE.
Thank you for the votez!1!
Van B
Moderator
23
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 25th Oct 2005 10:24
Quote: "Any other animations you want in?"


Nah, that should be fine, I just need enough to get the character moving and hitting - anyone interested in the little fighting engine would have their own plans for characters anyway, perhaps once it's done you could have a go at adding more sprite sheets and moves to test how tricky it is to use the animation setup thingy.


Van-B

Put those fiery biscuits away!
MiR
22
Years of Service
User Offline
Joined: 13th Jul 2003
Location: Spain
Posted: 25th Oct 2005 22:50
Quote: "perhaps once it's done you could have a go at adding more sprite sheets and moves"

Ok. I´d love to have a play. Anyway. I need an excuse to use my copy of DBPro.
If you want to see some nice sprite work my bro found some guilty gear sprites. http://ggxlol.highervoltage.net/ I´m just seeing if any of them is usable for when I get to play around.

My signature has been erased by me because it's LARGE.
Thank you for the votez!1!
Sho Ryu Ken
20
Years of Service
User Offline
Joined: 26th Jul 2005
Location:
Posted: 27th Oct 2005 00:46
What exactly is "Guilty Gear"? Is it a game or something? It looks cool, awesome spritework. But is this something custom-made or just sprites copied from a game? Because if this guy did make them himself I would like to see if he does "requests".
Sephnroth
23
Years of Service
User Offline
Joined: 10th Oct 2002
Location: United Kingdom
Posted: 29th Oct 2005 04:01
guilty gear is a really good fighter, except for some questionable characters. i have ggx2 for my ps2, very very good very nice animation too.

They made a guilty gear asura (i think thats what its called?) that looked pretty nice, but it was a xbox game and i dont own one --;

Login to post a reply

Server time is: 2026-07-06 15:44:15
Your offset time is: 2026-07-06 15:44:15