Перейти к содержанию

Активность

Лента обновляется автоматически

  1. Сегодня
  2. Вся земля белая (как будто проблема с Distant land) Версия MFR - 4.1.29 beta Запускаю через OpenMW, на Mac через Parallels Dektop...)
  3. Ну тогда лучше всего начинать с фиксов которые mcp вносит в text.dll, что бы модифицированный файл в полной мере заменял предыдущее решение, а не ставил пользователя перед выбором или или.
  4. Вот я о том же. Я не буду переносить из MCP такие мелкие фиксы как "широкое меню, фикс карты для TR и т.д."- это мелкие правки, в сравнении будто я переношу мелкую правочку из esp в esm, хотя правочка и так работает идеально. Для сохранения совместимости и универсальности надо перенести более глобальные и общие масштабные фиксы. Начнём с малого с MCP, через MGE (вообще прикрутить рендер DX9-11 нафиг 😄 ) к большему - MWSE.
  5. 4 гб патч не влияет напрямую на работу именно игровой логики, скрипты диалоги квесты работают в не зависимости от объема памяти. Если сможете заставить использовать больше и при этом не вылетать, то да проще дать рекомендацию ру пользователям не отмечать в MCP фикс 4гб.
  6. Да, я согласен с вами полностью прогресс не должен вредить совместимости н ив коем случае, но что делать, допустим, с 4гб патчем? MCP находит в заголовке Morrowind.exe (PE header) специальное поле «Характеристики» и вписывает в него флаг 0x0020 (IMAGE_FILE_LARGE_ADDRESS_AWARE), говоря Windows: «Этому приложению можно доверять, позволь ему видеть больше памяти». Таким образом даются 4 ГБ памяти. И всё, это потолок. Но если мы хотим сделать 8 ГБ памяти тем же путём что и MGE XE, только на уровне движка, а не со стороны внешнего органа MGE XE?
  7. ИМХО: стоит перенести только те правки то что MCP вносит в text.dll, что бы компенсировать невозможность обычным MCP пропатчить модифицированный text.dll. Остальной функционал MCP лучше оставить застывшим во времени, для совместимости с модами. Многие моды сделаны из рассчета MCP, если фикс будет вносится иным способом не факт что мод корректно заработает. Плюс продвинутые MWSE моды проверяют требуемые компоненты и выдают окно с требованием при запуске игры. Им будет все равно на содержимое text.dll, они проверяют в MCP какие опции установлены пользователем. А еще если мне не изменяет память без установки MCP последние версии толи MGE XE то ли MWSE выдают ошибку с русской версией morrowind.exe, не помню что именно. Так что нужно соблюдать баланс между прогрессом и совместимостью.
  8. Загрузил стабильную версию 3.01.1 (сообщения при повышении уровня, буфер консоли гибридный) в раздел плагины, закрепил её файлы в шапке темы. Это будет отправной точкой в дальнейшем совершенствовании, в принципе с ней можно играть. (Она в оригинальном виде, каким сделал его Angel Death). Я уже провел полный рефакторинг файлов/кода. Разместил все по отдельным папкам. Теперь каждый файл .CPP либо .H структурно элегантен, не выполняет один всю работу. А именно console.cpp и helperfunctions.cpp. Приступаю к анализу того, какие правки необходимо перенести из MCP в text.dll на уровень движка. Необходимо не только text.dll вырвать из состояния "застыло во времени" но и правки из MCP.
  9. Вчера
  10. Вам для затравочки по грядущему масштабному обновлению 3.02:
  11. Доделал MWSE меню управления ключами в angel.ini https://www.fullrest.ru/files/mwse-menyu-dlya-moda-russkiy-vvod-teksta Уже некоторое время хотел сделать проверку ключей top\cel\mrk и выводить предупреждение если отключено, т.к. иногда встречаются пользователи у которых выключено и у них криво работает перевод модов. Только я хотел это к своему модулю данных прикрутить как доп функцию, а тут вышел апдейт text.dll с выбором клавиши и я решил что выбор кнопки 100% нужно автоматизировать для простого игрока внутри морровинда, что бы не нужно было икать сканкоды и вручную вписывать. В результате сделал отдельное меню управления всеми параметрами. Вот как то так вышло.
  12. Последняя неделя
  13. И снова здравствуйте форумчане! Спешу вас порадовать тем, что я внёс исправление в расширение консоли (если включена функция EnableConsole=1 в Angel.ini)! Теперь при наличии длинных скриптов text.dll должен вести себя так, как и задумывалось! Коротко о том что было сделано: 1. Безопасность памяти. Увеличен буфер вывода с 1024 до 2048 байт в Con_Printf Заменён опасный sprintf на безопасный strncpy с принудительной нуль-терминацией Добавлена проверка памяти в .dump s команде через IsBadReadPtr 2. Умное управление ресурсами. Гибридная система буферов в GameCommandLine Быстрый стековый буфер 1КБ для обычных команд (как изначально было в статичной версии) Динамический буфер 4КБ для длинных скриптов (автовыделение) 3. Защита от переполнений. _vsnprintf с sizeof() вместо магических чисел Гарантированная нуль-терминация во всех строковых операциях Уменьшен массив argv со 1024 до 64 элементов для безопасности (если будет обрезаться строка, сделаю и его гибким, с изначальным значением 64 и он сможет увеличиваться по мере необходимости). А теперь о каждом действии и подробно: 1. Безопасность памяти (Buffer Overrun в Con_Printf): 2. Самое главное изменение - умная система буферов в GameCommandLine: Изначальная строгая статичная версия: Моя версия - гибкая, при получении текста/длинного скрипта сама выбирает какой буфер выделять для текущей операции: 3. Защита дампа памяти: Было (чтение любой памяти): Стало (проверка доступности): 4. Добавление защиты в сам файл Console.cpp: Прикрепляю новый text.dll c пофикшенной консолью и изменённым исходником консоли. Сохранена кодировка cp1251 (ох как же она мне дорога, кто бы знал....). Все предыдущие фиксы включены в эту версию. ПРОШУ ОБРАТИТЬ ВНИМАНИЕ, Я ДО СИХ ПОР НЕ МЕНЯЛ ВЕРСИЮ (написание версии text.dll) C ВЕРСИИ 3.00! Я ЭТО СДЕЛАЮ КОГДА БУДЕТ ПРОВЕДЕНА ПОЛНАЯ РЕВИЗИЯ ВСЕХ .cpp ИСХОДНИКОВ И ПРОЙДУТ ТЕСТЫ, ТОГДА ВЕРСИЯ СРАЗУ ПЕРЕПРЫГНЕТ С ВЕРСИИ 3.00 ДО версии 3.02! п.с если мне кто-то подскажет как я могу скрывать длинные рулоны сообщений под спойлер, буду премного благодарен. text.dll Console.cpp
  14. То что было лицензионным в СССР вовсе не значит лицензионным за бугром. Тогда и музыку тырили в открытую мы у них, они у нас... Ни кто не выставляет иски по этому поводу. Однако после интеграции с зарубежьем в свободном использовании это исчезло. Новые игры типа Обливион или Скайрим не меняют EXE и DLL файлы, а следовательно не нарушают права. Но для продажи игры все равно должно быть разрешение и договоренность с авторами по процентам отчисления с продаж. Без разрешения можно продавать только отдельно русификатор без исходных файлов. Я уверен, что у 1С есть лицензии на продажу CD дисков. Не стало дисков - не стало продаж. Аналогично и для польской версии, но я не верю что за бугром дали добро на изменение игрового движка. В Морке есть поддержка кодовых страниц для языков, но внедрение DLL в исходник является нарушением не авторских прав, а защиты ПО.
  15. Ну лично мое мнение, конечно не подтвержденное никакими пруфами что у ру издателей (не только 1с и у других) были права только на распространение дисков, даже если бессрочные, то с выходом дисков из обихода, они просто забили. Делать свой стим не особо выгодно, тем более заново права на цифровое распространение получать. А во всяких стимах\гогах нет ру перевода у старых игр, опять же из за отсутствия прав и исходников перевода, из за того что тогда отдавалось все на откуп местного издателя. А сейчас зарубежным издателям (не только бевезде) просто нафиг не сдалось искать кто там чего в 2002 году издавал в других странах, а если по документам права на сам перевод оставались у издателя еще и выкупать их у него. Вот лично это мое мнение. ну само по себе продажа ключей стим\гог нормально и проблемы где взять игру нет, вот с отсутствием русского перевода, который был на дисках, бедя
  16. На скрине кусочек кода МВ, аглицкого. Не от 1с, а именно чисто породного как он есть. Где черным по синему нарисованы "официальные" языки. Что намекает. Другой вопрос, что сама беседка не стала себя обременять переводом (и заморочками с локалями), что для тех времен было нормальной практикой. Еще, на коробке с диском, ясно написано, что сие Лицензионная копия, а этому надо верить. В каких отношения 1с была с Беседкой, тема отдельного научного изыскания. Но учитывая статус 1с, "для перевода игры нужно разрешение" оно у них скорее всего было во всем феншуе, т.к. вкрячивать кусок кода в виде этого самого ДЛЛа, куда проще имея доступ к этому самому коду. Если же, 1с не имела ничего такого, то у беседки было полно времени (аж 20лет) чтобы высказать свое фи, в той, или иной форме. И если не изменяет память, то ни Обливион ни Скурицион, не вызывали у беседки вопросов к локализации. Другой вопрос, что 1с могла не дать разрешение на публикацию ру версию в ГОГЕ, либо оное не смогли "получить". Т.е. называть официально лицензионную копию (от1с))) - пираткой, несовсем корректно. Так проще делать, не? Проще повесить внешний патч, чем копать код, с низвестными последствиями по совместимости с модами и обновлениями. Бладмун это 2003, хотя да, с переводом он вышел едва не в 2005ом, там большая задержка была. А перевод и выход Морровинда в ру версии, осень 2002го. Может отдельную кнопку сделать? 😄 Одна версия, но, по умолчанию все "лишнее" выключено. Для включения, зайти в АнгелИни и что-то там поменять, после чего, Длл будет считывать во всей полноте привнося разумное и доброе и вечное. Они давно на всё положили на 32х. Впрочем, как и беседка на поддержку своих старых активов. А так конечно, теперь в тренде продажа ключей, а где вы возьмете саму игру, уже никого не волнует. 😄 Создание локализации != созданию лекарства от опроса диска и выкладыванию в открытый доступ без взимания налога на желания обрести желаемое.
  17. всегда думал что сотни лицушных игр на дисках от 1с\акелла\бука\новый диск пропали с продажи, потому что диски вышли из обихода, а создавать "свой стим" не было денег\желания\целесообразности да лицуха была только на распространение дисков. А оказывается 1с просто всю жизнь пиратили... но вот ровно аккурат к окончанию массового использования данного носителя одумались и решили все больше ни ни. Обливион 1с тоже спиратили? эти диски тоже с продажи пропали и тоже в стиме\гоге не ру языка.
  18. Диски от 1С продавались, но для перевода игры нужно разрешение, потому их не стало. Морка не предназначена для перевода потому в 1С изменили игровой движок. А вот OpenMW позволяет играть без изменения стандартного движка. P.S. Был еще и польский вариант на CD, которого сейчас нет.
  19. Не хочу проверять, но подозреваю что сейчас они просто ключи на стим или гог продают, поэтому и указывают английский язык. Так стоп, вроде по ссылке и нельзя купить, какая то старая карточка товара А раньше вроде как именно русскую версию продавали, я услышал об этом когда продаж уже не было, поэтому не могу сказать достоверно. сборки с модами на бусти никто за лицуху и не считает, изначально речь про диск от 1с шла. 1с же по лицензии диск морки выпускали?
  20. Согласен, 1С много игр выпустила... своих... Даже сейчас вроде есть цифровая в продаже, только английская.: https://online.1c.ru/games/game/19055674 На стиме предлагают купить английскую и накатить "русификатор". А в русификаторе копия файлов от игры 1С, в том числе и morrowind.exe На других сайтах встречается морка на продажу и даже есть с готовым набором модов. Наивно считать их лицухой, P.S. Цифровую не смотрел, не знаю что там сделано.
  21. практически все, но морровинд же по лицензии сделан? 1с же лицензионные игры выпускала? Кстати некоторое время кстати продавали цифровую версию от 1с, не знаю что там за защита была и была ли вообще. Интересно какая там версия text.dll была.
  22. Согласен с предыдущим оратором разные версии делать не нужно, только юзеров путать. Если сможете восстановить функционал 3.01 с фиксом отсутствующих сообщений, то 3.01 + ваши правки слепого пятна + настройка горячей клавиши уже стоит назвать 3.02 что бы юзер явно понимал: вот есть версия 3.02, в которой тоже что и в 3.01 + выбор клавиши. Хотя возможно я бы nocd сделал опционалом, что бы у каждой версии была версия X, и версия X+nocd. Потому что одно дело мод на выбор клавиши, другое дело кряк
  23. На стиме есть только два оф.перевода для FR и DE от UbiSoft. В русской версии изменена "morrowind.exe", это делать за бугром ни кто не позволит. MCP патчит оригинальный ехе, но не выкладывает его измененным файлом. Перевод был сделан в далеком 2004 году. Тогда практически все было без лицензии. OpenMW позволяет запускать игру на телефонах и разных языках, это другой движок и разрешение для него не нужно. Делать две версии textdll не надо. Он либо есть, либо нет. Это как у MCP, нет упрощенной и полной версии.
  24. и волки целы, и овцы сыты (с) Тогда решено - я сделаю одну версию, пофикшенную, которая останется на версии 3.01 (консоль, мб еще какие баги найду в коде) А вторая версия будет увеличивать свою версию 3.01-> 3.02 и т.д., но там будет меняться и развиваться патчи, фиксы модульность и другие фьюча хотелки. Либо предлагайте идеи, я всегда рад и открыт для предложений, ведь я не только для себя это делаю) п. с. Я тоже думал, что 1с - лицензия.
  1. Загрузить ещё активность
×
×
  • Создать...