Разработка и ромхакинг > Ромхакинг и программирование
[GB] Contra: The Alien Wars - генерирование паролей
(1/1)
Awl:
Дело было вечером, делать было нечего. Недавно я играл в контру на GB. После Hard'а я решил пройти сложность Maniac, но застрял на одном из уровней (жизей мало и continues равны нулю). Так и возникла идея взломать систему паролей.
 
Теория

Пароль состоит из 4 позиций и 18 битов. Эти биты сохраняют данные игровые параметры: 

* текущий уровень (2-5)
* сложность (Easy/Normal/Hard/Maniac)
* количество жизней (0-7)
* количество continues (0-3)
* количество бомб (0-5)
* оружие персонажа (Machine gun/Flamethrower/Homing gun/Spread gun/Crush gun)
Сырой пароль

Sum = C1,C0,D1,D0,G2,G1,G0,S2,S1,S0,Cn1,Cn0,B2,B1,B0,L2,L1,L0

Обозначения

D — номер сложности (0-3) в двоичной системе счисления.

НомерСложность0Easy1Normal2Hard3Maniac

G — номер пушки (0-4) в двоичной системе счисления.

НомерПушка0Machine gun1Flamethrower2Homing gun3Spread gun4Crush gun

S — номер уровня (1-4) в двоичной системе счисления.

НомерУровень12233445

Cn — количество continues (0-3) в двоичной системе счисления.
B — количество бомб (0-5) в двоичной системе счисления.
L — количество жизней (0-7) в двоичной системе счисления.
C (контрольная сумма) = количество активированных битов по mod 4.

Генерация пароля

После вычисления контрольной суммы, к Sum применяется операция XOR с числом 0xC1.
Потом полученная Sum записывается в позиции:

1 позиция = (((Sum div26)div 26)div 26) mod 26
2 позиция = ((Sum div26)div 26) mod 26
3 позиция = (Sum div26) mod 26
4 позиция = Sum mod 26

Кодирование

US/JP/EU: 1BCD2FGH3JKLMN4PQRST5VWXYZ

Удачи, спасибо за прочтение.
ALXR:
Ну хотя бы скрипт/программу выложил какую, которая это делает. Описание не все поймут.
CaH4e3:
http://cah4e3.shedevr.org.ru/gb_cheats.php#184 зря старался. в игре все встроено лол
Awl:

--- Цитата: ALXR от 15 Январь 2017, 22:06:38 ---Ну хотя бы скрипт/программу выложил какую, которая это делает. Описание не все поймут.

--- Конец цитаты ---

Я плоховато пишу программы, поэтому решил ограничится таким описанием.

Добавлено позже:

--- Цитата: CaH4e3 от 15 Январь 2017, 22:15:53 ---http://cah4e3.shedevr.org.ru/gb_cheats.php#184 зря старался. в игре все встроено лол

--- Конец цитаты ---

Количество continues с помощью вшитых паролей не увеличишь, а так Вы правы.
CaH4e3:

--- Цитата: Awl от 16 Январь 2017, 18:43:00 ---Я плоховато пишу программы, поэтому решил ограничится таким описанием.

Добавлено позже:
Количество continues с помощью вшитых паролей не увеличишь, а так Вы правы.

--- Конец цитаты ---
зачем количество континуев, если есть бесконечные жизни!?
Awl:

--- Цитата: CaH4e3 от 17 Январь 2017, 22:50:28 ---зачем количество континуев, если есть бесконечные жизни!?

--- Конец цитаты ---

Так будет слишком легко.
CaH4e3:
слишком легко, чтобы играть, но без этого слишком сложно, чтобы решить взломать систему паролей? лол
ты либо крестик сними, либо трусы надень чтоли лол (с) не мое
Awl:

--- Цитата: CaH4e3 от 21 Январь 2017, 18:38:38 ---слишком легко, чтобы играть, но без этого слишком сложно, чтобы решить взломать систему паролей? лол
ты либо крестик сними, либо трусы надень чтоли лол (с) не мое

--- Конец цитаты ---

Вот такой я "сложный" человек.  :D
Навигация
Главная страница сообщений

Перейти к полной версии