Alright, getting things ready for an interactive fiction club! If folks are interested, I think we can start December off with a classic infocom game, Planetfall. I've got a discord up & running, which folks can join, here https://discord.gg/cf69sWjEE5
It's not mandatory, but if you are interested, you can also just join the discussion here on Mastadon with the hashtag #ifclub The club will rotate each month between a classic text adventure snd a more modern interactive fiction
#infocom #infocomodon
@nandalism @intficpics @sandestin
Can you branch off by replying for a second time to a previous response of the bot?
(I had a bot that allowed for that in the short time Wave was a thing and it IMO was much nicer than standard UNDO constructs.)
In fact I'd probably have to checkpoint every action since it could later be a branch point... at any time in the future.
That's way too much complexity for me, sorry.
You can save/restore tho (see /help).
The availability of undo depends on the actual game being played. I guess some of the newer ones have the feature but zork and planetfall don't?
This is intended for group play rather than having a separate game instance for each player.
It's more intended that people gather as a group to play a single game instance together.
@nandalism Huh, so you don't checkpoint at every post? That's surprising; I would expect it to be way easier to do so (otherwise the synchronisation of the current state of the game between what's published on fedi and the internal state is much harder).
> It's more intended that people gather as a group to play a single game instance together.
+1. Are you aware of Club Floyd? (They do that over a text MUD.)
Is the source for the bot available somewhere?
The source is not available for the moment. However, it is based heavily on Honk (for the activitypub part) and uses Dumb Frotz for the Z-machine part.
@nandalism Also, do you have any ideas on how to integrate the commentary track?
I must admit that how/when mastodon/honk decide to publish/show messages and where is a bit of a mystery to me. Though I am trying to learn more about it.
I really want to avoid spamming people who subscribe to sandestin but at the same time keep them up to date on the actions of other players.
I've tried various combinations of to/cc and /followers but want to avoid activitystreams#Public since that seems very noisy.
There should also be a way to communicate among players without hitting sandestin. I thought that would be possible by posting to the thread/conversation but now I'm no longer sure.
Do you have any suggestions?
@nandalism @robryk I don't know how honk works but mastodon has post visibility options like public, unlisted, friends only and mentioned users only. I think one of those last two would be appropriate for this bot.
That would work for non-public games only. There'd be no way to link anyone else to a post from such a game.
@robryk @nandalism If it @s everyone who posts to a game it would work in mentions-only, but then you'd have to be able to tell it when you're no longer interested. So probably friends only makes the most sense. Maybe a hashtag at the end with the current game so people can mute posts from games they aren't playing?
Mastodon has a feature of muting a thread (for some obscure reason only a thread that you've already participated in).
Note that @ing is a Mastodonism. It's only (mostly?) Mastodon that decides on whom to cc on a post nearly solely based on mentions in the post. It's perfectly fine to cc someone on an ActivityPub object they are not mentioned in at all.
Having a separate Actor (IOW user) for each game would probably solve most of the issues you think of.
I tried to follow that hashtag from mastodon but didn't see any messages. Maybe it only works for posts originating in the same mastodon instance?
Can you make use of the new hashtag? For muting or filtering?
@objectinspace if you want to try sending some replies here with those "friends only and mentioned users only" settings? I can examine the underlying activitypub message and try to learn from it. I don't even see those options on my mastodon client.
I have the problem of mapping "mastodon client terminology" to the actual, underlying activitypub message format which I need to send.
Sandestin's pretty spammy on your home feed at the moment. The only advice I've seen to filtering Home is to create a hashtag and follow it, but that doesn't work for me.
@nandalism @robryk I'll do that, sure. Not sure why post visibility isn't on your account but yeah I will reply with different visibilities and see if it changes anything on your end. Might not actually. You should be able to follow hashtags across instances so not sure why it didn't work. I'll see if the hashtag works on my end. TBH though if the bot is using the same tag on each post I don't think it'll be all that useful unless other people use it, which is a lift.
It seems what you call "as:Public" I call
"cc": "https://www.w3.org/ns/activitystreams#Public". So now I understand. I avoid using that completely and send to each follower. I avoid as:Public since otherwise every players game replies get sent to all their followers. Terrible! At least this was my understanding and I will examine your 2 test messages to check.
The reason for the same hashtag each reply is that I am hoping players can filter on the hashtag to create a separate feed for the game, and "delete" the messages from their home feed.
@nandalism Is that how hashtags work? I don't actually use them so I don't know. LOL. That would be perfect though, right now I open a separate page to follow the bot, which is okay, but having it not appear in home would be better for sure!
Is that how hashtags work?
Sadly, I feel that I don't know how anything works any more :)
It is how I wished/imagined hashtags worked. Otherwise what are they for? Who knows!?
I received your 3 test messages. Thanks. Then I realized I am not logging JSON/ActivityPub on my server (only sandestin has that level of logging at the moment). So I didn't get see how they looked at the activitypub level. Sorry about that.
@nandalism Haha whoops! Do you want me to send them again?
Maybe you can answer this question. When I send a command like "open pod door" do you see 2 messages? One short one, from me, with just the command and one longer one from sandestin with game response?
Or do you just see one message from sandestin? (this is how I want it to be)
@nandalism As far as I can tell I am only seeing the one message.
I now understand the reason why sandestin's messages don't turn up in Lists (probably hashtags same).
The activity pub message from a Honk (which works/appears in mastodon List).
Note the "to" as:Public. This is the important difference. (Also note the lack of /followers in the "cc")
"cc":[]string{"https://mastodon.gamedev.place/users/andalism"},
"to":"https://www.w3.org/ns/activitystreams#Public",
directMessage - missing
For comparison a sandestin message currently looks like this (and it fails to appear in List)
(as:Public is nowhere)
"to":"[a single follower]"
"cc":["https://honk.deckc.hair/u/nandalism", ... all the followers except to]
directMessage - missing
# details
"actor":"https://sandestin.deckc.hair/u/sandestin",
"cc":[]string{"https://www.w3.org/ns/activitystreams#Public", "https://mastodon.gamedev.place/users/andalism", "https://honk.deckc.hair/u/nandalism", ...}
"to":"",
"actor":"https://sandestin.deckc.hair/u/sandestin"
"to":"https://www.w3.org/ns/activitystreams#Public"
"cc":[]string{"https://mstdn.social/users/arnicas", "https://honk.deckc.hair/u/nandalism", ... "https://mastodon.gamedev.place/users/andalism", ... }
For the moment I'm reverting to the original state.
TO=command-originator
CC=all-other-followers
nowhere as:Public
To Use:
Mute @sandestin to keep your Home feed clean and watch @sandestin/posts-and-replies to see the game play and send game messages.
(I'm hoping this is possible on all clients)
What are you achieving by not adding "cc: as:Public"?
I would be very surprised if adding as:Public to cc would change anything in how the message is presented to users who are already in the expansion of to/cc.
> I mean the test user I have set up on the mastodon server (@andalism). I use Honk normally.
Aaaah, the user sending the command, not the bot user. Thanks.