Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 10 additions & 6 deletions src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
---
- [Why?](meta/why.md)
- [Guide to Editing Docs](meta/guide-to-editing-docs.md)
- [Removing Docs](meta/removing-docs.md)

# Coding
---
Expand Down Expand Up @@ -75,9 +76,7 @@
- [Crew](design/masks/crew.md)
- [Amnesiac](design/masks/crew/amnesiac.md)
- [Angel](design/masks/crew/angel.md)
- [Animal Hater](design/masks/crew/animal-hater.md)
- [Arms Dealer](design/masks/crew/arms-dealer.md)
- [Arsonist](design/masks/crew/arsonist.md)
- [Avenger](design/masks/crew/avenger.md)
- [Bomber](design/masks/crew/bomber.md)
- [Cannibal](design/masks/crew/cannibal.md)
Expand All @@ -87,7 +86,6 @@
- [Empath](design/masks/crew/empath.md)
- [Enthraller](design/masks/crew/enthraller.md)
- [Fruit Vendor](design/masks/crew/fruit-vendor.md)
- [Gambler](design/masks/crew/gambler.md)
- [Glutton](design/masks/crew/glutton.md)
- [Guzzler](design/masks/crew/guzzler.md)
- [Insider](design/masks/crew/insider.md)
Expand All @@ -97,9 +95,7 @@
- [Mind Reader](design/masks/crew/mind-reader.md)
- [Parasite](design/masks/crew/parasite.md)
- [Phantom](design/masks/crew/phantom.md)
- [Philanthropist](design/masks/crew/philanthropist.md)
- [Pilferer](design/masks/crew/pilferer.md)
- [Polymath](design/masks/crew/polymath.md)
- [Sacrifice](design/masks/crew/sacrifice.md)
- [Scapegoat](design/masks/crew/scapegoat.md)
- [Survivalist](design/masks/crew/survivalist.md)
Expand All @@ -115,4 +111,12 @@
- [Red Carpet](design/masquerades/red-carpet.md)
- [Station Events](design/station-events.md)
- [Machine Degradation](design/machine-degradation.md)
- [Wildcards](design/wildcards.md)
---
- [Removed Documents](design/removed.md)
- [Animal Hater](design/removed/animal-hater.md)
- [Arsonist](design/removed/arsonist.md)
- [Gambler](design/removed/gambler.md)
- [Mask Tokens](design/removed/mask-tokens.md)
- [Philanthropist](design/removed/philanthropist.md)
- [Polymath](design/removed/polymath.md)
- [Wildcards](design/removed/wildcards.md)
10 changes: 2 additions & 8 deletions src/design/masks.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ Some general archetypes of masks (again, not exhaustive and new archetypes can a
- **Converter**: Masks which convert another player to a certain mask or give them additional objectives on some condition. Should be very uncommon, *especially* duplicating masks. Examples: [subverter](masks/traitor/subverter.md), [enthraller](masks/crew/enthraller.md).
- **Copier**: Masks which copy other masks on some condition. Examples: [cannibal](masks/crew/cannibal.md).
- **Giver**: Masks which center around creating and disseminating items to others for some purpose. Examples: [arms dealer](masks/crew/arms-dealer.md), [fruit vendor](masks/crew/fruit-vendor.md).
- **Sabotager**: Masks whose objectives revolve around engaging in some kind of malicious activity that generally harms others and leads to direct conflict. Examples: [animal hater](masks/crew/animal-hater.md), [arsonist](masks/crew/arsonist.md).
- **Sabotager**: Masks whose objectives revolve around engaging in some kind of malicious activity that generally harms others and leads to direct conflict and has deniability with troupe masks. Examples: [vandal](masks/crew/vandal.md).
- **Murderer**: Masks which center around directly engaging in conflict with and killing other players. Examples: [assassin](masks/traitor/assassin.md), [veteran](masks/crew/veteran.md).
- **Guardian**: Masks which center around preventing other players from being harmed or killed. Examples: [avenger](masks/crew/avenger.md), [tracker](masks/crew/tracker.md).
- **Freak**: Masks whose objectives interact with the simulation in a way that is strange and leads into weird interactions, but not necessarily direct conflict with others. Examples: [glutton](masks/crew/glutton.md), [daredevil](masks/crew/daredevil.md).
Expand Down Expand Up @@ -97,10 +97,4 @@ Sometimes, variants can be interesting enough to warrant an entire new mask expl
Masks are given out immediately when players spawn, whether on the transport shuttle or just through cryo.
All players receive a mask, regardless of role (though certain roles may be prohibited from being members of certain factions).

The mask that you receive is determined by the current [Masquerade](masquerades.md), players are given a mask randomly from the set of masks the masquerade generated. Players **cannot** influence what mask they are given.

### Mask Tokens {.es-unimplemented }
At the end of a round, if you've successfully complete your objectives, you receive a **mask token** that's associated with your account.
Between rounds, a few round's worth of tokens can be redeemed to pre-select your mask before the round begins.

This provides an incentive for completing mask objectives (to earn tokens) as well as a way to occasionally mitigate randomness.
The mask that you receive is determined by the current [Masquerade](masquerades.md), players are given a mask randomly from the set of masks the masquerade generated. Players **cannot** influence what mask they are given.
2 changes: 2 additions & 0 deletions src/design/masks/crew/daredevil.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

{{#template ../../../templates/implemented.md }}

{{#template ../../../templates/slated-for-rework.md reason="doesnt interact with other players enough, they tend to just do their own thing. going to be reworked into a different mask most likely that is more player-interaction-driven"}}

> **Name:** Daredevil
>
> **Troupe:** [Crew](../crew.md)
Expand Down
2 changes: 1 addition & 1 deletion src/design/masks/crew/empath.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Their main ability is the power to sense the aura of a target player, which they
Which aura they see is dependent on the mask the player has:

- **Neutral Aura:** Basic, unassuming. Default aura used for the majority of roles such as [VIP](vip.md), [Mercenary](mercenary.md), [Glutton](glutton.md), etc
- **Killing Intent:** Murderous, violent. Used for roles that have kill-related objectives, such as [Traitors](../traitors.md), [Animal Hater](animal-hater.md), [Veteran](veteran.md), etc
- **Killing Intent:** Murderous, violent. Used for roles that have kill-related objectives, such as [Traitors](../traitors.md), [Martyr](martyr.md), [Veteran](veteran.md), etc
- **Strange Feeling:** Dull, hazy. Reserved for masks which have not gained their main objectives, such as the [Amnesiac](amnesiac.md) or Copier-type masks like the [Cannibal](cannibal.md)

## Gameplay
Expand Down
2 changes: 0 additions & 2 deletions src/design/masks/crew/pilferer.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,6 @@ This ability cannot be used on unconscious or dead players.

The Pilferer's objective and actions lead them into direct minor conflict with many people, while the random nature of their action means they're unlikely to be able to powergame very hard with the items they do manage to steal. The leadup to the steal--having to be outside of their viewcone--integrates nicely with the viewcone mechanic itself and other related mechanics, like footsteps being muted when walking, or invisibility granted by things like the [Spy](../traitor/spy.md)'s stealth suit, if the Pilferer can manage to steal it.

The Pilferer has co-deniability with the [Philanthropist](./philanthropist.md), whose behavior up to the conclusion of the action is functionally identical.

## Variants

*Professional Pilferer* - Action usable N times (>1) per player, and with a faster doafter.
2 changes: 2 additions & 0 deletions src/design/masks/crew/sacrifice.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

{{#template ../../../templates/implemented.md }}

{{#template ../../../templates/slated-for-rework.md reason="just not interesting enough of an objective, not strong enough to matter at all, people basically just suicide in the right place and it usually doesnt affect much, although i still think the concept is workable"}}

> **Name:** Sacrifice
>
> **Troupe:** [Crew](../crew.md)
Expand Down
3 changes: 3 additions & 0 deletions src/design/removed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Removed Design Documents

This section exists to catalogue previously designed, and perhaps even previously implemented, documents which were, for some reason or another, removed from Ephemeral Space. We hope that this serves as a useful repository for future reference, and that it helps us avoid accidentally redesigning failed concepts.
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Animal Hater

{{#template ../../../templates/unimplemented.md }}
{{#template ../../templates/removed-unimplemented.md reason="not enough actual small creatures on station, too much of a freak-type mask, not really enough of an interesting conflict that i think its worth having, itd be better with another dimension to it" }}

> **Name:** Animal Hater
>
> **Troupe:** [Crew](../crew.md)
> **Troupe:** Crew
>
> **Description:** Take out your anger by killing small creatures around the station. No one will notice, right?
>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
# Arsonist

{{#template ../../../templates/unimplemented.md }}

{{#template ../../templates/removed-unimplemented.md reason="we have plenty of fires as is. just not very interactive, much less interesting than other masks, less dimensionality, less integration, too one-note" }}

> **Name:** Arsonist
>
> **Troupe:** [Crew](../crew.md)
> **Troupe:** Crew
>
> **Description:** Set little fires around the station. Watch the cinders dance around.
>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Gambler

{{#template ../../../templates/unimplemented.md }}
{{#template ../../templates/removed-unimplemented.md reason="i still like the concept just dont think its interesting enough to be a mask with what we've learned so far, not really interactive enough, will probably get revisited eventually" }}

> **Name:** Gambler
>
> **Troupe:** [Gambler](../crew.md)
> **Troupe:** Crew
>
> **Archetypes:** Freak
>
Expand Down
8 changes: 8 additions & 0 deletions src/design/removed/mask-tokens.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Mask Tokens

{{#template ../../templates/removed-unimplemented.md reason="Extracted from mask document. Mask tokens kind of directly conflict with Masquerades. You can't both pick your own mask, and also have a focused game style in play. We still want some metaincentives for objective stuff but not like this." }}

At the end of a round, if you've successfully complete your objectives, you receive a **mask token** that's associated with your account.
Between rounds, a few round's worth of tokens can be redeemed to pre-select your mask before the round begins.

This provides an incentive for completing mask objectives (to earn tokens) as well as a way to occasionally mitigate randomness.
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Philanthropist

{{#template ../../../templates/unimplemented.md }}
{{#template ../../templates/removed-unimplemented.md reason="just not interesting, i dont think it even has much deniability with pilferer, pilferer at least leads to actual conflict when this could realistically be really cheesy and dumb" }}

> **Name:** Philanthropist
>
> **Troupe:** [Crew](../crew.md)
> **Troupe:** Crew
>
> **Archetypes:** Giver, Freak
>
Expand All @@ -20,12 +20,12 @@ The Philanthropist can put random luxurious items into people's backpacks, as lo

## Abilities

The Philanthropist has a player-targeting action usable once (successfully) per player, with a doafter that doesn't show up for others, identical to the [Pilferer](./pilferer.md)'s. They can activate this action only when out of sight of that player (i.e. in their viewcone's shadow, or more literally, when they're facing the same direction), taking ~1.5-2 seconds, failing if either of them move. If successful, this will spawn a random item out of a pool (maybe the current gift pool? idk) and place it into their backpack.
The Philanthropist has a player-targeting action usable once (successfully) per player, with a doafter that doesn't show up for others, identical to the Pilferer's. They can activate this action only when out of sight of that player (i.e. in their viewcone's shadow, or more literally, when they're facing the same direction), taking ~1.5-2 seconds, failing if either of them move. If successful, this will spawn a random item out of a pool (maybe the current gift pool? idk) and place it into their backpack.

If there isn't enough space in their backpack, it will attempt to place the item in their pockets, simply cancelling with a popup if this also fails.

This ability cannot be used on unconscious or dead players.

## Gameplay

The Philanthropist serves as a way to introduce some item variance into the game through their gifts--often useful things, like materials, money, or ammunition. Because the Philanthropist and [Pilferer](./pilferer.md) have functionally identical behavior up until the point of the action completing, people aren't incentivized to listen to a Philanthropist's plea of "heyyy lemme sneak up right behind you real quick and give you some money".
The Philanthropist serves as a way to introduce some item variance into the game through their gifts--often useful things, like materials, money, or ammunition. Because the Philanthropist and Pilferer have functionally identical behavior up until the point of the action completing, people aren't incentivized to listen to a Philanthropist's plea of "heyyy lemme sneak up right behind you real quick and give you some money".
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Polymath

{{#template ../../../templates/unimplemented.md }}
{{#template ../../templates/removed-unimplemented.md reason="kind of Too Much deniability, maybe ok in some masquerades but also i dont want to bait someone into implementing this when its not really that good. the flavor text is awesome though i cooked with that" }}

> **Name:** Polymath
>
> **Troupe:** [Crew](../crew.md)
> **Troupe:** Crew
>
> **Archetypes:** Depends
>
Expand All @@ -20,13 +20,13 @@ The Polymath is a highly variable crew mask that receives two random abilities f

## Abilities

The Polymath's abilities depend on the random abilities chosen for them--for example, from the [Fruit Vendor](./fruit-vendor.md), [Arms Dealer](./arms-dealer.md), [Philanthropist](./philanthropist.md), or [Connoisseur](./connoisseur.md). Abilities are rolled first, and then objectives. Objectives which require for certain abilities--like the Fruit Vendor's objective--should require the corresponding ability. However, other objectives may always roll, even without the corresponding ability.
The Polymath's abilities depend on the random abilities chosen for them--for example, from the Fruit Vendor, Arms Dealer, Philanthropist](./philanthropist.md), or Connoisseur. Abilities are rolled first, and then objectives. Objectives which require for certain abilities--like the Fruit Vendor's objective--should require the corresponding ability. However, other objectives may always roll, even without the corresponding ability.

## Gameplay

The Polymath generates high amounts of variable deniability for essentially any crew mask with an ability--suddenly, being able to spawn fruits out of the aether no longer implies a harmless Fruit Vendor, and it may in fact be a Polymath with the ability to [kill an enemy](./veteran.md) or [set fires](./arsonist.md).
The Polymath generates high amounts of variable deniability for essentially any crew mask with an ability--suddenly, being able to spawn fruits out of the aether no longer implies a harmless Fruit Vendor, and it may in fact be a Polymath with the ability to kill an enemy or set fires.

The existence of the Polymath requires people to think more carefully about ability-granting masks, and the randomization allows for some truly strange combinations (Fruit Vendor with [Glutton](./glutton.md) objectives, anyone?).
The existence of the Polymath requires people to think more carefully about ability-granting masks, and the randomization allows for some truly strange combinations (Fruit Vendor with Glutton objectives, anyone?).

## Variants

Expand Down
6 changes: 3 additions & 3 deletions src/design/wildcards.md → src/design/removed/wildcards.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Wildcard Roles

{{#template ../templates/unimplemented.md}}
{{#template ../../templates/removed-unimplemented.md reason="Wildcards as a whole are an aspect of multistation oriented thinking that no longer fits ES's wider design. In particular they don't mesh well with Masquerades, and create isolated pockets of gameplay separate from the wider game." }}

A portion of the station, at roundstart, are selected to be Wildcards--pawns in the round that are external to the main crew experience. These can include things like:
- Solo free agent roles (shitty pod guy)
Expand All @@ -9,11 +9,11 @@ A portion of the station, at roundstart, are selected to be Wildcards--pawns in
- Helpful solo/team roles (traders)
- Grey team roles (swarmer drones)

Wildcard roles are never considered part of the crew [troupe](./masks.md) at roundstart, are not part of the typical role pool, and have goals of their own that may lead them into conflict or cooperation with the crew and other wildcards. Gameplay for them should be crafted so that they have reason to interact with things that will affect the station's inhabitants in a nuanced way, but they do not necessarily need to directly interface with the crew in "roleplay".
Wildcard roles are never considered part of the crew troupe at roundstart, are not part of the typical role pool, and have goals of their own that may lead them into conflict or cooperation with the crew and other wildcards. Gameplay for them should be crafted so that they have reason to interact with things that will affect the station's inhabitants in a nuanced way, but they do not necessarily need to directly interface with the crew in "roleplay".

*Notes: It probably makes sense to select some roles first, and only shunt players off into the wildcard pool if they only selected roles that are already fully saturated, or once an adequate number of each role has been selected?*

Wildcards will often be humanoids with the same capacity as the station crew, in which case they may opt into having [masks](./masks.md). Specific wildcard roles can decide whether they will roll masks, and what subset/weighting of masks they should use. Wildcards may also be nonhumanoid, in which case they should not roll masks.
Wildcards will often be humanoids with the same capacity as the station crew, in which case they may opt into having masks. Specific wildcard roles can decide whether they will roll masks, and what subset/weighting of masks they should use. Wildcards may also be nonhumanoid, in which case they should not roll masks.

When the round starts and the players who will be put into the wildcard pool are selected, they are given a selection of wildcard roles and allowed to vote on which to play.

Expand Down
2 changes: 0 additions & 2 deletions src/design/roundflow/roundstart-arrivals-latejoining.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@

{{#template ../../templates/partially-implemented.md }}

When the round starts, players are internally split up into two groups. The first are those that will play the station roles. This group should comprise the vast majority of players. Those in the second group are given the option to play as a [wildcard role](../wildcards.md).

## Arrivals

At the start of the round, the station crew spawns in cryosleep aboard a transport ship. The ship has detected that only a few minutes remain until they arrive at the station, and now the crew must reorient themselves and prepare to board. It's been a significant length of time since the crew was put into cryosleep--maybe years--and they're going to be a little dazed, or.. worse?
Expand Down
9 changes: 9 additions & 0 deletions src/meta/removing-docs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Removing Docs

When removing docs, or sections of docs, that are deemed outdated and unsatisfactory or whose features were already removed from the game, you should follow a simple process. We want to keep things around that are removed for archival and learning purposes, as opposed to removing them from the repo entirely.

- Move the doc into the [Removed](../design/removed.md) folder, as well as in the SUMMARY.md.
- If the offending part is only a section of a doc, as opposed to an entire doc, create a new doc for it and place it in the `Removed` folder. See [mask tokens](../design/removed/mask-tokens.md).
- Add the correct removal template marker (`removed-implemented.md` or `removed-unimplemented.md`) to the top of the page, including writing a reason for removal. See any of the already-removed docs in that folder.
- If the removed doc contains any links to other docs, simply remove them (keep the text) rather than trying to conform the links to the new directory structure.
- If any other docs link to the now-removed doc, remove the links and rewrite fragments referencing the removed concept.
Loading
Loading