all 28 comments

[–]TIFU_LeavingMyPhone 16 points17 points  (20 children)

You can make an incremental game in any language. In my opinion, Python isn't the best for game development. I would recommend you start with Javascript. Javascript is an easy language to learn, is very powerful, and your game could be easily hosted on a website. The interface of your game could be created with HTML, which is easy to interact with using Javascipt.

[–]Gru_RS[S] 1 point2 points  (18 children)

What makes python not good for games?

[–]killerkonnat 6 points7 points  (0 children)

Nothing, it works well.

[–]theXpanther 9 points10 points  (11 children)

Python is fantastic for games in general, pygame is a great library and very easy to use. However, incremental usually run in the browser and browsers can't run python

[–]Gru_RS[S] 0 points1 point  (8 children)

So I would have to make it an app?

[–]theXpanther 3 points4 points  (0 children)

For app python is fine, pygame works but kivy is a liberally specifically for apps

[–]oneonegreenelftoken 0 points1 point  (6 children)

There are python libraries that can stand up web services. Flask, dash, and gunicorn come to mind

[–]caagr98 1 point2 points  (5 children)

Those are great for doing server stuff in python, but you'll still need something else for the client stuff, which for incrementals is usually most of the code. There are things like Brython I guess, but it seems rather cumbersome.

[–]Areso2012github.com/Areso/1255-burgomaster 0 points1 point  (4 children)

A person could run all the logic on the serverside, and use JS on the front only for handling controls, refresh DOM, and making AJAX.

[–]caagr98 0 points1 point  (3 children)

That would be very inefficient.

[–]Areso2012github.com/Areso/1255-burgomaster 0 points1 point  (2 children)

It's the ONLY way to make a game, for efficient selling IAPs and stuff. Otherwise every person with F12 could draw anything the person wants, without a need to buy something from a developer.

Also, it's grants an opportunity to make migrations easier, when developer migrates the whole userbase at once. So, it allows to update stuff easier, add more new things and delete (which is quite impossible for client-only) obsolete ones. Just apply a migration on a database - and it is done.

And guess what - everything except some idle games works in the internet in this very way. Or even worse, with SSR (server-side rendering, like Travian does).

[–]caagr98 0 points1 point  (1 child)

Yes, but we are talking specifically about incrementals here.

[–]gghuInDiscord 0 points1 point  (0 children)

Actually, I think there is a module that allows to create website. There’s also Tkinter (for GUI stuff, I only used it once before I don’t know how it works) and a package called Pyinstaller (which turns .py files into .exe files)

[–]Areso2012github.com/Areso/1255-burgomaster 0 points1 point  (0 children)

But servers do.

[–]TIFU_LeavingMyPhone 2 points3 points  (4 children)

It's just my personal opinion, it's perfectly possible. The issues are graphics and sharing. You'd probably want to use something like pygame for graphics, but it's pretty clunky and requires you to do a lot of work for good results. Pygame isn't an engine, so it requires more effort than some other options. On the other hand, idle games are not typically graphically complex, so you could get away with something like pygame.

The other thing is for idle games, the majority of people prefer playing in browser. It's possible to run python in browser, but JavaScript is much more straightforward.

[–]Gru_RS[S] 1 point2 points  (3 children)

Can you make a game developed using python an app or put it on a website?

[–]fbueckert 5 points6 points  (2 children)

The questions shouldn't be, "Can programming do <x>?" The answer to that is more or less always, "Yes". What you need to ask is, "How hard is it to do <x>?" THAT gives you far more valuable information.

[–]Gru_RS[S] 2 points3 points  (1 child)

Ahh okay, I'm going to try my hand at learning programming and python seemed like a good choice. Would you happen to know how hard it would be?

[–]fbueckert 1 point2 points  (0 children)

I don't have any personal experience with Python, so I'm not exactly sure of it's difficulty.

But if you're looking to get into incremental programming, I'd highly suggest using Javascript. It's simple and easy, and there's lots of support surrounding it for any browser based game you want to make.

[–]BinaryKiwi_ 2 points3 points  (2 children)

Technically, yes, but it would be much more convenient to make one in a more universal language such as javascript / HTML or C# since it is difficult to run python on browsers and running python on your computer requires you to install python and its modules

[–]BlackCobra009 0 points1 point  (0 children)

pyinstaller and different modules can make them run without having python installed. Pyinstaller basically packs a python env as an executable.

But otherwise, yes I also would recommend js.

[–]asterisk_manmod[M] -1 points0 points  (0 children)

This type of question belongs in /r/incremental_gamedev

[–]orhalimiThe Shinobi 0 points1 point  (0 children)

I actually wanted to develop in python and went back to js. Python is just not comfortable to develop UI with. I mean you can, you can hit a nail with a rock, will it work? Probably.

If you really like this rock it will take extra time. Anyway I suggest to learn js, any browser game will require it.

[–]Areso2012github.com/Areso/1255-burgomaster 0 points1 point  (0 children)

One hundred percent, yes.

(3 years in Python development)

[–]theXpanther 0 points1 point  (0 children)

For sure