Jump to content

  • Log In with Google      Sign In   
  • Create Account

Beginner in Programming for games help please


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
13 replies to this topic

#1 Simonlvschal   Members   -  Reputation: 104

Like
0Likes
Like

Posted 20 November 2013 - 04:27 PM

So i really like to play games and i have been loving it for ages but now time has come for my self to actually start learning other Programming Language then MYSQL and PHP.

 

i am intrested in making 2D games, Text Based, Simple Games like pac man and so on or something close to that. 

 

And i need help to decide what language is best to write in and how to start so all help is welcoming.

 

i have some ideas

 

C#

C++

Java maybe?
but the problem is i dont know where to start 

 

Give your ideas on how to start and i will glady accept that help :D



Sponsor:

#2 PeterF   Members   -  Reputation: 606

Like
5Likes
Like

Posted 20 November 2013 - 08:01 PM

This gets asked quite a bit. There is no <i>best</i> language. There is a best language for <i>you</i>, but that's not necessarily going to be the same for everyone else. Try picking a language, look up [language name] tutorial on Google, and go from there. If you like that language, go with it. If not, try another one. It might be a good idea to look at why some people like a language, or why it was developed - was it designed to give the programmer intimate control over the system, but it wasn't supposed to be user-friendly? Was it meant to get the most out of expensive programmers while relinquishing control of the system and perhaps wasting memory or processor time? These are some questions you might want to ask yourself when picking a language or moving forward.

A game won't just happen overnight. You're going to have to spend a lot of time on the basics of any language you choose before you get to anything you might consider a game, so you'll just have to stick with it.

Also, there's a difference between enjoying playing games and enjoying making them. Don't get aggravated, discouraged or confused if you don't immediately take to the game development process, it happens. Try to stick with it, ask questions if you get stuck, take a break, come back to it, try a different approach. It's a challenge, but it's not for everyone.

 

Good luck!



#3 Satharis   Members   -  Reputation: 978

Like
1Likes
Like

Posted 20 November 2013 - 08:32 PM

I highly recommend C#. Knowing C++ as well is very useful in the long run, it teaches you a lot about the lower down parts of the code so you can make more informed choices in other languages at the very least. But if you haven't done any game dev really it's good to pick up an easy to learn language like C#, XNA is a good library to get started with.

I really do not recommend Java, although I'm sure some out there will disagree with me, as a language it doesn't offer much over C# other than the fact you'd have to use Mono to target all platforms like Java does. In terms of game development it has some of the least support of any mainstream language, even Python with Pygame would probably be way better than Java quite frankly.

Anyway just pick something that looks interesting and get to work, you learn a lot more by experimenting than asking whats the best thing, imagine how many hours of code you could have written in the time you might sit there worrying about if you picked the right thing.

#4 Dragonsoulj   Crossbones+   -  Reputation: 2110

Like
0Likes
Like

Posted 21 November 2013 - 01:06 AM


now time has come for my self to actually start learning other Programming Language then MYSQL and PHP.

 

As you have already been given suggestions on approaching the language question, may I ask why you want to learn some programming language before MySQL and PHP? There is nothing wrong with starting with your goal.

 

Text based games could be a decent start while you learn, to give you a little motivation as you go along. Write pieces for your game as you learn.



#5 Simonlvschal   Members   -  Reputation: 104

Like
0Likes
Like

Posted 21 November 2013 - 01:08 AM

 


now time has come for my self to actually start learning other Programming Language then MYSQL and PHP.

 

As you have already been given suggestions on approaching the language question, may I ask why you want to learn some programming language before MySQL and PHP? There is nothing wrong with starting with your goal.

 

Text based games could be a decent start while you learn, to give you a little motivation as you go along. Write pieces for your game as you learn.

 

uh sorry it might have sounded wrong but i already know PHP and MYSQL on quite a nice level :D 

 

and i am instrested in making games and i have been so for quite some time and i learned by many that C# and C++ is a good choice to make but i dont know where to start



#6 Dragonsoulj   Crossbones+   -  Reputation: 2110

Like
4Likes
Like

Posted 21 November 2013 - 01:32 AM

Start coding! Look at the two you have there, see which style you like best, and run with it. You already know PHP so looking at code should give you some idea of what you are getting in to. Either that, or look up the features of each and see which agrees with you the most.



#7 LennyLen   Crossbones+   -  Reputation: 3780

Like
0Likes
Like

Posted 21 November 2013 - 04:51 AM

As has already been said, what language you choose is mostly irrelevant, though you might want to think about what platforms you're targeting before you make a decision.



#8 Vidar son of Odin   Members   -  Reputation: 1322

Like
-2Likes
Like

Posted 21 November 2013 - 09:46 AM

"C++ was developed in the 1980s, based on the C language, but with a bottom-up approach. C++ uses object-oriented programming (OOP) concepts like classes, objects, and polymorphism. Data is considered more important than process. It also has useful OOP features like data hiding for security.

However, C++ is not a true OOP language, because it is quite dependent on the procedural fundamentals of C. Like C, it compiles into binary and is executed natively. Being powerful and fast, it is chosen for intensive gaming applications. However, running natively means a single error could cause a total computer crash and data loss.

