├── Memlocs ├── UO.rcnet ├── CLoS-PC.ods ├── DSR.rcnet ├── DaS-IDs.ods ├── FTL.rcnet ├── DaS-debug.rcnet ├── Deathloop.rcnet ├── DSR-PC-Memlocs.ods ├── DaS-PC-memlocs.ods ├── DmC-PC-memlocs.ods ├── Pandemic-UWP.rcnet ├── DaS-CE-code(old).ods ├── DaS-FileFormats.ods ├── DaS3-PC-memlocs.ods ├── DeS-PS3-memlocs.ods ├── DeS-PS3-savelocs.ods ├── GoW1-PS3-memory.ods ├── GoW2-PS3-memlocs.ods ├── PSTEE-PC-memlocs.ods ├── Risen-PC-memlocs.ods ├── SWTFU-PC-memlocs.ods ├── SP-TSOT-PC-memlocs.ods ├── StateOfDecay2-MS.rcnet ├── DeS-PS3-LUA-Functions.ods ├── Pandemic-UWP-exelocs.ods ├── SoT-MS-2.113.2405.2.rcnet ├── SoT-MS-2.113.5908.2.rcnet ├── GoW-Steam-1.0.438.9704.rcnet ├── GoW-Steam-1.0.441.9126.rcnet ├── KingdomCome-MS-1.9.4.0.rcnet ├── PS4RemotePlay-PC-memlocs.ods ├── DaS-PC-memlocs-debug(old).ods ├── Dishonored2-UWP-1.77.9.0.rcnet ├── EldenRing-Steam-1.3.0.0.rcnet ├── EldenRing-Steam-1.3.1.0.rcnet ├── EldenRing-Steam-1.3.2.0.rcnet ├── FortuneStreet-Wii-FileInfo.ods ├── FortuneStreet-Wii-memlocs.ods ├── GoWR-Steam-1.0.614.9211.rcnet ├── GoWR-Steam-1.0.618.4551.rcnet ├── MedievalDynasty-GOG-2.4.0.4.rcnet ├── KingsBounty-TheLegend-PC-memlocs.ods ├── DeS-PS3-Thens-mdlviewlist.loadlistlist ├── DarkSoulsRemastered-Steam-1.3.1.0.rcnet ├── Celeste-MS.CT ├── GoW3-PS3-NPUA70080_101.ct ├── GoW1-PS3-NPUA80490_101-ToggleInfiniteJumps.txt ├── GoW1-PS2-SCUS97467.CT ├── GoW1-PS2-FLP.bt ├── GoW1-PS3-NPUA80490_101-Savefile.bt ├── GoW2-PS3-NPUA80491_101.CT ├── SuperMeatBoy.CT ├── DarkestDungeon.CT ├── GoW2-PS3-assembly-R3=save.txt ├── GoW3-PS3-BCUS98111_103-Savefile.bt ├── GoW2-PS3-savelocs.txt ├── GoW3-PS3-BCUS98111_103-InfiniteJumps.txt ├── Medieval_Dynasty-GOG-2.4.0.4.CT ├── _rint-file.txt ├── FTL.CT ├── wo.CT ├── EldenRing-Steam-1.3.1.0.ct ├── SuperMeatBoy-PS-DeathCounter.txt ├── Celeste-MS-PS-DeathCounter.txt ├── GoW3-PS3-BCUS98111_103.txt ├── DeS-PS3-BLUS30443_100_LogoSkip.txt ├── DeS-PS3-BLUS30443_100_LoadSysPropsFromFile.txt ├── DeS-PS3-BLUS30443_100_LoadM99Luabnd.txt ├── ssbm.CT ├── GoWR-Steam-1.0.614.9211-Savefile.bt ├── GOWA-PS3-savelocs.txt ├── GoW1-PS3-NPUA80490_101-UnlockCam.txt ├── GoW3-PS3-BCUS98111_103-RPCS3SaveDumper.txt ├── GoW1-PS3-NPUA80490_101-RPCS3SaveDumper.txt ├── GoW2-PS3-memlocs.txt ├── JumpKing-PS-Counters.txt ├── gow.CT ├── KingdomCome-MS-1.9.4.0.CT ├── DeS-PS3-BLUS30443_100_NoDcxSdat.txt ├── _rint-memory.txt ├── GoW1-PS2-Wadfile.bt ├── GoWR-Steam-1.0.614.134.CT ├── StateOfDecay2-SetDemoMode.txt ├── StateOfDecay2-SetTimeDilation.txt ├── GoW-Steam-1.0.438.9704.CT ├── GoW3-PS3-memlocs.txt ├── PokemonPlatinum-PS-DeSmuME.txt ├── GoW-Steam-1.0.441.9126.CT ├── StateOfDecay2-ObjectDump.txt ├── DeS-PS3-BLUS30443_100_ModdingTutChanges.txt ├── DeS-PS3-BLUS30443_100_ModdingTutorialScript_Part5_m08_00_00_00.txt └── Dishonored2-UWP-1.77.9.0.CT ├── .gitattributes └── .gitignore /Memlocs/UO.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/UO.rcnet -------------------------------------------------------------------------------- /Memlocs/CLoS-PC.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/CLoS-PC.ods -------------------------------------------------------------------------------- /Memlocs/DSR.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DSR.rcnet -------------------------------------------------------------------------------- /Memlocs/DaS-IDs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DaS-IDs.ods -------------------------------------------------------------------------------- /Memlocs/FTL.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/FTL.rcnet -------------------------------------------------------------------------------- /Memlocs/DaS-debug.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DaS-debug.rcnet -------------------------------------------------------------------------------- /Memlocs/Deathloop.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/Deathloop.rcnet -------------------------------------------------------------------------------- /Memlocs/DSR-PC-Memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DSR-PC-Memlocs.ods -------------------------------------------------------------------------------- /Memlocs/DaS-PC-memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DaS-PC-memlocs.ods -------------------------------------------------------------------------------- /Memlocs/DmC-PC-memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DmC-PC-memlocs.ods -------------------------------------------------------------------------------- /Memlocs/Pandemic-UWP.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/Pandemic-UWP.rcnet -------------------------------------------------------------------------------- /Memlocs/DaS-CE-code(old).ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DaS-CE-code(old).ods -------------------------------------------------------------------------------- /Memlocs/DaS-FileFormats.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DaS-FileFormats.ods -------------------------------------------------------------------------------- /Memlocs/DaS3-PC-memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DaS3-PC-memlocs.ods -------------------------------------------------------------------------------- /Memlocs/DeS-PS3-memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DeS-PS3-memlocs.ods -------------------------------------------------------------------------------- /Memlocs/DeS-PS3-savelocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DeS-PS3-savelocs.ods -------------------------------------------------------------------------------- /Memlocs/GoW1-PS3-memory.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/GoW1-PS3-memory.ods -------------------------------------------------------------------------------- /Memlocs/GoW2-PS3-memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/GoW2-PS3-memlocs.ods -------------------------------------------------------------------------------- /Memlocs/PSTEE-PC-memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/PSTEE-PC-memlocs.ods -------------------------------------------------------------------------------- /Memlocs/Risen-PC-memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/Risen-PC-memlocs.ods -------------------------------------------------------------------------------- /Memlocs/SWTFU-PC-memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/SWTFU-PC-memlocs.ods -------------------------------------------------------------------------------- /Memlocs/SP-TSOT-PC-memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/SP-TSOT-PC-memlocs.ods -------------------------------------------------------------------------------- /Memlocs/StateOfDecay2-MS.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/StateOfDecay2-MS.rcnet -------------------------------------------------------------------------------- /Memlocs/DeS-PS3-LUA-Functions.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DeS-PS3-LUA-Functions.ods -------------------------------------------------------------------------------- /Memlocs/Pandemic-UWP-exelocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/Pandemic-UWP-exelocs.ods -------------------------------------------------------------------------------- /Memlocs/SoT-MS-2.113.2405.2.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/SoT-MS-2.113.2405.2.rcnet -------------------------------------------------------------------------------- /Memlocs/SoT-MS-2.113.5908.2.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/SoT-MS-2.113.5908.2.rcnet -------------------------------------------------------------------------------- /Memlocs/GoW-Steam-1.0.438.9704.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/GoW-Steam-1.0.438.9704.rcnet -------------------------------------------------------------------------------- /Memlocs/GoW-Steam-1.0.441.9126.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/GoW-Steam-1.0.441.9126.rcnet -------------------------------------------------------------------------------- /Memlocs/KingdomCome-MS-1.9.4.0.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/KingdomCome-MS-1.9.4.0.rcnet -------------------------------------------------------------------------------- /Memlocs/PS4RemotePlay-PC-memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/PS4RemotePlay-PC-memlocs.ods -------------------------------------------------------------------------------- /Memlocs/DaS-PC-memlocs-debug(old).ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DaS-PC-memlocs-debug(old).ods -------------------------------------------------------------------------------- /Memlocs/Dishonored2-UWP-1.77.9.0.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/Dishonored2-UWP-1.77.9.0.rcnet -------------------------------------------------------------------------------- /Memlocs/EldenRing-Steam-1.3.0.0.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/EldenRing-Steam-1.3.0.0.rcnet -------------------------------------------------------------------------------- /Memlocs/EldenRing-Steam-1.3.1.0.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/EldenRing-Steam-1.3.1.0.rcnet -------------------------------------------------------------------------------- /Memlocs/EldenRing-Steam-1.3.2.0.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/EldenRing-Steam-1.3.2.0.rcnet -------------------------------------------------------------------------------- /Memlocs/FortuneStreet-Wii-FileInfo.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/FortuneStreet-Wii-FileInfo.ods -------------------------------------------------------------------------------- /Memlocs/FortuneStreet-Wii-memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/FortuneStreet-Wii-memlocs.ods -------------------------------------------------------------------------------- /Memlocs/GoWR-Steam-1.0.614.9211.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/GoWR-Steam-1.0.614.9211.rcnet -------------------------------------------------------------------------------- /Memlocs/GoWR-Steam-1.0.618.4551.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/GoWR-Steam-1.0.618.4551.rcnet -------------------------------------------------------------------------------- /Memlocs/MedievalDynasty-GOG-2.4.0.4.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/MedievalDynasty-GOG-2.4.0.4.rcnet -------------------------------------------------------------------------------- /Memlocs/KingsBounty-TheLegend-PC-memlocs.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/KingsBounty-TheLegend-PC-memlocs.ods -------------------------------------------------------------------------------- /Memlocs/DeS-PS3-Thens-mdlviewlist.loadlistlist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DeS-PS3-Thens-mdlviewlist.loadlistlist -------------------------------------------------------------------------------- /Memlocs/DarkSoulsRemastered-Steam-1.3.1.0.rcnet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Wulf2k/Game-MemLocs/HEAD/Memlocs/DarkSoulsRemastered-Steam-1.3.1.0.rcnet -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /Memlocs/Celeste-MS.CT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 0 6 | "Deaths" 7 | 0 8 | 4 Bytes 9 |
Celeste.dll+0x75bb88
10 | 11 | 54 12 | 13 |
14 |
15 | 16 |
17 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Windows image file caches 2 | Thumbs.db 3 | ehthumbs.db 4 | 5 | # Folder config file 6 | Desktop.ini 7 | 8 | # Recycle Bin used on file shares 9 | $RECYCLE.BIN/ 10 | 11 | # Windows Installer files 12 | *.cab 13 | *.msi 14 | *.msm 15 | *.msp 16 | 17 | # Windows shortcuts 18 | *.lnk 19 | 20 | # ========================= 21 | # Operating System Files 22 | # ========================= 23 | 24 | # OSX 25 | # ========================= 26 | 27 | .DS_Store 28 | .AppleDouble 29 | .LSOverride 30 | 31 | # Thumbnails 32 | ._* 33 | 34 | # Files that might appear in the root of a volume 35 | .DocumentRevisions-V100 36 | .fseventsd 37 | .Spotlight-V100 38 | .TemporaryItems 39 | .Trashes 40 | .VolumeIcon.icns 41 | 42 | # Directories potentially created on remote AFP share 43 | .AppleDB 44 | .AppleDesktop 45 | Network Trash Folder 46 | Temporary Items 47 | .apdisk 48 | Memlocs/~$DSR-PC-Memlocs.ods 49 | -------------------------------------------------------------------------------- /Memlocs/GoW3-PS3-NPUA70080_101.ct: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 1 6 | "xpos" 7 | 0 8 | Custom 9 | Float Big Endian 10 |
35659960+80
11 |
12 | 13 | 0 14 | "CurrHp" 15 | 0 16 | Custom 17 | Float Big Endian 18 |
35659AF4
19 |
20 | 21 | 3 22 | "checkpoint" 23 | 1 24 | 0 25 | Custom 26 | 4 Bytes Big Endian 27 |
005FBEC0
28 |
29 |
30 | 31 |
32 | -------------------------------------------------------------------------------- /Memlocs/GoW1-PS3-NPUA80490_101-ToggleInfiniteJumps.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $path = "D:\Emus\PS3\dev_hdd0\game\NPUA80490\USRDIR\EBOOT.BIN" 5 | 6 | 7 | 8 | $ba = [System.IO.File]::ReadAllBytes($path) 9 | #---------------------------------------------------------------------------------- 10 | Function RUInt32 11 | { 12 | Param ( 13 | $addr 14 | ) 15 | [bitconverter]::ToUInt32($ba,$addr) 16 | } 17 | #---------------------------------------------------------------------------------- 18 | Function WBytes 19 | { 20 | Param ( 21 | $addr, 22 | $wb 23 | ) 24 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 25 | } 26 | #---------------------------------------------------------------------------------- 27 | 28 | cls 29 | 30 | [byte[]] $oldcode = 0x80, 0x03, 0x02, 0xc0 31 | [byte[]] $newcode = 0x4e, 0x80, 0x00, 0x20 32 | 33 | if ((RUInt32 0) -ne 0x00454353) { 34 | "No match, BIN still encrypted?" 35 | } else { 36 | "First 4 bytes match" 37 | 38 | if ((RUint32 (0x080b08 - 0xF700)) -eq [UInt32]"0xc0020380") { 39 | "Original bytes found, patching in infinite jumps." 40 | WBytes (0x080b08 -0xF700) $newcode 41 | [System.IO.File]::WriteAllBytes($path, $ba) 42 | "Bytes written successfully" 43 | "" 44 | pause 45 | } else { 46 | if ((RUint32 (0x080b08 - 0xF700)) -eq 0x2000804e) { 47 | "Patched bytes found, restoring double jump." 48 | WBytes (0x080b08 -0xF700) $oldcode 49 | [System.IO.File]::WriteAllBytes($path, $ba) 50 | "Bytes written successfully" 51 | "" 52 | pause 53 | } else { 54 | "Unrecognized bytes found hook at location, no changes made." 55 | "Has EBOOT.BIN been resigned as NONDRM?" 56 | "" 57 | pause 58 | } 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /Memlocs/GoW1-PS2-SCUS97467.CT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 1 6 | "Checkpoint -->" 7 | 1 8 | 0 9 | 4 Bytes 10 |
0032C838
11 | 12 | 13 | 2 14 | "Stance" 15 | 1 16 | 0 17 | 4 Bytes 18 |
0032C896
19 |
20 | 21 | 0 22 | "Red Orbs" 23 | 0 24 | Byte 25 |
0032C8BE
26 |
27 |
28 |
29 |
30 | 31 | 32 | checkpoint 33 |
0055F4E0
34 |
35 | 36 | camdata 37 |
31D116A0
38 |
39 | 40 | kratos 41 |
30A46C70
42 |
43 | 44 | flashInterface 45 |
30A1EA08
46 |
47 | 48 | goPlayer 49 |
31D0F264
50 |
51 |
52 |
53 | -------------------------------------------------------------------------------- /Memlocs/GoW1-PS2-FLP.bt: -------------------------------------------------------------------------------- 1 | //------------------------------------------------ 2 | //--- 010 Editor v13.0 Binary Template 3 | // 4 | // File: God of War, *.FLP 5 | // Authors: 6 | // Version: 7 | // Purpose: 8 | // Category: 9 | // File Mask: 10 | // ID Bytes: 11 | // History: 12 | //------------------------------------------------ 13 | 14 | typedef struct { 15 | uint id ; 16 | uint16 unk0x04 ; 17 | uint16 unk0x06 ; 18 | uint16 unk0x08 ; 19 | uint16 unk0x0a ; 20 | 21 | uint GlobalHandlerCount ; //Size 0x4 22 | uint GlobalHandlerPtr_0x10 ; //0x60 23 | 24 | uint MeshCount ; //Size 0x4, Size 0x8 25 | uint MeshPtr_0x18 ; //0x634 26 | 27 | uint FontCount ; //Size 0x780? 28 | uint FontPtr_0x20 ; //0x8c4 29 | 30 | uint StaticLabelCount ; //Size 0xA8? 31 | uint StaticLabelPtr_0x28 ; //0x104c 32 | 33 | uint DynamicLabelCount ; 34 | uint DynamicLabelPtr_0x30 ; //0x5a74 35 | 36 | uint Count6 ; 37 | uint unkPtr_0x38 ; //0x5e94 38 | 39 | uint Count7 ; 40 | uint unkPtr_0x40 ; //0x98dc 41 | uint unkPtr_0x44 ; //0x16470 42 | 43 | uint16 Count8 ; 44 | uint16 unk_0x4a ; 45 | uint unkPtr_0x4c ; //0x2296c 46 | 47 | uint16 unk0x50 ; 48 | uint16 unk0x52 ; 49 | uint unkPtr_0x54 ; 50 | uint16 StringsSize ; 51 | uint16 unk0x5a ; 52 | uint StringsPtr ; 53 | } HDR; 54 | 55 | 56 | LittleEndian(); 57 | struct FILE { 58 | HDR header; 59 | } file ; -------------------------------------------------------------------------------- /Memlocs/GoW1-PS3-NPUA80490_101-Savefile.bt: -------------------------------------------------------------------------------- 1 | //------------------------------------------------ 2 | //--- 010 Editor v9.0.1 Binary Template 3 | // 4 | // File: 5 | // Authors: 6 | // Version: 7 | // Purpose: 8 | // Category: 9 | // File Mask: 10 | // ID Bytes: 11 | // History: 12 | //------------------------------------------------ 13 | 14 | BigEndian(); 15 | 16 | //------------------------------------------------ 17 | 18 | 19 | 20 | typedef struct { 21 | char Wad1[0xa]; 22 | byte Wad1Active; 23 | char Wad2[0xa]; 24 | byte Wad2Active; 25 | } wadState ; 26 | 27 | typedef struct { 28 | char unk1[0x30]; 29 | float KratosPos[4]; 30 | uint KratosStance ; 31 | char unk2[0x4c]; 32 | } playerState ; 33 | 34 | typedef struct { 35 | char CamName[0x18]; 36 | char CamWad[0x18]; 37 | char unk[0x90]; 38 | } cameraState ; 39 | 40 | typedef struct { 41 | char unk[0xec]; 42 | } musicState ; 43 | 44 | typedef struct { 45 | char unk[0x1c4]; 46 | } entityState ; 47 | 48 | typedef struct { 49 | byte WorldIdle; 50 | byte MusicVolume; 51 | byte SoundVolume; 52 | byte Vibration; 53 | byte WideScreen; 54 | byte DeFlicker; 55 | byte SoundMode; 56 | byte PowerUp_FirstTime; 57 | byte Costume_Choice; 58 | byte Difficulty; 59 | byte EndGame; 60 | } globalState ; 61 | 62 | typedef struct { 63 | float EntityTimeInSeconds; 64 | int EntityWarpWadSlot; 65 | int EntityWarpPlayerReady; 66 | int WadInfoNWads; 67 | } wadInfo ; 68 | 69 | uint cafebad1 ; //0x0 70 | uint Costume; //0x4 71 | wadState wads; //0x8 72 | playerState player; //0x1e 73 | cameraState camera; //0xae 74 | musicState music; //0x16e 75 | entityState entity; //0x25a 76 | globalState global; //0x41e 77 | wadInfo wad; //0x429 78 | FSeek(0x13ffc); uint checksum ; //0x13ffc -------------------------------------------------------------------------------- /Memlocs/GoW2-PS3-NPUA80491_101.CT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 0 6 | "Music Volume" 7 | 0 8 | Custom 9 | 4 Bytes Big Endian 10 |
307E306C
11 |
12 | 13 | 1 14 | "SFX Volume" 15 | 0 16 | Custom 17 | 4 Bytes Big Endian 18 |
307E3070
19 |
20 | 21 | 2 22 | "Invert Flight Controls" 23 | 0 24 | Custom 25 | 4 Bytes Big Endian 26 |
307E3078
27 |
28 | 29 | 4 30 | "Full Frame" 31 | 0 32 | Custom 33 | 4 Bytes Big Endian 34 |
307E307c
35 |
36 | 37 | 3 38 | "Hints/Tutorial" 39 | 0 40 | Custom 41 | 4 Bytes Big Endian 42 |
307E3088
43 |
44 | 45 | 5 46 | "checkpoint -->" 47 | 1 48 | 0 49 | Custom 50 | 4 Bytes Big Endian 51 |
5944e0
52 |
53 |
54 | 55 |
56 | -------------------------------------------------------------------------------- /Memlocs/SuperMeatBoy.CT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 0 6 | "Deaths" 7 | 8 | 0 9 | 4 Bytes 10 |
SuperMeatBoy.exe+0x2d55ac
11 | 12 | 1c8c 13 | 14 |
15 | 16 | 1 17 | "deltaTime?" 18 | 19 | 0 20 | Float 21 |
SuperMeatBoy.exe+0x2d6f9c
22 | 23 | 34 24 | 25 |
26 | 27 | 2 28 | "Frame Count?" 29 | 30 | 0 31 | 4 Bytes 32 |
00576FA4
33 |
34 | 35 | 3 36 | "deltaTime?" 37 | 38 | 0 39 | Float 40 |
SuperMeatBoy.exe+0x2d6e88
41 |
42 | 43 | 4 44 | "GetTime" 45 | 46 | 0 47 | 4 Bytes 48 |
00576FB8
49 |
50 | 51 | 5 52 | "Display HUD" 53 | 54 | 0 55 | Byte 56 |
supermeatboy.exe+0x1b6640
57 |
58 |
59 | 60 |
61 | -------------------------------------------------------------------------------- /Memlocs/DarkestDungeon.CT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 0 6 | "Gold" 7 | 0 8 | 4 Bytes 9 |
Darkest.exe+1c20ab0
10 | 11 | 0 12 | 20 13 | 154 14 | ce4 15 | 16 |
17 | 18 | 1 19 | "Busts" 20 | 0 21 | 4 Bytes 22 |
Darkest.exe+1c20ab0
23 | 24 | 48 25 | 20 26 | 154 27 | ce4 28 | 29 |
30 | 31 | 4 32 | "Portraits" 33 | 0 34 | 4 Bytes 35 |
Darkest.exe+1c20ab0
36 | 37 | 90 38 | 20 39 | 154 40 | ce4 41 | 42 |
43 | 44 | 3 45 | "Deeds" 46 | 0 47 | 4 Bytes 48 |
Darkest.exe+1c20ab0
49 | 50 | d8 51 | 20 52 | 154 53 | ce4 54 | 55 |
56 | 57 | 2 58 | "Crests" 59 | 0 60 | 4 Bytes 61 |
Darkest.exe+1c20ab0
62 | 63 | 120 64 | 20 65 | 154 66 | ce4 67 | 68 |
69 |
70 | 71 |
72 | -------------------------------------------------------------------------------- /Memlocs/GoW2-PS3-assembly-R3=save.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 929f8 - 2f830000 - cmpwi cr7,r3,0x0 4 | 5 | 929f8 - 484bf4a2 - ba 4bf4a0 6 | ------------ 7 | 4bf4a0 - 3e203154 - lis r17, 0x3154 8 | 4bf4a4 - 62310b20 - ori r17,r17,0x0b20 9 | 4bf4a8 - c0f10000 - lfs f7, 0x0(r17) 10 | 4bf4ac - fce0381e - fctiwz f7,f7 11 | 4bf4b0 - 3dc00057 - lis r14, 0x0057 12 | 4bf4b4 - 61ce7628 - ori r14,r14,0x7628 13 | 4bf4b8 - 7ce077ae - stfiwx f7,0,r14 14 | ------------------R3 = Save 15 | ------------------Begin controller detect, 0x0082256b, R3 = 00000400 = Save 16 | 4bf4bc - 3dc00082 - lis r14,0x0082 17 | 4bf4c0 - 61ce256e - ori r14,256e 18 | 4bf4c4 - 89ce0000 - lbz r14,0x0(r14) 19 | 4bf4c8 - 71ce0004 - andi r14,r14,0x4 20 | 4bf4cc - 69ce0005 - xori r14,r14,0x5 21 | 4bf4d0 - 2f8e0002 - cmpwi cr7,r14,0x2 22 | 4bf4d4 - 409c0008 - bge cr7,0x004bf4dc 23 | ------------------If R3 Pressed 24 | 4bf4d8 - 480933a2 - ba 000933a0 25 | ------------------Else 26 | ------------------Begin controller detect, 0x0082256b, L3 = 00020000 = Swim Toggle 27 | 4bf4dc - 3dc00082 - lis r14,0x0082 28 | 4bf4e0 - 61ce256e - ori r14,256e 29 | 4bf4e4 - 89ce0000 - lbz r14,0x0(r14) 30 | 4bf4e8 - 71ce0002 - andi r14,r14,0x2 31 | 4bf4ec - 69ce0003 - xori r14,r14,0x3 32 | 4bf4f0 - 3e2030a1 - lis r17,30a1 33 | 4bf4f4 - 6231e4a8 - ori r17,r17,e4a8 34 | 4bf4f8 - 2f8e0002 - cmpwi cr7,r14,0x2 35 | 4bf4fc - 409c0010 - bge cr7,0x0047a91c 36 | ------------------If L3 Pressed 37 | 4bf500 - 39e00001 - li r15,0x1 38 | 4bf504 - 99f10000 - stb r15,0x0(r17) 39 | 4bf508 - 48000030 - ba 0x0047a948 40 | ------------------Else L3 not pressed 41 | 4bf50c - 89f10000 - lbz r15,0x0(r17) 42 | 4bf510 - 2f8f0000 - cmpwi cr7,r15,0x0 43 | 4bf514 - 419e0024 - beq cr7,0x004bf538 44 | ------------------If L3 not pressed and var = 1 45 | 4bf518 - 39e00000 - li r15,0x0 46 | 4bf51c - 99f10000 - stb r15,0x0(r17) 47 | 4bf520 - 3e203154 - lis r17,3154 48 | 4bf524 - 6231441a - ori r17,r17,441a 49 | 4bf528 - 89d10000 - lbz r14,0x0(r17) 50 | 4bf52c - 71ce0002 - andi r14,r14,0x2 51 | 4bf530 - 69ce0002 - xori r14,r14,0x2 52 | 4bf534 - 99d10000 - stb r14,0x0(r17) 53 | ------------------If L3 not pressed and var = 0 54 | ------------------Clean Up 55 | --------------------------- 56 | 4bf538 - 39c00000 - li r14, 0 57 | 4bf53c - 39e00000 - li r15, 0 58 | 4bf540 - 3a000000 - li r16, 0 59 | 4bf544 - 3a200000 - li r17, 0 60 | 4bf548 - 2f830000 - cmpwi cr7,r3,0x0 61 | 4bf54c - 480929fe - ba 0x000929fc 62 | 63 | 64 | 65 | 0x00577614 - Health 66 | 0x00577628 - Red Orbs 67 | 0x0082256c - Controller value 68 | 0x3154441a - Swimming -------------------------------------------------------------------------------- /Memlocs/GoW3-PS3-BCUS98111_103-Savefile.bt: -------------------------------------------------------------------------------- 1 | //------------------------------------------------ 2 | //--- 010 Editor v9.0.1 Binary Template 3 | // 4 | // File: 5 | // Authors: 6 | // Version: 7 | // Purpose: 8 | // Category: 9 | // File Mask: 10 | // ID Bytes: 11 | // History: 12 | //------------------------------------------------ 13 | 14 | BigEndian(); 15 | 16 | //------------------------------------------------ 17 | typedef struct { 18 | short size ; 19 | char sec[size]; 20 | } sec ; 21 | 22 | typedef struct { 23 | char data[0x1c]; 24 | } u2; 25 | typedef struct { 26 | char data[0xc]; 27 | } u3; 28 | 29 | typedef struct { 30 | char CamName[0x38]; 31 | char CamWad[0x38]; 32 | char unk[0xA0]; 33 | } cameraState; 34 | typedef struct { 35 | short secSize ; 36 | uint unk1; 37 | uint camcount; 38 | uint unk2[2]; 39 | cameraState cams[camcount]; 40 | } camdata ; 41 | 42 | typedef struct { 43 | int playerStateSize ; 44 | char unk1[0x30]; 45 | float KratosPos[4]; 46 | uint unk2[2]; 47 | uint KratosStance ; 48 | char unk3[0x64]; 49 | } playerState ; 50 | 51 | typedef struct { 52 | short musicStateSize ; 53 | char unk[musicStateSize]; 54 | } musicState ; 55 | 56 | typedef struct { 57 | uint unk[4]; 58 | uint wadNum; 59 | uint unk2[3]; 60 | uint dataSize; 61 | char wadName[0x14]; 62 | char data[dataSize]; 63 | } wadInfoEntry; 64 | typedef struct { 65 | char unk[0x3e]; 66 | char name[0x14]; 67 | char unk2[0xe]; 68 | } rWadInfoEntry; 69 | typedef struct { 70 | uint wadCount; 71 | wadInfoEntry wad[wadCount] ; 72 | uint rWadCount; 73 | uint unk[3]; 74 | rWadInfoEntry rWad[rWadCount]; 75 | } wadInfo; 76 | 77 | 78 | uint coed ; 79 | 80 | sec sec1; 81 | camdata camera; 82 | playerState player; 83 | musicState music; 84 | 85 | sec sec2; 86 | sec def ; 87 | sec sec3; 88 | sec sec4 ; 89 | sec sec5; 90 | sec sec6 ; 91 | sec sec7; 92 | sec sec8 ; 93 | sec sec9; 94 | 95 | uint unk1cnt ; 96 | uint unk2cnt ; 97 | 98 | short unk1[unk1cnt]; 99 | u2 unk[unk2cnt]; 100 | char unk3[0x10]; 101 | 102 | uint unk4cnt ; 103 | u3 unk4[unk4cnt]; 104 | 105 | float playtime ; 106 | wadInfo wadinfo ; -------------------------------------------------------------------------------- /Memlocs/GoW2-PS3-savelocs.txt: -------------------------------------------------------------------------------- 1 | MASTER.BIN 2 | 04 - Checksum Base 3 | 08-0b - Secs Played 4 | 0e - Difficulty 5 | 0f - Bonus Play 6 | 7 | A2 - Treasures 8 | 01 - Collect 20 Cyclops Eyes 9 | A3 - Treasures 10 | 01 - Easy 11 | 02 - Normal 12 | 04 - Hard 13 | 08 - Very Hard 14 | 10 - ??? 15 | 20 - ?? 16 | 40 - God Ranking in Challenge Mode 17 | 80 - Titan Ranking in Challenge Mode 18 | 19 | 20 | DATA0x.BIN 21 | 0007 - Costume 22 | 0008-1b - Wad #1 23 | 001d-30- Wad #2 24 | 25 | 0076 - X Pos 26 | 007a - Height 27 | 007e - Y Pos 28 | 29 | 0090 - Swimming 30 | . 31 | 009b - Unlocked 32 | 01 - Blade of Olympus 33 | 02 - ? 34 | 04 - Urn of Gaia 35 | 08 - Urn of the Gorgons 36 | 10 - Urn of Olympus 37 | 20 - Urn of Prometheus 38 | 40 - Urn of the Fates 39 | 80 - Urn of Poseidon 40 | 009c - Unlocked 41 | 01 - ? - Is Something.... 42 | 02 - Rage of the Titans 43 | 04 - Amulet of the Fates 44 | 08 - ? 45 | 10 - ? 46 | 20 - SoD 47 | 40 - Hammer 48 | 80 - Head of Euryale 49 | 009d - Unlocked 50 | 01 - PRage 51 | 02 - CRage 52 | 04 - TBane 53 | 08 - ? - Is Something..... 54 | 10 - Golden Fleece 55 | 20 - AQuake 56 | 40 - Icarus Wings 57 | 80 - ? - Is something..... 58 | 59 | 00a2 - Health 60 | 00a6 - Magic 61 | 00aa - Item Bar 62 | 00ae - Rage 63 | 00b2 - Magic Regen 64 | 00b6 - Red Orbs 65 | 66 | 00cc - Health Extensions 67 | 00cd - Magic Extensions 68 | 00ce - Item Extensions 69 | 00cf - Blades Level 70 | 71 | 00d1 - AQ Level 72 | 00d2 - CR Level 73 | 00d3 - PR Level 74 | 00d4 - TB Level 75 | 00d5 - SoD Level 76 | 00d6 - BH Level 77 | 00d7 - EH Level 78 | 00d8 - BoO Level 79 | 00d9 - Last Selected Magic 80 | 01 - PR 81 | 02 - CR 82 | 03 - TB 83 | 06 - AQ 84 | 10 - EH 85 | 00da - Active Subweapon 86 | 0e - SoD 87 | 0f - BH 88 | 11 - BoO 89 | 90 | 00db - 0 Forced Subwep equipped, 1 Blades Equipped 91 | 00dc - Gorgon Eyes 92 | 00dd - Phoenix Feathers 93 | 94 | 00e2 - Cyclops Eyes 95 | 96 | 00ed - Costume 97 | 98 | 00f6 - Camera 99 | 010e - CamWad 100 | 101 | 083e - Time Played 102 | 0842 - Frozen for cutscene 103 | 0843 - Difficulty 104 | 0844 - Infinite Health 105 | 0845 - Urn of Olympus (Infinite Magic) 106 | 0846 - Urn of Prometheus (Infinite Rage) 107 | 0847 - Urn of the Gorgons (Weapons Petrify Enemies) 108 | 0848 - Urn of Poseidon (Poseidon's Rage) 109 | 0849 - Urn of Gaia (10x red orbs) 110 | 084a - Urn of the Fates (Extend Combo Time) 111 | 112 | 084c - Bonus Play 113 | 114 | 0895 - Times Saved -------------------------------------------------------------------------------- /Memlocs/GoW3-PS3-BCUS98111_103-InfiniteJumps.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $path = "D:\Emus\PS3\dev_hdd0\game\BCUS98111\USRDIR\EBOOT.BIN" 5 | 6 | 7 | 8 | 9 | $ba = [System.IO.File]::ReadAllBytes($path) 10 | #---------------------------------------------------------------------------------- 11 | Function RBytes 12 | { 13 | Param ( 14 | $addr, 15 | $len 16 | ) 17 | $rb = [byte[]]::new($len) 18 | [System.Buffer]::BlockCopy($ba, $addr, $rb, 0, $len) 19 | $rb 20 | } 21 | #---------------------------------------------------------------------------------- 22 | Function RUInt32 23 | { 24 | Param ( 25 | $addr 26 | ) 27 | [bitconverter]::ToUInt32($ba,$addr) 28 | } 29 | #---------------------------------------------------------------------------------- 30 | Function WBytes 31 | { 32 | Param ( 33 | $addr, 34 | $wb 35 | ) 36 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 37 | } 38 | #---------------------------------------------------------------------------------- 39 | Function XorBytes 40 | { 41 | Param ( 42 | [byte[]] $b1, 43 | [byte[]] $b2 44 | ) 45 | $xb = [byte[]]::new($b1.count) 46 | for($i=0; $i -lt $b1.count ; $i++) 47 | { 48 | $xb[$i] = $b1[$i] -bxor $b2[$i] 49 | } 50 | $xb 51 | } 52 | #---------------------------------------------------------------------------------- 53 | function ArrEq($a, $b) { 54 | -not (compare $a $b -syncwindow 0) 55 | } 56 | #---------------------------------------------------------------------------------- 57 | 58 | 59 | cls 60 | 61 | [byte[]] $oldcode = 0x90, 0x1b, 0x04, 0x3c 62 | [byte[]] $newcode = 0x60, 0x00, 0x00, 0x00 63 | [byte[]] $xorcode = 0xf0, 0x1b, 0x04, 0x3c 64 | #[System.BitConverter]::ToString($newcode); 65 | 66 | 67 | $codeloc = 0xccb94 - 0xF700 68 | 69 | if ((RUInt32 0) -ne 0x00454353) { 70 | "No match, BIN still encrypted?" 71 | } else { 72 | "First 4 bytes match" 73 | 74 | $currcode = RBytes $codeloc 4 75 | 76 | if ((ArrEq $currcode $oldcode) -or (ArrEq $currcode $newcode)) 77 | { 78 | if (ArrEq $currcode $oldcode) { 79 | "Patching in infinite jumps" 80 | } 81 | if (ArrEq $currcode $newcode) { 82 | "Restoring limited jumps" 83 | } 84 | 85 | [byte[]] $xb = XorBytes $currcode $xorcode 86 | 87 | WBytes $codeloc $xb 88 | [System.IO.File]::WriteAllBytes($path, $ba) 89 | "Bytes written successfully" 90 | "" 91 | pause 92 | 93 | } else { 94 | "Bytes mismatch at code location" 95 | "No changes made" 96 | "" 97 | pause 98 | } 99 | } 100 | -------------------------------------------------------------------------------- /Memlocs/Medieval_Dynasty-GOG-2.4.0.4.CT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 0 6 | "TD_BPL -->" 7 | 1 8 | 0 9 | 8 Bytes 10 |
Medieval_Dynasty-Win64-Shipping.exe+36f0bf0
11 | 12 | 13 | 1 14 | "IsDebugBuild" 15 | 1 16 | 0 17 | 8 Bytes 18 |
Medieval_Dynasty-Win64-Shipping.exe+36f0bf0 + 438
19 |
20 | 21 | 2 22 | "IsDevelopmentBuild" 23 | 1 24 | 0 25 | 8 Bytes 26 |
Medieval_Dynasty-Win64-Shipping.exe+36f0bf0 + 458
27 |
28 | 29 | 3 30 | "IsShippingBuild" 31 | 1 32 | 0 33 | 8 Bytes 34 |
Medieval_Dynasty-Win64-Shipping.exe+36f0bf0 + 4f8
35 |
36 | 37 | 4 38 | "IsTestBuild" 39 | 1 40 | 0 41 | 8 Bytes 42 |
Medieval_Dynasty-Win64-Shipping.exe+36f0bf0 + 518
43 |
44 | 45 | 5 46 | "IsWindows" 47 | 1 48 | 0 49 | 8 Bytes 50 |
Medieval_Dynasty-Win64-Shipping.exe+36f0bf0 + 538
51 |
52 | 53 | 6 54 | "IsXboxOne" 55 | 1 56 | 0 57 | 8 Bytes 58 |
Medieval_Dynasty-Win64-Shipping.exe+36f0bf0 + 568
59 |
60 |
61 |
62 |
63 | 64 |
65 | -------------------------------------------------------------------------------- /Memlocs/_rint-file.txt: -------------------------------------------------------------------------------- 1 | $path = "D:\Emus\PS3\dev_hdd0\game\NPUA80490\USRDIR\EBOOT.BIN" 2 | $ba = [System.IO.File]::ReadAllBytes($path) 3 | 4 | $bigendian = $true 5 | 6 | ########################################## 7 | Function RBytes 8 | { 9 | Param ( 10 | $addr, 11 | $len 12 | ) 13 | [byte[]] $rb = [byte[]]::new($len) 14 | [System.Buffer]::BlockCopy($ba, $addr, $rb, $0, $rb.Length) 15 | $rb 16 | } 17 | ########################################## 18 | Function RUInt32 19 | { 20 | Param ( 21 | $addr 22 | ) 23 | [byte[]] $rb = [byte[]]::new(4) 24 | [System.Buffer]::BlockCopy($ba, $addr, $rb, 0, 4) 25 | if ($bigendian) { 26 | [Array]::Reverse($rb) 27 | } 28 | [bitconverter]::ToUInt32($rb,0) 29 | } 30 | ########################################## 31 | Function WBytes 32 | { 33 | Param ( 34 | $addr, 35 | $wb 36 | ) 37 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 38 | } 39 | ########################################## 40 | Function WInt32 41 | { 42 | Param ( 43 | $addr, 44 | [Int32]$val 45 | ) 46 | $wb = [bitconverter]::GetBytes($val) 47 | if ($bigendian) { 48 | [Array]::Reverse($wb) 49 | } 50 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 51 | } 52 | ########################################## 53 | Function WSingle 54 | { 55 | Param ( 56 | $addr, 57 | [float]$val 58 | ) 59 | $wb = [bitconverter]::GetBytes($val) 60 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 61 | } 62 | ########################################## 63 | Function WStrA 64 | { 65 | Param ( 66 | $addr, 67 | $str 68 | ) 69 | $wb = [System.Text.Encoding]::UTF8.GetBytes($str) 70 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 71 | } 72 | ########################################## 73 | Function WStrU 74 | { 75 | Param ( 76 | $addr, 77 | $str 78 | ) 79 | $i = 0 80 | foreach ($char in $str) { 81 | $wb = [System.Text.Encoding]::Unicode.GetBytes($char) 82 | if ($bigendian) { 83 | [Array]::Reverse($wb) 84 | } 85 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr + $i * $wb.length, $wb.Length) 86 | } 87 | } 88 | ########################################## 89 | Function WUInt32 90 | { 91 | Param ( 92 | $addr, 93 | $val 94 | ) 95 | $wb = [bitconverter]::GetBytes($val) 96 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 97 | } 98 | ########################################## 99 | Function XorBytes 100 | { 101 | Param ( 102 | [byte[]] $b1, 103 | [byte[]] $b2 104 | ) 105 | [byte[]] $b3 = [byte[]]::new($b1.count) 106 | for($i=0; $i -lt $b1.count ; $i++) 107 | { 108 | $b3[$i] = $b1[$i] -bxor $b2[$i] 109 | } 110 | $b3 111 | } 112 | ########################################## 113 | -------------------------------------------------------------------------------- /Memlocs/FTL.CT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 0 6 | "Fuel" 7 | 0 8 | 4 Bytes 9 |
FTLGame.exe+513490
10 | 11 | ec 12 | 13 |
14 | 15 | 3 16 | "Drones" 17 | 0 18 | 4 Bytes 19 |
FTLGame.exe+513490
20 | 21 | f0 22 | 23 |
24 | 25 | 2 26 | "Scrap" 27 | 0 28 | 4 Bytes 29 |
FTLGame.exe+513490
30 | 31 | f4 32 | 33 |
34 | 35 | 1 36 | "Missiles" 37 | 0 38 | 4 Bytes 39 |
FTLGame.exe+513490
40 | 41 | f8 42 | 43 |
44 | 45 | 4 46 | "Hull" 47 | 0 48 | 4 Bytes 49 |
FTLGame.exe+513490
50 | 51 | fc 52 | 53 |
54 | 55 | 5 56 | "Beacons" 57 | 0 58 | 4 Bytes 59 |
FTLGame.exe+5139B0
60 |
61 | 62 | 8 63 | "Total Scrap" 64 | 0 65 | 4 Bytes 66 |
FTLGame.exe+5139D8
67 |
68 | 69 | 7 70 | "Scrap sector?" 71 | 0 72 | 4 Bytes 73 |
FTLGame.exe+5139F4
74 |
75 | 76 | 6 77 | "Sector" 78 | 0 79 | 4 Bytes 80 |
FTLGame.exe+513C00
81 |
82 | 83 | 9 84 | "Difficulty" 85 | 4 Bytes 86 |
FTLGame.exe+513C0C
87 |
88 |
89 | 90 |
91 | -------------------------------------------------------------------------------- /Memlocs/wo.CT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 4 6 | "xTile" 7 | 8 | 4 Bytes 9 |
jfxwebkit.dll+022c3c78
10 | 11 | 35c8 12 | 1124 13 | 1b0 14 | 5e8 15 | 13ac 16 | 17 |
18 | 19 | 7 20 | "yTile" 21 | 22 | 4 Bytes 23 |
jfxwebkit.dll+022c3c78
24 | 25 | 35cc 26 | 1124 27 | 1b0 28 | 5e8 29 | 13ac 30 | 31 |
32 | 33 | 0 34 | "xPos" 35 | 36 | Float 37 |
"OpenAL64.dll"+0005C308
38 | 39 | C0 40 | 41 |
42 | 43 | 1 44 | "yPos" 45 | 46 | Float 47 |
"OpenAL64.dll"+0005C308
48 | 49 | C8 50 | 51 |
52 | 53 | 2 54 | "Height" 55 | 56 | Float 57 |
"OpenAL64.dll"+0005C308
58 | 59 | C4 60 | 61 |
62 | 63 | 3 64 | "Facing" 65 | 66 | Float 67 |
"OpenAL64.dll"+0005C308
68 | 69 | 130 70 | 71 |
72 | 73 | 6 74 | "pointerscan result" 75 | 76 | 4 Bytes 77 |
"jfxwebkit.dll"+01C8191C
78 | 79 | 1AC 80 | 3E8 81 | 298 82 | 83 |
84 |
85 | 86 | Info about this table: 87 | 88 |
89 | -------------------------------------------------------------------------------- /Memlocs/EldenRing-Steam-1.3.1.0.ct: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 4 6 | "DebugFlags" 7 | 8 | 1 9 | 10 | 11 | 7 12 | "Set C3 to fix DbgDrawCrashes" 13 | 1 14 | 0 15 | Byte 16 |
eldenring.exe+25EAD70
17 |
18 | 19 | 3 20 | "Player NoDead" 21 | 0 22 | Byte 23 |
eldenring.exe+3c65050
24 |
25 | 26 | 2 27 | "Player Hide" 28 | 0 29 | Byte 30 |
eldenring.exe+3c65058
31 |
32 | 33 | 9 34 | "Draw ChrHitboxes" 35 | 0 36 | Byte 37 |
eldenring.exe+3c68eff
38 |
39 | 40 | 8 41 | "Draw Geometry" 42 | 0 43 | Byte 44 |
eldenring.exe+3c689f0
45 |
46 | 47 | 6 48 | "Draw Boundary Walls" 49 | 0 50 | Byte 51 |
eldenring.exe+3c68f00
52 |
53 | 54 | 0 55 | "Enable All Map PoI" 56 | 0 57 | Byte 58 |
eldenring.exe+3c6b7b1
59 |
60 | 61 | 1 62 | "Display Full Map" 63 | 0 64 | Byte 65 |
eldenring.exe+3c6b7b0
66 |
67 | 68 | 5 69 | "Draw Stagger Bar" 70 | 0 71 | Byte 72 |
eldenring.exe+3c65048
73 | 74 | 69 75 | 76 |
77 |
78 |
79 |
80 | 81 |
82 | -------------------------------------------------------------------------------- /Memlocs/SuperMeatBoy-PS-DeathCounter.txt: -------------------------------------------------------------------------------- 1 | $ErrorActionPreference= 'silentlycontinue' 2 | $procname = "SuperMeatBoy" 3 | 4 | [console]::CursorVisible = $false 5 | 6 | $Host.UI.RawUI.BackgroundColor = 'Black' 7 | $Host.UI.RawUI.ForegroundColor = 'Green' 8 | 9 | Function RBytes 10 | { 11 | Param ( 12 | $addr, 13 | $sizetoread 14 | ) 15 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 16 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 17 | $buff 18 | } 19 | 20 | Function RAsciiStr 21 | { 22 | Param ( 23 | $addr 24 | ) 25 | ([System.Text.Encoding]::ASCII.GetString($(RBytes $addr 30))).Split([char]0)[0] 26 | } 27 | Function RInt16 28 | { 29 | Param ( 30 | $addr 31 | ) 32 | [bitconverter]::ToInt16($(RBytes $addr 2),0) 33 | } 34 | Function RInt32 35 | { 36 | Param ( 37 | $addr 38 | ) 39 | $sizetoread = 4 40 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 41 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 42 | [bitconverter]::ToInt32($(RBytes $addr 4),0) 43 | } 44 | Function RUInt8 45 | { 46 | Param ( 47 | $addr 48 | ) 49 | RBytes $addr 1 50 | } 51 | Function RUInt16 52 | { 53 | Param ( 54 | $addr 55 | ) 56 | [bitconverter]::ToUInt16($(RBytes $addr 2),0) 57 | } 58 | Function RUInt32 59 | { 60 | Param ( 61 | $addr 62 | ) 63 | $sizetoread = 4 64 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 65 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 66 | [bitconverter]::ToUInt32($(RBytes $addr 4),0) 67 | } 68 | Function RSingle 69 | { 70 | Param ( 71 | $addr 72 | ) 73 | $sizetoread = 4 74 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 75 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 76 | [bitconverter]::ToSingle($(RBytes $addr 4),0) 77 | } 78 | $signature = @" 79 | [DllImport("kernel32.dll")] public static extern IntPtr OpenProcess( 80 | uint h,bool b ,uint p); 81 | [DllImport("kernel32.dll")] public static extern bool ReadProcessMemory( 82 | IntPtr hp,IntPtr Base,[Out]Byte[] buff,int Size,[Out]int bread); 83 | "@ 84 | 85 | $rpm = Add-Type -MemberDefinition $signature -Name rpm -PassThru 86 | $access = 0x001F0FFF 87 | 88 | 89 | cls 90 | 91 | do { 92 | $ba = (get-Process $procname).MainModule.BaseAddress 93 | $procid = (get-Process $procname).ID 94 | $proc = $rpm::OpenProcess($access, $false, $procid) 95 | 96 | #125 97 | #$deathloc = (RUInt32 ($ba + 0x30a380)) + 0x38AC 98 | 99 | #og 100 | $deathloc = (RUInt32 ($ba + 0x2d55ac)) + 0x1c8c 101 | $deaths = RInt32 $deathloc 102 | 103 | 104 | $startdate = [datetime] "2021/11/14 14:58:00" 105 | $enddate = get-date 106 | $playtime = NEW-TIMESPAN -start $startdate -end ($enddate.ToShortDateString() + " " + $enddate.ToLongTimeString()) 107 | 108 | $delta = RSingle ($ba + 0x2d6e88) 109 | 110 | 111 | [Console]::SetCursorPosition(0,0) 112 | "Total playtime: " + $playtime.Days.ToString() + "d " + $playtime.Hours.ToString().PadLeft(2, '0') + ":" + $playtime.Minutes.ToString().PadLeft(2, '0') + ":" + $playtime.Seconds.ToString().PadLeft(2, '0') + " " 113 | "Deaths: $deaths " 114 | "Frametime: $delta " 115 | 116 | sleep 0.1 117 | } 118 | while ($true) -------------------------------------------------------------------------------- /Memlocs/Celeste-MS-PS-DeathCounter.txt: -------------------------------------------------------------------------------- 1 | $ErrorActionPreference= 'silentlycontinue' 2 | $procname = "Celeste" 3 | 4 | [console]::CursorVisible = $false 5 | 6 | $Host.UI.RawUI.BackgroundColor = 'Black' 7 | $Host.UI.RawUI.ForegroundColor = 'Green' 8 | 9 | Function RBytes 10 | { 11 | Param ( 12 | $addr, 13 | $sizetoread 14 | ) 15 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 16 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 17 | $buff 18 | } 19 | 20 | Function RAsciiStr 21 | { 22 | Param ( 23 | $addr 24 | ) 25 | ([System.Text.Encoding]::ASCII.GetString($(RBytes $addr 30))).Split([char]0)[0] 26 | } 27 | Function RInt16 28 | { 29 | Param ( 30 | $addr 31 | ) 32 | [bitconverter]::ToInt16($(RBytes $addr 2),0) 33 | } 34 | Function RInt32 35 | { 36 | Param ( 37 | $addr 38 | ) 39 | $sizetoread = 4 40 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 41 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 42 | [bitconverter]::ToInt32($(RBytes $addr 4),0) 43 | } 44 | Function RInt64 45 | { 46 | Param ( 47 | $addr 48 | ) 49 | $sizetoread = 8 50 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 51 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 52 | [bitconverter]::ToInt64($(RBytes $addr 8),0) 53 | } 54 | Function RUInt8 55 | { 56 | Param ( 57 | $addr 58 | ) 59 | RBytes $addr 1 60 | } 61 | Function RUInt16 62 | { 63 | Param ( 64 | $addr 65 | ) 66 | [bitconverter]::ToUInt16($(RBytes $addr 2),0) 67 | } 68 | Function RUInt32 69 | { 70 | Param ( 71 | $addr 72 | ) 73 | $sizetoread = 4 74 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 75 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 76 | [bitconverter]::ToUInt32($(RBytes $addr 4),0) 77 | } 78 | Function RUInt64 79 | { 80 | Param ( 81 | $addr 82 | ) 83 | $sizetoread = 8 84 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 85 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 86 | [bitconverter]::ToUInt64($(RBytes $addr 8),0) 87 | } 88 | Function RSingle 89 | { 90 | Param ( 91 | $addr 92 | ) 93 | $sizetoread = 4 94 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 95 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 96 | [bitconverter]::ToSingle($(RBytes $addr 4),0) 97 | } 98 | $signature = @" 99 | [DllImport("kernel32.dll")] public static extern IntPtr OpenProcess( 100 | uint h,bool b ,uint p); 101 | [DllImport("kernel32.dll")] public static extern bool ReadProcessMemory( 102 | IntPtr hp,IntPtr Base,[Out]Byte[] buff,int Size,[Out]int bread); 103 | "@ 104 | 105 | $rpm = Add-Type -MemberDefinition $signature -Name rpm -PassThru 106 | $access = 0x001F0FFF 107 | 108 | 109 | cls 110 | 111 | do { 112 | #$ba = (get-Process $procname).MainModule.BaseAddress 113 | $procid = (get-Process $procname).ID 114 | $proc = $rpm::OpenProcess($access, $false, $procid) 115 | 116 | foreach ($mod in (get-Process $procname).Modules) { 117 | if ($mod.ModuleName -eq "Celeste.dll") { 118 | $ba = $mod.BaseAddress 119 | } 120 | } 121 | 122 | 123 | $deathloc = [IntPtr]((RInt64 ($ba.ToInt64() + 0x75bb88)) + 0x54) 124 | $deaths = RInt32 $deathloc 125 | 126 | 127 | 128 | [Console]::SetCursorPosition(0,0) 129 | "Deaths: $deaths " 130 | 131 | 132 | sleep 1 133 | } 134 | while ($true) -------------------------------------------------------------------------------- /Memlocs/GoW3-PS3-BCUS98111_103.txt: -------------------------------------------------------------------------------- 1 | D:\emus\ps3\dev_hdd0\home\00000001\savedata 2 | BCUS98111-AUTOSAVE 3 | BCUS98111-USERDATA 4 | 5 | 52b2dc 6 | +4c Red Orbs 7 | 8 | 9 | SAVEDATA 10 | +00046 UInt16 Offset to SND_ 11 | 12 | +0004F Byte Camera Style related (?) 13 | 14 | +00058 0x10 RCM_ Cam Name 15 | +00168 0x10 CAM Name 16 | +001A0 0x20 WAD Name 17 | 18 | [0x46] 19 | +00048 UInt32 Msg offset? 20 | 21 | +0007C Float xPos 22 | +00080 Float yPos 23 | +00084 Float zPos 24 | 25 | +000A0 Byte Unlocks 26 | 00000001 Aphrodite's Garter 27 | 00000010 Hephaestus' Ring 28 | 00000100 Hera's Chalice 29 | 00001000 Zeus' Eagle 30 | 00010000 Daedalus' Schematics 31 | +000A1 Byte Unlocks 32 | 00000001 Nemesis Whip 33 | 00000010 Blades of Athena 34 | 00000100 Claws of Hades 35 | 00001000 Hades Helm 36 | 00010000 Helios' Shield 37 | 00100000 Hermes' Coin 38 | 01000000 Hercules' Shoulder Guard 39 | 10000000 Poseidon's Conch Shell 40 | +000A2 Byte Unlocks 41 | 00000010 Blade of Olympus (Rage) 42 | 00000100 Boots of Hermes 43 | 00001000 Poseidon's Trident 44 | 00010000 Blade of Olympus 45 | 10000000 Nemean Cestus 46 | +000A3 Byte Unlocks 47 | 00000001 Bow of Apollo 48 | 00000100 Head of Helios 49 | 00001000 Boreas Icestorm 50 | 00010000 Golden Fleece 51 | 00100000 Icarus Wings 52 | 53 | +000A8 Float Health 54 | +000AC Float Magic 55 | +000B0 Float Item 56 | +000B4 Float Rage 57 | +000B8 Float Health Regen 58 | +000BC Float Magic Regen 59 | +000C0 Float Item Regen 60 | 61 | +000C4 Float Red Orbs 62 | 63 | +000DA Byte Health Extensions (0-4) 64 | +000DB Byte Magic Extensions (0-5) 65 | +000DC Byte Item Extension (0-5) 66 | +000DD Byte Bow of Apollo Level (0-1) 67 | +000DE Byte Boots of Hermes Level (0-1) 68 | +000DF Byte Head of Helios Level (0-1) 69 | +000E0 Byte Nemean Cestus Level (0-4) 70 | +000E1 Byte Nemesis Whip Level (0-4) 71 | +000E2 Byte Blades Level (0-5) 72 | +000E3 Byte Claws of Hades Level (0-4) 73 | 74 | +000E6 Byte Selected Weapon 75 | 76 | +000E9 Byte Gorgon Eyes 77 | +000EA Byte Phoenix Feathers 78 | +000EB Byte Minotaur Horns 79 | 80 | +0048A Byte Difficulty 81 | +0048B Byte Costume 82 | 0 Kratos 83 | 1 Fear Kratos 84 | 2 Apollo 85 | 3 Morpheus Armor 86 | 4 Phantom of Chaos 87 | 5 Forgotten Warrior 88 | 6 Dominus 89 | 7 Deimos 90 | 8 Kratos 91 | 92 | 93 | +004F4 Int32 Red Orbs Collected 94 | 95 | 96 | 97 | ---------------- 98 | USERDATA\SAVEDATA 99 | +0x06 Byte Unlocks 100 | 00000001 Challenge #5 Beaten 101 | 00000010 Challenge #6 Beaten 102 | 00000100 Challenge #7 Beaten 103 | +0x07 Byte Unlocks 104 | 00000001 Easy Beaten 105 | 00000010 Normal Beaten 106 | 00000100 Hard Beaten 107 | 00001000 Very Hard Beaten 108 | 00010000 Challenge #1 Beaten 109 | 00100000 Challenge #2 Beaten 110 | 01000000 Challenge #3 Beaten 111 | 10000000 Challenge #4 Beaten 112 | +0x0E Byte Music Volume (0-100) 113 | +0x0F Byte Speech Volume (0-100) 114 | +0x10 Byte SFX Volume (0-100) 115 | +0x11 Byte Cinematics Volume (0-100) 116 | +0x12 Byte Sound Mode 117 | 0 Stereo 118 | 1 Headphones 119 | 2 Dolby Pro Logic II 120 | +0x13 Byte Brightness (0-100) 121 | +0x14 Byte Screen Scale (0-100) 122 | +0x15 Byte Screen Location X (0-100) 123 | +0x16 Byte Screen Location Y (0-100) 124 | +0x17 Byte Tutorial Display (0/1/3) 125 | +0x18 Byte Subtitles 126 | +0x1A Byte Invert Flight Controls 127 | +0x1B Byte Invert Free Camera 128 | 129 | +0x1D Byte Costume 130 | 0 Kratos 131 | 1 Fear Kratos 132 | 133 | -------------- 134 | Cheat Code - 10054010 -------------------------------------------------------------------------------- /Memlocs/DeS-PS3-BLUS30443_100_LogoSkip.txt: -------------------------------------------------------------------------------- 1 | $path = "D:\Emus\PS3\dev_hdd0\game\NPUB30910\USRDIR\EBOOT.BIN" 2 | $size = (Get-Item $path).length 3 | 4 | $ba = [System.IO.File]::ReadAllBytes($path) 5 | ########################################## 6 | Function RBytes 7 | { 8 | Param ( 9 | $addr, 10 | $size 11 | ) 12 | [byte[]] $rb = [byte[]]::new(4) 13 | [System.Buffer]::BlockCopy($ba, $addr, $rb, 0, $rb.Length) 14 | $rb 15 | } 16 | ########################################## 17 | Function RUInt32 18 | { 19 | Param ( 20 | $addr 21 | ) 22 | [bitconverter]::ToUInt32($ba,$addr) 23 | } 24 | 25 | ########################################## 26 | Function WBytes 27 | { 28 | Param ( 29 | $addr, 30 | $wb 31 | ) 32 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 33 | } 34 | ########################################## 35 | Function WStrA 36 | { 37 | Param ( 38 | $addr, 39 | $str 40 | ) 41 | $wb = [System.Text.Encoding]::UTF8.GetBytes($str) 42 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 43 | } 44 | ########################################## 45 | Function WStrU 46 | { 47 | Param ( 48 | $addr, 49 | $str 50 | ) 51 | $wb = [System.Text.Encoding]::Unicode.GetBytes($str) 52 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 53 | } 54 | ########################################## 55 | Function WUInt32 56 | { 57 | Param ( 58 | $addr, 59 | $val 60 | ) 61 | $wb = [bitconverter]::GetBytes($val) 62 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 63 | } 64 | ########################################## 65 | Function XorBytes 66 | { 67 | Param ( 68 | [byte[]] $b1, 69 | [byte[]] $b2 70 | ) 71 | [byte[]] $b3 = [byte[]]::new($b1.count) 72 | for($i=0; $i -lt $b1.count ; $i++) 73 | { 74 | $b3[$i] = $b1[$i] -bxor $b2[$i] 75 | } 76 | $b3 77 | } 78 | ########################################## 79 | Function AreArraysEqual($a1, $a2) { 80 | if ($a1 -isnot [array] -or $a2 -isnot [array]) { 81 | throw "Both inputs must be an array" 82 | } 83 | if ($a1.Rank -ne $a2.Rank) { 84 | return $false 85 | } 86 | if ([System.Object]::ReferenceEquals($a1, $a2)) { 87 | return $true 88 | } 89 | for ($r = 0; $r -lt $a1.Rank; $r++) { 90 | if ($a1.GetLength($r) -ne $a2.GetLength($r)) { 91 | return $false 92 | } 93 | } 94 | 95 | $enum1 = $a1.GetEnumerator() 96 | $enum2 = $a2.GetEnumerator() 97 | 98 | while ($enum1.MoveNext() -and $enum2.MoveNext()) { 99 | if ($enum1.Current -ne $enum2.Current) { 100 | return $false 101 | } 102 | } 103 | return $true 104 | } 105 | ########################################## 106 | 107 | 108 | #Modify TitleStep 32 to not trigger logos 109 | cls 110 | $codeloc = 0x189b38 - 0xF700 111 | [byte[]] $newcode = 0x38, 0x80, 0x00, 0x00 112 | [byte[]] $oldcode = 0x38, 0x80, 0x00, 0x01 113 | 114 | 115 | 116 | if (AreArraysEqual(RBytes $codeloc 4) $oldcode) { 117 | "Old bytes found, patching." 118 | WBytes $codeloc $newcode 119 | [System.IO.File]::WriteAllBytes($path, $ba) 120 | "Bytes written successfully" 121 | "" 122 | pause 123 | } else { 124 | if (AreArraysEqual(RBytes $codeloc 4) $newcode) { 125 | "New bytes found, patching." 126 | WBytes $codeloc $oldcode 127 | [System.IO.File]::WriteAllBytes($path, $ba) 128 | "Bytes written successfully" 129 | "" 130 | pause 131 | } else { 132 | "Bytes not recognized, doing nothing." 133 | "" 134 | pause 135 | } 136 | } -------------------------------------------------------------------------------- /Memlocs/DeS-PS3-BLUS30443_100_LoadSysPropsFromFile.txt: -------------------------------------------------------------------------------- 1 | $path = "D:\Emus\PS3\dev_hdd0\game\NPUB30910\USRDIR\EBOOT.BIN" 2 | $size = (Get-Item $path).length 3 | 4 | $ba = [System.IO.File]::ReadAllBytes($path) 5 | ########################################## 6 | Function RBytes 7 | { 8 | Param ( 9 | $addr, 10 | $size 11 | ) 12 | [byte[]] $rb = [byte[]]::new(4) 13 | [System.Buffer]::BlockCopy($ba, $addr, $rb, 0, $rb.Length) 14 | $rb 15 | } 16 | ########################################## 17 | Function RUInt32 18 | { 19 | Param ( 20 | $addr 21 | ) 22 | [bitconverter]::ToUInt32($ba,$addr) 23 | } 24 | 25 | ########################################## 26 | Function WBytes 27 | { 28 | Param ( 29 | $addr, 30 | $wb 31 | ) 32 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 33 | } 34 | ########################################## 35 | Function WStrA 36 | { 37 | Param ( 38 | $addr, 39 | $str 40 | ) 41 | $wb = [System.Text.Encoding]::UTF8.GetBytes($str) 42 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 43 | } 44 | ########################################## 45 | Function WStrU 46 | { 47 | Param ( 48 | $addr, 49 | $str 50 | ) 51 | $wb = [System.Text.Encoding]::Unicode.GetBytes($str) 52 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 53 | } 54 | ########################################## 55 | Function WUInt32 56 | { 57 | Param ( 58 | $addr, 59 | $val 60 | ) 61 | $wb = [bitconverter]::GetBytes($val) 62 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 63 | } 64 | ########################################## 65 | Function XorBytes 66 | { 67 | Param ( 68 | [byte[]] $b1, 69 | [byte[]] $b2 70 | ) 71 | [byte[]] $b3 = [byte[]]::new($b1.count) 72 | for($i=0; $i -lt $b1.count ; $i++) 73 | { 74 | $b3[$i] = $b1[$i] -bxor $b2[$i] 75 | } 76 | $b3 77 | } 78 | ########################################## 79 | Function AreArraysEqual($a1, $a2) { 80 | if ($a1 -isnot [array] -or $a2 -isnot [array]) { 81 | throw "Both inputs must be an array" 82 | } 83 | if ($a1.Rank -ne $a2.Rank) { 84 | return $false 85 | } 86 | if ([System.Object]::ReferenceEquals($a1, $a2)) { 87 | return $true 88 | } 89 | for ($r = 0; $r -lt $a1.Rank; $r++) { 90 | if ($a1.GetLength($r) -ne $a2.GetLength($r)) { 91 | return $false 92 | } 93 | } 94 | 95 | $enum1 = $a1.GetEnumerator() 96 | $enum2 = $a2.GetEnumerator() 97 | 98 | while ($enum1.MoveNext() -and $enum2.MoveNext()) { 99 | if ($enum1.Current -ne $enum2.Current) { 100 | return $false 101 | } 102 | } 103 | return $true 104 | } 105 | ########################################## 106 | 107 | 108 | #Load loose system.properties file from system:/ 109 | cls 110 | $codeloc = 0xa9ce24 - 0xF700 111 | [byte[]] $newcode = 0x38, 0x60, 0x00, 0x00 112 | [byte[]] $oldcode = 0x4b, 0x5a, 0xde, 0x35 113 | 114 | 115 | 116 | if (AreArraysEqual(RBytes $codeloc 4) $oldcode) { 117 | "Old bytes found, patching." 118 | WBytes $codeloc $newcode 119 | [System.IO.File]::WriteAllBytes($path, $ba) 120 | "Bytes written successfully" 121 | "" 122 | pause 123 | } else { 124 | if (AreArraysEqual(RBytes $codeloc 4) $newcode) { 125 | "New bytes found, patching." 126 | WBytes $codeloc $oldcode 127 | [System.IO.File]::WriteAllBytes($path, $ba) 128 | "Bytes written successfully" 129 | "" 130 | pause 131 | } else { 132 | "Bytes not recognized, doing nothing." 133 | "" 134 | pause 135 | } 136 | } -------------------------------------------------------------------------------- /Memlocs/DeS-PS3-BLUS30443_100_LoadM99Luabnd.txt: -------------------------------------------------------------------------------- 1 | $path = "D:\Emus\PS3\dev_hdd0\game\NPUB30910\USRDIR\EBOOT.BIN" 2 | $size = (Get-Item $path).length 3 | 4 | $ba = [System.IO.File]::ReadAllBytes($path) 5 | ########################################## 6 | Function RBytes 7 | { 8 | Param ( 9 | $addr, 10 | $size 11 | ) 12 | [byte[]] $rb = [byte[]]::new(4) 13 | [System.Buffer]::BlockCopy($ba, $addr, $rb, 0, $rb.Length) 14 | $rb 15 | } 16 | ########################################## 17 | Function RUInt32 18 | { 19 | Param ( 20 | $addr 21 | ) 22 | [bitconverter]::ToUInt32($ba,$addr) 23 | } 24 | 25 | ########################################## 26 | Function WBytes 27 | { 28 | Param ( 29 | $addr, 30 | $wb 31 | ) 32 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 33 | } 34 | ########################################## 35 | Function WStrA 36 | { 37 | Param ( 38 | $addr, 39 | $str 40 | ) 41 | $wb = [System.Text.Encoding]::UTF8.GetBytes($str) 42 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 43 | } 44 | ########################################## 45 | Function WStrU 46 | { 47 | Param ( 48 | $addr, 49 | $str 50 | ) 51 | $wb = [System.Text.Encoding]::Unicode.GetBytes($str) 52 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 53 | } 54 | ########################################## 55 | Function WUInt32 56 | { 57 | Param ( 58 | $addr, 59 | $val 60 | ) 61 | $wb = [bitconverter]::GetBytes($val) 62 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 63 | } 64 | ########################################## 65 | Function XorBytes 66 | { 67 | Param ( 68 | [byte[]] $b1, 69 | [byte[]] $b2 70 | ) 71 | [byte[]] $b3 = [byte[]]::new($b1.count) 72 | for($i=0; $i -lt $b1.count ; $i++) 73 | { 74 | $b3[$i] = $b1[$i] -bxor $b2[$i] 75 | } 76 | $b3 77 | } 78 | ########################################## 79 | Function AreArraysEqual($a1, $a2) { 80 | if ($a1 -isnot [array] -or $a2 -isnot [array]) { 81 | throw "Both inputs must be an array" 82 | } 83 | if ($a1.Rank -ne $a2.Rank) { 84 | return $false 85 | } 86 | if ([System.Object]::ReferenceEquals($a1, $a2)) { 87 | return $true 88 | } 89 | for ($r = 0; $r -lt $a1.Rank; $r++) { 90 | if ($a1.GetLength($r) -ne $a2.GetLength($r)) { 91 | return $false 92 | } 93 | } 94 | 95 | $enum1 = $a1.GetEnumerator() 96 | $enum2 = $a2.GetEnumerator() 97 | 98 | while ($enum1.MoveNext() -and $enum2.MoveNext()) { 99 | if ($enum1.Current -ne $enum2.Current) { 100 | return $false 101 | } 102 | } 103 | return $true 104 | } 105 | ########################################## 106 | 107 | 108 | #Allow loading of m99.luabnd 109 | cls 110 | $codeloc = 0x34e48c - 0xF700 111 | [byte[]] $newcode = 0x60, 0x00, 0x00, 0x00 112 | [byte[]] $oldcode = 0x41, 0x9e, 0x00, 0xdc 113 | [byte[]] $codexor = 0x21, 0x9e, 0x00, 0xdc 114 | 115 | 116 | if (AreArraysEqual(RBytes $codeloc 4) $oldcode) { 117 | "Old bytes found, patching." 118 | WBytes $codeloc $newcode 119 | [System.IO.File]::WriteAllBytes($path, $ba) 120 | "Bytes written successfully" 121 | "" 122 | pause 123 | } else { 124 | if (AreArraysEqual(RBytes $codeloc 4) $newcode) { 125 | "New bytes found, patching." 126 | WBytes $codeloc $oldcode 127 | [System.IO.File]::WriteAllBytes($path, $ba) 128 | "Bytes written successfully" 129 | "" 130 | pause 131 | } else { 132 | "Bytes not recognized, doing nothing." 133 | "" 134 | pause 135 | } 136 | } -------------------------------------------------------------------------------- /Memlocs/ssbm.CT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 0 6 | "Time remaining" 7 | 8 | Custom 9 | 4 Byte Big Endian 10 |
8046B6C8
11 |
12 | 13 | 1 14 | "target of 2nd hp display" 15 | 16 | Byte 17 |
804A1134
18 |
19 | 20 | 2 21 | "Timer Active" 22 | 23 | Byte 24 |
8046B6A5
25 |
26 | 27 | 3 28 | "P1 char id" 29 | 30 | Byte 31 |
803F0E0A
32 |
33 | 34 | 4 35 | "P1 color id" 36 | 37 | Byte 38 |
803F0E09
39 |
40 | 41 | 5 42 | "Match end boolean" 43 | 44 | Byte 45 |
8046B6A6
46 |
47 | 48 | 6 49 | "Match state flag?" 50 | 51 | Byte 52 |
8046B6A0
53 |
54 | 55 | 7 56 | "P3 HP" 57 | 58 | Custom 59 | 2 Byte Big Endian 60 |
804A119A
61 |
62 | 63 | 8 64 | "Camera y angle" 65 | 66 | Custom 67 | Float Big Endian 68 |
80452C80
69 |
70 | 71 | 10 72 | "Camera x angle" 73 | 74 | Custom 75 | Float Big Endian 76 |
80452C7C
77 |
78 | 79 | 11 80 | "P1 x pos" 81 | 82 | Custom 83 | Float Big Endian 84 |
80E4B990
85 |
86 | 87 | 12 88 | "p1 height" 89 | 90 | Custom 91 | Float Big Endian 92 |
80E4B994
93 |
94 |
95 | 96 |
97 | -------------------------------------------------------------------------------- /Memlocs/GoWR-Steam-1.0.614.9211-Savefile.bt: -------------------------------------------------------------------------------- 1 | //------------------------------------------------ 2 | //--- 010 Editor v9.0.1 Binary Template 3 | // 4 | // File: 5 | // Authors: 6 | // Version: 7 | // Purpose: 8 | // Category: 9 | // File Mask: 10 | // ID Bytes: 11 | // History: 12 | //------------------------------------------------ 13 | 14 | LittleEndian(); 15 | 16 | //------------------------------------------------ 17 | 18 | 19 | typedef struct { 20 | char unkData[0x20]; 21 | } firstunk ; 22 | 23 | typedef struct { 24 | uint64 modifiedTime ; 25 | uint version; 26 | uint buildChangelist; 27 | uint prefsSize ; 28 | uint saveGameSize ; 29 | uint totalSize ; 30 | uint padding; 31 | 32 | } SaveFileHeader; 33 | 34 | typedef struct { 35 | uint64 modifiedTime ; 36 | uint version ; 37 | uint buildChangeList ; 38 | char title[0x100]; 39 | char debugString[0x40]; 40 | uint gamePlayTime ; 41 | uint saveGameSessionId ; 42 | uint nHardSaveBytes ; 43 | uint nSoftSaveBytes ; 44 | uint nSoftPlayerStateDataBytes ; 45 | uint requiredPlayGoChunkNameHash ; 46 | uint realmMsgID; 47 | uint regionMsgID; 48 | uint questMsgID; 49 | uint questDescMsgID; 50 | uint imgID; 51 | uint serialNumber ; 52 | byte bitfield; 53 | byte puzzleAssistance; 54 | byte difficultySimplified; 55 | byte difficulty; 56 | byte systemVersion[0x3c]; 57 | } SaveGameDataHeader; 58 | 59 | typedef struct { 60 | ushort mapStateSize ; 61 | byte mapState[mapStateSize]; 62 | } GameMap; 63 | 64 | typedef struct { 65 | ushort progressionFactsSoftStateSize; 66 | byte progressionFacts[progressionFactsSoftStateSize]; 67 | } ProgressionFactsSoftState; 68 | 69 | typedef struct { 70 | uint questSoftStateSize ; 71 | byte questData[questSoftStateSize]; 72 | } questSoftState; 73 | 74 | typedef struct { 75 | ushort equipmentSaveSize ; 76 | byte equipmentData[equipmentSaveSize]; 77 | } equipmentStateData; 78 | 79 | typedef struct { 80 | uint resourcesSoftStateSize ; 81 | byte resourcesData[resourcesSoftStateSize]; 82 | } resourcesStateData; 83 | 84 | typedef struct { 85 | ushort lootSaveSize ; 86 | byte lootData[lootSaveSize]; 87 | } lootManagerStateData; 88 | 89 | typedef struct { 90 | ushort skillTreeStateSize ; 91 | byte skillTreeData[skillTreeStateSize]; 92 | } skillTreeStateData; 93 | 94 | typedef struct { 95 | uint encounterSoftStateSize ; 96 | byte encounterSoftStateVersion; 97 | byte encounterStateData[encounterSoftStateSize]; 98 | } encounterSoftStateData; 99 | 100 | typedef struct { 101 | byte size ; 102 | byte data[size]; 103 | } generic8; 104 | typedef struct { 105 | ushort size ; 106 | byte data[size]; 107 | } generic16; 108 | typedef struct { 109 | uint size ; 110 | byte data[size]; 111 | } generic32; 112 | 113 | 114 | SaveFileHeader sfh; 115 | firstunk unkdata; 116 | SaveGameDataHeader sgdh; 117 | FSeek(0x440); GameMap mapState; 118 | ProgressionFactsSoftState progression; 119 | questSoftState quest; 120 | equipmentStateData equipment; 121 | resourcesStateData resources; 122 | lootManagerStateData loot; 123 | skillTreeStateData skillTree; 124 | 125 | generic16 partySoftStateSize; 126 | generic16 compassStateSize; 127 | encounterSoftStateData encounter; 128 | generic32 levelScriptingSoftSave; 129 | generic16 banter; 130 | 131 | 132 | uint end; -------------------------------------------------------------------------------- /Memlocs/GOWA-PS3-savelocs.txt: -------------------------------------------------------------------------------- 1 | System 2 | ----- 3 | 17 - Difficulties Beaten 4 | - 1 = Easy 5 | - 2 = Normal 6 | - 4 = Hard 7 | - 8 = Very Hard 8 | 1A - Artifacts 9 | - 01 = Statue Worker's Idol (Increased stun) 10 | - 02 = AntiKythera Mechanism (HP Drain) 11 | - 04 = ???? 12 | 1B - Artifacts 13 | - 01 = Prisoner's Oath Stone (Inf Rage) 14 | - 02 = Circe's Vial (3x combo time) 15 | - 04 = Oracle Seeker's Offering (10x red orbs) 16 | - 08 = Aletheia's Charm (66% damage) 17 | - 10 = Boat Captain's Idol (Inf Magic) 18 | - 20 = Orkos' Cloak (HP Regen) 19 | - 40 = StoneMason's Chisel (Reduced Cooldown) 20 | - 80 = Archimedes' Treatise (Win QTEs) 21 | 1C - Game Text 22 | - 1 = English 23 | - 2 = French 24 | - 3 = Portugese 25 | - 4 = Spanish 26 | 1D - Speech Text 27 | - 1 = English 28 | - 2 = French 29 | - 3 = Portugese 30 | - 4 = Spanish 31 | 1E - Music Volume (0-255) 32 | 1F - Speech Volume (0-255) 33 | 20 - SFX Volume (0-255) 34 | 21 - Cinematic Volume (0-255) 35 | 22 - Sound Mode 36 | - 0 = Stereo 37 | - 1 = Headphones 38 | - 2 = Dolby Pro Logic II 39 | 23 - Brightness (0-100) 40 | 24 - Screen Scale (0-100) 41 | 25 - Screen Location X (0-100) 42 | 26 - Screen Location y (0-100) 43 | 27 - Tutorial Display 44 | - 02 = On 45 | 28 - Show Subtitles 46 | 47 | 48 | Profdata 49 | ---- 50 | 51 | 00000324 - Start, search for value 52 | 53 | +0C = Current HP (Float Value) 54 | +14 = Current Magic (Float Value) 55 | +18 = ? Unknown Float ? 56 | +24 = Current Rage 57 | 58 | +30 = Red Orbs (Float Value) 59 | +34 = Artifacts? 60 | +35 = Artifacts? 61 | +38 = X co-ord 62 | +3C = Height 63 | +40 = Y co-rd 64 | +61 = Swimming (50 = Yes, 8 = No) 65 | +DB = Blades Level 66 | +E3 = Orbs spent on Blades 67 | +E7 - (Next inventory item) 68 | 69 | +EB = Lightning of Zeus Level 70 | +EC = Lightning of Zeus Unlocked 71 | +F3 = Orbs spent on Lightning 72 | +FB = Fire of Ares Level 73 | +FC = Fire of Ares Unlocked 74 | +10C = Ice of Poseidon Unlocked 75 | +11C = Soul of Hades Unlocked 76 | +112 = Lightning Red Orbs Spent 77 | +2D7 = Item count? 78 | 79 | 80 | 81 | 82 | 83 | 84 | 2C04FF00 - 2nd offset 85 | +14 = Difficulty 86 | +18 = NG+ 87 | 88 | 89 | 90 | 0BOC 91 | 4Lightning 92 | 5Fire 93 | 6Ice 94 | 7Soul 95 | A? 96 | B? 97 | C? 98 | B? 99 | 4E? 100 | 4F? 101 | 102 | 01 01 00 00 00 00 00 00 00 00 00 04 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 05 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 06 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 07 00 00 00 00 01 01 00 00 00 00 00 00 00 00 00 08 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 0A 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 0B 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 0C 00 00 00 00 01 01 00 00 00 00 00 00 00 00 00 20 00 00 00 00 01 01 00 00 00 00 00 00 00 00 00 23 00 00 00 00 01 01 00 00 00 00 00 00 00 00 00 40 00 00 00 00 01 01 00 00 00 00 00 00 00 00 00 41 00 00 00 00 01 01 00 00 00 00 00 00 00 00 00 8E 00 00 00 00 01 01 00 00 00 00 00 00 00 00 00 91 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 93 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 95 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 93 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 95 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 103 | 104 | 105 | 106 | 3d09e30 - Kratos Health 107 | 108 | 5b09cdd - Kratos Red Orbs - derived,dec 109 | 5b09e30 - Kratos Health - derived,Float 110 | 111 | 994ffb4 - Kratos Speed - Float 112 | 994ffd4 - Kratos Health - Float 113 | 114 | 9953f04 - start of checkpoint? 115 | 116 | 5b6dd28 - Kratos Red Orbs - Float 117 | d56dd28 - Kratos Red Orbs 118 | 119 | 120 | f146300 - Creature HP -------------------------------------------------------------------------------- /Memlocs/GoW1-PS3-NPUA80490_101-UnlockCam.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $path = "D:\Wherever\PS3\dev_hdd0\game\NPUA80490\USRDIR\EBOOT.BIN" 5 | 6 | 7 | 8 | $ba = [System.IO.File]::ReadAllBytes($path) 9 | #---------------------------------------------------------------------------------- 10 | Function RUInt32 11 | { 12 | Param ( 13 | $addr 14 | ) 15 | [bitconverter]::ToUInt32($ba,$addr) 16 | } 17 | #---------------------------------------------------------------------------------- 18 | Function WBytes 19 | { 20 | Param ( 21 | $addr, 22 | $wb 23 | ) 24 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 25 | } 26 | #---------------------------------------------------------------------------------- 27 | 28 | 29 | [byte[]] $hookjump = 0x48, 0x4b, 0xc8, 0x02 30 | [byte[]] $newcode = 0x3e, 0x00, 0x00, 0x54, 0x62, 0x10, 0xce, 0x2c, 0x82, 0x10, 0x00, 0x00, 0x2f, 0x90, 0x00, 0x00, 0x41, 0x9e, 0x00, 0x90, 0x3e, 0x20, 0x00, 0x54, 0x62, 0x31, 0xce, 0x28, 0x3d, 0xc0, 0x00, 0x6e, 0x61, 0xce, 0x34, 0xd2, 0x89, 0xce, 0x00, 0x00, 0x71, 0xcf, 0x00, 0x04, 0x2f, 0x8f, 0x00, 0x04, 0x41, 0x9e, 0x00, 0x28, 0x71, 0xcf, 0x00, 0x02, 0x2f, 0x8f, 0x00, 0x02, 0x41, 0x9e, 0x00, 0x44, 0x89, 0xf1, 0x00, 0x00, 0x2f, 0x8f, 0x00, 0x00, 0x41, 0x9e, 0x00, 0x58, 0x39, 0xe0, 0x00, 0x00, 0x99, 0xf1, 0x00, 0x00, 0x48, 0x00, 0x00, 0x4c, 0x89, 0xf1, 0x00, 0x00, 0x2f, 0x8f, 0x00, 0x01, 0x41, 0x9e, 0x00, 0x40, 0x39, 0xe0, 0x00, 0x01, 0x99, 0xf1, 0x00, 0x00, 0x89, 0xf0, 0x00, 0x05, 0x71, 0xef, 0x00, 0x01, 0x69, 0xef, 0x00, 0x01, 0x99, 0xf0, 0x00, 0x05, 0x48, 0x00, 0x00, 0x24, 0x89, 0xf1, 0x00, 0x00, 0x2f, 0x8f, 0x00, 0x01, 0x41, 0x9e, 0x00, 0x18, 0x39, 0xe0, 0x00, 0x01, 0x99, 0xf1, 0x00, 0x00, 0x89, 0xf0, 0x00, 0x03, 0x69, 0xef, 0x00, 0x01, 0x99, 0xf0, 0x00, 0x03, 0x39, 0xc0, 0x00, 0x00, 0x39, 0xe0, 0x00, 0x00, 0x3a, 0x00, 0x00, 0x00, 0x3a, 0x20, 0x00, 0x00, 0x4e, 0x80, 0x00, 0x20 31 | 32 | cls 33 | 34 | if ((RUInt32 0) -ne 0x00454353) { 35 | "No match, BIN still encrypted?" 36 | } else { 37 | "First 4 bytes match" 38 | 39 | if ((RUint32 (0x0a6e58 - 0xF700)) -eq 0x2000804e) { 40 | "Hook location found" 41 | WBytes (0x0a6e58 -0xF700) $hookjump 42 | WBytes (0x4bc800 -0xF700) $newcode 43 | [System.IO.File]::WriteAllBytes($path, $ba) 44 | "Bytes written successfully" 45 | "" 46 | pause 47 | } else { 48 | "" 49 | "Hook location not as expected. Wrong version, or already patched?" 50 | "" 51 | pause 52 | } 53 | } 54 | 55 | 56 | 57 | <# Assembly for newcode, usable with https://shell-storm.org/online/Online-Assembler-and-Disassembler/ 58 | 59 | start: 60 | lis 16,0x0054 61 | ori 16,16,0xce2c 62 | lwz 16,0x0(16) 63 | cmpwi cr7,16,0x0 64 | beq cr7,cleanup 65 | 66 | camnull: 67 | lis 17,0x0054 68 | ori 17,17,0xce28 69 | lis 14,0x006e 70 | ori 14,14,0x34d2 71 | lbz 14,0x0(14) 72 | andi. 15,14,0x4 73 | cmpwi cr7,15,0x4 74 | beq cr7, rpress 75 | 76 | rnopress: 77 | andi. 15,14,0x2 78 | cmpwi cr7,15,0x2 79 | beq cr7, lpress 80 | 81 | rlnopress: 82 | lbz 15,0x0(17) 83 | cmpwi cr7,15,0x0 84 | beq cr7, cleanup 85 | 86 | rlnopressprevone: 87 | li 15,0x0 88 | stb 15,0x0(17) 89 | b cleanup 90 | 91 | rpress: 92 | lbz 15,0x0(17) 93 | cmpwi cr7,15,0x1 94 | beq cr7, cleanup 95 | 96 | li 15,0x1 97 | stb 15,0x0(17) 98 | lbz 15,0x5(16) 99 | andi. 15,15,0x1 100 | xori 15,15,0x1 101 | stb 15,0x5(16) 102 | b cleanup 103 | 104 | lpress: 105 | lbz 15,0x0(17) 106 | cmpwi cr7,15,0x1 107 | beq cr7, cleanup 108 | 109 | li 15,0x1 110 | stb 15,0x0(17) 111 | lbz 15,0x3(16) 112 | xori 15,15,0x1 113 | stb 15,0x3(16) 114 | 115 | cleanup: 116 | li 14, 0 117 | li 15, 0 118 | li 16, 0 119 | li 17, 0 120 | blr 121 | 122 | #> 123 | 124 | -------------------------------------------------------------------------------- /Memlocs/GoW3-PS3-BCUS98111_103-RPCS3SaveDumper.txt: -------------------------------------------------------------------------------- 1 | $savepath = 'D:\temp\gow\GoW3-Saves\' 2 | 3 | 4 | $procname = "rpcs3" 5 | $bigendian = $true 6 | 7 | 8 | [console]::CursorVisible = $false 9 | $Host.UI.RawUI.BackgroundColor = 'Black' 10 | $Host.UI.RawUI.ForegroundColor = 'Green' 11 | 12 | Function RBytes 13 | { 14 | Param ( 15 | $addr, 16 | $sizetoread 17 | ) 18 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 19 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 20 | $buff 21 | } 22 | 23 | Function RAsciiStr 24 | { 25 | Param ( 26 | $addr 27 | ) 28 | ([System.Text.Encoding]::ASCII.GetString($(RBytes $addr 30))).Split([char]0)[0] 29 | } 30 | Function RInt16 31 | { 32 | Param ( 33 | $addr 34 | ) 35 | $buff = RBytes $addr 2 36 | if ($bigendian -eq $true) { 37 | [Array]::Reverse($buff) 38 | } 39 | [bitconverter]::ToInt16($buff,0) 40 | } 41 | Function RInt32 42 | { 43 | Param ( 44 | $addr 45 | ) 46 | $buff = RBytes $addr 4 47 | if ($bigendian -eq $true) { 48 | [Array]::Reverse($buff) 49 | } 50 | [bitconverter]::ToInt32($buff,0) 51 | } 52 | Function RInt64 53 | { 54 | Param ( 55 | $addr 56 | ) 57 | $buff = RBytes $addr 8 58 | if ($bigendian -eq $true) { 59 | [Array]::Reverse($buff) 60 | } 61 | [bitconverter]::ToInt64($buff,0) 62 | } 63 | Function RUInt8 64 | { 65 | Param ( 66 | $addr 67 | ) 68 | RBytes $addr 1 69 | } 70 | Function RUInt16 71 | { 72 | Param ( 73 | $addr 74 | ) 75 | $buff = RBytes $addr 2 76 | if ($bigendian -eq $true) { 77 | [Array]::Reverse($buff) 78 | } 79 | [bitconverter]::ToUInt16($buff,0) 80 | } 81 | Function RUInt32 82 | { 83 | Param ( 84 | $addr 85 | ) 86 | $buff = RBytes $addr 4 87 | if ($bigendian -eq $true) { 88 | [Array]::Reverse($buff) 89 | } 90 | [bitconverter]::ToUInt32($buff,0) 91 | } 92 | Function RUInt64 93 | { 94 | Param ( 95 | $addr 96 | ) 97 | $buff = RBytes $addr 8 98 | if ($bigendian -eq $true) { 99 | [Array]::Reverse($buff) 100 | } 101 | [bitconverter]::ToUInt64($buff,0) 102 | } 103 | Function RSingle 104 | { 105 | Param ( 106 | $addr 107 | ) 108 | $buff = RBytes $addr 4 109 | if ($bigendian -eq $true) { 110 | [Array]::Reverse($buff) 111 | } 112 | [bitconverter]::ToSingle($buff,0) 113 | } 114 | $signature = @" 115 | [DllImport("kernel32.dll")] public static extern IntPtr OpenProcess( 116 | uint h,bool b ,uint p); 117 | [DllImport("kernel32.dll")] public static extern bool ReadProcessMemory( 118 | IntPtr hp,IntPtr Base,[Out]Byte[] buff,int Size,[Out]int bread); 119 | "@ 120 | 121 | $rpm = Add-Type -MemberDefinition $signature -Name rpm -PassThru 122 | $access = 0x001F0FFF 123 | 124 | $ba = (get-Process $procname).MainModule.BaseAddress 125 | $procid = (get-Process $procname).ID 126 | $proc = $rpm::OpenProcess($access, $false, $procid) 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | $prevcam = "" 135 | $currcam = "" 136 | $wad = "" 137 | [String]$path = "" 138 | 139 | 140 | $cpoffset = 0 141 | 142 | do { 143 | $cpoffset = RInt32 0x300568e00 144 | $cpoffset = $cpoffset + 0x300000000 145 | $currcam = RAsciiStr ($cpoffset + 0x58) 146 | $wad = RAsciiStr ($cpoffset + 0x90) 147 | 148 | if ($prevcam -ne $currcam) { 149 | $prevcam = $currcam 150 | 151 | 152 | 153 | $path = Get-Date -Format "yyyyddMMHHmmss" 154 | $path = $savepath + $path + "_" + $wad 155 | 156 | $ba = RBytes $cpoffset 0x24000 157 | [io.file]::WriteAllBytes($path, $ba) 158 | } 159 | 160 | cls 161 | "currCAM: " + $currcam 162 | "currWAD: " + $wad 163 | sleep 1 164 | } 165 | while ($true) 166 | -------------------------------------------------------------------------------- /Memlocs/GoW1-PS3-NPUA80490_101-RPCS3SaveDumper.txt: -------------------------------------------------------------------------------- 1 | $savepath = 'D:\temp\gow\GoW1-Saves\' 2 | 3 | 4 | $procname = "rpcs3" 5 | $bigendian = $true 6 | 7 | 8 | [console]::CursorVisible = $false 9 | $Host.UI.RawUI.BackgroundColor = 'Black' 10 | $Host.UI.RawUI.ForegroundColor = 'Green' 11 | 12 | Function RBytes 13 | { 14 | Param ( 15 | $addr, 16 | $sizetoread 17 | ) 18 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 19 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 20 | $buff 21 | } 22 | 23 | Function RAsciiStr 24 | { 25 | Param ( 26 | $addr 27 | ) 28 | ([System.Text.Encoding]::ASCII.GetString($(RBytes $addr 30))).Split([char]0)[0] 29 | } 30 | Function RInt16 31 | { 32 | Param ( 33 | $addr 34 | ) 35 | $buff = RBytes $addr 2 36 | if ($bigendian -eq $true) { 37 | [Array]::Reverse($buff) 38 | } 39 | [bitconverter]::ToInt16($buff,0) 40 | } 41 | Function RInt32 42 | { 43 | Param ( 44 | $addr 45 | ) 46 | $buff = RBytes $addr 4 47 | if ($bigendian -eq $true) { 48 | [Array]::Reverse($buff) 49 | } 50 | [bitconverter]::ToInt32($buff,0) 51 | } 52 | Function RInt64 53 | { 54 | Param ( 55 | $addr 56 | ) 57 | $buff = RBytes $addr 8 58 | if ($bigendian -eq $true) { 59 | [Array]::Reverse($buff) 60 | } 61 | [bitconverter]::ToInt64($buff,0) 62 | } 63 | Function RUInt8 64 | { 65 | Param ( 66 | $addr 67 | ) 68 | RBytes $addr 1 69 | } 70 | Function RUInt16 71 | { 72 | Param ( 73 | $addr 74 | ) 75 | $buff = RBytes $addr 2 76 | if ($bigendian -eq $true) { 77 | [Array]::Reverse($buff) 78 | } 79 | [bitconverter]::ToUInt16($buff,0) 80 | } 81 | Function RUInt32 82 | { 83 | Param ( 84 | $addr 85 | ) 86 | $buff = RBytes $addr 4 87 | if ($bigendian -eq $true) { 88 | [Array]::Reverse($buff) 89 | } 90 | [bitconverter]::ToUInt32($buff,0) 91 | } 92 | Function RUInt64 93 | { 94 | Param ( 95 | $addr 96 | ) 97 | $buff = RBytes $addr 8 98 | if ($bigendian -eq $true) { 99 | [Array]::Reverse($buff) 100 | } 101 | [bitconverter]::ToUInt64($buff,0) 102 | } 103 | Function RSingle 104 | { 105 | Param ( 106 | $addr 107 | ) 108 | $buff = RBytes $addr 4 109 | if ($bigendian -eq $true) { 110 | [Array]::Reverse($buff) 111 | } 112 | [bitconverter]::ToSingle($buff,0) 113 | } 114 | $signature = @" 115 | [DllImport("kernel32.dll")] public static extern IntPtr OpenProcess( 116 | uint h,bool b ,uint p); 117 | [DllImport("kernel32.dll")] public static extern bool ReadProcessMemory( 118 | IntPtr hp,IntPtr Base,[Out]Byte[] buff,int Size,[Out]int bread); 119 | "@ 120 | 121 | $rpm = Add-Type -MemberDefinition $signature -Name rpm -PassThru 122 | $access = 0x001F0FFF 123 | 124 | $ba = (get-Process $procname).MainModule.BaseAddress 125 | $procid = (get-Process $procname).ID 126 | $proc = $rpm::OpenProcess($access, $false, $procid) 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | $prevcam = "" 135 | $currcam = "" 136 | $wad = "" 137 | [String]$path = "" 138 | 139 | 140 | $cpoffset = 0 141 | 142 | do { 143 | $cpoffset = RInt32 0x3004fd268 144 | $cpoffset = $cpoffset + 0x300000000 145 | $currcam = RAsciiStr ($cpoffset + 0xae) 146 | $wad = RAsciiStr ($cpoffset + 0xc6) 147 | 148 | if ($prevcam -ne $currcam) { 149 | $prevcam = $currcam 150 | 151 | 152 | 153 | $path = Get-Date -Format "yyyyddMMHHmmss" 154 | $path = $savepath + $path + "_" + $wad + "_" + $currcam 155 | 156 | $ba = RBytes $cpoffset 0x14000 157 | [io.file]::WriteAllBytes($path, $ba) 158 | } 159 | 160 | cls 161 | "currCAM: " + $currcam 162 | "currWAD: " + $wad 163 | sleep 1 164 | } 165 | while ($true) 166 | -------------------------------------------------------------------------------- /Memlocs/GoW2-PS3-memlocs.txt: -------------------------------------------------------------------------------- 1 | GoW2-memlocs 2 | Live Data: 3 | 53a084 - Camera Angle? 4 | 53a758 - HUD visible? 5 | 6 | 5761f4 - TOC pointer (307e2ac8) 7 | 8 | 576758 - 01 = Stop everything. 9 | 10 | 576768 - Playtime 11 | 12 | 576773 - Urn of Olympus (Infinite Magic) 13 | 576777 - Urn of Prometheus (Infinite Rage) 14 | 57677b - Urn of the Gorgons (Weapons Petrify Enemies) 15 | 57677f - Urn of Poseidon (Poseidon's Rage) 16 | 576783 - Urn of Gaia (10x red orbs) 17 | 576787 - Urn of the Fates (Extend Combo Time) 18 | 19 | 57678b - ?? 20 | 57678f - Bonus Play 21 | 22 | 57760d - Unlocked Spells 23 | 01 - Blade of Olympus 24 | 02 - ? 25 | 04 - Urn of Gaia 26 | 08 - Urn of the Gorgons 27 | 10 - Urn of Olympus 28 | 20 - Urn of Prometheus 29 | 40 - Urn of the Fates 30 | 80 - Urn of Poseidon 31 | 57760e - Unlocked Spells 32 | 01 - ? 33 | 02 - Rage of the Titans 34 | 04 - Amulet of the Fates 35 | 08 - ? 36 | 10 - ? 37 | 20 - SoD 38 | 40 - Hammer 39 | 80 - Head of Euryale 40 | 57760f - Unlocked Spells 41 | 01 - PRage 42 | 02 - CRage 43 | 04 - TBane 44 | 08 - ? 45 | 10 - Golden Fleece 46 | 20 - AQuake 47 | 40 - Icarus Wings 48 | 80 - ? 49 | 50 | 51 | 577618 - Magic Remaining 52 | 577620 - Rage Remaining 53 | 577624 - Magic Regen 54 | 57762a - Red Orbs 55 | 56 | 577646 - TB Level 57 | 58 | 577de8 - UI State 59 | 577e2f - 1 = Controller Removed 60 | 577e57 - 1 = Challenge Select Menu 61 | 577e5f - 1 = Arena of the Fates 62 | 577e6c - 1 = Screen turns white 63 | 64 | 65 | 57815b - Treasures (OR'd with 57830b) 66 | 57830b - Treasures (OR'd with 57815b) 67 | 68 | 307fef18 - Various menu status 69 | 70 | 31540b1a - Swimming 71 | 31540b20 - Kratos HP 72 | 73 | 31544410 - Kratos Size 74 | 31544414 - Kratos Speed 75 | 3154441a - Swimming 76 | 77 | 31544420 - Health Remaining 78 | 31544430 - Health Regen 79 | 80 | 31545170 - Health Remaining 81 | 82 | 37f79708 - Controller input? 83 | 84 | 85 | Checkpoint Data: 86 | 581095 - Unlocked Spells 87 | 581096 - Unlocked Spells 88 | 581097 - Unlocked Spells 89 | 90 | 581846 - Infinite Health 91 | 58184e - Bonus Play 92 | 93 | 581920 - Checksum modifier 94 | 581927 - Costume 95 | 581928 - Wad #1 96 | 58193d - Wad #2 97 | 98 | 581996 - X Pos 99 | 58199a - Z Pos 100 | 58199e - Y Pos 101 | 102 | 5819b0 - Swimming 103 | 5819bb - Urns Unlocked 104 | 5819bc - Weapons Unlocked 105 | 5819bd - Spells Unlocked 106 | 107 | 5819c2 - Health Remaining 108 | 5819c6 - Magic Remaining 109 | 5819ca - Amulet? 110 | 5819ce - Rage? 111 | 5819d2 - Magic Regen 112 | 5819d6 - Red Orbs 113 | 5819ec - Health Extensions 114 | 5819ed - Magic Extensions 115 | 5819ee - Amulet Extensions 116 | 5819ef - Blades Level 117 | 118 | 5819f1 - AQ Level 119 | 5819f2 - CR Level 120 | 5819f3 - PR Level 121 | 5819f4 - TB Level 122 | 5819f5 - SoD Level 123 | 5819f6 - BH Level 124 | 5819f7 - EH Level 125 | 5819f8 - BoO Level 126 | 5819f9 - Last Selected Magic 127 | 5819fa - Active Subweapon 128 | 5819fb - 0 Forced Subwep Equipped 129 | 5819fc - Gorgon Eyes 130 | 5819fd - Phoenix Feathers 131 | 132 | 581a02 - Cyclops Eye 133 | 134 | 582162 - Kratos Frozen 135 | 582163 - Difficulty 136 | 137 | 138 | 58b923 - Save Point name? 139 | 140 | 82256c - Controller? 141 | 142 | 143 | 307e2ac8 - TOC start 144 | +0x0c8 - MTemplate_Opacity 145 | +0x208 - SpecialLevel 146 | +0x20c - Urns Available 147 | +0x210 - Cheat (Undetermined effect) 148 | +0x214 - Demo 149 | +0x21c - EnableButtons (In menu) 150 | +0x2a0 - FreeCombat_InfiniteHealth 151 | +0x2a4 - FreeCombat_InfiniteMagic 152 | 153 | Code Modification: 154 | Inf Jumps 155 | 99dd0 - 9008016c 156 | 99e00 - 90080168 157 | 99fec - 901e0168 158 | a1430 - 80090000 159 | a3dec - 83c90000 160 | a3fac - 911d016c -------------------------------------------------------------------------------- /Memlocs/JumpKing-PS-Counters.txt: -------------------------------------------------------------------------------- 1 | #$ErrorActionPreference= 'silentlycontinue' 2 | 3 | 4 | [console]::CursorVisible = $false 5 | 6 | $Host.UI.RawUI.BackgroundColor = 'Black' 7 | $Host.UI.RawUI.ForegroundColor = 'Green' 8 | 9 | 10 | $mmf = [System.IO.MemoryMappedFiles.MemoryMappedFile]::CreateOrOpen("JKTP", 0x1000) 11 | $mmfa = $mmf.CreateViewAccessor() 12 | 13 | 14 | 15 | 16 | 17 | cls 18 | 19 | do { 20 | 21 | 22 | $jumps = $mmfa.ReadInt32(0x10) 23 | $falls = $mmfa.ReadInt32(0x20) 24 | $ticks = $mmfa.ReadInt32(0x30) 25 | 26 | $seconds = ([string][Math]::Floor((($ticks % 3600) / 60))).PadLeft(2,'0') 27 | $minutes = ([string][Math]::Floor((($ticks % 216000) / 3600))).PadLeft(2,'0') 28 | $hours = ([string][Math]::Floor((($ticks % 5184000) / 216000))).PadLeft(2,'0') 29 | $days = [string][Math]::Floor(($ticks / 5184000)) 30 | 31 | $x = $mmfa.ReadSingle(0x40) 32 | $y = $mmfa.ReadSingle(0x50) 33 | $screen = $mmfa.ReadInt32(0x60) 34 | 35 | [Console]::SetCursorPosition(0,0) 36 | "Jumps: $jumps " 37 | "Falls: $falls " 38 | "Time played: " + $days + "d " + $hours + ":" + $minutes + ":" + $seconds + " " 39 | "Screen: $screen " 40 | "Pos: $x, $y " 41 | sleep 0.5 42 | } 43 | while ($true) 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | <# 66 | 67 | Uses the following modification to the game: 68 | 69 | In JumpKing.Player 70 | public int m_last_screen; 71 | 72 | 73 | ---- 74 | 75 | 76 | 77 | using System; 78 | using System.IO.MemoryMappedFiles; 79 | using BehaviorTree; 80 | using EntityComponent; 81 | using JumpKing.Controller; 82 | using JumpKing.GameManager; 83 | using JumpKing.GameManager.MultiEnding; 84 | using JumpKing.GameManager.TitleScreen; 85 | using JumpKing.Level; 86 | using JumpKing.MiscSystems; 87 | using JumpKing.MiscSystems.Achievements; 88 | using JumpKing.PauseMenu; 89 | using JumpKing.Player; 90 | using Microsoft.Xna.Framework; 91 | using TimerCallback; 92 | 93 | namespace JumpKing 94 | { 95 | // Token: 0x02000020 RID: 32 96 | public partial class JumpGame 97 | { 98 | // Token: 0x060000A7 RID: 167 99 | public void Update(GameTime gameTime) 100 | { 101 | float p_delta = 0.0166666675f; 102 | this.m_controller_manager.Update(); 103 | this.m_behavior_tree.Run(p_delta); 104 | if (PauseManager.instance == null || !PauseManager.instance.IsPaused) 105 | { 106 | LevelManager.Update(p_delta); 107 | this.m_entity_manager.Update(p_delta); 108 | WeatherManager.instance.Update(p_delta); 109 | JumpGame._screen_shake_manager.Update(p_delta); 110 | } 111 | long offset = 0L; 112 | long size = 4096L; 113 | using (MemoryMappedFile memoryMappedFile = MemoryMappedFile.CreateOrOpen("JKTP", 4096L)) 114 | { 115 | using (MemoryMappedViewAccessor memoryMappedViewAccessor = memoryMappedFile.CreateViewAccessor(offset, size)) 116 | { 117 | memoryMappedViewAccessor.Write(16L, AchievementManager.instance.GetAllTimeStats().jumps); 118 | memoryMappedViewAccessor.Write(32L, AchievementManager.instance.GetAllTimeStats().falls); 119 | memoryMappedViewAccessor.Write(48L, AchievementManager.instance.GetAllTimeStats()._ticks); 120 | if (GameLoop.m_player != null) 121 | { 122 | BodyComp component = GameLoop.m_player.GetComponent(); 123 | memoryMappedViewAccessor.Write(64L, component.position.X); 124 | memoryMappedViewAccessor.Write(80L, component.position.Y); 125 | memoryMappedViewAccessor.Write(96L, component.m_last_screen); 126 | } 127 | } 128 | } 129 | } 130 | } 131 | } 132 | 133 | 134 | #> -------------------------------------------------------------------------------- /Memlocs/gow.CT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 9 6 | "Options" 7 | 8 | 9 | 1 10 | 11 | 12 | 6 13 | "Wide Screen" 14 | 15 | Byte 16 |
2076D8A4
17 |
18 | 19 | 7 20 | "Progressive Scan" 21 | 22 | Byte 23 |
2076D8A8
24 |
25 | 26 | 5 27 | "Soften" 28 | 29 | Byte 30 |
2076D8AC
31 |
32 | 33 | 3 34 | "Music Volume" 35 | 36 | Byte 37 |
2076D898
38 |
39 | 40 | 4 41 | "SFX Volume" 42 | 43 | Byte 44 |
2076D89C
45 |
46 | 47 | 8 48 | "Sound Mode" 49 | 50 | Byte 51 |
2076D8B0
52 |
53 | 54 | 2 55 | "Vibration" 56 | 57 | 1 58 | Byte 59 |
202A11C0
60 |
61 |
62 |
63 | 64 | 1 65 | "HP" 66 | 67 | Float 68 |
20795978
69 |
70 | 71 | 10 72 | "Freeze FX?" 73 | 74 | Byte 75 |
2029C0B8
76 |
77 | 78 | 11 79 | "Freeze AI?" 80 | 81 | Byte 82 |
205780D4
83 |
84 | 85 | 12 86 | "GameState?" 87 | 88 | Byte 89 |
2029E561
90 |
91 | 92 | 13 93 | "Current Menu Item" 94 | 95 | Byte 96 |
20781090
97 |
98 |
99 | 100 |
101 | -------------------------------------------------------------------------------- /Memlocs/KingdomCome-MS-1.9.4.0.CT: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 2 6 | "Enable Console Cheats" 7 | 0 8 | Byte 9 |
WHGame.DLL+0x298ef40
10 | 11 | 0x512 12 | 13 |
14 | 15 | 0 16 | "Enable console commands" 17 | 0 18 | Byte 19 |
WHGame.DLL+298ef28
20 | 21 | 1de 22 | 23 |
24 | 25 | 1 26 | "Editor mode?" 27 | 0 28 | Byte 29 |
WHGame.DLL+298F112
30 |
31 | 32 | 4 33 | "----" 34 | 35 | 1 36 | 37 | 38 | 8 39 | "CActionGame" 40 | 1 41 | 0 42 | 8 Bytes 43 |
WHGame.DLL+2f57a48
44 | 45 | 0 46 | 47 |
48 | 49 | 10 50 | "CCryAction" 51 | 1 52 | 0 53 | 8 Bytes 54 |
WHGame.DLL+2f57a90
55 |
56 | 57 | 5 58 | "CLog" 59 | 1 60 | 0 61 | 8 Bytes 62 |
WHGame.DLL+0x298ef58
63 | 64 | 0 65 | 66 |
67 | 68 | 9 69 | "CPlayer" 70 | 1 71 | 0 72 | 8 Bytes 73 |
WHGame.DLL+2f57a48
74 | 75 | 0 76 | a00 77 | 78 |
79 | 80 | 3 81 | "CSystem" 82 | 1 83 | 0 84 | 8 Bytes 85 |
WHGame.DLL+0x298ef40
86 | 87 | 0 88 | 89 |
90 | 91 | 11 92 | "CXConsole" 93 | 1 94 | 0 95 | 8 Bytes 96 |
WHGame.dll+298ef28
97 | 98 | 0 99 | 100 |
101 | 102 | 6 103 | "CVars" 104 | 105 | 106 | 1 107 | 108 | 109 | 7 110 | "wh_horse_JumpOnSlopeNormalZLimit" 111 | 0 112 | Float 113 |
WHGame.DLL+36C3588
114 |
115 |
116 |
117 |
118 | 119 |
120 | -------------------------------------------------------------------------------- /Memlocs/DeS-PS3-BLUS30443_100_NoDcxSdat.txt: -------------------------------------------------------------------------------- 1 | $path = "D:\ps3\app_home\EBOOT.FSELF" 2 | $size = (Get-Item $path).length 3 | 4 | $ba = [System.IO.File]::ReadAllBytes($path) 5 | ########################################## 6 | Function RBytes 7 | { 8 | Param ( 9 | $addr, 10 | $size 11 | ) 12 | [byte[]] $rb = [byte[]]::new(4) 13 | [System.Buffer]::BlockCopy($ba, $addr, $rb, 0, $rb.Length) 14 | $rb 15 | } 16 | ########################################## 17 | Function RUInt32 18 | { 19 | Param ( 20 | $addr 21 | ) 22 | [bitconverter]::ToUInt32($ba,$addr) 23 | } 24 | ########################################## 25 | Function WBytes 26 | { 27 | Param ( 28 | $addr, 29 | $wb 30 | ) 31 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 32 | } 33 | ########################################## 34 | Function WStrA 35 | { 36 | Param ( 37 | $addr, 38 | $str 39 | ) 40 | $wb = [System.Text.Encoding]::UTF8.GetBytes($str) 41 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 42 | } 43 | ########################################## 44 | Function WStrU 45 | { 46 | Param ( 47 | $addr, 48 | $str 49 | ) 50 | $wb = [System.Text.Encoding]::Unicode.GetBytes($str) 51 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 52 | } 53 | ########################################## 54 | Function WUInt32 55 | { 56 | Param ( 57 | $addr, 58 | $val 59 | ) 60 | $wb = [bitconverter]::GetBytes($val) 61 | [System.Buffer]::BlockCopy($wb, 0, $ba, $addr, $wb.Length) 62 | } 63 | ########################################## 64 | Function XorBytes 65 | { 66 | Param ( 67 | [byte[]] $b1, 68 | [byte[]] $b2 69 | ) 70 | [byte[]] $b3 = [byte[]]::new($b1.count) 71 | for($i=0; $i -lt $b1.count ; $i++) 72 | { 73 | $b3[$i] = $b1[$i] -bxor $b2[$i] 74 | } 75 | $b3 76 | } 77 | ########################################## 78 | Function AreArraysEqual($a1, $a2) { 79 | if ($a1 -isnot [array] -or $a2 -isnot [array]) { 80 | throw "Both inputs must be an array" 81 | } 82 | if ($a1.Rank -ne $a2.Rank) { 83 | return $false 84 | } 85 | if ([System.Object]::ReferenceEquals($a1, $a2)) { 86 | return $true 87 | } 88 | for ($r = 0; $r -lt $a1.Rank; $r++) { 89 | if ($a1.GetLength($r) -ne $a2.GetLength($r)) { 90 | return $false 91 | } 92 | } 93 | 94 | $enum1 = $a1.GetEnumerator() 95 | $enum2 = $a2.GetEnumerator() 96 | 97 | while ($enum1.MoveNext() -and $enum2.MoveNext()) { 98 | if ($enum1.Current -ne $enum2.Current) { 99 | return $false 100 | } 101 | } 102 | return $true 103 | } 104 | ########################################## 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | cls 113 | 114 | [byte[]] $newcode1 = 0x60, 0x00, 0x00, 0x00 #SDAT 115 | [byte[]] $oldcode1 = 0x40, 0x9e, 0x01, 0x20 116 | 117 | [byte[]] $newcode2 = 0x4b, 0xff, 0xfe, 0xe8 #SDAT 118 | [byte[]] $oldcode2 = 0x41, 0x9e, 0xfe, 0xe8 119 | 120 | 121 | [byte[]] $newcode3 = 0x60, 0x00, 0x00, 0x00 #DCX 122 | [byte[]] $oldcode3 = 0x40, 0x9e, 0x00, 0xcc 123 | 124 | 125 | cls 126 | if ($size -eq 9602848) { 127 | "EBOOT.BIN size too small, decrypt and decompress before running this script." 128 | } else { 129 | if ((RUint32 (0x66af08 - 0xF700)) -eq [UInt32]"0x20019e40") { 130 | "Original bytes found, patching out DCX/SDAT." 131 | WBytes (0x66af08 -0xF700) $newcode1 132 | WBytes (0x66b024 -0xF700) $newcode2 133 | WBytes (0x66aefc -0xF700) $newcode3 134 | [System.IO.File]::WriteAllBytes($path, $ba) 135 | "Bytes written successfully" 136 | "" 137 | pause 138 | } else { 139 | if ((RUint32 (0x66af08 - 0xF700)) -eq [UInt32]"0x00000060") { 140 | "Patched bytes found, restoring DCX/SDAT." 141 | WBytes (0x66af08 -0xF700) $oldcode1 142 | WBytes (0x66b024 -0xF700) $oldcode2 143 | WBytes (0x66aefc -0xF700) $oldcode3 144 | [System.IO.File]::WriteAllBytes($path, $ba) 145 | "Bytes written successfully" 146 | "" 147 | pause 148 | } else { 149 | "Unrecognized bytes found hook at location, no changes made." 150 | "Has EBOOT.BIN been resigned as NONDRM?" 151 | "" 152 | pause 153 | } 154 | } 155 | } -------------------------------------------------------------------------------- /Memlocs/_rint-memory.txt: -------------------------------------------------------------------------------- 1 | $savepath = 'D:\temp\gow\GoW1-Saves\' 2 | 3 | 4 | $procname = "rpcs3" 5 | $bigendian = $true 6 | 7 | 8 | [console]::CursorVisible = $false 9 | $Host.UI.RawUI.BackgroundColor = 'Black' 10 | $Host.UI.RawUI.ForegroundColor = 'Green' 11 | 12 | Function RBytes 13 | { 14 | Param ( 15 | $addr, 16 | $sizetoread 17 | ) 18 | [Byte[]] $buff = New-Object Byte[]($sizetoread) 19 | $read = $rpm::ReadProcessMemory($proc,$addr,$buff,$buff.length,$null); 20 | $buff 21 | } 22 | 23 | Function RAsciiStr 24 | { 25 | Param ( 26 | $addr 27 | ) 28 | ([System.Text.Encoding]::ASCII.GetString($(RBytes $addr 0x50))).Split([char]0)[0] 29 | } 30 | Function RInt16 31 | { 32 | Param ( 33 | $addr 34 | ) 35 | $buff = RBytes $addr 2 36 | if ($bigendian -eq $true) { 37 | [Array]::Reverse($buff) 38 | } 39 | [bitconverter]::ToInt16($buff,0) 40 | } 41 | Function RInt32 42 | { 43 | Param ( 44 | $addr 45 | ) 46 | $buff = RBytes $addr 4 47 | if ($bigendian -eq $true) { 48 | [Array]::Reverse($buff) 49 | } 50 | [bitconverter]::ToInt32($buff,0) 51 | } 52 | Function RInt64 53 | { 54 | Param ( 55 | $addr 56 | ) 57 | $buff = RBytes $addr 8 58 | if ($bigendian -eq $true) { 59 | [Array]::Reverse($buff) 60 | } 61 | [bitconverter]::ToInt64($buff,0) 62 | } 63 | Function RUInt8 64 | { 65 | Param ( 66 | $addr 67 | ) 68 | RBytes $addr 1 69 | } 70 | Function RUInt16 71 | { 72 | Param ( 73 | $addr 74 | ) 75 | $buff = RBytes $addr 2 76 | if ($bigendian -eq $true) { 77 | [Array]::Reverse($buff) 78 | } 79 | [bitconverter]::ToUInt16($buff,0) 80 | } 81 | Function RUInt32 82 | { 83 | Param ( 84 | $addr 85 | ) 86 | $buff = RBytes $addr 4 87 | if ($bigendian -eq $true) { 88 | [Array]::Reverse($buff) 89 | } 90 | [bitconverter]::ToUInt32($buff,0) 91 | } 92 | Function RUInt64 93 | { 94 | Param ( 95 | $addr 96 | ) 97 | $buff = RBytes $addr 8 98 | if ($bigendian -eq $true) { 99 | [Array]::Reverse($buff) 100 | } 101 | [bitconverter]::ToUInt64($buff,0) 102 | } 103 | Function RSingle 104 | { 105 | Param ( 106 | $addr 107 | ) 108 | $buff = RBytes $addr 4 109 | if ($bigendian -eq $true) { 110 | [Array]::Reverse($buff) 111 | } 112 | [bitconverter]::ToSingle($buff,0) 113 | } 114 | 115 | Function WBytes 116 | { 117 | Param ( 118 | $addr, 119 | $wb 120 | ) 121 | $rpm::WriteProcessMemory($proc,$addr,$wb,$wb.length,$null); 122 | } 123 | Function WUInt32 124 | { 125 | Param ( 126 | $addr, 127 | $val 128 | ) 129 | $wb = [bitconverter]::GetBytes($val) 130 | if ($bigendian) { 131 | [Array]::Reverse($wb) 132 | } 133 | $rpm::WriteProcessMemory($proc,$addr,$wb,$wb.length,$null)|Out-Null 134 | } 135 | 136 | 137 | $signature = @" 138 | [DllImport("kernel32.dll")] public static extern IntPtr OpenProcess( 139 | uint h,bool b ,uint p); 140 | [DllImport("kernel32.dll")] public static extern bool ReadProcessMemory( 141 | IntPtr hp,IntPtr Base,[Out]Byte[] buff,int Size,[Out]int bread); 142 | [DllImport("kernel32.dll")] public static extern bool WriteProcessMemory( 143 | IntPtr hp,IntPtr Base,[In]Byte[] buff,int Size,[Out]int bwrite); 144 | [DllImport("kernel32.dll")] public static extern bool VirtualProtectEx( 145 | IntPtr hProcess, IntPtr lpAddress, uint dwSize, uint flNewProtect, out uint lpflOldProtect); 146 | "@ 147 | $PAGE_EXECUTE_READWRITE = 0x40 148 | $oldProtection = 0 149 | 150 | $rpm = Add-Type -MemberDefinition $signature -Name rpm -PassThru 151 | $access = 0x001F0FFF 152 | 153 | $ba = (get-Process $procname).MainModule.BaseAddress 154 | $procid = (get-Process $procname).ID 155 | $proc = $rpm::OpenProcess($access, $false, $procid) 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | $prevtime = 0 164 | $currtime = 0 165 | [String]$path = "" 166 | [String]$wad1 = "" 167 | [String]$wad2 = "" 168 | 169 | do { 170 | $currtime = [Math]::Floor([decimal](RSingle 0x30055f54a)) 171 | if ($prevtime -lt $currtime) { 172 | $prevtime = $currtime 173 | 174 | $wad1 = RAsciiStr 0x30055f4e8 175 | $wad2 = RAsciiStr 0x30055f4f3 176 | 177 | $path = $prevtime 178 | $path = $path.PadLeft(6, '0') 179 | $path = $savepath + $path + "_" + $wad1 + "_" + $wad2 180 | 181 | $ba = RBytes 0x30055f4e0 0x14000 182 | [io.file]::WriteAllBytes($path, $ba) 183 | } 184 | 185 | cls 186 | "Checkpoint playtime (s): " + $currtime 187 | "WAD 1: " + $wad1 188 | "WAD 2: " + $wad2 189 | sleep 1 190 | } 191 | while ($true) 192 | -------------------------------------------------------------------------------- /Memlocs/GoW1-PS2-Wadfile.bt: -------------------------------------------------------------------------------- 1 | //------------------------------------------------ 2 | //--- 010 Editor v13.0 Binary Template 3 | // 4 | // File: God of War, *.WAD 5 | // Authors: 6 | // Version: 7 | // Purpose: 8 | // Category: 9 | // File Mask: 10 | // ID Bytes: 11 | // History: 12 | //------------------------------------------------ 13 | 14 | typedef struct { 15 | int16 chunkID