Искусство взлома: SpellForce

По просьбе трудящихся пишу про то, как взламывать те или иные характеристике в одной из лучших RTS/RPG - SpellForce.

Гайд написан добрыми людьми с официального форума SpellForce для первой части игры – The Order of Dawn. Однако отмечу, что подход, описанный ниже можно использовать и для других похожих игр (естественно с поправками).

И последнее дополнение. Гайд предполагает умение использовать программу модифицирования игровых переменных – ArtMoney. Если у вас старая версия тогда советую скачать обновление – иначе, ArtMoney просто не обнаружит процесс SpellForce без использования дополнительного софта (Process Explorer).

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

Запускаем SpellForce, загружаем сохранение, в котором находится персонаж. Открываем окно характеристик персонажа. Здесь можно сделать скриншот экрана.

Нажимаем Alt+Tab для уменьшения SpellForce. Открываем Paint и вставляем получившиеся скриншот (Ctrl+V или правой кнопкой мыши + вставить). Теперь нам не придется записывать на бумагу или снова заходить в игру во время взлома.

Открываем ArtMoney, выбираем процесс SpellForce – The Order of Dawn (не забыли, взламываем именно эту игру?). Далее нажимаем кнопку Search (Поиск) в верхнем поле выбираем Sequence of Values (Последовательность значений). Выбираем в количестве значений – 7. Тип – Custom (Собственное). Откроется новое окно. Тут отмечаем тольоко один тип байт – Integer 2 bytes (Целое 2 байта). Тип – Integer (Целое), Порядок бит – Normal (Нормальный). Нажимаем Ok.

Снова откроется первое окно поиска, тут тоже нажимаем Ok. Появится новое окно с табличкой из 7 строк. В каждую строчку по отдельности нужно написать названия характеристик как они идут в игре:

Agility
Charisma
Dexterity
Intelligence
Stamina
Strength
Wisdom

К сожалению, я не знаю работает ли это в переведенной игре, однако если не получится с английскими характеристиками, можете попробовать с русскими как они отображаются в игре. Нажимаем Ok.

После сканирования памяти ArtMoney выдаст с несколькими результатами, обычно последний правильный (не всегда, возможно придется сделать сканирование несколько раз). Вот файл с таблицами ArtMoney, который сохранит вам время на поиски. Загружаем таблицу. (Для этого нужно нажать кнопку Load находящуюся внизу основного окна ArtMoney). Таблица предназначена только для SpellForce: The Order of Dawn! Если у вас дополнение тогда вам, скорее всего, придется искать все данный самому.

Загрузив табличку вы обнаружите в ней несколько десятков значений, вроде Avatar Level, Avatar name, Base agility и другие. Выберите последний адрес в левой колонке ArtMoney (тут находятся просканированный вами данные) выберите первый адрес в правой колонке (Avatar Level) и нажмите Alt+A. Это заполнит таблицу найденными вами адресами и значениями. Посмотрите внимательно на таблицу, здесь должны быть резисты персонажа, скорость движения/кастования заклинаний, способности персонажа а так же несколько адресов со значением 255 – это свободные слоты для новых способностей.

Для проверки, попробуйте изменить уровень вашего персонажа – если после перехода в игру уровень не изменился тогда возвращаемся а ArtMoney, выбираем в левой колонке новый адрес, справа выбираем первое значение и опять жмем Alt+A. Продолжайте пока не найдете нужный адрес.

А теперь конкретно к изменению характеристик. Прежде чем создавать своего Апполона подсчитайте, сколько у персонажа в целом характеристик (сложите все хар-ки). Получившееся числобудет показывать то, сколько у персонажа должно быть характеристик в целом. Если превысить это количество, тогда после получения уровня вы не сможете добавить новые очки. Да, и не снижайте характеристики ниже 25 – это базовые значения.

Изменение Сопротивления/Скорости бега/Боя/Кастования

Эти значения можно без проблем изменять вплоть до 255. Если же вы захотите пойти выше, тогда вам придется поменять тип адреса с 1 бита до 2. Если вы смените тип, тогда в следующий раз, когда вы будете сканировать память, это значение не отобразится в результатах. Так что решайте раз и навсегда.

Редактирование Способностей

Это часть тоже достаточно проста. Каждая способность представляет из себя три адреса – Тип Способности, Субтип и Уровень (до 12). Смотрим в ArtMoney, предположим персонаж прокачал Луки до 2 уровня, Дальний Бой так же 2 уровня. Три адреса этой способности будут выглядеть так:

 

3
0
2

 

и


3
1
2

 

Каждая способность имеет собственный адрес, значит три значения будут иметь один адрес. А вот список того, что означают те или иные цифры в способностях.

Тип Способности:

Легкий Бой = 1

Тяжелый Бой = 2

Дальний Бой = 3

Белая Магия = 4

Элементальная Магия = 5

Магия Разума = 6

Черная Магия = 7

 

Субтипы:
(1)
Проникающее оружие = 1
Легкие Клинки  = 2
Легкое Тупое Оружие = 3
Легкая Броня = 4

 

(2)
Тяжелые Клинки  = 1
Тяжелое Тупое Оружие = 2
Тяжелые Доспехи = 3
Щиты = 4


(3)
Луки = 1
Арбалеты = 2

 

(4)
Жизнт = 1
Природа = 2
Бафы (Boons) = 3

(5)
Огонь = 1
Холод = 2
Земля = 3

(6)
Чары = 1
Атакующая = 2
Защитная = 3

(7)
Смерть = 1
Некромантия = 2
Проклятие = 3

 

Так вот, с нашим примером Ренджера (Дальний бой 2, Луки 2) его адресная память способностей будет выглядеть примерно так:

 

3
0
2
3
1
2
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255

 

Все значения 255 показывают 8 способностей сгруппированных по три. Присмотритесь к первой группе:

 

3
0
2

 

Ноль по середине показывает, что это тип (Дальний Бой) способности, а не субспособность. Если заменить в первой группе 0 на 1, а группу субспособности (3,1,2) заменить на 255, 255, 255, тогда SpellForce все равно покажет, что вы владеете Луками – это защита от дурака, игра автоматически создаст Способность основываясь на известных ей значениях (наличие луков). При этом скиллы требующие конкретных способностей (Дальний бой который мы удалили), которых у вас как бы нет, использовать не получится – необходимо реальное наличие в памяти способностей, а не те, что генерируются игрой.

 

Вот пример нашего Ренджера с луками прокачанными до 12, и всеми субтипами магнии так же на 12 уровне (кроме Элементальной):

 

3
1
12
4
1
12
4
2
12
4
3
12
6
1
12
6
2
12
6
3
12
7
1
12
7
2
12
7
3
12

 

Как вы можете видеть, ни в одной группе нет значения 0 посередине – это означает, что у персонажа нет Способностей, только полезные субспособности. Желательно держать все субспособности сгруппированными по способностям, дабы не создавать лишней путаницы для игры.

Вот и все. Прежде чем изменять своего персонажа не забудьте сделать сохранение. Так же еще раз повторюсь, таблица представленная выше создавалась для The order of Dawn, в других играх она скорее всего не будет работать и вам придется отыскивать необходимые параметры самостоятельно путем проб и ошибок.

Пишите вопросы ниже.

Больше статей на Shazoo
Тэги: