aliast Опубликовано 25 апреля, 2010 Поделиться Опубликовано 25 апреля, 2010 Сложность: средняяНеобходимые программы: Mozilla Firefox (для простоты скачивания flash-игр с сайтов) flash-декомпилятор Flasm (http://www.nowrap.de/flasm.html) flash-плеер AR FlashPlayer (http://www.vector-sk...flashplayer.htm)Для начала нужно обязательно скачать игру с сайта. Сделать это можно с помощью браузера Firefox как-то так: Правый клик мышкой>View page info или Tools>Page Info. Кликаем на media. Находим .swf файл игры. Выбираем Save As (сохранить как) и сохраняем файл в папке с установленным декомпилятором flasm.Теперь давайте запустим игру в плеере AR FlashPlayer и дойдём до того момента, когда на экране появится то, что мы хотим взломать. Я ломал игру Elf Girl Sim Date RPGКартинкаОбратите внимание на номер фрейма, отображённый в панели с кнопками: Frame 1101. Это нам пригодится.Далее, находясь в папке flasm набираем в командной строке: flasm -d ageofwar.swf > aow.txtЗдесь ageofwar.swf - скачанный с сайта файл игры. Замените его на имя своего файла игрыaow.txt - в этот текстовик будут записаны выходные данные (декомпилированный код игры). Имя файла не имеет значенияКак открыть командную строкуПредположим, что flasm находится в папке C:Flasm.1. Заходим в Пуск-Выполнить, набираем cmd, нажимаем Enter2. Набираем команду cd c:flasm и переходим в папку с программойОткрываем полученный текстовик. Ищем в тексте строку frame 1101 (номер фрейма взят из окна AR FlashPlayer). Находим что-то похожее на это: Код фрейма 1101frame 1101 constants '_root', 'str', 'cha', 'spe', 'mag', 'per', 'rom', 'available' stop push '_root' getVariable push 'str', 1 setMember push '_root' getVariable push 'cha', 1 setMember push '_root' getVariable push 'spe', 1 setMember push '_root' getVariable push 'mag', 1 setMember push '_root' getVariable push 'per', 1 setMember push '_root' getVariable push 'rom', 1 setMember push '_root' getVariable push 'available', 54 setMember end // of frame 1101Как можно догадаться, тут происходит инициализация начальных параметров: шесть единичек и 54 очков для распределения. Остаётся лишь изменить эти цифры на желаемые и сохранить изменённый текстовый файл. Теперь собираем новый swf-файл командой flasm -a aow.txt. Должен появиться новый файл с расширением .$wf. Меняем $ на букву s и можно приступать к игре со взломанными характеристиками.Аналогично можно взломать количество здоровья и денег. В том же фрейме 1101, но чуть выше, инициализируются начальные деньги: Кусок кодаpush 'hp', 100 setMember push '_root' getVariable push 'gold', 100Меняем их, пересобираем флэшку указанной выше командой и наслаждаемся PS взломать игру с помощью стандартных Artmoney, Cheat Engine я так и не смог... Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 26 апреля, 2010 Поделиться Опубликовано 26 апреля, 2010 ...А искать сканерами памяти, точнее теми которые сейчас существуют бесполезно потому, что с каждым изменением данные (вероятно любой тип данных находящийся в текстовом формате с описанием типа):а) вероятно меняют своё местоположение в памятиб) упаковываются и распаковываются при каждом измененииИзменить данные извне можно специальной функцией зная имя параметра. Только я уже подзабыл что это за функция. Берём любую среду разработки (Delphi,VC++, даже думаю C#...) импортируем ActiveX компонент флеш-плеера, в него загрузим флешку и его функцией изменим некоторый параметр по названию. Когда-то давно я это делал ради эксперимента. Ссылка на комментарий Поделиться на другие сайты Поделиться
aliast Опубликовано 26 апреля, 2010 Автор Поделиться Опубликовано 26 апреля, 2010 Ещё один способ взлома Flash-игр. В этом способе не будет модифицироваться оригинальный файл игры. Вместо этого будем создавать новую флэшку в среде разработки Macromedia Flash Professional 8, получится что-то вроде тренера. Взломанные параметры не просто изменятся, как в предыдущей статье, но и заморозятся, перестанут изменяться.Необходимые программы: среда разработки Macromedia Flash Professional 8Открываем Macromedia Flash Professional 8, создаём новый файл (Flash Document)Внизу в окне Actions - Frame пишем LoadMovieNum ("game.swf ", 1, "POST");где game.swf - название флэшки с игройкартинкаСохраняем получившийся файл в ту же папку, где лежит флэшка с игрой. Можно запустить флэшку, нажав Ctrl+Enter - если всё сделано правильно запустится игра.Открываем в игре экран, на котором показаны взламываемые характеристики и нажимаем меню Debug->List Objects (Ctrl+L в окошке с игрой). Должно появиться окно Output, а в нём имена наших переменных:КартинкаЗапоминаем эти имена и закрываем окно с игрой. Создаём мувикклип, нажав Ctrl+F8. Даём мувику некоторое имя, тип ставим "Movie clip".Теперь нужно перетащить созданный мувик-пустышку на нашу сцену. Для этого нажимаем сверху над шкалой кадров надпись Scene 1, появится белый прямоугольник - экран нашей флэшки. Нажимаем Ctrl+L. Сбоку развернётся компонент Library, в нём должен находиться созданный мувик. Хватаем его и перетаскиваем на белый прямоугольник. На листе появится такое перекрестье прицела. Нажимаем на прицел и внизу пишем код:onClipEvent (enterFrame) { _level1.str = 250; _level1.cha = 250; _level1.spe = 250; _level1.mag = 250; _level1.per = 250; _level1.rom = 250;_level1.available = 0; }картинкаИмена переменных взяты из окна Output. Строка _level1.available = 0 нужна, чтобы сразу начать игру, иначе придётся ещё распределить 54 очка, а у нас и так уже всё по максимуму.Опять нажимаем Ctrl+Enter и проверяем, удался ли взлом. В папке с игрой должен появиться созданный файл-тренер .swf. Каждый раз при его запуске все статы будут заморожены на значении 250. Ссылка на комментарий Поделиться на другие сайты Поделиться
aliast Опубликовано 26 апреля, 2010 Автор Поделиться Опубликовано 26 апреля, 2010 Ну и наконец нашлась программа-сканер памяти специально для Flash - Variable engine 2.0 (http://drkgodz.hobo-...og/?page_id=224). Сканер жутко неудобный в использовании, но работает! Сканер умеет искать значения, может выводить список всех переменных и ещё много чего. Но пользоваться им жутковато...1. Продолжаем ломать elf-girl-sim-date-rpg.swf. Открываем сканер, внизу жмём Browse (1 на картинке), загружаем флэшку, давим Load (2). Открывается игра... по идее можно ломать игры напрямую с сайтов, но что-то у меня не получилось..2. Доходим до экрана создания персонажа. Ломаем, к примеру 54 очков для распределения. Нажимаем справа сверху вкладку Load hacks (3), вводим 54 в поле под кнопкой Search Value, жмём эту кнопку (4). Нашлась одна переменаая "available". Выделяем её и давим Add to Cheat Table (5).3. Теперь переходим на вкладку Advanced (6). Здесь видим добавленную переменную available. Чтобы её изменить, нужно опять выделить её. При этом снизу появится цифра 54, а рядом флажок Freeze. Ставим этот флажок (1). Теперь можно изменить 54 на что угодно. Или так и оставить 54, как хотите. Флажок заморозки также можно оставить или убрать. В программе есть странный глюк - значение невозможно изменить, не поставив флажка заморозки. Чтобы вернуться в игру, выбираем сверху Invisible (2)Вроде ещё можно сохранить взломанные переменные в файл. Я пока не разбирался.. аналогично ломаются остальные цифры в игре. Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 27 апреля, 2010 Поделиться Опубликовано 27 апреля, 2010 С Macromedia Flash Professional 8 хороший вариант, я про него не подумал.ПО Flash - Variable engine 2.0 все было бы хорошо, но изменённые этой программой значения иногда превращается в текст.Было "10" очков.Изменили "10" "Flash - Variable engine 2.0 " на "200".В игре в процессе игры добавляется 5 и видим не 205, а "205+5" Ссылка на комментарий Поделиться на другие сайты Поделиться
ArxLex Опубликовано 27 апреля, 2010 Поделиться Опубликовано 27 апреля, 2010 А есть такой инструмент, которым можно было взломать онлайн игры (Счастивый фермер, Парковка и др.)? Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 27 апреля, 2010 Поделиться Опубликовано 27 апреля, 2010 Нет. И советую таких вопросов больше не задавать. На нашем форуме мы не затрагиваем взлом онлайн-игр. Ссылка на комментарий Поделиться на другие сайты Поделиться
ArxLex Опубликовано 27 апреля, 2010 Поделиться Опубликовано 27 апреля, 2010 Понятно. Таких вопросов больше не будет, надеюсь Ссылка на комментарий Поделиться на другие сайты Поделиться
aliast Опубликовано 27 апреля, 2010 Автор Поделиться Опубликовано 27 апреля, 2010 Изменить данные извне можно специальной функцией зная имя параметра. Только я уже подзабыл что это за функция. Берём любую среду разработки (Delphi,VC++, даже думаю C#...) импортируем ActiveX компонент флеш-плеера, в него загрузим флешку и его функцией изменим некоторый параметр по названию. Когда-то давно я это делал ради эксперимента.А функция эта SetVariableНа ютубе куча видеотуториалов по этому способу. Вставляется на форму объект Shockwave Flash, в его свойствах прописывается ссылка на файл swf на сайте. Ставится кнопка. В событии кнопки OnClick пишется всего одна строка кода: Call ShockwaveFlash1.SetVariable("_root.str",250);где ShockwaveFlash1 - имя объекта со вставленной флэшкой; такое имя у него будет по умолчанию (в VB)_root.str - имя взламываемой переменной250 - новое значение переменной Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 15 ноября, 2010 Поделиться Опубликовано 15 ноября, 2010 Статья про взлом флеш-игр на английском. Всё что тут написано старо, но можно обратить внимание на пятый и шестой пункт ближе к концу статьиHacking flash games with CE This is a small description on how to find values in flash games generally. It does not cover the tutorial on how to find values, only the part which is unique to flash games.First of all, flash games are working differently from other games, so the usual pointer, code injection methods etc will not work here (or at least not as You would expect). CE is by far not the best choice to hack a flash game, that is why universal flash trainers were created. I rarely play and hack flash games, so this is not a professional tutorial, just some methods that You may try if You are stuck.Because most of the users are thinking about Flash games that they work as normal games, I will explain it in a few words what is the difference. If You hack a normal game, You just start the exe file, than You do the usual hacks and when You get back, the code will remain the same. The exe file is not changing. However if You update the game, of course the exe file will change in the new version and You will have to make another trainer based on the new codes (or use AOBscan but that is a "special" method). So how are flash games working? Usually You start the browser, the browser will load the flash player plugin and the flash player plugin will run the swf file. So when You try to hack the game, You try to hack the browser or flash player, which is using the swf file. Now if You try to make a trainer, You will obviously have to think about this question: will other people use exactly the same browser and flash player plugin as me not to mention browser updates and other kind of plugins and system components which is related to the browser? Well, not. Their browser will be different at least in one little thing, the codes and pointers will be different on their computers so the idea of making a working trainer which is based on code injection or pointers is generally screwed. It is just like everyone would use a special version of the game which is different from Yours. All You can do is to make some pointers which will work with Your browser on Your computer at least until You don't update or install anything in it, or You can use AOBscan to write a script which is searching for specific codes and change them with code injection. Using code injection with flash games is much harder so if You choose that method, You have to be really good. Now lets continue...Important note from CE's creator (DarkByte):If you're using firefox and want to use Cheat Engine on a browser game, then open plugin-container.exe instead of the firefox process. (That process will only exist when the game has already been started)If You want to find a value in a flash game with CE, these are the main methods that are usually working:1. Search for the value as a "4 byte" value. This is simple enough and it is working with most of the new games which has been written in AS3.2. Search for the value as a "Double type" value. Some older flash games are using double type values to store the variables.3. Search for the value as a "4 byte" value, but multiply the value with 8 when You search for it. For example You have 100 gold in the game, then You need to search for 800. If You have found it and You want 10000 gold, You need to change it to 80000. If You type in a value which cannot be divided with 8, most likely You will crash the game.4. Remember there is an option in CE to search for ALL value types, so if You don't have a clue, try it out. It may be Double, 4 byte, whatever.5. Some games are always changing the address of the values, in this case You need to find the value from 1 search. Most of this games are multiplying the value with 8, so You need to use the 3rd method, but You have only one shot at it to find it and the address will be moved. You also need to pause the game with CE to prevent the game from moving the address elsewhere until You find it and change it. To pause the process, click on "Advanced options" at the bottom of CE and click on the pause button. Then search for the value and if You find it, change it. If not, or You have too many results, try it again. Generally the bigger the number that You search for, the less results will be. For example if You search for 8, You will have tons of results. If You search for 3635384, You will have far less, most likely only a few (or maybe only one result which is the best).6. Some games are using encryptions to protect the game from hackers. In this case, You can still search for unknown value and changed/unchanged values. Maybe You will find what You seek.That is all I can recommend for now.Peace!Geri-Источник: szemelyesintegracio.hu Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость kolhosnichello Опубликовано 30 августа, 2017 Поделиться Опубликовано 30 августа, 2017 Можно пожалуйста новую ссылку на variable engine 2.0. Невозможно скачать по указанной ссылке. Ссылка на комментарий Поделиться на другие сайты Поделиться
ReWanet Опубликовано 30 августа, 2017 Поделиться Опубликовано 30 августа, 2017 9 минут назад, kolhosnichello сказал: Можно пожалуйста новую ссылку на variable engine 2.0. Невозможно скачать по указанной ссылке. Опубликовано: November 15, 2010 Семь лет прошло уже Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения