Wprowadzenie kilku zmien w gotowym programie .exe

0

Witam,

Posiadam program .exe, ktory kilka lat temu napisal ktos i nie robil zadnych aktualizacji
Program pisany by ulatwic - zwizualizowac koszty budowania postaci w pewnej grze.

Udalo mi sie przy pomocy programu DD zdekompilowac .exe i wprowadzic kilka zmian juz w Delphi 6,
pozmienialem calkiem design, dodalem kilka opcji do ktorych nie przypisalem zadnego dzialania.

Niestety nie wiem dlaczetgo program nie odpala sie. W sumie powinienem zaczac od tego , ale to moja pierwsza stycznosc z delphi i poruszam sie w tym po omacku wiec i tak sam jestem zdziwiony, ze udalo mi sie tyle zrobic , tyle czyli nic poza designem i kilkoma zmiennymi.

Dlaczego Delphi ? ? Sprawdzilem w czym program zostal napisany, zreszta tak siedze do kilku dni przy tym i wydaje mi sie ,ze calkiem latwo mozna cos napisac.

Opisze co mnie interesuje by zmienic,

Aby zrozumiec o czym pisze trzeba miec otwarty zalacznik **przelicznikstatystyk.zip **
Zalacznik Project1.zip to zdekompilowany .exe z moja wizja wygladau programu (nie dziala), ale tak wlasnie chcialbym by program wygladal.

Do rzeczy;

-gorna czesc w ogole nas nie interesuje, dziala poprawnie i nie wymaga zadnych zmiam. (przynajmniej na razie jednak staty koncza sie na 999 )
-dola czesc przelicza staty(a konkretnie staty konia) ktora mozemy wybrac z listy po prawej stronie i wlasnie do tej listy chce dodac kolejnych 8 pozycji ( 8 nowych koni) kazdy kon ma przypisane staty poczatkowe ktore sa stale.
W progranie nie widac lvl , sa uzyte nazwy, a ostatnia pozycja to 100lvl
I tak pozycje ktore chce dodac to
'110lvl' 90 53 90
'120lvl' 100 57 98
'130lvl' 110 62 110
'140lvl' 120 66 115
'155lvl' 130 72 120
'178lvl' 150 80 140
'200lvl' 170 100 160
'225lvl' 200 130 190

Ja chcialem to zrobic po swojemu, myslalem , ze tak bedzie najlatwiej ..

Zrobic nowa liste koni (ktora zrobilem )w ktorej lista zaczynala by sie od 9 poczycji (8 pierwszych bym wykasowal )
zmienic nazy , odszukac kod gdzie podane sa stale staty poczatkowe i je podmienic ...

Udalo mi sie to nawet zrobic, problem w tym, ze jak wpisze nowe stale przy danym koniu to w tabeli pojawiaja sie Od razu koszta
(ostatnia cena) ,a tam powinno byc 0 na start i nie wiem gdzie zmienc to w kodzie.

Ciezko mi to tak wytlumaczyc, mam nadzieje ,ze pisze dosc prosto

Jesli ktos z Was jest w stanie mi udzielic jakis wskazowek lub wprowadzic te zmieny w kodzie,(aczkolwiek wolalbym to sam zrobic )
jestem otwarty na Wasze sugestie i wiem, ze czesc z Was powie mi by taki program napisac od nowa,
Ja tego nie potrafie zrobic, przynajmniej na razie . :)

Pozdrawiam Pano

0

Zamiast przestarzałego DD polecam używać IDR. Mój artykuł na temat posłużenia się nim jest na moim blogu: http://blog.olesio.eu/uzycie-idr-do-szybkiego-przeanalizowania-aplikacji-napisanej-w-delphi - a co do aplikacji to coś się download na 4p skiepścił, bo ściąga się wieki. Jednak myślę, że reversować to można, ale mając o tym jakieś pojęcie. Wprowadzania wielu zmian bez dodawania "code caves" żeby wszystko ogarnąć, może być ciężkie. Najlepiej po prostu napisać sobie taką aplikacje samodzielnie. Jeżeli wiesz na jakiej zasadzie działa oryginał.

0

olesio, dzieuje za program,
wyglada calkiem niezle, posiedze kilka dni i poszukam w kodzie te stale , moze sie uda,

Mysle jednak by dogadac sie z kim i zrobic to od nowa w moim design-u :)

0

Mysle jednak by dogadac sie z kim i zrobic to od nowa w moim design-u :)

Moim zdaniem będzie to o wiele lepsze rozwiązanie, bo zrobisz sobie program tak, jak Ty będziesz tego chciał, bez zabawy z dezasemblacją;

Jeśli ten program służy do różnorakich obliczeń, to jedyne co musisz znać to właśnie wzory, za pomocą których obliczysz wspomniane koszty itd.; Nie wiem jednak czy takie wzory są gdzieś dostępne, ale zawsze można je rozszyfrować podają w tym istniejącym programie różne dane - w końcu wybada się jak program wszystko wylicza; Zawsze to będziesz miał swój projekt, który będziesz mógł dowolnie rozbudowywać i dorabiać aktualizacje.

0

Hej,

Program dziala ze wzorem na sume kwadratow liczb od 1 do n

[n * (n+1) * (2n+1)]/6   to wzór na sumę ciągu  1 + 4 + 9 + ... + n^2 

mam caly taki skrypt napisany w javie
http://simlockviaimei.pl/holyzone/

Ja w Delphi nie dam rady tego zrobic sam, musialbym sie uczyc od podstaw, a to zajeloby mi troche czasu.
Moze da rade uzyc ten Tform1 i Tform2 w nowym programie ?

0

Według mnie szybciej i wygodniej będzie zrobić nowy program, bo i tak cały interfejs sobie wyklikasz, a obliczenia przeprowadza się bardzo podobnie jak w innych językach; Ewentualnie zawsze możesz sobie kuknąć do kursu;

0

Racja, musze porozmawiac z kims kto bedzie mial chwile i mi pomoze to ogarnac pod wzgledem programowania.
Jesli ktos ma chwile, moze zerknac na to co zrobilem obecnie,

Program wlacza sie na nowym designu zmienilem caly TForm1,
TForm2 info wlacza sie lecz po wylaczeniu program sie zwiesza.
Nie umiem zakodowac zmiany zdjec koni przy wyborze z listy
no i oczywiscie dalej nie zmienilem stalych koni, sa stare wiec ostatni 225lvl pokazuje staty 100lvl

Nie wiem dlaczego nie dzialaja przyciski gora/dol ,ale recznie mozna zmieniac staty i przelicza dobrze
Plik wrzucam tez do siebie na serwer, ostatnio wolno sie sciagalo z P4.

http://simlockviaimei.pl/holyzone/pst_Kopia.zip

0

Kots bedzie mogl mi pomoc z tym programem ? ?
PW poprosze , oczywiscie nie za dziekuje .

1 użytkowników online, w tym zalogowanych: 0, gości: 1