Menu

Редактирование сейвов Mass Effect 1

Биотика ЛиарыДавным-давно вышла компьютерная игра Mass Effect I, ставшая для многих самой любимой. Несмотря на то, что поддержка игры уже прекращена, что уже вышли вторая и третья части, интерес к этой игре не исчезает. Во многом это объясняется проработанным виртуальным миром, буйной фантазией авторов, хорошим балансом.

С моей точки зрения, игра получилась действительно выдающейся, должен отметить, что целиком прошел ее дважды.

Что интересно, если для II и III части существует множество народных самописных редакторов и улучшалок, то первая часть стоит особняком обделенная. При втором прохождении я серьезно занялся вопросом редактирования сохранений, чтобы облегчить жизнь виртуальному герою. Да, вопрос спорный, безусловно, остаются сомнения, не будет ли это читерством? Однако, со своей совестью я договорился: ведь в первый раз я прошел игру совершенно самостоятельно, как и планировали авторы; а вот со второго раза захотелось самому почувствовать себя чуть-чуть автором и модифицировать игру. Кстати говоря, за открытую архитектуру и возможность модификаций я очень уважаю наш STALKER! Лично мне очень нравится погружаться в виртуальный мир, на который ты уже самостоятельно повлиял. Главное, знать меру.

Так вот, поиски хоть каких-то полезных программ в интернете не дали результата. Пришлось разрабатывать собственную методику, выискивая обрывки информации в сети. Итак, методикой редактирования сейвов я и собираюсь поделиться.

Естественно, каждый здравомыслящий человек неистово захочет получить полный кошелёк виртуальных денег. Действительно, это благородное стремление. Тут в реальной-то жизни денег постоянно не хватает, да ещё и в играх это терпеть!? Советы рассмотрены на нашем сайте.

Однако, в первую очередь, я поставил перед собой другую задачу: накрутить очки способностей членов команды - сопартийцев. Ведь Mass Effect относится к жанру RPG, в нее интересно играть не совершенствуя собственные навыки стрельбы и скорость рефлексов, а прокачивая способности (как свои, так и сопартийцев).

Раберём эту доблестную задачу на примере.

Методика редактирования сейва сводится к следующему:

  • Распаковка оригинального файла *.MassEffectSave
  • Редактирование развёрнутого файла по собственному усмотрению
  • Сворачивание модифицированных файлов в формат *.MassEffectSave

Рассмотрим каждый пункт детально.

Как оказалось, оригинальный файл сохранения - это упакованные в формате ZIP три файла

  • state.sav
  • player.sav
  • WorldStatePackage.sav

Таким образом, сначала необходимо найти файл сохранений, который генерирует игра. Обычно файл располагается в документах пользователя в директории BioWare/Save. В случае использования Windows 7, путь будет выглядеть следующим образом:

c:/Documents and Settings/имя/Мои документы/BioWare/MassEffect/Save/

Найдите последнее сохранение, которое планируется отредактировать. Для распаковки достаточно изменить расширение файла на *.zip. Теперь перед нами самый обычный архив, только заголовок у него нестандартный - не каждая программа архивации разглядит содержимое этого архива. На практике проверено, что уверенная распаковка достигается распространенной программой WinRAR.

После распаковки мы видим три файла, созданные в 1980 году! Не обращаем внимания на дату.

Нас интересует только один файл player.sav.

Необходимо открыть и отредактировать его побайтно. Для этих целей прекрасно подходит бесплатная программа HxD, которая позволяет просматривать и изменять файлы в шестнадцатеричном представлении.

Обращаю внимание на то, что очень важно знать очки талантов до редактирования, чтобы точно знать, что мы ищем.

При поиске необходимо обнаружить код сопартийца в файле, затем примерно на 21 байт отступить назад и изменить значение очков таланта.

Коды сопартийцев приведены в таблице (слева - любимые, справа - раздражающие).

Лиара

01 B3 E7

 

Кайден

01 6F 05

Гаррус

01 B3 E9

 

Эшли

01 6F 00

Рекс

01 B3 EA

 

Тали

01 B3 E8

 

Удивительно, но может сложиться ситуация, при которой код сопартийца будет отсутствовать в сохранении. Объяснить это невозможно, но поверить нужно. В этом случае придется проходить игру чуть-чуть дальше и снова сохраняться. Больше всего проблем создают сопартийцы, которых мы ещё не встретили по сюжету. Поэтому желательно сначала пригласить персонажа в команду, а уже потом менять его судьбу.

Рассмотрим редактирование очков таланта Лиары. На мой взгляд - это незаменимый член отряда! Даже не важно, будет ли с Лиарой романтическая линия, или нет. Она - стопроцентный уникальный биотик, поэтому замены ей в отряде реально нет. Особенно хотелось бы подчеркнуть сингулярность. Если Вы не играли в ME с полностью прокачанной сингулярностью Лиары, Вы вообще не играли в МЕ.

Наверняка кто-то возразит, что есть же ещё и Эшли. Однако, мой вердикт суров: она страшная, косоглазая, истеричная, да к тому же солдат. Ну как женщина может быть 100% солдатом? Нет, под романтическую линию Эш никак не попадает. Можно предположить, что этот персонаж введён специально, чтобы удовлетворить романтический интерес 12-летних ковбоев. Ах, девушка-солдат, как это мило, ми-ми-ми... Но нам не 12 лет. Кроме того, считаю, что наличие Эшли в отряде лишнее, так как стрелять умеют все, даже главный герой. Смысл усиливать отряд стрелком? Нет, усиливать отряд надо кем-то уникальным.

Итак, в HxD открываем player.sav, находим код члена команды - азари, отсчитываем влево определённое количество байт, проверяем, что один байт имеет нужное нам значение - ровно столько, сколько очков было в игре. В частности, у меня назрела необходимость подкорректировать отгрузку, когда Лиара набрала 26 очков умений. Сразу прикидываем на калькуляторе:

DEC 26 = 0x1A

В моем случае окно редактора выглядело так:

Hex Editor for Mass Effect

 

В нашем примере код члена команды встретился в строчке, начинающейся по адресу 0x016D20.

Обратите внимание, код сопартийца должен встретиться в файле только один раз! Если есть дубли, лучше выбрать другое сохранение. Но можно проявить смекалку и обратить внимание, что слева от искомого байта будут идти преимущественно нули, а на восемь байт левее будет обязательно находиться 0x04. Примите на заметку! А вот на адреса обращать внимания не стоит, они меняются во время игры весьма значительно.

Теперь меняем количество очков на требуемое. Не следует ставить слишком много, всё равно 0xFF потратить не сможем. Достаточно будет даже половины.

После завершения редактирования сворачиваем три вышеуказанных файла в формат ZIP. Удивительно, что не каждый архиватор ZIP подойдёт! В частности, в сети много нареканий на оригинальный упаковщик ZIP. Оказывается, разработчики решили подстраховаться и выполнили заголовок архива нестандартным. Много написано о подмене заголовка, но... Могу предложить ассиметричный ответ разработчикам: Total Commander и его восхитительная функция Alt+F5. Без всяких проблем создаёт нужный нам заголовок самостоятельно!!!

После упаковки получаем файл *.zip, который надо переименовать в *.MassEffectSave.

Готово! Подкладываем файл обратно, как ни в чем не бывало, всё должно работать!

Единственный минус, при загрузке сохранения в игре будет потеряно изображение, на котором показана текущая локация. Нас это смущать не должно.

Открываем сохранение в игре и любуемся проделанной работе. Например, в моем случае, экран со способностями Лиары выглядит вот таким образом.

Слепок экрана с Лиарой

 

Ниже приведён небольшой набор скриншотов, показывающих как полностью развитые способности биотика влияют на игровой процесс. По сути, игра кардинально меняется. Открывать огонь почти не успеваешь, так как враги стаями слетаются из разных укромных уголков и начинают кружиться в воздухе: сингулярность затягивает их как пылесос. Причем, на землю падают уже только тела. Обратите внимание, что Лиара умудряется вытаскивать гетов из-за укрытий и даже из-за щитов, которые становятся совершенно бесполезны. Более того, часть предметов (например, массивные ящики) тоже устремляются в воздух, а зачастую ломаются.

Если нет желания выполнять описанную рутинную работу, Вы можете воспользоваться моими уже исправленными отгрузками.

