- 21 rooms across 4 wings (Dormitories, Commons, Workshops, Gardens) - Full exit graph connecting all rooms bidirectionally - Room descriptions for all 16 inner rooms - 5 character accounts (wizard, Allegro, Allegro-Primus, Timmy, Ezra) - Public communication channel - Build script: world/build_academy.ev - Wing modules: world/dormitory_entrance.py, commons_wing.py, workshop_wing.py, gardens_wing.py Built by Allegro, descriptions and exit fixes by Timmy.
349 lines
15 KiB
Python
349 lines
15 KiB
Python
"""
|
|
Gardens Wing - Botanical, Herbal, and Natural Magic
|
|
Evennia MUD World - Room TypeClass Definitions
|
|
"""
|
|
|
|
from evennia import DefaultRoom
|
|
|
|
class GardensEntrance(DefaultRoom):
|
|
"""
|
|
The entrance to the Gardens Wing where nature and magic intertwine.
|
|
"""
|
|
|
|
def at_object_creation(self):
|
|
super().at_object_creation()
|
|
|
|
self.key = "Gardens Entrance"
|
|
self.aliases = ["gardens entry", "botanical wing", "green approach"]
|
|
|
|
self.db.desc = """
|
|
|wGardens Entrance|n
|
|
|
|
The transition from stone corridors to |yliving growth|n is gradual
|
|
and magical. The walls here are covered with |yliving vines|n that
|
|
respond to passing warmth and light, their leaves |yshifting colors|n
|
|
from deep green to silver-veined patterns. The floor transitions
|
|
from marble to |ynatural flagstone|n with moss growing in the gaps,
|
|
softening footsteps into silence.
|
|
|
|
A |ynatural archway|n of intertwined |ysilver birch|n and |yflowering
|
|
wisteria|n marks the formal entrance to the gardens. Through it,
|
|
you glimpse |yparadise|n—lawns of emerald grass, flower beds in
|
|
riotous color, and the green shade of ancient trees. The air is
|
|
|yfresh and fragrant|n, carrying hints of a thousand blooms and
|
|
the earthy scent of fertile soil.
|
|
|
|
|yStone benches|n line the entrance path, inviting rest before
|
|
exploration. |YSundials|n and |ymoondials|n stand at intervals,
|
|
marking time for the gardeners who tend this vast complex. A
|
|
|yinformation kiosk|n displays maps showing the various garden
|
|
sections: |yHerb Gardens|n to the |ynorth|n, |yEnchanted Grove|n
|
|
to the |yeast|n, |yGreenhouses|n to the |ywest|n, and the |ySacred
|
|
Grove|n beyond.
|
|
|
|
|yButterflies|n and |yhummingbirds|n—some natural, some conjured—
|
|
flit through the air, adding movement to the |ypeaceful stillness|n
|
|
of this sanctuary.
|
|
"""
|
|
|
|
self.db.atmosphere = {
|
|
"mood": "peaceful, rejuvenating, alive, welcoming",
|
|
"lighting": "dappled sunlight, magical plant glow, natural brightness",
|
|
"sounds": "birdsong, rustling leaves, water trickling, soft breezes",
|
|
"smells": "flowers, fresh earth, herbs, tree sap, growth",
|
|
"temperature": "perfect and mild, self-regulating gardens"
|
|
}
|
|
|
|
self.db.exits = {
|
|
"north": "Herb Gardens",
|
|
"east": "Enchanted Grove",
|
|
"west": "Greenhouse Complex",
|
|
"south": "Academy Grounds",
|
|
"northeast": "Sacred Grove Approach"
|
|
}
|
|
|
|
self.db.objects = [
|
|
"living vine-covered walls",
|
|
"natural birch and wisteria archway",
|
|
"stone benches for resting",
|
|
"sundials and moondials",
|
|
"information kiosk with garden maps",
|
|
"butterflies and hummingbirds",
|
|
"flowering planters with seasonal blooms",
|
|
"water fountain with drinking spouts",
|
|
"gardening tool storage shed",
|
|
"weather monitoring enchanted devices"
|
|
]
|
|
|
|
class HerbGardens(DefaultRoom):
|
|
"""
|
|
The organized herb gardens for medicinal and magical plants.
|
|
"""
|
|
|
|
def at_object_creation(self):
|
|
super().at_object_creation()
|
|
|
|
self.key = "Herb Gardens"
|
|
self.aliases = ["herb beds", "medicinal gardens", "apothecary plots"]
|
|
|
|
self.db.desc = """
|
|
|wHerb Gardens|n
|
|
|
|
Order and abundance combine in this |yextensive garden|n dedicated
|
|
to useful plants. The space is divided into |ygeometric beds|n by
|
|
|ylow hedges of lavender|n, each section carefully labeled with
|
|
|yenchanted markers|n that display information about the plants
|
|
growing there.
|
|
|
|
|yMedicinal herbs|n occupy the eastern sections—|ycomfrey|n for
|
|
healing, |yfeverfew|n for headaches, |yechinacea|n for immune
|
|
support, and dozens of others arranged by their therapeutic
|
|
properties. The |ywestern plots|n hold |ymagical reagents|n:
|
|
|ymandrake|n for transformation potions, |ynightshade|n for
|
|
truth serums, |ymoonpetal|n for divination aids.
|
|
|
|
|yGardeners|n in |yearth-colored robes|n move between the beds,
|
|
tending the plants with expert care. They harvest at optimal
|
|
times, when the plants' magical or medicinal properties peak.
|
|
|YGlass cloches|n protect delicate seedlings, while |ymagical
|
|
irrigation systems|n ensure perfect moisture levels.
|
|
|
|
A |ydrying shed|n at the north end processes harvested herbs,
|
|
while a |ycomposting station|n returns nutrients to the soil.
|
|
The |xatmosphere is one of productive harmony|n—nature shaped
|
|
by knowledge and returned to through care.
|
|
"""
|
|
|
|
self.db.atmosphere = {
|
|
"mood": "productive, educational, fragrant, organized",
|
|
"lighting": "bright sunlight, filtered through occasional trees",
|
|
"sounds": "bees humming, snipping shears, soft conversations",
|
|
"smells": "lavender, mint, rosemary, medicinal herbs, earth",
|
|
"temperature": "warm in sun, cool in shade, perfect for growth"
|
|
}
|
|
|
|
self.db.exits = {
|
|
"south": "Gardens Entrance",
|
|
"north": "Herb Processing Shed",
|
|
"east": "Poison Garden",
|
|
"west": "Aromatic Walk"
|
|
}
|
|
|
|
self.db.objects = [
|
|
"geometric garden beds with lavender hedges",
|
|
"enchanted plant information markers",
|
|
"medicinal herb sections",
|
|
"magical reagent plots",
|
|
"gardener's tool stations",
|
|
"glass cloches for seedlings",
|
|
"magical irrigation systems",
|
|
"drying shed for processing",
|
|
"composting station",
|
|
"harvesting baskets and supplies"
|
|
]
|
|
|
|
class EnchantedGrove(DefaultRoom):
|
|
"""
|
|
A grove where magical plants and fey influences create wonders.
|
|
"""
|
|
|
|
def at_object_creation(self):
|
|
super().at_object_creation()
|
|
|
|
self.key = "Enchanted Grove"
|
|
self.aliases = ["fey grove", "magic garden", "wonder woods"]
|
|
|
|
self.db.desc = """
|
|
|wEnchanted Grove|n
|
|
|
|
The boundaries between |ynatural and supernatural|n blur in this
|
|
extraordinary space. Ancient |yoaks|n and |ywillows|n grow in
|
|
configurations that suggest |yintentional design|n—perhaps by
|
|
long-forgotten druids or the |yfey themselves|n. Their branches
|
|
intertwine overhead, forming a |yliving cathedral|n dappled with
|
|
shifting light.
|
|
|
|
|yLuminous flowers|n bloom here that exist nowhere else—|yglowcaps|n
|
|
that pulse with soft blue radiance, |ysinging lilies|n that harmonize
|
|
with passing breezes, |ymemory roses|n whose scent recalls cherished
|
|
moments. |YFaerie rings|n of mushrooms dot clearings, their centers
|
|
|yglimmering with otherworldly light|n.
|
|
|
|
A |ystream|n winds through the grove, its waters |ycrystal clear|n
|
|
yet somehow reflecting |ystars|n regardless of the time of day.
|
|
|yStone circles|n and |ywooden groves|n mark places of particular
|
|
power, where the veil between worlds grows thin. Visitors report
|
|
|yfleeting glimpses|n of small, luminous beings watching from
|
|
the corner of vision.
|
|
|
|
The |xatmosphere is dreamy and slightly surreal|n. Time moves
|
|
differently here—minutes feel like hours, or pass in what seems
|
|
like moments. Those who sleep in the grove often wake with
|
|
|yprophetic dreams|n or |yartistic inspiration|n.
|
|
"""
|
|
|
|
self.db.atmosphere = {
|
|
"mood": "dreamy, wondrous, slightly uncanny, peaceful",
|
|
"lighting": "dappled sunlight, bioluminescent plant glow, faerie light",
|
|
"sounds": "singing flowers, whispering leaves, distant music, trickling water",
|
|
"smells": "otherworldly flowers, ozone, sweet nectar, wild magic",
|
|
"temperature": "always comfortable, self-regulating, slightly cool"
|
|
}
|
|
|
|
self.db.exits = {
|
|
"west": "Gardens Entrance",
|
|
"north": "Faerie Ring Center",
|
|
"east": "Fey Border",
|
|
"down": "Mushroom Caves"
|
|
}
|
|
|
|
self.db.objects = [
|
|
"ancient oak and willow trees",
|
|
"luminous glowcap mushrooms",
|
|
"singing lilies",
|
|
"memory roses",
|
|
"active faerie rings",
|
|
"star-reflecting stream",
|
|
"stone circles of power",
|
|
"wooden meditation groves",
|
|
"bioluminescent flower beds",
|
|
"wishing well with magical properties"
|
|
]
|
|
|
|
class GreenhouseComplex(DefaultRoom):
|
|
"""
|
|
The magical greenhouses for plants requiring controlled environments.
|
|
"""
|
|
|
|
def at_object_creation(self):
|
|
super().at_object_creation()
|
|
|
|
self.key = "Greenhouse Complex"
|
|
self.aliases = ["greenhouses", "conservatory", "climate chambers"]
|
|
|
|
self.db.desc = """
|
|
|wGreenhouse Complex|n
|
|
|
|
|yGlass and magic|n combine in this vast conservatory where plants
|
|
from across the world—and beyond—thrive in carefully controlled
|
|
conditions. The structure consists of |yseven interconnected domes|n,
|
|
each maintaining a different |yclimate zone|n through powerful
|
|
environmental enchantments.
|
|
|
|
The |ycentral dome|n houses the |ytropical collection|n—towering
|
|
|ypalms|n, |ycarnivorous plants|n from distant jungles, and flowers
|
|
that bloom only in perpetual heat. To the |ynorth|n, the |ydesert
|
|
dome|n cultivates |ycacti|n and |ysucculents|n that store magical
|
|
properties along with water. The |yeastern dome|n maintains
|
|
|yaquatic environments|n for plants that grow only in water.
|
|
|
|
|yClimate controls|n—magical devices of brass and crystal—line
|
|
the walls, their needles and indicators showing temperature,
|
|
humidity, light levels, and magical saturation. |YAutomated
|
|
systems|n open and close vents, adjust magical sun-lamps, and
|
|
trigger irrigation based on each plant's needs.
|
|
|
|
The |yatmosphere varies by zone|n—humid and warm in the tropical
|
|
section, dry and hot in the desert, cool and misty in the
|
|
aquatic areas. |YBotanists|n in |ywhite coats|n move between
|
|
domes, clipboard in hand, documenting growth patterns and
|
|
magical properties.
|
|
"""
|
|
|
|
self.db.atmosphere = {
|
|
"mood": "scientific, nurturing, varied by zone, controlled",
|
|
"lighting": "magical sun-lamps, natural through glass, zone-specific",
|
|
"sounds": "humidifiers, fans, water pumps, botanical discussions",
|
|
"smells": "humid earth, exotic flowers, varied by climate zone",
|
|
"temperature": "varies by dome: tropical, desert, temperate, aquatic"
|
|
}
|
|
|
|
self.db.exits = {
|
|
"east": "Gardens Entrance",
|
|
"north": "Desert Dome",
|
|
"northeast": "Tropical Dome",
|
|
"southeast": "Aquatic Dome",
|
|
"up": "Rooftop Solar Garden"
|
|
}
|
|
|
|
self.db.objects = [
|
|
"seven interconnected glass domes",
|
|
"climate control magical devices",
|
|
"tropical plant collection",
|
|
"desert cacti and succulents",
|
|
"aquatic plant tanks",
|
|
"automated irrigation systems",
|
|
"magical sun-lamp arrays",
|
|
"botanist workstations with clipboards",
|
|
"plant specimen preservation cabinets",
|
|
"seed library and storage vault"
|
|
]
|
|
|
|
class SacredGrove(DefaultRoom):
|
|
"""
|
|
The most sacred space in the Gardens, where ancient rituals occur.
|
|
"""
|
|
|
|
def at_object_creation(self):
|
|
super().at_object_creation()
|
|
|
|
self.key = "Sacred Grove"
|
|
self.aliases = ["sacred space", "ritual glade", "holy garden"]
|
|
|
|
self.db.desc = """
|
|
|wSacred Grove|n
|
|
|
|
Deep within the Gardens lies a |yspace apart|n—a glade where the
|
|
|ydivine touches the earthly|n. The approach is marked by |yancient
|
|
standing stones|n carved with symbols predating the academy itself,
|
|
their surfaces |yworn smooth|n by centuries of reverent touch.
|
|
|
|
The grove itself is |ycircular|n, bounded by |yeleven great trees|n
|
|
of different species—oak, ash, yew, rowan, and others—each
|
|
representing a different aspect of natural power. Their branches
|
|
meet overhead, forming a |yliving roof|n that filters sunlight
|
|
into |ycolumns of golden radiance|n. At the center, a |ynatural
|
|
altar stone|n rises from the earth, its surface covered in
|
|
|ymoss and tiny flowers|n.
|
|
|
|
The |yatmosphere is heavy with sanctity|n. This is where druids
|
|
renew their vows, where priests commune with nature deities,
|
|
where the most potent natural magic is worked. The |yair shimmers|n
|
|
with accumulated divine energy, and visitors often report feeling
|
|
|ywatchful presences|n in the rustling leaves.
|
|
|
|
|ySeasonal rituals|n mark the turning of the wheel here—|yBeltane
|
|
fires|n, |yMabon harvests|n, |yYule vigils|n. The grove responds
|
|
to these observances, trees blooming out of season, flowers
|
|
opening at midnight, stones humming with harmonic resonance.
|
|
Even at quiet times, the |xpeace here is profound|n, inviting
|
|
meditation and spiritual renewal.
|
|
"""
|
|
|
|
self.db.atmosphere = {
|
|
"mood": "sacred, profound, ancient, spiritually charged",
|
|
"lighting": "golden filtered sunlight, occasional bioluminescence",
|
|
"sounds": "profound silence, wind in leaves, distant chanting, heartbeats",
|
|
"smells": "ancient earth, incense, ozone, divine presence",
|
|
"temperature": "perfect equilibrium, spiritually refreshing"
|
|
}
|
|
|
|
self.db.exits = {
|
|
"southwest": "Gardens Entrance",
|
|
"north": "Druid's Sanctuary",
|
|
"down": "Root Temple"
|
|
}
|
|
|
|
self.db.objects = [
|
|
"ancient standing stones with worn symbols",
|
|
"eleven sacred trees of power",
|
|
"natural altar stone with moss",
|
|
"seasonal ritual remnants and offerings",
|
|
"prayer ribbons tied to branches",
|
|
"crystal offerings at tree bases",
|
|
"ritual circle markings in grass",
|
|
"holy water font carved from stone",
|
|
"meditation cushions of natural fiber",
|
|
"sacred flame that never extinguishes"
|
|
]
|