What tools are recommended for a first person game?

Post your questions, suggestions and experiences regarding game design, integration of external libraries here. For irrEdit, irrXML and irrKlang, see the
ambiera forums
Post Reply
RobinvK
Posts: 12
Joined: Thu Mar 10, 2011 1:22 pm

What tools are recommended for a first person game?

Post by RobinvK »

Hello everyone,
I need to make a First Person game for a project and I am thinking of using irrLicht for this. But I'm not sure what else I need to make it work (engines, libraries ect.)

The game I need to make requires the following:
- 3D environments with 3D movement (I prefer real 3D with actual models, but using sprites like in ‘doom’ is acceptable as well)
- Spatial sounds (3D). (sounds should be coming from the location of the source, if something falls to the front-right of the player it should seem like the sound is really coming from that direction). Sound is the most important factor in the game.
- Game elements like health, ammo, powerups, weapons ect.
- Enemies (AI is not required to be very smart, enemies just need to shoot at the player/chase the player when they see the player)
- Other obstacles and events (like needing to type in a code on a keypad)

The content for the game is minimal, I need only 5 to 10 minutes of playtime, which consist mostly of scripted events. I also need a few cutscenes. (So I don’t need huge maps, more than 2 enemy types and more than 2 weapon types)



As you can see my game will be very basic (for a 3D FPS at least) aside from the sound effects. However, I have one big limitation: time. I only have about 15 full days to get the engine in place and a few more days to create content (I will be using a lot of free resources for this) The game does not need to look perfect, I just want to set a proper experience.

Another limitation is that I do not have a lot of experience in programming games. But I do have some prior experience in making visual focused programs in programming languages like Java and Actionscript 3. So far I have worked my way through the C++ tutorials on cplusplus.com up to Polymorphism. I understand the concepts well and I think I’ll be able to work with OOP.



I already have found an APi for the spatial sounds: irrKlang. I chose this because it’s fairly easy to use and I can easily use different file types.

But I have no idea what else I need to make it work. I think irrLicht would be a good choice because it is similar to irrKlang (so I assume they work well together), but irrLicht is a graphics engine, not a game engine. So can I actually make a game with the irrLicht/irrKlang combination? Or should I be looking for something completely different?


I realize it might seem like I’m mad for attempting this with the limitations I have, but I really need to make this work and because I have limited time I need to get started quickly. When I search for information on the internet I get lost in all the possibilities, so I was hoping somebody with more experience could recommend me some things to help me get started.

Any help would be greatly appreciated!!
shadowslair
Posts: 758
Joined: Mon Mar 31, 2008 3:32 pm
Location: Bulgaria

Post by shadowslair »

Well, it looks like you pretty much figured it out- IrrKlang for sounds, and Irrlicht for everything else. Yes, Irrlicht is sufficient for everything you mentioned, except the sounds part and the scripting. But, creating such a thing in 15 days, when you have no experience is impossible. It`s just too much work even for experienced programmer (assuming you start your engine from zero with Irrlicht). Scripted events, cutscenes, basic AI, weapons, powerups... Sounds are the easiest part, is you have the sound files- they can be added in less than an hour. But for everything else you need more-or-less complete engine. Then, it doesnt matter that much whether you`re creating a 5 or 5000 minues content, if you have the engine running. My opinion is that it`s just not possible for this deadline... You can go for much simplier game if you have the choice. Something like 3d version of Pacman, Minesweeper, Space Invaders etc. A simplistic app with a character walking in some level like in the irr demo examples yes, but all the other features at once- nope...
"Although we walk on the ground and step in the mud... our dreams and endeavors reach the immense skies..."
Radikalizm
Posts: 1215
Joined: Tue Jan 09, 2007 7:03 pm
Location: Leuven, Belgium

Post by Radikalizm »

Is this some sort of school assignment?

As shadowslair said, 15 days to get an actual engine running is not enough, especially when you're still learning C++
If possible, I'd suggest you to aim a bit lower and write a game which doesn't need an engine and which can be hardcoded using different libraries with very simplistic gameplay
RobinvK
Posts: 12
Joined: Thu Mar 10, 2011 1:22 pm

Post by RobinvK »

Hmmm, yeah I was afraid of this. Maybe I'll manage if I use an existing game engine? Or even use a pre written fps game and create new content for it? I would make a more simple 2D game if I could, but the 3D first person element is a key feature for my project.

The thing with using a pre made game engine is that it should be easy to learn & use but still give me enough freedom to do what I want. I don't want to invest several days in learning an engine only to find out it is too limited for my project.

A pre made fps game engine with an easy to use level editor would be perfect for what I need since it does not really matter how I do it, what matters is the end result. But so far I haven't found one that lets me work with spatial sounds (3D sounds).

I'm currently reading into this:
http://irrlicht.sourceforge.net/phpBB2/ ... hp?t=25754
Maybe that is something that fits my requirements. EDIT: seems like the project has been abandoned :(
Radikalizm
Posts: 1215
Joined: Tue Jan 09, 2007 7:03 pm
Location: Leuven, Belgium

Post by Radikalizm »

RobinvK wrote:Hmmm, yeah I was afraid of this. Maybe I'll manage if I use an existing game engine? Or even use a pre written fps game and create new content for it? I would make a more simple 2D game if I could, but the 3D first person element is a key feature for my project.

The thing with using a pre made game engine is that it should be easy to learn & use but still give me enough freedom to do what I want. I don't want to invest several days in learning an engine only to find out it is too limited for my project.

A pre made fps game engine with an easy to use level editor would be perfect for what I need since it does not really matter how I do it, what matters is the end result. But so far I haven't found one that lets me work with spatial sounds (3D sounds).

I'm currently reading into this:
http://irrlicht.sourceforge.net/phpBB2/ ... hp?t=25754
Maybe that is something that fits my requirements
That thread hasn't been updated for almost 3 years, I wouldn't rely on using that engine

Why do you have this 15-day limitation? It's too late now to learn how to use an engine and associated tools if it actually has to be finished/playable in such a short timeframe

Developing games take time, I have to do a very simple RPG as a university project with extremely basic graphics and what not for example, and this project is estimated at about 100 hours of coding, which would be a full day's job of coding every day for 15 days, so an FPS with underlying engine even if it's simple wont be usable in 15 days
randomMesh
Posts: 1186
Joined: Fri Dec 29, 2006 12:04 am

Post by randomMesh »

Try to enhance the demo in the examples directory. It pretty much is an FPS.
Image
"Whoops..."
RobinvK
Posts: 12
Joined: Thu Mar 10, 2011 1:22 pm

Post by RobinvK »

In 15 days I need to get the key elements in place. 3D movement, health, ammo, sounds, enemies and the player should be able to shoot. For this I can use existing free models and maps. After this is done I can start creating my own content.

I thought it would be possible (but difficult) to make something like this in this time period because the 'demo.exe' file included in the irrLicht folder I downloaded had many of the elements I needed already in place. And there are programs like unity3D which have tutorials that explain how to make a FPS in a day or two.
http://unity3d.com/support/resources/tu ... orial.html

unity3D is pretty almost exactly what I'm looking for, but it is not free to use, it runs slow sometimes and I'm afraid that it might limit me later on in the project if I start working with spatial sounds. That is why I tried to use irrLicht with irrKlang, but if it won't be possible to make a game with these tools in my timeframe I guess I'll need to go back to unity3D or something similar.

EDIT:
randomMesh wrote:Try to enhance the demo in the examples directory. It pretty much is an FPS.
Image
Yeah I was thinking about doing this. Do you think it will be possible to include all the features I need in this demo?
I assume the models that are used in this demo can be made with 3D modelling software, right? But what about the maps, where were these made in? if there is software out there that lets me make these maps like a simple map editor than that would save me a lot of time!
:)
randomMesh
Posts: 1186
Joined: Fri Dec 29, 2006 12:04 am

Post by randomMesh »

RobinvK wrote:Yeah I was thinking about doing this. Do you think it will be possible to include all the features I need in this demo?
Of course. But in 15 days... Well. You need to be fast.
RobinvK wrote:I assume the models that are used in this demo can be made with 3D modelling software, right? But what about the maps, where were these made in?
Quake 2 model (md2) and Quake 3 map (bsp). Have a look at the loadable file formats.
RobinvK wrote:if there is software out there that lets me make these maps like a simple map editor than that would save me a lot of time!
:)
Yes, there are a lot of Quake map editors. Have a look here.
"Whoops..."
RobinvK
Posts: 12
Joined: Thu Mar 10, 2011 1:22 pm

Post by RobinvK »

Thanks for all the replies guys! :D
I decided I'm going to try to edit the demo file from the irrLicht examples. I'll go through all the tutorials first and if I don't understand something I hope I can come to the forums for help.

I hope I'll be able to get as many features in there before my deadline. If not, well then so be it. If it turns out to be a real disaster I can always fall back to unity3d as my last resort.
XXChester
Posts: 95
Joined: Thu Oct 04, 2007 5:41 pm
Location: Ontario, Canada

Post by XXChester »

Let us know how it goes and best of luck on your project.
Post Reply