Pirate443 Опубликовано 4 часа назад Жалоба Поделиться Опубликовано 4 часа назад 1 минуту назад, ksteel сказал: Да, я согласен с вами полностью прогресс не должен вредить совместимости н ив коем случае, но что делать, допустим, с 4гб патчем? MCP находит в заголовке Morrowind.exe (PE header) специальное поле «Характеристики» и вписывает в него флаг 0x0020 (IMAGE_FILE_LARGE_ADDRESS_AWARE), говоря Windows: «Этому приложению можно доверять, позволь ему видеть больше памяти». Таким образом даются 4 ГБ памяти. И всё, это потолок. Но если сделать 8 ГБ памяти тем же путём что и MGE XE, только на уровне движка, а не со стороны внешнего органа MGE XE? 4 гб патч не влияет напрямую на работу именно игровой логики, скрипты диалоги квесты работают в не зависимости от объема памяти. Если сможете заставить использовать больше и при этом не вылетать, то да проще дать рекомендацию ру пользователям не отмечать в MCP фикс 4гб. Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано 4 часа назад Автор Жалоба Поделиться Опубликовано 4 часа назад (изменено) 7 минут назад, Pirate443 сказал: 4 гб патч не влияет напрямую на работу именно игровой логики, скрипты диалоги квесты работают в не зависимости от объема памяти. Если сможете заставить использовать больше и при этом не вылетать, то да проще дать рекомендацию ру пользователям не отмечать в MCP фикс 4гб. Вот я о том же. Я не буду переносить из MCP такие мелкие фиксы как "широкое меню, фикс карты для TR и т.д."- это мелкие правки, в сравнении будто я переношу мелкую правочку из esp в esm, хотя правочка и так работает идеально. Для сохранения совместимости и универсальности надо перенести более глобальные и общие масштабные фиксы. Начнём с малого с MCP, через MGE (вообще прикрутить рендер DX9-11 нафиг 😄 ) к большему - MWSE. Изменено 4 часа назад пользователем ksteel Ссылка на комментарий Поделиться на другие сайты Поделиться
Pirate443 Опубликовано 4 часа назад Жалоба Поделиться Опубликовано 4 часа назад 7 минут назад, ksteel сказал: Начнём с малого с MCP, через MGE (вообще прикрутить рендер DX9-11 нафиг 😄 ) к большему - MWSE. Ну тогда лучше всего начинать с фиксов которые mcp вносит в text.dll, что бы модифицированный файл в полной мере заменял предыдущее решение, а не ставил пользователя перед выбором или или. Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано 4 часа назад Автор Жалоба Поделиться Опубликовано 4 часа назад 10 минут назад, Pirate443 сказал: Ну тогда лучше всего начинать с фиксов которые mcp вносит в text.dll, что бы модифицированный файл в полной мере заменял предыдущее решение, а не ставил пользователя перед выбором или или. Этим я сейчас и занимаюсь =) Ссылка на комментарий Поделиться на другие сайты Поделиться
ksteel Опубликовано 33 минуты назад Автор Жалоба Поделиться Опубликовано 33 минуты назад (изменено) Уважаемые форумчане! Что удалось выяснить на данный момент. MCP устанавливает патч в 2 этапа: 1. MCP сверяет ХЭШ Morrowind.exe, таким образом выбирается версия игры (хэш оригинальной русской версии от 1с ecb347304134f63cabf1ab38f0728dcff5fbfb11e7ac2b87a03c8639936ab094), в этой папке и лежит файл patch для .exe, а также 3 папки, в каждой их которых лежат патчи для 3‑х версий text.dll: оригинальная 48 кб, от Angel Death v.3.01 170 кб и ещё непонятная какая-то версия text.dll, которую, скорее всего, в жизни никто не видел или не использовал). 2. MCP сверяет ХЭШ text.dll, таким образом он внутри папки ecb347304134f63cabf1ab38f0728dcff5fbfb11e7ac2b87a03c8639936ab094 находит вторую папку e8503809bad3d088b367cffe85b13965565c4655f457919db18cdefe76edbad8, в названии которой установлен ХЭШ text.dll, откуда он берёт свои патчи для этой text.dll). 3. Я сравнил все 3 версии патча для разных версий text.dll (смотрел через HEX редактор Visual Studio Code): нашу общеиспользуемую: e8503809bad3d088b367cffe85b13965565c4655f457919db18cdefe76edbad8 первую отличную от нашей общеиспользуемой: 23c36ef153f5b183fc13d06ef339d9356c0da6b30a90aa7359baedce2135f036 вторую отличную от нашей общеиспользуемой: f027a20356e788cf1a48d6f89f8b11eb61b34dda2fecb6fab59a74e3dae3f83a Как вы сами можете увидеть, две другие версии вносят: а) немного другие правки в сам text.dll б) вносят больше правок в text.dll, что намекает о старых версиях text.dll (скорее всего версии 3.00 и ниже). Вывод: т.к. версия text.dll 3.01 не менялась внутренне структурно (что мы также выяснили в этой теме), то патч из вышеуказанной папки e8503809bad3d088b367cffe85b13965565c4655f457919db18cdefe76edbad8 как раз и влияет на text.dll. Собственно к анализу этого патча от MCP я и приступаю, буду смотреть что он вносит или что модифицирует. Изменено 32 минуты назад пользователем ksteel Ссылка на комментарий Поделиться на другие сайты Поделиться
EJ-12 Опубликовано 6 минут назад Жалоба Поделиться Опубликовано 6 минут назад Цитата Многие моды сделаны из рассчета MCP, если фикс будет вносится иным способом не факт что мод корректно заработает. В мсп есть 2 типа правок. - БагФИксы (все флаги выбраны по умолчанию). - хотелки и улучшайзеры. Первые это фикс очевидных косяков, вторые, навроде камеры за плечом, хотелки. Т.е. переносить очевидные багфиксы в "хардкод" дело Справедливое по определению. И как вариант, в дальнейшем, связаться с Двемером согласовав с ним этот момент. Дабы МСП учитывало правленный техтДлл и не правило уже поправленное. А еще, сделать свой билд МСП (пока Двемера нету на месте). Нечто подобное, было проделано с МГЕ 19ой версии. А "улучшайзеры" они сами по себе, конечно переносить камеру за плечо прямо в код, не всем будет симпатично. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти