TIGSource Forums

Developer => Technical => Topic started by: Silhouette on December 21, 2009, 02:41:55 PM



Title: Choosing the correct game engine for me!
Post by: Silhouette on December 21, 2009, 02:41:55 PM
Hey everyone.  I'm new to the TIGForums, and I'm looking for some advice.  As noted in my "obligatory" introduction reply, I've always wanted to make some sort of game, but have never been dedicated or interested for a long enough time.  I'm turning over a new leaf, and I want to give it a shot.  However, I'm not sure where to start.

I'm strongly considering making:
a.) a platforming game (for sure)
and furthermore
b.) a game similar to the likes of either Knytt (less fighting) ... or perhaps Castlevania (lots of fighting)

So yeah, basically something that seems relatively simple in it's early form, but has room for complexity.  What I'm not looking to make is a standard "jump on enemies, gather coins game"(mario clone).  Although that could be a good start while learning.

I need something that is relatively easy to begin with, but can be quite powerful and suit my needs in the long run.  I also need a fair learning curve, as to not blow my mind.  I have next to no prior game making experience or coding/scripting (whatever it's even called) experience.  The most I've ever done was mess around making a few maps for a Player Worlds game (lol), do some minor scripting in RPGMaker (lol), and attempt to learn object movement in C#(with XNA tools). However, all of these events ended rather quickly because I was:
a.) a lazy ass
b.) lacking a work ethic, or dedication

