Update (5/27/2002)
- I'll be taking down the download of the game and the music file for now, due to the amount of downloads per day. If you want one, email me: hyunjincho77@yahoo.com.
- I am currently looking for 3D model artists and animators. This is not a paying job. Email me at hyunjincho77@yahoo.com if you are interested in it.
Version 0.1 (3/22/2002)
- Just released the very first version of Ignite. Everything is new.
- I haven't had the chance to write documentations on how to use IgnitED or GFSM. I'll write it after I get some chance to rest.
Version 0.1 (3/22/2002): Click here (3.3Meg) to download the zip file. It contains the binaries, data, and textures. Use Winzip or any similar applications to unzip.
New!
Background music add-on: Click here (3.4 Meg) to download the MP3 file. Insert this file into the Data directory described below.
DirectX 8.1 has to be installed. Follow this link to download: DirectXInstallation
If you want to have it extract to C:\ignite, type in C:\, because the directory ignite will automatically get created. Below are the files and the directories you should see under the root ignite directory.
--ignite--
|
|-- Freeimage.dll (image loading DLL from the net)
|-- game.ini (necessary INI file)
|-- GFSM.exe (the Graphical FSM editor)
|-- ignite.exe (the main game executable)
|-- ignited.exe (the editor executable)
|-- igniterGL.dll (OpenGL renderer for Ignite and IgnitED)
|-- ignites.dll (Scene graph DLL for Ignite and IgnitED)
|-- loading.bmp (background BMP during the load screen)
|-- Player1.cfg (Input configuration file for Player1)
|-- Player2.cfg (Input configuration file for Player2)
|-- default1.cfg (Default input configuration file for Player1)
|-- default2.cfg (Default input configuration file for Player2)
|-- Data (The directory that contains all the data files)
|-- Model (The directory that contains model files)
|-- Texture (The directory that contains all the textures)
Tampering game.ini, Player1.cfg, Player2.cfg, default1.cfg, default2.cfg, the files inside of Data directory, or the directory structure may crash the game. Leave them alone until I write a document on what the files do.
Ignite is a 3D fighting game for Windows 98/2K/XP, very similar to the Tekken series. The game resembles Tekken 3 more, since the environment does not have walls or obstacles like Tekken 4.
General Game Features:
- Developed in Windows 2K; targeted for Windows 98/2K/XP
- Uses OpenGL as its main graphics API, even though it's designed so that the renderer DLL could be switched out with a DirectX renderer.
- Uses DirectX components for streaming MP3 background music, sound effects, joystick and keyboard inputs
- Arcade-like tight controls
- Animation blending between moves, such as in a combo, for smooth transitions.
- Particle system effects
- Skydome
General Editor Features:
- Uses the game renderer and the game scene graph so that what you see is what you REALLY get.
- Multiple viewports as in 3D Studio Max with different shading options per viewport
- Trackball mouse interface for easier editing experience
- Imports AutoDesk's .3DS and Milkshape3D's .MS3D mesh files with skeleton support
- Forward kinematics keyframe editor with an animation bar
- User friendly skeleton manipulator
- Multiple animation editing capability
- Vertex weighting/blending editor
- Object-oriented bounding box editor
- Particle system editor
- User friendly graphical finite state machine editor for fighter's behavior
Gameplay Information:
- There are four input buttons: left punch, right punch, left kick, and right kick
- The fighter is free to move in 4 directions on the fighting ground
- There is no juggling system, but there is a chain/combo system. Look below for Cate's chains
Helpful Common Keys:
- Esc: Exit the game
- F1: Shows/Hide help screen
- F2: Show/Hide Frame Per Second (FPS) counter
- F3: Show/Hide debug window
- F4: Pause/Unpause game
- F5: Toggle wireframe/flat/shaded/textured modes
- F6: Toggle trackball/free/auto cameras
- F7: Enable/Disable floor reflection
- F8: Show/Hide particles
- F9: Lower music volume
- F10: Raise music volume
- F11: Enable/Disable Player1 blocking
- F12: Enable/Disable Player2 blocking
Legend:
L: Low, M: Mid, H: High, N: Neutral
f: Tap Forward, b: Tap Backward, u: Tap Up, d: Tap Down
F: Hold Forward, B: Hold Backward, U: Hold Up, D: Hold Down
1: Left Punch, 2: Right Punch, 3: Left Kick, 4: Right Kick
+: Moves must be done together
,: Moves must be done after the other
_: Or (When used between two moves, they are interchangeable)
pause: pause for 1/3 to 1/2 second.
General Movements:
N Stand Still *Neutral Standing High/Mid Guard* f Step Forward b Step Backward F Walk Forward B Walk Backward f, f Dash Forward b, b Dash Backward u Sidestep Clockwise d Sidestep C-clockwise U Sidestep Clockwise and Walk Clockwise d, pause, D Sidestep C-Clockwise and Walk C-Clockwise D_df_db Crouch DF Crouch Walk Forward DB Crouch Walk Backward Cate:
Offense Moves:
1 H Standing Left Jab 2 H Standing Right Jab 3 H Standing Left Roundhouse 4 H Standing Right Kick df+1 M Left Hook df+2 M Right Hook df+3 M Left Side Kick df+4 M Right Front Kick d_D+1 M Low Left Jab d_D+2 M Low Right Jab d_D+3 L Left Sweep Kick d_D+4 L Right Low Kick 1, 2 H, H 1-2 High Punches df+1, 2 M, H 1-2 Mid/High Punches d_D+3, 4 L, H Low Kick, High Kick d_D+3, d+4 L, L Low Kick, Sweep Kick d_D+4, 2 L, M Sweep Kick, Hook Punch d_D+1_2, 4 M, M Low Left/Right Jab, Front Kick d_D+4, 1 L, H Low Kick, Spin Punch df+3, 2, 1, 4 M, H, H, H Side Kick, Jab, Spin Punch, High Kick b+1 H Spin Punch
The below are some screenshots from the actual game. No enhancements have been added to the screenshot. These are taken after I paused the game. Click on a picture to view a better resolution of it.
What Went Right
- The passion: I love fighting games. Even though developing a fighting all on my own was tough, I enjoyed it from day one. Without it, I would have pressed the Abort button long ago.
- The limit: From the beginning I knew what I could implement and how much one full-time programmer could work in his spare time. Most of the limitation came from the requirement of animation creation and other art-related issues.
- The editor: Creating IgnitED months before writing a single line of game app code was a wise choice. It was robust enough to add in any tool functionalities immediately. Since it shared the same scene graph DLL and the renderer DLL with the game app, starting on Ignite development was quite easy.
What Went Wrong
- Where's the teamwork?: After a couple of months into the development, I thought about bringing in artists or other programmers into the project. All I had to do was make a couple of posts in game development forums. But IgniED wasn't stable enough, and I was constantly changing it left and right. If this project were a team project, Version 0.1 release would have had a lot more features and looked more polished.
What I learned: Game development is a team sport.- Where's the design?: Ignite never had a gameplay design documentation. Everything was in my head or in code. This is horrible. I succeeded in being an organized programmer, but I failed as a game designer. I should've thought more about the gameplay design when I started coding the game app, but I didn't. This led to tweaking, hard-coding, and kludging of the gameplay code towards the end of the release.
What I learned: Preparation is not optional.- Where's the source control?: Even though I use VS SourceSafe at work every single day, I didn't use it for this project. Once in a while I zipped up the project and saved it on to a folder, but that was it. There were a couple of times when a source control system would've saved me hours of debugging.
What I learned: Source control isn't there to just share files between people; it's there to save your butt.What it took to have this release
- Number of Full-Time Developers: 1 dude
- Number of Contractors: 0 dudes
- Estimated Project Budget: $0
- Project length: 9 months (weeknights, weekends, and holidays)
- Release Date: 3/22/2002
- Platforms: Any medium-end PC with GeForce 1/2/3 video cards
- Development Hardware: started with overclocked Celeron at 378MHz with Geforce 2MX. Ended with AMD XP 1500+ with the same video card
- Development Software: Microsoft Visual Studio 6, Photoshop, Milkshape 3D, CoolEdit 2000
- References:
Tutorials from nehe.gamedev.net
Tutorials from rsn.gamedev.net
Demos from romka.demonews.com
Articles from www.gamasutra.com
The red OpenGL book, OpenGL SuperBible book, and DirectX SDK samples and manual- Outside resources:
Cate Archer mesh and texture from Monolith Production Inc.'s game, No One Lives Forever.
Cate Archer's shout sound effects from SNK's King of Fighters 2000 voice CD.
A slapping and blocking sound effects from www.sounddogs.com.
Textures from various sites on the net.
FreeImage library from the net
Background music from my co-worker's CD. The title of the song is Her Desire by JupiterAftermath
This release is my first for everything. First "real" OpenGL, first DirectX, first animation programming, etc.. From this release, I've gained plenty of technical knowledge, as well as practical experience, of game development. I now know for sure that I take pleasures in game programming and that I should make it into a career. Project Ignite will continue later in the future, but first I need to take a break and do what I do better: play games.