|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Янв 1, 2004 12:53:56 Игрушка, сохраненки которой практически невозможно изменить из-за страшно хитрого шифрования. Может, кто-нибудь сталкивался? Кроме всего прочего, при запуске SI без ID выдает "Debugger found"... |
|
|
Дата: Янв 1, 2004 14:38:40 Sharp Если тебя интересует как поставить кучу денег, то исследовать ничего не нужно. В начале игры берешь отправляешь двигатель на продажу. Вместо того чтобы сразу кликнуть на ОК, переключаешься в винду, запускаешь ArtMoney и ищешь число денег предлагаемое за двигатель. Таких значений будет не много. Берешь и правишь их все на минус_желаемое_количество_денег. После чего жмешь в игре ОК, а затем покупаешь двигатель назад. Только очень много денег ставить не стоит, так как количество денег у других зависит от количества денег у игрока. В результате они скупят все оружие и перебьют всех клисан и игра станет совсем не интересной. |
|
|
Дата: Янв 3, 2004 17:20:55 Скажи конкретно, что в ней тебя интересует? Как править сейв и потом лоадить его? |
|
|
Дата: Янв 4, 2004 04:32:58 Меня интересуют антиотладочные приемы, используемые SR, как IceDump их обходит (к слову, это на него матерится DrWeb - FSAPIHook?) и что за страшный алгоритм шифрования используют SR в своих сейвах. По поводу движка - стоит попробовать, но изменять деньги не так интересно (к слову, прямое изменение денег ни к чему не приводит). Куда как интереснее изменять параметры оборудования. И еще - у них есть не такой уж и большой файл ToServer.dat, предназначенный для чемпионатов. Не имея никаких предосудительных намерений ;) хотелось бы узнать, как он шифруется... |
|
|
Дата: Янв 8, 2004 17:20:56 Объяснения будут довольно пространными в силу того, что на данный момент EXE'шником не распологаю (если интересно конкретно, приаттач EXE): Идея такая: сейв довольно понятного формата, но прога кодит его XOR'ом из какой-то таблицы (не разбирался откуда она берётся), + при лоаде проверяет его контрольную сумму (процедуру проверки сумму можешь посмотреть сам, ниже покажу где она). В общем, так, пользовался я для этого Win32Dasm'ом (идой не распологал, да и не нужна она тут) ключевыми словами были "Save" и "Load". Находишь что-то вроде- "Save", кусок кода,"Load", кусок кода,"Score", кусок кода (порядок следования не помню, может не так). Надеюсь для чего каждый используется- понятно. Где-то после слова "Load" идёт условный jump, который и вырубает пропатченый сейв, что с ним (в смысле с jump'ом) делать, тоже понятно (сделай backup- пригодится). По-моему непосредственно перед jump'ом идёт проверка CRC (не дословно CRC, а в смысле конторольная сумма- долго писать)- небольшая и понятная процедура. Теперь относительно как получить сейв в читабельном виде. Не помню, как, вроде вообще чисто интуитивно смотрел что-то вроде xor byte ptr [e?x],al и нашел. Подряд идут три процедуры xor'енья для byte'а, word'а, и dword'а (стоит сказать, что эти три процедуры встречаются ДВА раза- но я не нашел где вызывается вторая (или первая- не помню) тройка). Ты должен чем-нить убить xor для byte, тут- твоя фантазия. Далее, поправив проверку после "Load'a" и прибив xor,запускаешь SR, создаёшь новую игру и сейваешся. Надеюсь, как опознать сделанный сейв ты знаешь:) Далее стандарт: открываешь его, ищешь свое Имя (встречается вроде 2 раза) и пытаешся понять формат (можешь наделать несколько сейвов с небольшими измененияи и сравнивать). Что я немного помню: описание состоит из 2-х частей: а) технологии (в том числе и корабль), пушки, спец-технологии ... б) (прмоему после слова ship далее от Имени) ранг,награды (прикольная вещь:),навыки (типа торговли, починки ...), и т.д. технологии содержат- код (ID), крутость (1-5), цена, ВЕС, поломанность и параметры зависящие от конкретной технологии, пушки- чуть посложнее (добавляется местоположение на корпусе) думаю разберёшься. спец-технологии- тоже ничего сложного (другое дело: армейский пеленгатор и ментальный комуникатор :). Блин, по сейву вроде всё. Теперь предупреждаю с пропадченого EXE- НЕ ИГРАТЬ. Черевато, как минимум- вылетом, неработоспособностью квестов. Моё решение: подредактировали сейв, запускаем через TD32 SR, ставим бряк на "Save" (выше искали), пытаемся в игре сейвнутся, вылетаем в TD32, восстанавливаем XOR BYTE PTR [E?X],AL, выходим из SR, восстанавливаем оригинальный SR (вот backup и понадобился) и играем с него. Коряво, до ужаса коряво, но все таки первое решение (и последнее- лень). На примере TD32 никакой антиотладки не заметил- спокойно работал. Что до ToServer.dat- не разбирал. Да и зачем- все можно получить через сейв. Если что непонятно- спрашивай. |
|
|
Дата: Янв 11, 2004 12:35:41 а теперб вопрос - нахрен патчить сейвы или поганить exe, если можно той же артмани пропатчить в памяти прямо или свой трейнер написать :) |
|
|
Дата: Янв 11, 2004 20:39:19 2Sem: спасибо, попробую. 2Baron Gede: артмани его не берет, а поменять параметры оборудования вообще нельзя, так как они не меняются между продажей/покупкой |
|
|
Дата: Янв 12, 2004 02:03:45 >Кроме всего прочего, при запуске SI без ID выдает Debugger found"... Просто сам екзешник запакован ORiEN`ом. Это такой пакер. Распаковывается легко, но SR потом проверяет контр. сумму, где точно не помню, если надо, пиши. У меня расспакованый экзешник пашет нормально, менять там можно чего угодно. |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.101 |