I think enumerations would be useful in game mode stories, particularly to track states that cannot be represented by booleans. I realise this is perfectly achievable with integer variables, but for that reason, I assume it would be a fairly simple implementation. For those who don't know, an enumeration is a variable that represents one of a set of options. For example, an enumeration of the suits would be defined as {Hearts, Diamonds, Spades, Clubs}. You could then have a variable of that enumeration (e.g. called currentCardSuit) and set it to one of those four options, read its current value and change it, the same way you can read and change a numeric variable. Game mode stories often have to track states of characters, items and relationships. This would improve maintainability and readability of game mode syntax by skipping the need of the author to relate states to numbers. Most importantly, however, enumerated variables could be made visible to the reader, allowing stories to display text information in the game mode panel without needing to store it in variable names as booleans - which becomes quite unwieldy, as you need to ensure that exactly one of those booleans is True at every relevant point in the story.
I think this would be very handy for everything from eye color to weapon choice. I think there might be some stuff to work out though. Are all options going to be set in stone when the variable is created? Or can they be added after the fact? How will changing to a different option work? Will the author have to type in the option? Or do you invision a drop down list? If it's a drop down list, what happens if the same variable is created differently by two different chapters?
I don't see why that should be necessary. Yes, it would probably be a drop down list. Variable type conflicts would be resolved the same way they currently are, I guess.
What would the list show if chapter 12B says suits can be hearts, clubs diamonds or spades while chapter 21D says suits can be latex or leather and chapter 44 adds fishnet as an option for suits? I still think it's a good idea it just has some kinks right now.
Well, enumerations are generally defined before any variable instances are created, so I guess the types would need to be defined story-wide instead of in a chapter (i.e. on the Edit Story page). Alternatively, some high-level languages allow instance enumerations with the categories defined on a single variable, so that might be more CHYOA-friendly. In that case, your example wouldn't mention 'suits' in general and instead refer to 'playingCard' or 'currentOutfit'.
That's the only way I can see this working. It's what I meant by set in stone. I guess that's not correct because the story owner can add to the variable after its defined, but chapters cannot add possible options to the variable.