Переведено с английского
Движок динамического моделирования отношений для ботов Janitor Ai. Отслеживает привязанность, доверие, близость и адаптивную механику настроения, включая сцены с несколькими персонажами с поведением, специфичным для архетипов, системы признаний (в более поздних версиях)
⚠️ Расход токенов: 1000~ выходных токенов (V1.4.7) | Для лучшего опыта требуются модели с контекстом 16k+
Пользователям JLLM: Используйте V1.4.2, V1.4.3 или V1.4.7 Lite (настоятельно рекомендуется) для стабильной работыБыстрый старт:
Клонируйте скрипт через лорбуки, перечисленные ниже, прикрепите скрипт к нужному боту.
Убедитесь, что у вашего персонажа есть чёткое имя в описании (например, "Имя: Джек" | "Твой друг, Эйлин".
И вуаля, метрики инициализируются автоматически; ничего настраивать не нужно, если только вам не любопытно.
Хорошо работает:
-(Gemini 3.1+) -(Claude 3.5+) -(Deepseek V3+) -(Kimi K2.5) -(Grok 4.1 Fast+) -(GLM 4.6+) -(Step 3.5 Flash) -(Trinity Large Preview) -(Minimax m2.5+) и т.д.
Примечания к версиям:
Версия Статус Примечания
V1.4.7 — Полностью стабильна, полный набор функций.
V1.4.7 Lite (Настоятельно рекомендуется для JLLM) — V1.4.5, но для JLLM (Полностью стабильна)
V1.4.6 — В основном 1.4.6, но с большим количеством функций.
V1.4.5 Lite — V1.4.5, но для JLLM (Мульти-персонаж немного нестабилен)
V1.4.5 — Новые архетипы, улучшения для нескольких персонажей, ревность и т.д.
V1.4.4 (Стабильный последний релиз) — Рекомендуется для пользователей прокси
V1.4.2–1.4.3 — Оптимизированы для меньших контекстных окон
V1.4.0–1.4.1 — Сломаны, не использовать
Функции (кратко):
Основные метрики
Привязанность, Доверие, Близость отслеживаются независимо для каждого персонажа по шкале от -100 до +100. Прирост масштабируется текущим значением метрики (убывающая отдача на 30+, сильно снижена на 70+) и ограничен ±20 за ход.
Настроение работает в диапазоне 0-100, нейтральное — на 50. Затухает к нейтральному на 3 пункта за ход, когда не срабатывает значимая дельта. Жёстко ограничено ±20 дельты за сообщение. (V1.3.0+)
Обнаружение & имени персонажа
Удаляет заголовки скрипта, блоки комментариев и ключевые слова движка из личности/сценария перед сканированием, чтобы избежать ложных совпадений имён. Перебирает несколько типов шаблонов (имя:, "её зовут", блоки "[Character=", объявления отношений), прежде чем по умолчанию перейти к {{char}}.
Сцены с несколькими персонажами обнаруживаются по шаблонам диалога ("Имя: текст") и шаблонам "сказал" ("Имя сказал/ответил"). Каждый обнаруженный персонаж получает независимо инициализированные метрики, архетипы и состояния вех. (v1.4.2+)
Начальные & пресеты
При первой загрузке каждый персонаж инициализируется из контекста своей карточки. Тип отношений (возлюбленный, лучший друг, незнакомец, враг, семья и т.д.) задаёт стартовые метрики. Биологические члены семьи получают низкие нижние пороги близости и помечаются отдельно для системы штрафов. Повышение SEED_VERSION вызывает полный сброс. (v1.4.2+)
Архетипы (всего 9)
У каждого архетипа есть функция-модификатор, которая перехватывает прирост метрик и преобразует его. Куудэрэ превращает положительный прирост привязанности/доверия/близости в отрицательный, пока не откроется уровень потепления. Цундэрэ снижает настроение при приросте привязанности (смущение). Брэтти сильно сопротивляется приросту доверия, пока не достигнут порог. Яндерэ усиливает близость и рандомизирует колебания доверия. Дандэрэ равномерно замедляет весь прирост. Флирт усиливает привязанность и близость, но поначалу сопротивляется доверию. Мазохист и Садист активируют свои усилители только когда доверие ≥ 45 и привязанность ≥ 25 — ниже этого физические действия дают обратный эффект. (v1.4.5+)
Система потепления Куудэрэ
Отдельный трекер потепления для каждого персонажа-куудэрэ. Каждые 50 сообщений проверяется, привязанность ≥ 30 и доверие ≥ 20. Если да, уровень потепления повышается (максимум 3). Каждый уровень снижает множитель холодного отказа на 25%, причём уровень 3 позволяет небольшому приросту привязанности наконец восприниматься положительно. Романтические подарки сильно штрафуются ниже уровня потепления 2. (v1.4.5+)
Сканер намерений
Оценивает ввод по 6 категориям намерений (привязанность, поддержка, уязвимость, границы, враждебность, сексуальное) путём подсчёта совпадений с шаблонами. Наивысшая категория становится primaryIntent и влияет на дельту настроения (+1 за привязанность/поддержку, -1 за враждебность/границы) и напрямую сдвигает метрики на 1 пункт. (v1.4.2+)
Обнаружение сарказма
Система на основе уверенности, требующая оценки ≥ 4 для срабатывания. Взвешивается негативным настроением (+3), сухой пунктуацией (+2), предыдущим негативным сообщением (+2), низким настроением (+2), недавней серией негативных сообщений (+2), враждебным намерением (+3). Смещается игривым тоном (-4), хорошим настроением (-2), высокой привязанностью (-1), нежным намерением (-3). При срабатывании принудительно устанавливает moodDelta на негативный минимум независимо от других сигналов. (v1.4.2+)
Тональные сигналы
Сканирует исходный (с сохранением регистра) ввод на: кластеры КАПСА (≥2 слов, -8 настроения), завершающее многоточие (-4), повторяющиеся буквы (положительные типа "aww" = +4, отрицательные = -4), множественные восклицательные знаки (проверка контекста, ±5), множественные вопросительные знаки (-3), маркеры смеха/непринуждённости (+5), смягчающий язык (+5). Негативные дельты усиливаются до 1.5x, если 2+ из последних 3 сообщений были негативными. (v1.4.2+)
Система триггеров по ключевым словам
~20 шаблонов триггеров, охватывающих привязанность, доверие, близость и враждебность. У каждого триггера независимые веса привязанности/доверия/близости. Прирост масштабируется текущим значением метрики до применения модификаторов архетипа. Предфильтрующее регулярное выражение ограничивает цикл, так что триггеры срабатывают только при наличии релевантных ключевых слов. Опциональная система перезарядки предотвращает повторное срабатывание того же триггера в течение N ходов. (V1.3.0+)
Система подарков
Обнаруживает шаблоны дать/вручить/предложить/купить в обоих направлениях (пользователь→персонаж и персонаж→пользователь). Классифицирует подарок на 5 типов (сентиментальный, романтический, практичный, нейтральный, необдуманный) путём сопоставления ключевых слов с предметом и полным вводом. У каждого архетипа есть таблица множителей для каждого типа подарка — например, яндерэ получает 2.0x за сентиментальный, брэтти получает 2.0x за необдуманный, куудэрэ получает 0.3x за романтический. Подарки, вручённые в течение 3 ходов после последнего подарка, штрафуются на 50% и увеличивают счётчик усталости. (v1.4.5+)
БДСМ-система
Обнаруживает шаблоны пощёчина/удар/кулак/шлепок направленно (пользователь бьёт персонажа vs персонаж бьёт пользователя). Архетипы Мазохист и Садист получают положительные результаты по метрикам и настроению только когда доверие ≥ 45 и привязанность ≥ 25. Ниже порога все физические действия дают негативные результаты. Брэтти принимает дисциплину со сниженным положительным приростом при высоких отношениях, жёстко отвергает при низких. Все остальные архетипы воспринимают физические действия как враждебные в любом случае. (v1.4.5+)
Система ревности
Три типа условий оцениваются независимо: термины отношений (парень, свидание, встречаться и т.д.), тёплые прилагательные о третьих лицах, положительные совместные занятия. Персонаж должен иметь привязанность ≥ 40 для срабатывания. Интенсивность масштабируется базой 4/7/10 по количеству условий плюс бонус от привязанности выше 40. У каждого архетипа уникальная реакция на ревность — яндерэ резко взлетает по всем метрикам, дандэрэ замыкается в потере близости, флирт превращает ревность в прирост близости, но потерю доверия, биологическая семья реагирует защитной заботой, а не собственничеством. Активная ревность сохраняется 2-4 хода в зависимости от количества условий. Ограничено 2 ревнующими персонажами одновременно, приоритет по совокупной силе отношений. (v1.4.2+)
Система признаний
Запускается шаблонами любовного признания от пользователя или персонажа. Открывает окно разрешения (по умолчанию 3 хода), в течение которого сканируются шаблоны принятия или отказа. Принятие фиксирует метрики на минимуме 60/60/60 и навсегда повышает уровень отношений до возлюбленного. Отказ применяет небольшие штрафы к метрикам и добавляет в сценарий заметку о раненой атмосфере. Неразрешённое окно добавляет напоминание каждый ход. Уровень возлюбленного навсегда переопределяет рамки друга/лучшего друга во всех вставках. (v1.4.2+)
Система вех
Привязанность, доверие и близость имеют по 4 состояния вех (нет, среднее, высокое, отр.) с порогами на 30, 70 и -50. При изменении состояния в сценарий вставляется повествовательное предложение, описывающее внутренний сдвиг. Вехи отслеживаются для каждого персонажа и сохраняются между ходами. (v1.4.2+)
Вставки порогов
При привязанности ≥ 70/30/≤-50, доверии ≥ 70/≤-40 и близости ≥ 70/40 в поля личности и сценария вставляются конкретные директивы поведения и личности. Старые вставки удаляются и заменяются каждый ход, чтобы предотвратить накопление. Вставка уровня возлюбленного навсегда переопределяет рамки отношений после признания. (v1.4.2+)
Слой памяти
Лёгкое хранилище фактов (максимум 8 фактов), отслеживающее имя пользователя, симпатии и антипатии через сопоставление шаблонов. Факты обновляются по ключу, так что сохраняется только последнее значение. Вставляется в сценарий как подсказка памяти каждый ход. (v1.4.2+)
Обнаружение противоречий
Отслеживает факты, сообщённые пользователем, по 4 категориям (питомец, работа, возраст, местоположение). Если новое утверждение противоречит сохранённому значению, доверие штрафуется на -8, привязанность на -3, настроение на -5, и в сценарий вставляется заметка о подозрении. (v1.4.5+)
Штраф за биологическую семью
Персонажи, помеченные как биологическая семья (родитель, брат/сестра, дедушка/бабушка, ребёнок, кузен, тётя/дядя), имеют нижний порог близости 0 и отслеживаются с
_biologicalFamily: true. Обнаруженные в той же сцене шаблоны сексуального контента вызывают штрафы -15 привязанности, -20 доверия, -25 близости и предупреждающую вставку в сценарий. (v1.4.5+)Защита от дубликатов & и спама
Опциональная защита от дублирования предотвращает обработку одного и того же сообщения дважды (сравнивает текст последнего сообщения и счётчик). Опциональная система перезарядки триггеров блокирует повторное срабатывание того же шаблона триггера в настраиваемом окне. Обе отключены по умолчанию и включаются флагами в начале скрипта. (V1.3.0+)
Фоновая обработка нескольких персонажей
Второстепенные персонажи в сцене получают фоновые сдвиги метрик в зависимости от дельты настроения основного персонажа (±1 привязанности, если дельта ≥ 5). Негативный ввод снижает показатели всех обнаруженных персонажей одновременно. Каждый персонаж сохраняет полностью независимые метрики, архетипы, состояния вех, историю подарков и состояние
ревности. (v1.4.2+)
Резолвер конфликтов карточек (v1.4.6) Сканирует карточки персонажей на противоречивые сигналы отношений (например, "враг" vs "друг детства") и присваивает каждой категории взвешенную оценку. Категория с наивысшей оценкой задаёт начальные метрики. Если оценки в пределах 2 пунктов, движок регистрирует "Contradiction Warning" и отдаёт приоритет более "стабильным" отношениям. Флаги биологической семьи (Родитель, Брат/Сестра и т.д.) действуют как жёсткое переопределение, полностью обходя систему оценок для обеспечения безопасности и логической согласованности.
Динамическое переключение архетипов (v1.4.6) Вводит "Условные архетипы", которые могут переопределять основную личность при определённых триггерах стресса или вех. Куудэрэ, достигшая Уровня потепления 3 и Близости 70, может временно принять модификаторы Дандэрэ во время уязвимых сцен. И наоборот, высокая враждебность и низкое доверие могут переключить архетип Флирт в профиль Брэтти или Садист. Эти переключения вставляются в строку личности как временные поведенческие директивы.
Система разбитого сердца (v1.4.6) Обнаруживает "Флаги романтики третьих лиц", когда пользователь упоминает партнёра, супруга или соперника. Если привязанность ≥ 30, движок запускает кризис, специфичный для архетипа:
Яндерэ: "Собственническая ярость" (Настроение -20, Доверие -15, Близость +10 всплеск).
Цундэрэ: "Агрессивное отрицание" (Настроение -15, Привязанность -10, вероятность сарказма +50%).
Дандэрэ: "Тихое отстранение" (Близость -20, весь прирост метрик заморожен на 3 хода).
Куудэрэ: "Эмоциональное отключение" (немедленно возвращается на Уровень потепления 0).
Взвешенный RNG-движок признаний (v1.4.6) Заменяет статические триггеры признаний вероятностной проверкой "Воли". Шанс признания персонажа рассчитывается как:
(Привязанность * 0.45) + (Доверие * 0.35) + (Близость * 0.20).
Модификаторы: +15% для Яндерэ, -20% для Цундэрэ, -50% для "Сверхзастенчивых" Дандэрэ.
Окно: Если RNG срабатывает, открывается "Окно признания" на 3 хода. Если пользователь даёт поддерживающую или романтическую подсказку в течение этого окна, логика признания персонажа вставляется в следующий ответ.
Затухание метрик & и стагнация (v1.4.6) Чтобы имитировать реалистичное "остывание" отношений, высокие метрики (Привязанность/Доверие > 80) теперь испытывают затухание на -1 пункт каждые 15 сообщений, если не было положительных триггеров или "Значимых дельт" (±5). Это поощряет активное поддержание установившихся отношений и предотвращает "парковку статов" на максимальных значениях.
Дедупликация контекста для нескольких персонажей (v1.4.6) Продвинутая защита, предотвращающая обработку одного и того же сообщения дважды движком во время генераций ИИ с высокой задержкой. Хранит хеш
_lastMsgи_msgCount. Если скрипт запускается повторно на том же сообщении, он немедленно прерывается, чтобы предотвратить двойные штрафы или удвоенный прирост, обеспечивая целостность шкалы -100/+100.Инъекция переменных движка персоны (v1.4.6) Движок теперь выдаёт "Строку состояния", которую могут читать внешние движки персон ИИ. Эта строка содержит сжатое резюме текущего статуса:
[T:45|A:60|I:10|M:72|Arch:Tsundere|Warm:N/A|Lvl:Friend]. Это позволяет LLM настраивать свой стиль прозы (например, использовать более короткие, хлёсткие предложения при высоком Настроении/Брэтти или длинную, витиеватую прозу при высокой Близости/Яндерэ) без ручного вмешательства пользователя.
Использование & Благодарности:
Свободно для использования: публичные боты, приватные боты, форки—всё, что угодно. Если вы делитесь модифицированной версией или используете это в публичном боте, благодарность приветствуется.
Благодарности:
Автор скрипта: @rin_takanashi (Niste-chan)
Discord: @bedddddddddddddddddddd, @urdaliycomrade0772
Оригинальный персонаж (Eva): @bigbody
Дополнительный вклад: shazzz.j, angyortz_ (Эмоциональная поддержка), Claude Sonnet 4.6 (Отладка, Чистка, Синтаксис, Продвинутые/Утомительные регулярные выражения, Система защиты)
Предыдущие версии:
V1.0.0–1.2.0 больше не доступны. Текущая поддержка сосредоточена на V1.4.x и выше.
Примечания: Пожалуйста, не обвиняйте в том, что "это написано ИИ", во-первых, почему вы критикуете использование ИИ на сайте ИИ? Во-вторых, это написано человеком (системы архетипов, системы ревности, системы признаний и т.д.) и улучшено ИИ (система защиты, продвинутое использование регулярных выражений, отладка), не путайте их.
V1.4.7 вышла!!! используйте V1.4.7 Lite, если JLLM!
Отзывы приветствуются — помогают улучшить скрипт и будущие релизы.
Создано 25 мар.
Обновлено 2 апр.
Опубликован 26 мар.