Community Garden/Ruleset

Time
All times mentioned in this ruleset are in UTC. Days start at 00:00 UTC.

Players
Any person may become a player by sending a message in any channel in The Community Garden category. A player may stop being a player by announcing their intent in any channel in The Community Garden category or by leaving the Discord server.

Branches
The plant consists of a number of branches. Every branch has a parent branch, except for the trunk. When a branch comes into existence, it does so with 0 leaves and a length of 1 centimeter. The trunk is considered to be a branch for the purposes of this Ruleset.

Nesting Level
Every branch has a Nesting Level, defined in the following way: The trunk has a Nesting Level of 1, and every other branch has a Nesting Level equal to one more than the Nesting Level of its parent branch.

The Plant
At the beginning of the cycle, the plant has a trunk with 0 leaves and a height of 0 centimeters.

Classes
Every person has a Class. The default Class is "Waterer"; any person who has not been assigned another Class is of the default Class.

Each Class has a number of Class-specific Actions. A person of a Class other than Waterer cannot perform any Actions specific to a Class other than their own. A Waterer who performs an Action specific to a Class other than their own becomes the Class that Action is specific to.

Any person who does not hold a Role can become a Waterer by posting their intent to do so as a single message in #plant-actions. This action fails if that person has successfully performed any Class-specific Actions within the past 7 days.

The following Classes and Class-specific Actions exist:
 * Waterer
 * Watering the Plant
 * Admirer
 * Admiring the Plant

Watering
Any Waterer may water the plant by posting their intent to do so as a single message in #plant-actions. The first time the plant is watered each day, the plant may attempt to grow. To determine the plant's growth, any person may randomly select a weighted result from the following Growth Pool.

Admiration
Any Admirer or Waterer may admire the plant by posting their intent to do so as a single message in #plant-actions. If a Waterer admires the plant, they become an Admirer.

If the plant has been admired at least once previously during a day it attempts to grow, add 1 entry of the following result for that roll attempt.

"If the trunk has not grown a bud within 5 centimeters of its current height, the trunk grows a new bud at its current height. Otherwise, the trunk sprouts 1 new leaf at its current height."

Photosynthesise
Any Waterer or Admirer may attempt to prompt the plant to photosynthesise by posting their intent to do so as a single message in #plant-actions. When a successful photosynthesis action is made, the trunk grows 1 centimeter, and the plant enters a photosynthesis cycle. The duration of the photosynthesis cycle is measured in days, and can be determined using the following formula and rounding up to the nearest integer:

Total length of the plant in centimeters/√(Total number of leaves on the plant) = Photosynthesis cycle duration

A photosynthesis cycle will count down at the start of each day, regardless of what time it starts. During a photosynthesis cycle, no "Photosynthesise" actions will succeed.

Development
When the plant is eligible for a development roll, any player who has not previously admired or watered the plant that day may choose a bud and make a development roll for that bud by posting their intent to do so as a single message in #plant-actions.

To make a development roll, roll 1d20 and add 1 to the result for every development roll that has been made for that bud previous to the current one. If the sum is 20 or more, the development roll succeeds. Regardless of the result, the plant stops being eligible for a development roll.

When a development roll succeeds, any person can roll 1dN, where N is the Nesting Level of the branch the chosen bud grew from. If the result of this roll is 1, the chosen bud becomes a branch, and its parent branch is the branch the chosen bud grew from. Otherwise, the chosen bud becomes a flower.

Seasons
At every point in time, it is one of three seasons, ordered as follows: Growth, Harvest, or Frost. During the following seasons, the following entries are found in the Growth Pool:

Growth:


 * 2x "The trunk grows one new leaf at its current height"
 * 1x "If the trunk has not grown a bud within 5 centimeters of its current height, the trunk grows a new bud at its current height. Otherwise, the trunk sprouts 1 new leaf at its current height."

Harvest:


 * 1x "If the trunk has not grown a bud within 5 centimeters of its current height, the trunk grows a new bud at its current height. Otherwise, the trunk sprouts 1 new leaf at its current height."
 * 2x "The plant becomes eligible for a development roll today."

On the first and fifteenth day of each month, the season changes to the next in the list.

Roles
Roles are positions associated with a specific class that can be held by a limited number of persons at a time. In order to hold a Role, a person must be of the class that Role is associated with. A person holding a Role cannot change Classes or perform actions specific to a Class other than their own under any circumstances.

The following Roles (and their associated Classes) exist:
 * Plant Keeper (Waterer)

The Plant Keeper
The Plant Keeper is a Role held by at most one person. The Plant Keeper is responsible for resolving rules disputes. The Plant Keeper may cease being such by stating so in #plant-keeper.

A request for clarification is an action that shall take the form of a question or statement. The proper response to a question is an action in the form of an answer to that question, and the proper response to a statement is the truth value of that statement.

Upon formal request by a person other than themself, the Plant Keeper shall, as quickly as possible, issue a response to the request. This response shall be binding only to the extent that it reasonably directly pertains to the request, and only to the extent that it does not blatantly and obviously contradict rules text.

Any Waterer may attempt to become the Plant Keeper by posting their intent to do so as an action in #plant-keeper. If after 7 days the message sent by the person has at least 3 :+1: reactions, and has more :+1: reactions than :-1: reactions, that person becomes the new Plant Keeper.

Proposals
Any person may make a proposal by sending a message as an action in #plant-proposals. If that message is deleted or modified during its voting period, the proposal is retracted. If there is an active proposal made by a person in the last 7 days, any new proposal they make is immediately retracted. An "active proposal" refers to any proposal that hasn't been retracted and is still in its 7-day voting period.

The voting period for proposals is 7 days. Once a proposal's voting period ends, if there are more votes in favor than against, the proposal takes effect.

A :+1: or :-1: reaction on a Proposal message at the time when the voting period ends constitutes a vote in favor or against, respectively.