Skip to content

Commit

Permalink
Merge pull request #202 from dstrain115/perimeter_institute
Browse files Browse the repository at this point in the history
Preliminary draft of the Perimeter zone
  • Loading branch information
dstrain115 authored Jul 24, 2024
2 parents ae5bb49 + 7ee6005 commit c42da65
Show file tree
Hide file tree
Showing 2 changed files with 222 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@
}

# Rooms that purposely do not have a way back.
_ONE_WAY_ROOMS = {"hadamard1", "hadamard4_0", "hadamard4_1", "hadamard5", "perimeter1"}
_ONE_WAY_ROOMS = {"hadamard1", "hadamard4_0", "hadamard4_1", "hadamard5", "perimeter1",
"perimeter99"}


def find_room(room_name: str):
Expand Down
222 changes: 220 additions & 2 deletions examples/quantum_rpg/final_state_preparation/quantum_perimeter.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,228 @@
label="perimeter1",
title="Inside the Perimeter",
description=(
"You have made it inside the Quantum Perimeter Research Facility."
"You have made it inside the Quantum Perimeter Research Facility.\n"
"What once must have been a modern and extravagent reception area\n"
"has now fallen into disrepair. Light from a large hall seeps in\n"
"from the north. Double doors lead to a theatre to the east."
),
encounters=[],
items=[CONSTRUCTION_SIGN],
exits={Direction.SOUTH: "hadamard17"},
exits={Direction.EAST: "perimeter2", Direction.NORTH: "perimeter3"},
),
Location(
label="perimeter2",
title="Theatre of Ideas",
description=(
"A large lecture hall is filled with empty seats. The front of\n"
"the theatre is filled with a large stage and screen. Light from\n"
"a projector in the ceiling illuminates a presentation of slides\n"
"that periodically rotate with an echoing click that reverberates\n"
"through the empty hall."
),
encounters=[],
items=[],
exits={Direction.WEST: "perimeter1", Direction.UP: "perimeter6"},
),
Location(
label="perimeter3",
title="Atrium",
description=(
"Diffuse sunlight seeps in through an opening far above. Several floors\n"
"of broken windows surround the rectangular atrium, extending upwards.\n"
"Vague pools of dissolved material and scattered glass shards are all\n"
"that remain within this empty space."
),
encounters=[],
items=[],
exits={Direction.SOUTH: "perimeter1", Direction.NORTH: "perimeter4"},
),
Location(
label="perimeter4",
title="Black Hole Bistro",
description=(
"A sign hangs crookedly over the institute's cafeteria.\n"
"Within, overturned chairs and tables fill the chaotically\n"
"arranged place. Strange radiation emanates from the\n"
"counters and serving areas."
),
encounters=[],
items=[],
exits={
Direction.SOUTH: "perimeter3",
Direction.NORTH: "perimeter5",
Direction.UP: "perimeter9",
},
),
Location(
label="perimeter5",
title="Reflection Pool",
description=("A reflection pool outside the perimeter institute."),
encounters=[],
items=[],
exits={Direction.SOUTH: "perimeter4", Direction.NORTH: "perimeter20"},
),
Location(
label="perimeter6",
title="Theatre Seating",
description=("Second floor of the lecture hall."),
encounters=[],
items=[],
exits={Direction.DOWN: "perimeter2", Direction.NORTH: "perimeter7"},
),
Location(
label="perimeter7",
title="Reading Room",
description=(
"A library within the Perimeter institute. Books containing\n"
"quantapedia entries can be found here."
),
encounters=[],
items=[],
exits={Direction.SOUTH: "perimeter6", Direction.NORTH: "perimeter8"},
),
Location(
label="perimeter8",
title="Stairway",
description=("Stairs leading upwards."),
encounters=[],
items=[],
exits={
Direction.UP: "perimeter11",
Direction.SOUTH: "perimeter7",
Direction.WEST: "perimeter9",
},
),
Location(
label="perimeter9",
title="Dining Area",
description=("Upstairs from the bistro."),
encounters=[],
items=[],
exits={
Direction.DOWN: "perimeter4",
Direction.NORTH: "perimeter10",
Direction.EAST: "perimeter8",
},
),
Location(
label="perimeter10",
title="Terrace",
description=(
"From the overlook, you can see the surrounding area.\n"
"In the distance, a tunnel into the mountains of error\n"
"correction can be seen past a large forest."
),
encounters=[],
items=[],
exits={Direction.SOUTH: "perimeter9"},
),
Location(
label="perimeter11",
title="Stairway",
description=("Stairs lead up and down."),
encounters=[],
items=[],
exits={
Direction.DOWN: "perimeter8",
Direction.NORTH: "perimeter12",
Direction.UP: "perimeter15",
},
),
Location(
label="perimeter12",
title="Hallway",
description=(""),
encounters=[],
items=[],
exits={
Direction.SOUTH: "perimeter11",
Direction.WEST: "perimeter13",
Direction.EAST: "perimeter14",
},
),
Location(
label="perimeter13",
title="Theorist Office",
description=(""),
encounters=[],
items=[],
exits={Direction.EAST: "perimeter12"},
),
Location(
label="perimeter14",
title="Experimentalist Office",
description=(""),
encounters=[],
items=[],
exits={Direction.WEST: "perimeter12"},
),
Location(
label="perimeter15",
title="Rooftop Garden",
description=(""),
encounters=[],
items=[],
exits={Direction.DOWN: "perimeter11"},
),
Location(
label="perimeter20",
title="By the shores of a Silver Lake",
description=(""),
encounters=[],
items=[],
exits={Direction.SOUTH: "perimeter5", Direction.NORTH: "perimeter21"},
),
Location(
label="perimeter21",
title="Bridge over Silver Lake",
description=(""),
encounters=[],
items=[],
exits={Direction.SOUTH: "perimeter20", Direction.NORTH: "perimeter22"},
),
Location(
label="perimeter22",
title="By an old mill",
description=(""),
encounters=[],
items=[],
exits={
Direction.SOUTH: "perimeter21",
Direction.EAST: "perimeter23",
Direction.NORTH: "perimeter24",
},
),
Location(
label="perimeter23",
title="Grist Mill",
description=(""),
encounters=[],
items=[],
exits={Direction.WEST: "perimeter22"},
),
Location(
label="perimeter24",
title="On the edge of a twisty forest",
description=("Entrance to the forest maze."),
encounters=[],
items=[],
exits={Direction.SOUTH: "perimeter22", Direction.NORTH: "perimeter25"},
),
Location(
label="perimeter25",
title="Maze of twisty little forest passages",
description=("A maze of twisty forest passages, all alike."),
encounters=[],
items=[],
exits={Direction.SOUTH: "perimeter24"},
),
Location(
label="perimeter99",
title="Into the Unknown",
description=("Entrance to the next zone."),
encounters=[],
items=[],
exits={Direction.SOUTH: "perimeter25"},
),
]

0 comments on commit c42da65

Please sign in to comment.