Tools and engines to be used
#1 Members - Reputation: 112
Posted 01 September 2012 - 04:56 AM
What are the tools/ Libraries/ Engines that I should use for my game? (provide download links if possible)
The languages I know are c,c++ and java.
But I wouldn't mind learning a new language for building this game.
#2 Members - Reputation: 3283
Posted 01 September 2012 - 06:30 AM
I'm a newbie in this field. I want to develop a Computer game for my final year project. I'm actually thinking of MMORPG, but I'm trying to keep it simple at first. At least try making a single player in the beginning.
What are the tools/ Libraries/ Engines that I should use for my game? (provide download links if possible)
The languages I know are c,c++ and java.
But I wouldn't mind learning a new language for building this game.
Want to pass your final? Pick a different project. An MMORPG is way outside of your grasp. Even a single player MMO ( which by the way doesn't really reduce the workload ). Check this ( http://www.gamefromscratch.com/post/2012/03/29/I-want-to-make-an-MMO-Now-what.aspx ) out for an example of, and complete source code to, an HTML 5 MMORPG.
As to your question, if you persue this folly, you will need to make other decisions first. 2d or 3d, platforms supported, back end server environment , engine, etc
Just an FYI, I've been at this for 20 years, including several years server side, and I wouldn't dream of tackling an MMO solo in a tight time frame.
#3 Members - Reputation: 537
Posted 01 September 2012 - 07:52 AM
Focus on the RPG side of things and worry about the M, M or O part of things later, and tackle one area at a time. You dont have to think small just not extreme either, the key hear is really planning thoroughly.
As for tools / engines, it depends on what your course requires, you have to make a game based on what it requires, if it wants a 2D game for example, then any 3D engine suggestions would be pointless. Maybe the course requires you to use DX9 only, and the end product to be a certain size, ultimately the main thing to focus on is what the course requires, any suggestions to tools / engines could do more harm to you than good without actual course information.
I personally overall have mixed feelings about people doing MMOs, on one hand I think an MMO is the best project a person can do in terms of learning, you cover every area (or most) areas of programming, database management, web design, server control etc, you learn a massive amount of stuff and it is fun (well for me the bigger the project the more fun I have), if the project fails you will retain all the knowledge and likely be able to make use of the libraries you made. Ofc making an MMO is MASSIVE and making an MMO is time consuming (Note: not hard, just incredibly time consuming with challenges) and if you dont have the time to make one then its a pointless project to even remotely start. The interesting thing about making an MMO is it is just as time consuming as mastering MMOs, the difference is if a person said "I want to play games 15 hours a day for 10 years" they would not get the same responses as people who plan to make one.
Your time limit is a year, your end product needs to be based on what your course requires in the end
#4 Members - Reputation: 1050
Posted 01 September 2012 - 10:51 AM
Which also works against you as you have to be suitably proficient in these areas. For example I have hardly touched database programming apart from the SQL equivalent of hello world which I've already forgotten.you cover every area (or most) areas of programming
An MMO for a newbie to game development is not feasible at all. Its not really feasible for one to be made by a single developer easily and assuming a single guy can do it then it would almost certainly take longer than 1 year.
For a final year project a 2d game would probably more than suffice and could be completed within one year. Libraries you might want to look at would be SDL, allegro or SFML (several topics in existance about which of these to use) which I believe are all C++ (as I don't know C or C++ and have never used these libraries I could be wrong, I have a feeling SDL might be plain C).
With C++ you get access to basically every library in existance (ie most graphics libraries and engines -but not all- where available for C or C++ and later available as bindings in other languages.
If you want to go 3d for C++ there is raw directX or openGL available to you. If thats too complex (which it may well be) then you can use Ogre3d or irrlicht, both are pretty popular, irrlicht I think is slightly easier to use, ogre3d is supposedly slightly faster and has the larger community and has bindings for usage in python, java and .net if you don't want to use C++.
#5 Members - Reputation: 112
Posted 02 September 2012 - 07:41 AM
So, what I want to do is, make something like DOTA. It is a single map, with good graphics and details. And as far as heroes/characters are concerned, I'm thinking of starting with just 3. Each character can get levels between 1 to 99 and only 4 skills (Like in Dota). That wouldn't be hard enough, right? keeping aside the modelling and animation.
I have already wasted 2 months, so I only have 6 months remaining for the completion of this project (just an RPG, no MMO). Till now, all I have done is download blender. I tried to make a map like in DOTA, but believe me, it's not easy at all. I even referred to some PDF tutorials and youtube videos.
And I'm also having a hard time in deciding whether to go with 2D or 3D. If I can get 3D in 6 months, then I'm happy to go for it. But if you guys suggest me to stick with 2D, I'll do that as well.
#6 Members - Reputation: 3283
Posted 02 September 2012 - 08:43 AM
That is, if you have a team of a dozen or so experienced developers.
Here's a secret, scaling down the content reduces the work load minuscule amounts. The s%me amount of development work goes into 3 skill as 30.
Think smaller, much much smaller. Like Zelda small then shrink that again.
#7 Members - Reputation: 112
Posted 02 September 2012 - 09:41 AM
Let's start with something really small, that is, the Map. How do I make a map(equal to the size of the one in DOTA or AGE OF EMPIRES)? How many days will it take? and which tool shall I use (Free open source tool)? Can I get sample modules from somewhere on the internet? Like for example, objects like a Tree or a Rock/wall etc.
I only have Blender. Will it work? I also downloaded XNA. But I think it's for XBox games and not for PC. Or maybe I'm not using it properly. After installation, it asks you to add a device(mandatory), and the choices are Xbox and Zune. And I have none.
Edited by dhaval, 02 September 2012 - 09:49 AM.
#8 Members - Reputation: 159
Posted 02 September 2012 - 12:02 PM
Edited by SimLabDevelopments, 02 September 2012 - 12:03 PM.
#9 Members - Reputation: 112
Posted 02 September 2012 - 08:55 PM
#11 Crossbones+ - Reputation: 944
Posted 03 September 2012 - 12:23 AM
1. Do not attempt 3D. You do not have nearly the time or the people to be able to model the required assets in six months. If you attempt 3D you are not going to achieve anything but frustration.
2. Keep your 2D assets extremely simple. Aim for a cartoony look. Do not try to be realistic in your art assets and keep animations to an absolute minimum. Even without animations (or minimal animations) you will still have your work cut out for you.
3. If possible try to get some scope clarification from your professor. Try to see what the goal of the project is supposed to be. It is possible that a smaller project WOULD suffice, but that you merely BELIEVE that you have no alternatives. Either that or it could be a lesson in how to fail (it's possible, I have had professors provide me with 'impossible' projects before.)
4. If possible try to use as high level of a language as possible. If you could I would use Game Maker, but if you have to use a programming language aim for one that is as high level as possible. Python, C#, or Java would be alright. I wouldn't recommend C++ (even though I work in it 40+ hours a week). The reason I don't recommend it is simply that while you have power with c++, you need to aim for productivity. Getting off the ground quick is in your best interest. Unity with a 2d toolkit (There are many of them out there, research them!) would be an ok bet.
5. When developing aim to get one of everything done first. Get one player, one monster, one item, one npc, ect. Do not try to off the bat create 10 different weapons. Get ONE workings and get it working well. Put all of the pieces together and don't worry if you don't have a lot of variety. Variety will destroy you if you attempt it.
6. Realize that what you are actually capable of doing in six months is FAR LESS than what you THINK you can do in six months. Take what you think you can do in six months, and aim to do about 10% of that. What I find helps with this is a bit of math. If it takes you an hour to draw one frame of an animation, multiply that out by roughly how many frames in one animation, times the number of required animations, times the required number of characters. Add in time to test the animations, tweak them, program them , ect and you will see that your looking at INSANE amounts of REAL time.
7. Do some research. Many people have had questions on making RPG games. Many people have attempted it, and I am sure there are even tutorials on how to create an RPG game in some language. You can probably learn a good bit about how an RPG game is constructed from these sources of information. You can read up on tile engines, map editors (Mappy comes to mind), and other techniques.
So there you go. I have a lot more advice but I think the best would be in your situation to talk to the professor.
Edited by shadowisadog, 03 September 2012 - 12:29 AM.
#12 Members - Reputation: 1031
Posted 03 September 2012 - 02:20 AM
I get your Point @SimLab, but the problem is that, anything smaller than what I said is not acceptable as a final year project. Atleast that's what my professors said.
Then complain to your department chair or whoever is above your professor. If they haven't even told you what a graphics API is, they don't know what they're doing (which is par for the course in academia).
Transition from OpenGL 2 to modern OpenGL using my OpenGL Tutorial.
#13 Members - Reputation: 112
Posted 03 September 2012 - 02:40 AM
@lazy, complaining won't help sir. I'm in India, and it's mandatory to do everything on your own, kinda like self study. Here, you can never expect any help from any professor. Seldom you see a student satisfied with his/her professor's efforts/abilities.
Anyways, thank you to all of you for helping me out. I guess I should start working now. Thank you.
#15 Members - Reputation: 159
Posted 03 September 2012 - 11:09 AM
Read through it, understand it, and use it as a framework to develop your project. As shadowisadog pointed out, break things down into a series of small, discrete steps.
1. Display and entity on the screen (the book example is a spaceship, but it can be whatever you'd like).
2. Move the entity around the screen by player control.
3. Add a second entity.
4. Add collision detection.
5. Add a weapon.
6. Have the entities shoot at each other.
etc, etc.
#16 Crossbones+ - Reputation: 944
Posted 03 September 2012 - 02:16 PM
Thank you very much. And yes, I'm not going for 3D, I guess I should stick with 2D since I'm just a beginner. And like you suggested, Aim for one player, one monster, one item, one npc etc. I'm going to stick with it as well. So which tool shall I get to make my 2D characters, monsters, animations etc. I have blender and XNA (which doesn't work for me). I need a tool which is easier for a newbie like me to understand and use.
@lazy, complaining won't help sir. I'm in India, and it's mandatory to do everything on your own, kinda like self study. Here, you can never expect any help from any professor. Seldom you see a student satisfied with his/her professor's efforts/abilities.
Anyways, thank you to all of you for helping me out. I guess I should start working now. Thank you.
Please keep in mind that you are a member of a team. Try to make sure that they agree with the direction and scope of your project. Also from your post "I want to develop a Computer game for my final year project. I'm actually thinking of MMORPG, but I'm trying to keep it simple at first. At least try making a single player in the beginning." No where does it say in that post that you must create an RPG game. If we were to buy that you can not negotiate with your professor, we would see that he has you required to make an MMORPG game in six months! Apparently you do have some ability to reduce the scope of your project. We do not want you to complain to him, merely to make sure you understand what the goal of the project is.
End result is we want to provide you with advice that will help you to succeed, so sometimes we must provide advice which is different than what people may want to hear. This is not to mean we want to crush dreams or hopes, just to provide realistic advice towards accomplishing some goals. And the fact that this is for an assignment means that I simply must provide advice which would lead to you picking a project which you could manage in the time frame.
For my senior design project we were expected to do UML diagrams/design, program the project, and create a presentation to present to the class. You would be amazed by how much time meetings take up from your development. Combine this with the fact that at the same time you have other classes and potentially a life outside of school (perhaps a job, I don't know your situation), but that does not yield a ton of time. I think a three person college team combined might be working 40 or 50 hours a week worth of development time (60 if you all are really dedicated I suppose).
#17 Members - Reputation: 112
Posted 04 September 2012 - 03:25 AM
So are you suggesting that even this much we can't do it in 6 months? Yes, we're really dedicated to it, since our final year grades totally depends on this project. I shall learn everything and do everything to get it done. If the time needed is not sufficient enough, then I can get 2 more months (Max) for this project, by cutting down my time on SAT and Oral preps.
If not an RPG, then what type of game do you suggest? It cannot be as small as Pacman, minesweeper or Blobby Volley etc. It has to be an action or a strategic game. But I've heard that action games are the toughest to build. From what I see, I have no choice but to go for a small, very small RPG. If the time and number of developers is the issue, then I don't have to worry. Like I said, I can get couple of more developers and 2 ~ 3 months more in addition to the existing 6 month.
Edited by dhaval, 04 September 2012 - 03:27 AM.
#18 Crossbones+ - Reputation: 944
Posted 04 September 2012 - 06:45 PM
You could reduce the scope on anything enough that you would be able to accomplish something in six months. I will argue that even if you get your one of everything approach done, what sort of game do you have at the end? Perhaps not a very entertaining one.
"The professor said that it is possible to do it in 6 months and it's fairly easy as well." - If he said it would be "fairly easy" than he was definitely not talking about creating an RPG game of any sort! It is like someone tells you to build a box, so you decide the box must be constructed out of titanium, be 16 meters in all dimensions, be water proof, and filled with sharks! While that would be impressive, if you only manage to construct one side of said box you might completely miss the point of building the box!
I would be more tempted to create a 2D side scrolling game than an RPG game in your position. It still has a lot of the same concepts, but you can ditch having to worry about a combat system, the NPCs, most of the inventory issues (or all of the inventory system), and you can still have enemy AI, collision detection, scrolling, maps, ect.
I really don't recommend going "all out" and sacrificing time to prepare for other exams/classes. Life is about balance, and real world software engineering is heavily concerned with time management. It is not a wise idea to put yourself in a position (on purpose) where you have to work yourself into the ground to accomplish a project. It would be a better approach (imo) to approach something that you can more comfortably do in the time period and obtain a finished product on.
To me a project that is complete from start to finish shows more value than what would amount to essentially a tech demo.
Edited by shadowisadog, 04 September 2012 - 06:57 PM.
#19 Members - Reputation: 112
Posted 05 September 2012 - 12:21 AM
And yes, this game, actually will be a tech demo. Because once we're done (even with a sucky boring broken game), nobody is going to play it, or even check it out, the professors, the university officials or even the students/friends.
And btw, thank you very much for helping me out, really appreciate it.
Edited by dhaval, 05 September 2012 - 12:31 AM.
#20 Crossbones+ - Reputation: 944
Posted 05 September 2012 - 07:25 PM
I could go on. Anyway a quick google search will yield tons of results.
As for approach and tools... Languages are largely personal preference. Use whatever you feel most comfortable with. I would use a high level language... I think if "I" were going to make a game right now, I might be tempted to try Unity and 2d toolkit or ex2D. I haven't heard great things about Sprite Manager 2 (Another Unity 2d toolkit) and it is fairly pricey, but it is another option. None of the Unity 2D toolkits are free, so if that is a limitation than there are other options....
LOVE, Pygame, SFML, Construct, Gosu, XNA ... there are so many tools out there for making games! There is Torque, SDL, MMF 2, Game Maker, HGE, coco2d, and many more...
In terms of Art there is GIMP, Inkscape, Vectorian Giotto, Paint .NET, Graphics Gale, Texture Packer, Blender, Texture Maker...
The key is to start. Just pick a language, and start working. Each tool has its own strengths and weaknesses but at this point it absolutely does not matter. Pick some tech and get going!
You say no one will play it. I don't think I believe that, but in any case make something that you and your team can be proud of making and playing. Don't give up, and don't bite off more than you can chew (It's a balance!).
Good luck!
Edited by shadowisadog, 05 September 2012 - 07:37 PM.






