Discord Bot (Private · Server-Only)
A realm-based living world bot. Choose a realm, pick a class, earn XP through conversation and voice chat, discover items and lore fragments, run dungeons, fight bosses, raid rival realms, and follow a seasonal story that keeps expanding with Convergence waves.
Join via reactions, earn XP, climb ranks.
8 archetypes that reshape how you earn, drop, and fight.
Solo dungeons, group runs, boss fights, prestige.
Multi-scene party adventures with branching paths.
Drops, crafting, seasonal exclusives, fused artifacts.
Story waves, Convergence resets, seasonal content.
What is EchoBloom?
EchoBloom is our private "living world" bot. Members choose one of four realms and build progress through daily conversation and voice chat — every message earns XP for you and your realm, items drop randomly, lore fragments surface from the noise, and realm events can trigger at any moment.
On top of that sits a full class system — eight archetypes that shape how you earn XP, find items, contribute to your realm, and perform in combat. Prestige into new classes at cap to carry permanent stat bonuses forward. Master all eight to earn the 🏆 Class Master title.
It's designed to feel like an RPG layer on top of chat. A wave system means the story keeps growing: when all realms complete a wave's lore, a Convergence event fires and the next chapter begins.
EchoBloom is not a public invite bot. This page is our server's reference guide.
Realms
Nurturing, learning, steady evolution. The Grove teaches: growth cannot be forced — only nurtured.
Passion, drive, transformation. Fire tests not to destroy — but to reveal what cannot be burned away.
Reflection, clarity, emotional depth. Wisdom is not certainty — it is awareness.
Intuition, rest, inner wisdom. Not all truths are meant to be known at once.
Systems
Every XP-eligible message contributes to both your personal level and your realm's collective level. Realm levels unlock lore chapters, exclusive events, and rank roles.
8 archetypes — each with a passive, 3 skill tiers, 5 stats, and unique combat specials. One pick per Wave.
/class pick — no switching mid-waveItems drop randomly from chat messages into your realm's shared inventory. Combine materials to craft usable items.
/craft from recipes in /recipes/use — effects apply realm-wide/forgeSolo and group dungeon runs earn class XP and items. Server-wide boss fights rally all realms.
/adventure — solo dungeon run/adventure_group — party dungeon/raid — launch a raid against a rival realm/sabotage — sneak in and destroy their items/challenge — trivia duel between realms/admin start-eventThe world evolves in waves. When all realms finish a wave's lore, Convergence fires and the next wave begins.
/wave to check progress; /season for seasonal statusTwo passive world modifiers that affect all combat and adventures.
/curses to view active curses; /cleanse to remove them/bestiary monsters and /bestiary bosses/bestiary stats for your full completion overviewReference
/profile — realm level, XP, rank/character — class, stats, skills, prestige/leaderboard — realm XP rankings/streak — daily streak and bonus/class pick — pick your class/class info — compare all 8 classes/class stats — current combat stats/class prestige — prestige at CL 10/class loadout — set up combat specials/class skills — view unlocked skills/adventure — solo dungeon run/adventure_group — invite party to run/boss status — current boss HP & standings/inventory — realm item stash/item-info — item details and effects/use — activate a usable item/buffs — active realm XP buffs/recipes — crafting recipes/craft — craft an item/forge — fuse seasonal items/gift — send items to another realm/trade — swap items between realms/raid — launch a raid/sabotage — destroy rival items/challenge — trivia duel/lore view — realm lore overview/lore read — read a specific chapter/lore fragments — collected fragments/season — current season and items/quests — active quests/wave — current wave progress/wave-history — past waves/event-history — battle event results/curses — active curses/cleanse — remove curses/bestiary monsters / bosses / stats/setup/setup realms — post realm selection + reactions/setup lore — post a realm's Book of Lore/setup lore-all — post all 4 lore pages/setup events — post persistent event dashboard/setup wave — post wave progress embed/admin/admin start-event — trigger a battle event/admin end-event — force end current event/admin convergence — trigger Convergence now/admin sync — recalculate all levels from XP/admin sync-lore — resync lore embeds/admin reset — reset all realm data/admin overview — full admin overview/admin refresh — force refresh dashboard/admin/admin set-xp — set member XP/admin set-level — set member level/admin add-xp — add XP to member/admin set-realm-xp — set realm XP/admin set-realm-level — set realm level/admin add-realm-xp — add XP to realm/admin/admin give-item — give item to a realm/admin remove-item — remove item from realm/admin clear-inventory — wipe realm inventory/boss/boss spawn — spawn a boss manually/boss cancel — cancel the active boss fight/boss status — boss HP and standingsGetting Started
Enable realms first. Once people chat and earn XP, introduce classes. Adventures and boss fights layer in after that. Items, quests, events, lore, and seasons add texture over time. No need to introduce everything at once.
1. Create realm roles (one per realm)
2. Create rank roles (3 per realm: Level 1, 10, 25)
3. Fill in role IDs in config/config.py
4. Run /setup realms in your realm-select channel
5. Create lore channels (one per realm) and run /setup lore
6. Set your events channel ID in config
7. Run /setup events to post the persistent dashboard
8. Run /setup wave to post the wave progress embed
9. Restart — quests auto-rotate, events trigger from chat
10. Run /season to verify seasonal content is active
11. Run /wave to check lore wave status
12. Announce /class pick to members — classes are ready out of the box
13. Adventures and boss fights are available immediately
All IDs, realm definitions, items, crafting recipes, quests, lore waves, seasonal content, riddles, word scrambles, emoji chains, drop rates, adventure zones, monsters, and boss definitions live in config/config.py.
How it works
/class pick — no switching mid-wave/class info to compare all 8 before committing/character/class prestige/characterStats start at base value at CL1 and grow each level to CL10. Use /class stats to see yours.
Skills unlock from member level (chat), not class level (adventures).
At a glance
| Class | Focus | Top Stat | Passive | Lv 30 Power Spike |
|---|---|---|---|---|
| 🛡️ Sentinel | Realm XP | Vitality | Realm XP +8% | Realm XP doubled |
| ⚔️ Striker | Events / Raids | Power | Event XP +10% | Event XP +25% · Raid dmg +25% |
| 📖 Scholar | Lore / Voice | Wisdom | Lore frag +12% | Lore fragments doubled |
| 🎲 Wanderer | All-Round | Fortune | All XP +5% | All XP +10% · Item drop +20% |
| 🔥 Invoker | Events (glass cannon) | Power | Event XP +12% | Event XP +20% · All XP +8% |
| 🌿 Warden | Voice / Tank | Vitality | Voice XP +12% | Voice XP +18% · Lore frag +20% |
| 🎭 Trickster | Items / Speed | Agility | Item drop +15% | Item drop +22% · All XP +7% |
| 🔮 Oracle | Lore / Crafting | Wisdom | Lore frag +15% | Lore frag +30% · Craft success +15% |
Full Breakdown
"Stand firm. Every message is a stone in the wall."
Steadfast protectors who pour energy into their community. Compound effort into massive realm gains over time.
Stats: Vitality › Power › Wisdom › Agility › Fortune
Passive Bonuses
Combat
"Hit hard. Hit first. Hit again."
Fighters who live for conflict and spectacle. Turn every event and raid into massive damage and outsized rewards.
Stats: Power › Agility › Fortune › Wisdom › Vitality
Passive Bonuses
Combat
"Every fragment of truth is worth a thousand blades."
Devoted students of hidden knowledge. Scholars uncover lore others miss, master crafting, and earn deep rewards for voice presence.
Stats: Wisdom › Fortune › Agility › Vitality › Power
Passive Bonuses
Combat
"Fortune favours those who keep moving."
Drifters led by instinct and luck. Wanderers stumble across items others walk past and earn bonus XP on everything.
Stats: Fortune › Agility › Wisdom › Power › Vitality
Passive Bonuses
Combat
"The flame doesn't ask permission."
Channellers of raw elemental force. Invokers sacrifice survivability for unmatched offensive output. Glass cannon.
Stats: Power › Agility › Fortune › Wisdom › Vitality
Passive Bonuses
Combat
"The forest does not hurry, yet everything is accomplished."
Guardians of the natural order. Wardens are the toughest fighters — they outlast everything through sheer endurance.
Stats: Vitality › Wisdom › Power › Agility › Fortune
Passive Bonuses
Combat
"If they see it coming, you're doing it wrong."
Masters of misdirection who win through speed, feints, and outrageous luck. Best item drop rate in the game at Lv 30.
Stats: Agility › Fortune › Power › Wisdom › Vitality
Passive Bonuses
Combat
"I didn't predict the future. I shaped it."
Seers who channel the flow of fate. Oracles accumulate knowledge faster than any other class and master crafting at endgame.
Stats: Wisdom › Fortune › Agility › Power › Vitality
Passive Bonuses
Combat
Campaign Authoring
Drop a .json file into data/campaigns/. The bot re-scans on every /campaign start — no restart, no code changes.
A campaign is a directed graph of scenes — each has a type, text, and either a single next pointer or branching choices. The engine walks until it hits an ending.
HP damage, ability cooldowns, party buffs, and found items all carry forward through the entire run. Early decisions have real consequences at the boss. Vote timeout: 90 seconds, leading choice wins.
Scene Types
The workhorse. Include choices for a party vote; omit them and use next to auto-advance after 4 seconds.
With choices (party vote)
"my_scene": {
"type": "story",
"title": "The Cracked Gate",
"text": "The ruins loom...",
"choices": [
{
"id": "scene_a",
"label": "Take the main corridor",
"emoji": "🚪",
"hint": "Straightforward but exposed"
}
]
}Auto-advance (no vote)
"cutscene": {
"type": "story",
"title": "A Beat of Silence",
"text": "The dust settles...",
"next": "next_scene_id"
}Party fights a monster. HP scales with party size: hp × (1 + 0.70 × (party_size − 1)).
"forest_ambush": {
"type": "combat",
"title": "Ambushed!",
"text": "Something lunges from the dark...",
"enemy": {
"name": "Ruinspawn",
"emoji": "👹",
"hp": 80,
"attack": 18,
"defense": 8,
"speed": 12
},
"loot": ["Tarnished Cog", "Rusted Bolt"],
"on_win": "next_scene_id",
"on_lose": "defeat"
}Every combat scene must have both on_win and on_lose. Missing on_lose errors out.
Phased boss fight. HP: hp + hp_per_fighter × (party_size − 1). Phases must be highest threshold first.
"boss_ruinlord": {
"type": "boss",
"title": "The Ruinlord Awakens",
"text": "An ancient colossus rises...",
"enemy": {
"name": "The Ruinlord",
"emoji": "🐉",
"hp": 350,
"hp_per_fighter": 80,
"attack": 28,
"defense": 18,
"speed": 8,
"loot_multiplier": 2.0
},
"phases": [
{ "threshold": 50, "text": "The Ruinlord rages!" },
{ "threshold": 25, "text": "It burns with desperation..." }
],
"on_win": "victory",
"on_lose": "defeat_boss"
}Grants items with optional HP and XP bonuses. Must have a next pointer.
"treasure_vault": {
"type": "item",
"title": "The Hidden Vault",
"text": "Shelves of forgotten relics...",
"items": [
{ "name": "Ember Shard", "emoji": "🔴",
"description": "Warm to the touch.",
"hp_bonus": 0, "xp_bonus_percent": 15 }
],
"next": "after_vault"
}Checkpoint — Heals entire party, waits until all click ✅ Ready.
"vault_rest": {
"type": "checkpoint",
"title": "Antechamber",
"text": "A heavy door seals...",
"next": "boss_scene"
}Ending — Terminal scene. Always set xp_reward on win or everyone gets 0 XP.
"victory": {
"type": "ending",
"outcome": "win",
"title": "Ruins Fall Silent",
"text": "The Ruinlord dissolves...",
"xp_reward": 250
}File Structure
{
"id": "my_campaign",
"title": "My Campaign Title",
"emoji": "⚔️",
"description": "One or two sentences shown in /campaign list.",
"lore": "Longer flavour text shown when the party assembles. Use \\n\\n for breaks.",
"min_party": 2, "max_party": 6,
"join_window": 90,
"color": 8356863,
"start_scene": "first_scene_id",
"scenes": { ... }
}Rewards
xp_reward from the win endingbase × (0.6 + 0.4 × damage_share)xp_bonus_percent from itemsMonster HP:
hp × (1 + 0.70 × (party_size − 1))
Boss HP:
hp + hp_per_fighter × (party_size − 1)
XP per player:
base × (0.6 + 0.4 × dmg_share)
× (1 + xp_bonus_pct / 100)
KO'd: 40%Best Practices
next or on_win pointer errors and ends the campaign.on_lose. Required on every combat scene.xp_reward. Boss awards 0 XP without it.Before you ship
start_scene exists in "scenes"on_win, on_lose, next, and choice id points to a real scenecombat has both on_win and on_loseitem, checkpoint, and auto-advance story has nextending with "outcome": "win"xp_reward set to non-zeroimport json
data = json.load(open("my_campaign.json"))
scenes = data["scenes"]
all_ids = set(scenes.keys())
errors = []
for sid, scene in scenes.items():
for field in ["next","on_win","on_lose"]:
t = scene.get(field)
if t and t not in all_ids:
errors.append(f"{sid}.{field} → not found")
for c in scene.get("choices", []):
if c["id"] not in all_ids:
errors.append(f"{sid} choice not found")
if errors:
for e in errors: print("ERROR:", e)
else:
print("OK")World Reference
Stats pulled directly from the game files. Use the dropdowns below to browse each section.
💬 Chat & Voice Drops — Per message, before class bonuses.
| Rarity | Base chance | Trickster Lv 30 |
|---|---|---|
| Common | 2.5% | ~3.9% |
| Uncommon | 0.8% | ~1.2% |
| Rare | 0.25% | ~0.39% |
| Legendary | 0.04% | ~0.06% |
| Lore Fragment | 1.0% | — |
📝 Notes
🌿 Grove of Growth
🔥 Ember Circle
💧 Mirror Lake
🌙 Moonroot Tree
🌿 Grove
🌳 Living Branch — 4× Verdant Leaf + 3× Moss Clump + 2× Rootstone
💚 Heartwood Core — 6× Verdant Leaf + 4× Moss Clump + 3× Rootstone + 3× Amber Resin
🔥 Ember
🪶 Phoenix Feather — 4× Cinder Spark + 3× Ash Flake + 2× Molten Core
❤️🔥 Infernal Heart — 6× Cinder Spark + 4× Ash Flake + 3× Molten Core + 3× Forge Nail
💧 Mirror
🪞 Mirror Shard — 4× Still Droplet + 3× Silver Scale + 2× Depth Pearl
🖤 Abyssal Tear — 6× Still Droplet + 4× Silver Scale + 3× Depth Pearl + 3× Memory Glass
🌙 Moonroot
🌕 Lunar Essence — 4× Moonpetal + 3× Shadow Silk + 2× Dreamroot
⚓ Dream Anchor — 6× Moonpetal + 4× Shadow Silk + 3× Dreamroot + 3× Twilight Sap
🌱 Spring (March–May) · Grove
☀️ Summer (June–Aug) · Ember
🍂 Autumn (Sep–Nov) · Mirror
❄️ Winter (Dec–Feb) · Moonroot
| Zone | Min CL | Difficulty | Boss Chance |
|---|---|---|---|
| 🌲 Whispering Woods | 1 | ⭐ | 5% |
| 🏚️ Abandoned Village | 1 | ⭐ | 8% |
| 🌿 Thornvale Glade | 2 | ⭐⭐ | 10% |
| 🏔️ Ashpeak Cliffs | 3 | ⭐⭐ | 12% |
| 🌊 Mirror Coast | 3 | ⭐⭐ | 12% |
| 🌑 Shadowfen Marsh | 4 | ⭐⭐⭐ | 15% |
| 🔥 Emberfall Ruins | 5 | ⭐⭐⭐ | 18% |
| 🌙 Moonlit Caverns | 5 | ⭐⭐⭐ | 18% |
| ⚡ Stormspire Peaks | 6 | ⭐⭐⭐⭐ | 22% |
| 💀 Ruinlord's Citadel | 8 | ⭐⭐⭐⭐⭐ | 35% |
| 🌀 The Convergence Rift | 10 | ⭐⭐⭐⭐⭐ | 50% |
🌦️ Daily Weather
| Weather | Effect |
|---|---|
| ☀️ Sunny | Power +15% |
| 🌧️ Rainy | Wisdom +15% |
| ⛈️ Stormy | Agility +20% |
| 🌫️ Foggy | Vitality −10% |
| ❄️ Blizzard | All stats −10% |
| 🌤️ Cloudy | No effect |
🩸 Curses
/cleanse (costs a Cleansing Vial)/curses.EchoBloom Lore · Realm Shrine · Renewal
A place of nurturing, learning, and steady evolution. The Grove teaches one truth above all: growth cannot be forced — only nurtured. Patience, given enough time, becomes something permanent.
XP earned through conversation and voice chat. Rank roles unlock at milestones.
🔨 Recipes
🌳 Living Branch — 4× Verdant Leaf + 3× Moss Clump + 2× Rootstone
💚 Heartwood Core — 6× Verdant Leaf + 4× Moss Clump + 3× Rootstone + 3× Amber Resin
The Grove awakens. Life stirs beneath the soil.
🔮 Seasonal Fusion
Collect all 3 seasonal items and use /forge to create.
🌀 Wave 1: Origins
"Where it all began."
Unlocks at Realm Level 3
Before the Grove was a grove, there was a single root — pale and searching — that broke through stone to find the light. It did not know what it was becoming. It only knew it had to grow.
Unlocks at Realm Level 7
As the Grove grew tall, its leaves began to whisper to one another. Not words, but intention. The trees learned that growth shared is growth multiplied. They reached for each other, and the canopy closed.
Unlocks at Realm Level 12
Deep in the oldest trunk, a hollow formed — not from decay, but from trust. The Grove had learned to hold space. To be strong and empty at once. Creatures came to rest there, and left changed.
Unlocks at Realm Level 18
Growth unchecked becomes a tangle. The Grove nearly lost itself, vines choking vines, roots fighting roots. But the oldest tree spoke without speaking: 'Not more. Better.' And the Grove remembered its purpose.
Unlocks at Realm Level 25
In the deepest glade, a flower blooms that never wilts. It has no name. It needs no water. It exists because the Grove exists — a living proof that patience, given enough time, becomes something permanent.
🌀 Wave 2: Echoes
"What the past left behind."
Unlocks at Realm Level 3
After the bloom, silence. The Grove forgot what it was and had to learn again. New seeds fell into old soil and found it rich with memory. Growth, the second time, is not innocent — it is intentional.
Unlocks at Realm Level 8
Beneath the Grove, another grove. A mirror made of roots and dark soil. Everything that fell — every leaf, every failed branch — composted into something the surface could never have made alone.
Unlocks at Realm Level 14
The Grove grew thorns. Not from anger, but from understanding. Some things must be protected. The sweetest fruit hangs behind the sharpest edge, and the Grove no longer apologizes for its boundaries.
Unlocks at Realm Level 20
A creature arrived that was neither plant nor animal. It fed the Grove and the Grove fed it. For the first time, growth was not just within — it was between. The Grove learned the word 'together' in a language without words.
Unlocks at Realm Level 28
Every ring in every trunk is a year. Every year is a story. The Grove realized it was not just growing — it was recording. When the last tree falls, the soil will remember everything.
Drop randomly from messages (1% chance). Reveal hidden truths about the Grove's nature.
Wave 1: Origins
A memory of the first planting. Something small becoming something vast.
"We grow together or not at all."
The secret the leaves pass between themselves when no one is listening.
Wave 2: Echoes
What fell and decayed became the richest soil. Nothing is wasted in the Grove.
A thorn willingly grown. Protection is also a form of love.
A cross-section of the oldest trunk. Every year is written here in silence.
EchoBloom Lore · Realm Shrine · Will
A ring of fire for passion, drive, and transformation. The Circle's truth: fire tests not to destroy — but to reveal what cannot be burned away.
🔨 Recipes
🪶 Phoenix Feather — 4× Cinder Spark + 3× Ash Flake + 2× Molten Core
❤️🔥 Infernal Heart — 6× Cinder Spark + 4× Ash Flake + 3× Molten Core + 3× Forge Nail
The Ember Circle blazes. Passion runs unchecked.
🔮 Seasonal Fusion
🌀 Wave 1: Origins
"Where it all began."
Unlocks at Realm Level 3
Before the Circle, there was a single spark — born from the collision of two stones that had waited millennia to meet. The spark did not care that it was small. It only cared that it burned.
Unlocks at Realm Level 7
The embers learned to sing together, a low hum that turned iron to purpose. The Forge Song could shape anything — but only if the singer meant it. Half-hearted flames make brittle things.
Unlocks at Realm Level 12
When the great fire passed, only ash remained. But the Circle discovered that ash remembers. Press your hand to it and feel what burned — every passion, every failure, every refusal to stop.
Unlocks at Realm Level 18
Raw fire destroys. The Circle learned this the hard way, burning bridges it needed. So it built the ring — not to cage the flame, but to focus it. Controlled fire builds. Wild fire only consumes.
Unlocks at Realm Level 25
At the center of the Circle burns a flame that cannot be extinguished. It was not lit. It was willed into existence by every soul that refused to go quietly. It will burn until there is nothing left to fight for.
🌀 Wave 2: Echoes
"What the past left behind."
Unlocks at Realm Level 3
After the Undying Flame, the Circle went cold. Not dead — waiting. The embers learned that between bursts of fire, there is a silence that makes the next flame mean something.
Unlocks at Realm Level 8
Every burn leaves a mark. The Circle began to read its scars like a map — each one pointing toward a lesson it had paid for in pain. Scars are not wounds. They are proof of survival.
Unlocks at Realm Level 14
Someone took fire from the Circle and used it to destroy. The Circle felt the theft in its bones and learned the hardest lesson: power shared is power risked. But power hoarded is power wasted.
Unlocks at Realm Level 20
The Circle made a pact: every flame lit would carry intent. No more wild burning. Every spark would mean something — a promise, a signal, a choice. Fire without purpose is just destruction.
Unlocks at Realm Level 28
Deep in the core, the temperature changes. It does not get hotter — it gets denser. Pressure beyond measurement, patience beyond time. Here, fire becomes diamond. Here, the Circle becomes eternal.
Drop randomly from messages (1% chance).
Wave 1: Origins
The exact moment of ignition, frozen in time. It still feels warm.
What was left behind when the first weapon was forged. Purpose given form.
The moment between death and rebirth. It lasts forever and no time at all.
Wave 2: Echoes
A map made of burns. Every mark is a lesson paid for in full.
A promise crystallized in heat. Fire with purpose is sacred.
Born from impossible pressure. Fire's final form is not flame — it is permanence.
EchoBloom Lore · Realm Shrine · Insight
Still waters for reflection, clarity, and emotional depth. Mirror Lake teaches one truth above all: wisdom is not certainty, but awareness.
🔨 Recipes
🪞 Mirror Shard — 4× Still Droplet + 3× Silver Scale + 2× Depth Pearl
🖤 Abyssal Tear — 6× Still Droplet + 4× Silver Scale + 3× Depth Pearl + 3× Memory Glass
The Mirror Lake deepens. Truths surface in stillness.
🌀 Wave 1: Origins
"Where it all began."
Unlocks at Realm Level 3
The Lake was not always still. It raged once, wild and churning. But one day it chose to stop — not from exhaustion, but from curiosity. 'What would I see,' it wondered, 'if I were perfectly clear?'
Unlocks at Realm Level 7
Those who looked into the Lake saw themselves. But those who dove beneath the surface found something else — memories that weren't theirs. The Lake collects what people try to forget.
Unlocks at Realm Level 12
A stone was thrown. The reflection broke into a thousand truths, each one a version of the same face. The Lake learned that clarity is not one image — it is the courage to see all of them at once.
Unlocks at Realm Level 18
The Lake does not judge what it reflects. It shows the kind and the cruel with equal stillness. This is its greatest strength and its heaviest burden — to see everything and say nothing.
Unlocks at Realm Level 25
In the deepest part of the Lake, the water becomes something else entirely — not liquid, not solid, but truth in its purest form. Those who reach it don't see their reflection. They see what they're meant to become.
🌀 Wave 2: Echoes
"What the past left behind."
Unlocks at Realm Level 3
After the Perfect Mirror cracked, the Lake had to choose: reform perfectly, or reform honestly. It chose honestly. The new surface was imperfect, and in its imperfection, it reflected truth more clearly than before.
Unlocks at Realm Level 8
At the bottom of the Lake, memories pool like sediment. Not just reflections — real memories, surrendered by those who could no longer carry them. The Lake became a vault for what others need to forget.
Unlocks at Realm Level 14
In winter, the surface froze. Beneath the ice, the Lake continued to move — slowly, deliberately. The Lake learned that stillness on the surface does not mean stillness within.
Unlocks at Realm Level 20
Two truths appeared in the Lake that contradicted each other. Both were real. The Lake nearly split trying to hold them both, then realized: contradiction is not failure. It is depth.
Unlocks at Realm Level 28
The Lake discovered it was fed by a spring so deep it had no bottom — a source older than the Lake itself. It was never self-made. It was always connected to something beneath everything.
Drop randomly from messages (1% chance).
Wave 1: Origins
The disturbance that started everything. Before the ripple, the Lake was just water.
A truth pulled from the bottom. It hurts to hold. It hurts more to let go.
A single moment of absolute understanding. It cannot be described, only experienced.
Wave 2: Echoes
Memories that sank to the bottom. Heavy with the weight of what others released.
The moment the Lake chose stillness over chaos, preserved in ice.
A drop from the spring that has no bottom. Older than the Lake, older than memory.
EchoBloom Lore · Realm Shrine · Wonder
Ancient roots under moonlight — intuition, rest, and inner wisdom. Moonroot's truth: not all truths are meant to be known at once. Some truths exist beyond understanding.
🔨 Recipes
🌕 Lunar Essence — 4× Moonpetal + 3× Shadow Silk + 2× Dreamroot
⚓ Dream Anchor — 6× Moonpetal + 4× Shadow Silk + 3× Dreamroot + 3× Twilight Sap
The Moonroot Tree slumbers. Wisdom grows in darkness.
🌀 Wave 1: Origins
"Where it all began."
Unlocks at Realm Level 3
The Tree was planted in moonlight by hands that left no prints. It grew downward first, its roots reaching for something beneath the earth — not water, not stone, but the place where dreams collect.
Unlocks at Realm Level 7
Under the full moon, the bark turns silver and hums a frequency that only sleeping minds can hear. Those who rest beneath it wake with answers to questions they forgot they asked.
Unlocks at Realm Level 12
The roots stretch further than any eye can see — beneath rivers, beneath mountains, beneath the other realms. The Moonroot Tree is connected to everything. It does not intrude. It simply listens.
Unlocks at Realm Level 18
Even the moon goes dark. The Tree learned that rest is not weakness — it is preparation. In its dormant phases, it processes everything it has absorbed, turning raw experience into wisdom.
Unlocks at Realm Level 25
The oldest root touches something that has no name — the source of all dreams, all intuition, all quiet knowing. The Tree does not understand it. It doesn't need to. Some truths exist beyond understanding.
🌀 Wave 2: Echoes
"What the past left behind."
Unlocks at Realm Level 3
A new moon appeared in the sky — or perhaps the Tree simply noticed it for the first time. Under its light, the roots grew differently. Not deeper, but wider. Connection over depth.
Unlocks at Realm Level 8
Not all dreams are kind. The Tree absorbed a nightmare so vast it tangled the root network for days. When it finally unraveled, the Tree understood: darkness processed becomes wisdom. Darkness ignored becomes poison.
Unlocks at Realm Level 14
People began walking in their sleep, drawn to the Tree by its hum. They came with questions their waking minds refused to ask. The Tree answered not with words but with the feeling of being understood.
Unlocks at Realm Level 20
During the eclipse, the Tree's shadow stretched across all four realms. For one moment, every root connected. Every dream touched every other dream. The Tree glimpsed the shape of everything.
Unlocks at Realm Level 28
The one who planted the Tree returned — not in body, but in dream. They left no message, only a feeling: 'You are exactly what I hoped you would become.' The roots hummed with something that felt like gratitude.
Drop randomly from messages (1% chance).
Wave 1: Origins
A thread from the loom of sleep. Pull it and something unravels.
A symbol that only appears under moonlight. It means 'remember.'
The Tree's deepest secret. What lies beneath all roots, beneath all dreams.
Wave 2: Echoes
A tangle from the darkest dream. Unraveling it taught the Tree about patience.
The moment all four realms touched through the roots. Brief and infinite.
The feeling the planter left behind. Not a message — a presence.