Wkleiłem ten temat również tutaj bo do newbie nie zaglada tyle osób.
Mam prośbę do osób, które znają się na Javie i powiedzą mi jak mogę edytować plik z rozszerzeniem .class, który znajduje się w grze na telefon komórkowy.
Otóż jestem z innego forum o samsungu avila, mamy dosc nurtujący problem z grami opartymi na akceleratorze ruchu (stroboskop, czy cos, jak zwał tak zwał), gry nie są robione głownie pod ten telefon i dlatego kierunki do sterowania są odwrócone. Dane na temat tych kierunków znajdują się w pliku Accelerator.class i wystarczy że do 3 linijek dodamy znak "minus" (-). Na naszym forum raczej mało osób się na tym zna, ale doszedł do tego jeden koleś i przerobił kiedyś taką gre. Typ gdzieś uciekł bo go nie ma xd a my mamy problem. On ogarnął to w ten sposób:
Pozwoliłem sobie zmodyfikować te grę, aby na Avili działała normalnie ("nie odwrotnie")
Teraz Pacman porusza się w stronę niższej krawiędzi (zgodnie z zasadami grawitacji)
Link: Zaznacz wszystko
http://www.przeklej.pl/plik/pacman-jar-0004pu5791dc
Taki mały reverse engineering za pomocą JAD'a i Samsung SDK
Zmieniłem tylko trzy linijki kodu i działa
W klasie Accelerometer.class było:
public void dataReceived(SensorConnection connection, Data data[], boolean b)
{
m_accX = (int)data[0].getDoubleValues()[0];
m_accY = (int)data[1].getDoubleValues()[0];
m_accZ = (int)data[2].getDoubleValues()[0];
}
a jest:
public void dataReceived(SensorConnection connection, Data data[], boolean b)
{
m_accX = -(int)data[0].getDoubleValues()[0];
m_accY = -(int)data[1].getDoubleValues()[0];
m_accZ = -(int)data[2].getDoubleValues()[0];
}
Miłego grania.
Sam próbowałem się za to brać programem DJ Java Decompiler 3.9 w celu zwykłej edycji, lecz to w końcu dekompilator i nie da sie zapisać dalej w .class.
Jeśli komuś z Was chciałoby się za to zabrać to bylibyśmy bardzo wdzięczni :) Pozdrawiam [browar]