what python game libraries should I use?
well, I know it is quite a silly question, but I have considered it for several days :) I use kivy this time, and today I checked my game feedback, as I expect, someone can not run my game from source code. I have to say I have the same feeling when I run mauve&larry's awesome game. For one thing, need I really install them? I really do not know what are these modules, maybe I never use them forever. For another, I can not easily install them, maybe my python version, maybe my system, even I install them successful, I still can't run the game. c'est la vie :) there are many games in pyweek, I do not want to miss one, so if I do not use pygame, maybe my game can not be played by all. But personally, I still feel pygame is a little out of date, and it is perfect, for example, rotate a surface, display text ...Cosmologicon is really teach me a lesson this time, but I have to say that should be hard, I do not have such sense of art, I am sure I will be mess. Richard has posted about the Godot bindings, mauve also post Python bindings for Unreal Engine 4 :) I really want to have a try, because I want to be professional in making game, though I do not live on it, I just feel that is cool. But I have to say if I use them, one thing is for sure, not everyone can run my game :) So, what should I choose?(log in to comment)
Comments
I like that people give Kivy a try (like your entry) because I personally found it really cool to be able to play a pyweek entry on my phone this year.
Pyglet and Pygame are fairly easy to get installed on all platforms these days, and are unlikely to have problems with hardware or drivers. Pyglet is quite a bit more powerful and faster than Pygame, and it uses lots of version detection to ensure it works on really quite old OpenGL versions. But I don't think it works on OpenGL ES (and thus on mobile devices).
Anything else is a bit more risky, and I've certainly used packages and approaches over my many Pyweek entries that have made it difficult for people to play my games.
However, with things like the wheel package format, and CI services like Travis and Appveyor, I think it's probably easier than ever to get things working easily cross-platform. It just needs people to put the effort in and get the wheels building for each package you use. I tried to do this for our game (I only partly succeeded, but it got it working for some people).
I was a bit surprised be people who don't have Python 3.6 though. 3.6 is awesome, and everyone should find a way of getting it. It's usually not that hard.
DR0ID on 2017/11/05 08:52:
Choose what is best suited for your project or game. If it requires to be run by many, then maybe pygame is suited. If it requires nice and super fast 3D graphics, maybe the Unreal Engine is suited (use the right tool for the job). Making sure that everyone can run your game is difficult if not impossible (since there are so many different operating systems and hardware platforms). The only chance one has is to use standard interfaces. Or an engine that has solved that already for you. And every program comes with dependencies or prerequisite (games normally have minimal system requirements).