00:00
00:00
Newgrounds Background Image Theme

Our goal is for Newgrounds to be ad free for everyone! Become a Supporter today and help make this dream a reality!

Whats the best programming language for beginners wanting to make Games?

1,136 Views | 12 Replies
New Topic Respond to this Topic

I have a little bit of experience with coding with Python but not much. I've heard of Unity but I really want to learn coding. The top three I've heard is C#, C++ and Java. ls give me your opinion!


At 6/12/20 05:13 PM, HangryLuma wrote: I have a little bit of experience with coding with Python but not much. I've heard of Unity but I really want to learn coding. The top three I've heard is C#, C++ and Java. ls give me your opinion!


C# because Unity.


C++ if you want to get into the industry and get hired by a big studio.


Otherwise, C#.


= + ^ e * i pi 1 0


At 6/13/20 11:19 PM, sharpnova wrote:
At 6/12/20 05:13 PM, HangryLuma wrote: I have a little bit of experience with coding with Python but not much. I've heard of Unity but I really want to learn coding. The top three I've heard is C#, C++ and Java. ls give me your opinion!
C# because Unity.

C++ if you want to get into the industry and get hired by a big studio.

Otherwise, C#.


what about Java?


Perhaps these 5 computer programming languages and roblox studio

  1. Python
  2. Ruby
  3. Java
  4. C and C++
  5. JavaScript

PBSfanboy


At 6/16/20 11:57 PM, PBSfanboy wrote: Perhaps these 5 computer programming languages and roblox studio


i've not seen python being used often for making games


i've seen like one game using pygame but that was almost 10 years ago


Slint approves of me! | "This is Newgrounds.com, not Disney.com" - WadeFulp

"Sit look rub panda" - Alan Davies

BBS Signature

At 6/16/20 08:03 PM, ObadaDumblemon wrote:
At 6/13/20 11:19 PM, sharpnova wrote:
At 6/12/20 05:13 PM, HangryLuma wrote: I have a little bit of experience with coding with Python but not much. I've heard of Unity but I really want to learn coding. The top three I've heard is C#, C++ and Java. ls give me your opinion!
C# because Unity.

C++ if you want to get into the industry and get hired by a big studio.

Otherwise, C#.
what about Java?


For game programming? No.

It's a decent language for learning OOP, but a little oldhat and rather clunky. Just go with C#.


At 6/17/20 12:10 AM, S3C wrote:
At 6/16/20 08:03 PM, ObadaDumblemon wrote:
At 6/13/20 11:19 PM, sharpnova wrote:
At 6/12/20 05:13 PM, HangryLuma wrote: I have a little bit of experience with coding with Python but not much. I've heard of Unity but I really want to learn coding. The top three I've heard is C#, C++ and Java. ls give me your opinion!
C# because Unity.

C++ if you want to get into the industry and get hired by a big studio.

Otherwise, C#.
what about Java?
For game programming? No.
It's a decent language for learning OOP, but a little oldhat and rather clunky. Just go with C#.


java's really settled into its niche of being enterprisey


it seems to be great in theory for making crossplatform apps and enterprise style applications but i've not seen it used much outside that


technically you can use java to make android games, but on PC its not really a thing


Slint approves of me! | "This is Newgrounds.com, not Disney.com" - WadeFulp

"Sit look rub panda" - Alan Davies

BBS Signature

It really depends on the quality of games you want to make. Caveat: I have never made a game, I just know enough to ramble a bit.

The language you choose is somewhat less important than the ENGINE you choose, which somewhat determines the language you need to learn.


