Advertisement

Beginner asking for advice

Started by February 04, 2016 09:44 PM
15 comments, last by Looniper 8 years, 10 months ago


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.

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.

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php

Advertisement

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

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/

-potential energy is easily made kinetic-

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.

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.

Advertisement


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.

This topic is closed to new replies.

Advertisement