Noob Game Programmer

Started by
10 comments, last by Tutorial Doctor 10 years, 5 months ago

Hey guys,

I'm new here and what brings me here is a need of advice which will point me in the right direction.

I've been dying to develop a game for quite some time now, I have a complete design (about 100 pages) of details about the game and everything in it, including the type of art and music used to make it.

Now, I realize that I will have to hire concept artists, animators, musicians and such to make this project a reality. While I consider myself to be quite good with the design, I need to learn at least one specific role to make this game come true. I chose programming.

The reason is because while I have a great imagination, I am not a blessed artist as a lot of people out there are.

I was always far on the science/math side... even my career (ultrasound physics). I am pretty sure Programming would be the best choice for me.

I'm not saying that I will be successful with it, but at least I want to try.

Well, as I understand, artists make the visual parts of the game, such graphics, music and animations, while programmers are the ones who make it all work together, please correct me if I am wrong.

I'm interested in developing my first game which would be very similar in the style as Don't Starve, Machinarium... which are point and click, as well as keyboard controlled games. This game will also offer a multiplayer experience online.

I am a complete noob and never even touched a code of any type. I want to learn the best language which will be suited to the above style/type of a game, but also could be utilized to make more advanced 3D FPS, Online games in the future.

Which programming language should I learn?

Let me know if there is any more questions you need in order to answer this question.

Thanks a lot guys.

Advertisement

Most video games, small and large, are written in c++. There are also lots of *free* engines out there that are written in c++.

However, some people believe it's better for beginners to learn an easier programming language and then switching to c++.

I personally learned flowcharts, then psudo code, then c++.

Thus, I can't tell you what language you *should* learn, you have to decide that yourself. Do some research and check your needs. It's also a good idea to learn programming logic with flowcharts or psudo code and then moving to actual programming.

Hope this helps.

You might want to rapid prototype your design from your document. The quicker the better for the game.

If you're new to programming and you're looking for an easy entry point, check out this here: http://www.thegamecreators.com/?m=view_product&id=2000

It's what I started out with when I first got into game development. It's a very powerful and easy to use programming language based on BASIC, and it's completely free to use until you wish to sell your games (in which case I think you only need to pay like 50 bucks for a license).

Just to give you an example, the following code will display a rotating cube on the screen:


sync on
sync rate 60
backdrop on
hide mouse

make object cube 1, 10

do
   yrotate object 1, wrapvalue( object angle y(1) + 4 )
   sync
loop

The language is powerful in that it allows you to do a lot of things with very few commands. You don't have to worry about any of the underlying troubles of rendering things, or how to load meshes into memory, or how to load and play music, it's all built in already. You get to focus more on making games this way.

DarkBASIC Pro uses DirectX 9.0c Aug 2007 for its graphics (2D and 3D), so it will only run on Windows. With that said, I heard WINE runs it smoothly on Mac and Linux.

"I would try to find halo source code by bungie best fps engine ever created, u see why call of duty loses speed due to its detail." -- GettingNifty

Most video games, small and large, are written in c++. There are also lots of *free* engines out there that are written in c++.

However, some people believe it's better for beginners to learn an easier programming language and then switching to c++.

I personally learned flowcharts, then psudo code, then c++.

Thus, I can't tell you what language you *should* learn, you have to decide that yourself. Do some research and check your needs. It's also a good idea to learn programming logic with flowcharts or psudo code and then moving to actual programming.

Hope this helps.

The way I understand this is that C++ will be sufficient for my simple game and also be able to deliver for more advanced projects later down the line, but it is not easy to learn. I prefer learning one language over switching from easier one to more difficult one.

Any recommendations on what software to use in order to learn programming logic with flowcharts / pseudo code?

Thanks a lot!

You might want to rapid prototype your design from your document. The quicker the better for the game.

I hear you. Well, as soon as I can put something together, then I sure would do that as a move along with the progress.

Thanks for a great advice.

Any recommendations on what software to use in order to learn programming logic with flowcharts / pseudo code?

I personally just used a pen and a piece of paper for drawing flowcharts as they are really easy to draw.

I just searched the internet for good flowchart tutorials but to my surprise I couldn't find any. I learned flowchart in a programming class so I'm not really sure how you could start self studying it.

Here's what I did find, I hope they're useful for you:

A basic explanation of flowcharts and a simple real life flowchart:

https://www.moresteam.com/toolbox/process-flow-chart.cfm

Some sample flowcharts: (read the title, try to draw a flowchart yourself, then compare it to the one on the page)

http://schoolnet.gov.mt/joe.vella/Flowhome.html

Some basic programming tutorials, comes with flowcharts:
http://beginners-programming.blogspot.co.uk/2007/11/welcome-to-beginners-programming_21.html

Note that flowchart symbols are not the same in these tutorials (hence why I said I couldn't find any *good* one)

So want to create a game huh, learn C# and use Unity (unity3d.com). It's the quickest way to build up your prototype. Since Unity doesn't really mind the code to be messed up to finally show things up (disregard the performance), you can actually get the sense of the game you want to create.

If you want to go deeper that may take a very long time (since you said you're having a career now) rather than prototyping a game first, you can start with C++. Find some C++ basic books (Accelerated C++, The C++ Programming Language, etc.), and begin with game development books, like Game Coding Complete. This one takes patience if you just started. Enough math and physics help you in dealing with geometries, shaders, and physics, but the coding architecture and design takes experience to finally able to scale.

In your situation I really recommend that you use Unity instead, it saves your time if you want to make a game. If you want things to go custom and faster, then you can go to C++ stuff after that if you're interested.

Yes, I am not too concerned about getting the prototype right away. I realize I will need quite a bit of extra money saved to hire artists to do the art/music and such. I'll practice the flowcharts to get an idea and get these books, and take my time to learn the C++. To be honest, it sure looks pretty damn complicated, but.... just as with everything of a different nature. Pretty much just like learning a new language!

Thanks for help, guys.

Yes, I am not too concerned about getting the prototype right away. I realize I will need quite a bit of extra money saved to hire artists to do the art/music and such. I'll practice the flowcharts to get an idea and get these books, and take my time to learn the C++. To be honest, it sure looks pretty damn complicated, but.... just as with everything of a different nature. Pretty much just like learning a new language!

Thanks for help, guys.

Good luck and looking forward for your game! smile.png .. It's very complicated but it'll pay you off. C++ is as if the mother of many modern programming languages. When you know it, it's easier to use Java/C#/JavaScript/etc., because the concepts are all there.

This topic is closed to new replies.

Advertisement