Ruleset and Gamestate
This is the Ruleset for BlogNomic; all Hackers shall obey it. Section One consists of the “core rules” of BlogNomic, covering basic proposal mechanics; Section Two contains the rules of the current dynasty; and Section Three contains the appendix, which exists solely to clarify the remainder of the ruleset.
The Ruleset and Gamestate can only be altered in manners specified by the Ruleset.
Hackers may correct obvious spelling and typographical mistakes in the Ruleset and their own Pending Proposals at any time, including replacing Spivak and gender-specific pronouns with the singular “they”.
Any human may apply to join BlogNomic (if they are not already playing) by registering at http://blognomic.com via the Register link in the sidebar, and then making a post making clear their wish to be a Hacker. An Admin shall add them to the roster in the sidebar and the GNDT, at which moment they become a Hacker.
A Hacker may leave the game at any time by posting an entry to the BlogNomic weblog requesting such an action. A Hacker may not rejoin the game within two weeks after having left. A Hacker may only change their name as a result of a proposal approving the change.
Some Hackers are Admins, responsible for updating the site and the Ruleset, and are signified as such in the sidebar. Hackers who wish to become Admins may sign up with a username for the Ruleset Wiki, and submit a Proposal to make themselves Admins. Existing Admins may be removed from their posts by Proposal, CfJ, or voluntary resignation. New admins shall be given the GNDT configuration password when they become admins.
Some Hackers are Idle, and shall be marked as such in the sidebar. For the purposes of all Gamestate and the Ruleset, excluding Rules “Ruleset and Gamestate”, “Hackers”, “Dynasties”, “Fair Play” and any of those Rules’ subrules, Idle Hackers are not counted as Hackers.
If a Proposal contains a provision that targets a specifically named Idle Hacker, then that Idle Hacker is considered to be Unidle solely for the purposes of enacting that specific provision
When a Hacker is unidled, if they went Idle in the same dynasty, their personal gamestate retains the last legally endowed values it had, if they are still valid. Otherwise (including if a value is invalid, does not exist, or the Hacker Idled in a different dynasty), the Hacker is given the default value for new Hacker, if such a value exists.
An Admin may render a Hacker Idle if that Hacker has asked to become Idle in an entry or comment from the past four days, or if that Hacker has not posted an entry or comment in the last seven days. In the latter case, the Admin must announce the idling in a blog post. Admins may render themselves Idle at any time, but should announce it in a post or comment when they do so. An Admin may Unidle a Hacker if that Hacker has asked to become Unidle in an entry or comment from the past four days, and Idle Admins may Unidle themselves at any time, unless the Hacker who would be Unidled asked to become (or rendered themselves) Idle within the previous four days, and within the current dynasty.
Admins who are unidling themselves should, in their first vote following each unidling, highlight their changed idle status and any changes to quorum to have come about as a result of it.
BlogNomic is divided into a number of Dynasties. Each Dynasty may be headed by a single Hacker, known as the Zero Cool. If there is no Zero Cool, the Dynasty is a Metadynasty.
A Votable Matter is a post which Hackers may cast Votes on, such as a Proposal, a Call for Judgement or a Declaration of Victory.
Each Hacker may cast one Vote on a Votable Matter by making a comment to the Official Post that comprises that Votable Matter using a voting icon of FOR, AGAINST, or DEFERENTIAL. Additional voting icons may be permitted in some cases by other rules. A valid Vote is, except when otherwise specified, a Vote of FOR or AGAINST. A Hacker’s Vote on a Votable Matter is the last valid voting icon that they have used in any comment on that Votable Matter. Additionally, if the author of a Votable Matter has not used a valid voting icon in a comment to the post, then the author’s Vote is FOR. A non-Hacker never has a Vote, even if they were a Hacker previously and had cast a valid Vote.
Votable Matters can either be Pending, Enacted, or Failed. When a Votable Matter is first put forward, it is considered Pending.
Whenever an Admin resolves a Votable Matter, they must also mark their name, and report the final tally of Votes (or the fact that it was self-killed or vetoed).
This rule cannot be overruled by Dynastic Rules in its application to Calls for Judgement or Declarations of Victory.
Any Hacker may submit a Proposal to change the Ruleset or Gamestate, by posting an entry in the “Proposal” category that describes those changes (unless the Hacker already has 2 Proposals pending, or has already made 3 Proposals that day).
Special Proposal Voting
When a Hacker casts a vote AGAINST their own Proposal (which is not in the form of a DEFERENTIAL vote), this renders the Proposal Self-Killed, even if the author later changes their Vote. The Zero Cool may use VETO as a voting icon to cast a Vote on a proposal; when the Zero Cool casts a vote of VETO on a Proposal, this renders the Proposal Vetoed, even if the Zero Cool later changes their Vote.
If a Hacker other than the Zero Cool casts a vote of DEFERENTIAL on a Proposal, then the Vote of DEFERENTIAL is an indication of confidence in the Zero Cool. When the Zero Cool has a valid Vote other than VETO on a Proposal, then all votes of DEFERENTIAL are instead considered to be valid and the same as the Zero Cool's Vote for the purposes of other rules unless otherwise specified.
Resolution of Proposals
The oldest pending Proposal may be enacted by any Admin (by updating the Ruleset and/or Gamestate to include the specified effects of that Proposal, and then setting that Proposal's status to Enacted) if either of the following is true:
- It has a number of FOR Votes that exceed or equal Quorum, has been open for voting for at least 12 hours, and has not been Vetoed or Self-Killed.
- It has been open for voting for at least 48 hours, it has more than 1 valid Vote cast on it, more valid Votes cast on it are FOR than are AGAINST, and it has not been Vetoed or Self-Killed.
The oldest pending Proposal may be failed by any Admin, if any of the following are true:
- It has been Vetoed or Self-Killed.
- The number of Hackers who are not voting AGAINST it is less than Quorum.
- It has been open for voting for at least 48 hours and cannot be Enacted.
If a proposal somehow ends up being pending for more than 7 days, it is ignored for the purpose of calculating the oldest pending proposal, and can be failed by any Admin.
Calls for Judgement
If two or more Hackers actively disagree as to the interpretation of the Ruleset, or if a Hacker feels that an aspect of the game needs urgent attention, then any Hacker may raise a Call for Judgement (abbreviated CfJ) by posting an entry in the “Call for Judgement” category.
A Pending CFJ may be Resolved by an Admin if it has a Quorum of FOR Votes, a Quorum of AGAINST Votes, or if it has been open for voting for more than 48 hours. When a CFJ is Resolved, it is to be Enacted if it has more FOR Votes than AGAINST Votes and Failed otherwise. When a CFJ is Enacted, the Admin Enacting it shall update the Gamestate and Ruleset, and correct the GNDT and other gamestate tracking entities, as specified in the CFJ.
Any CfJ that specifies neither changes to the Gamestate or Ruleset nor corrections to any gamestate tracking entities may be failed by any Admin.
This Rule may not be overruled by Dynastic Rules.
Victory and Ascension
If a Hacker (other than the Zero Cool) believes that they have achieved victory in the current Dynasty, they may make a post to the Blognomic weblog in the Declaration of Victory category, detailing this.
Upon doing so, the game immediately goes into Hiatus, if it hasn’t already. During this time, the only game actions that may be taken are those covered by Rules “Hackers”, “Votable Matters”, “Calls for Judgement”, “Gamestate Tracking” and “Victory and Ascension”.
Every Hacker may cast Votes on that DoV to indicate agreement or disagreement with the proposition that the poster has achieved victory in the current Dynasty.
A Pending DoV may be enacted if any of the following is true:
- It has been open for voting for at least 12 hours, has a number of FOR Votes that exceed or equal Quorum, and either the Zero Cool has Voted FOR it or it has no AGAINST Votes.
- It has been open for voting for at least 24 hours, has a number of FOR Votes that exceed or equal Quorum, and has a number of AGAINST Votes lesser than half of Quorum, rounded down.
- It has been open for voting for at least 48 hours, has a number of Votes that exceed or equal Quorum, and more than half of its valid Votes are FOR.
A DoV may be failed if any of the following are true:
- It has been open for voting for at least 12 hours, and the number of Hackers who are not voting AGAINST it is less than Quorum.
- It has been open for voting for at least 48 hours and cannot be Enacted.
When a DoV fails and there are no pending DoVs, Hiatus ends.
When a DoV is enacted, all other active DoVs are failed, and a new Dynasty begins with the Hacker who made the DoV as its Zero Cool. That Hacker may pass this role to another Hacker at this point by making a post to that effect, if they wish. The Hiatus continues until the new Zero Cool makes an Ascension Address by posting an entry in the “Ascension Address” category - this should specify the Zero Cool's chosen theme for the new Dynasty, and may optionally specify that the terms Hacker and Zero Cool will be replaced with theme-specific terms throughout the entire ruleset, and/or a number of dynastic rules to keep. Upon posting such an Ascension Address, the Ruleset is updated to reflect any changed terms, and any dynastic rules which were not listed to be kept are repealed.
A DoV may not be started in the period between an enacted DoV and that DoV’s Ascension Address. When a DoV is failed, if it had at least one AGAINST vote, the Hacker who posted it cannot make another DoV until after 120 hours (5 days) have passed since the time their DoV was failed.
This rule cannot be overruled by Dynastic Rules as it relates to Declarations of Victory, but can be overruled in other matters.
The following are BlogNomic’s rules of fair play. If any of these rules are found to have been broken, or if a Hacker's behaviour or actions are otherwise deemed unacceptable (socially or otherwise), a proposal or CfJ may be made to reprimand or punish the perpetrator or, in cases of extreme or repeated violations, remove them from the game and bar them from rejoining.
- A single person should not control more than one Hacker within BlogNomic.
- A Hacker should not “spam” the BlogNomic blog. What counts as spamming is subjective, but would typically include posting more than ten blog entries in a day, more than ten blog comments in a row, or posting a blog entry of more than 1000 words.
- A Hacker should not deliberately exploit bugs or unexpected behaviours in the software running the game (ExpressionEngine, MediaWiki or the GNDT).
- A Hacker should not edit their own blog comments once posted, nor those of any other Hacker.
- A Hacker should not edit the "Entry Date" field of a blog post.
- A Hacker should not make a DoV primarily to delay the game by putting it into Hiatus.
- A Hacker should not do any action meant to make the game unplayable (for example, changing multiple keywords to the same word in an ascension address).
Blognomic goes into hiatus every year on December 24th, and remains in hiatus until December 27th. During this time no game actions may be taken except those described in the rules entitled “Votable Matters,” “Gamestate Tracking” and “Call for Judgement”.
Each Hacker has a Corp Name and any number of Codenames. Their Corp Name is the same as their BlogNomic account name, and is public.
As a daily action, a Hacker may set up a new Codename by adding it as an NPC in the GNDT, with a unique name of their choosing that is preceded by a colon to denote that it is a Codename. The earliest md5 hash posted by a Codename in a GNDT comment is known as its Ident: if a Hacker demonstrates that a Codename’s Ident is identical to the Hash of a grammatical English sentence of no more than 20 words which includes the Hacker’s own Corp Name and no other Corp Names, then that Hacker is said to control that Codename. If ever the ownership of a Codename becomes the subject of a Call for Judgement and it is determined that ownership of that Codename cannot be definitively proved, any Hacker may remove that Codename from the GNDT.
Idle Hackers may control Codenames. Any dynastic rule that affects Codenames is considered to affect Idle Hackers who control Codenames. Idle Hacker are not considered to be Hackers for any other rule.
If a Codename is able to take a Covert Action, any Hacker may take that Action on the Codename’s behalf (making any decisions required of it themselves) by updating the GNDT, while logged in as that Codename.
If a Covert Action is also Traceable, then the GNDT action corresponding to it must be Signed by the Hacker somewhere in its “Comments” field.
At any time, a Hacker may chose to Retire a Codename that they control. Retired Codenames are signified in the GNDT by having the name of the Hacker who controlled them in the "Hacker" field. A Retired Codename is not considered to be a Codename for any other dynastic rule unless explicitly stated.
Each Codename has a Hacker field in the GNDT. To ensure that equal access to GNDT functions is given to Hackers who are not admins, the password for each Codename account is publicly tracked in that Codename’s Hacker field.
At any time, there should be a Proto-Codename available in the GNDT, with the name :PROTO. If at any point there is no Proto-Codename account, any admin should create it. Proto-Codename accounts are not considered to be Codenames for the purposes of any rule apart from this one. Whenever a non-admin Hacker wishes to create a Codename, they may post a comment to the GNDT using a Proto-Codename Account, specifying their desired Codename and password, and Signing it. Any admin should create the requested Codename at their earliest opportunity, with a GNDT comment that repeats the Sign Hash of the creation request and contains no other Hashes; if this has not been completed within 24 hours of the request being made then the Zero Cool must create the requested Codename.
Tools of the Trade
Each Codename has a Tool, which is tracked in the GNDT as a string of characters. Each character represents a subroutine in their Tool. When the Hack Value of a Tool is calculated by a Hacker, it starts at zero and then has the effects of any Valid Security Measures applied to it then of each of its Subroutines applied once in the order that they are listed in the Tool’s GNDT field.
As a daily action, a Hacker may add a Subroutine to the right of the Tool of any Codename.
Subroutines that currently exist are as follows:
- ^ - Slicer - +2 to the Hack Value of this Tool
- @ - Blaster - Before carrying out a Hack with this Tool, permanently destroy the rightmost Security Measure of target Corp Name or, if target Corp Name has no Security Measures, reduce the defence Value of the target Corp Name by 1 permanently
- & - Back Door -Replicates the effect of another Subroutine in this Tool to the right of this Back Door. The Subroutine to be replicated may be chosen before making a Hack by the Hacker who controls this Codename.
- 2 - Amplifier - If this is the leftmost Amplifier in the Tool, then the Hack Value of this Tool is doubled.
- ? - Bug - -1 to the Hack Value of this Tool
- ~ - Workaround - +4 to the Hack Value of this Tool, then turns into a Bug (this Bug is not processed for the calculation during which it was created)
- # - Root Access - all non-Elevated Subroutines between two Root Accesses become Elevated. Elevated Subroutines gain +1 Hack Value. After a Hack Attempt with this Tool, all Back Doors after a Root Access are removed.
- i - Infection - After a hack replace a Valid Security Measure of the target Corp Name of the Codename’s choosing with a Virus
Each Corp Name has a Defence Score, which is a numerical value that is tracked in the GNDT under the “Tool” field, and which defaults to 10.
As a daily action, a Hacker may, on behalf of their Corp Name, Investigate a Codename, provided that they are not currently carrying out another such Investigation.
In order to commence an Investigation, the Hacker must expend at least 1 from the Defence Score of their Corp Name, and must then make a Story Post whose title starts with the word "Investigation:", and which specifies a single Codename, and the Hacker who they believe owns that Codename.
A Hacker may resolve an Investigation at any point, provided that it is not sooner than 25 hours minus 1 hour for each point of Defence Score spent to initiate that Investigation after it has been initially posted. To resolve an Investigation, the Hacker must comment to the Investigation Post to the effect that the Investigation is complete. They may then Terminate that Codename by blanking its Tool and Secrets and setting its Hacker field to “TERMINATED”. A Terminated Codename is not considered to be a Codename for any other dynastic rule unless explicitly stated.
A Corp Name may have zero or more Security Measures, tracked as non-numeral characters in the Corp Name’s “Tool” field.
At any time, a Hacker may reduce its Corp Name’s Defence Score or Secrets by 1 to add any Security Measure to the right of the Security Measures list of that Corp Name.
Valid Security Measures and their effects are:
- / - Firewall - Each Firewall a Corp Name has negates the rightmost Subroutine in the Hack Tool of any Codename which makes a Hack against that Corp Name.
- @ - Honeypot - Each Honeypot a Corp Name has negates the leftmost Subroutine in the Hack Tool of any Codename which makes a Hack against that Corp Name.
- ) - Shield - Adds +1 to the Defence Score of this Corp Name.
- V - Virus - Subtracts ((the number of viruses of this Corp Name-1)*2) from the Defence Score of this Corp Name.
The Hash of a Sentence is the MD5 Hash generated for it at http://www.miraclesalad.com/webtools/md5.php.
When a Hacker is required to Sign something, they should choose a grammatical English sentence of no more than 20 words which includes their own Corp Name and no other Corp Names, and then determine the Hash of that Sentence. This Hash should be written in full wherever the Hacker is required to Sign, and Hackers are encouraged to keep a private note of each sentence they choose and its Hash.
If it has not already done so during the current day, nor within the past 10 hours, a Codename can make a Hack against a Corp Name. This is a Covert, Traceable Action.
In order to do so, they must select a Corp Name to be their target, and compare the Hack Value of their Tool against the Defence Score of the Corp that is their target. If the Hack Value of the Tool is greater than the Defence Value of the Corp then the Hack is successful. Otherwise, it is unsuccessful.
If the Hack is successful, the Codename may reduce the Secrets of the Corp Name by 1 and increase their own Secrets by 1, as a Covert Action. They must then make a GNDT comment detailing the target of the Hack and its outcome, as a Covert Action. If the Hack is unsuccessful, then the Codename must lose one Subroutine of its choice from its Tool, as a Covert Action.
Each Corp Name and Codename has a number of Secrets, which is tracked in the GNDT. For Corp Names this defaults to 5; for Codenames it defaults to zero.
Hack the Planet
If at any time a Hacker has their name in the Hacker field of any number of Retired Codenames that have, collectively, at least five secrets, that Hacker has achieved Victory.
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. (eg. A rule specifying "bananas are blue" cannot be overruled by posting a dictionary definition or a photo of a banana, and a rule specifying "every day is Sunday" will be overruled by the glossary entry below.)
- "is able to"
- A blog comment published to the BlogNomic weblog at blognomic.com
- Core Proposal
- A Proposal which mandates changes that, even if conditionally, are limited to the creation, deletion, and/or amendment of core rules and/or the glossary, and/or renaming, banning, and/or the granting or removing of admin status from one or more Hackers.
- Daily Action
- If a game action is a Daily Action, each Hacker able to perform it may take that action once each day, but not more than once every ten hours.
- Daily Communal Action
- A Daily Communal Action is a Daily Action that can only be performed by one Hacker per day.
- References to a “day” as an entity rather than as a duration (e.g. “Sunday”, “The day after performing this action”, or “August 2nd”), unless otherwise stated, refer to a day beginning at and including 00:00:00 UTC, ending when the next day begins. It can never be 2 different days at the same instant.
- References to "YDICEX" refer to Y X-sided dice, rolled within the GNDT. To roll dice, post DICEX in the comments field of the GNDT, replacing X with the number of sides on the die you wish to roll.
- Dynastic Proposal
- A Proposal which mandates changes that, even if conditionally, are limited to the creation, deletion, and/or amendment of dynastic rules and/or gamestate defined by dynastic rules.
- Effective Vote Comment (EVC)
- A Hacker’s Effective Vote Comment with respect to a given Votable Matter means that Hacker’s Comment to that Votable Matter, if any, that contains that Hacker’s Vote on that Votable Matter.
- Flavour Text
- When posting a blog entry, a Hacker may use the “Commentary or flavour text” field of the blog publishing form to add their own comments or description of their post. For the purposes of all other rules, such text is not considered to be part of the post.
- Any information which the Ruleset regulates the alteration of, including all Wiki Pages, or GNDT columns, which the Dynastic Rules explicitly mention.
- IRC Channel
- The Blognomic IRC channel is located at #nomic on the slashnet network (irc.slashnet.org).
- "is permitted to"
- May not
- "is not permitted to"
- A blog post published to the BlogNomic weblog at blognomic.com
- Private Message
- A message sent via Blognomic’s Private Messages system at blognomic.com.
- Quorum of a subset of Hackers is half the number of Hackers in that subset, rounded down, plus one. If the word Quorum is used without qualifying which subset of Hackers it is referring to, it is referring to a Quorum of all Hackers.
- If used in a context of a Votable Matter, the world “Resolve” means to perform the act, as an Admin, of enacting or failing a Votable Matter. The world “Resolution” means then the act of doing so. If used in any other context, the meaning of both “Resolve” and “Resolution” is the standard English meaning of these words
- Each individually numbered section of the ruleset is a rule, including sections that are sub-rules of other rules.
- "is required to"
- "is recommended that"
- Sibling Rule
- Two rules are “siblings” of each other if they are both direct subrules of the same rule.
- Story Post
- A Story Post is an entry in the “Story Post” category.
- The "subject" of a blog entry is the part of the Title of an entry which is after the first colon. If the Title does not contain a colon, then the whole Title is the subject. Any entry whose subject is "" (i.e. an empty string) is not valid.
- A subrule is a type of rule that is nested within another rule. A proposal that specifically affects a rule affects all of its subrules; a proposal that specifically affects a subrule does not affect its parent rule or any other subrule of that rule, unless they are also explicitly cited as being affected by that proposal.
- The word “Vote”, used as a noun, means a Vote that is cast in accordance with Rule “Votable Matters”. The word “Vote”, used as a verb, means the act of casting such a Vote.
- Voting Icons
- For use in voting, a check box http://blognomic.com/images/vote/for.gif shall represent a Vote FOR, an X http://blognomic.com/images/vote/against.gif shall represent a Vote AGAINST, an IMP http://blognomic.com/images/vote/imperial.gif shall represent a Vote of DEFERENTIAL, and an Imperial Seal http://blognomic.com/images/vote/seal.gif shall represent the Imperial Veto.
- References to a week as an entity rather than as a duration (e.g. “At the beginning of each week”, or “already happened this week”), unless otherwise stated, refer to a period of time between the beginning of a Monday and the end of the following Sunday.
- Weekly Action
- If a game action is a Weekly Action, each Hacker able to perform it may take that action once each week, but not more than once every twenty-four hours.
- Weekly Communal Action
- A Weekly Communal action is a Weekly Action that can only be performed by one Hacker per week.
- The BlogNomic Wiki at http://wiki.blognomic.com
Votable Matters and other official posts, as well as specific gamestate information, shall be tracked by the BlogNomic blog at http://blognomic.com. Any Hacker may post to the blog at any time, but may only make official posts to the blog when the Ruleset allows it. Posts following the format specified by a rule are considered official posts. No entry may be more than one of the following official types of post: Votable Matters, and Idling Post.
If no Hacker has commented on it, or if the only comments on it begin with “Note:” and contain no voting icons, an official post may be altered or removed by its author; otherwise this can only be done as allowed by the Ruleset. However, despite this, official posts can never be changed from one category to another, or changed to be a different sort of official post, if they have been posted for more than fifteen minutes. The Admin processing an official post is allowed to append to the post to reflect its new status. Anything appended to a post in this way must be placed in the Admin field of the post, and the post's Status must be changed to reflect its status.
A non-official post may not, through editing of the blog or otherwise, be changed into an official post, with the following exception: Whilst a non-official post has been posted for less than fifteen minutes and has no comments, the author may change the categories as they wish.
Specific parts of the Gamestate data shall be tracked by the Generic Nomic Data Tracker at http://blognomic.com/gndt/generic.cgi?nomic=blog. Any Hacker may update any Hacker's data via the GNDT, whenever the Ruleset permits it.
All updates to the GNDT are logged. Actions that change gamestate directly (defined in other rules) can normally be performed simply by applying their effects to the GNDT, which updates the gamestate accordingly, unless another rule specifies some other method of performing them; one GNDT update may contain one or more actions, or one action may be split over multiple GNDT updates, as long as it’s clear what is happening and the actions are otherwise legal. The GNDT merely represents the Gamestate, and is not the same thing. In the event that the Gamestate and the GNDT are different, any Hacker may correct the GNDT to comply with the Gamestate.
If a Hacker feels that the GNDT was altered such that it no longer matches the gamestate (such as by performing an action which was against the Rules (as they were at the time of the alteration), or by any other means), they may simply undo the effects of that alteration. Instead of repeatedly reverting and re-reverting a disputed GNDT update, Hackers are encouraged to raise a Call for Judgement instead. Hackers shall be assigned a password for the GNDT when they join the Nomic.
The GNDT can be used to generate random results.
- The DICEN command can be used to generate a random number between 1 and N.
- The FRUIT command will return a random result from the following options: Lemon, Orange, Kiwi, Grape, Cherry, Tangelo.
- The COLOUR (or COLOR) command will return a random result from the following: White, Red, Green, Silver, Yellow, Turquoise, Magenta, Orange, Purple, Black.
- The VEGGIE command will return a random result from the following: Potato, Carrot, Triffid, Pumpkin.
Any changes to the potential outcomes of the GNDT’s random result commands must be made by proposal; and any proposal that seeks to nominate a change to this rule must first identify an active Hacker with server-level access to the BlogNomic site who is able to perform the changes, and must also update this rule to reflect the new potential outcomes.
Numbers and Variables
- If a set of valid values is not specified in their definition, game variables defined to hold numeric values can hold only non-negative integers. Any action that would set those values below zero is an illegal action unless explicitly otherwise stated in the ruleset.
- Any situation which would require a roll of DiceX when X is zero or lower always yields a value of 0 unless stated otherwise.
- All numbers, unless stated otherwise by a rule, are in base ten.
- Unless otherwise specified, to “spend” or “lose” an amount X of a numeric value “V” means to subtract X from V; to “gain” X of a numeric value “V” means to add X to V; and to “transfer” X of a numeric value “V” from A to B means to subtract X from A’s V and add X to B’s V. Unless otherwise specified, only positive amounts can be spent, lost, gained, or transferred, and a rule that allows Hackers to transfer a numeric value only allows them to transfer that value from themselves to another Hacker (of their choice unless otherwise stated).
- A Hacker who has a choice in whether to take an action defined by a dynastic rule may not take that action if both of the following conditions are true: a) the action's effects are limited to changing values tracked in the GNDT and/or similar gamestate-tracking entities (such as a wiki page), and b) the action would change one or more of those values to an illegal value.
- If a rule implies that the result of any calculation should be an integer (for instance, by attempting to store that result in, or add it to, a gamestate variable that can only hold integers), the result of the calculation is instead the result rounded towards 0.
- If a number or other game variable is selected 'at random' or 'randomly' from a range of possible values, its value shall always be taken from a uniform probability distribution over the entire range of possible values, unless otherwise specified. This value must be determined by an appropriate DICE roll in the GNDT, unless otherwise specified.
- If a game variable has no defined starting value, then that starting value is the nearest legal value to zero that it may take (for numerical variables, defaulting to positive if tied), blank (for a text string or list that may be blank), the alphabetically earliest legal text string it may take (for a text string which may not be blank, with the digits 0 through 9 considered to precede “A”), or the list which is alphabetically earliest from the set of lists with the fewest elements (for lists which may not be blank, and considering each list to be a single unpunctuated text string, with the digits 0 through 9 considered to precede “A”).
- Invalid values for game variables can never be used, even if the values stored in the GNDT remain valid. (for example, if X appears in a formula referring to a value that is a non-negative integer, X must be used as a non-negative integer)
Rules and Proposals
- If a new rule is created by a proposal and its location is not noted in that proposal, that new rule is to be placed in the Dynastic Rules.
- If a wiki page becomes gamestate as a result of a proposal enacting, that page shall - unless otherwise specified - be reverted to whatever state it was in at the time of that proposal's submission (and if the page did not exist at that time, it shall be blanked).
- Where a Proposal would amend the effects of Proposal Enactment, this does not apply to its own enactment unless explicitly stated (eg. a proposal proposing that enacted proposals earn their author a banana when enacted would not earn a banana for its own author, when enacted).
- Rules which trigger upon the Resolution of a Votable Matter are the responsibility of the Admin who Resolves it.
- Unless otherwise specified, a new Dynastic rule shall be placed at the end of the Dynastic Rules.
- If a rule would ever have no name, it is instead named “Unnamed Rule”.
- The names of rules are not themselves rule text and have no effect other than being rule names.
- If the admin enacting a proposal reaches a step which cannot be applied immediately (eg. “two days after this proposal enacts, Hacker A gains 1 point”), that step is ignored for the purposes of enactment. Once a proposal has been enacted, it can have no further direct effect on the gamestate.
- For the purpose of all rules, time in Blognomic is in UTC.
- All references to time must be either specific or defined within the ruleset to be considered achievable in the gamestate. Abstract concepts of time (e.g. "dinnertime", "twilight") cannot be achieved until they fulfil one of these criteria.
- Where the month, day and/or year of a calendar date are ambiguous (eg. "04/10/09"), it shall be assumed that the date is in a day/month/year format.
- Superficial differences between the spelling of geographic versions of English, e.g, British English, American English and Australian English shall be construed as irrelevant for the purposes of play.
- Within the ruleset, a word only refers to the name of a Hacker if it is explicitly stated that it refers to a Hacker's name.
- If two parts of the Ruleset contradict each other, precedence shall be construed in the following order:
- The Appendix has precedence over any Rule;
- A Dynastic Rule has precedence over a Core Rule, unless that Core Rule explicitly says it can’t be overruled by a Dynastic Rule;
- If both contradicting parts are Core Rules, or if both of them are Dynastic Rules, the part with more limited scope applies. (e.g. if the rules “Hackers may Kick each other” and “Hackers may not kick each other on Tuesdays” exist, and it is Tuesday, Hackers may not Kick each other.)
- If two parts with the same scope contradict each other, the negative rule applies. (e.g. with “Hackers may Punch a Spaceman on Friday” and “Hackers may not Punch Spacemen on Friday”, then Hackers may not Punch Spacemen on Friday.)