| ▲ | Show HN: Homegames. An open-source game platform I've been making for 8 years(homegames.io) |
| 61 points by homegamesjoseph 2 hours ago | 22 comments |
| I'm making a platform for simple open source games you can play anywhere. Games are all just JavaScript classes and you can read the source of every game on the platform. I started working on initial "games" (mostly rendering tests) in 2018 and eventually built all of the platform stuff around it to make it easy to share games. There's also an in-browser editor available for you to make and publish games all from the browser. Would love some feedback on the games and studio features as well as the platform overall. All of the code is available at https://github.com/homegamesio |
|
| ▲ | ricardobeat 19 minutes ago | parent | next [-] |
| Could not play any of the games - too many requests errors. Why do they need "sessions", are they not running client-side? |
| |
| ▲ | homegamesjoseph 16 minutes ago | parent [-] | | I forgot to mention this in the post, but the games themselves run on the server. This gives every game multiplayer for free out of the box, and clients just read the server state and send back input. The idea is that you could use a browser or custom client or whatever to connect to a game server |
|
|
| ▲ | alienbaby 23 minutes ago | parent | prev | next [-] |
| Nice! Some fun making big chains explodey things :) |
|
| ▲ | avaer an hour ago | parent | prev | next [-] |
| Does everything need a "session"? Is it possible to have fully static games/exports? |
| |
| ▲ | homegamesjoseph 38 minutes ago | parent [-] | | One thing I forgot to mention is all of these games run server side and thin clients just render and send input back to the server. So a game session needs to exist for the back and forth communication to work. Theoretically you could do this all client side too, but that would remove the magic of every game getting multiplayer for free | | |
| ▲ | avaer 16 minutes ago | parent | next [-] | | If you architect your protocol cleanly, you should be able to run the simulation client side too without much effort (certainly the web platform has everything you'd need). This is how modern game engines do it, it goes back to the Quake VM and probably beyond. You'd still get multiplayer "for free", but it could be turned on and off. You could do it with zero code change for the actual games, they don't have to know. It seems some of the games could do with a singleplayer mode that doesn't depend on the backend having free slots. Just an idea from a fellow web games person! | | |
| ▲ | purple-leafy a few seconds ago | parent | next [-] | | This is something I’ve done with my web game, I run the entire simulation client side so as to never worry about scaling issues. Why reach for a server unless you truly need one! My multiplayer mode is p2p planned | |
| ▲ | homegamesjoseph 12 minutes ago | parent | prev [-] | | Thanks for the feedback! Local games weren't something I really considered until recently, but it would definitely be cool |
| |
| ▲ | __del__ 29 minutes ago | parent | prev [-] | | as a matter of ux, users probably don't need to know that a session is being instantiated, and probably expect a simple play button fun | | |
| ▲ | homegamesjoseph 25 minutes ago | parent [-] | | Thanks for the feedback! Need a good way to clean up the UI to distinguish between joining someone's multiplayer session or creating your own |
|
|
|
|
| ▲ | HoldOnAMinute an hour ago | parent | prev | next [-] |
| Does anyone remember "Shoot 'Em Up Construction Kit" on the Amiga? |
| |
|
| ▲ | ViAchKoN an hour ago | parent | prev | next [-] |
| Nice idea. I found a couple of interesting games on this. Thanks for sharing! Cool that you haven't stopped working on this project after that long time. It gives me inspiration to work on my projects which I can't find time to finish. |
| |
| ▲ | homegamesjoseph 37 minutes ago | parent [-] | | Thanks! I'm planning on making a lot more. I made most of this stuff before AI tools were available. But now Claude can one shot really impressive stuff, it's amazing | | |
| ▲ | matthewfcarlson 4 minutes ago | parent [-] | | I worked on a similar concept (padgames.io now defunct) that offered a state sync networking system with rollback netcode style stuff. It could handle exposing only certain information or fake info to certain clients (to prevent cheating). It integrated super nicely with vuex or react stores as it was all observable and all game actions just turned into state mutations. I made the game I wanted, enjoyed it with family and friends, and then let COVID sweep it away. Congrats on continuing to work on it. |
|
|
|
| ▲ | mantisman 39 minutes ago | parent | prev | next [-] |
| Very cool! Love seeing more browser games |
| |
| ▲ | homegamesjoseph 36 minutes ago | parent [-] | | Thank you! Obviously still some gaps to close but would love for this to carry on the spirit of newgrounds and stuff like that. |
|
|
| ▲ | nadermx 2 hours ago | parent | prev | next [-] |
| I was just closelined by a beam in one of the games. Badass |
| |
| ▲ | homegamesjoseph 2 hours ago | parent [-] | | Nice! I actually didn’t know the rendering stuff could support anything pseudo-3D like that until yesterday. |
|
|
| ▲ | iamoseauditor 31 minutes ago | parent | prev [-] |
| Wow nice. |