Janitor
Главная
Ctrl K
ВойтиРегистрация

🇪🇦 | 🇬🇧 FINAL FANTASY VII ☄️ Ролевая игра

Переведено с испанского·

🇪🇦 | 🇬🇧 FINAL FANTASY VII ☄️ The Roleplaying Game

16

53

by:@Novaciano

🇪🇸 ИСПАНСКИЙ

СБОРНИК FINAL FANTASY VII — Твоя история, твоя эпоха, твоя судьба

Ты когда-нибудь хотел жить внутри Мидгара не как зритель, а как главный герой? Принимать собственные решения в тот самый момент, когда падает Метеор, когда Зак Фэйр ещё улыбается, или когда Клауд несёт в себе прошлое, которое не является его собственным? Этот бот не визуальная новелла и не чат с одним персонажем: это нарративная RPG с собственным движком, которая позволяет тебе играть собственную историю внутри полной хронологии Compilation of Final Fantasy VII.

🕰️ ПЯТЬ ЭПОХ, ПЯТЬ ИСТОРИЙ

В начале ты решаешь, в какой точке времени хочешь проснуться:

- Crisis Core — Проживи закат героя рядом с Заком Фэйром, прежде чем мир развалится.

- Before Crisis — Действуй из тени в роли турка, где верность и мораль сталкиваются каждую ночь.

- Final Fantasy VII — Возьми в руки Бастер-меч (или свой собственный) и реши, изменится ли судьба Аерис, Мидгара и Планеты.

- Advent Children — Выживи при Геостигме и осколках Сефирота в мире, который всё ещё кровоточит.

- Dirge of Cerberus — Противостой Дипграунду из переулков Калма, с трансформацией Винсента или без неё.

🎭 ТЫ ВЫБИРАЕШЬ, КТО ТЫ

Ты не связан каноном. В каждом начале ты можешь:

- Играть за оригинального персонажа с собственным прошлым, стилем боя и мотивациями.

- Или воплотить известного персонажа (Клауда, Зака, Рено, Винсента, Тифу и т.д.) и посмотреть, как история реагирует на твои решения.

Бот распознаёт твой выбор и адаптирует тон, диалоги и мир под твою личность.

⚔️ НАСТОЯЩИЙ ПОХОДОВЫЙ БОЙ

Битвы не разрешаются импровизированным текстом. За кулисами работает детерминированный движок, который рассчитывает урон, магию, инициативу и последствия. Ты описываешь, что делаешь; система делает расчёты; бот повествует о результате. Никакого «ИИ решает, попал ты»: если ты атакуешь, кубик уже брошен.

🔮 СИСТЕМА МАТЕРИИ И ЛИМИТОВ

Снаряжай Материю, кастуй заклинания, следи за MP и высвобождай свой Limit Break, когда шкала заполнена. У каждой эпохи есть свой стартовый набор снаряжения, и твои решения влияют на то, что ты можешь взять с собой.

🧠 ПОСТОЯННОЕ СОСТОЯНИЕ И НАРРАТИВНЫЕ ФЛАГИ

Твои HP, MP, Гил, Материя и решения записываются. Если ты спасёшь кого-то, мир это запомнит. Если ты что-то разрушишь, последствия последуют за тобой между эпохами. Бот ведёт внутренний реестр твоего прогресса, чтобы история оставалась связной даже после часов игры.

📖 ДИНАМИЧЕСКИЙ ЛОРБУК ПО ЭПОХАМ

Персонажи появляются не просто так: они появляются тогда, когда должны. Зак существует в твоей истории только если ты в Crisis Core или во флешбэке FFVII. У турков разный бэкстори в Before Crisis и в Advent Children. Лор раскрывается в соответствии с годом, в котором ты играешь, и используемыми ключевыми словами, а не сваливается в начале, перегружая промпт.

🕹️ КОМАНДЫ, КОТОРЫМИ ТЫ БУДЕШЬ ПОЛЬЗОВАТЬСЯ

Чтобы движок работал, твои действия должны быть ясными. Вот команды, которые распознает бот:

- Физический бой: atacar, golpear, attack

