Thursday, August 07, 2025

Your names are broken

So, there’s very nearly a dictatorship scam that would allow a complete takeover of BlogNomic, but fortunately we were saved by one somewhat buggy sentence in the Appendix. In any case, things are somewhat broken and we probably need some rule changes and some upholds.

The issue is that the dynastic ruleset attempts to define “Name” as a variable that applies to Trucks – but the core rules also have an (untracked) “name” variable for Trucks, and I can’t see any ruleset-based reason for that to be treated as a different variable (the only way to tell which “name” variable is meant would be context or capitalisation, and I don’t think the capitalisation counts). This means that as soon as a Truck changes their name, they automatically become idle (because “A Truck is only Active if their name is on the list of currently active Trucks in the Sidebar; otherwise they are Idle.” – I don’t see names like “Bat Snacks” or “Finest Grill” on the list in question). As such, if the attempts by Trucks to change their name had succeeded, this would immediately allow an idle admin + idle player to take over the game, via posting and immediately passing a CFJ (because everyone would be Idle other than the Yard, meaning that 2 votes would be enough to make the CFJ quorate).

I was considering looking for an idle admin to help perform the scam (which would not be a core rules scam because it exists because of a dynastic rule), but fortunately there is a sentence in the Appendix which makes most attempts to change names impossible: “A Truck’s name may only be changed as a result of a Proposal approving the change.” Being in the appendix, this overrides most other rules, including the dynastic rule that lets Trucks change their names and the core rule that resets players’ variables when they unidle. This means that the gamestate tracker is wrong, but fortunately this prevents players being automatically idled due to their name not being in the sidebar – the appendix has a very high level of protection for name changes, not even a CFJ works (and the DoV auto-uphold doesn’t work either). I think I’ve noted before that it’s very strange that we have a portion of the gamestate that CFJs can’t change, but the protection came in useful here.

However, things may be slightly broken with respect to the new players, as it’s unclear whether they had a name variable before they joined. It is possible that it was automatically set to the default (which as far as I can tell is AAA – the appendix defines names as a minimum of three characters long, so that’s the alphabetically earliest option), given that the Appendix doesn’t specify a way to set it when joining and it’s actually defined as a tracked variable now. (If players could set their name when joining, the same logic would probably also allow them to set their dollars when joining, which would be broken).

I’m not actively playing this dynasty at the moment, so I’ll leave the fix proposals and CFJs to the rest of you, but wanted to alert you to the problem (and especially to alert you to the fact that the ruleset is very close to completely broken and that you should probably avoid actions that push it over the edge).

Comments

Vovix: he/him

07-08-2025 22:38:20 UTC

I think the way the rules are written now, a player’s name is not a gamestate variable at all, as it’s only referenced implicitly (using the general English meaning of the word to refer to specific humans by their account display names) and never defined.

ais523:

08-08-2025 01:18:52 UTC

It’s defined as a variable in the dynastic rules: “Each Truck has a Name (a flavour text string)” … “All of these are publicly tracked”. “Truck” means “Player”.

eternalservererror:

08-08-2025 03:02:32 UTC

I don’t think the capitalisation counts

Why not?

eternalservererror:

08-08-2025 03:24:53 UTC

The Appendix states:

A keyword defined by a rule supersedes the normal English usage of the word.

The “Food Trucks” rule defines the truck name with:

Each Truck has a Name (a flavour text string);

So the Truck Name is not the same as the english definition of name. It’s a flavor-text gamestate variable.

eternalservererror:

08-08-2025 03:39:35 UTC

The English usage of the word “keyword” is “a significant word from a title or document used especially as an index to content”. I would say that capitalizing a word makes it significant relative to the non-capitalized version of that word. The capitalization of “Name” in conjunction with the flavour text string description makes it pretty clear that this is a keyword.

Vovix: he/him

08-08-2025 04:31:52 UTC

> It’s defined as a variable in the dynastic rules: “Each Truck has a Name (a flavour text string)” … “All of these are publicly tracked”. “Truck” means “Player”.

I meant the non-dynastic one is not a variable, whereas the dynastic one is.

> A keyword defined by a rule supersedes the normal English usage of the word.

That could be read either way. It’s implied in the general style of the ruleset that a capitalized word is a keyword and a non-capitalized one isn’t, but that isn’t explicitly stated. You could also argue that by the same rule, saying that the “Each Truck has a Name” rule now makes the word “name” a keyword, applying throughout the ruleset regardless of capitalization and superceding the originally intended English usage.

eternalservererror:

08-08-2025 05:05:51 UTC

> but that isn’t explicitly stated

Here is what the ruleset says about keywords:

A keyword defined by a rule supersedes the normal English usage of the word. A keyword defined in this glossary supersedes that defined by a rule.

But if it doesn’t explicitly state how a keyword is defined outside of the glossary. So either we have to imply how a keyword is defined by the conventions used in the glossary (capitalized) or nothing outside of the glossary is a keyword because nothing says how its defined. So you could argue that any capitalized word outside of the glossary could be seen as the equivalent of its non-capitalized form. Which starts to make everything very confusing.

A human with access to the blog who is not already a truck may make a blog post making clear their wish to be a truck (plural form trucks); in response, an admin shall add them to the roster in the sidebar, at which moment they become a truck.

The ruleset starts to lose its meaning really fast.

> You could also argue that by the same rule, saying that the “Each Truck has a Name” rule now makes the word “name” a keyword

How so?

Josh: he/they

08-08-2025 07:35:16 UTC

I was just thinking it had been a while since a minor problem had been blown out of proportion in a 500 word essay.

The worst case scenario here is that the dynastic Names variable is subservient to the appendices’ rules on names, and therefore that the dynastic names mechanism doesn’t work and every Truck’s Name is actually their own name. That’s quick and easy to fix; I shall do so now.

You must be logged in as a player to post comments.