So, a group I’m part of is now up to the task of creating a fighting video game on their own. This video game will be “made from scratch,” so-to-speak. This thread will discuss our ideas, progress, news reports, and other such things for such a project. First up is to get something to show up on-screen. Stay tuned here for an initial start program that we’ll have up shortly. (Possibly as a video-link of the demo.) If you have any questions, comments, or praises/gripes regarding our ambitious endeavor, please feel free to post them here also.
If you want to post your own ideas on how to do such a thing, post those too! :wgrin:
First and foremost, I heavily advise OpenGL as it’s the least resource heavy, and at the same time most compatible when it comes to platforms.
As for a graphics engine, I’d advise 3d. 2d is much more time consuming on animating everything in comparison to 3d these days(it was very well noted by BB’s designers), and honestly a lot can be done with 3d.
When you get the actual video engine(should be top priority, all the ideas in the world mean nothing if you can’t output them onto the screen), then we should be of more assistance.
I dislike opengl personally, I just don’t like the way you push/pop matrices from a ‘stack’, I just find directx in general easier/more intuitive to work with.
We’ve settled on C/C++ for the underlying game engine. That way, this thing’ll run “off-the-bat” on most PCs without needing extra stuff just to get it to run. The goal is to make it just like any regular program on your personal computer. We will see what is the best for doing something as simple as a “2-D sprite-based videogame” – DirectX’s DirectDraw, maybe?? Other options could be SDL or Allegro. OpenGL is a possibility, too. Not too sure of what we may even use for sound right now, but we’ll see, err…rather “hear” (hehe) when we get to that point in game development regarding sound playback.
Hopefully, we can get a videofile of a working demo in the next couple of days or so.
I highly recommend fmod, you can get it fully working in a day if you want, it’s super super easy, and very robust. You can implement 3d sound with it, choose which/how many channels you’ll use for sound(or let fmod handle it for you).
I strongly recommend creating an editor where you set up animations and hitboxes/attackboxes for them, as well as other stats like invincibility frames or super armor frames.
I am actually working on a game myself. I’ll show you guys once I get a good alpha going… Two characters done so far.
A friend of mine is currently working on a 2D fighter with a small team and I’ve been watching their progress too. From what I’m told, it’s good if you pick an artist who also knows a little bit about programming. That way, you can make sprite editing tools for your artist/designer and let them take care of hitboxes and such by themselves. It’ll make things go much smoother.
i would think it would be better to keep hitboxes on the programming side, they are something that needs to be tweaked and changed for balance purposes, not artistic. As long as the box is vaguely in the right place for the animation the players won’t care.
But it’s usually the animators who design the character attacks, and therefore they often have the best idea where the hitboxes should be placed and on what frames.
Like I said, get an artist who understands some programming and who understands how fighting games work. It will increase successful communication greatly.
I haven’t actually made a fighting game(i’ve made other games though), but i’d probably make rough sketches of the attacks, then build and start balancing the hitboxes long before the animations were actually in the game.
Of course getting artists who understand even a little programming would be a huge boon, I hear nothing but horror stories of working with artists no matter how good/experienced they are if they haven’t worked on a game/with programmers before.
If it’s the artist who’s also the game designer, then supposedly it is a lot better than a designer who doesn’t know how to animate and who will need to keep bothering the artists and programmers to get them to sync with each other.
And yeah, in early testing of the game, it’s best to work with incomplete sprites and sketches or even stick figures so that the characters can be drafted as fast as possible.
The reason why we chose a 2-D “sprite-based” display method instead of 3-D polygon-based rendering was because of our realization that we simply know a lot more 2-D artists than we do 3-D modelers. And of those 2-D artists, there are more ‘average’ to ‘above average’ quality 2-D artists (that we would really like to work with) than there are ‘average’ or even ‘above average’ quality 3-D modelers, which, unfortunately, is much more rare for us to find at the moment. :sad:
Also, for a group possibly making its first fighting videogame, some things in 2-D will be easier, we think, to get up-and-going rather quickly (ex: hitbox collision detection is pretty straightforward: just compare two pairs of quad-XY-coordinates as opposed to comparing X-Y-Z coordinates of certain body parts of two 3-D character models).
The 3-D idea isn’t entirely “not an option,” but possibly one we could explore once we mastered getting a fighting video game in 2-D first.
spheres are really easy to do in 3d. to check for sphere collisions you simply add the radius of sphere 1 to sphere 2, then do a point vs sphere test(which is basically trivial). Of course your team should do whatever they feel comfortable with, I personally think sprites are better than 3d models if you can do them. Sprites are timeless, if htey look good now they will always look good, models on the other hand get outdated very quickly.
A test video of the very basic sprite display system in action : [media=youtube]pVqQ_QvgfR4"[/media]
Now, just to let you know, don’t expect an E3-quality demo here. It’s just something to show that the sprite system works. So, think of it as a pre-pre-pre-pre-Alpha (hehe). :lol:
Actually, show something like this to a publisher on Milestone 1 & you may get fired.