If you want to make games less for the money, and more for yourself as an art expression, Python is a way to go, however Python and Python-based engines (see: Ren'Py) tend to result in sluggish games. Ren'Py is used mostly for VN's (Visual Novels, which are not REALLY games, people), but you can do a lot of things with it that are less VN and more "actual game."


If you want to be an independent developer, Unity is a smash-and grab way to go. There are a lot of tutorials on YouTube, and you can make a very wide variety of games on it. Unity is replacing a lot of Flash on NG, and there are a ton of Unity-based games on Steam.


If you're a terrible person, you can use RPGMaker and make yet another Chrono-Trigger/FF clone that had a baby with a VN. Don't be this guy.


If you want to make an FPS type game, the Unreal engine is a good choice, but it would probably be too massive to host on NG.


I've seen at least one NG submission using Canvas.


If you wanted to make something mostly of your own creation, Visual Studio has a great environment and you can pretty much pick your language, and it interlaces whatever you make with prefab backend code that makes it relatively easy to submit to the windows App store. On the other hand, I've personally been burned by it because I've got a crazy database malformation/corruption error that makes it impossible to use, the only known "solution" being a complete reinstall of Windows 10, etc, which ... y'know, I kinda gave up on trying to fix.


If you want to do something with simple "AI", you might consider picking up LUA. My experience with LUA is limited mostly to a game called Avorion, but it's rather easy to use. Avorion is a space sim that uses XML to map coordinates to render 3D blocks, which make up ships, but it uses LUA to define (simple) AI behavior, and I think menu options.


I strongly recommend starting out with modding existing games to get a feel for game development. When Neverwinter Nights came out with the Aurora engine, for a while game studios wanted to know if applicants had done any modding with it as part of the interview process. Divinity Original Sin and Divinity Original Sin 2 both use homegrown editors from Larian Studios that you can make mods with, built on an engine called Osiris that uses a unique language. Skyrim, obviously, has a lot of modding potential, however it doesn't have an associated editor. If you can build a respectable (RESPECTABLE) portfolio of mods, you might be able to use it to get an interview with an established publisher.


If you're a savant, pick up the x64/x86 assembly architecture. Nah, don't do that, I'm just kidding that's... that's just crazy talk.


If you still can't decide and you're just spinning your wheels, check out a site called rosettacode.org. Basically, it shows you how to do the exact same things in a TON of different languages, great for comparing, thinking, grinding your teeth...


At 6/12/20 05:13 PM, HangryLuma wrote: I have a little bit of experience with coding with Python but not much. I've heard of Unity but I really want to learn coding. The top three I've heard is C#, C++ and Java. ls give me your opinion!


Start with C# def and you can start learning Unity at the same time, when you begin to understand algorithms and OOP you can upgrade to Unreal and C++, but if you want to work just with Unity, just continue to improve on that


At 6/12/20 05:13 PM, HangryLuma wrote: I have a little bit of experience with coding with Python but not much. I've heard of Unity but I really want to learn coding. The top three I've heard is C#, C++ and Java. ls give me your opinion!


C and C#


.


For a complete n00b, GameMaker, or something like that. Your games will be extremely limited in what they can do, and very inefficient, but you can put them together very quickly and it's pretty easy to use.


For web games, JavaScript. Also you'll need to know some HTML and CSS. Alternately, any of the n00b-friendly tools which can export to JavaScript, like Construct, and the like. Know that the tradeoff will be clunkier, buggier, less efficient games. Incidentally, I believe in modern times you can also export to JavaScript/HTML/CSS from GameMaker.


For a bit more serious game development, and particularly if portability is in mind, then Python isn't a bad choice. Just know that Python2 and Python3 aren't compatible with each other so pick one and stick with it. For new development, best go with Python3 unless you have a reason not to.


For the serious hardcores, C and C++, utilizing whatever per-system libraries and builtins are available. If you want cross-platform, then using only cross-platform APIs and functionality and/or writing mostly-portable code and then switching out the non-portable parts with a rewrite per each port/system.


Other options include Haxe, C# (in particular in conjunction with Unity), Scratch, and others.


You probably shouldn't be using Adobe Flash based technologies such as ActionScript or Stencyl or Adobe/Apache Flex. And while you can use Java, it has no benefits over Python.


You can of course use almost anything you want, but some things are better suited than others. I've even seen games made in Perl but I wouldn't recommend that.


If you are targeting a specific system or console, then you will be limited to whatever is available for that system.


And for the super duper hardcores, and to squeeze out every last ounce of efficiency, but for zero portability whatsoever, then the assembly language of the target system or console in question. But this is certainly not for n00bs. And you never have to go this far unless you just want to or unless you're programming for some very primitive systems, like retro consoles, or just want it to be perfect (and have the skills to pull it off).


For an in-game scripting language, Lua seems to be popular. But this would be once you reach the point of not only making a game (done in some other language), but you want the game itself to be programmable or allow scripting. The other common choice is LISP. These are of course not your only choices.


Eh, that's a rough overview at least. Should give some idea.


At 6/16/20 08:03 PM, ObadaDumblemon wrote:
At 6/13/20 11:19 PM, sharpnova wrote:
At 6/12/20 05:13 PM, HangryLuma wrote: I have a little bit of experience with coding with Python but not much. I've heard of Unity but I really want to learn coding. The top three I've heard is C#, C++ and Java. ls give me your opinion!
C# because Unity.

C++ if you want to get into the industry and get hired by a big studio.

Otherwise, C#.
what about Java?


This language is more for database or/and application for enterprize. Its a bit hard to make games with this but not impossible. Maybe you should focus attention on c++ and c#. You can use godot. It has a native language similar with python


YT Place Greeting and good bye

BBS Signature

Java is a good language for learning IMO because of how self-contained it is and all the built-in libraries for doing a lot of simple but useful things. You barely have to worry about setting up a compiler or environment or installing openGL or SDL or anything like that, just download something like BlueJ and you're good to go. It's somewhat verbose and there's a lot of things you just gotta do without really understanding it (wtf does public static void main(string [] args) even mean? just don't worry about it for now) but it's a small hurdle to jump.