• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.
Sign in to follow this  
Followers 0
CodyDuhh

Extreme Beginner Help!

14 posts in this topic

Hey guys, my name is Cody, and I'm 18 and extremely interested in making video games, but I have close to no idea of how to get started. I know I need to get to learn programming languages, but I don't know what languages to learn; so basically, I know what I need to get started, but I have no idea HOW to get started.
 

If you guys can help me with the following:

  • Languages
  • Programs
  • Engines
  • Good beginning projects

My ultimate goal right now is to make a game a lot like Fire Emblem: Sacred Stones for Gameboy Advance. (A 2D, top-down, turn-based strategy RPG.) But I know I'm probably going to have to make some simpler games, or mod other games before I tackle that.

Thanks in advance for the help!

Oh, and sorry if this isn't the right place for this, but I need the help!

0

Share this post


Link to post
Share on other sites

RPG maker would get you up and running rather quickly. If you want to learn programming I can recommend the nice bitesized tutorials at Codecademy for JavaScript and Python. Don't worry so much about which language is best, just make sure you're having fun learning, because you'll find learning one language will make it easier to learn another (skills are transferable).

1

Share this post


Link to post
Share on other sites

Hi Cody, this is a great question and it gets asked a LOT. Whatever happens, DO NOT ASK THIS QUESTION ON STACKOVERFLOW because you will get excoriated!! (LOL) The very first thing you absolutely need is a good text editor (better than Notepad), such as Sublime Text 2. The most important thing is to get a text editor which highlights code in different colors making it at least fifty times easier to understand what's going on.

 

Here is a simple javascript example game. When you check it out, make sure to view the source code, and copy and paste it into your text editor for testing. You can make changes to the code, save the changes, and view the file in your web browser to see the changes.

 

Whatever programming language you end up using, it will function in more or less in the same way as the javascript example game.

 

With regard to what language to use, I think the following comments from boogyman19946 (in a different post) are spot on:

 

"Start with a language that provides a minimal amount of control so that you can accomplish what you want. There is no reason to choose a behemoth like C++ because it's "faster" or because it gives you "more control." You're not programming task schedulers, you're learning to make a game. You don't need the extra control! It only adds complexity and makes things harder. When the time comes that you need the proverbial speed of a compiled language, you'll quickly realize that picking up C++ isn't as hard as it would have seemed at first because you'll know most of what you need already."

 

In the spirit of boogyman19946's comments, I recommend starting out with Ruby, using the Gosu Gem. Ruby is the easiest mainstream language to learn, and once you get comfortable with it, all the other programming languages will begin to make sense. Here is a comment which somebody made on the Gosu Forums, which expresses how many people feel about Gosu:

 

"A lot of....kids (not me, ok...me too...), struggle with RPG Maker xp/vx/2003/etc. Well tonight I downloaded Chris Pines Pragmatic Programming - Learn to Program Ruby and that makes it at LOT easier.  And I get so frustrated with RPG Maker VX because I can't find everything to help me understand.  Like the Window_Base script inherits from Window and that script isn't in the script list for editing... But THANK GOD (like really, thank you God) I found Gosu."

 

Another bonus of Ruby is that it is the language of Rails (the future of web development). If you are on a PC, installing Ruby is really easy.

 

Here is what the javascript example game from above looks like in Ruby:

require 'chingu'
include Gosu
class Game < Chingu::Window
  def initialize
    super(600,400,false)
    self.caption = "Simple Game"
    self.input = [:holding_left, :holding_right, :holding_up, :holding_down, :esc]
    @player = Chingu::GameObject.create(:image => Image["face.png"], :x => 30, :y => 70)
  end
  def holding_left;   @player.x -= 3;  puts "left";   end
  def holding_right;  @player.x += 3;  puts "right";  end
  def holding_up;     @player.y -= 3;  puts "up";     end
  def holding_down;   @player.y += 3;  puts "down";   end
  def esc;  exit;  end
end
Game.new.show

Definitely simpler and easier to learn than javascript or C++.

 

Python is also pretty easy to get started with, using Pygame. Java is good for starting out too.

 

PickupSticks is a great suggestion for a first game to try making.

Edited by ml_
1

Share this post


Link to post
Share on other sites

I was exactly where you are about 6 months ago XD I know the feeling of not knowing where to start.

So far I've only released one text-based game. Currently working on a 2D java based game.

I suggest you start with programming. I started with Java watching a series of tutorial vids. http://thenewboston.org/list.php?cat=31

That'll set you up with a basic understanding of programming.

I also suggest starting with a text-based game to help you memorize and let whatever language you chose soak in a bit.

Best of luck to you!

0

Share this post


Link to post
Share on other sites

Firstly I do NOT recomend java and c# as these are very object oriented programming languages and even the simpliest applications need a little bit knowledge of this term: OOP. I started with C++ as a programing language, Visual Studio 2010 Express from Microsoft site (its totally free and you can get now VS 2013 Express) as IDE and HGE(Haaf's Game Engine) as the game engine. And now after six months of work I have done few prototypes (look on my gallery on my profile).

 

Secondly, you must learn the basics of programming, do some exercises to get the problem solving ability and practice a lot. The HGE site have few tutorials to get you started, the comunity is not so active, but any problem i faced is somehow solved on the forums so i am sure 100% of the problem you will get with this game engine have its solving on the forums.

 

Finally, you can start with whatever you want and with what you think it suits to you and your goals but if you will consider working with HGE and C++ in Visual Studio don't be shy to tell me if you need help or got some problems.

 

NOTE:I did'nt read the other posts in this thread, only Cody's post.

Edited by Bratie Fanut
-3

Share this post


Link to post
Share on other sites

I do NOT recomend java and c# as these are very object oriented programming languages and even the simpliest applications need a little bit knowledge of this term: OOP.

Pretty much, the only OOP related difference between "hello world" in c++ vs java or c# is the word "class" is required.

You don't have to understand the concepts right away in order to use them.

Actually, more and more beginning programming classes are using Java.

Even with C++ you will eventually need to understand OOP, so you might as well learn it early.

 

Not to say c++ isn't an option...

Edited by minibutmany
2

Share this post


Link to post
Share on other sites

 


I do NOT recomend java and c# as these are very object oriented programming languages and even the simpliest applications need a little bit knowledge of this term: OOP.

Pretty much, the only OOP related difference between "hello world" in c++ vs java or c# is the word "class" is required.

 

class and public words.. but i dont want do go deeper with this. I totally understand your opinion and agree with you. I upvoted you. What i was trying to say to Cody is that he can start with C++ if he wants to because i was a total begginer 1 year ago and now learning c++ provided me with the necessary knowledge to make few small games and understand c# and java too.

1

Share this post


Link to post
Share on other sites

I would suggest going the c# or java way. Personally i started with c++, but after switching to c#, i am regretting not taking that road from the start.

 

c++ is good, but java and c# is so much easier, and when you are a beginner, you don't need the power of c++.

 

ofcourse that's just my opinion.

1

Share this post


Link to post
Share on other sites

I would suggest going the c# or java way. Personally i started with c++, but after switching to c#, i am regretting not taking that road from the start.

 

c++ is good, but java and c# is so much easier, and when you are a beginner, you don't need the power of c++.

 

ofcourse that's just my opinion.

It's a good opinion, even for advanced programmers.

No one wants to use a more complicated language without a good enough reason. Unless you are creating a game engine or you are working in game development industry, you really should be looking at the easier alternatives.

There is ALOT more to game development than just the programming.

Consider how long it takes to create a full game. Translate that into hours by comparing the amount of work needed for each language.

You could do the same thing with any programs, such as Maya vs 3dsmax (not that I have any clue which of those is easier)

 

My brother is creating some fun games with Game Maker. And he spends days on it, not years. I work in years.

My games may be more complicated, with scene graphs and all that jazz, but we all do this because games are fun. And so I believe there's that distinction between programmers: I choose to use all my time creating something that may or may not ever be completed, while my brother makes fun games that are short and sweet.

Edited by Kaptein
0

Share this post


Link to post
Share on other sites

I think modding is a good place to start for game design. It allows you to make a game (although with a lot of limitations) without all the work and gives you a look at how the game was made. I think one of the best games for beginners to mod is Warcraft 3. It is where I got started. It has an easy to use map editor, an object editor, and uses both drag and drop scripting and classic scripting with it's custom language Jazz. Skilled users have created RPG's, FPS's, and even a roller coaster simulator. I've heard Starcraft 2 is has more features but I've never played it. Other good games to mod are Half-Life 2 and Civilization 4. Civ 4 can be easily modded with XML or you can get even more power using Python.

 

For programming I started with BASIC. Don't do that. It is an extremely messy and outdated language. Modern dialects might be better but, I have not tried them. After a few weeks with BASIC, I switched to Python. I would recommend Python because it is easy to learn, write, and read. Another good thing is that many programs use it for scripting, such as Blender (which has a game engine) and also, many libraries have bindings in it. What doesn't have a Python binding will have it in C/C++ which could be included into a python program with ctypes. A good thing with C/C++ is that so many programs are written with them and most libraries have bindings in it. Another thing is that many languages are inspired by it.

 

With programming you should get inspiration. You could read open source programs' code (start small). A lot of important and advanced software is open source. The DOOM engine, SCUMM, and even the more recent id tech 4, are now open source. You can even find the source for Valve Software products at their GitHub page. Just don't copy anything they have because it is not FOSS.

0

Share this post


Link to post
Share on other sites

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  
Followers 0