Wednesday, June 16, 2010

Game Design: Game Making Engines

Dang, two months and no posts? Well what can I blog about now?

Well how about I write about various game makers eh?

Thanks to the internet and programmers with energy for side-projects (or in some cases main projects) there are a plethora of game making programs for people who can't program but want to make a game anyway.
Now there' s no way I could know or list them all but I'll make an effort to list what I do know, have used and like.

Things Beginners Should Know
You know that the favorite advertisement ploy for free engines is that "no programming is necessary". That's only HALF true or not really true at all. No programming is necessary but SCRIPTING is. And while some engines will provide you with shells to work within you still have to learn the script language to make things work.

And heaven forbid you design a game that relies on the ADVANCED stuff. Not really a complaint but a heads up for any n00b who finds a programming-free engine and starts planning something too complicated.

Speaking of N00bs...It's almost guaranteed that THIS should be the stuff you know before making a game on ANY engine.
  • Learn the Engine first - if the site has a practice game or tutorial go through that.
  • Start SMALL - As exciting as it is to share stuff online, start by making crappy 10 minute games. JUST so you can be familiar with the way the engine works.
  • Join the Community - nearly all engines have a forum to join. This is where you can get individual help for your specific problem.
  • Play Other People's Games - So you know what's been done, what can be done, possibly reverse engineer and make friends.
  • Games Require Code - Don't be fooled...even if you don't write the code, the game still runs on one. (Or scripting). If you don't know it, then it's just that black box that works in the background and magically makes your game work. If you understand a little bit about how programming/scripting works then you're able to manipulate it a bit more easily. If you don't then you're limited to very simplistic games.
  • Copyright Laws - This is something to be aware of when using things like sprite sheets or music in your game. I don't have the space to go DEEP into this now, but in general use creative commons or free ware stuff. Or ask permission.
  • It's Mostly Work - Even with an engine to help you making a game is HARD WORK. It takes a lot of time. Don't be fooled.
  • Be Creative - have fun. Because there are aspects to be enjoyed about making your own game.
Genres
Nearly every major genre of game has a game maker engine if you know where to look. Google is valuable in finding FPS makers and such. I've found makers of the following genres:
RPG (Role Play Game)
FPS (First Person Shooter)
Point and Click Adventure
Platformer
Visual Novel
Dating Sim
Simulation
Arcade Fighter
General.

I'll now list the engines I know of and what genres they can make.

Script Language: Game Maker Language (GML), an Object Oriented Script
Opinion: To be honest I just know of this engine and have never tried it myself. It seems very flexible and there's a great deal of free resources available to use. I may consider using this for a couple of ideas I have in the back burners.

$RPG Maker - http://en.wikipedia.org/wiki/RPG_Maker ($60 for a full license copy/30 days free demo)
Script Language: Ruby RGSS, RGSS2
Games it Can Make: RPGs, and others if you're clever
Learning Curve: Medium
Opinion: This was one of the first I was introduced to. If you like Final Fantasy style games or RPGs this is the go to engine. I've utilized it and it took me awhile to wrap my head around the event based system. But it is very point and click and making games is pretty easy. It's just keeping organized that's hard.

Adventure Game Studio - http://www.adventuregamestudio.co.uk/ (free)
Script Language: Java/C# based
Games it Can Make: Adventure, Point and Click, Visual Novels, Puzzles (think Monkey Island).
Learning Curve: Medium
Opinion: I've looked at this and most of the work is handled by the engine nicely. The hard part is making the images and writing. These are a very old fashion style of games but they have their place.

Script Language: Python
Games it Can Make: Visual Novels, Dating Sims, RPGs, Management Games
Learning Curve: Medium/Steep
Opinion: This is a Python based maker for Visual Novels. However, the script is very flexible so I have seen basic RPGs, Dating Sims and other Simulations made with it. My own experience has been nothing but frustration. If you want to make the simple novel then you can reverse engineer your way through using the sample games. However, I'm a little over achiever and wanted to make a dating sim but it was more than I could handle. The interface is pretty much non-existent. It's just the code.

Script Language: WYSIWYG/Java/C++ based script
Games it Can Make: Visual Novels, ???
Learning Curve: Low/Medium
Opinion: I've been futzing around with this one and I really like how visual it is. What you see is what you get indeed. I'm not sure how fancy you can get with the script. I'd eventually like to test if a Dating sim is possible on this engine.

Script Language:Uses an Object Oriented C-based code.
Games it Can Make: Anything
Learning Curve: Steep-ish
Opinion: I was trained to use this in school and it's easy in some ways but coding knowledge is required. It's not quite one of those pick-up and run type of engines. But it's very powerful.

Script Language: Uses an Object Oriented C-based code.
Games it Can Make: Anything in 3D!
Learning Curve: Steep-ish
Opinion: We used this one too and we made a cool game. I couldn't code it but it's very powerful.

$Adobe Flash - Over $200
Script Language: Action Script
Games it Can Make: Anything
Learning Curve: Steep.
Opinion: I've only made one game in flash and I could sloppily code it. Sorry...sloppily script it.

MUD Maker - Free http://www.mudmaker.com/
Script Language: C++
Games it Can Make: Text Adventures, Multiplayer Text Adventure
Learning Curve: Steep-ish
Opinion: A great way to learn programming is to make a text-based game. MUD maker is something I just found so I can't say I have an opinion of it. I intended to just build one up from scratch.

Conclusion
So there are some choices to try. Not everything is free but even working with no budget it is possible to make a game to share with friends or to improve your own skills and build a portfolio.