Sign in to follow this  

Beginner asking for advice

This topic is 676 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello! For a brief introduction, I am finishing uni (IT related) and want to start developing as a hobby - and perhaps, maybe, if it comes to it, make it something more in the future. When it comes to languages, I am rather clueless (only a little C++ and java) for the time being. Art-wise I am even more clueless.

 

For a first project, I would like to try to make a zelda-clone game. Basically a 2d, zelda-like custom "free" movement, top-down action-rpg for windows/steam ("must haves"). Also, don't know if this is relevant with engine capabilities but I want to have many instances of rng in it.  From rng placed objects/items/maps to terrain. And perhaps with online co-op possibility. Naturally I don't hope to use all these things at first, but it would be nice to start learning an engine that has the capabilities I need. I want to start with a relatively easy tool so I won't get burned out.

 

I want some help at choosing an engine. From what I have seen, my best candidates so far seem to be Construct 2 and Unity. I am leaning towards construct because it seems much easier to use, than having to learn C# for Unity. 

 

Any random advice or thoughts on an engine appreciated.

Edited by Mystic_Quest

Share this post


Link to post
Share on other sites

Hello there, and welcome to the forums.

 

Perhaps, since it's your first project, and you're looking for a simple tool, you should consider something like Game Maker of Multimedia Fusion?

These are pretty limited (compared, of course, to Unity and such), but they are also easier to get into, and i think would suffice for a (relatively) simple project, although Construct seems user friendly enough (don't quote me though, i've never used it, just checked their website).

 

The good thing about something like Game Maker, is that it has been around for a long time, so there are plenty of tutorials to go with it.

 

You could also try you hand at Flash (using Action Script 3), which also has many tutorials. There's lots of great games written with it.

 

As a side note, since this IS your first project, may i suggest you try something simpler, like a Shoot 'Em Up (something simple, like a Space invaders clone)?

I only say this, because a zelda-like game is quite a bit more involved than a simple SHMUP, and you'd get a feel for moving sprites (your ship), basic AI (the enemies), collision detection (bullets against enemies/you), etc.

 

Either way, you can just try each for a bit, and then choose the one you like the most, since i'm pretty sure they all allow you to do what you intend to do.

 

Hope it helps.

Share this post


Link to post
Share on other sites

Thanks for the reply.

 

I have read a little about Game maker and also thought they were somewhat limited - for example I don't think I can achieve this kind of character movement with them. Hadn't considered flash until now. Will check that out too. 

 

Maybe it would be a good idea to start with a simple shmup. I was just thinking that perhaps I might be able to start making a bare-bones zelda and then slowly enhance it so that I don't lose time making something different.

 

My greatest fear of all though, is learning to use an engine/language only to find out midway, that a feature I want the game to have, is beyond its capabilities. :O 

Share this post


Link to post
Share on other sites


My greatest fear of all though, is learning to use an engine/language only to find out midway, that a feature I want the game to have, is beyond its capabilities.  

 

that will call for research.

 

start with a must have feature list.

 

for each feature, learn how its done, then determine if the engines you're considering can do that.

 

so you'll sort of need to learn how to do each major feature before you can even select an engine capable of it.

 

the other route is to pick people's brains. post your feature list here and ask what engines can do it. but there's no guarantee that the best choice will be something known about by someone here who happens to see your question. OTOH, you WILL get a lot of good suggestions. so maybe a little asking around plus some research.

Share this post


Link to post
Share on other sites

 


My greatest fear of all though, is learning to use an engine/language only to find out midway, that a feature I want the game to have, is beyond its capabilities.  
 

 

that will call for research.

 

start with a must have feature list.

 

for each feature, learn how its done, then determine if the engines you're considering can do that.

 

so you'll sort of need to learn how to do each major feature before you can even select an engine capable of it.

 

the other route is to pick people's brains. post your feature list here and ask what engines can do it. but there's no guarantee that the best choice will be something known about by someone here who happens to see your question. OTOH, you WILL get a lot of good suggestions. so maybe a little asking around plus some research.

 

 

Hmm the only must-have feature for now that (to my knowledge) can be restricted by different engines is the zelda-like movement as described in the link. 8 directional but it doesn't feel you move on tiles at all. In other words completely free (or the illusion of it) movement. Some other snes rpgs like Terranigma or Illusion of Gaia also had this kind of movement - although their's probably worked differently than zelda. A similar combat system would be very important as well.

 

Also each engine probably(?) handles random object placement/terrain generation differently, but even in 2d that's probably too advanced and messy to consider for now (if anyone has worked on something similar though feel free to chime in).

Edited by Mystic_Quest

Share this post


Link to post
Share on other sites

Well, to start of, there are platform games written in GameMaker, so given that they (the characters) require free movement (pixel by pixel), then i'm positive the movement you want would work too.

One that does uses only tile-by-tile movement is RPG Maker.

 

Do note that I'm not trying to sell you the idea of using GameMaker of Multimedia Fusion by any means.

In fact, i have not used either of them before, altough i am familiar with what they can achieve, and given that there are a lot of tutorials on how to use them, perhaps they would be easier for a beginner to get into.

I have used Flash before, and i have to say you can make any kind of 2D game with it, and it is pretty popular. Just check any flash games website to see what it is capable of.

 

About the SHMUP idea, i don't mean you have to make a carbon copy of Space Invaders, or the sort, especially if it doesn't interest you.

The thing is, altough the games are quite different, the principles are similar, it's just that a simple SHMUP is a self contained thing (think, single screen game, no overly complicated map/obstacles, etc). And these simple SHMUPS happen to be pretty popular in beginners tutorials.

 

A bit of a side thought here, but, i think that the biggest draw you'll get from this project, is the game design/architecture part, and not the actual tool/engine nuances themselves (unless you plan on using the same tool in the future).

I think this is especially true, if you them intend to learn an actual language later, like C++, C#, etc (as opposed to AS3, or whatever scripting language the tool uses) to use with more advances engines/APIs (like OpenGL, SDL, DirectX), because, although the language may be different, you'll already be familiar with how to structure your game and how it works.

So it's not like if you use GameMaker (or some other more simple tool) you'll be wasting time since it doesn't scale well with more advanced projects, because you'll still gain the experience of game design/structure.

 

So, once again, as long as the tool is capable of doing what you want, just go with the one that feels more comfortable, or looks/is more simple.

 

I hope this doesn't come out too confusing, and if it is, i'll be happy to (attempt) explain further.

Share this post


Link to post
Share on other sites

Forgive me for not being clear about that - I must have free movement in a top-down game. Besides any educational projects I may start, I still want my first "real" project to be a zelda clone.

 

When you say game design/architecture, what exactly do you mean? I hope though that I get something from it indeed, even if I have to switch engines. Will I though with a pseudo-language like GML of game maker and then switching to C# -  do they have similarities?

 

Will definitely check Flash - how easy/difficult would you say that is it for a beginner? Will check Multimedia Fusion as well hand't heard of it. Do you know anything about Construct 2? From what I read, it left me some with good impressions.

 

Nope, thanks for the reply, every little bit can provide some insight which I can use since I am rather clueless in this matter :)

Share this post


Link to post
Share on other sites

If learning developing is your goal then I advise you to take a look at libraries such as LWJGL, Xna, Mono game, etc...

Picking Java or C# as your first language would be a nice way to start.

Although if you are a bit serious, you should learn C first.

 

Focus on learning code construction and design. [ Code construction= How to write code, Design= Architecture of the classes/ function/etc..)

This is the first step for developing games, Only then you should be concered with the game itself. 

Edited by WoopsASword

Share this post


Link to post
Share on other sites

If learning developing is your goal then I advise you to take a look at libraries such as LWJGL, Xna, Mono game, etc...

Picking Java or C# as your first language would be a nice way to start.

Although if you are a bit serious, you should learn C first.

 

Focus on learning code construction and design. [ Code construction= How to write code, Design= Architecture of the classes/ function/etc..)

This is the first step for developing games, Only then you should be concered with the game itself. 

 

I AM willing to do that, but truth be told I am looking for lazier options right now - e.g. game editors (like Game maker studio, construct 2 etc). The reason is that I actually want to have a taste of developing to know if I want to delve into real developing, if you want to know what I mean. But from what I've been seeing, even with tools such as these, it is possible to create a decent game to publish, right?

 

Specifically, GMS doesn't seem to have my "must-have" feature, which is top-down custom free movement - from what I read it has 8 directional tile movement (and it didn't even have diagonal movement until recently). Scratch that - it does - I was confusing it with RPG maker. Right now I am looking into Construct 2 which seems to support custom movement and seems to have everything a zelda clone needs.

But I am not convinced, mainly because of the lack of similar games made with Construct 2. I downloaded it, used it a little and it seems very easy to use. I would greatly appreciate feedback on Construct 2.

 