26 комментарии

  • Серый

    написал Серый

    Воскресенье, 04 Январь 2015 10:34

    Отличный материал! Есть вопрос - редактирование сейва с названием, допустим, Char_01-60-2-3-4-16-12-2008-63-5.MassEffectSave - тот файл, который использует Mass Effect 2 при переносе персонажа, выполняется аналогичным образом? В сети есть редакторы сейвов ME 2 и ME 3, но вот редактирование именно этих файлов напрочь отсутствует, а хотелось бы перед перенесением персонажа в ME 2 кое-что подкрутить в сейве (не деньги, не очки - результаты прохождения определенных квестов, которые отразятся в будущем, причем не только основных, типа убийства/убеждения Рекса, но и поступков в отношении, например, Конрада Вернера)

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Воскресенье, 04 Январь 2015 20:42

    Честно говоря, мне не приходило в голову заниматься редактированием файла Char*. Ведь чтобы перенести во вторую часть игры какие-то специальные особенности, достаточно прописать это в последнюю отгрузку (перед финальной битвой), а затем победить Сарена. Тем более, при хорошей прокачке Шепард может наблюдать из-за колонны, как его товарищи испепеляют Сарена. Сплошное удовольствие!

    Пожаловаться
  • stn

    написал stn

    Четверг, 08 Январь 2015 14:38

    2Владимир. Поясните, плиз, насчет заголовка в зип-файле. Я просматриваю сейв-файлы из игры и архивы, созданные при помощи альт+F5, - они различаются, начиная с первого байта. То есть, если заголовок хранится где-то в первой сотне байтов - они различны.

    2Серый. События МЭ1 типа убийства Рекса и бесед с доктором Вернером отразятся только в МЭ3, а для МЭ2 и МЭ3 редакторы сети имеются. В МЭ3 вы сможете использовать два варианта:
    1) увеличить военные ресурсы редактором, не меняя решений первой-второй части
    2) поменять все решения 1-2 части редактором, воскресить Рекса, Совет, Тали и пр., поменять текущие романы и пр.

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Среда, 14 Январь 2015 13:37

    Добрый день!

    stn, прошу прощения за задержку с ответом. Обращаю Ваше внимание на то, что у нас нет задачи создать идентичные заголовки. Наша задача: создать такой заголовок архива, который будет уверенно прочитан внутренним менеджером архивов Mass Effect. И именно вторую задачу решает ALT+F5. Да, заголовок отличается (возможно даже с первого байта), но в этом нет ничего страшного, если Mass Effect воспринимает его.

    Пожаловаться
  • Дмитрий

    написал Дмитрий

    Четверг, 15 Январь 2015 18:05

    Владимир, а вот с этим можно что-то сделать:
    закончив ме3, сразу поставил ме1 чтобы пройти трилогию ещё раз. Создал новую карьеру, начал играть и понял, что не могу воспринимать другую внешность. Но если при начале новой игры выбрать старую карьеру, тебе не дают ничего менять, и редакторов сейвов для ме1 нет. Однако поиграть за другой класс хотелось бы.

    Пожаловаться
  • stn

    написал stn

    Четверг, 15 Январь 2015 18:12

    Да, этот архив игрой воспринимается. Просто я не понимаю, что значит "Разработчики сделали заголовок нестандартным". На то они и разработчики, чтобы делать как им вздумается)

    Теперь о проблемах. Постарался сделать изменения в игре. Например, поменять пол персонажа. Так как размеры файла player.sav всегда разные, не смог найти байт, отвечающий за это. Создавал игру с Шепардом мужиком и Шепардом женщиной, сравнивал. Есть в файле слово BIO_ATTRIBUTE_PAWN_GENDER_FEMALE - если заменить его на BIO_ATTRIBUTE_PAWN_GENDER_MALE, забив два поледних байта нулями, то получается Шепард с женской головой и мужской фигурой, но игра вопринимает ее как женщину.
    Другой вопрос. Пройдя игру наполовину, захотелось сменить форму и цвет волос, цвет глаз и прочее. Тоже без понятия, как это сделать. Есть файл с темноволосым Шепардом и блондином Шепардом, но как найти байт, отвечающий за цвет? Чистым просмотром не удалось выявить

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Воскресенье, 18 Январь 2015 19:43

    Дмитрий! Считаю наиболее рациональным вариантом начать заново ME1 с нуля, но искусственно синтезировать себе очки умений и наличные средства с помощью описанных мною методик. Тогда получится, что Вы выберете нового персонажа/внешность/класс, но не потеряете "регалии" предыдущего прохождения.

    stn, когда я писал, что заголовок "нестандартный", я хотел подчеркнуть, что - увы! - не каждый архиватор, умеющих создавать ZIP, подойдёт для нашей методики. К разработчикам в данном случае никаких претензий :)

    По поводу смены пола. Я пробовал заняться этой проблемой. Поняв, что за значение пола отвечает далеко не один байт, оставил эту затею до лучших времён. Поговаривают, даже есть возможность так хитро поменять сохранение, что главный герой с женским лицом закрутит роман с Эшли :)

    Что касается смены внешности в середине игры. Честно говоря, планирую через пару месяцев написать серьезную статью на эту тему, но не обещаю. Пока могу по-секрету поделиться следующей скудной информацией: "стандартный" внешний вид хранится в сейвах совершенно иначе, нежели сгенерированный пользователем. А чтобы получить доступ к таким тонким элементам настройки как цвет глаз и причёска, необходимо работать со сгенерированной моделью.

    Пожаловаться
  • Дмитрий

    написал Дмитрий

    Понедельник, 26 Январь 2015 16:38

    Я немного другое имел в виду. Мне хотелось бы сохранить внешность из своего первого сейва, но изменить прошлое и класс. На new game + плюшки мне плевать.

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Вторник, 03 Февраль 2015 20:39

    Тогда, возможно, я не понял вопрос.

    Пожаловаться
  • Smileone

    написал Smileone

    Среда, 01 Апрель 2015 21:23

    Очень много интересного прочел. За исключением неприкрытого хейта феменисток, но с этим автор справится. А также приравнивание движка к особенностям персонажа, к примеру же по которому у нас Лиара имеет один глаз больше другого, мы же не назовем ее из-за этого уродиной чистокровной? Ну вот. Да и класс Солдата, когда вырезаем психопата Врекса, остается единственным близким к должности танка в пати. Так что все норм. И Врекс тоже. Если правильно его готовить. Все таки 12 летний возраст - решается временем. Вот интересно другое где бы тут внешность можно выудить в этом файлах? К примеру, создал персонажа, фейс понравился но, к примеру, не ту предисторию или класс указал. Сменить вроде бы надо, но фейс второй раз не сделаешь. Надо бы найти где-нибудь строки фейса, чтобы их можно перенести в другой файл.

    Пожаловаться
  • GarKain

    написал GarKain

    Среда, 15 Апрель 2015 17:18

    Согласен с Smileone мне бы хотелось оставить стандартное лицо шепарда, но изменить шрам. Обычными возможностями игры такое не сделаешь.

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Суббота, 18 Апрель 2015 22:41

    К сожалению, это сложная задача. Дело в том, что в сохранениях Mass Effect прописывается или набор черт внешности Шепарда, или факт (!) стандартной внешности. Следовательно, или вы выбираете нестандартное лицо и дальше творите с ним что угодно, или же вы выбираете стандартное лицо, тогда оно остаётся неприкосновенным, а воздействовать на него рычагов нет.
    Были попытки средствами редактора внешности воспроизвести "стандартную" внешность - все они провалились. Это должно наталкивать нас на мысль, что для редактирования стандартной внешности Шепарда не достаточно изменения сохранений. Надо копать глубже.

    Пожаловаться
  • Mike

    написал Mike

    Понедельник, 20 Июль 2015 01:04

    А если хочется отредактировать навыки самого Шепарда?

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Понедельник, 20 Июль 2015 16:17

    Хм. А зачем их редактировать? Их надо развить по-максимуму, вот и все дела.

    Пожаловаться
  • Revelation

    написал Revelation

    Четверг, 23 Июль 2015 23:48

    Здравствуйте, Владимир. У меня такой вопрос: создал адепта и взял ему дополнительным навыком дробовики (сейчас дробовики прокачаны у моего героя на максимум), но можно ли отредактировать сохранение так, чтобы вместо дробовиков были автоматы (т.е. только заменить одну эту способность на другую)? И если можно, то в каком файле и что именно?
    Заранее спасибо за ответ, а то новую игру начинать не хочется.

    Пожаловаться
  • Алексан

    написал Алексан

    Четверг, 19 Ноябрь 2015 23:01

    Здравствуйте,Владимир. У меня такая проблемма, делаю всё так как описанно - получаемый файл *.zip, который надо переименовать в *.MassEffectSave, переименовываю через свойства. Но при перетаскивании в папку c:/Documents and Settings/имя/Мои документы/BioWare/MassEffect/Save/ иконка файла остаётся от WinRAR и в графе тип файла у всех файлов - файл "MASSEFFECTSAVE" ,а у моего - Архив ZIP - WinRAR и игра его не видит. Что я делаю не так?

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Пятница, 20 Ноябрь 2015 14:42

    Добрый день!
    Переименовывать через свойства - не очень хорошая идея. Боюсь, Вас обманывает Windows. Установите нормальный файловый менеджер, чтобы видеть результат своих действий (Total Commander или аналог), тогда можно будет нормально переименовывать файлы по нажатию F6.
    Сейчас могу только посоветовать убедиться, что у Вас в Проводнике выбрано отображение расширений файлов и отображение стандартных расширений; убедитесь, что файл называется *.MassEffectSave, а не *.MassEffectSave.ZIP.

    Пожаловаться
  • Алексан

    написал Алексан

    Пятница, 20 Ноябрь 2015 17:09

    В яблочко. Спасибо, помогло!

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Пятница, 20 Ноябрь 2015 20:26

    Мои поздравления! Я очень рад, что помогло.

    Пожаловаться
  • Андрей

    написал Андрей

    Суббота, 14 Октябрь 2017 14:01

    Владимир, выручайте, если это возможно. Хотел перепройти МЕ1...
    Хотел на этот раз развить любовную линию с Эшли, но не понял как и что, ко мне приходит только Лиара. Как поменять в середине игры этот нюанс. и вообще, возможно ли это?
    Или пройти до конца и только в МЕ 2 через редактор. Хотелось бы именно в МЕ 1 поменять

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Понедельник, 16 Октябрь 2017 11:04

    Добрый день!
    К сожалению, эта задача не кажется мне легко решаемой. Гораздо проще будет начать заново проходить ME1.
    Ведь тут надо будет не просто какой-то байт поменять, который отвечает за факт развития романтической линии, а надо будет ещё подправить все результаты событий, которые должны были случиться с этим новым объектом.

    Пожаловаться
  • Осока

    написал Осока

    Вторник, 10 Апрель 2018 13:15

    Добрый день!
    Подскажите, пожалуйста, а есть ли возможность поменять класс персонажа в середине игры? Либо же как-то воспроизвести внешность. Прошла игру штурмовиком, теперь хочется пройти биотиком, но с тем же лицом, что было при первом сохранении. Вижу два пути для решения: перенести персонажа в новую игру и изменить класс на желаемый, либо же создать персонажа нужного класса и поставить ему старое лицо. Самостоятельно в редакторе воспроизвести лицо, увы, не получается.
    Надеюсь на вашу помощь.

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Среда, 11 Апрель 2018 23:11

    Осока, здравствуйте!
    Клонировать лицо из сохранения в сохранение - это целая проблема, про которую можно снимать драматический сериал.
    Замена класса персонажа навскидку выглядит более заманчиво, но тогда я не представляю, как менять очки опыта и таланты (они же вроде привязаны к классу?).
    Надо подумать.

    Пожаловаться
  • Guner

    написал Guner

    Понедельник, 14 Май 2018 16:40

    Здравствуйте. Хотел бы узнать, где в коде найти текущий уровень персонажа, и можно ли в данном сохранении снять ограничение до 50 лвла. Достижение по прохождении и достижении 50 лвл получил, но новый персонаж не качается дальше 50-го. Зарание спасибо за ответ.

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Среда, 16 Май 2018 23:09

    Добрый день!
    Хороший вопрос. Тут всё очень забавно: чтобы найти уровень, достаточно объявить поиск по заданному числу "50" и выбрать наиболее подходящий вариант (их будет несколько). С пятой попытки обычно получается :)
    Но вот что касается ограничений, тут сложнее - надо найти переменную, которая отвечает за порядковый номер прохождения игры. Ибо ограничение в 50 устанавливается только для первого прохождения.

    Пожаловаться
  • Den

    написал Den

    Вторник, 03 Август 2021 02:46

    Интересует редактор переменных по вспомогательным заданиям.
    Пример: протеанская сфера на Элетании не доступна, если вначале игры на Цитадели сдал задание сначала Спутнице, а потом элкору. Обидно терять данные из-за таких подвохов от разработчиков. Но и играть прочитав сначала всю вики тоже не хочется. Редактор помог бы.

    Пожаловаться
Авторизуйтесь, чтобы получить возможность оставлять комментарии
Go to top