Announcement

Collapse
No announcement yet.

(Artemis) Cheat System released

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

  • #46
    I've no idea if Jimmi improved it in CLv2. We haven't touched it in artemis-next yet, but we will move away from TCP to the (faster) UDP.

    Comment


    • #47
      Artemis version 0.2

      After almost three weeks of development, jimmikaelkael and I proudly present version 0.2 of Artemis.

      By far the biggest achievement was to integrate Core Launcher's hacking functionality, and now you're encouraged to use Artemis instead of CL which won't be updated anymore.

      In detail, the changes are:

      Code:
      0.2 (Aug 19 2009)
      - Merged jimmikaelkael's code from Core Launcher v2 to allow remote debugging.
      - Added ELF loader to replace evil LoadExecPS2() syscall.
      - Except for the boot loader, all code was made relocatable.
      - Reset IOP on startup by default; never do it when run from host.
      - Stop disc spin after initialization to enable swapping.
      - Cheats are only loaded once from text file on startup.
      - Increased maximum number of active codes from 50 to 100.
      - With code type D, if the number of lines is 0, it is internally set to 1 for
        compatibility.
      - Added global debug mode (set DEBUG to 1 in root Makefile).
      - Compressed final ELF with ps2-packer.
      Download: http://bitbucket.org/misfire/artemis/downloads/
      Last edited by misfire; 09-02-2009, 04:06:30 PM.

      Comment


      • #48
        Game ID

        This is a request for comments.

        I'm planning to improve Artemis' game ID handling. The ID is used by the cheat system to auto-detect the inserted game and activate codes accordingly. Here is how it is handled in the current version.

        The ID is part of the game title, for example:

        "TimeSplitters PAL /ID SLES_500.78"
        Mastercode
        902D51F8 0C0B95F6
        Invincible
        203C8728 00000001

        At the moment, the ID is only made up of the ELF pathname (the cdrom0:\ prefix can be left out) which is pretty lame. Here're three possible improvements:
        • Support wildcard characters ("?") in the ELF pathname to detect multi-disc games.
        • Add ELF file size.
        • Add ELF file checksum/hash.


        So the result would be something like this:

        "Resident Evil 4 PAL /ID SLES_537.02 3097532 02c017f41c0001c0b34dc980f855c4f1e74489e8"

        It could also be possible to ignore certain fields:

        "Resident Evil 4 PAL /ID - - 02c017f41c0001c0b34dc980f855c4f1e74489e8"

        As you can see, the SHA-1 hash would make the game title rather long, and I think CRC-32 should be sufficient. But maybe this is just too complicated and ELF pathname + file size already form an adequate ID. Any comments?
        Last edited by misfire; 08-20-2009, 04:15:37 AM.

        Comment


        • #49
          Just use the ELF name why complicate it further.
          http://bh-re-db.pcriot.com/ <- Biohazard / Resident Evil
          Code Database

          Comment


          • #50
            The avoid ambiguities. For example, Artemis will also be able to directly boot and hack game demos. It is certainly a problem if two demos from different discs have the same pathname. Therefore, I think at least the file size must be added to the ID.

            Comment


            • #51
              I was wondering the same thing as kh2k4, but I hadn't considered demos and other problem discs. I suppose keeping it as simple as possible whilst remaining functional should be the ticket. Name and filesize should be adequate.
              I may be lazy, but I can...zzzZZZzzzZZZzzzZZZ...

              Comment


              • #52
                "9 code type" solves the problem using codes on wrong disc/ELF with same names already.

                "GameTitle + ELF name + sumcheck" is kind long but I still like the idea though
                Last edited by lee4; 08-20-2009, 08:44:57 AM.
                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


                • #53
                  The decision which codes to load must be made when processing the cheat list (i.e. the game titles). It would be stupid to load all codes for two matching game titles, and the 9 code type doesn't solve it in any way. It would only work if all codes were jokered...

                  And yes, ELF pathname and file size might be sufficient, but if there are still ambiguities, a hash would be needed too. If there's no such case, fine.

                  Comment


                  • #54
                    What would be the point of a filesize check if your gonna use a checksum?
                    Also what would happen if you had cheats for different demo's on a demo disc it'd have to show every single demo as a option with all the codes turned off then turn on the last set of activated codes for whatever demo you select.
                    Last edited by kh2k4; 08-20-2009, 09:38:55 AM.
                    http://bh-re-db.pcriot.com/ <- Biohazard / Resident Evil
                    Code Database

                    Comment


                    • #55
                      The problem is that there're some ELFs that're very large (~100MB) and computation of the hash would take some seconds (though a workaround would be to only hash the first X MB).

                      kh2k4, your suggestion is good, but such a selection would only be practicable with a GUI...

                      Comment


                      • #56
                        Hmm what about having it check the mastercode address for it's default value?
                        http://bh-re-db.pcriot.com/ <- Biohazard / Resident Evil
                        Code Database

                        Comment


                        • #57
                          The master code types 9 and F aren't suitable for game detection. It wouldn't work for compressed game ELFs, for instance.

                          Comment


                          • #58
                            What about creation date / time like what uLE shows in the filebrowser.
                            http://bh-re-db.pcriot.com/ <- Biohazard / Resident Evil
                            Code Database

                            Comment


                            • #59
                              Originally posted by misfire View Post
                              The problem is that there're some ELFs that're very large (~100MB) and computation of the hash would take some seconds (though a workaround would be to only hash the first X MB).
                              really!?
                              Biggest commercial game ELF I have ever seen was 22MB, I dont remember what game was.
                              Originally posted by misfire View Post
                              The master code types 9 and F aren't suitable for game detection. It wouldn't work for compressed game ELFs, for instance.
                              True.
                              Question how about when ELF inside a BIG.BIN file?


                              I think this only simple way
                              Code:
                              "Resident Evil Outbreak USA v1.0 /ID SLUS_207.65 /CRC 9596A35E"
                              Mastercode
                              90116E30 0C045B34
                              
                              "Resident Evil Outbreak USA v1.1 /ID SLUS_207.65 /CRC 9D8F3A0D"
                              Mastercode
                              90116E30 0C045B34
                              
                              "Super SF2 Turbo USA /ID SSF2T.ELF /CRC 68EB581A"
                              M
                              9016EAA8 00832021
                              
                              "Super SF2 Turbo PAL /ID SSF2T.ELF /CRC 681C1439"
                              M
                              9016EBC0 00832021
                              Last edited by lee4; 08-20-2009, 01:43:13 PM.
                              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


                              • #60
                                I was thinking about that PS2 Version Checker Utility on the codetwink website. Is that just a hash generator? I know it generates some sort of unique ID for games, so you don't end up trying to use codes for 2 different versions of a game that have the same elf file title.

                                There are more games with the same elf file but are different versions.
                                Dragon Ball Z Budokai 3? (different greatest hits version)
                                Star Wars Battlefront 2
                                Some others. I don't know if Silent Hill 2 and greatest hits have the same elf file name.
                                July 7, 2019

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

                                Comment

                                Working...
                                X