derbenx / nextcloud-circlesdb

GNU Affero General Public License v3.0
0 stars 1 forks source link

Multiplayer/Observer Mode with Guest Access (NextCloud) #2

Open aquadaappdev opened 1 day ago

aquadaappdev commented 1 day ago

We think Circles is a wonderful game. we REALLY like it. We are using it to engage young students. Could there be the option to have the setup in Nextcloud in which each instance of the game would have a unique URL which could be shared between multiple players without them having to have a NextCloud account? The game would be started from within NextCloud, a hash/instance URL would be generated and shared between players, and then they can play in a multiplayer configuration (without all having to have Nextcloud accounts). This would make it a compelling multiplayer game that could engage groups of young children playing the game. Glad to assist with testing on our NextCloud server. Thanks.

aquadaappdev commented 1 day ago

(As a follow-up) If the implementation in NextCloud would be too cumbersome and this could be done as a standalone implementation running on a Linux server or similar (with appropriate access control such as a simple access password on the frontend, and the multiplayer feature), we would be happy to contribute to its development as well. Thank you.

derbenx commented 1 day ago

Circles is a great way to get you thinking, I agree. It starts out simple but grows quickly into difficult as the puzzle changes.

A URL based way to share the same puzzle would be cumbersome, you'd have to store all the variations generated to disk, as well as a way to reference them. This can grow in size very quickly, more items means more to search through. Some larger puzzles are even too big to store in cookies on various browsers. The easiest way is already implemented, under settings, there's save game, load game and save progress.

save game - saves the the puzzle from the start (or load point), for sharing. save progress - saves the game from where you are now, for yourself. Useful on shared computers, where your game stored in cookies gets overwritten by new users.

Use -Save game- and distribute the save file for them to load. Either on a webserver via URL*, nextcloud, network share, email... Then just load it up. This way is better in that you only save the good games, the tricky ones. :) I have a bunch of tricky ones saved, I might add them to my server below at some point.

If you want to use a non nextcloud version of Circles, there is one hosted here along with some other games I've developed: https://derben.ca/1p/

The source is largely the same between these if you wanted yourself a local version. The main difference is the local version has all the source files in the same folder.