Announcement

Collapse
No announcement yet.

Can I do more with pointer using Cheat Device? (PS2 and PSP)

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

  • Can I do more with pointer using Cheat Device? (PS2 and PSP)

    I know that there is a 6 codetype capable of writing to a pointer in PS2/PSP.
    Code:
    "Pointer write"
    
    8-bit write
    6-aaaaaaa 000000vv
    00000000 iiiiiiii
    
    16-bit write
    6-aaaaaaa 0000vvvv
    00010000 iiiiiiii
    
    32-bit write
    6-aaaaaaa vvvvvvvv
    00020000 iiiiiiii
    
    a = address to load 32-bit base address from (25 bits)
    v = value to store at base + offset (8/16/32 bits)
    i = 32-bit offset to be added to base
    
    Loads 32-bit base address from address @a, adds offset @i to it, and constantly
    writes the value @v to the final address.
    Note that execution stops if base is equal to 0.
    
    Example:
    6018F6D4 000003E7
    00010000 00000156
    - loads base address from address 0x0018F6D4, say base is 0x001A0000
    - adds offset 0x00000156 to base to make final address 0x001A0156 where 16-bit
    value 0x03E7 will be written to
    The problem is in my wrestling game that I am trying to hack uses dynamic addresses to store the player and the AI's data.Before a match it stores the values of the dynamic addresses in a randomize address.My plan is that the first address that stores those dynamic addresses must be static.So it would be handy if I could use a codetype that can access pointer recursively.And also a conditional code that can check value stored at address from a pointer.
    I think it is very unlikely that there is a codetype capable of doing such things but I guess it's better to ask first.
    I didn't find any configuration for codetype 6 in the PS2RD code_types.txt for nested pointer option.
    I can store the final dynamic address using ASM code but I will have to rewrite the ASM code for each code I make since the registers are different and hoping that some registers are unused at that point of execution.
    Thanks in advance.

  • #3
    Originally posted by eatrawmeat391 View Post
    I know that there is a 6 codetype capable of writing to a pointer in PS2/PSP.

    The problem is in my wrestling game that I am trying to hack uses dynamic addresses to store the player and the AI's data.Before a match it stores the values of the dynamic addresses in a randomize address.My plan is that the first address that stores those dynamic addresses must be static.So it would be handy if I could use a codetype that can access pointer recursively.And also a conditional code that can check value stored at address from a pointer.
    I think it is very unlikely that there is a codetype capable of doing such things but I guess it's better to ask first.
    I didn't find any configuration for codetype 6 in the PS2RD code_types.txt for nested pointer option.
    I can store the final dynamic address using ASM code but I will have to rewrite the ASM code for each code I make since the registers are different and hoping that some registers are unused at that point of execution.
    Thanks in advance.
    this program help making pointers
    https://forum.gamehacking.org/node/126753
    scans static address that stores those dynamic addresses
    lee4 Does Not Accept Codes Requests !
    When lee4 asks a question it does not mean lee4 will look at your game
    *How to create and use SegaCD codes >click here<*
    >)

    Comment


    • #4
      The CodeBreaker version 7 or 8+ for the PS2 will do multiple pointers. I don't remember the exact format. It either has a pointer count as the lower half of the word that flags the write size, or its the upper half and the write size is the lower. Either way, you just throw in more lines as needed for additional offsets, and it'll theoretically let you dig through 65,535 layers of pointers. It is the only device that supports it, though, making code compatibility as low as it can be. There's also no device I can recall that has pointer-based conditional commands.

      Based on what you seem to need, assembly is probably the way to go. It actually sounds like the sort of game where you could have become internet famous back in the day for working up an extensible framework for other hackers to use.

      Comment

      Working...
      X