ksteel Опубликовано 27 сентября Жалоба Поделиться Опубликовано 27 сентября (изменено) Всем привет. Решил я тут поиграть в старый добрый Морровинд, установить Фуллрест репак, интегрировать нейросеть в него и т.д. (ну вы понимаете игры Тес без моддинга в наше время никуда, а возможностей сейчас куча). И вот что я заметил, старый добрый https://www.fullrest.ru/files/russian_text_input#6235 text.dll имел ряд недостатков(по моему мнению😞) 1. Переключение раскладки на ScrollLock. Не очень удобно, особенно если вы пользуетесь и консолью в игре, и создаете зелья/заклинания. Постоянно переключаться через СкроллЛок не очень удобно, он находится далековато (а у пользователей ноутбуков он вообще через Fn работает). Что я сделал? Я переназначил клавишу переключения раскладки на LAlt путем смены значения с DIK_Scroll на DIK_LAlt: 2. Наличие слепого пятна в переводе клавиш с английского на русский (расскажу максимально подробно, насколько я смогу, тапками не кидайтесь): при использовании английской раскладки, если вы нажимали клавишу "/?.," (клавиша между буквой "ю" и правым Shift) то печатались символы "/ и ?" (? - с зажатой клавишей Shift), при переключении раскладки на русскую ПО ЛОГИКЕ должны были печататься знаки препинания ". и ," ( , (запятая) с нажатой клавишей Shift). НО этого не происходило, и печатались стандартные английские "/ и ?". Это происходило потому что в "таблице перевода, назначении клавиш" стояла пустота (0х00) вместо правильных значений. Я же внёс значения для этих клавиш ( 0х2Е для "." и 0х2С для ",") и как бы "перевёл" их для движка игры: 3. При использовании MCP патча (Morrowind Code Patch) у оригинального Morrowind.exe менялся цифровой отпечаток. Из-за чего старенький text.dll не понимал что это за новый такой Morrowind.exe и выдавал ошибку "Unknow Morrowind.exe". Потому что он знал только оригинальный Морровинд с его цифровым отпечатком, либо Морровинд+Трибунал, либо Морровинд+Трибунал+Бладмун. И для каждой версии он задавал координаты в оперативной памяти (очень сложно объяснять это на пальцах). Проще говоря если была непонятная версия — неверные координаты ломали память игры и соответственно ничего не работало (хотя ошибка Unknow Morrowind.exe и не давала этого сделать). Что сделал я - я добавил настройку в Angel.ini, которая выглядит следующим образом: Теперь при установке этого Text.dll (с прилагаемым к нему Angel.ini), сначала надо выставить ту версию игры, которую используете ВЫ. Если этого не сделать (запустить версию с бладмуном, а в строке будет MT), то вам выдаст ошибку, потому что я ввёл безопасную валидацию (Я БЕРЕГУ ТВОЙ МОРРОВИНД! ТЫ ЕГО НЕ ДОЛЖЕН(НА) СЛОМАТЬ!😞) Я думаю, итак, понятно что после слов Version="СЮДА НАДО ВПИСАТЬ СВОЮ ВЕРСИЮ, УБРАВ КАВЫЧКИ КАК НА СКРИНШОТЕ". Я почти уверен, что 99% игроков играют в версию МТВ, так что ничего менять не нужно в Angel.ini, эта настройка стоит там по умолчанию. А если вы всё же играете без какого-либо дополнения, я бы хотел у вас спросить следующее: "....кто вы?" Также этот text.dll должен быть (по крайней мере мои локальные тесты показали, что это так) универсальным и подходить к любой версии Morrowind.exe. Главное соблюдайте соответствие в строке Version= (M/MT/MB/MTB) и всё у вас будет хорошо. И да, с этим text.dll вам не нужно будет скачивать или искать оригинальный образ диска (потому он и тяжелее (241 кб) немного (~ на 70 кб), в отличие от старенького text.dll (~170 кб)). 02/10/2025 UPD: Обновил Text.dll, а именно: 1. Главное дополнение — теперь, клавишу можно переназначить через Angel.ini! Для этого в Angel.ini был добавлен следующий блок: Вопрос: "Как добавить свою клавишу и можно ли это сделать вообще?" Ответ: да, добавить можно: Идёте на https://learn.microsoft.com/en-us/previous-versions/windows/desktop/bb321074(v=vs.85), где ищете нужную вам клавишу. Меняете значение в строке ToggleLayout = (ставите сюда значение клавиши без скобок) Играете. Как было реализовано? "Создал память" для клавиши, внеся строку: Заставил читать Angel.ini внеся в "void InitMWKeyboard" следующую строку: Заменил фиксированную клавишу на переменную из "памяти": Добавил "пульт управления" в Angel.ini: 2. Небольшие фиксы слепых пятен: верхний ряд цифр (клавиша 2) при русской раскладке, при сочетании клавиш Shift+2 теперь правильно переводится в символ " " " (верхние двойные кавычки), Shift+2 в английской раскладке всё также даёт "@" (собака). верхний ряд цифр (клавиша 4) при русской раскладке, при сочетании клавиш Shift+4 теперь правильно переводится в символ " ; " (точка с запятой), Shift+4 в английской раскладке всё также даёт " $ " (доллар). верхний ряд цифр (клавиша 6) при русской раскладке, при сочетании клавиш Shift+6 теперь правильно переводится в символ " : " (двоеточие), Shift+6 в английской раскладке всё также даёт " ^ " (не помню как называется символ 😄) верхний ряд цифр (клавиша 7) при русской раскладке, при сочетании клавиш Shift+7 теперь правильно переводится в символ " ? " (знак вопроса), Shift+7 в английской раскладке даёт " & " (амперсанд). НЕ БЫЛО ПОФИКШЕНО: верхний ряд цифр (клавиша 3) при русской раскладке, при сочетании клавиш Shift+3 должна переводится в символ " № ", но вместо него она упорно писала цифру 1. Сначала я добавил этот символ № в алфавит DialogueEngine.cpp - игра всё ещё писала цифру 1. Потом я удалил из Алфавита Большой твердый знак "Ъ", влепил на его место символ "№". Игра стала писать пустое место или "пробел". Я предполагаю, что это из-за шрифта (даже нового), не стал заморачиваться и вернулся к тому, что и англ и русская раскладка при Shift+3 пишут символ "#". Если уж писать символ "№", то можно это сделать и английской N просто не так красиво =( . Также прилагаю таблицу "обновленных" данных в таблице (с уже изменёнными): Всем спасибо за внимание, в особенности пользователю Angel Death за труд: из далёкого 2005 года. Исходники text.dll взяты с ГитХаб https://github.com/angeld29/morr_text_dll Text.dll angel.ini Изменено Четверг в 12:07 пользователем ksteel апдейт основного файла text.dll, фикс оформления темы. Ссылка на комментарий Поделиться на другие сайты Поделиться
Dagot_Prolaps Опубликовано 28 сентября Жалоба Поделиться Опубликовано 28 сентября Ого, русский морр без виртуального диска, революция свершилась! Кстати, ProcessPriority=1 за что отвечает? Всю жизнь было 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано 28 сентября Автор Жалоба Поделиться Опубликовано 28 сентября 1 час назад, Dagot_Prolaps сказал: Ого, русский морр без виртуального диска, революция свершилась! Кстати, ProcessPriority=1 за что отвечает? Всю жизнь было 0 Насколько я понял, text.dll не просто какой-то руссификатор. Это целый комплексный патч, на уровне памяти игры(фиксит бездоспешный бой и т.д. и т.п). Но также он расширяет консоль, вносит в неё команды новые по типу: o .help: Показывает список всех этих новых команд. o .version: Показывает точную версию .dll файла. o .priority: Позволяет на лету менять приоритет процесса Морровинда в Windows (Normal, High, Realtime). (Скорее всего эта команда и связано со строкой ProcessPriority=1. Смею предположить, что в 2004-2005 годах были всё ещё проблемы со "сворачиванием игры" по альт-таб, потому эту функцию впихнули. Если нет, то для чего менять приоритет процесса игры через консоль - я пока не могу понять). o .fps max: Позволяет установить лимит максимального FPS в игре. o .dump: Мощная отладочная команда для разработчиков, позволяющая "заглядывать" в память игры. Ссылка на комментарий Поделиться на другие сайты Поделиться
Kronis Опубликовано 28 сентября Жалоба Поделиться Опубликовано 28 сентября Здравствуйте еще бы средство от вылетов так как не играю больше из за этого в оригинальный morrowind пришлось перейти на OpenMW Ссылка на комментарий Поделиться на другие сайты Поделиться
olol Опубликовано 28 сентября Жалоба Поделиться Опубликовано 28 сентября ProcessPriority=0 Когда-то ранее было обсуждение оного... Вроде для повышения ускорения загрузки, но на слабых ноутах от этого звук отрубался. Так что ну его в баню, не стоит ставить более нуля. Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано 28 сентября Автор Жалоба Поделиться Опубликовано 28 сентября 1 час назад, Kronis сказал: Здравствуйте еще бы средство от вылетов так как не играю больше из за этого в оригинальный morrowind пришлось перейти на OpenMW Вы просите "одно лекарство" от всех болезней 😃 Увы такого не существует. Движок старенький, на костылях работает. Советую играть в фуллрест репак, он более-менее стабильный. Этот файл text.dll, он оперирует с памятью игры. Но увы я не знаю какой блок памяти за что отвечает. Проще говоря - это очень мощный инструмент, но технологий для его использования "на полную катушку" у меня нет. Ссылка на комментарий Поделиться на другие сайты Поделиться
Марк К. Марцелл Опубликовано Понедельник в 07:44 Жалоба Поделиться Опубликовано Понедельник в 07:44 Ого! Интересно. В 9/28/2025 в 2:28 AM, ksteel сказал: клавишу переключения раскладки на LAlt путем смены значения с DIK_Scroll на DIK_LAlt: Чревато конфликтами с некоторыми MWSE-Lua модами, задействующими левый Альт. Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано Понедельник в 14:18 Автор Жалоба Поделиться Опубликовано Понедельник в 14:18 (изменено) 6 часов назад, Марк К. Марцелл сказал: Ого! Интересно. Чревато конфликтами с некоторыми MWSE-Lua модами, задействующими левый Альт. Да, вы правы. Я об этом тоже думал, но, как правило, если в Lua моде есть какой-то хот-кей, то, скорее всего, его можно через мсм переназначить? Это явно проще чем заново перекомпилировать text.dll 😃даже если нет хот-кея, то можно его сделать для этого мода 😃 Изменено Понедельник в 14:19 пользователем ksteel Ссылка на комментарий Поделиться на другие сайты Поделиться
Марк К. Марцелл Опубликовано Понедельник в 17:49 Жалоба Поделиться Опубликовано Понедельник в 17:49 3 часа назад, ksteel сказал: если в Lua моде есть какой-то хот-кей, то, скорее всего, его можно через мсм переназначить? Если разработчик заложил такую опцию. Что бывает не всегда. 3 часа назад, ksteel сказал: даже если нет хот-кея, то можно его сделать для этого мода В принципе, да. Мне, например, проще подправить луа-мод, чем перекомпилить ДЛЛ. Ну а тому, кто просто решил поиграть в Морру и нашёл в интернете инфу, что язык переключается по СкроллЛок, одинаково сложно будет и то, и другое. Ссылка на комментарий Поделиться на другие сайты Поделиться
Siberian Crab Опубликовано Вторник в 08:13 Жалоба Поделиться Опубликовано Вторник в 08:13 В 28.09.2025 в 11:13 AM, Dagot_Prolaps сказал: Ого, русский морр без виртуального диска, революция свершилась! Вичановкий Толки Моррошинд это давно делал Ссылка на комментарий Поделиться на другие сайты Поделиться
Siberian Crab Опубликовано Вторник в 08:15 Жалоба Поделиться Опубликовано Вторник в 08:15 17 часов назад, ksteel сказал: Да, вы правы. Я об этом тоже думал, но, как правило, если в Lua моде есть какой-то хот-кей, то, скорее всего, его можно через мсм переназначить? Это явно проще чем заново перекомпилировать text.dll 😃даже если нет хот-кея, то можно его сделать для этого мода 😃 Имхо оптимальным тут был бы вынос хоткея в инишник, если это возможно Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано Среда в 14:14 Автор Жалоба Поделиться Опубликовано Среда в 14:14 В 30.09.2025 в 1:15 PM, Siberian Crab сказал: Имхо оптимальным тут был бы вынос хоткея в инишник, если это возможно Что-то я не подумал об этом совсем 😃 сегодня как освобожусь - попробую это сделать Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано Четверг в 11:54 Автор Жалоба Поделиться Опубликовано Четверг в 11:54 В 30.09.2025 в 1:15 PM, Siberian Crab сказал: Имхо оптимальным тут был бы вынос хоткея в инишник, если это возможно сделал обновление, спасибо за идею 😃 Ссылка на комментарий Поделиться на другие сайты Поделиться
Pirate443 Опубликовано вчера в 05:37 Жалоба Поделиться Опубликовано вчера в 05:37 (изменено) 17 часов назад, ksteel сказал: сделал обновление, спасибо за идею 😃 С настройкой горячей клавиши это прям тема. А как Morrowind Code Patch относится к этой версии text.dll? не ругается ни на что? Изменено вчера в 05:38 пользователем Pirate443 Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано вчера в 06:29 Автор Жалоба Поделиться Опубликовано вчера в 06:29 51 минуту назад, Pirate443 сказал: С настройкой горячей клавиши это прям тема. А как Morrowind Code Patch относится к этой версии text.dll? не ругается ни на что? Данный text.dll должен быть совместим c любой версией morrowind.exe оригинального движка (goty, обычный MTB или же модифицированный через MCP) 😃 Ссылка на комментарий Поделиться на другие сайты Поделиться
Pirate443 Опубликовано вчера в 09:13 Жалоба Поделиться Опубликовано вчера в 09:13 (изменено) 3 часа назад, ksteel сказал: Данный text.dll должен быть совместим c любой версией morrowind.exe оригинального движка (goty, обычный MTB или же модифицированный через MCP) 😃 MCP ругается при установке на несовместимый Text.dll а после этого и морровинд при запуске, игра в результате запускается но без MWSE, по крайней мере кнопки MCM просто нет. update со второй попытки заработало, MCP по прежнему ругается на файл, но игра вроде нормально заработала. Изменено вчера в 10:16 пользователем Pirate443 Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано вчера в 10:39 Автор Жалоба Поделиться Опубликовано вчера в 10:39 (изменено) 1 час назад, Pirate443 сказал: MCP ругается при установке на несовместимый Text.dll а после этого и морровинд при запуске, игра в результате запускается но без MWSE, по крайней мере кнопки MCM просто нет. update со второй попытки заработало, MCP по прежнему ругается на файл, но игра вроде нормально заработала. попробуй сначала пропатчить морровинд, а потом закинуть мой text.dll видимо в самом mсp есть проверка crc ключей, которые он сопоставляет с text.dl Изменено вчера в 10:40 пользователем ksteel Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано вчера в 10:50 Автор Жалоба Поделиться Опубликовано вчера в 10:50 (изменено) А возможно он ругается на вес dll (отличия моего 241 кб и оригинального 170кб) cуммы не совпадают. Если бы у меня были исходники MСP, я бы смог посмотреть в чём проблема. Но я их найти не могу, к сожалению. А так да, судя по логам MCP патчи ставятся. MCP и MGE видны при загрузке и в главном меню игры. Использовал Fullrest Repack последней версии со всеми аддонами. Изменено вчера в 10:51 пользователем ksteel Ссылка на комментарий Поделиться на другие сайты Поделиться
Pirate443 Опубликовано вчера в 15:26 Жалоба Поделиться Опубликовано вчера в 15:26 3 часа назад, ksteel сказал: А возможно он ругается на вес dll (отличия моего 241 кб и оригинального 170кб) cуммы не совпадают. Если бы у меня были исходники MСP, я бы смог посмотреть в чём проблема. Но я их найти не могу, к сожалению. А так да, судя по логам MCP патчи ставятся. MCP и MGE видны при загрузке и в главном меню игры. Использовал Fullrest Repack последней версии со всеми аддонами. Ну в общем со второй попытки заработало и ладно. хотел еще спросить у вас на скринах кодепатч бэта версии на русском, а вы где его взяли? или сами переводили описание? на нексусе вроде только на английском. и что за нейросеть вы в фулрест репакт интегрируете? Ссылка на комментарий Поделиться на другие сайты Поделиться
EJ-12 Опубликовано 21 час назад Жалоба Поделиться Опубликовано 21 час назад 12 часов назад, ksteel сказал: Если бы у меня были исходники MСP, я бы смог посмотреть в чём проблема. Но я их найти не могу, к сожалению. А это не оные часом? Цитата https://www.nexusmods.com/morrowind/mods/19510?tab=files Optional files MCP Python Version Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано 21 час назад Автор Жалоба Поделиться Опубликовано 21 час назад 7 часов назад, Pirate443 сказал: Ну в общем со второй попытки заработало и ладно. хотел еще спросить у вас на скринах кодепатч бэта версии на русском, а вы где его взяли? или сами переводили описание? на нексусе вроде только на английском. и что за нейросеть вы в фулрест репакт интегрируете? MCP если я ничего не путаю, как раз-таки с Fullrest репака, а нейросети вот инструкция https://docs.google.com/document/d/13JVzJQ54jxppOsg8dlxnoQOhkzPOWb8SfKl3mtlZ34Q/edit?tab=t.0, а вот гитхаб автора https://github.com/drzdo/immersive_morrowind_llm_ai. (з.ы. Это не моя страница и лично автора я не знаю, автором мода НЕ являюсь, даже не общался с ним) там есть ссылки и на гитхаб и на ютуб с плейлистом, очень комичные моменты у него присутствуют. Интегрирую — это я конечно громко сказал (автор мода уже их интегрировал) внесу ясность - я занимаюсь рефакторингом этого мода. (кстати именно для него я и перекомпелировал text.dll, чтобы было удобнее общаться с АИ НПС в обычном диалоговом окне с ЛЮБЫМ НПС) Если он это один сделал, то он очень талантливый человек (по моему мнению), даже слишком талантливый х). Идея класс, но реализация (для меня), спорная. Там (в оригинале) доступны 3 нейросети на выбор - Gemini flash, Mistral, и ещё что-то. Любая нейронка на Open Ai. Можно даже запустить через LLM Studio локально на пк (но для этого нужен компудахтер мощностью сравнительный с компудахтером NASA для управления всеми спутниками Земли, потому я отказался от локальной реализации этого мода). Так вот, я добавил ещё deepseek-chat. (В планах вообще ещё добавить yandex gpt и Giga chat. Для пользователей из РФ их проще оплачивать). Там ничего сложного — просто поменять строчки в confyg.yml Естественно все АИ требуют api ключи от нейросетей (ну Gemini flash можно использовать 15 минут в день и то по ограниченному количеству токенов, или найти какой-либо ещё один "бесплатный ключ" в чём-то ограниченный). В этом плане deep seek (опять по моему скромному мнению) явно выигрывает - дешево (даже очень) и сердито. Умный быстрый, контекст понимает, за ЛОР шарит, хахамбы и кеки не выдает (если самому в промт не вписать. В будущем (не знаю насколько далёком) хочу перенести этот мод вообще на OpenMW (в данный момент ознакамливаюсь с документацией) Lua скрипты новее, движок открытый, костылей никаких не надо, я надеюсь. (по типу используемой заглушки от автора оригинала мода для UI Extensions (что кстати очень гениально было и тонко на мой взгляд). Что мною было сделано на данный момент: проведен тотальный анализ всех файлов — кто за что отвечает, зачем нужен, какие взаимосвязи, тестово убрал их Промтов: "мат и всякую не лорную бредятину — какие-то частушки, матерные частушки, современные слова по типу "прикольно" и т.д. изменил полностью npc_personality_generator.py, теперь он собирает архетип личности не по типу: "ты родился в Балморе вчера, ты орк, который ненавидит легкие доспехи и любит вонючих грязекрабов, ты бьешь всех кто с тобой не согласен. И ещё ты называешь главного героя Н'Вахом. И плевать что ты орк.", а нормально: - Пол/Раса/Знак/Класс/Фракция/Ранг учитываются даже АРХЕТИПЫ личностей (сангвиник, холерик, меланхолик флегматик, их помеси). Получается при генерации что: - не все данмеры местные (кстати тут включена функция исключения по типу Камонны Тонг, Шестого дома, некоторые ранги в некоторых фракциях и т.д.), не все каджиты наркоманы и любят лунный сахар, не все орки тупые, не все норды грязные варвары любящие рыгать и пердеть, не все босмеры Фаргот и так далее. занялся сейчас npc_spаwn_list.py - хочу сделать из маленькой ограниченной книги "того что может давать тебе нпс" на целые лорные библиотеки (Construction Set мне в помощь). ну и другие изменения (их очень много, например чтобы нпс при разговоре не подходили в плотную к тому с кем разговаривают, да это добавляет своего рода иммерсивности......но...вы помните того погонщика Силт Страйдера из Гнисиса, который вечно проваливал под мостик и умирал? Либо Лодочников, которые вечно тонули из-за того что они смещались с места? Вот то-то и оно 😃 . Чтобы НПС не пялились все на тебя, словно ты в западном вестерне весь такой чужак, зашёл в местную таверну с револьвером на перевес (кстати, из-за этой функции на тебя смотрят даже убитые НПС (трупы крутятся 😄). Работы очень много, особенно очень много захламлённых файлов, которые отнимают 70 (если не 85)% всего времени: Аналогия: Директор сидит в кабинете. ПО ИДЕЕ директор должен просто собирать информацию, принимать отчёты от всех менеджеров (которые прибегают к директору в кабинет, кладут отчёт на стол и убегают во свояси, в свою рабочую дочернюю папку обратно). После этого директор ставит резолюцию "ВСЕ ПРОВЕРЕНО, ДОКУМЕНТЫ ГОТОВЫ"и отправляет структурированный понятный отчёт дальше (куда-то там в головной офис допустим). ЧТО МЫ ИМЕЕМ НА ДАННЫЙ МОМЕНТ Этот бедолага директор, не то что собирает эти отчёты — ОН САМ ЛИЧНО носится по всему заводу, крутит гайки, меняет колёса у тракторов и ещё и в столовой кушать готовит для работников завода :D. Естественно миллиард функций и блоков кода вписано в бедные раздутые жирные файлы. А ведь можно сделать элегантнее и красивЕе. И таких вот горе-дерикторов (файлов) целая Python часть мода (Lua часть маленькая, всего 19 файлов): 🌳 Структура мода Morrowind AI: ========================================= 📁 docs/ Так что когда будет форк — не скажу точно. (там уже есть один на бесплатные разщговоры нпс голосом но 📁 immersive_morrowind_db/ по моему мнению, как кто-то выразился на ютубе и, я его мнение целиком поддерживаю, для меня 📁 immersive_morrowind_llm_logs/ Морровинд - это больше буковки в тексте и чтение, чем общение голосом и отеты голосом нпс. 📁 src/ 📄 .env (21 B) (з.ы. я сам играл в мод совсем немного - но увлёкся настолько, что аж погрузился в разработку и тестирование, но рассказать 📄 Текстовый документ.txt (498 B) и убедить Селлуса Гравиуса (именно его первого, потому что он главный по званию !!! по биографии!!), по приказу Селлуса ⚙️ config.example.yml (1,40 KB) - Ганциеля Дуара, и ещё пару легионеров о том, что в пещере Аддумасартус контрабандисты рабов держат было весело. ⚙️ config.yml (2,76 KB) Притом что Гравиус остался снаружи, а легионеры со мной внутрь пошли, после чего меня оттуда выгнали (если бы я не 📄 LICENSE (34,32 KB) ушёл они бы выписали мне шрафт) т.к. я ГРАЖДАНСКИЙ и не состою в легионе, был первого уровня в рваном тряпье и т.д. 📖 README.md (30,03 KB А Гравиус категорически не хотел меня пускать внутрь как гражданское лицо, сказал ждать, что легионеры сами справятся 😄 📊 rpgaiserver.log (894 B) 📄 rpgaiserver.log.1 (884 B) А я то блин понимаю, что пока меня там нету - ячейка мертва, там ничего не происходит, это не Тес 5 Скурим. 📄 rpgaiserver.log.2 (883 B) Так и простоял прау минут, после чего зашёл алегионеры что стояли у входа давай меня выгонять из пещеры, мол капитан 📄 rpgaiserver.log.3 (791 B) Гравиус сказал бла бла бла. Весело вобщем, эмоций полный вагон)) 📄 Screenshot_1.jpg (989,73 KB) 📄 Screenshot_2.jpg (1,06 MB) 📄 Screenshot_3.jpg (300,41 KB) 📁 mwse_mod/ 📁 server/ 📁 MWSE/ 📁 mods/ 📁 UI Expansion/ 📁 zdo_immersive_morrowind_ai/ 🌙 MenuDialog.lua (184 B) 📁 common/ 📁 i18n/ 📁 service/ 📁 ui/ 🌙 config.lua (515 B) 🌙 main.lua (7,78 KB) 🌙 mcm.lua (2,60 KB) 📦 mcm.rar (921 B) 🌙 actor_stats.lua (4,09 KB) 🌙 diagnostic_injector.lua (3,23 KB) 🌙 eventbus.lua (6,95 KB) 🌙 util.lua (5,48 KB) 🌙 eng.lua (237 B) 🌙 rus.lua (290 B) 🌙 actor_say_service.lua (507 B) 🌙 env_service.lua (1,58 KB) 🌙 npc_service.lua (31,87 KB) 🌙 player_service.lua (11,66 KB) 🌙 stt_service.lua (1,86 KB) 🌙 animate_label.lua (2,30 KB) 🌙 dialog.lua (13,03 KB) 🌙 hud.lua (6,16 KB) 📦 hud.rar (1,69 KB) 📁 app/ 📁 database/ 📁 eventbus/ 📁 game/ 📁 llm/ 📁 stt/ 📁 tts/ 📁 util/ 🐍 main.py (72 B) 📄 requirements.txt (216 B) 🐍 app_config.py (3,99 KB) 🐍 app.py (4,38 KB) 🐍 database.py (2,46 KB) 📁 backend/ 📁 data/ 📁 event_data/ 🐍 bus.py (3,46 KB) 🐍 event_consumer.py (320 B) 🐍 event_producer.py (174 B) 🐍 event.py (591 B) 🐍 rpc.py (4,47 KB) 🐍 abstract.py (387 B) 🐍 mwse_tcp.py (3,11 KB) 🐍 actor_ref.py (342 B) 🐍 actor_stats.py (1,16 KB) 🐍 cell.py (319 B) 🐍 crime.py (334 B) 🐍 dialog_data.py (488 B) 🐍 env_data.py (1,63 KB) 🐍 id_with_name.py (88 B) 🐍 nakedness.py (122 B) 🐍 npc_data.py (2,07 KB) 🐍 npc_response_reaction_data.py (252 B) 🐍 player_data_fast.py (360 B) 🐍 player_data.py (884 B) 🐍 position.py (312 B) 🐍 topic_data.py (105 B) 🐍 event_data_from_game.py (4,94 KB) 🐍 event_data_from_server.py (4,14 KB) 🐍 event_data_rpc.py (3,08 KB) 📁 data/ 📁 i18n/ 📁 service/ 🐍 game_master.py (22,21 KB) 🐍 game_setup.py (5,85 KB) 🐍 npc_behavior.py (180 B) 🐍 npc_personality.py (131 B) 🐍 npc.py (481 B) 🐍 player_ref_looked_at.py (309 B) 🐍 player.py (265 B) 🐍 story_item.py (5,16 KB) 🐍 story.py (337 B) 🐍 time.py (1,98 KB) 🐍 i18n.py (2,56 KB) 📁 event_producers/ 📁 npc_services/ 📁 player_services/ 📁 providers/ 📁 scene/ 📁 story_item/ 📁 util/ 🐍 event_producer_from_story.py (11,24 KB) 🐍 npc_behavior_service.py (8,88 KB) 🐍 npc_database.py (3,99 KB) 🐍 npc_intention_analyzer.py (18,99 KB) 🐍 npc_llm_message_history_builder.py (2,43 KB) 🐍 npc_llm_pick_actor_service.py (34,62 KB) 🐍 npc_llm_response_producer.py (5,18 KB) 🐍 npc_llm_system_instructions_builder.py (61,00 KB) 🐍 npc_personal_story_service.py (2,20 KB) 🐍 npc_personality_generator.py (53,75 KB) 🐍 npc_service.py (6,18 KB) 🐍 npc_spawn_list.py (3,34 KB) 🐍 npc_speaker_service.py (14,25 KB) 🐍 local_player_speaking_listener.py (2,24 KB) 🐍 player_database.py (2,20 KB) 🐍 player_intention_analyzer.py (6,20 KB) 🐍 player_personal_story_service.py (3,85 KB) 🐍 player_provider.py (1,35 KB) 🐍 cell_name_provider.py (1,37 KB) 🐍 dialog_provider.py (2,58 KB) 🐍 dropped_items_provider.py (1,48 KB) 🐍 env_provider.py (897 B) 🐍 scene_instructions.py (4,19 KB) 🐍 npc_story_item_helper.py (3,83 KB) 🐍 story_item_to_history.py (10,09 KB) 🐍 format_date.py (878 B) 🐍 map_value_in_range.py (322 B) 🐍 prompt_builder.py (2,25 KB) 🐍 text_sanitizer.py (1,58 KB) 📁 backend/ 🐍 llm_logger.py (5,11 KB) 🐍 message.py (162 B) 🐍 session.py (1,89 KB) 🐍 system.py (2,73 KB) 🐍 abstract.py (409 B) 🐍 anthropic.py (2,61 KB) 🐍 dummy.py (285 B) 🐍 google.py (2,04 KB) 🐍 mistral.py (2,64 KB) 🐍 openai.py (2,62 KB) 📁 backend/ 🐍 input.py (1,95 KB) 🐍 system.py (5,39 KB) 🐍 abstract.py (351 B) 🐍 dummy.py (185 B) 🐍 msspeech.py (3,00 KB) 🐍 vosk.py (5,29 KB) 🐍 whisper.py (3,93 KB) 📁 backend/ 🐍 file_list_rotation.py (764 B) 🐍 request.py (121 B) 🐍 response.py (117 B) 🐍 system.py (4,79 KB) 🐍 voice.py (539 B) 🐍 abstract.py (393 B) 🐍 dummy.py (242 B) 🐍 elevenlabs.py (6,49 KB) 🐍 colored_lines.py (163 B) 🐍 counter.py (216 B) 🐍 diagnostic_injector.py (3,53 KB) 🐍 distance.py (291 B) 🐍 fs.py (345 B) 🐍 gen_id.py (357 B) 🐍 logger.py (3,57 KB) 🐍 now_ms.py (71 B) А если не читаете "многобуков", то короткая ремарка: человек открыл (по крайне мере для меня) дверь в АИ + Морровинд - создал "базу для этого", а я вошёл в комнату, где начал наводить свой порядок 😃 Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано 21 час назад Автор Жалоба Поделиться Опубликовано 21 час назад (изменено) 21 минуту назад, EJ-12 сказал: А это не оные часом? Питон версия MCP 🤔 я про такую даже не слышал. Ну 621 строчка кода в main.py это очень серьёзно, пару дней точно понадобится на разбор, но эта не та версия. Я не помню, чтобы устанавливал MCP отдельно от Fullrest Репака — единственное, что я с ним делал, так это обновил MWSE (скачивал с нексуса, апдейтил через: Сомневаюсь, конечно, что анализ питон версии поможет, но я посмотрю его 😃 в целях накопления информации. Я приложу свою версию "mcp.exe" и папку от него "mcpatch" в архиве mcp.zip Изменено 21 час назад пользователем ksteel Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано 21 час назад Автор Жалоба Поделиться Опубликовано 21 час назад (изменено) 8 часов назад, Pirate443 сказал: Ну в общем со второй попытки заработало и ладно. хотел еще спросить у вас на скринах кодепатч бэта версии на русском, а вы где его взяли? или сами переводили описание? на нексусе вроде только на английском. и что за нейросеть вы в фулрест репакт интегрируете? постом выше прикрепил свой mcp в архиве, если надо. upd прошу прощения, ввёл в заблуждение, 8го сентября скачивал MCP патч по данной ссылке. От туда же скачивал MGE XE https://www.nexusmods.com/morrowind/mods/26348?tab=files Изменено 21 час назад пользователем ksteel Ссылка на комментарий Поделиться на другие сайты Поделиться
EJ-12 Опубликовано 20 часов назад Жалоба Поделиться Опубликовано 20 часов назад 49 минут назад, ksteel сказал: Питон версия MCP 🤔 я про такую даже не слышал. Ну 621 строчка кода в main.py это очень серьёзно, пару дней точно понадобится на разбор, но эта не та версия😃 в целях накопления информации. Мне тут вот верно подсказывают, что сие и есть сырцы МСП. Точнее сказать не получается, Двемер в "отпуске"и когда из него Явится, вопрос риторический. Ссылка на комментарий Поделиться на другие сайты Поделиться
Марк К. Марцелл Опубликовано 2 часа назад Жалоба Поделиться Опубликовано 2 часа назад 19 часов назад, ksteel сказал: MCP если я ничего не путаю, как раз-таки с Fullrest репака, а нейросети вот инструкция https://docs.google.com/document/d/13JVzJQ54jxppOsg8dlxnoQOhkzPOWb8SfKl3mtlZ34Q/edit?tab=t.0, а вот гитхаб автора https://github.com/drzdo/immersive_morrowind_llm_ai. (з.ы. Это не моя страница и лично автора я не знаю, автором мода НЕ являюсь, даже не общался с ним) там есть ссылки и на гитхаб и на ютуб с плейлистом, очень комичные моменты у него присутствуют. Интегрирую — это я конечно громко сказал (автор мода уже их интегрировал) внесу ясность - я занимаюсь рефакторингом этого мода. (кстати именно для него я и перекомпелировал text.dll, чтобы было удобнее общаться с АИ НПС в обычном диалоговом окне с ЛЮБЫМ НПС) Если он это один сделал, то он очень талантливый человек (по моему мнению), даже слишком талантливый х). Идея класс, но реализация (для меня), спорная. Там (в оригинале) доступны 3 нейросети на выбор - Gemini flash, Mistral, и ещё что-то. Любая нейронка на Open Ai. Можно даже запустить через LLM Studio локально на пк (но для этого нужен компудахтер мощностью сравнительный с компудахтером NASA для управления всеми спутниками Земли, потому я отказался от локальной реализации этого мода). Так вот, я добавил ещё deepseek-chat. (В планах вообще ещё добавить yandex gpt и Giga chat. Для пользователей из РФ их проще оплачивать). Там ничего сложного — просто поменять строчки в confyg.yml Естественно все АИ требуют api ключи от нейросетей (ну Gemini flash можно использовать 15 минут в день и то по ограниченному количеству токенов, или найти какой-либо ещё один "бесплатный ключ" в чём-то ограниченный). В этом плане deep seek (опять по моему скромному мнению) явно выигрывает - дешево (даже очень) и сердито. Умный быстрый, контекст понимает, за ЛОР шарит, хахамбы и кеки не выдает (если самому в промт не вписать. В будущем (не знаю насколько далёком) хочу перенести этот мод вообще на OpenMW (в данный момент ознакамливаюсь с документацией) Lua скрипты новее, движок открытый, костылей никаких не надо, я надеюсь. (по типу используемой заглушки от автора оригинала мода для UI Extensions (что кстати очень гениально было и тонко на мой взгляд). Что мною было сделано на данный момент: проведен тотальный анализ всех файлов — кто за что отвечает, зачем нужен, какие взаимосвязи, тестово убрал их Промтов: "мат и всякую не лорную бредятину — какие-то частушки, матерные частушки, современные слова по типу "прикольно" и т.д. изменил полностью npc_personality_generator.py, теперь он собирает архетип личности не по типу: "ты родился в Балморе вчера, ты орк, который ненавидит легкие доспехи и любит вонючих грязекрабов, ты бьешь всех кто с тобой не согласен. И ещё ты называешь главного героя Н'Вахом. И плевать что ты орк.", а нормально: - Пол/Раса/Знак/Класс/Фракция/Ранг учитываются даже АРХЕТИПЫ личностей (сангвиник, холерик, меланхолик флегматик, их помеси). Получается при генерации что: - не все данмеры местные (кстати тут включена функция исключения по типу Камонны Тонг, Шестого дома, некоторые ранги в некоторых фракциях и т.д.), не все каджиты наркоманы и любят лунный сахар, не все орки тупые, не все норды грязные варвары любящие рыгать и пердеть, не все босмеры Фаргот и так далее. занялся сейчас npc_spаwn_list.py - хочу сделать из маленькой ограниченной книги "того что может давать тебе нпс" на целые лорные библиотеки (Construction Set мне в помощь). ну и другие изменения (их очень много, например чтобы нпс при разговоре не подходили в плотную к тому с кем разговаривают, да это добавляет своего рода иммерсивности......но...вы помните того погонщика Силт Страйдера из Гнисиса, который вечно проваливал под мостик и умирал? Либо Лодочников, которые вечно тонули из-за того что они смещались с места? Вот то-то и оно 😃 . Чтобы НПС не пялились все на тебя, словно ты в западном вестерне весь такой чужак, зашёл в местную таверну с револьвером на перевес (кстати, из-за этой функции на тебя смотрят даже убитые НПС (трупы крутятся 😄). Работы очень много, особенно очень много захламлённых файлов, которые отнимают 70 (если не 85)% всего времени: Аналогия: Директор сидит в кабинете. ПО ИДЕЕ директор должен просто собирать информацию, принимать отчёты от всех менеджеров (которые прибегают к директору в кабинет, кладут отчёт на стол и убегают во свояси, в свою рабочую дочернюю папку обратно). После этого директор ставит резолюцию "ВСЕ ПРОВЕРЕНО, ДОКУМЕНТЫ ГОТОВЫ"и отправляет структурированный понятный отчёт дальше (куда-то там в головной офис допустим). ЧТО МЫ ИМЕЕМ НА ДАННЫЙ МОМЕНТ Этот бедолага директор, не то что собирает эти отчёты — ОН САМ ЛИЧНО носится по всему заводу, крутит гайки, меняет колёса у тракторов и ещё и в столовой кушать готовит для работников завода :D. Естественно миллиард функций и блоков кода вписано в бедные раздутые жирные файлы. А ведь можно сделать элегантнее и красивЕе. И таких вот горе-дерикторов (файлов) целая Python часть мода (Lua часть маленькая, всего 19 файлов): 🌳 Структура мода Morrowind AI: ========================================= 📁 docs/ Так что когда будет форк — не скажу точно. (там уже есть один на бесплатные разщговоры нпс голосом но 📁 immersive_morrowind_db/ по моему мнению, как кто-то выразился на ютубе и, я его мнение целиком поддерживаю, для меня 📁 immersive_morrowind_llm_logs/ Морровинд - это больше буковки в тексте и чтение, чем общение голосом и отеты голосом нпс. 📁 src/ 📄 .env (21 B) (з.ы. я сам играл в мод совсем немного - но увлёкся настолько, что аж погрузился в разработку и тестирование, но рассказать 📄 Текстовый документ.txt (498 B) и убедить Селлуса Гравиуса (именно его первого, потому что он главный по званию !!! по биографии!!), по приказу Селлуса ⚙️ config.example.yml (1,40 KB) - Ганциеля Дуара, и ещё пару легионеров о том, что в пещере Аддумасартус контрабандисты рабов держат было весело. ⚙️ config.yml (2,76 KB) Притом что Гравиус остался снаружи, а легионеры со мной внутрь пошли, после чего меня оттуда выгнали (если бы я не 📄 LICENSE (34,32 KB) ушёл они бы выписали мне шрафт) т.к. я ГРАЖДАНСКИЙ и не состою в легионе, был первого уровня в рваном тряпье и т.д. 📖 README.md (30,03 KB А Гравиус категорически не хотел меня пускать внутрь как гражданское лицо, сказал ждать, что легионеры сами справятся 😄 📊 rpgaiserver.log (894 B) 📄 rpgaiserver.log.1 (884 B) А я то блин понимаю, что пока меня там нету - ячейка мертва, там ничего не происходит, это не Тес 5 Скурим. 📄 rpgaiserver.log.2 (883 B) Так и простоял прау минут, после чего зашёл алегионеры что стояли у входа давай меня выгонять из пещеры, мол капитан 📄 rpgaiserver.log.3 (791 B) Гравиус сказал бла бла бла. Весело вобщем, эмоций полный вагон)) 📄 Screenshot_1.jpg (989,73 KB) 📄 Screenshot_2.jpg (1,06 MB) 📄 Screenshot_3.jpg (300,41 KB) 📁 mwse_mod/ 📁 server/ 📁 MWSE/ 📁 mods/ 📁 UI Expansion/ 📁 zdo_immersive_morrowind_ai/ 🌙 MenuDialog.lua (184 B) 📁 common/ 📁 i18n/ 📁 service/ 📁 ui/ 🌙 config.lua (515 B) 🌙 main.lua (7,78 KB) 🌙 mcm.lua (2,60 KB) 📦 mcm.rar (921 B) 🌙 actor_stats.lua (4,09 KB) 🌙 diagnostic_injector.lua (3,23 KB) 🌙 eventbus.lua (6,95 KB) 🌙 util.lua (5,48 KB) 🌙 eng.lua (237 B) 🌙 rus.lua (290 B) 🌙 actor_say_service.lua (507 B) 🌙 env_service.lua (1,58 KB) 🌙 npc_service.lua (31,87 KB) 🌙 player_service.lua (11,66 KB) 🌙 stt_service.lua (1,86 KB) 🌙 animate_label.lua (2,30 KB) 🌙 dialog.lua (13,03 KB) 🌙 hud.lua (6,16 KB) 📦 hud.rar (1,69 KB) 📁 app/ 📁 database/ 📁 eventbus/ 📁 game/ 📁 llm/ 📁 stt/ 📁 tts/ 📁 util/ 🐍 main.py (72 B) 📄 requirements.txt (216 B) 🐍 app_config.py (3,99 KB) 🐍 app.py (4,38 KB) 🐍 database.py (2,46 KB) 📁 backend/ 📁 data/ 📁 event_data/ 🐍 bus.py (3,46 KB) 🐍 event_consumer.py (320 B) 🐍 event_producer.py (174 B) 🐍 event.py (591 B) 🐍 rpc.py (4,47 KB) 🐍 abstract.py (387 B) 🐍 mwse_tcp.py (3,11 KB) 🐍 actor_ref.py (342 B) 🐍 actor_stats.py (1,16 KB) 🐍 cell.py (319 B) 🐍 crime.py (334 B) 🐍 dialog_data.py (488 B) 🐍 env_data.py (1,63 KB) 🐍 id_with_name.py (88 B) 🐍 nakedness.py (122 B) 🐍 npc_data.py (2,07 KB) 🐍 npc_response_reaction_data.py (252 B) 🐍 player_data_fast.py (360 B) 🐍 player_data.py (884 B) 🐍 position.py (312 B) 🐍 topic_data.py (105 B) 🐍 event_data_from_game.py (4,94 KB) 🐍 event_data_from_server.py (4,14 KB) 🐍 event_data_rpc.py (3,08 KB) 📁 data/ 📁 i18n/ 📁 service/ 🐍 game_master.py (22,21 KB) 🐍 game_setup.py (5,85 KB) 🐍 npc_behavior.py (180 B) 🐍 npc_personality.py (131 B) 🐍 npc.py (481 B) 🐍 player_ref_looked_at.py (309 B) 🐍 player.py (265 B) 🐍 story_item.py (5,16 KB) 🐍 story.py (337 B) 🐍 time.py (1,98 KB) 🐍 i18n.py (2,56 KB) 📁 event_producers/ 📁 npc_services/ 📁 player_services/ 📁 providers/ 📁 scene/ 📁 story_item/ 📁 util/ 🐍 event_producer_from_story.py (11,24 KB) 🐍 npc_behavior_service.py (8,88 KB) 🐍 npc_database.py (3,99 KB) 🐍 npc_intention_analyzer.py (18,99 KB) 🐍 npc_llm_message_history_builder.py (2,43 KB) 🐍 npc_llm_pick_actor_service.py (34,62 KB) 🐍 npc_llm_response_producer.py (5,18 KB) 🐍 npc_llm_system_instructions_builder.py (61,00 KB) 🐍 npc_personal_story_service.py (2,20 KB) 🐍 npc_personality_generator.py (53,75 KB) 🐍 npc_service.py (6,18 KB) 🐍 npc_spawn_list.py (3,34 KB) 🐍 npc_speaker_service.py (14,25 KB) 🐍 local_player_speaking_listener.py (2,24 KB) 🐍 player_database.py (2,20 KB) 🐍 player_intention_analyzer.py (6,20 KB) 🐍 player_personal_story_service.py (3,85 KB) 🐍 player_provider.py (1,35 KB) 🐍 cell_name_provider.py (1,37 KB) 🐍 dialog_provider.py (2,58 KB) 🐍 dropped_items_provider.py (1,48 KB) 🐍 env_provider.py (897 B) 🐍 scene_instructions.py (4,19 KB) 🐍 npc_story_item_helper.py (3,83 KB) 🐍 story_item_to_history.py (10,09 KB) 🐍 format_date.py (878 B) 🐍 map_value_in_range.py (322 B) 🐍 prompt_builder.py (2,25 KB) 🐍 text_sanitizer.py (1,58 KB) 📁 backend/ 🐍 llm_logger.py (5,11 KB) 🐍 message.py (162 B) 🐍 session.py (1,89 KB) 🐍 system.py (2,73 KB) 🐍 abstract.py (409 B) 🐍 anthropic.py (2,61 KB) 🐍 dummy.py (285 B) 🐍 google.py (2,04 KB) 🐍 mistral.py (2,64 KB) 🐍 openai.py (2,62 KB) 📁 backend/ 🐍 input.py (1,95 KB) 🐍 system.py (5,39 KB) 🐍 abstract.py (351 B) 🐍 dummy.py (185 B) 🐍 msspeech.py (3,00 KB) 🐍 vosk.py (5,29 KB) 🐍 whisper.py (3,93 KB) 📁 backend/ 🐍 file_list_rotation.py (764 B) 🐍 request.py (121 B) 🐍 response.py (117 B) 🐍 system.py (4,79 KB) 🐍 voice.py (539 B) 🐍 abstract.py (393 B) 🐍 dummy.py (242 B) 🐍 elevenlabs.py (6,49 KB) 🐍 colored_lines.py (163 B) 🐍 counter.py (216 B) 🐍 diagnostic_injector.py (3,53 KB) 🐍 distance.py (291 B) 🐍 fs.py (345 B) 🐍 gen_id.py (357 B) 🐍 logger.py (3,57 KB) 🐍 now_ms.py (71 B) А если не читаете "многобуков", то короткая ремарка: человек открыл (по крайне мере для меня) дверь в АИ + Морровинд - создал "базу для этого", а я вошёл в комнату, где начал наводить свой порядок 😃 Хорошо, что кто-то взялся. Может, из экспериментов и хиханек получится что-то более серьёзное и иммерсивное. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти