В этом моде я сделал то, что никто не делал (а точнее я не видел такого, может существует )...
Я добавил некоторые полезные классы в KEmulator.jar, немного подправил класс Graphics через редактор байт-кода, добавил класс javax.microedition.lcdui.ImageSaver и... теперь этот эмулятор имеет функцию кеширования всех картинок, которые рисуются на экране через Graphics.drawImage(Image,int,int,int), другие функции Graphics пока не правил, поэтому некоторые картинки не кешируются
Все картинки складываются в savedImages/ с своим номером, начиная с 0.png
Да, я смог без анализирования алгоритма шифровки ресурсов и т.д. достать половину картинок из 1 онлайн-игры на Java
Работает по принципу:
(я в байт-коде не силен, и делал на скорую руку, поэтому немного Г-кода)
1. при любом вызове Graphics.drawImage(Image,int,int,int) сначала запускается функция сохранения картинки моего класса (ImageSaver)
2. в той статической функции моего класса картинка сначала проверяется на совпадение с уже сохраненными (Vector buffered), потом если все ок - добавляется к buffered и записывается со своим порядковым номером в png
3. вызывается drawImage2(...), как я уже сказал Г-код
прикрепить сюда файл я не смог (не дождался, нету показателя загрузки ), поэтому вот он (30 дней до удаления)