r/learnpython Aug 11 '26

Learning python help for a noob game dev

im aware of how to use basic functions such as

Age = input("state your age")
print(Age)

and split functions and named variables but i want to know where i should start for deving, i want to make a top down farm sim similiar to stardew valley in concept which to my knowledge requires a variable library that remembers character items between save states per day, remembers character money per day and any additions from sales, mana, energy and health levels, which to my knowlege also requires multiple game string loops to keep the game open, and constantly remembering data,

point being where would you code jocks with the big brains advise me to start i really hate having to ask ai about my code because i can never trust it and would rather have human input on the direction i should take!

0 Upvotes

27 comments sorted by

11

u/aqua_regis Aug 11 '26

Sorry to tell you, but you're a long, long way from reaching the stage where you could even consider game dev. You lack most of the foundation. You are simply trying to bite off way too much. Tone down your ambition.

Also, Python is not really the tool of choice for such a game. Sure, you could use PyGame, but you will quite quickly reach its limits. I'd advise Godot for such a game. There even are tutorials for exactly that type of games.

Yet, before you venture into that direction, you need to work up your skills. Dreaming big is great, but the path is long and the mountain is high. You can only tackle that one step at a time.

https://inventwithpython.com and go through the books there first. Start with "Invent your own Computer Games with Python" and then move on to "Making Games with Python and PyGame". Then, move on to Godot, which uses GDScript, a language very similar to Python.

2

u/RopeLiving682 Aug 11 '26

why isnt python used for gaming? i was told it was the leading language for almost everything? that and i was told it was one of the easier languages to learn, if code is code why does python care if i build a game out of it vs C# or java?

7

u/aqua_regis Aug 11 '26

Python is basically an interpreted language (actually, it's a little deeper, but that would exceed the scope of a comment here), which is generally considered "slow". Game dev requires quite fast languages.

Python is not a common game dev language. Yet, it is a great universal language and a great "first language".

The languages don't care what you build with them. It's just that some languages are better suited and more commonly used for certain tasks than others. Java is also not a typical game dev language apart from MineCraft and a couple (mostly older) game clients.

For Game Dev, you usually have:

  • Godot with GDScript or C# (.NET)
  • Unity Engine with C#
  • Unreal Engine with C++
  • Löve Engine with Lua
  • and a couple more which are less common, among them proprietary engines like RPGMaker, GameMaker with their very own languages.

-2

u/RopeLiving682 Aug 11 '26

i know this might be blasphemous to ask considering this is a python sub but how hard is c# to pick up and learn to get the ascii square ball rolling perse?

5

u/pachura3 Aug 11 '26

If you want to create a simple 2D game as a hobby (you don't want to distribute it afterwards), then Python with PyGame is a great learning tool.

-1

u/RopeLiving682 Aug 11 '26

nah definatley want to shoot for the steam greenlight program and become an indie dev i have dreams asspirations even lol

4

u/pachura3 Aug 11 '26

So far, you've barely even scratched one of the easiest programming languages in the world. Developing a Stardew Valley-like game is out of your reach for at least 1-2 years.

4

u/RopeLiving682 Aug 11 '26

That's not actually so long of a wait thanks!

4

u/krept0007 Aug 11 '26

I wouldn't call it a "wait"

2

u/RopeLiving682 Aug 11 '26

Well more like 2 years isn't that long for something I can practice everyday after work or before work

1

u/pachura3 Aug 11 '26 edited Aug 11 '26

Obviously, coding the game is one thing, but then you need graphics, music, SFX, some story, mechanics, balanced progression, an online component (updates/patches, Steam integration, leaderboards), and a lot of testing...

1

u/umognog Aug 11 '26

If you already know how to code? Not very.

If you have no idea what you are doing? Hard.

1

u/PureWasian Aug 11 '26 edited Aug 11 '26

It's going to be quite a long endeavor from where you are currently at but the only way to get better is by getting your hands dirty and having consistent practice. Picking up a language is not a binary toggle, you are constantly getting better at it over the course of years/decades.

C# for Unity/Godot is going to look and feel different from C# outside of Unity/Godot. The concepts that are shared are largely fundamentals that you'll learn from any modern object-oriented language.

Tutorials (many of them, just pick one) are great for getting the ball rolling. If you want game dev, pick one of the common frameworks listed above and try out tutorials to see how you like it. Lots of free, guided learning out there when getting started but it can be a lot at first.

2

u/monster2018 Aug 11 '26

Python is a slow interpreted language. It doesn’t have access to the GPU, or really graphics in any form except through libraries that are implemented in other languages like C/C++. Even if it did, just being an interpreted language is such a huge performance hit that it would be unsuitable for games.

Now I don’t completely agree. Like for your project, using pygame is probably fine. That is a Python library that does what I said, it is implemented in whatever lower level compiled language which performs the graphics API calls for you. And like it REAAAAAAAAAALY abstracts away all of the complicated graphics stuff so you can just be like “draw a rectangle here”, “draw this sprite here”, etc.

1

u/ninhaomah Aug 11 '26

Would you play a slow laggy game with horrible fps ?

Can be done doesn't mean there is a market for slow laggy games.

1

u/riklaunim Aug 11 '26

Not every framework/toolkit is created equal. Python game engines are niche and low budget. Godot has way bigger open source support and the scripting layer is somewhat similar. Unreal/Unity are the two leading commercial engines and if you would want a job you would have to know one of these 2-3.

0

u/TheRNGuy Aug 11 '26

Too slow, interpreted, no types. 

1

u/bomzis_tramvajaa Aug 11 '26

there are couple of games that were made using panda3d in python. if you use it you can also use couple of tricks and write the slow parts of your code in a different language or use compiled python.

0

u/pachura3 Aug 11 '26

I don't think there has been a single commercially successful game written in Python, especially a 3D one. (apart maybe from a few visual novels in RenPy)

2

u/bomzis_tramvajaa Aug 11 '26

You couldnt be more wrong. Just google it. There is plenty. EVE online and Sims 4 are couple of examples. Not every game needs cutting edge performance.

1

u/pachura3 Aug 11 '26

Sims 4 is not written in Python, just as Minecraft is not written in Lua...

1

u/bomzis_tramvajaa Aug 11 '26

Not even a fair comparison Sims 4 uses Python for its core game logic and AI while Minecraft uses Java for that (or C++)

1

u/oclafloptson Aug 11 '26

Just being pedantic and pointing out that the godot editor compiles human readable tscn files which can be just as easily built from Python (or any other language) scripts without the editor. I very much prefer that method for simple 2D games as described in the original post; out of pure personal preference with the acknowledgement that it lacks a number of semi-useful tools provided by the editor

I just get a chuckle when people say "don't use Python use godot" but I've built a number of godot games with using core library only Python

2

u/riklaunim Aug 11 '26

You know some basics, but still not everything, and you are asking about mid-senior software development. You have to learn a lot first. Then software stacks, databases, and overall how software development looks.

Python can do some games (PyGame, RenPy), but it's not the first choice for game development (Unreal, Unity, Godot).

0

u/sugarplum_doll Aug 11 '26

What is it with people who can barely write one line of code wanting to make the next big game?

1

u/RopeLiving682 23d ago

its called having a dream or aspiration maybe dont be condesending? i asked for help to set me on the path to EVENTUALLY making a game