Some text adventure games written for HERITAGE

[[ 🗃 ^Krnxv heritage-games ]] :: [📥 Inbox] [📤 Outbox] [🐤 Followers] [🤝 Collaborators] [🛠 Commits]

Clone

HTTPS: git clone https://vervis.peers.community/repos/Krnxv

SSH: git clone USERNAME@vervis.peers.community:Krnxv

Branches

Tags

master :: box /

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)#

[See repo JSON]