Thursday, May 21, 2020

Proposal: Dear Diary [Appendix]

Timed out 4 votes to 1. Enacted by Kevan.

Adminned at 23 May 2020 11:33:51 UTC

To “Representations of the Gamestate”, add a paragraph:-

The historical fact of the occurrence of a defined game action is itself considered to be gamestate, tracked in the history of whatever resource is used to track the gamestate modified by that action, where possible, or in the wiki page [[Gamestate Modifications]] if this is not possible.

Attempting the simplest possible clarification in the ruleset, to see what people think.

(For context, the disagreement is over what happens when we say something like “change the gamestate to what it would be if Eckels had taken an action to crush a butterfly at 3pm yesterday”: it’s clear that we update whatever gamestate record to say “butterfly now crushed”, but disputed as to whether Eckels is now considered - say for the purposes of checking weekly actions if he tries to do it again immediately - to have actually performed the action of “crushing a butterfly”.)


Josh: HE/HIM

05-21-2020 11:44:14 UTC

Doesn’t this just immediately create an orphan variable?

“An Orphan Variable is a dynastic gamestate variable which has neither a location in which it’s tracked, nor a reasonable manner in which it can be determined from other gamestate variables, specified in the Ruleset.”

I’m pretty against invisible gamestate, and the idea of their being some sort of amorphous floaty idea of action-done-ness that isn’t quantifiable and isn’t tracked makes me a bit nervous.

Kevan: HE/HIM

05-21-2020 11:57:18 UTC

I think it does.

I did consider adding some sort of “tracked in the wiki/blog/die-roller/private-messages”, but it felt slightly off as there’s sometimes a sliver of daylight between an action and its gamestate update. If the rule is “a player may shoot a dinosaur as a daily action; upon doing so, the number of dinosaurs on the wiki page decreases by 1”, is it accurate to say that the action is being tracked in the wiki update? (It probably does make life easier to say yes, the action occurs at the instant when you update the gamestate.)

Are there any possible game actions which couldn’t be tracked like that? Any which don’t amend gamestate, but which are still considered to have happened?

Kevan: HE/HIM

05-21-2020 12:25:48 UTC

(Updated to include a line about where the history is tracked.)


05-21-2020 12:51:18 UTC

That update has the odd side effect that when enacting a CfJ that changes the history of actions, there is a requirement for the enacting admin to edit the history of the wiki.

MediaWiki has some limited capability to strike through history entries, but I’m not sure whether it would be sufficient to perform all the changes we’d need (and, with default settings, you would need to be a wiki admin to use it; I’m not sure how many wiki admins we have, I think it’s a separate concept to BlogNomic admins).

That said, I think most CfJs which want to change history will be of the form “change the history to what we all think it was”, in which case there’ll be no need to actually edit the history on the wiki.

(A better fix suggestion: specify that the history of a page should be tracked on that page if it differs from the history as listed by the automatic “history” functionality.)

Kevan: HE/HIM

05-21-2020 13:09:26 UTC

Very true. If your better fix is suggesting adding tracking notes to the bottom of a wiki page, that doesn’t work for changes to non-wiki history changes (like whether players have made proposals or DoVs recently, or whether they’ve sent a private message), so I’ve just pointed to an arbitrary wiki page.

(There’s probably a cleverer solution that allows gamestate history statements to be put in the admin’s comments on proposals and CfJs, deferring to them when they contradict wiki history, but I only had a couple of minutes left to edit the proposal here.)


05-21-2020 13:19:33 UTC

I’m happy with this now. Are you happy for me to cast a FOR vote (locking down the proposal from edits), or is there a potential it might need to change further?


05-21-2020 13:21:11 UTC

Oh, it’s locked itself anyway.


Kevan: HE/HIM

05-21-2020 13:22:10 UTC

The edit window is two hours, these days, and we’re past it, so vote away.

Darknight: HE/HIM

05-21-2020 18:19:43 UTC


Josh: HE/HIM

05-22-2020 06:37:10 UTC


Kevan: HE/HIM

05-22-2020 08:41:42 UTC

[Josh] Is that vote saying that this fix is flawed, or that you’d prefer the ruleset to explicitly say that the history of actions wasn’t gamestate? Or a fog-of-war tactical attempt to keep the gamestate ambiguous for as long as possible?

Josh: HE/HIM

05-22-2020 11:10:01 UTC

Not the latter - thanks to ais Burglarising me, it makes no difference to me at this stage what the outcome is. It’s per my first comment in this thread - invisible gamestate bothers me, and I don’t think that the amorphous fact of whether an action has been taken or not can or should be gamestate. I think that this is a bad fix to a rare problem, and not one that should make it to the ruleset.

Josh: HE/HIM

05-22-2020 11:11:50 UTC

The best analogy for it is proposals that have an ongoing effect after they’ve passed. We don’t allow that, why are we letting these variables just float around in the ether, intangible and untracked but apparently important?

Kevan: HE/HIM

05-22-2020 11:21:28 UTC

Is that factoring in the “or in the wiki page [[Gamestate Modifications]] if this is not possible” edit I made in response? I agree it’s rare, and hopefully we’ll never even have to use that page - it just puts us somewhere unambiguous the next time that we enact a “set the gamestate to how it would have been if X was true”.

Josh: HE/HIM

05-22-2020 13:12:19 UTC

Doesn’t that make secret actions impossible, or at least much more complicated?


05-22-2020 13:32:41 UTC

If someone can secretly track gamestate, they can probably also secretly track the history of that gamestate.

If nobody is tracking the history of the secret gamestate, that is quite possibly a problem.

Kevan: HE/HIM

05-22-2020 13:41:12 UTC

I think it just requires that the secret-data tracker keep a record of actions taken, rather than their accumulated result - instead of keeping a notepad document of “players have built: 3 beacons” and updating the number whenever players take secret actions, they write it out longform as “Josh built a beacon, then Kevan built 3 beacons then Ais523 dismantled a beacon”. Which is no bad thing.

In practice (since we usually just say that this stuff is “tracked privately”) they could decide that the beacon number was tracked by the relevant contents of their private message inbox, and leave it at that.


05-22-2020 17:48:13 UTC


Clucky: HE/HIM

05-22-2020 21:34:47 UTC

trying to understand what sort of changes would go into Gamestate Modifications

doesn’t every form of game state already preserve history? (or is secret, in which case history will also be tracked secretly)


05-23-2020 04:49:18 UTC

For example, if we rule “Josh has not performed his weekly action yet this week”, but the history of the tracking wiki page lists that the action was performed, then Gamestate Modifications can be used to say “actually, this action didn’t happen” and therefore refund Josh’s weekly.