Hopefully my rear is no longer lazy.  I feel that I could dedicate myself to a project now, and I'd like to give it my best shot.  So help me out, what engine should I use?
I've heard of, but know very little about:
GameMaker (I don't know anything about it, but I've always thought of it as bottom of the barrel; I'm most likely utterly wrong in that assumption)
MMF2 (seems like a great choice from what I've heard; wasn't Knytt or Knytt Stories made with fusion?)
Construct.. or Constructor.. or whatever-er (have no idea about this, hence me not knowing what it's called)

Obviously I don't know what I'm talking about, so give me some advice.  Which engine should I attempt to learn? o.O

-Sil


Title: Re: Choosing the correct game engine for me!
Post by: Triplefox on December 21, 2009, 03:35:47 PM
Of MMF, GM, and Construct, all three are worthwhile and have examples to get you started with exactly what you're interested in. I used GM a lot and might do so again for prototyping. But I think Construct is the sexiest of them today.

But I would start by shifting mentality a little bit, it'll make things easier. That is, instead of "make x kind of game," shoot for "figure out how features x, y, and z are implemented." It's all about taking a bottom-up, researcher's/learner's perspective of "finding the unknowns" and making them known by executing. The bottom-up approach is way easier to think about, it lets you ignore worries about "potential future power/flexibility" or "the Right Way to do things" which are, for the most part, just a quagmire, and it gets you focused on the immediate benefit of having something done. So: First you would figure out "how do I get things moving on the screen?" Then: "How do I have the player control it?" And then: "How do I handle environment collisions?" Resolve those three and you have a basic platformer going.

And when you resolve each of those, you line something else up like shooting or enemy AI or pickups, or you go back and iterate over or cut a feature that isn't working the way you hoped. You don't have to get everything to 100% immediately - if you can get all the features to 60%, polishing to the remaining 40% is easier because you know where you're going now.

Once you've accumulated some features, you can change tack to "plan some art assets" or "tune mechanics" or other tasks. Plan, prototype, iterate. This approach can carry you through a whole project.


Title: Re: Choosing the correct game engine for me!
Post by: Silhouette on December 21, 2009, 04:20:16 PM
Thanks for your input.  That sounds like a great approach, and it's what I plan to do.  Thing is, when I hear the word "game development," I have this image in my head of young men ripping our their hair, staring at a line of code that doesn't work for no apparent reason; the only thing they have to go on: red text stating they have "over nine thousand" compilation errors or whatnot.  I really hope it's not as frustrating as it seems.  From your input on things, it sounds like a fun and rewarding process.  I plan to start very basic, very small.  Choosing one feature or task to accomplish at a time, and testing it to its limits before moving on.  I assume all three are relatively "noob friendly." I'll do some research and get back to you.  I would like more info from some more people please. :D


Title: Re: Choosing the correct game engine for me!
Post by: powly on December 21, 2009, 04:38:16 PM
Well, I've seen people from very different backgrounds to develop great games; it doesn't matter how you start out, you just must start out somewhere.

I'd go with GM or similar (using any provided scripting language as much as I could) or some BASIC variant, darkbasic, blitz basic etc.

This also heavily depends on what kind of a person you are; some of us are very nerdy and love solving complex problems (oh, the satisfaction...) and some just want to get the games done without looking under the hood more than necessary.


Title: Re: Choosing the correct game engine for me!
Post by: Silhouette on December 21, 2009, 05:52:09 PM
Hmm.  I'm thinking about going with GM.  There seem to be quite a few people who use it, and there are many tutorials scattered across the web.  It also seems very simplistic, and is, for the most part, free.  Looks "noob friendly."  I guess I'll give it a shot sometime in the next few days.  Christmas break coming soon.  Good stuff.  Still looking for more input though.


Title: Re: Choosing the correct game engine for me!
Post by: xerus on December 21, 2009, 06:27:04 PM
I like Game Maker because of scripting.  Although it has some short comings, (performance, room editor, and some other minor annoyances) but it's only 25 bucks or something for a license for the pro version, and it can do some pretty fancy drawing with surfaces and what not.

If construct had scripting instead of the MMF style event sheets I'd be all over it, also if it were more stable.

MMF2 is priced crazy high and I wouldn't really recommend it when construct is free and open source and all that good stuff.


Title: Re: Choosing the correct game engine for me!
Post by: pgil on December 21, 2009, 06:39:48 PM
If construct had scripting instead of the MMF style event sheets I'd be all over it, also if it were more stable.
This. Construct seems much lighter and faster than Game Maker, but the fact that it relies on a weird maze of menus is a turnoff for me.


Title: Re: Choosing the correct game engine for me!
Post by: Silhouette on December 21, 2009, 07:26:20 PM
At this point I'm strongly considering GM.


Title: Re: Choosing the correct game engine for me!
Post by: BlueSweatshirt on December 21, 2009, 07:39:02 PM
I would go for it.

With the release of version 8, a buttload of awesome new features will be available. GM8 seems much more like a professional tool, than the kind of shortcoming of a toy it's seemed like in the past. I say this from doing a lot of beta testing. 8 should supposedly be out before the new year, but we'll see.

If you ever feel like 3D, Unity is an open door. Although GM's 3D is there, it's incredibly slow and weak. It doesn't even have built in support for per-pixel shading.  :tired:


Title: Re: Choosing the correct game engine for me!
Post by: Silhouette on December 21, 2009, 09:24:51 PM
Hmmm.  GM8 before the new year would indeed be nice.  I'll check out GM7 tomorrow or the next day... or the next day.  Also, while we're still on the topic of recommendations, what would be a great program to use for pixel art/spriting.  I've heard of a few, but the extent of my use has been MS Paint, a built in icon maker of BYOND's back in the day, and Photoshop at school (because I'm too poor).


Title: Re: Choosing the correct game engine for me!
Post by: Tanner on December 21, 2009, 09:33:11 PM
darkbasic is free now, i dunno what kind of games it's suited for though.


Title: Re: Choosing the correct game engine for me!
Post by: Xion on December 22, 2009, 01:37:21 AM
I use Graphics Gale for spriting and I love it. Others use Pro Motion, which I've never touched but I'll take their word that it doesn't suck.


Title: Re: Choosing the correct game engine for me!
Post by: Tycho Brahe on December 22, 2009, 01:54:20 AM
Also take a look at flixel, it may be a bit more difficult to learn than gm but it's based on flash, so your games will be more cross platform. Plus, as you'll most likley find it more difficult (I did) it should be a good learning experience.


Title: Re: Choosing the correct game engine for me!
Post by: BlueSweatshirt on December 22, 2009, 11:19:16 AM
Holy hell shits. GM8 has been released.


Title: Re: Choosing the correct game engine for me!
Post by: Silhouette on December 22, 2009, 03:07:42 PM
Wow, I looked at Yo Yo Games last night, and saw GM7.  I look now, and it's GM8.  Haha, and there was much rejoicing.  Good stuff, Christmas came a few days early.

EDIT:  Also, the more I look for videos of various games made with GM, the more I find undesirable games that resemble rather shoddy work.  Pretty much every game I've watched has appeared sloppy and primitive.  Can anyone prove to me that GM can be useful and powerful in the right hands by linking me to a video or game made with it?  Would be much appreciated.


Title: Re: Choosing the correct game engine for me!
Post by: Tycho Brahe on December 22, 2009, 03:55:27 PM
spelunky

(http://forums.tigsource.com/index.php?topic=4017.0 if you don't know where to find it)


Title: Re: Choosing the correct game engine for me!
Post by: Silhouette on December 22, 2009, 05:17:32 PM
Ah, of course.  Good old Spelunky.  Thanks.

EDIT:  I've since downloaded GM8 and began learning the "basic-est basics you can learn, basically."  I must say, it is very simple and clean, and the way it presents itself to you is just fun.  I'm very intrigued at this point because:
a.) There is proof it works.
b.) There is proof it's powerful.
c.) It feels right to me, like a good place to start.

Sooo... all in all, I am quite please.  I'll be experimenting with GM8 until further notice(I'll prolly buy GM8-Pro for Christmas).  I'd like to thank those who shared their two cents. :D

Case Closed.


Title: Re: Choosing the correct game engine for me!
Post by: nikki on December 25, 2009, 06:20:50 AM
On a side note:

I recently discovered Opencourse ware at stanford,
I was pissed i didn't know this while i was teaching myself coding, the poor way.

Since your just beginning, there is no harm in a super-teacher.

Programming Methodology course 1
 (http://www.youtube.com/watch?v=KkMDCCdjyW8&feature=PlayList&p=EEDB77E1CA9D7434&index=0&playnext=1)

there are hours and hours worth of video, the accompaniyng documentation, software and tests..  all Stanford quality !


Title: Re: Choosing the correct game engine for me!
Post by: Daiz on December 25, 2009, 10:39:50 AM
In case you still didn't buy GM8, I would very much recommend Construct. The event sheet editor of Construct these days doesn't really remind that much about MMF2's event editor - in fact, it is much, much better. It still has some usability quirks but in general it's pretty damn fast to work with and with the options listed out it's easy to discover all the magic you can do with it (later on when you know what you can do with lerp() and clamp() and whatnot you can of course write them in without having to specifically look for them).

The main reason is that Construct's runtime is by far more powerful than pretty much MMF2 and GM combined. It also teaches some good game-making behavior that both MMF2 and GM ignore: making framerate-independent games. Both GM and MMF2 are pretty much build around fixed-framerate mindset, while Construct advices users to make their game run in the same timeframe no matter what the FPS is, and it also makes this very easy on the enduser with the TimeDelta functionality it has.

Also, since the Construct event system isn't just total writing, it should be easier to grasp how it works for a beginner than GM's total scripting approach. Mind you, I haven't tested or used Game Maker that much, but from what I've heard anything you can do without scripting is pretty much worthless. On the other hand Construct's built-in behaviors and such actually work and are quite feature-rich and easy to expand on.

For help, there's some tutorials on the site and the folks at the Scirra forum are very friendly and helpful. There's also a Platform school tutorial, but it's kinda broken now since it was made in an older version of Construct and haven't been updated in a while.

That's obviously another con of Construct: it's still beta software. It might not be perfectly stable at times and it can get new features (which can break old things) quite often. Though right now the stable version is at 0.99.62, and from my own experience I can say that it already offers a very good working environment.

So the bottom line is: You should definitely give Construct a try.

PS: Game Maker is also in general going into not-so-nice direction to the developers since YoYo Games doesn't seem to care about actual devs anymore, so jumping on to GM now to me would be like jumping on a ship that is sinking fast. Not to disrespect any developers using GM or anything, but that's what the situation honestly seems to be right now (and many GM users seem to agree).


Title: Re: Choosing the correct game engine for me!
Post by: Tycho Brahe on December 25, 2009, 04:06:55 PM
Actually, if you want to learn "real" coding quickly, and with visible results quickly, take a look at processing, you can get visual stuff going in under 9 lines of code :)

(www.processing.org)


Title: Re: Choosing the correct game engine for me!
Post by: Daiz on December 25, 2009, 04:32:50 PM
Well, this thread is called "Choose the correct game engine for me"... not "I want to get in touch with "real" coding".

Processing, being based on Java, doesn't really feel like something I'd want to make any games with... even if it is an "easy start" to "real" coding. Besides, it doesn't really feel like a game-making tool either.

For the purpose of the thread creator, I'd say Construct would fit his needs quite well, because the initial setup required to get a working platforming engine going is very simple, and expanding on that isn't really all that hard either with some studying.

I doubt Processing would really offer anything over Construct (or even GM) anyway, save for the cross-platform compatibility, but considering it's achieved via the means of Java... yeah, no thanks. If you want to code and make something cross-platform, recommending Flixel would be a better idea.


Title: Re: Choosing the correct game engine for me!
Post by: Tycho Brahe on December 26, 2009, 09:25:44 AM
Processing offers quite advanced networking capabilities as well, what I really meant was;if you want a tool which will scale very well, allow you to learn more serious programming and also offers graphics facilities you should look at it. Plus, it also allows you to use "serious" graphics libraries like OpenGL. Processing is also much eaiser to start off with, from my perspective at least, than game maker and flixel.

Processing allows for so much more, and is much less complex.


Title: Re: Choosing the correct game engine for me!
Post by: Daiz on December 26, 2009, 12:49:43 PM
Processing allows for so much more, and is much less complex.

But does the same apply with Construct and Processing? I'd say no.


Title: Re: Choosing the correct game engine for me!
Post by: Tycho Brahe on December 27, 2009, 09:54:06 AM
Construct would probably be better for getting started quickly and scaling that to slightly more complete games, however processing also gives VERY easy to understand networking, Internet and serial functions. I'd rather use processing as I'd know that I'd have so much more choice.


Title: Re: Choosing the correct game engine for me!
Post by: Daiz on December 27, 2009, 11:35:39 AM
Construct would probably be better for getting started quickly and scaling that to slightly more complete games, however processing also gives VERY easy to understand networking, Internet and serial functions. I'd rather use processing as I'd know that I'd have so much more choice.

But are those really vital necessities for a single-player platformer game? Construct's online capabilities are pretty much highly limited at the moment, but if you want to do something simple like online scoreboard for your game it's easy to do with Construct.

As I said, Processing doesn't really feel like a tool intended primarily for game development, whereas Construct is specifically that. And for game development, Construct offers very much. You can pretty much say that if it's 2D, it's completely doable in Construct. Of course you could say the same about tools like Game Maker or MMF2, but for example doing something like a bullet hell game with thousands of bullets onscreen isn't really that feasible to do with GM's or MMF2's runtime performance, whereas with Construct it is entirely possible. The engine and the tools Construct provides for 2D game development are top-notch.

The only thing you seem to market with Processing is that a) it's easy for a programming language b) it has good internet capabilities. But what else is there to it? Frankly, just these two alone aren't really all that much when it comes to game development. What makes it a good choice for game development over other alternatives?


Title: Re: Choosing the correct game engine for me!
Post by: stolide on December 27, 2009, 02:06:33 PM
I just tried construct for a bit and love it. I'm a relatively complete noob (I made a text based game in basic a long time ago, and a 5 room platformer in GM a few days ago), and it went much faster for me to get what I wanted done. I haven't looked at doing something like rooms in it yet, but I'm sure it can be done.

Since it is free, you should at least download and try it.