Announcement

Collapse
No announcement yet.

Need help for Invincibility code anatomy.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Need help for Invincibility code anatomy.

    A few days ago,I come across below thread by chance.
    http://forums.magicengine.com/en/vie...bbdfacc6952eae

    These is Invincibility code made by VisitntX(INVINCIBILITY 000140:208)

    , I amazed that this code don't use invincibility timers on which I always rely Whensoever I need to make invincibility code.
    I reallly want to make invincibility code without any invincibility timer(I hate flashing invincibility),I tried to find any clue and want to reveal how VisitntX make this great code,But It is real out of the question for myself.
    I only found only one clue that His(VisitntX) code would modify address of conditional jmp statment in assembly.
    If I happen to be taughted by anyone how can This invincibility code be made from know-nothing state,It would be Great progress at my PCE game hack.
    Last edited by bshi02; 10-31-2011, 09:44:41 AM. Reason: correct words

  • #2
    What game are you trying to hack and for what system? Usually what you could do is find te flashing Invincibility code and then set a break on it and see what makes it activate and set the conditional to always be true. I remember VisitanteX made a code for some game for the Genesis which he used the jmp in his code, I couldnt replicate the code in a different version of the game so I made my own code which had the same effects. So there are many ways to get the results you want using different methods.
    Spoiler Alert! Click to view...

    THE BAD GUY!!!!!!

    Comment


    • #3
      I've only ever messed with PS2 and PS3 games, but there is usually a way that very often works for finding invincibility for me. Find any infinite health assembly code, go to the first line of the function it is in, and do whatever there is to the equivalent of a "jr ra" for PS2 or a "blr" for PS3. It basically just skips the entire function that does the stuff relating to health. Whatever function that decreases health usually has the code in it to detect that a damaging hit has occurred. The problem is some games use the same function for you and enemies, so you need to figure out which function leads to it for your character and not the enemies. I just used that kind of thinking today and found invincibility for Silent Hill Homecoming. A function prevented all attacks from both me and enemies from decreasing health. I removed the whole function, and neither of us responded to being attacked. I checked and only 1 function lead to it. I canceled the call to the function, still the same problem. I checked what lead to that function and canceled it, and the game froze when either of us tried to attack. I tried out of desperation just to check and see what called that function, and there were 2 different calls. I canceled the first call, and lucky me I could attack them and I didn't respond to the attacks of enemies, so I was invincible.

      I remember that same kind of thing a few times, but can't remember the games. I keep thinking it was also in Siren, maybe those The Suffering games, Infamous, and some other ones. I know I've done it a few times, I just can't remember the exact games anymore.
      July 7, 2019

      https://www.4shared.com/s/fLf6qQ66Zee
      https://www.sendspace.com/file/jvsdbd

      Comment


      • #4
        The game I tried to hack is Jackie Chan's Action Kung Fu(U) for PCE.
        I first found Invincibility timer code(flashing)[its address is F82071 in magic-engine cheat,03566071 in cheat engine6.1] then set "find out what write to this address" on this address.(I think I set breakpoint on invincibility flashing address in this way)
        When I got some damage It results below address.

        01C68293 - 8B 75 F0 - mov esi,[ebp-10]
        01C68296 - 81 E2 FF1F0000 - and edx,00001FFF
        01C6829C - 88 04 16 - mov [esi+edx],al <<
        01C6829F - E9 5CE2FFFF - jmp 01C66500
        01C682A4 - 8B 5D C0 - mov ebx,[ebp-40]

        EAX=0000003F
        EBX=00000000
        ECX=00000071
        EDX=00000071
        ESI=03566000
        EDI=00007C55
        ESP=0022F8F0
        EBP=0022F948
        EIP=01C6829F

        These address(listed above) seems to activate/control invincibility timer code when I got damage, So I set Nop on these address in turn,But It always completely freeze gameplay or does nothing when I got damage.
        While VisitanteX's code is located at 035FE140 in Cheat engine address and not located at closer to above result address(01C682xx),and it works perfect when I change his code value.
        and In assembly view windows, his code looks "jno 035FE131" and whenever I modify his code value, It change the address line to any number(when I modify value to 241,it change from 035FE131 to 035FE132) which next to "jno" command line.
        As I don't have enough of basis knowledge for assembly,It is impossible to examine further in order to find critical clue on his code.
        .
        Last edited by bshi02; 11-01-2011, 11:57:53 PM.

        Comment

        Working...
        X