Page 1 of 2

Plot Revamp Spec

Posted: Sat Dec 22, 2018 6:58 pm
by Niamh
Plot Command

plot list
plot header create
plot create [#]
plot advance [#]
plot edit <#>

Polca commands:

header <#>
owner <player>
share <comma separated list>
share none

Plot headers remain much the same as they have been, representing staff-run
special events which should show up on login and in plot header list. Plot
header create should be a staff only command to create plot headers with the
existing polca.

Plot create and plot advance should both enter the revamped plot polca, with
an optional argument for a number representing the plot header, which should
automatically set the header field in the polca if given.

The owner should also be automatically set to the player creating the plot.
The owner or staff can also set the owner to another player through the use
of the owner command, but no one else can set it. The owner or staff can
also use the share command to set other people who can edit or see the
plot, or clear it with share none. Any player, guild or public can be
used as the target for share, or a comma-separated list. Anyone shared on
the plot edit it, but only one at a time. If someone attempts to edit the
plot while it is already being edited, they can be given an error message.

Plot list should continue to work as it does now.

Re: Plot Revamp Spec

Posted: Sat Dec 22, 2018 6:58 pm
by Niamh
Plot Types

Polca commands:

type <type>

Plot types are designed to help players keep track of what they need to do
for a plot. Each plot type has requirements associated with it. The owner
can change the type while the plot is in draft status, and staff can change
the type at any time. When the type is changed, all of the previous
requirements are removed and the ones for the new type are added.

Plot types are:

Staff-Sponsored Plot - Requires header plot and action
Guild Investigation - Requires 1 guild investigation point and action
Roleplay Assistance - Requires 10 QP and action

Re: Plot Revamp Spec

Posted: Sat Dec 22, 2018 6:58 pm
by Niamh
Plot Status

Polca commands:

submit
store
cancel

Staff polca commands:

status <status>

Status tracks where a plot is in the process, and helps to automate
that progress.

Plot statuses are:

Draft
Queued
In Progress
Needs Input
Complete
Rejected

Staff can set status directly.

When players create a plot, its status is draft. Once they have
completed all of the requirements, they can use the submit command
to change the status to Queued, which indicates that it is ready for
staff review. Until the player is ready to submit back to staff,
they can use store instead, which will leave it in its current
status and does not require that all items are filled out. Only the
owner can submit.

If a plot has never been stored or submitted, the creator can also
use the cancel command to discard it.

Plots that have been accepted or rejected can no longer be edited by
players. If a player edits a plot, it should go back to the Draft
state.

Re: Plot Revamp Spec

Posted: Sat Dec 22, 2018 6:59 pm
by Niamh
Requirements

Staff polca commands:

require remove <#>
require add silver <#>
require add qp <#>
require add ip <#>
require add object <vnum> <#>
require add gpoints <#>
require add rumor
require add icevent


Requirements mark out items that players must complete to submit a plot.
Staff can remove requirements or add additional ones. Each requirement
is numbered and the remove command uses this number to remove them. Any
requirements which are not fulfilled should display in red with an (Unfilled)
tag at the end. Requirements can be silver, qp, ip, objects, or guild
investigation points, the number being the amount of each, or a rumor or IC
Event can be required.

Re: Plot Revamp Spec

Posted: Sat Dec 22, 2018 6:59 pm
by Niamh
Contributions

Polca commands:

contribute silver <#>
contribute qp <#>
contribute ip <#>
contribute object <object/s>
contribute gpoints <#>

Staff polca commands:

contribute remove <#>

Any player shared onto a plot can contribute towards the plot, which will
then be stored on the plot. Any contributions which are removed by staff
will be returned to the contributor, and if the plot is rejected, all of
them will be returned. Contributed objects could be stored in a plot box
in an OOC room, the entirety of which could be returned to the owner of
the plot to disburse in the case of the plot being rejected, to not have
to deal with restoring strings - or another solution that is easier.

Re: Plot Revamp Spec

Posted: Sat Dec 22, 2018 6:59 pm
by Niamh
Actions

Polca commands:

action

Any player can define their action on a plot. This is a description of
the IC actions that the player is taking to advance the plot. This is a
single editor which is unique to each player on the plot, but if they use
the action command again, it will edit their same action field once again.
All of the actions should be visible when viewing or editing the plot, but
tagged with the name of the person having written it. If any player has
created an action, it should count for the action requirement.

Re: Plot Revamp Spec

Posted: Sat Dec 22, 2018 7:00 pm
by Niamh
Notes

Polca commands:

note [targets]

Staff polca commands:

note retarget <#> <targets>
note delete <#>

Anyone who is shared on a plot can add a note when they are editing it.
Notes provide an ongoing correspondence between players and staff on
the outcomes and questions from the actions being taken. Notes can
be directed to a list of specific targets, or if no targets are
provided it should default to visible to everyone on the plot. Staff can
always see all notes, and are eligible as a target. Notes cannot be edited,
but staff change their target or delete them. Notes should display in time
order with who posted them and a time stamp. Only notes directed to the
player as a target should be visible to them.

Re: Plot Revamp Spec

Posted: Sat Dec 22, 2018 7:00 pm
by Niamh
Guild Investigations

Commands:

gpoints

Polca commands:

contribute gpoints <#>

Staff commands:

gpoints [g100uild]

Staff polca commands:

require add gpoints <#>

Guild points represent the resources that a guild has available
to investigate things within their circle of control by guild theme.
Guilds should earn points at weekly turnover, according to the current
state of the metrics. At that point, any unused guild points should be
reset, replaced by the newly earned ones.

Guild points should be earned at the rate:

Pathetic = 0 per week
Poor = 1 per week
Challenged = 1 per week
Substandard = 2 per week
Ordinary = 2 per week
Average = 3 per week
Good = 3 per week
Excellent = 4 per week
Superb = 4 per week
Legendary = 5 per week

Based on metrics:

Lawfulness : Reeves/Thieves * Thieves get inverse points for this metric.
Morale : Troubadours
Piety : Order
Economics : Merchants
Health : Physicians
Infrastructure : Council

If a requirement for guild points is removed or the plot is rejected,
the points can be returned to the guild, even if a rollover has happened in
the meantime.

Guildleaders should be able to contribute guild points to plots, and
there should be a role investigator which determines others in a guild who
are eligible to contribute guild points.

Anyone not restricted in a guild can use the goints command to see
the number of guild points available. Staff can view the point totals
for any guild. If staff specifies a guild, show the table for that
guild. If not, show all guilds. If a player is in two guilds, they can see
both, one after another.

Player view:
The <guild> currently have the resources to conduct <#> more investigations.

Staff view:
GUILD POINTS EARNED THIS WEEK
Reeves 1 2

Re: Plot Revamp Spec

Posted: Sat Dec 22, 2018 7:00 pm
by Niamh
IC Events and Rumors and Metrics

Polca commands:

post_event <yes/no>
spread_rumor <yes/no>
ic_post
rumor
post_title <title>
rumor_subject <title>
circles <circles>

Staff polca commands:

metric shift <metric> <amount>
metric remove <#>

Posts, rumors and metric shifts all go live after the plot has been accepted.
If the plot is reject, none of them take effect. The post_event and
spread_rumor commands are yes/no toggles which switch whether or not the
other post or rumor fields are visible, and whether or not they would be used.

If post_event is set to yes, an event will post on accept, and ic_post and
post_title fields would become visible, and ic_post would be required to submit.
ic_post opens an editor to post an IC Event post, which should go to all on the
IC Events board on accept of the plot. If post_title is set, that should be
the title of the post. If it's not, the title of the plot should be used for
the IC Event post. post_event should be given preference of post_title, if
only post is used in the plot polca. Anyone shared on the plot can edit these
fields, providing access to the same, shared editor.

If spread_rumor is set to yes, a rumor will post on accept, and rumor, circles
rumor_subject fields would become visible. Rumor would be required to submit,
and circles should default to Public. Rumor opens an editor to post the text
of a rumor, which should go into the rumor system. If rumor_subject is set,
that should be the subject of the rumor. If it's not, the title of the plot
should be used for the rumor subject. Circles should be used as the circles
of the rumor. rumor should be given preference to rumor_subject, if only
rumor is used in the plot polca. Anyone shared on the plot can edit these
fields, providing access to the same, shared editor.

Staff can also add metric shifts, which will place on accept of the plot.
Metrics are added individual and can be positive or negative. Once added, the
metric shift should appear numbered in the plot, and can be removed as well.
Metric shifts can also only be seen by staff. If an IC Event post is in place,
when it is posted, the metric shifts should be prepended at the beginning of
the post with the message matching the one in the recent shifts UI of city
report.

Re: Plot Revamp Spec

Posted: Sat Dec 22, 2018 7:01 pm
by Niamh
Staff Plot Manipulation

Staff commands:

plot accept <#>
plot reject <#>
plot status <#> <status>

Plot accept will move a plot into the complete state, posting all IC Event
Posts, rumors and metric shifts. Plot reject will move a plot into the
rejected state, returning all contributions. These should be the only way
to set a plot into complete or rejected state. Plot status will be an easy
mode to set the plot into other statuses than complete or rejected, working
the same way as the status within the plot polca, creating the Plot board
posts to indicate that status has changed.