C# is the latest toolset, based on C++ code. Developed by Microsoft towards the turn of the 21st century, it is a .Net language, and in some ways, similar to Java. This high-level language is first compiled to a middle language, and then into direct binary. Thus, you can consider this code to be interpreted in run time. C# is compatible with most operating systems, and programming is simplified thanks to built-in functions. Note that this may be a disadvantage if you are a serious programmer, because the abstractness takes away some degree of control from you.

C# is slower than C or C++ because it runs on a virtual machine rather than a native one. Programming errors may destroy the virtual machine, but your computer remains unharmed. The speed difference goes unnoticed on the super-fast computers you have today."

I started with C++ and HGE (Haaf's game engine) but I recommend C++ only if you enjoy pain as it is very hard to understand at the beginning but in the long run C++ is better than Java or C#, in my opinion.  


Check out my portfolio : https://bratie.wordpress.com

"Don't gain the world and lose your soul. Wisdom is better than silver or gold." - Bob Marley

 


#9 boogyman19946   Members   -  Reputation: 1061

Like
7Likes
Like

Posted 21 November 2013 - 12:32 PM

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.


Edited by boogyman19946, 21 November 2013 - 12:32 PM.

"If highly skilled generalists are rare, though, then highly skilled innovators are priceless." - ApochPiQ

My personal links :)
- Khan Academy - For all your math needs
- Java API Documentation - For all your Java info needs :D
- C++ Standard Library Reference - For some of your C++ needs ^.^

#10 Secretmapper   Members   -  Reputation: 865

Like
1Likes
Like

Posted 22 November 2013 - 12:54 AM

Guys really? I mean, I'd make him consider HTML5/JS if I were you, and since he has MySQL/PHP experience I'd figure he has some webdev experience. C, C++, Java is all too complex for a starter IMHO.



#11 LennyLen   Crossbones+   -  Reputation: 3780

Like
1Likes
Like

Posted 22 November 2013 - 08:10 PM

Guys really? I mean, I'd make him consider HTML5/JS if I were you, and since he has MySQL/PHP experience I'd figure he has some webdev experience. C, C++, Java is all too complex for a starter IMHO.

 

Well, we don't know if he wants to do web based games, which is why I was curious about what platforms he was targeting.  If he wants to write native code for a platform, then HTML/JS are going to be poor choices.

 

Secondly, Java is often used as a language for teaching beginners (and the OP isn't even a beginner programmer), so can hardly be considered too complex. Anybody who has experience with programming paradigms and techniques should be able to pick up the three languages you mentioned without a lot of difficulty.



#12 ml_   Members   -  Reputation: 280

Like
4Likes
Like

Posted 23 November 2013 - 01:25 AM

If you are absolutely just getting started, here is a really basic javascript example game. If you just view the source code, and copy and paste it into your text editor, you will be able to look at it and figure out what it does. You can make changes to the code, and then just save and view the file in your internet browser to see the effects. Whatever language you use, the code will basically function more or less like that example.

 

If you plan to learn Rails someday so that you can earn lots of money as a Rails developer, then you might try the Gosu gem, which runs on Ruby. Installing Ruby is really easy and so is installing Gosu. In my opinion, Ruby-based Gosu is the easiest programming language/platform to learn out of all languages and platforms. Boogeyman19946's comments are spot on. Once you learn to use Ruby, all the other programming languages will make more sense. There is also a C++ version of Gosu, which has faster processing speed, but is not as easy to learn.

 

Just for the sake of comparison, here is the same game as the javascript example, written 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

Edited by ml_, 23 November 2013 - 02:14 AM.


#13 colonycapture   Members   -  Reputation: 110

Like
0Likes
Like

Posted 29 November 2013 - 03:07 AM

I'd try a good game engine, not because you need one, but because they tend to have AWESOME help for beginners to use their engines (Which will also teach you how to code!) We use Unity



#14 3Ddreamer   Crossbones+   -  Reputation: 3156

Like
0Likes
Like

Posted 30 November 2013 - 10:33 PM

Hi,

 

 


C#

C++

Java maybe?
but the problem is i dont know where to start



Give your ideas on how to start and i will glady accept that help

 

 

Stay the  #%@*#!!  far from C++ until you reach intermediate level in another coding language! This will save you months, if not years, of confusion and unnecessary delay in getting your first few games finished.  The language of C++ is just fine but so extensive that you will get lost soon. It is too forgiving of bad coding habits to really be practical for a beginner.

 

The C# is a great choice, but Java has its place, too, especially if you like it and it is being used for scripting gameplay.

 

 

1)  Choose a game engine which suits your genre of game and your skills.

 

2)  Use the main language which is supported by that game engine.

 

3)  Make several applications and 2D console type games (like tic-tac-toe, crossword puzzle, word search, etc.) before even touching a game engine.

 

4) Assemble your workflow pipeline of software and applications connected to your game engine of choice.

 

5) Create a few 2D games using the game engine.

 

6) After 1-2 years practice, begin making 3D games.  (I say this because you will be tempted sooner than that!  wink.png )

 

Read my signature below here for solid general advice...


Personal life and your private thoughts always effect your career. Research is the intellectual backbone of game development and the first order. Version Control is crucial for full management of applications and software.  The better the workflow pipeline, then the greater the potential output for a quality game.  Completing projects is the last but finest order.

 

by Clinton, 3Ddreamer





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS