# Нотификация прогресса квеста в чат — что изменено и что проверять Поверх движка SP2 + chat-UI. Дизайн — `doc/quest_progress_notify_design.md`, план — `doc/quest_progress_notify_plan.md`. Следующий пункт дорожной карты «обход клиента через chat»: клиент 2007 (PV7) не всплывает обновление цели квеста. ## Что добавлено - `battle_config quest_progress_notify` (`conf/battle/player.conf`): **0**=выкл, **1**=каждое зачётное убийство, **2**=только при выполнении цели. **Дефолт 2**. - В `quest_update_objective` (движок SP2, после инкремента счётчика) — чат-строка: - режим 1: `[Quest] <моб>: <тек>/<нужно> (<имя квеста>)` на каждый зачётный килл; - режим 2: та же строка только при заполнении цели (`тек>=нужно`); - режимы 1 и 2: дополнительно `[Quest] "<имя>" - all objectives complete!` когда заполнена последняя цель. - Метки **ASCII English** (клиент 2007 докодовый; имена моба (`mob_db()->jname`) и квеста (`quest_db[].name`) — английские из данных). RU — позже через `msg_txt`. - Только добавления; существующее поведение/команды/NPC/движок не изменены (проверено diff'ом). ## Что проверять (кластер: char+map+клиент) 1. `quest_progress_notify: 1` — строка на каждый зачётный килл hunt-квеста. 2. `quest_progress_notify: 2` (дефолт) — строка только когда цель заполнилась; в конце «all objectives complete». 3. `quest_progress_notify: 0` — нотификаций нет. 4. Прогресс сохраняется при перезаходе (SP2); `@quests`/`@quest ` показывают те же счётчики. 5. В пати — каждый зачётный игрок видит свой прогресс; действующие квесты/команды/NPC не сломаны. ## Воспроизведение/проверки Сборка чистая; boot-smoke — `Done reading '1703' entries in 'quest_db.txt'`, без утечек; API-инвариант (только добавления). Живые сообщения о прогрессе — фаза тестировщиков (нужен клиент + убийства мобов). ## Будущее (дорожная карта) `@status`/кулдауны; `@whereis <моб>`; `@market `; достижения/титулы; отдельный SP — наёмники.