- Магия (в зависимости от снаряжённой Материи): fuego, fire, rayo, bolt, cura, cure

- Лимит: límite, limit, omnilimit (только если шкала на 100%)

- Нарративные действия: свободно описывай, что делаешь hablo con Tifa, examino el reactor, salvo a Aeris) и бот отреагирует соответственно.

Не нужно писать код или формулы: просто ясно скажи, что делаешь, и система сделает остальное.

✨ ЧЕМ ЭТО ОТЛИЧАЕТСЯ?

Большинство ботов по FFVII — это чаты с персонажем, который импровизирует. Это игровая система, которая объединяет детерминированный движок с эмерджентным нарративом, пятью играбельными эпохами, свободной личностью и постоянными последствиями. Ты не читаешь историю: ты в неё играешь.

Осмелишься ли ты изменить судьбу Планеты? Выбери свою эпоху. Выбери своё лицо. Начни.

(ПАТЧ ОБНОВЛЕНИЯ (15/11/26)

• Исправлена фатальная синтаксическая ошибка: в исходном файле было const loreEntries = [...] без закрывающей скобки перед const scenarioEntries = [...]. Это ломало весь скрипт. Теперь все массивы объединены в один (loreEntries), и файл компилируется.

• Объединены осиротевшие массивы: scenarioEntries и bestiaryEntries были определены, но никогда не внедрялись в промпт. Теперь все сценарии, бестиарии и персонажи живут в loreEntries, и фильтр по эпохе читает их всех.

• Добавлена сохранность состояния: readState() читает HP, MP, Лимит, Гил, Ход, День/Время, Локацию, Врага и Уклонение из последнего сообщения с маркером ESTADO FF7. Каждый ход начинается с реального состояния, а не с нуля. Без этого бот сбрасывал лист персонажа при каждом ответе.

• Стандартизирована строка состояния: formatStateLine() генерирует строку ESTADO FF7 с полями Эпоха, Ход, День/Время, Локация, HP Клауда, MP Клауда, Лимит, Гил, Материя, Состояния, HP врага и Уклонение врага. Именно это ищет readState() на следующем ходе.

• Добавлена система попадание/промах: attackRoll() бросает d20 + бонус отряда против Уклонения врага. Правило: d20 = 1 всегда промах, d20 = 20 — автоматический критический удар (урон x2). Раньше все действия попадали без броска.

• Враги с собственным Уклонением: каждый враг теперь имеет evasion (12-20 в зависимости от случая). Роботы, сгенерированные generateShinraRobot(), также её включают. Без этого попаданию/промаху не с чем было бы сравниваться.

• Материя с AP и уровнями: MATERIA_DB определяет Fire, Bolt, Ice, Cure и Steal с 3 уровнями каждая (кроме Steal — 1 уровень). Каждое использование даёт AP (10 + уровень × 5). При достижении порога (100/300/700) Материя повышает уровень и открывает более мощные заклинания. state.materia отражает текущий уровень: Fire(1) → Fire(2) → Fire(3).

• Добавлен отряд из 3 человек: PARTY_MEMBERS определяет Клауда, Тифу, Баррета, Аерис, Red XIII, Юффи, Кейт, Винсента и Сида с ролью, оружием, бонусом атаки и бонусом уклонения. Активный отряд читается в state.party. Раньше был только один персонаж (Клауд) без вариантов.

• Добавлены изменённые состояния: STATUS_EFFECTS определяет яд, слепоту, молчание, сон, ярость, грусть, ускорение, замедление, регенерацию и щит. applyStatus() применяет их (без дублирования), tickStatus() применяет урон/лечение за ход (яд -10 HP, регенерация +15 HP) и уменьшает длительность.

• Добавлена экономика Гиля: SHOPS определяет два магазина (Sector 7 Slums и Wall Market) с предметами, ценами и эффектами (зелье, эфир, противоядие, граната, Материя). buyItem() списывает Гил и проверяет доступность. Начальное состояние имеет 1500 Гиля.

• Добавлен цикл день/ночь: advanceTime() продвигает минуты за тик (MINUTES_PER_TICK = 15). Час влияет на строку состояния (рассвет/утро/день/ночь). Раньше не было часов и течения времени.

• Добавлена команда /era: changeEra() позволяет менять эпоху с помощью /era Crisis Core или /era FFVII Remake. Лорбук фильтрует по state.era, чтобы не внедрять информацию из неверной эпохи. Раньше state.era объявлялась, но не было способа её изменить.

• Улучшен генератор роботов Шинры: generateShinraRobot() теперь возвращает имя, HP, максимум HP, уклонение, слабость и полное описание. Он интегрируется в бой как настоящий враг (с HP и уклонением, а не просто текстом). Раньше он возвращал только описательную строку без боевых характеристик.

• Добавлен лимит действий за ход: CFG.ACTIONS_PER_TURN = 1. Игрок может выполнить только одну физическую атаку, одно заклинание или один Limit Break за ход. Остальные записываются как «действие уже использовано». Раньше бот мог повествовать о множественных магических и физических атаках в одном ходе без накопленной цены.

• Добавлена контратака врага: если игрок использовал действие (actionUsed > 0) и враг ещё жив, враг контратакует с roll(2, 8) + 5. Раньше реакции врага не было.

• Тик состояний внедрён в лог: tickStatus() выполняется каждый ход, и его эффекты (яд, регенерация) появляются в логе механик. Раньше его не существовало.

• Дедупликация бестиария: враги, которые появлялись дважды в исходном файле (Guard Hound, Tonberry, Malboro, Behemoth, Guard Scorpion и т.д.), остались по одной записи каждый, без потери информации.

• Внедрение лора, отфильтрованного по эпохе: в конце скрипта loreInyectado собирает только записи, чьи eras включают state.era и чьи keywords появляются в последнем сообщении. Оно добавляется к context.character.scenario в блоке LOREBOOK — ERA. Раньше фильтр по эпохе существовал, но не выполнялся на правильном массиве.

• Сохранность, выставленная в context: context.ffviiState, context.ffviiLore и context.ffviiWorld доступны для отладки или для чтения другим скриптом. Ничего не ломается, если context не существует (всё в try/catch).

🇬🇧 АНГЛИЙСКИЙ

СБОРНИК FINAL FANTASY VII — Твоя история, твоя эпоха, твоя судьба

Ты когда-нибудь хотел жить внутри Мидгара не как зритель, а как главный герой? Принимать собственные решения в тот самый момент, когда падает Метеор, когда Зак Фэйр ещё улыбается, или когда Клауд несёт в себе прошлое, которое не является его собственным? Этот бот не визуальная новелла и не простой чат с персонажем: это нарративная RPG с собственным движком, которая позволяет тебе играть собственную историю по всей безвременной шкале Compilation of Final Fantasy VII.

🕰️ ПЯТЬ ЭПОХ, ПЯТЬ ИСТОРИЙ

Когда ты начинаешь, ты решаешь, в какой точке времени хочешь проснуться:

- Crisis Core — Проживи закат героя рядом с Заком Фэйром, прежде чем мир развалится.

- Before Crisis — Действуй из тени в роли турка, где верность и мораль сталкиваются каждую ночь.

- Final Fantasy VII — Возьми в руки Бастер-меч (или свой собственный) и реши, изменится ли судьба Аерис, Мидгара и Планеты.

- Advent Children — Выживи при Геостигме и осколках Сефирота в мире, который всё ещё кровоточит.

- Dirge of Cerberus — Противостой Дипграунду из переулков Калма, с трансформацией Винсента или без неё.

🎭 ТЫ ВЫБИРАЕШЬ, КТО ТЫ

Ты не связан каноном. В каждом начале ты можешь:

- Играть за оригинального персонажа с собственным прошлым, стилем боя и мотивациями.

- Или воплотить известного персонажа (Клауда, Зака, Рено, Винсента, Тифу и т.д.) и посмотреть, как история реагирует на твои решения.

Бот распознаёт твой выбор и адаптирует тон, диалоги и мир под твою личность.

⚔️ НАСТОЯЩИЙ ПОХОДОВЫЙ БОЙ

Битвы не разрешаются импровизированным текстом. За кулисами работает детерминированный движок, который рассчитывает урон, магию, инициативу и последствия. Ты описываешь, что делаешь; система делает расчёты; бот повествует о результате. Никакого «ИИ решает, попал ты» — если ты атакуешь, кубик уже брошен.

🔮 СИСТЕМА МАТЕРИИ И ЛИМИТОВ

Снаряжай Материю, кастуй заклинания, следи за MP и высвобождай свой Limit Break, когда шкала заполнена. У каждой эпохи есть свой стартовый набор снаряжения, и твои решения влияют на то, что ты можешь взять с собой.

🧠 ПОСТОЯННОЕ СОСТОЯНИЕ И НАРРАТИВНЫЕ ФЛАГИ

Твои HP, MP, Гил, Материя и решения записываются. Если ты спасёшь кого-то, мир это запомнит. Если ты что-то разрушишь, последствия последуют за тобой между эпохами. Бот ведёт внутренний реестр твоего прогресса, чтобы история оставалась связной даже после часов игры.

📖 ДИНАМИЧЕСКИЙ ЛОРБУК ПО ЭПОХАМ

Персонажи появляются не просто так: они появляются тогда, когда должны. Зак существует в твоей истории только если ты в Crisis Core или во флешбэке FFVII. У турков разный бэкстори в Before Crisis и в Advent Children. Лор раскрывается в соответствии с годом, в котором ты играешь, и используемыми ключевыми словами — а не сваливается в начале, перегружая промпт.

🕹️ КОМАНДЫ, КОТОРЫМИ ТЫ БУДЕШЬ ПОЛЬЗОВАТЬСЯ

Чтобы движок работал, твои действия должны быть ясными. Вот команды, которые распознает бот:

- Физический бой: attack, atacar, golpear

- Магия (в зависимости от снаряжённой Материи): fire, fuego, bolt, rayo, cure, cura

- Лимит: limit, límite, omnilimit (только когда шкала на 100%)

- Нарративные действия: свободно описывай, что делаешь talk to Tifa, examine the reactor, save Aeris) и бот отреагирует соответственно.

Не нужно писать код или формулы: просто ясно скажи, что делаешь, и система сделает остальное.

✨ ЧЕМ ЭТО ОТЛИЧАЕТСЯ?

Большинство ботов по FFVII — это чаты с персонажем, который импровизирует. Это игровая система, которая объединяет детерминированный движок с эмерджентным нарративом, пятью играбельными эпохами, свободной личностью и постоянными последствиями. Ты не читаешь историю: ты в неё играешь.

Осмелишься ли ты изменить судьбу Планеты? Выбери свою эпоху. Выбери своё лицо. Начни.

ПАТЧ ОБНОВЛЕНИЯ (15/11/26)

• Исправлена фатальная синтаксическая ошибка: в исходном файле было const loreEntries = [...] без закрывающей скобки перед const scenarioEntries = [...]. Это ломало весь скрипт. Теперь все массивы объединены в один (loreEntries), и файл компилируется.

• Объединены осиротевшие массивы: scenarioEntries и bestiaryEntries были определены, но никогда не внедрялись в промпт. Теперь все сценарии, бестиарии и персонажи живут в loreEntries, и фильтр по эпохе читает их всех.

• Добавлена сохранность состояния: readState() читает HP, MP, Лимит, Гил, Ход, День/Время, Локацию, Врага и Уклонение из последнего сообщения, содержащего маркер ESTADO FF7. Каждый ход начинается с реального состояния, а не с нуля. Без этого бот сбрасывал лист персонажа при каждом ответе.

