Announcement

Collapse
No announcement yet.

NetCheat - Net-based PlayStation 2 Cheat Device

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

  • #16
    Felt like doing some PS2 stuff so here's version 2.0 of NetCheat (PS2). A couple new code types added and an improved PC GUI thanks to ORCXodus:

    Download at the bottom of the OP.

    Code:
    ------------------------- Code Type F3
    Find Replace (should always be jokered)
    F30wcccc 00000000
    xxxxxxxx yyyyyyyy
    aaaaaaaa bbbbbbbb
    
    
    c: number of times to replace
    w: width (0 = 8, 1 = 16, 2 = 32)
    x: find
    y: replace
    a: address 1
    b: address 2
    
    
    Example:
    F3020000 00000000
    4D554C54 41414141
    00100000 00600000
    
    
    ------------------------- Code Type F4
    Address Compare
    F400nnnn 00000t0w
    aaaaaaaa bbbbbbbb
    
    
    n: number of lines to execute under it if on
    t: comparison type (refer to conditional types above)
    w: width of comparison (0 = 8bit, 1 = 16bit, 2 = 32bit)
    a: address 1
    b: address 2
    
    
    Example:
    F4000001 00000002
    000FFFF4 000FFFF0
    20347E8C 00000000
    Last edited by dnawrkshp; 04-19-2015, 08:05:14 PM.

    Comment


    • #17
      Where is the link, dnawrkshp? I don't see it in Firefox.
      The Hackmaster

      Comment


      • #18
        Originally posted by dlevere View Post
        Where is the link, dnawrkshp? I don't see it in Firefox.
        It's at the top http://puu.sh/hlajo/151273b689.jpg

        Here's the direct though http://gamehacking.org/vb/attachment...0&d=1429491394

        Comment


        • #19
          O.K., Thanks. I want to cross post this in the Hacking Scene News forum.
          The Hackmaster

          Comment


          • #20
            This is great, I'm jealous that you get to develop a cheat engine, sounds like fun.

            If you ever want to develop a day1 feature that pulls codes from this site, just let me know. I can set up a script that spits out codes in any format based on the serial or a hash. Or we could do something similar to codebreaker, but I think a insert-disc-codes-pop-up kind of solution would be cool.
            Please put all complaints in writing and submit them here.

            Above link not working? Try here.

            Comment


            • #21
              Originally posted by rimsky82 View Post
              This is great, I'm jealous that you get to develop a cheat engine, sounds like fun.

              If you ever want to develop a day1 feature that pulls codes from this site, just let me know. I can set up a script that spits out codes in any format based on the serial or a hash. Or we could do something similar to codebreaker, but I think a insert-disc-codes-pop-up kind of solution would be cool.
              Best part is the GUI; worst part is the assembly/engine. When you accidentally make one little mistake and you freeze so you have to go back and stare at it to figure it out. I'm glad the hard part is over

              As for implementing an online db, I think for NetCheat it wouldn't really be necessary. Since everything is controlled via the PC app, you can access the site directly from the PC and paste the codes into the manager.

              However, I'm working on something for the PS3 that could be comparable to codebreaker and adding such a feature would be awesome. We, and by we I mean bungholio, already made an online db of PS3 codes (in CodeUnique 3 format https://www.sendspace.com/file/b6nwjy) that I'm sure you can use. In fact we have an old version that I use for NetCheat PS3 here: http://netcheat.gamehacking.org. If you ever have the time it'd be cool to see Playstation 3 listed under Sony. And converting between CodeUnique and NetCheat is very simple as both are not encrypted.

              Comment


              • #22
                Very possible, though I'm sure staff would have to have a discussion before adding that generation of systems.

                If we do, first thing I'd need is a database of the games, with as much detail as possible. Preferably one with a coherent naming scheme with regions etc, and identifiable means such as serials and/or disc hashes. Then it's as simple as creating code classes and device classes, and we've got a code database with file export options.

                edit: just saw your gameList.txt. That's definitely a good start. I'll want a quick talk with the admins, then I can get started this weekend.
                Please put all complaints in writing and submit them here.

                Above link not working? Try here.

                Comment


                • #23
                  I could also use some codetype documentation for yours, as well as CodeUnique 3.
                  Please put all complaints in writing and submit them here.

                  Above link not working? Try here.

                  Comment


                  • #24
                    Originally posted by rimsky82 View Post
                    I could also use some codetype documentation for yours, as well as CodeUnique 3.
                    I've honestly never used CU3 before but it's close to PS2 format. I know bungholio knows how they work. I'll ask him if he has any documentation anywhere.

                    This is NetCheat's. It's messy but I'm here to help if you need any.
                    Code:
                    Codetypes for Dnawrkshp's NetCheat PS3:
                    
                    Format:
                    [COMMAND][ARGS] [ADDRESS] [VALUE]
                    
                    
                    ---------- 0 -- X Byte Write
                    Writes X number of bytes to a (address)
                    
                    
                    0 aaaaaaaa vvvvvv
                    You can have as many bytes after it (no spaces, new lines, and must have even number of digits)
                    0102030405 would work, but 010203040 would not
                    
                    
                    Example:
                    0 00B1F4A1 FFFFFF01FFFFFF02FFFFFF03
                    
                    
                    ---------- 1 -- Text write
                    Writes the text to a (address)
                    The text can contain spaces so be sure to not have comments on the same line
                    
                    
                    1 aaaaaaaa TEXT
                    
                    
                    Example:
                    1 00B1F4A6 This is an example of a text write
                    
                    
                    ---------- 2 -- Float write
                    Writes the float to a (address)
                    
                    
                    2 aaaaaaaa float
                    
                    
                    Example:
                    2 00B1F4A0 -3.14159
                    
                    
                    ---------- 4 -- Multi/Condensed write
                    Starting at a, the value v is written and then a is incremented by the value i. This is done c many times.
                    So if you look at the example below, the start address is 00B36E40.
                    It then writes FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF to 00B36E40 and increments by 00000010 (i).
                    So the address becomes 00B36E50 and FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF is written there.
                    That happens 0x27 times, which if you do the math, will end at 00B36E40 + (0x27 * 0x10) or 00B370B0.
                    This is the alternative to having a huge X write that, in this case, would be 0x270 bytes in length
                    
                    
                    4 aaaaaaaa vvvv
                    4 iiiiiiii cc
                    
                    
                    Example:
                    4 00B36E40 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
                    4 00000010 27
                    
                    
                    ---------- 6 -- Pointer write
                    Reads the value at a, adds o, then uses that as the address for the next line.
                    a = address, o = offset, c = command, v = value
                    
                    
                    6 aaaaaaaa oooooooo
                    c 00000000 vvvvvvvv
                    
                    
                    Example:
                    6 00B611C4 000010FC
                    0 00000000 424800003F800000
                    
                    
                    ---------- B -- Find/Replace
                    Searches the memory starting at a and going until b is reached.
                    If COUNT is given and is greater than 0, the search will last until the number of replaces is equal to COUNT, or if b is reached.
                    For every instance of o (aka OGP) found, it will be replaced with n (COP).
                    Both o and n should be the same length.
                    Game regions are used in the searching, so to make the code faster do specify/find/import the game's regions in the Range tab.
                    
                    
                    Because of how complicated the use of this can be in regard to multiple codes using the same o (OGP) value... I've added another window to help manage the find/replace results
                    If you got a code from somewhere but it is in OGP/COP format (no start/stop specified), just use the first region for the game (Range tab->Find Ranges).
                    
                    
                    B[COUNT] aaaaaaaa bbbbbbbb
                    B oooooooo nnnnnnnn
                    
                    
                    Example:
                    -- All within region
                    B 00010000 01CC0000
                    B 1234567890ABCDEF FEDCBA0987654321
                    -- First 4 found
                    B4 00010000 FFFFFFFC
                    B 1234567890ABCDEF FEDCBA0987654321
                    
                    
                    ---------- D -- Equal To Comparison
                    Reads the number of bytes v contains from a and compares it with v. If they are equal it will execute the count (hex) number of lines below it.
                    D type codes must be constantly written!
                    
                    
                    D[COUNT] aaaaaaaa vvvvvvvv
                    
                    
                    Example:
                    D1 00B122F8 0001000000000000
                    0 009C356D 00006000
                    
                    
                    ---------- E -- Mask Unset Comparison
                    Reads the number of bytes v contains a and ands it with v. If that is equal to v it will execute the count number (hex) of lines below it.
                    if ((intB & intA) == intA) From misc.ArrayCompare
                    E type codes must be constantly written!
                    
                    
                    E[COUNT] aaaaaaaa vvvvvvvv
                    
                    
                    Example:
                    E2 00B122F8 00000044
                    0 010D4568 3E000000
                    1 0125CCA4 Activated
                    
                    
                    ---------- F -- Copy bytes
                    Reads COUNT number of bytes from a and stores it in b
                    
                    
                    F[COUNT] aaaaaaaa bbbbbbbb
                    
                    
                    Example:
                    FC0 00B00000 00C00000
                    EDIT: It's designed such that for everything that doesn't need to be an integer or long or whatever, it treats it as an array of bytes so you can write 233 bytes with just one code.
                    Last edited by dnawrkshp; 04-21-2015, 09:41:32 PM.

                    Comment


                    • #25
                      It's already in the works. I gotta hit the hay now, but it'll be done within a few days.

                      Click image for larger version

Name:	netcheat.PNG
Views:	2
Size:	24.7 KB
ID:	162695

                      Is your game list complete, or just for the games you have codes for? I'll have to check sonyindex.
                      Please put all complaints in writing and submit them here.

                      Above link not working? Try here.

                      Comment


                      • #26
                        This is great! Can't wait to see the final product.
                        Just to make sure you get the format right (unless this was intentional) I noticed (http://puu.sh/hmtwy/e98b3317c2.png) that the counter is in the second argument (01000044) but it should follow directly after the E. So it should be E1 00B122F8 00000044.

                        The gameList.txt only lists games that we have codes for. But yeah sonyindex should work great.
                        Last edited by dnawrkshp; 04-21-2015, 10:42:31 PM.

                        Comment


                        • #27
                          Originally posted by dnawrkshp View Post
                          Just to make sure you get the format right (unless this was intentional) I noticed (http://puu.sh/hmtwy/e98b3317c2.png) that the counter is in the second argument (01000044) but it should follow directly after the E. So it should be E1 00B122F8 00000044.
                          Ah. I used the doc you have in your source. If you can get me an updated doc for your code types, I will certainly update it accordingly. I want it to be right.

                          I added games to the db from sony index, but I'm not sure of how complete it is. I can always add more from another source.

                          I still need to import your codes and do the CU3 device class. I think I'm really going to bed now.
                          Please put all complaints in writing and submit them here.

                          Above link not working? Try here.

                          Comment


                          • #28
                            Originally posted by rimsky82 View Post
                            Ah. I used the doc you have in your source. If you can get me an updated doc for your code types, I will certainly update it accordingly. I want it to be right.

                            I added games to the db from sony index, but I'm not sure of how complete it is. I can always add more from another source.

                            I still need to import your codes and do the CU3 device class. I think I'm really going to bed now.
                            Lol you were using NetCheat PS2, I'm talking about NetCheat PS3. I'm sure it was my fault, I make a habit out of saying NetCheat without clarifying which platform it is for.

                            I've attached a file that explains the code types of NetCheat PS3. Might also be a good idea to change the device name to NetCheat PS3 from just NetCheat as well.
                            Attached Files

                            Comment


                            • #29
                              Originally posted by dnawrkshp View Post
                              Lol you were using NetCheat PS2, I'm talking about NetCheat PS3. I'm sure it was my fault, I make a habit out of saying NetCheat without clarifying which platform it is for.

                              I've attached a file that explains the code types of NetCheat PS3. Might also be a good idea to change the device name to NetCheat PS3 from just NetCheat as well.
                              I saved the device I wrote last night as a PS2 device. I'll work on correcting the PS3 types.
                              Please put all complaints in writing and submit them here.

                              Above link not working? Try here.

                              Comment


                              • #30
                                Got a semi-decent implementation of netcheatps3 done. Is there something that describes the codetypes for CU3?

                                Also, we want to make sure hackers get credit for their codes. I see one of the CU3 texts has credits in them. What about from your code files?
                                Please put all complaints in writing and submit them here.

                                Above link not working? Try here.

                                Comment

                                Working...
                                X