It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
One might say it's a weird idea to create a thread dedicated to programming on a forum dedicated to gaming, but think about it. Knowing what makes your favorite game tick might help explain a quirk or a way to work around it. And why to never work in Unity.

This way there's a centralized place to argue over why Rust is either here to stay or will vanish in 3 weeks, and why nobody should use Python subindings. I'm kidding, mostly. But I'm sure many strange discussions can and will be held here.
Let me start by kidding too then :P. Perhaps we should all listen to Sebastian and...
Post edited October 07, 2022 by WinterSnowfall
Why does Python live on land? Because it is above C level!

"With great power comes great responsibility... to fuck up".
avatar
sanscript: Why does Python live on land? Because it is above C level!

"With great power comes great responsibility... to fuck up".
Unbound ;s. Everywhere.
I think this is a great idea. Most big gaming and tech forums have a programming thread and I don't see why GOG shouldn't have one as long as its game related.

I'm an infant when it comes to this but I do have a question;

Is it better to learn programming through making in a game (in a simple-ish engine like RPGMaker) and learn stuff as you go along the dev process or is it better to stick to a syllabus and complete the basics through that? I've seen resources like freecodecamp go the later route and mostly no-one going the former route. I'm talking about learning it on the side, and not for going pro (at least within one year).
avatar
Shadowstalker16: I think this is a great idea. Most big gaming and tech forums have a programming thread and I don't see why GOG shouldn't have one as long as its game related.

I'm an infant when it comes to this but I do have a question;

Is it better to learn programming through making in a game (in a simple-ish engine like RPGMaker) and learn stuff as you go along the dev process or is it better to stick to a syllabus and complete the basics through that? I've seen resources like freecodecamp go the later route and mostly no-one going the former route. I'm talking about learning it on the side, and not for going pro (at least within one year).
What I've heard suggested is that you should create a recreation of an old (yet simple) game like Space Invaders, Pong, or Pac Man, and then see what twist you can add to it. If you can clone something, you can create something once you've analyzed the clone. Not Tetris, because you need to understand more than you think.

Don't use a middleware engine, those are typically terrible crutches and leave you with dead end skills. Nobody is going to look at you coding robots in MegaZeux and call that impressive, because there is nothing that can be applied to, aside from general scripting ideas.
Post edited October 08, 2022 by Darvond
I guess it depends on your level of interest in coding (programming).

Personally I have always been driven by coding for a purpose, so learn as you go. No doubt you get quicker results that way, but they can be less than ideal or just good enough ... once again depending on what you want.

Ideally perhaps, it is better to learn via some appropriate syllabus, where you learn the theory and cross the T's and dot the I's. That would certainly give you a better grounding and perhaps pay greater dividends in the long run. But it can be a long and boring and even overwhelming process. I prefer the monkey see monkey do approach, where quicker results, even if less than optimal are a great encouragement ... you can also see outside the box at times. It can be a bit like musicians who have been well trained and schooled, but cannot jam or write a song ... or not a good one. Intuition and not knowing boundaries or not being fooled by them can pay dividends too.

For sure, coding can turn some folks loopy ... exceptions aside.
Post edited October 08, 2022 by Timboli
avatar
Shadowstalker16: Is it better to learn programming through making in a game (in a simple-ish engine like RPGMaker) and learn stuff as you go along the dev process or is it better to stick to a syllabus and complete the basics through that? I've seen resources like freecodecamp go the later route and mostly no-one going the former route. I'm talking about learning it on the side, and not for going pro (at least within one year).
avatar
Darvond: What I've heard suggested is that you should create a recreation of an old (yet simple) game like Space Invaders, Pong, or Pac Man, and then see what twist you can add to it. If you can clone something, you can create something once you've analyzed the clone. Not Tetris, because you need to understand more than you think.

Don't use a middleware engine, those are typically terrible crutches and leave you with dead end skills. Nobody is going to look at you coding robots in MegaZeux and call that impressive, because there is nothing that can be applied to, aside from general scripting ideas.
Yes, cloning old classics seems to be a great way to learn by doing. Even some of the courses on Udemy are sold as ''Learn to make a 2D platformer in Unity'' etc, though that seems a step up from stuff like pong.

For someone who doesn't even know scripting, its difficult to gauge the depth of the engine I want to use, which I guess is a downside to this approach to learning. I'm just reading up on MegaZeux but I have seen / heard of the Spring Engine for making RTSs, though it uses lua and that seems to be a niche language compared to stuff like Python.

Also , as a noob who's more interested in the finished product (ie the game) than the process of making it, template-ey engines like RPGMaker are tempting because they're cheap and (allegedly) let you make something playable quite quickly. There's actually a whole community based on making Pokemon fangames with RPGMaker XP, which is very compelling, though probably not very optimal for learning, as you said.
avatar
Timboli: I guess it depends on your level of interest in coding (programming).

