Best choice for game?

Started by
13 comments, last by Saint Squireen 11 years, 9 months ago
Lately I have wanted to make a game, specifically an Skyrim-style RPG. I'm having trouble finding an engine, one main reason being I have a mac. Does anyone have any suggestions?

P.S. I'm only 14 and have never done anything of this kind before, so any help would be appreciated.
Advertisement
Take a look at unity , it supports mac too.


Lately I have wanted to make a game, specifically an Skyrim-style RPG.

At least it is not a MMORPG tongue.png
I actually already have unity, but I'm having trouble figuring out how to use it very well, which basically means I have absolutely no idea what I'm doing.

I actually already have unity, but I'm having trouble figuring out how to use it very well, which basically means I have absolutely no idea what I'm doing.


And there is the first reason to start small.
If you dont even know anything about programming at all then you better go start learning that first

Follow my hobby projects:

Ognarion Commander (Java/LIBGDX): https://github.com/OlafVanSchlacht/ognarion-commander

You can't skip the learning curve, so stop trying to.

If you want to develop games, start small and learn the basics.
Otherwise quit, and save yourself a ton of heartache.
Try to find some video tutorials online about unity and experiment while learning. This was a good source for me when I wanted to learn more about Unity and how to use it:

http://www.unity3dstudent.com/category/modules/

Just start small. Like make pong in Unity or any other small game eg Tic Tac Toe.

As your experiance grows you will get better and better and will be able to make your game some day :D.

Try to find some video tutorials online about unity and experiment while learning. This was a good source for me when I wanted to learn more about Unity and how to use it:

http://www.unity3dst...tegory/modules/

[/quote]




I watched the videos and they helped, but some of the stuff he does either doesn't work, or I don't have it for some reason.
You want to make a an RPG yet have never programmed anything before.
Well, like the others have said unity is a good start for a game like that but for now lets get you programming. Unity can use one of 3 languages: C#, boo or javascript.


Javascript has its uses but as a standalone language isn't much good and right now we need something standalone for you to learn with. One of its main uses is actually being embedded within other code to run little routines for you (such as spawning enemies) which generally needs a javascript interpreter. Unity happens to have one built in, all modern web-browsers have one built in. Unity can also use it for building HUDS (health bars etc) although that can be done through the other 2 options aswell. However you can't really just take a .js file and execute it on your mac like that, you don't need to learn it at this stage. Even when it does come to learning it there are a few other options like lua and python (I've seen both embedded into unity, although theres no real advantage over using javascript that I know of other than choice).

Boo is quite an easy language for .NET (windows only) and mono (available on mac, more on that in a minute). However its not particularly well documented and is a bit of a niche language (virtually no one uses it). It is however a fairly powerful language, anything you can do in C# you can probably do in Boo aswell. Its designed to have syntax very similar to python (which I once again will come onto). You should theoretically be able to learn Boo, do the usual newbies programs (coming onto them too) and then be able to make your game one day with it without having to learn any other languages.

C# is a much harder language than Boo and is also for .NET and mono. Its very popular for windows programming of all kinds and through mono can be used on a mac too. Its not really suited for beginners though. If you can get over that its supposedly a brilliant language (I don't use it although have a basic understanding of it) and can be used elsewhere other than games. You could one day have a job in programming using C# which isn't likely to happen if you were to use Boo (because its such a niche language)

Python. This language is a very easy to learn language (it was also my first language). Its available on all all major platforms and even a few niche ones like Nokia S60 phones (3rd party port) etc. It can't be used in unity directly, although with IronPython (python port for .net and mono) it can be used as a more powerful scripting solution to replace or supplement javascript. However to use it in unity there is a fair amount of programming to be done in either C# or Boo. I only mention it for a single reason. Neither Boo Or C# are great languages for a beginner (Boo may be similar to python but alots been changed to make it work nicely on .Net and Mono). Python is very easy to learn and then from there you can move onto other languages such as C# or Boo. There are game engines for python (panda3d, Python-Ogre is very good aswell but is very hard to use). There are 2 "dialects" that are ever so slightly different, python 2 or python 3. I'm personally familiar with both, there are far more resources for python 2 and alot of game engines for python use python 2 rather than 3. However I think the future is probably in python 3 and I wouldn't recommend making your game in python either.

.NET/Mono These aren't really languages, they're basically platforms for other languages to run on in a similar way to java having its JVM, I can't think of a less technical description. C# and Visual Basic.Net where both languages made by microsoft to run on .NET. However .NET is windows only. Mono is an open source clone of the .NET framework for all major platforms (including iOS and android aswell as your mac), nearly all .NET languages work on Mono and vice versa with just a few issues. You use mono languages in Unity (apart from javascript). Although Microsoft only made a few .Net languages themselves (C#, VB.NET, C++ Dialect/Port/thingy, J# - obselete and F# - also obsolete) there are several other languages made by 3rd parties for .net/mono. Boo is included in this, Python even has a port to .NET that also works on mono (so you don't need to have the python interpreter on all computers, you instead just give people the EXE, most people have .net or mono installed, not so many have pythons interpreter).
You'll notice that Boo, C# and Python I've turned into hyperlinks. Pythons link directs to the python foundations website of course, similar case for Boo however for C# I've actually linked you to the website for monodevelop which is an IDE (integrate development environment) for Mono languages, primarily C# and VB.net I think. Googling a C# download normally gives you the microsoft website which will try and download .NET which is windows only when you need mac so this link is much more relevant to your needs.



Anyway, the way I see it is that you have 3 choices.

1) Learn python first to get programming experience. This is the option I would recommend. After you are VERY familiar with python you should then consider doing one of the other 2 options.
2) Learn Boo right from the start, this is fully possible but Boo is used in so little places that it won't have much use outside of Unity so I won't recommend it for that reason. Its not much of a jump from python though, I don't know how to set it up to work on a mac either, alot of console commands needed but can be done.
3) Learn C# from the start. This is once again possible but its not a newbie friendly language, I'd try learning python first, after python this would be recommended as its just so popular, turns up in everything: games, desktop applications, database management, mobile development thanks to MonoTouch and MonoDroid (iOS and Android versions of mono respectively). Sure all of those CAN be done in Boo (thanks to how .net/mono works) but so many people use C# to do it that help is 2 clicks away - once your over the steep learning curve for those who have never programmed.


In whatever language you choose you need to start small. Do things like "Hello, World!" first (always the first thing to do in EVERY new language you learn, programmers law). Then you can do guess my number games. Learn how to use "complex" structures like IF statements and for and while loops. Functions will also be VERY important and classes/OOP will be very important for game devlopment. I've listed these things in the order that they should be learnt aswell really. Afterwards you can probably move onto making a text adventure, basic ones like a computerised version of any of the "Fighting Fantasy" books with automated dice rolling can be done with just IF statements, a random dice roll function and a few variables for your inventory. Although as soon as you add save games you will realise that text adventures can be very complex, and thats just on a book that gives you 3 choices what to do let alone text adventures that ask you what you want to do (like walking north, open mailbox) such as Gork. Its all good experience. Then come back here and ask about unity.

Btw, if you go with python at first, learn through the sequence I gave until just after you've worked out how to use functions, leave classes then you can make the switch to C# and start the process again although this time it will probably be quicker as you've got experience in how program logic works. Object orientated code using classes is so much easier in C# and VB.net than in python.



6677 has done it again.
I used to make the odd monster post on other forums (one was 4 pages of A4 in size 12 times new roman once), seems I'm picking up the habit here and I've not been here 1 week :D
One weeks worth of posting crammed into a single post! Impressive!

Back on topic:

I agree with 6677 that you should definitely focus on programming first. It only makes sense. I also agree that python is a great first language. (it was my first as well)
That being said, if you are using Unity or plan on using it I would say C# is the way to go. It's a great language and really not a terrible pick for a first language. There's tons of tutorials and tons of documentation for it.
I think there are 2 nice free C++ tutorials online
1. www.cplusplus.com (easy)
2. www.learncpp.com (bit more detailed)

On YouTube there are more.
Learn that first before you even think about creating a videogame.

This topic is closed to new replies.

Advertisement