{ "locations": { "village": { "name":"Деревня", "safe":true }, "tavern": { "name":"Таверна", "safe":true }, "forest": { "name":"Лес", "safe":false }, "dungeon": { "name":"Подземелье", "safe":false }, "cave": { "name":"Пещера", "safe":false }, "mountain": { "name":"Горы", "safe":false }, "swamp": { "name":"Болото", "safe":false }, "ruins": { "name":"Руины", "safe":false }, "abyss": { "name":"Бездна", "safe":false } }, "spawns": { "forest": [ {"t":"goblin", "lOff":0, "x":3, "y":3 }, {"t":"wolf", "lOff":0, "x":10, "y":2 }, {"t":"goblin", "lOff":1, "x":5, "y":9 }, {"t":"slime", "lOff":0, "x":2, "y":10}, {"t":"bandit", "lOff":1, "x":11, "y":8 }, {"t":"wolf", "lOff":1, "x":7, "y":4 }, {"t":"goblin_king", "lOff":5, "x":8, "y":7 } ], "dungeon": [ {"t":"skeleton", "lOff":2, "x":2, "y":2 }, {"t":"skeleton", "lOff":2, "x":11, "y":3 }, {"t":"zombie", "lOff":2, "x":6, "y":10}, {"t":"troll", "lOff":4, "x":10, "y":11}, {"t":"skeleton", "lOff":2, "x":3, "y":8 }, {"t":"zombie", "lOff":3, "x":8, "y":5 }, {"t":"corvus", "lOff":6, "x":5, "y":6 } ], "cave": [ {"t":"bat", "lOff":2, "x":3, "y":3 }, {"t":"slime", "lOff":1, "x":8, "y":5 }, {"t":"orc", "lOff":3, "x":10, "y":8 }, {"t":"dragon", "lOff":7, "x":12, "y":2 }, {"t":"bat", "lOff":2, "x":5, "y":11}, {"t":"orc", "lOff":4, "x":11, "y":11}, {"t":"stone_colossus", "lOff":8, "x":6, "y":7 } ], "mountain":[ {"t":"yeti", "lOff":3, "x":3, "y":3 }, {"t":"golem", "lOff":5, "x":11, "y":4 }, {"t":"yeti", "lOff":4, "x":6, "y":10}, {"t":"golem", "lOff":6, "x":10, "y":10}, {"t":"wolf", "lOff":2, "x":4, "y":7 }, {"t":"frost_giant", "lOff":7, "x":8, "y":7 } ], "swamp": [ {"t":"spider", "lOff":2, "x":3, "y":4 }, {"t":"spider", "lOff":2, "x":11, "y":3 }, {"t":"witch", "lOff":4, "x":7, "y":11}, {"t":"slime", "lOff":1, "x":2, "y":9 }, {"t":"zombie", "lOff":3, "x":10, "y":9 }, {"t":"lich", "lOff":8, "x":12, "y":2 }, {"t":"hydra", "lOff":7, "x":5, "y":6 } ], "ruins": [ {"t":"ghost", "lOff":3, "x":3, "y":3 }, {"t":"ghost", "lOff":3, "x":10, "y":4 }, {"t":"ghost", "lOff":4, "x":5, "y":10}, {"t":"wyvern", "lOff":5, "x":11, "y":10}, {"t":"wyvern", "lOff":6, "x":12, "y":3 }, {"t":"skeleton", "lOff":2, "x":2, "y":9 }, {"t":"zombie", "lOff":3, "x":9, "y":11}, {"t":"shadow_assassin", "lOff":8, "x":7, "y":7 } ], "abyss": [ {"t":"shadow_assassin", "lOff":7, "x":3, "y":3 }, {"t":"lich", "lOff":8, "x":11, "y":3 }, {"t":"ghost", "lOff":6, "x":2, "y":11}, {"t":"chaos_lord", "lOff":12,"x":7, "y":5 } ] }, "npcs": { "village": [ {"name":"Торговец", "x":2, "y":5, "color":"#3498db", "type":"shop"}, {"name":"Стражник", "x":5, "y":1, "color":"#8b0000", "type":"quest"}, {"name":"Целитель", "x":10, "y":3, "color":"#27ae60", "type":"healer"}, {"name":"Старик", "x":8, "y":8, "color":"#aaa", "type":"quest"} ], "tavern": [ {"name":"Трактирщик", "x":7, "y":5, "color":"#c8a060", "type":"branch"} ], "forest": [{"name":"Эльф", "x":10, "y":10, "color":"#2ecc71", "type":"quest"}], "dungeon": [{"name":"Призрак", "x":7, "y":7, "color":"#aaffff", "type":"quest"}], "swamp": [{"name":"Шаман", "x":3, "y":3, "color":"#8e44ad", "type":"quest"}], "mountain": [{"name":"Старик", "x":5, "y":5, "color":"#aaa", "type":"quest"}], "ruins": [{"name":"Страж", "x":6, "y":6, "color":"#88aacc", "type":"quest"}] }, "decos": { "village": [ {"x":2, "y":2, "type":"house"}, {"x":11, "y":2, "type":"house"}, {"x":2, "y":9, "type":"house"}, {"x":4, "y":6, "type":"tree"}, {"x":10, "y":6, "type":"tree"}, {"x":12, "y":8, "type":"tree"}, {"x":3, "y":4, "type":"fountain"}, {"x":8, "y":2, "type":"well"}, {"x":7, "y":9, "type":"tavern", "name":"Таверна"}, {"x":7, "y":9, "type":"portal", "destination":"tavern", "name":"🍺 Таверна"}, {"x":13, "y":7, "type":"portal", "destination":"forest", "name":"Лес"}, {"x":7, "y":13, "type":"portal", "destination":"dungeon", "name":"Подземелье"}, {"x":1, "y":7, "type":"portal", "destination":"cave", "name":"Пещера"}, {"x":13, "y":1, "type":"portal", "destination":"mountain", "name":"Горы"}, {"x":1, "y":13, "type":"portal", "destination":"swamp", "name":"Болото"}, {"x":13, "y":13, "type":"portal", "destination":"ruins", "name":"Руины"} ], "tavern": [ {"x":7, "y":13, "type":"portal", "destination":"village", "name":"🚪 Выход"}, {"x":3, "y":3, "type":"torch"}, {"x":11, "y":3, "type":"torch"}, {"x":3, "y":10, "type":"torch"}, {"x":11, "y":10, "type":"torch"}, {"x":4, "y":6, "type":"table"}, {"x":4, "y":8, "type":"table"}, {"x":10, "y":6, "type":"table"}, {"x":10, "y":8, "type":"table"} ], "forest": [ {"x":2, "y":2, "type":"tree"}, {"x":4, "y":3, "type":"tree"}, {"x":6, "y":4, "type":"tree"}, {"x":8, "y":5, "type":"tree"}, {"x":10, "y":6, "type":"tree"}, {"x":12, "y":7, "type":"tree"}, {"x":4, "y":4, "type":"rock"}, {"x":10, "y":10, "type":"rock"}, {"x":7, "y":13, "type":"portal", "destination":"village", "name":"Деревня"} ], "dungeon": [ {"x":1, "y":1, "type":"pillar"}, {"x":13, "y":1, "type":"pillar"}, {"x":1, "y":13, "type":"pillar"}, {"x":13, "y":13, "type":"pillar"}, {"x":4, "y":4, "type":"torch"}, {"x":9, "y":4, "type":"torch"}, {"x":4, "y":9, "type":"torch"}, {"x":9, "y":9, "type":"torch"}, {"x":7, "y":13, "type":"portal", "destination":"village", "name":"Деревня"} ], "cave": [ {"x":2, "y":2, "type":"crystal"}, {"x":11, "y":3, "type":"crystal"}, {"x":8, "y":8, "type":"crystal"}, {"x":3, "y":11, "type":"crystal"}, {"x":7, "y":13, "type":"portal", "destination":"village", "name":"Деревня"} ], "mountain": [ {"x":3, "y":3, "type":"rock"}, {"x":10, "y":3, "type":"rock"}, {"x":5, "y":8, "type":"rock"}, {"x":7, "y":13, "type":"portal", "destination":"village", "name":"Деревня"} ], "swamp": [ {"x":2, "y":2, "type":"rock"}, {"x":11, "y":4, "type":"rock"}, {"x":7, "y":13, "type":"portal", "destination":"village", "name":"Деревня"} ], "ruins": [ {"x":2, "y":2, "type":"pillar"}, {"x":11, "y":2, "type":"pillar"}, {"x":2, "y":11, "type":"pillar"}, {"x":11, "y":11, "type":"pillar"}, {"x":5, "y":5, "type":"rock"}, {"x":8, "y":3, "type":"rock"}, {"x":3, "y":8, "type":"rock"}, {"x":10, "y":9, "type":"rock"}, {"x":4, "y":4, "type":"torch"}, {"x":9, "y":4, "type":"torch"}, {"x":4, "y":9, "type":"torch"}, {"x":7, "y":13, "type":"portal", "destination":"village", "name":"Деревня"}, {"x":7, "y":1, "type":"portal", "destination":"abyss", "name":"Бездна"} ], "abyss": [ {"x":2, "y":2, "type":"pillar"}, {"x":12, "y":2, "type":"pillar"}, {"x":2, "y":12, "type":"pillar"}, {"x":12, "y":12, "type":"pillar"}, {"x":4, "y":4, "type":"torch"}, {"x":10, "y":4, "type":"torch"}, {"x":4, "y":10, "type":"torch"}, {"x":10, "y":10, "type":"torch"}, {"x":7, "y":13, "type":"portal", "destination":"ruins", "name":"Руины"} ] }, "weather": { "village": ["none","none","rain","sunny"], "tavern": ["none"], "forest": ["rain","rain","fog","none"], "dungeon": ["none","fog"], "cave": ["none","fog"], "mountain": ["snow","snow","none"], "swamp": ["fog","fog","rain"], "ruins": ["fog","fog","none"], "abyss": ["fog","fog","fog"] }, "dialogs": { "Трактирщик": { "start": { "text": "Добро пожаловать в «Золотой Кубок»! Что желаете?", "opts": [ { "label": "Отдохнуть (20 🪙)", "next": "rest", "cost": 20 }, { "label": "Купить напиток (10 🪙)", "next": "drink", "cost": 10 }, { "label": "Послушать слухи", "next": "rumors" }, { "label": "До свидания", "next": null } ] }, "rest": { "text": "Хорошо, комната готова. Ложитесь — утром будете как новенький!", "opts": [{ "label": "Спасибо!", "next": null, "reward": { "hp": 9999, "mp": 9999 } }] }, "drink": { "text": "Вот кружка доброго эля. Придаст сил на бой!", "opts": [{ "label": "За удачу!", "next": null, "reward": { "buff": "str" } }] }, "rumors": { "text": "Говорят, в Руинах видели странный свет по ночам... А ещё что Бездна всё расширяется. Путники туда заходят — и не возвращаются.", "opts": [{ "label": "Занятно...", "next": null }] } }, "Стражник": { "start": { "text":"Путник! Тут неспокойно. Гоблины снова шалят в лесу. Чем могу помочь?", "opts": [ { "label":"📍 Расскажи о локациях", "next":"lore" }, { "label":"💰 Заплатить за совет (15 💰)", "next":"tip", "cost":15 }, { "label":"❌ Ничего, спасибо", "next":null } ]}, "lore": { "text":"Лес к северу опасен — там волки и гоблины. В подземелье орудует нежить. В пещере — дракон. На болоте засела Ведьма. Горы охраняет Голем.", "opts": [ { "label":"Понятно, спасибо", "next":null } ]}, "tip": { "text":"Тайный совет: Паук ядовит — возьми антидот. Голем неуязвим к физике, только магия берёт. Ну и не суйся на болото ночью.", "opts": [ { "label":"Ценная информация!", "next":null, "reward":{ "exp":30 } } ]} }, "Старик": { "start": { "text":"Хм... Давненько не видел таких юных искателей приключений. Что тебя интересует?", "opts": [ { "label":"📖 История Эйдона", "next":"history" }, { "label":"🧙 Тайны магии", "next":"magic" }, { "label":"🎁 Благословение (50 💰)", "next":"bless", "cost":50 }, { "label":"❌ Ничего", "next":null } ]}, "history": { "text":"Эйдон — земля, рождённая из хаоса. Когда-то здесь жили древние маги. Они создали Голема и Лича в качестве стражей. Но амбиции взяли верх, и мир погрузился в войну...", "opts": [ { "label":"Что случилось дальше?", "next":"history2" }, { "label":"Понятно", "next":null } ]}, "history2": { "text":"Войну остановил Первый Герой — он запечатал Лича в болоте, а Голем заснул в горах. Но печать слабеет... Лич снова собирает силы.", "opts": [ { "label":"Мне нужно остановить его", "next":null, "reward":{ "exp":50 } } ]}, "magic": { "text":"Магия идёт из земли. Кристаллы пещер — её источники. Но у каждой стихии есть противоположность: огонь слаб против льда, яд — против антидота.", "opts": [ { "label":"Полезно знать", "next":null, "reward":{ "exp":25 } } ]}, "bless": { "text":"Пусть удача сопутствует тебе. Прими моё благословение — пусть следующий бой будет в твою пользу.", "opts": [ { "label":"Благодарю, мудрец", "next":null, "reward":{ "exp":40, "buff":"def" } } ]} }, "Эльф": { "start": { "text":"О, смертный... Ты пришёл в лес в неспокойное время. Что тебе нужно?", "opts": [ { "label":"🌿 Собрать травы", "next":"herbs" }, { "label":"⚔️ Где самые опасные враги?", "next":"danger" }, { "label":"🎁 Дар природы", "next":"gift" }, { "label":"❌ Просто проходил мимо", "next":null } ]}, "herbs": { "text":"В этом лесу много целебных трав. Возьми — пригодятся для зелий.", "opts": [ { "label":"Спасибо!", "next":null, "reward":{ "item":"herb", "qty":3 } } ]}, "danger": { "text":"Глубже в лес — волки и бандиты. Осторожнее с пауками — их яд силён. А тролль у болота регенерирует — нужен огонь.", "opts": [ { "label":"Буду осторожен", "next":null } ]}, "gift": { "text":"Природа даёт дары тем, кто уважает её. Прими этот амулет леса.", "opts": [ { "label":"Прекрасно!", "next":null, "reward":{ "exp":60, "item":"slime_gel", "qty":2 } } ]} }, "Шаман": { "start": { "text":"Я чувствую силу в тебе... и тьму вокруг. Болото охраняет тайны. Что ты ищешь?", "opts": [ { "label":"🧪 Исцели меня", "next":"heal" }, { "label":"📜 Секрет болота", "next":"secret" }, { "label":"🔮 Предсказание", "next":"predict" }, { "label":"❌ Ухожу", "next":null } ]}, "heal": { "text":"Болото очищает. Постой на этой земле... готово, яды ушли.", "opts": [ { "label":"Благодарю шаман", "next":null, "reward":{ "cure":true, "hp":30 } } ]}, "secret": { "text":"Ведьма черпает силу из болотных трясин. Вытащи её на твёрдую землю — и она ослабнет. Святой огонь сожжёт её договор с тьмой.", "opts": [ { "label":"Это важно", "next":null, "reward":{ "exp":45 } } ]}, "predict": { "text":"Я вижу... тебя окружают враги. Один из них обманет тебя. Но ты победишь. Цена предсказания — немного твоей силы.", "opts": [ { "label":"Принять предсказание", "next":null, "reward":{ "exp":35 } } ]} }, "Призрак": { "start": { "text":"...ты слышишь меня? Хорошо. Я был солдатом. Погиб здесь давно. Чего ты хочешь, живой?", "opts": [ { "label":"Кто ты?", "next":"who" }, { "label":"Как победить Лича?", "next":"lich" }, { "label":"Покойся с миром", "next":null } ]}, "who": { "text":"Рядовой Эрик из армии Короля. Мы пришли зачистить подземелье от нежити. Никто не вернулся. Лич поглотил наши души... кроме моей. Я слишком упрямый.", "opts": [ { "label":"Мне жаль", "next":"lich" }, { "label":"Покойся с миром", "next":null } ]}, "lich": { "text":"Лич хранит свою душу в филактерии — магическом сосуде. Пока он цел — Лич не умрёт. Разбей его святым заклинанием... или просто бей достаточно сильно. Удачи тебе, живой.", "opts": [ { "label":"Я уничтожу Лича", "next":null, "reward":{ "exp":80 } } ]} }, "Страж": { "start": { "text":"Стоп! Ты живой? Странно видеть здесь живых... Руины опасны. Духи воинов и виверны охраняют эти камни. Что тебе нужно?", "opts": [ { "label":"Расскажи об этом месте", "next":"history" }, { "label":"Где найти виверн?", "next":"wyvern" }, { "label":"Дай задание", "next":"quest" }, { "label":"Ничего, спасибо", "next":null } ]}, "history": { "text":"Когда-то здесь стоял великий замок короля Эйдора. Армия тьмы уничтожила его за одну ночь. Я был среди защитников. Теперь мы здесь навсегда — ждём героя, который упокоит проклятие.", "opts": [ { "label":"Как снять проклятие?", "next":"curse" }, { "label":"Я помогу", "next":null, "reward":{ "exp":60 } } ]}, "curse": { "text":"Убей Виверну-Матриарха в северо-восточном углу. Она — источник проклятия. Её смерть ослабит духов. Это единственный путь.", "opts": [ { "label":"Я её найду", "next":null, "reward":{ "exp":90, "item":"ghost_essence" } } ]}, "wyvern": { "text":"Виверны гнездятся в разрушенных башнях — смотри на северо-восток. Яд виверны — ценный алхимический компонент. Удача тебе нужна больше, чем смелость.", "opts": [ { "label":"Спасибо за совет", "next":null, "reward":{ "exp":40 } } ]}, "quest": { "text":"Упокой трёх призраков в этих руинах. Они страдают. Их имена я знаю, но произнести не могу. Просто уничтожь их — это лучшее, что ты можешь сделать.", "opts": [ { "label":"Хорошо, займусь этим", "next":null, "reward":{ "exp":50 } } ]} } } }