A friend of mine strongly suggests starting with Unity (C#) on the other hand.  

 

 

PS: I imagine real devs may see GMS or Construct 2 as "gimmicks" and with good reason. But between these two - and then vs Unity - which would you suggest? 

Edited by Mystic_Quest

Share this post


Link to post
Share on other sites

 

I AM willing to do that, but truth be told I am looking for lazier options right now - e.g. game editors (like Game maker studio, construct 2 etc). The reason is that I actually want to have a taste of developing to know if I want to delve into real developing, if you want to know what I mean. But from what I've been seeing, even with tools such as these, it is possible to create a decent game to publish, right?

 

 

If you ARE looking for lazier options, I would say Game Maker is the way to go. It's probably one of the best ways to get a feel of the game developing process without using too much code. And as SKYe mentioned earlier, it has been around for a while so if you get stuck it is very likely that there will be something out there to help you out. If, after trying this out, you feel like you're enjoying game development and want to do more powerful things, then I would say to move on to more complex tools like Unity. Needless to say, you will have to learn to code in any language eventually so I would say brush up on those C++/Java skills (C# is really similar to these it's like they've been mushed together... well not really but close enough) and just mock up a simple game on Game Maker. I really hope you don't burn yourself out from trying too hard to simulate a game like Zelda. Just start slow, and one day you'll get there. 

Share this post


Link to post
Share on other sites


My greatest fear of all though, is learning to use an engine/language only to find out midway, that a feature I want the game to have, is beyond its capabilities

This isn't really an issue in any of them that I've looked at.
They all generate HTML and Javascript, and allow you to inject code directly to work around any missing features in the engine.
(most also allow the option to 'wrap' the resulting scripts so they run outside a browser in various environments)

The comment about these tools being seen as 'gimmicks' is true, but sad.
I consider them valuable tools for learning.  They allow a new user to approach the concepts of game composition and design without the distraction of having to concurrently learn syntax, memorize library content, consider systems architectures, and so forth.

They can be used to create fully functional games with little requisite knowledge, certainly.
But to my perspective that is secondary to their value as the Teaching equivalent of Cross-platform development.
They allow someone to learn the concepts without regard to a specific language or operating system.

Share this post


Link to post
Share on other sites

try to find the easiest to use engine you can afford that supports non-tile based movement (AKA zelda-like).

 

that will get you going.  you'll get a taste for at least scripting of some sort (i'd imagine)  and making / using graphics and audio assets.

 

if you find it to your liking, then consider stepping up to a more powerful tool such as unity etc, and something like c++,  if the next project requires it. never use a bigger hammer than necessary, its more weight to lift. likewise, never use a bigger more complex tool, library, engine, language, or custom file format than necessary, its just extra work.

Share this post


Link to post
Share on other sites

Ok, to somewhat simplify the question of whether to use a tool (GMS, Contruct, Unity, etc) or a standard language + some API (think something like C++ and DirectX), one could say tools trade freedom (as in features available, and things like that) for simplicity of use.

 

You don't need to use C++ or C# and OpenGL/DirectX to be a "real" developer.

It is irrelevant what tool/language/API you use, as long as it works for you.

 

The main advantage of those tools, is that you focus mainly on the game creation part, instead of having to write code for every little thing your game does (like you would, if you use C++, for example).

The trade here is that the tool constraints what you can do (compared to, again, a language+API), but in turn allows to create stuff much faster and easier.

 

Oh, and what i meant for game design/architecture, is the game itself is composed (things like objects, how to do collision detection, impementing enemy AI, how to move your characters), and not code architecture.

Basically, this game developing knowledge will stay with you, even if you move to another language, because, although, you'd obviously have to learn the language and how to implement these things in that language, you'd already know how the game elements work together and how to make the game working.

This is knowledge that remains relevant regardless of whatever language or platform you use (like Looniper said, similar to cross-platform development).

 

There's one thing you could think about among those tools, and that is the basic language they use.

I mean, Unity uses C#, Flash uses AS3, Contruct 2 HTML5, so you could choose one that you think would be more useful in the future, although i must reiterate myself, and say that this is secondary to the experience you'll gain in the game design.

 

As a side note, although i mentioned Multimedia Fusion earlier, this is one i'd recommend not using, considering the alternatives.

This advice comes not from experience, but from the developer of the infamous I Wanna Be The Guy, who says he regrets using it.

 

As for Flash, from the tools mentioned, it's the only one i've used, and it's pretty awesome.

ActionScript3 is similar, in sintax, to C++/Java, which made it easier for me to get into, because i was already familiar with C++.

I can't say whether it is easy or hard to learn, but i think it wouldn't be much different from the other tools.

Another good point though, is that, pretty much like GameMaker, Flash has been around for a long time, so there are a lot of tutorials for it. Just make sure to search for ActionScript 3 tutorials, if you choose to use Flash, because AS2 is deprecated.

 

As a last note (and the fact that it is a SHMUP is a coincidence) here's a great game made in GameMaker, that i happen to discover recently.

It's like mix of Konami's Gradius and Irem's R-Type. You can find it here.

I just mention it here, so you can have an idea of what can be done with GameMaker.

 

Well, that's about it. I hope this is more comprehensive. smile.png

Share this post


Link to post
Share on other sites

You could look into http://www.godotengine.org/projects/godot-engine aka Godot *edit which has a python like language.  And recently I came across this:

http://superpowers-html5.com/index.en.html   edit* which use a superset of javascript.

 

Also this might come in handy: http://alternativeto.net/software/game-maker/

Edited by Infinisearch

Share this post


Link to post
Share on other sites

 

If learning developing is your goal then I advise you to take a look at libraries such as LWJGL, Xna, Mono game, etc...

Picking Java or C# as your first language would be a nice way to start.

Although if you are a bit serious, you should learn C first.

 

Focus on learning code construction and design. [ Code construction= How to write code, Design= Architecture of the classes/ function/etc..)

This is the first step for developing games, Only then you should be concered with the game itself. 

 

I AM willing to do that, but truth be told I am looking for lazier options right now - e.g. game editors (like Game maker studio, construct 2 etc). The reason is that I actually want to have a taste of developing to know if I want to delve into real developing, if you want to know what I mean. But from what I've been seeing, even with tools such as these, it is possible to create a decent game to publish, right?

 

Specifically, GMS doesn't seem to have my "must-have" feature, which is top-down custom free movement - from what I read it has 8 directional tile movement (and it didn't even have diagonal movement until recently). Scratch that - it does - I was confusing it with RPG maker. Right now I am looking into Construct 2 which seems to support custom movement and seems to have everything a zelda clone needs.

But I am not convinced, mainly because of the lack of similar games made with Construct 2. I downloaded it, used it a little and it seems very easy to use. I would greatly appreciate feedback on Construct 2.

 

A friend of mine strongly suggests starting with Unity (C#) on the other hand.  

 

 

PS: I imagine real devs may see GMS or Construct 2 as "gimmicks" and with good reason. But between these two - and then vs Unity - which would you suggest? 

 

 

Maybe you should start with the engine Love; It is lua based with the extension of compiling it into Love files (which is basically a zip with bunch of code files).

Not the best option but the simplicity will give you a hunch about development.

Construct 2 feels too easy (aka not the kind of development you need).

Unity is a nice pick, it's free and coding C# based or JS based will suit you well. 

 

However , I still suggest you to look into programming languages, programming principles and general knowledge about programming. 

If you feel the topic talks to you, then go ahead and dive in because I know it will be interesting. 

Share this post


Link to post
Share on other sites

Thank you for the valuable insight everyone smile.png

 

I am leaning towards Unity which seems to involve coding but also has some user-friendliness and perhaps later in the future I will work just with a simpler code-only API. I have already installed Construct 2 and saw how it works - it is very easy indeed but I want to see how coding all these logical events it has in its event editor is. I won't part with it just yet though. Perhaps I will download GMS to check it out too, but I am hesitant to invest in a pseudo-language or a lesser used language - so Unity with C# seems like a good choice that may also come in handy in my field.

 

Since I don't want to work with anyone for the time being - what about the difficulties in the art compartment? In general how difficult/time consuming would you say it is to draw 16bit sprites (that seems like lot of colors tongue.png)? I wanted to make something of SNES, not NES quality.

Edited by Mystic_Quest

Share this post


Link to post
Share on other sites


Perhaps I will download GMS to check it out too, but I am hesitant to invest in a pseudo-language or a lesser used language - so Unity with C# seems like a good choice


C# is actually a much less-used language than the javascript you find in GMS and Construct. ;)
It is good for scripting objects to work together, where javascript is good for formatting data and graphics output.

Each language has its usefulness, and the important thing is that learning any of them makes learning each after that much easier.

For graphics..
There are free tools like Sprite Maker or if you are working only for yourself, and not distributing in any way you could use images taken from the original game.. and if you later want to share it, replace them with something you have license for.

There are also quite a number of free sprite collections around the net you could pick apart for various things..  generic characters with walk cycles, trees, rocks, etc.

If you are aiming for a commercial product, you will eventually need to get in contact with an artist if you are not talented in that area yourself.

Share this post


Link to post
Share on other sites

This topic is 676 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this