Personally I have always been driven by coding for a purpose, so learn as you go. No doubt you get quicker results that way, but they can be less than ideal or just good enough ... once again depending on what you want.

Ideally perhaps, it is better to learn via some appropriate syllabus, where you learn the theory and cross the T's and dot the I's. That would certainly give you a better grounding and perhaps pay greater dividends in the long run. But it can be a long and boring and even overwhelming process. I prefer the monkey see monkey do approach, where quicker results, even if less than optimal are a great encouragement ... you can also see outside the box at times. It can be a bit like musicians who have been well trained and schooled, but cannot jam or write a song ... or not a good one. Intuition and not knowing boundaries or not being fooled by them can pay dividends too.

For sure, coding can turn some folks loopy ... exceptions aside.
The boredom aspect is what I think about as well because if its just school but voluntary, it'll just end up being a waste of time because it doesn't seem interesting enough. But I doubt any game engine is purposefully made to teach coding and relying on one to learn can potentially be harmful because you can end up not learning something basic / grounding like you said.

I'm sure that the first steps seem easy once you get into it proper but from what I understand, getting your toes wet is the stage where most people fail in learning programming, and I speak from reading other people's stories and my own experience.
Post edited October 09, 2022 by Shadowstalker16
avatar
Shadowstalker16: I'm sure that the first steps seem easy once you get into it proper but from what I understand, getting your toes wet is the stage where most people fail in learning programming, and I speak from reading other people's stories and my own experience.
Whatever you do, I suggest but this: Do your coding in an open source engine so you own your code. There's plenty of them, and many of them are code mature.
avatar
Shadowstalker16: I'm sure that the first steps seem easy once you get into it proper but from what I understand, getting your toes wet is the stage where most people fail in learning programming, and I speak from reading other people's stories and my own experience.
avatar
Darvond: Whatever you do, I suggest but this: Do your coding in an open source engine so you own your code. There's plenty of them, and many of them are code mature.
Like Godot?
avatar
dtgreene: Like Godot?
Yeah, Godot, LOVE, et al.
Any suggestions on resources for learning Python, LUA and JSON from the beginning? I'd need one for each programming language, and I don't mind if it's paid or free. Resources in Spanish and Portuguese work too, I don't mind.
Post edited November 09, 2022 by _Auster_
Every time I try to get into programming, my ADHD acts up and then it becomes an information overload. I had to get out of Comp Sci 2 in high school because I didn't learn jack shit in 1 and they didn't bother to get me up to speed. However, I'm always interested in trying to get some ideas off the ground, but I suck at math and all the computer code language may as well be alien to me.

I will ask if it's even recommended to start with Java, since that's what some resources recommend.
avatar
_Auster_: Any suggestions on resources for learning Python, LUA and JSON from the beginning? I'd need one for each programming language, and I don't mind if it's paid or free. Resources in Spanish and Portuguese work too, I don't mind.
JSON, which stands for JavaScript Object Notation, isn't really a programming language; it's just a format for storing certain kinds of data.

In JavaScript (which *is* an actual programming language), anything that looks like JSON will, in fact, be an object. Python uses the same syntax for dictionaries.

You don't really need to worry about learning JSON, as you'll encounter basically the same syntax in Python when you learn about dictionaries, but if you want to learn it specifically, you can go to
https://www.json.org/json-en.html

(Lua has a similar concept to dictionaries that it calls "tables", and which is a central feature of the language, but it doesn't use the same notation.)

avatar
Warloch_Ahead: I will ask if it's even recommended to start with Java, since that's what some resources recommend.
I really wouldn't recommend Java, as even a simple "hello world" program involves lots of keywords and stuff that you aren't going to understand at first. It also forces Object-Oriented Programming, which is a concept that is hard to explain to someone not already familiar with it, and is not the only paradigm (perhaps not even the best one, except in some specific situations) that can be used.

I recommend Python, as:
* It is far less opinionated about the programming paradigm
* You don't need to create a class just to write a simple program, but the option is there if you need it later
* Python does enforce indentation as syntax, and will therefore teach you a good habit of indenting your code to show its structure.

Then, once you learn Python, you can learn other languages depending on what you want to do. For example, if you want to learn front-end web development, you can learn JavaScript; for embedded development, you can learn C; for developing Android apps, there's Kotlin.

Once you learn one language, it's easier to learn more.
Post edited November 09, 2022 by dtgreene
avatar
_Auster_: Any suggestions on resources for learning Python, LUA and JSON from the beginning? I'd need one for each programming language, and I don't mind if it's paid or free. Resources in Spanish and Portuguese work too, I don't mind.
Sure. Try making a few scripts in LUA & JSON for your favorite emulator. I know that FCEUX had some inbuilt LUA scripts such as Punch Out timing trainer you could probably grok.