• 0 Posts
  • 7 Comments
Joined 1 year ago
cake
Cake day: July 2nd, 2023

help-circle
  • I’m not sure if ActivityPub allows for an extension like that. And I mean if you open up a separate direct channel via TURN… It’ll be incompatible with something like Mastodon anyways, so I then don’t see a good reason for why to bother with the additional overhead of AP in the first place. I mean you could then just send the status updates in some efficient binary representation as data packets directly do the other players. So why use ActivityPub that needs to encode that in some JSON, send it to your home instance, which handles it, puts it in the outbox, sends HTTP POST requests to the inboxes of your teammates where it then needs to be retrieved by them… In my eyes it’s just a very complicated and inefficient way of transferring the data and I really don’t see any benefits at all.

    So instead of extending AP and wrapping the game state updates into AP messages, I’d just send them out directly and skip AP altogether. That probably reduces the program code needed to be written from like 20 pages to 2 and makes the data arrive nearly instantly.

    I suppose I could imagine ActivityPub being part of other things in a game, though. Just not the core mechanics… For example it could do the account system. Or achievements or some collectibles which can then be commented and liked by other players.



  • Since I’m dabbling in AI at the moment: What about llama.cpp? Dude handles like 50 pull requests a week, coordinates everything and codes himself. And it’s really complicated stuff and not the only project. And I mean there is lots of Linux software I use, (web-development) frameworks, smarthome stuff and electronics projects that I participate in and I’m always fascinated by their pace and how they manage to do that in addition to a day-job?! And they regularly push new features… I’ve had contact with some, filed bugreports and sometimes the next day they solved my issues and pushed a new version.

    With Lemmy, my UI bugreports from a year ago are still open and not fixed. And it feels like contributions and bugreports are more a burden to the devs here and not that welcome like I’m used to from other projects. And yeah, I’m glad the last release was a bit bigger. But I mean it took 5 months… And moderation tools are traditionally an issue here. I’m glad something gets implemented. But we’re still far from where we need to be. Same with the image handling and proxying.

    I’m not sure what to make of this. Sure, software development ain’t easy. But every new release I check the changelog and usually it’s just some minor bugfixes. And twice a year a bigger release like this month with new features, yet the last bigger user-facing feature I can remember was instance blocking in december. And this is more or less adding the ability to hide posts and change how voting is displayed, if you’re just a user.

    Edit: I appreciate the work, though. And I like the idea of the platform. It’s just that I’d like it to grow and flourish. But to me it seems we’re often taking baby steps. And in the meantime stuff breaks and admins complain they barely cope with everything with the tools they have.





  • Hmmh. Why ActivityPub? I mean I suppose it’s alright as a standard for some turn based or slow trading game. But it’s neither very efficient nor suited for realtime. And having long (and descriptive) JSON messages, queues, … is baked in per design.

    And it’s not even interesting to a Mastodon user if player x sold y latinum to player z. So for lots of game logic we don’t need messages in a common format that’s federated to Mastodon, Lemmy, Peertube etc.

    I think a nice and not too complicated coding challenge would be to design a world that spans multiple servers. Players could roam a world, go through some door or portal and the client seamlessly connects to the next server. So that part of the world (the other server instance) is behind that portal. That’d make sense from an in-game perspective and won’t be that hard to implement. Basically it’s just like any other game, just that the client auto-connects to servers with some internal logic and not just in the start menu. And ideally authentication would be federated. The new server could ask the player’s home instance to authenticate them on entering the new instance.