Изменения

Категория:Супер Винни-Пух

1713 байтов добавлено, 23:43, 27 декабря 2011
м
Нет описания правки
[[File:Super Winnie pooh start.png]]
«Супер Винни-Пух» — Пух» — старая игрушка под DOS 1996-го года, FaMe SoftWare, автор Михаил Витальевич Братусь. :-)
Ссылка на страничку игры на вебархиве: http://web.archive.org/web/20001207144400/www.chat.ru/~miguello/pooh.htm
[[Media:SuperWinniePooh.rar|Полная версия (1.23 Мб)]]
 
{{WikiCutBegin|Алгоритм генерации паролей к игре}}
 
Алгоритм простенький, пароль включает номер уровня (1-7) и количество монеток (0-1020, хотя на старте даёт максимум 976), но оно сохраняется с точностью до 4 монеток, т.е. диапазон сохраняемого значения 0-255 = 1 байт. В количество монеток предварительно закладываются имеющиеся на момент окончания предыдущего уровня спецпредметы (за разные даётся 200 / 100 / 50), за шишки вроде по 1 монетке, за ещё что-то по 5 монеток (за медок?).
 
# Первая буква случайная от А до Й: <tt>parol[0] = 0x80 + rand()*10/RAND_MAX</tt>
# Потом нижние 4 бита числа монеток: <tt>parol[1] = parol[0] + (coins>>2) & 0xF</tt>
# Потом верхние 4 бита числа монеток: <tt>parol[2] = parol[0] + (coins>>6) & 0xF</tt>
# Потом номер уровня: <tt>parol[3] = parol[0] + level</tt>
# Потом контрольная сумма - сумма кодов всех букв по модулю 16: <tt>parol[4] = 0x80 + (parol[0] + parol[1] + parol[2] + parol[3]) & 0xF</tt>
 
Таким образом, есть, например, следующие пароли с максимальным числом монеток для всех уровней:
# АППБП
# АППВА
# АППГБ
# АППДВ
# АППЕГ
# АППЖД
# АППЗЕ
 
{{WikiCutEnd}}