Is there a place for web-based games in PyWeek?
I've told my story here before, but briefly: PyWeek is how I got into game programming, and I would love to write games in Python. However, it's not worth it if it means it's hard for people to play them, and I gave up after a couple of years of looking for an easy way to share games. Now, with the exception of PyWeek, I write games in JavaScript.I was very excited to see mauve's entry this time, which uses a JavaScript frontend with a Python backend. I thought maybe we can get to where a Python game is finally available in the browser. But then I read this comment that mauve received:
it would be nice if the whole code could be python. Just... it's pyweek you know, not "make a game that use part python, and 40%-50% other languages".
And so I want to ask a question that I have wondered for a very long time: is there any way we can make PyWeek welcoming of browser-based games?
I'm open to any and all possibilities here, but one thing I imagine is a JavaScript rendering and input library that allows easy communication with a Python backend, and minimal code to be written in JavaScript. If that was explicitly allowed by PyWeek rules, I would be certainly be willing to contribute to that project.
(log in to comment)
Comments
I'm not sure its actually better than just using Godot though!
mauve on 2018/05/12 14:12:
Use of other languages is explicitly allowed in the rules:
You raise good points though.
Python on the web is in rather a poor state. As the PyPy.js author noted there are a number of boxes to tick and no project is ticking all of them:
To which I would add:
(which, sadly, PyPy.js doesn't meet.) And various other projects are only meeting some of these.
I think the input/rendering works a bit (as in my game), but I don't know if I could see it generalising to something more like a web-based Pygame.
Meanwhile I think distribution of Python applications is getting gradually better eg. with PyInstaller. It just needs more people to attempt it and build the knowledge and the tooling to make it easier.