increpare / PuzzleScript

Open Source HTML5 Puzzle Game Engine
MIT License
906 stars 160 forks source link

consider moving back to self-hosting shared puzzlescript games (maybe re-enabling anonymous sharing?) #908

Open increpare opened 2 years ago

increpare commented 2 years ago

relates to #619

I wish I knew what the best practices were (what kind of rate limiting/etc were good). I don't want to get involved in an endless cat-and-mouse game but I do want to lower the barrier for sharing games...(making a github account isn't to everyone's tastes).

If anyone knows anything about this please educate me :)

david-pfx commented 1 year ago

I agree. I really don't like the anonymity of gists at all, but I love the ease when it all works.

Ideal scenario is:

  1. Create an account in on puzzlescriptshare.net (or whatever)
  2. Get a token
  3. Feed the token into the PS editor
  4. Share a game
  5. The URL to the game will be puzzlescriptshare.net//

Is that so hard?

increpare commented 1 year ago

the advantage of the current system is that I have 0 moderation to do rather than 100% moderation

david-pfx commented 1 year ago

So you would be amenable to something like the above, as long as there was someone else to run it?

Shouldn't be too hard.

philschatz commented 1 year ago

There are ways to allow users to provide a URL to the txt file of their game.

For example, this GitHub-hosted site will fetch an HTML file from anywhere on the internet and render it (it could be a PuzzleScript text file). Here's an example

Then, the Puzzlescript text file can be hosted anywhere as long as it is publicly accessible and the code that executes the Puzzlescript files can be automatically updated whenever the main branch of PuzzleScript is updated.

Note: Since GitHub does not host the HTML file directly it internally converts the URL to a raw.githubusercontent.com URL

Would that address the moderation concerns?

david-pfx commented 1 year ago

For me at least the aim is simply two things: (a) moronically easy to share games, for everyone, regardless of skill level (b) any URL includes the title and author of the game (taken from the script). Authorisation available for authors who care.

I use GitHub a lot, but setting up authorisation doesn't work for me. It did, then it didn't, go figure. I don't care enough to debug it.

Gist links with random gibberish titles are abhorrent. We can do better.

I can modify PS to fetch URLs. That's trivially easy. It's the sharing bit that needs a clever answer.

increpare commented 1 year ago

(additional context for those who don't know: originally github allowed sharing + creating gists without logging in, so it used to be possible to share games without creating a github account. one possibility would be to switch to use a service like pastebin instead, which I think still allows something similar, though I don't know about the longevity of the shared texts. I should do a census of services again eventually...)

So you would be amenable to something like the above, as long as there was someone else to run it?

I'd lean towards no. Relying on other people is a recipe for stress and increases my long-term chances of burnout on the project (which I feel would be bad for it). If there was some general system to allow people to log in to several sharing services rather than just github, that might be good. But it's not as if google drive or dropbox make it easy to make files publicly viewable I think in the way that github does (maybe I'm wrong). Hm.

david-pfx commented 1 year ago

Surely one of these https://alternativeto.net/software/pastebin/ is going to do the job?

sftrabbit commented 1 year ago

I think the only issue with Pastebin, which does allow anonymous pastes, is that you need a developer API key which is meant to be private, so you'd need some backend as a proxy between PuzzleScript and Pastebin. And having a backend means maintenance. I haven't looked into Pastebin alternatives.

I'm personally not convinced that there's going to be a great option that's much better than using GitHub gists. Perhaps only if there's something very similar, which supports OAuth API access in the same way, and allows log in with multiple different social accounts (Google, Facebook, GitHub, etc.). The only benefit there would be to give more people options for which account to use. However, another benefit of GitHub is that it's more likely to stand the test of time.

david-pfx commented 1 year ago

It seems there are competing needs: 1) IJW for newbies 2) save and update for regular users 3) publish with controlled access to source. There is no 'one size fits all'.