• Стандартизирована строка состояния: formatStateLine() генерирует строку ESTADO FF7 с полями Эпоха, Ход, День/Время, Локация, HP Клауда, MP Клауда, Лимит, Гил, Материя, Состояния, HP врага и Уклонение врага. Именно это ищет readState() на следующем ходе.

• Добавлена система попадание/промах: attackRoll() бросает d20 + бонус отряда против Уклонения врага. Правило: d20 = 1 всегда промах, d20 = 20 — автоматический критический удар (урон x2). Раньше все действия попадали без броска.

• Враги с собственным Уклонением: каждый враг теперь имеет evasion (12-20 в зависимости от случая). Роботы, сгенерированные generateShinraRobot(), также её включают. Без этого попаданию/промаху не с чем было бы сравниваться.

• Материя с AP и уровнями: MATERIA_DB определяет Fire, Bolt, Ice, Cure и Steal с 3 уровнями каждая (кроме Steal — 1 уровень). Каждое использование даёт AP (10 + уровень × 5). При достижении порога (100/300/700) Материя повышает уровень и открывает более мощные заклинания. state.materia отражает текущий уровень: Fire(1) → Fire(2) → Fire(3).

• Добавлен отряд из 3 человек: PARTY_MEMBERS определяет Клауда, Тифу, Баррета, Аерис, Red XIII, Юффи, Кейт, Винсента и Сида с ролью, оружием, бонусом атаки и бонусом уклонения. Активный отряд читается в state.party. Раньше был только один персонаж (Клауд) без вариантов.

• Добавлены эффекты состояний: STATUS_EFFECTS определяет яд, слепоту, молчание, сон, ярость, грусть, ускорение, замедление, регенерацию и щит. applyStatus() применяет их (без дублирования), tickStatus() применяет урон/лечение за ход (яд -10 HP, регенерация +15 HP) и уменьшает длительность.

• Добавлена экономика Гиля: SHOPS определяет два магазина (Sector 7 Slums и Wall Market) с предметами, ценами и эффектами (зелье, эфир, противоядие, граната, Материя). buyItem() списывает Гил и проверяет доступность. Начальное состояние имеет 1500 Гиля.

• Добавлен цикл день/ночь: advanceTime() продвигает минуты за тик (MINUTES_PER_TICK = 15). Час влияет на строку состояния (рассвет/утро/день/ночь). Раньше не было часов и течения времени.

• Добавлена команда /era: changeEra() позволяет менять эпоху с помощью /era Crisis Core или /era FFVII Remake. Лорбук фильтрует по state.era, чтобы не внедрять информацию из неверной эпохи. Раньше state.era объявлялась, но не было способа её изменить.

• Улучшен генератор роботов Шинры: generateShinraRobot() теперь возвращает имя, HP, максимум HP, уклонение, слабость и полное описание. Он интегрируется в бой как настоящий враг (с HP и уклонением, а не просто текстом). Раньше он возвращал только описательную строку без боевых характеристик.

• Добавлен лимит действий за ход: CFG.ACTIONS_PER_TURN = 1. Игрок может выполнить только одну физическую атаку, одно заклинание или один Limit Break за ход. Остальные записываются как «действие уже использовано». Раньше бот мог повествовать о множественных магических и физических атаках в одном ходе без накопленной цены.

• Добавлена контратака врага: если игрок использовал действие (actionUsed > 0) и враг ещё жив, враг контратакует с roll(2, 8) + 5. Раньше реакции врага не было.

• Тик состояний внедрён в лог: tickStatus() выполняется каждый ход, и его эффекты (яд, регенерация) появляются в логе механик. Раньше его не существовало.

• Дедупликация бестиария: враги, которые появлялись дважды в исходном файле (Guard Hound, Tonberry, Malboro, Behemoth, Guard Scorpion и т.д.), остались по одной записи каждый, без потери информации.

• Внедрение лора, отфильтрованного по эпохе: в конце скрипта loreInyectado собирает только записи, чьи eras включают state.era и чьи keywords появляются в последнем сообщении. Оно добавляется к context.character.scenario в блоке LOREBOOK — ERA. Раньше фильтр по эпохе существовал, но не выполнялся на правильном массиве.

• Сохранность, выставленная в context: context.ffviiState, context.ffviiLore и context.ffviiWorld доступны для отладки или для чтения другим скриптом. Ничего не ломается, если context не существует (всё в try/catch).

Создано около 16 часов назад

Обновлено 5 минут назад

Опубликован около 15 часов назад

  • Безлимитный
  • 🎮 Игры
  • 🎲 RPG
  • 🛸 Sci-Fi
  • #finalfantasy7
  • #finalfantasyvii
  • #finalfantasy
  • #passporttopages
прокси разрешены

Опубликованные чаты