Rob Speer on 28 Jan 2003 08:15:01 -0000 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
[Spoon-business] Enforce the Speed Limit... using recursion |
I propose: __Enforce the Speed Limit... using recursion!__ [[The "Precedence and Timing" rule makes the "Speed Limit" rule unenforcable, as the player would explicitly win before that rule took effect, and undoing that Win would be illegally retroactive. I can work around this by giving rule 27 an explicit time, but exactly what time that is requires a great deal of explanation...]] {{ 1. Create a rule: __N-triggers, a.k.a. Weird Recursive Crap__ {{ An M-independent event, where M is the number of a rule, is defined to be any event whose direct cause is either the Clock, an action performed by a player, or another M-independent event, and which is not specified by rule M. An N-trigger, where N is the number of a rule, is an N-independent event which does not cause any other N-independent events. The terms "M-independent" and "N-trigger" have no meaning on their own; the letter "M" or "N" must be replaced by a number. The resulting term is then defined by this rule. }} 2. In rule 27 [[Winning]], change {{If at any time}} to {{If}}, and append: {{ This rule takes effect after any event that is a 27-trigger. [[See rule FOO.]] }} 3. In rule 27, replace {{FOO}} with the number of the rule entitled "N-triggers". }} [[The definitions are really weird, I know, but I discovered that any wording which delayed Winning until after other stuff has happened but before the stuff which happens after Winning has happened would have to be either be really strained and prone to loopholes, or would be recursively defined. I chose recursion. I'll elaborate. Nearly all events are 27-independent. An example of something that is _not_ 27-independent is the Post-Win Reset. When a bunch of 27-independent events happen in a chain, because they cause each other, the last one that happens is a 27-trigger. If after the 27-trigger, the game is in a state where someone Wins, then rule 27 takes effect, and all events that happen as a direct result of that are _not_ 27-independent. The upshot of all this: if I do something that gives me 1000 points, that is not a 27-trigger. The Speed Limit rule takes away my points, and that _is_ a 27-trigger, so only then does rule 27 go into effect and see that I haven't won.]] -- Rob Speer _______________________________________________ spoon-business mailing list spoon-business@xxxxxxxxx http://lists.ellipsis.cx/mailman/listinfo/spoon-business