PyStellar Engine (Game Engine WIP)

A friend and I are working on a game engine in Python. Its open source, and can be found here:

Its built on top of Pygame, so it has a lot of things you can do. You can literally recode the entire engine if you wanted, so you have a lot of power. But it is also designed for ease of use, with many built in classes that allow you to quickly do complex tasks. There aren’t many classes built in yet, but we plan on eventually releasing more. Its only half a day old so far https://forum.yoyogames.com/styles/default/xenforo/clear.png

To explain better how the engine works, we made this diagram:

It is a lot similar to node based game engines like Godot and Unity. It also shares similarities with GameMaker. First, you instantiate a game object, which handles everything deep down. Then, you instantiate room objects, which act exactly like rooms in GameMaker. In each room, you then add objects, and code those objects to do what you want every frame. Attached to objects, you will be able to add things like sprites, rigidbodies, pathfinders, hitboxes, and many more things which we are working on.

So it has the benefits of both worlds: the ease of use of engines like Godot and GameMaker, while still maintaining the power and customization of Pygame, and all the benefits of fully blown Object Oriented Programming.

One issue (or good thing, depending on your opinion) with this engine, is that it doesn’t have a GUI associated with it. Instead of manually setting up relationships between objects in an IDE like GameMaker, you have to code them. Maybe someone could eventually come up with a solution for a new IDE.

Of course, this engine is open source, and we have no plans to ever monetize it. So its fair game for any project, commercial or personal. However, the license requires that you credit us for creating the engine.

If you would like to help with this project, please send me a private message, and I will invite you to the team. If you have any questions, please post them bellow so other people can see them.

Check this out
It adds / updates UI elements

It can be made into pure function calls later for speed :smiley:

If this is all going to be Python, then I fear that unless you use one of the compiled variants like PyPy and Cython or some sort of JIT solution, the engine is going to make GameMaker look pretty speedy in comparison (mainly because of the difference between a compiled and an interpreted language).

What you wouldn’t want is to put all of this hard work in, only to see user after user try the engine and then uninstall it when they hit the walls in terms of performance.

yeah, why not try and help the UPBGE team instead?

I write front end python solutions, and am trying to make them modular.

1 Like

Speed may be a factor. Thanks for mentioning that, we will look into how to make it more optimized.

You can view our project list here: