setage/docs.toml

61 lines
2.8 KiB
TOML
Raw Normal View History

2024-05-21 04:59:26 -04:00
[credits] # Optional but highly recommended.
author = "who made the manifest for the game"
contributors = [] # optional list of strings.
2024-05-21 04:59:26 -04:00
year = "when it was made"
2024-05-21 16:37:12 -04:00
version = "" # optional version string
2024-05-21 04:59:26 -04:00
license = "license for this manifest"
[scenario] # Required.
2024-05-22 14:31:01 -04:00
min_version = "v0.3.1" # optional, highly recommended, minimum version of setage to play this manifest, "v" at the beginning is optional.
2024-05-21 04:59:26 -04:00
start = "id" # room where the player starts. any valid room id.
title = "title of the game"
intro = "intro to the game"
prompt = "> " # optional, default shown.
playtested = false # optional, default. displays a warning if this is set to false.
[scenario.endings.1] # Required.
2024-05-21 04:59:26 -04:00
trigger = "item" # one of "item", "room" ("interactable" in future releases).
target = "id of the trigger" # which item, room (or interactable) should trigger the win.
title = "title of the ending" # optional.
message = "message when this ending is triggered"
exit = false # optional, default; exit the game after triggering?
2024-05-21 04:59:26 -04:00
[items] # Required.
item.examine = "message when the `item` is examined" # `item` can be any item id.
item.hidden = false # optional, default.
[rooms.id] # Required, id can be any other room id.
description = "description of the room as it appears in the listing of exits from other rooms"
examine = "description of the room when you examine it"
go = "message when you `go` to this room"
[rooms.id.items] # Optional.
item = "description" # item can be any valid id. description is a short description as it appears in the room listing.
[rooms.id.interactables.id] # Optional. Any valid id.
name = "name of the interactable" # appears in the room listing.
type = "bare" # optional, default; options: "bare".
times = "one" # optional, default; options: "one", "change", "remove", "many".
hidden = false # optional, default.
action = "add exit" # any of "add exit", "add exits", "add item", "add items", "reveal interactable".
target_room = "id" # any valid room id; changes will be made to that room.
target_exit.name = "id" # Required if action is "add exit"; name of the exit as it appears in the room listing & id of the room it points to.
# Required if action is "add items"; pick one of the following two:
target_exits = [ # list of inline tables.
{name = "id"}, # similar to a regular exit decl.
]
target_exits.name = "id" # another way to do that.
target_item = {"id" = "description"} # Required if action is "add item"; any valid item id & short description as it appears in the room listing.
# Required if action is "add items"; pick one of the following two:
target_items = [ # list of inline tables.
{id = "description"}, # similar to a regular item decl.
]
target_items.id = "description" # another way to do that.
message = "message after the interactable is activated" # Required.
[rooms.id.exits] # Technically optional.
direction = "id" # direction as it appears in the listing.