Round 10/Proposal Ideas: Difference between revisions

From Infinite Nomic Wiki
miraheze>CodeTriangle
→‎Current draft: last minute changes
miraheze>CodeTriangle
→‎Current draft: okay fine cat
Line 16: Line 16:
Create a rule with the title "Secret Information" and the text:
Create a rule with the title "Secret Information" and the text:


:When the rules authorize a set of players to "secretly" take an action (a "secret action") then those players can only take that action by posting in the relevant channel the type of game action to be performed, along with an SHA-256 hash of:
:When the rules authorize a set of players to "secretly" take an action (a "secret action") then those players can only take that action by posting in the relevant channel the type of game action to be performed, along with an SHA-256 hash containing a clear and unambiguous declaration of the action that the player is performing. It is strongly recommended to make the text to hash unpredictable, for instance by adding unrelated text to the end of the declaration. Since hashes are irreversible it is also strongly recommended to store the exact text that you hashed so that you can post it later.
:#a clear and unambiguous declaration of the action that the player is performing.
:#optionally, any clearly unrelated text that cannot be construed to describe a game action (known as salt).
:
:
:Secret action have the following properties, subject to modification by the rule that defines the secret action:
:Secret action have the following properties, subject to modification by the rule that defines the secret action:

Revision as of 22:19, 23 June 2021

Feel free to expand ideas, write them out in more detail, add new ideas, etc

Sealed Bid Auctions

  • To avoid issues with time zones and sniping at the end, eliminate live bidding. Instead, each player secretly bids, and the person with the top bid wins, for the second-highest price.
  • Submit bids secretly by posting a (salted) hash in #auctions
  • Reveal bids at the end

Current draft

In the rule "Phases" replace the second and third paragraph with:

The Auction Phase: Monday, Tuesday, and Wednesday
The Bartering Phase: Thursday, Friday, Saturday, and Sunday

Create a rule with the title "Secret Information" and the text:

When the rules authorize a set of players to "secretly" take an action (a "secret action") then those players can only take that action by posting in the relevant channel the type of game action to be performed, along with an SHA-256 hash containing a clear and unambiguous declaration of the action that the player is performing. It is strongly recommended to make the text to hash unpredictable, for instance by adding unrelated text to the end of the declaration. Since hashes are irreversible it is also strongly recommended to store the exact text that you hashed so that you can post it later.
Secret action have the following properties, subject to modification by the rule that defines the secret action:
  • a channel in which the action must be performed (by default #game-actions).
  • a maturation date (by default the beginning of the next rules-defined phase after the action's performance).
  • a revelation date (by default three days after the maturation date).
During the period after the maturation date but before the revelation date of a secret action, the player who took that action must post the unhashed text corresponding to what they posted when taking the action (including the actions and the salt), and other players should verify that the unhashed text correctly matches up to the hashed text.
A secret action fails immediately after any of the following occur:
  • If, at the revelation date, the player has not revealed the unhashed text, that action fails.
  • If it is before the maturation date and the message in which the hashed text was sent was edited, that action fails.
  • The player posts an attempt to perform a secret action and they already have an attempt which has not failed at the time of posting the new attempt, then the former attempt fails.
Players may generate SHA-256 hashes by any method that results in a hash verifiable to be computed from the original message by other players. For convenience, here are a few unaffiliated websites that can be used to generate SHA-256 hashes:

Amend Rule "Auctions", subrule "Bidding" so that it reads in full:

During an Auction Phase, as a secret action in #auctions with default maturation and revelation dates, players can place bids on one or more distinct active lots. When a bidder ceases to be a player, all of their bids on active auctions are withdrawn and cease to be bids, and the bidder ceases to be a bidder.
In addition to normal failure conditions for secret actions, bids fail if any of the following occur:
  • If, when a player reveals their bids, one or more of those bids are not a natural number greater than zero if more than one of them are on a single lot, then all such bids fail immediately.
  • If, at the revelation date for the bidding the set of a player's bids that would otherwise succeed add up to a number more than how many points they have, then all of their bids fail.
Priority on a lot is a total order over bidders on that lot, considering only bids that are successful as of the revelation date, and is defined as follows:
  • If two bidders have different bids, the one with the higher bid has priority over the other.
  • Otherwise, the bidder whose most recent start or increase of their bid was least recent has higher priority over the other.
At the revelation date of each week's bids, after Prizes are given out for Hands and after it is decided which bids were successful, the auction concludes, and for each lot the following occur in the order listed:
  • The lot is transferred to the possession of the sole bidder with the highest priority on that lot (if one exists).
  • The player who received that lot loses the amount of points they bid.

Amend Rule "Auctions", subrule "Presenting A Hand" by changing its name to "Submitting a Hand" and changing its text to read, in full:

During an Auction Phase, as a secret action with default channel, maturation date and revelation date, players can Submit a Hand, specifying five distinct cards in their possession.
If, when a player reveals the Hand they submitted, they do not possess all the cards contained inside, then that Hand submission fails.

Amend Rule "Auctions", subrule "Prizes" by replacing the first paragraph with:

At the revelation date of each week's Hand submissions, before it is decided which bids were successful and lots are given out for auctions, but after it is decided which Hand submissions were successful, all players who have successfully Submitted a Hand in the week prior receive a placement according to the contents of their most recently Submitted Hands. Better hands get a lower rank number. Then:
  • The cards the players presented are destroyed.
  • The players then gain the prize(s) corresponding to their placement.