Some text adventure games written for HERITAGE
Clone
HTTPS:
git clone https://vervis.peers.community/repos/Krnxv
SSH:
git clone USERNAME@vervis.peers.community:Krnxv
Branches
Tags
escape.heritage
room(2.4.1):
description: Despite the brightness, somehow your eyes don't hurt here.
Maybe you're getting used to it. You open your eyes a little
to look around.
You're in a hall with a high ceiling and white walls. There is
some furniture standing in a mess along the walls. It's all
wooden an looks hand-made, but very symmetric and with
surprisingly smooth curves. whoever made these items must be
a gifted carpenter. You wonder why they stand there like that,
in a mess, as if they were trash.
In the center of the wall to the north there is a huge metal
door. I mean HUGE. Probably 4 or 5 meters high. The bright
light is coming from the other side of the door? It comes in
though the tight spaces between the door and the wall, and
through a large circular hole located near the top of the
door.
There's a large keyhole below the door's handle. Beside the
keyhole there is a tiny screen displaying the text
$(equals:pressed,1;"UNLOCKED".)$
$(equals:pressed,0;"LOCKED.")$
A primitive stone staircase leads up, and there's another one
which leads down.
items: huge_door
exits: down, up, north.2 /* north is out of the maze, to 20.20.20 */
item(hole):
on_examine: It's a circle-shaped hole near the top of the door. It's too
high, you can't reach to look through it.
item(huge_door)
on_examine: It's a huge metal door, 4-5 meters high. Did giants live here?
Or maybe the metal workers were just bored? I don't know.
The door has a thick handle, located low enough for you to
reach.
$(less_than:pulls,4;The door is closed.)$
$(more_than:pulls,3;The door is open. The bright light coming
from outside is filling your eyes and you can't see what's out
there. But you can still go north past the door and find out.
on_open: $(more_than:pulls,3;It's already open. Not fully, but enough for
you to go through.)$
$(less_than:pulls,4;You try to pull the handle. Hmmm... it's too
heavy, maybe too rusty. The door doesn't move. Perhaps there's
some other way.)$
action(tie_rope):
succeed: You tie the rope tightly to the handle of the door. #(tied=1)#
require_inventory: rope
require_here: huge_door
lose: rope
action(pull_rope):
succeed: $(less_than:pulls,3;You pull the rope, leaning backwards to apply
your weight. Go go go, you can do this! Pull! Pull harder!
Wow, this door is stubborn. Or is it you? It's not moving. Must
rest for a moment, then maybe try again. It has to work.)$
$(equals:pulls,3;You pull the rope, leaning backwards to apply
your weight. Go go go, you can do this! Pull! Pull harder!
Yes! It's moving! In little steps, despite the high friction, you
manage to move the door and make enough space for you to go
through to the other side.)$
$(more_than:pulls,3;Stop it, you're exhausted! Besides, the door
is already open wide enough for you to go through.)$
#(pulls+1)#
require_here: huge_door
equals: tied,1
equals: pressed,1
fail: You pull the rope, leaning backwards to apply your weight. You are
definitely doing your best. But the door refuses to move. I hope you
aren't surprised: That little screen near the keyhole still says
"LOCKED". I'm not sure pulling ropes alone will help here.
action(untie_rope):
succeed: You untie the rope from the handle of the door, and take it back.
#(tied=0)#
require_here: huge_door
gain: rope
equals: tied,1
exit(2):
fail: The huge door is closed.
more_than: pulls,3
new_location: 20.20.20
room(20.20.20):
description: Looks like you escaped that maze! You're back to the "real
world" now. The city life. Cars, noise, pollution, people
shouting into their mobile phones, advertisements, tall
buildings you can't afford to live in.
But it also means family, friends, work of the kind you do
with passion. So I hope you're happy, overall.
As promised, you win the game!!! But let's continue playing.
You're standing on the sidewalk of a main street. Many people
are passing by in both directions, and cars are filling the
road. The street continues to the south and to the north. One
of them is the way home, but being confused by today's events,
you can't remember which.
Looks like there's a small store here, to the east. There's a
small sign on the transparent entrance door.
items: sign, store|library
exits: south, north, east|to_store|to_library
item(sign):
on_examine: It says "Tool sharing library".
item(store):
on_examine: Through the transparent door, you can see shelves full of
items. It's hard to see which items, without getting closer.
action(enter_store|enter_library):
fail: Where?
require_here: store
new_location: 21.20.20
room(21.20.20):
description: You're in this little place that looks like a store, but is in
fact an tool sharing library. It means people lend tools here,
freely. They take what they need and then bring it back. And
everybody can donate tools to the library as well. All free.
There are shelves here, full of items, and for each item there
is a name tag attached to the shelf, right below it. Some
items are missing from the shelves, i.e. there are name tags
without items above them.
There is also a desk, with some papers on it, and a hand-made
chair behind it. Looks like the librarian went somewhere.
The entrance/exit is on the west.
items: in_library_dummy
exits: west
action(exit_store|exit_library):
fail: Which?
require_here: in_library_dummy
new_location: 20.20.20
room(20.19.20):
description: You're on the noisy busy street. The houses look familiar.
This may be the right way home, to the south. The street
extends to the north too.
To the south there is a road which crosses the street. There
is no traffic light, so cross carefully.
Beside the sidewalk there is an old building. You have vague
memories from the time the ground floor was a home for a small
clothing sharing store. People used to bring their unused and
old clothes there, and people in need would come and take
what they need freely.
Many poor people used to come, and they often wore their new
clothes right after picking them up. So the nice people
volunteering in the store placed a mirror near the entrance
door. People would see themselves when they came, wearing more
patches than real clothes, and they would see themselves when
they left, looking much better. That mirror was causing many
happy smiles every day, which made the volunteers happy too.
The store hasn't been here for long time. But for some reason,
nobody touched the mirror. It's still standing here.
items: mirror.2
exits: north, south
item(mirror.2):
on_examine: Hey, this is no regular mirror. Strange. When you first look at
it, you see yourself, the road, the people, the cars, the
buildings behind behind you. But then, suddently the image
changes. Suddenly you see some dark room with grey walls.
Surprised, you look at the people passing by, waiting for
someone else to see what you see. But they seem to be staring
at the mirror as usual, as if they still see the street.
Even more worried now, you look back at the mirror.
The room with the grey walls is still there. But that's not
all. There is a person sitting on the floor at the center of
the room. The person seems to be staring at some small black
object lying on the floor in front of them. It's too small and
too blurry to tell what it is.
After a while of seeing this view, the mirror goes back to
showing you the cars and buildings behind you.
on_break: Why? It's a nice mirror.
on_kick: I suggest you don't. You could cut yourself, and you don't have a
first aid kit.
on_kiss: Come on, you're better than that. Or maybe you just happen to like
mirrors? Okay, fine... there you go. Kissed that mirror. Happy
now?
room(20.18.20):
first_enter: You walk until you reach the crossing road, at which point you
stop and examine it. There is no traffic light, but there seem
to be no cars coming. The only ones you see are too far away
to be dangerous.
So you start crossing the road.
Suddenly, totally unexpectedly, a car jumps out of a nearby
garage, which you didn't notice earlier. The driver is busy
shouting into their mobile phone, and is gaining speed, not
noticing you.
You start running, but you're exhausted after today's
adventure, and the car is too fast. The driver finally hits
the brakes, but the car hits you at a high speed, throwing you
several meters forward.
$(require_inventory:briefcase;The car also hits the briefcase
you were carrying. The briefcase opens, and thousands of
dollar bills are thrown outside, dancing to the wind,
spreading all over the road and the sidewalk. Nobody seems to
notice the event.)$
Somehow there is no pain. You see the beautiful sky now, and
some clouds creating animal shapes. You smell grass, although
there's no grass in the middle of the street. You hear birds
sing, and wind blowing through some trees. You hear some
shouting in the background, but it quickly fades away as your
mind drifts...
You die.
#(_game_over=1)#
room(20.21.20):
description: You're on the street. Many people surround you, walking to
their personal unknown destinations, mostly ignoring each
other. The road is full of cars, making a lot of annoying
noise.
Beside the sidewalk, to the east, there is a high brick wall
with some graffiti on it.
This wall is unfamilar to you. The direction home is probably
south, but the street extends further to the north as well.
items: wall|graffiti
exits: south, north.3
item(wall):
on_examine: There is a lot of text and images here, which people made one
on top of the other over the years. Actually, it's hard to say
what the original color of the bricks was.
$(less_than:wall,5;One of the common phrases here is:)$
$(equals:wall,0;"Imagine")$
$(equals:wall,1;"Seek the truth, and you will find
happiness".)$
$(equals:wall,2;"An Individual has not started living fully
until they can rise above the narrow confines of
individualistic concerns to the broader concerns of humanity.
Every person must decide at some point, whether they will walk
in light of creative altruism or in the darkness of destructive
selfishness. This is the judgment: Life's most persistent and
urgent question is: 'What are you doing for others?'")$
$(equals:wall,3;"Victory attained by violence is tantamount to
a defeat, for it is momentary.")$
$(equals:wall,4;"Free software, free society.")$
exit(3):
new_location: 20.21.20
succeed: #(wall+1)#