├── .gitignore ├── CSaveGUI.c ├── CSaveMenu.c ├── Customizations.h ├── FileTranslator.c ├── FileTranslator.h ├── HISTORY ├── HelperVars.h ├── ItemCode.c ├── ItemCode.h ├── ItemLookupTest.c ├── LICENSE ├── LookupTables ├── BPInvPartData_EridianFabricator_C.txt ├── BPInvPart_AR_COV_C.txt ├── BPInvPart_AR_DAL_C.txt ├── BPInvPart_AR_TOR_C.txt ├── BPInvPart_ATL_AR_C.txt ├── BPInvPart_ATL_HW_C.txt ├── BPInvPart_Artifact_C.txt ├── BPInvPart_ClassMod_C.txt ├── BPInvPart_Customization_Head_C.txt ├── BPInvPart_Customization_Skin_C.txt ├── BPInvPart_Dahl_SMG_C.txt ├── BPInvPart_GrenadeMod_C.txt ├── BPInvPart_HW_COV_C.txt ├── BPInvPart_HW_TOR_C.txt ├── BPInvPart_HW_VLA_C.txt ├── BPInvPart_Hyperion_Shotgun_C.txt ├── BPInvPart_JAK_AR_C.txt ├── BPInvPart_Jakobs_Pistol_C.txt ├── BPInvPart_MAL_SR_C.txt ├── BPInvPart_Maliwan_SMG_C.txt ├── BPInvPart_PS_ATL_C.txt ├── BPInvPart_PS_COV_C.txt ├── BPInvPart_PS_DAL_C.txt ├── BPInvPart_PS_MAL_C.txt ├── BPInvPart_PS_TOR_C.txt ├── BPInvPart_PS_VLA_C.txt ├── BPInvPart_SG_JAK_C.txt ├── BPInvPart_SG_MAL_C.txt ├── BPInvPart_SG_TED_C.txt ├── BPInvPart_SG_Torgue_C.txt ├── BPInvPart_SM_Hyperion_C.txt ├── BPInvPart_SM_TED_C.txt ├── BPInvPart_SR_DAL_C.txt ├── BPInvPart_SR_HYP_C.txt ├── BPInvPart_SR_JAK_C.txt ├── BPInvPart_Shield_C.txt ├── BPInvPart_Tediore_Pistol_C.txt ├── BPInvPart_VLA_AR_C.txt ├── BPInvPart_VLA_SR_C.txt ├── BPVehiclePart_C.txt ├── DownloadableEntitlementPartData.txt ├── InventoryBalanceData.txt ├── InventoryCustomizationPartData.txt ├── InventoryData.txt ├── InventoryGenericPartData.txt ├── ItemPoolData.txt ├── LIST.txt ├── ManufacturerData.txt ├── OakDownloadableContentLicenseData.txt └── db.json ├── Makefile ├── Makefile.bsd ├── Makefile.vc ├── Makefile.watcom ├── OakProfile.proto ├── OakSave.proto ├── OakShared.proto ├── ProfileGenerate.c ├── ProfileToProto.c ├── ProfileUnpack.c ├── ProtoToProfile.c ├── ProtoToSave.c ├── README ├── ReadSaveHeader.c ├── SaveConvert.c ├── SaveGenerate.c ├── SaveToProto.c ├── SaveUnpack.c ├── Scripts ├── README.txt ├── missionlist.txt ├── proceduralName.sh └── resetAllChallenges.script ├── bits.txt ├── bl3serialformatinfo.txt ├── build_win64 ├── CSaveGUI.exe ├── CSaveMenu.exe ├── ItemLookupTest.exe ├── ProfileGenerate.exe ├── ProfileToProto.exe ├── ProfileUnpack.exe ├── ProtoToProfile.exe ├── ProtoToSave.exe ├── ReadSaveHeader.exe ├── SaveConvert.exe ├── SaveGenerate.exe ├── SaveToProto.exe ├── SaveUnpack.exe ├── cygncursesw-10.dll ├── cygprotobuf-c-1.dll └── cygwin1.dll ├── exampleSaves ├── examples.tar ├── file_index.txt ├── genIndex.sh └── index.txt ├── manpages ├── CSaveGUI.1 ├── CSaveMenu.1 ├── ItemLookupTest.1 ├── ProfileGenerate.1 ├── ProfileToProto.1 ├── ProfileUnpack.1 ├── ProtoToProfile.1 ├── ProtoToSave.1 ├── ReadSaveHeader.1 ├── SaveConvert.1 ├── SaveGenerate.1 ├── SaveToProto.1 └── SaveUnpack.1 ├── manual.ms ├── manual.pdf ├── manual.ps └── manual.txt /.gitignore: -------------------------------------------------------------------------------- 1 | *.o 2 | *.obj 3 | *.a 4 | *.lib 5 | *.stackdump 6 | *.sav 7 | *.js 8 | LookupTables/*.js 9 | *.err 10 | *.sav 11 | *.sav.proto 12 | -------------------------------------------------------------------------------- /CSaveMenu.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | /* 8 | * WARNING WARNING WARNING! 9 | * THIS PROGRAM IS SUPER DUPER BUGGY AND YOU PROBABLY SHOULDN'T RUN IT JUST YET 10 | */ 11 | 12 | 13 | 14 | char* currentFile; 15 | int loopContinue = 1; 16 | FILE* fp; 17 | char path[8192]; 18 | char* command; 19 | char myLine[8192]; 20 | char choice[32]; 21 | char input[256]; 22 | char filenameNL[2048]; 23 | char filename[2048]; 24 | char filename2[2048]; 25 | char filenameNL2[2048]; 26 | char pcInNL[2048]; 27 | char pcOutNL[2048]; 28 | char pcIn[2048]; 29 | char pcOut[2048]; 30 | 31 | void drawMainMenu() { 32 | printf("0 File Save Files\n"); 33 | printf("1 Find Protobuf Files\n"); 34 | printf("2 Convert Save to Protobuf Format\n"); 35 | printf("3 Convert Protobuf Format to Save\n"); 36 | printf("4 Convert Profile to Protobuf Format\n"); 37 | printf("5 Convert Protobuf Format to Profile\n"); 38 | printf("6 Get Save Information\n"); 39 | printf("7 Get Profile Information\n"); 40 | printf("8 Start Save Editor\n"); 41 | printf("9 Start Profile Editor\n"); 42 | printf("A Convert Saves Between Platforms\n"); 43 | printf("Z Exit\n"); 44 | printf("Enter option --> "); 45 | } 46 | 47 | 48 | void listDirectory(char* path, char* grep) { 49 | struct dirent* de; 50 | DIR* dr = opendir(path); 51 | if(dr == NULL) { 52 | printf("Failed to list files.\n"); 53 | return; 54 | } 55 | printf("File Listing\n"); 56 | while((de = readdir(dr)) != NULL) { 57 | printf("%s\n", de->d_name); 58 | } 59 | } 60 | 61 | void saveConvert() { 62 | printf("Convert Save\n"); 63 | printf("Please specify the input save file.\n"); 64 | printf("Enter file --> "); 65 | fgets(filename, 1024, stdin); 66 | strtok(filename, "\n"); 67 | 68 | printf("Please specify the output save file.\n"); 69 | printf("Enter file --> "); 70 | fgets(filename2, 1024, stdin); 71 | strtok(filename2, "\n"); 72 | 73 | printf("Please specify the input platform code (see manual).\n"); 74 | printf("Enter value --> "); 75 | fgets(pcIn, 1024, stdin); 76 | strtok(pcIn, "\n"); 77 | 78 | printf("Please specify the output platform code (see manual).\n"); 79 | printf("Enter value --> "); 80 | fgets(pcOut, 1024, stdin); 81 | strtok(pcOut, "\n"); 82 | 83 | printf("Will convert %s to %s\n", filename, filename2); 84 | command = malloc(strlen("SaveConvert ") + strlen(filename) + 1 + strlen(filename2) + 8); 85 | strcpy(command, "SaveConvert "); 86 | strcat(command, filename); 87 | strcat(command, " "); 88 | strcat(command, filename2); 89 | strcat(command, " "); 90 | strcat(command, pcIn); 91 | strcat(command, " "); 92 | strcat(command, pcOut); 93 | fp = popen(command, "r"); 94 | if(fp == NULL) { 95 | printf("Failed to execute SaveConvert!\n"); 96 | return; 97 | } 98 | while(fgets(path, sizeof(path), fp) != NULL) { 99 | printf("%s", myLine); 100 | } 101 | printf("Execution complete\n"); 102 | } 103 | 104 | void saveToProto() { 105 | printf("Save to Protobuf\n"); 106 | printf("Please specify a filename.\n"); 107 | printf("Enter file --> "); 108 | fgets(filename, 1024, stdin); 109 | strtok(filename, "\n"); 110 | printf("Will convert %s\n", filename); 111 | command = malloc(strlen("SaveToProto ") + strlen(filename) + 1); 112 | strcpy(command, "SaveToProto "); 113 | strcat(command, filename); 114 | fp = popen(command, "r"); 115 | if(fp == NULL) { 116 | printf("Failed to execute SaveToProto!\n"); 117 | return; 118 | } 119 | while(fgets(myLine, 8192, fp) != NULL) { 120 | printf("%s", myLine); 121 | } 122 | printf("Execution complete\n"); 123 | } 124 | 125 | void saveToProtoProfile() { 126 | printf("Profile to Protobuf\n"); 127 | printf("Please specify a filename.\n"); 128 | printf("Enter file --> "); 129 | fgets(filename, 1024, stdin); 130 | strtok(filename, "\n"); 131 | printf("Will convert %s\n", filename); 132 | command = malloc(strlen("ProfileToProto ") + strlen(filename) + 1); 133 | strcpy(command, "ProfileToProto "); 134 | strcat(command, filename); 135 | fp = popen(command, "r"); 136 | if(fp == NULL) { 137 | printf("Failed to execute ProfileToProto!\n"); 138 | return; 139 | } 140 | while(fgets(myLine, 8192, fp) != NULL) { 141 | printf("%s", myLine); 142 | } 143 | printf("Execution complete\n"); 144 | 145 | } 146 | 147 | void protoToSave() { 148 | printf("Protobuf to Save\n"); 149 | printf("Please specify a protobuf file.\n"); 150 | printf("Enter file --> "); 151 | fgets(filename, 1024, stdin); 152 | strtok(filename, "\n"); 153 | 154 | printf("Please specify the original file.\n"); 155 | printf("Enter file --> "); 156 | fgets(filename2, 1024, stdin); 157 | strtok(filename2, "\n"); 158 | 159 | printf("Will convert %s\n", filename); 160 | command = malloc(strlen("ProtoToSave ") + strlen(filename) + 1 + strlen(filename2)); 161 | strcpy(command, "ProtoToSave "); 162 | strcat(command, filename); 163 | strcat(command, " "); 164 | strcat(command, filename2); 165 | fp = popen(command, "r"); 166 | if(fp == NULL) { 167 | printf("Failed to execute ProtoToSave!\n"); 168 | return; 169 | } 170 | while(fgets(myLine, 8192, fp) != NULL) { 171 | printf("%s", myLine); 172 | } 173 | printf("Execution complete\n"); 174 | } 175 | 176 | void protoToSaveProfile() { 177 | printf("Protobuf to Profile\n"); 178 | printf("Please specify a protobuf file.\n"); 179 | printf("Enter file --> "); 180 | fgets(filename, 1024, stdin); 181 | strtok(filename, "\n"); 182 | 183 | printf("Please specify the original file.\n"); 184 | printf("Enter file --> "); 185 | fgets(filename2, 1024, stdin); 186 | strtok(filename2, "\n"); 187 | 188 | printf("Will convert %s\n", filename); 189 | command = malloc(strlen("ProtoToProfile ") + strlen(filename) + 1 + strlen(filename2)); 190 | strcpy(command, "ProtoToProfile "); 191 | strcat(command, filename); 192 | strcat(command, " "); 193 | strcat(command, filename2); 194 | fp = popen(command, "r"); 195 | if(fp == NULL) { 196 | printf("Failed to execute ProtoToProfile!\n"); 197 | return; 198 | } 199 | while(fgets(myLine, 8192, fp) != NULL) { 200 | printf("%s", myLine); 201 | } 202 | printf("Execution complete\n"); 203 | } 204 | 205 | void saveUnpack() { 206 | printf("View Save Information\n"); 207 | printf("Please specify protobuf file.\n"); 208 | printf("Enter file --> "); 209 | fgets(filename, 1024, stdin); 210 | strtok(filename, "\n"); 211 | printf("Will process %s\n", filename); 212 | command = malloc(strlen("SaveUnpack ") + strlen(filename) + 1); 213 | strcpy(command, "SaveUnpack "); 214 | strcat(command, filename); 215 | fp = popen(command, "r"); 216 | if(fp == NULL) { 217 | printf("Failed to execute SaveUnpack\n"); 218 | return; 219 | } 220 | while(fgets(myLine, 8192, fp) != NULL) { 221 | printf("%s", myLine); 222 | } 223 | printf("Execution complete\n"); 224 | } 225 | 226 | void profUnpack() { 227 | printf("View Profile Information\n"); 228 | printf("Please specify protobuf file.\n"); 229 | printf("Enter file --> "); 230 | fgets(filename, 1024, stdin); 231 | strtok(filename, "\n"); 232 | printf("Will process %s\n", filename); 233 | command = malloc(strlen("ProfileUnpack ") + strlen(filename) + 1); 234 | strcpy(command, "ProfileUnpack "); 235 | strcat(command, filename); 236 | fp = popen(command, "r"); 237 | if(fp == NULL) { 238 | printf("Failed to execute ProfileUnpack!\n"); 239 | return; 240 | } 241 | while(fgets(myLine, 8192, fp) != NULL) { 242 | printf("%s", myLine); 243 | } 244 | printf("Execution complete\n"); 245 | } 246 | 247 | int main(int argc, char** argv) { 248 | // Start. 249 | do { 250 | drawMainMenu(); 251 | fgets(input, 256, stdin); 252 | if(strcmp(input, "z\n") == 0) { 253 | loopContinue = 0; 254 | } 255 | else if(strcmp(input, "0\n") == 0) { 256 | listDirectory(".", ".sav"); 257 | } 258 | else if(strcmp(input, "1\n") == 0) { 259 | listDirectory(".", ".proto"); 260 | } 261 | else if(strcmp(input, "2\n") == 0) { 262 | saveToProto(); 263 | } 264 | else if(strcmp(input, "3\n") == 0) { 265 | protoToSave(); 266 | } 267 | else if(strcmp(input, "4\n") == 0) { 268 | saveToProtoProfile(); 269 | } 270 | else if(strcmp(input, "5\n") == 0) { 271 | protoToSaveProfile(); 272 | } 273 | else if(strcmp(input, "6\n") == 0) { 274 | saveUnpack(); 275 | } 276 | else if(strcmp(input, "7\n") == 0) { 277 | profUnpack(); 278 | } 279 | } while(loopContinue == 1); 280 | 281 | // Exit. 282 | printf("Thank you for choosing CSave.\n"); 283 | } 284 | -------------------------------------------------------------------------------- /FileTranslator.h: -------------------------------------------------------------------------------- 1 | #ifndef FILETRANS_H 2 | #define FILETRANS_H 1 3 | 4 | #include 5 | #include 6 | #include 7 | #include 8 | 9 | size_t read_buffer(int max_length, uint8_t* out, FILE* f); 10 | 11 | struct Save { 12 | char* header; 13 | int32_t sg_version; 14 | int32_t pkg_version; 15 | int16_t engine_major; 16 | int16_t engine_minor; 17 | int16_t engine_patch; 18 | uint32_t engine_build; 19 | char* build_id; 20 | int build_id_length; 21 | int32_t fmt_version; 22 | int32_t fmt_count; 23 | char** custom_format_data; // DON'T use, use struct keyValuePair 24 | int32_t sg_type_len; 25 | char* sg_type; 26 | int32_t remaining_data_len; 27 | char* remaining_data; 28 | }; 29 | 30 | struct keyValuePair { 31 | char* guid; 32 | int entry; 33 | }; 34 | 35 | void readSave(FILE* file, int fileType); 36 | void writeSave(FILE* file, FILE* outFile, char* data, int32_t dataLen, int fileType); 37 | 38 | size_t decryptSave(uint8_t* buffer, int offset, int length); 39 | size_t encryptSave(uint8_t* buffer, int offset, int length); 40 | size_t decryptProfile(uint8_t* buffer, int offset, int length); 41 | size_t encryptProfile(uint8_t* buffer, int offset, int length); 42 | size_t decryptSave_PS4(uint8_t* buffer, int offset, int length); 43 | size_t encryptSave_PS4(uint8_t* buffer, int offset, int length); 44 | size_t decryptProfile_PS4(uint8_t* buffer, int offset, int length); 45 | size_t encryptProfile_PS4(uint8_t* buffer, int offset, int length); 46 | void readSaveHeader(FILE* file); 47 | 48 | #endif 49 | 50 | 51 | -------------------------------------------------------------------------------- /HISTORY: -------------------------------------------------------------------------------- 1 | Completely Useless History (i.e. Questions you didn't ask and answers) Document on CSave 2 | 3 | 1. When did I start this? 4 | 9/12/2020. Originally it was just a novel idea of "what kinda stuff can I do with 5 | protobuf-c" but it evolved into a save editor. 6 | 7 | 2. Where was this originally stored? 8 | hpux11_dev.hsnet.local (HP-UX B.11.11 development machine, mainly for testing out 9 | non-GNU C compilers. It's an HP-9000 712, it's slow as Christmas.) 10 | 11 | 3. Does this run on MVS? 12 | Well, not yet. I doubt that JCC can compile this, mainly because I've gotta first 13 | get libprotobuf-c (it should be noted that this project did originate on MVS, but 14 | was promptly moved off of MVS because of this C compilation issue) 15 | 16 | 4. What's with that dumb CSAV001xxx message prefixes? 17 | Well, if you've used MVS, VM/CMS, or VSE, it will look familiar. I've been using 18 | this scheme for a while now, mainly such that I can grep away for some particular 19 | output. Does it add to the verbosity of the already verbose output? Yes. Does it 20 | overload your 9600 baud VT100? You bet. Do you have to pay for the paper running 21 | off of your Teletype/3215? I sure hope not! 22 | 23 | 5. So, does it run on VMS or not? 24 | Well, kinda. You have to cross compile this bad boy from some other system that 25 | has GCC. Copy over the EXEs and have at it. 26 | 27 | 6. Does it compile on VM/CMS? 28 | Nope. (update 5/4/21: kinda, but the endianess is completely off and it's basically 29 | useless) 30 | -------------------------------------------------------------------------------- /HelperVars.h: -------------------------------------------------------------------------------- 1 | #ifndef HELPERVARS_H 2 | #define HELPERVARS_H 1 3 | 4 | // A precomputed table of XP values. 5 | 6 | int32_t levelToXP[] = { 7 | 0, // lvl 1 8 | 358, // lvl 2 9 | 1241, // lvl 3 10 | 2850, // lvl 4 11 | 5376, // lvl 5 12 | 8997, // lvl 6 13 | 13886, // lvl 7 14 | 20208, // lvl 8 15 | 28126, // lvl 9 16 | 37798, // lvl 10 17 | 49377, // lvl 11 18 | 63016, // lvl 12 19 | 78861, // lvl 13 20 | 97061, // lvl 14 21 | 117757, // lvl 15 22 | 141092, // lvl 16 23 | 167206, // lvl 17 24 | 196238, // lvl 18 25 | 228322, // lvl 19 26 | 263595, // lvl 20 27 | 302190, // lvl 21 28 | 344238, // lvl 22 29 | 389873, // lvl 23 30 | 439222, // lvl 24 31 | 492414, // lvl 25 32 | 549578, // lvl 26 33 | 610840, // lvl 27 34 | 676325, // lvl 28 35 | 746158, // lvl 29 36 | 820463, // lvl 30 37 | 899363, // lvl 31 38 | 982980, // lvl 32 39 | 1071435, // lvl 33 40 | 1164850, // lvl 34 41 | 1263343, // lvl 35 42 | 1367034, // lvl 36 43 | 1476041, // lvl 37 44 | 1590483, // lvl 38 45 | 1710476, // lvl 39 46 | 1836137, // lvl 40 47 | 1967582, // lvl 41 48 | 2104926, // lvl 42 49 | 2248285, // lvl 43 50 | 2397772, // lvl 44 51 | 2553501, // lvl 45 52 | 2715586, // lvl 46 53 | 2884139, // lvl 47 54 | 3059273, // lvl 48 55 | 3241098, // lvl 49 56 | 3429728, // lvl 50 57 | 3625271, // lvl 51 58 | 3827840, // lvl 52 59 | 4037543, // lvl 53 60 | 4254491, // lvl 54 61 | 4478792, // lvl 55 62 | 4710556, // lvl 56 63 | 4949890, // lvl 57 64 | 5196902, // lvl 58 65 | 5451701, // lvl 59 66 | 5714393, // lvl 60 67 | 5985086, // lvl 61 68 | 6263885, // lvl 62 69 | 6550897, // lvl 63 70 | 6846227, // lvl 64 71 | 7149982, // lvl 65 72 | 7462266, // lvl 66 73 | 7783184, // lvl 67 74 | 8112840, // lvl 68 75 | 8451340, // lvl 69 76 | 8798786, // lvl 70 77 | 9155282, // lvl 71 78 | 9520931, // lvl 72 79 | 9895837, // lvl 73 80 | 10280103, // lvl 74 81 | 10673830, // lvl 75 82 | 11077120, // lvl 76 83 | 11490077, // lvl 77 84 | 11912801, // lvl 78 85 | 12345393, // lvl 79 86 | 12787955, // lvl 80 87 | }; 88 | 89 | // Currency hashes. 90 | 91 | uint32_t currencyHashes[] = { 92 | 618814354, // Money 93 | 3679636065, // Eridium 94 | 4031389239, // Golden Keys 95 | 3707609395, // Vault Cards 96 | 2268671775 // Diamond Keys 97 | }; 98 | 99 | // Helper for "set class" 100 | 101 | char* playerClassToObject[] = { 102 | "/Game/PlayerCharacters/SirenBrawler/PlayerClassId_Siren.PlayerClassId_Siren", // Amara 103 | "/Game/PlayerCharacters/Beastmaster/PlayerClassId_Beastmaster.PlayerClassId_Beastmaster", // FL4K 104 | "/Game/PlayerCharacters/Gunner/PlayerClassId_Gunner.PlayerClassId_Gunner", // Moze 105 | "/Game/PlayerCharacters/Operative/PlayerClassId_Operative.PlayerClassId_Operative" // Zane 106 | }; 107 | 108 | // VERY IMPORTANT NOTE 109 | // I did not figure out this table. Gibbed did. It is very important that he gets the credit! 110 | 111 | uint64_t customizationHashes[] = { 112 | 0x00000000, 0x04C11DB7, 0x09823B6E, 0x0D4326D9, 0x130476DC, 0x17C56B6B, 0x1A864DB2, 0x1E475005, 113 | 0x2608EDB8, 0x22C9F00F, 0x2F8AD6D6, 0x2B4BCB61, 0x350C9B64, 0x31CD86D3, 0x3C8EA00A, 0x384FBDBD, 114 | 0x4C11DB70, 0x48D0C6C7, 0x4593E01E, 0x4152FDA9, 0x5F15ADAC, 0x5BD4B01B, 0x569796C2, 0x52568B75, 115 | 0x6A1936C8, 0x6ED82B7F, 0x639B0DA6, 0x675A1011, 0x791D4014, 0x7DDC5DA3, 0x709F7B7A, 0x745E66CD, 116 | 0x9823B6E0, 0x9CE2AB57, 0x91A18D8E, 0x95609039, 0x8B27C03C, 0x8FE6DD8B, 0x82A5FB52, 0x8664E6E5, 117 | 0xBE2B5B58, 0xBAEA46EF, 0xB7A96036, 0xB3687D81, 0xAD2F2D84, 0xA9EE3033, 0xA4AD16EA, 0xA06C0B5D, 118 | 0xD4326D90, 0xD0F37027, 0xDDB056FE, 0xD9714B49, 0xC7361B4C, 0xC3F706FB, 0xCEB42022, 0xCA753D95, 119 | 0xF23A8028, 0xF6FB9D9F, 0xFBB8BB46, 0xFF79A6F1, 0xE13EF6F4, 0xE5FFEB43, 0xE8BCCD9A, 0xEC7DD02D, 120 | 0x34867077, 0x30476DC0, 0x3D044B19, 0x39C556AE, 0x278206AB, 0x23431B1C, 0x2E003DC5, 0x2AC12072, 121 | 0x128E9DCF, 0x164F8078, 0x1B0CA6A1, 0x1FCDBB16, 0x018AEB13, 0x054BF6A4, 0x0808D07D, 0x0CC9CDCA, 122 | 0x7897AB07, 0x7C56B6B0, 0x71159069, 0x75D48DDE, 0x6B93DDDB, 0x6F52C06C, 0x6211E6B5, 0x66D0FB02, 123 | 0x5E9F46BF, 0x5A5E5B08, 0x571D7DD1, 0x53DC6066, 0x4D9B3063, 0x495A2DD4, 0x44190B0D, 0x40D816BA, 124 | 0xACA5C697, 0xA864DB20, 0xA527FDF9, 0xA1E6E04E, 0xBFA1B04B, 0xBB60ADFC, 0xB6238B25, 0xB2E29692, 125 | 0x8AAD2B2F, 0x8E6C3698, 0x832F1041, 0x87EE0DF6, 0x99A95DF3, 0x9D684044, 0x902B669D, 0x94EA7B2A, 126 | 0xE0B41DE7, 0xE4750050, 0xE9362689, 0xEDF73B3E, 0xF3B06B3B, 0xF771768C, 0xFA325055, 0xFEF34DE2, 127 | 0xC6BCF05F, 0xC27DEDE8, 0xCF3ECB31, 0xCBFFD686, 0xD5B88683, 0xD1799B34, 0xDC3ABDED, 0xD8FBA05A, 128 | 0x690CE0EE, 0x6DCDFD59, 0x608EDB80, 0x644FC637, 0x7A089632, 0x7EC98B85, 0x738AAD5C, 0x774BB0EB, 129 | 0x4F040D56, 0x4BC510E1, 0x46863638, 0x42472B8F, 0x5C007B8A, 0x58C1663D, 0x558240E4, 0x51435D53, 130 | 0x251D3B9E, 0x21DC2629, 0x2C9F00F0, 0x285E1D47, 0x36194D42, 0x32D850F5, 0x3F9B762C, 0x3B5A6B9B, 131 | 0x0315D626, 0x07D4CB91, 0x0A97ED48, 0x0E56F0FF, 0x1011A0FA, 0x14D0BD4D, 0x19939B94, 0x1D528623, 132 | 0xF12F560E, 0xF5EE4BB9, 0xF8AD6D60, 0xFC6C70D7, 0xE22B20D2, 0xE6EA3D65, 0xEBA91BBC, 0xEF68060B, 133 | 0xD727BBB6, 0xD3E6A601, 0xDEA580D8, 0xDA649D6F, 0xC423CD6A, 0xC0E2D0DD, 0xCDA1F604, 0xC960EBB3, 134 | 0xBD3E8D7E, 0xB9FF90C9, 0xB4BCB610, 0xB07DABA7, 0xAE3AFBA2, 0xAAFBE615, 0xA7B8C0CC, 0xA379DD7B, 135 | 0x9B3660C6, 0x9FF77D71, 0x92B45BA8, 0x9675461F, 0x8832161A, 0x8CF30BAD, 0x81B02D74, 0x857130C3, 136 | 0x5D8A9099, 0x594B8D2E, 0x5408ABF7, 0x50C9B640, 0x4E8EE645, 0x4A4FFBF2, 0x470CDD2B, 0x43CDC09C, 137 | 0x7B827D21, 0x7F436096, 0x7200464F, 0x76C15BF8, 0x68860BFD, 0x6C47164A, 0x61043093, 0x65C52D24, 138 | 0x119B4BE9, 0x155A565E, 0x18197087, 0x1CD86D30, 0x029F3D35, 0x065E2082, 0x0B1D065B, 0x0FDC1BEC, 139 | 0x3793A651, 0x3352BBE6, 0x3E119D3F, 0x3AD08088, 0x2497D08D, 0x2056CD3A, 0x2D15EBE3, 0x29D4F654, 140 | 0xC5A92679, 0xC1683BCE, 0xCC2B1D17, 0xC8EA00A0, 0xD6AD50A5, 0xD26C4D12, 0xDF2F6BCB, 0xDBEE767C, 141 | 0xE3A1CBC1, 0xE760D676, 0xEA23F0AF, 0xEEE2ED18, 0xF0A5BD1D, 0xF464A0AA, 0xF9278673, 0xFDE69BC4, 142 | 0x89B8FD09, 0x8D79E0BE, 0x803AC667, 0x84FBDBD0, 0x9ABC8BD5, 0x9E7D9662, 0x933EB0BB, 0x97FFAD0C, 143 | 0xAFB010B1, 0xAB710D06, 0xA6322BDF, 0xA2F33668, 0xBCB4666D, 0xB8757BDA, 0xB5365D03, 0xB1F740B4, 144 | }; 145 | 146 | #endif 147 | -------------------------------------------------------------------------------- /ItemCode.h: -------------------------------------------------------------------------------- 1 | #ifndef ITEMCODE_H 2 | #define ITEMCODE_H 1 3 | 4 | #include "OakShared.pb-c.h" 5 | #include "OakSave.pb-c.h" 6 | #include "OakProfile.pb-c.h" 7 | 8 | struct Item_aspect { 9 | int bits; 10 | int index; 11 | char* val; 12 | }; 13 | 14 | enum Item_flags { 15 | flag_seen = 1, 16 | flag_fav = 2, 17 | flag_trash = 4 18 | }; 19 | 20 | struct Item { 21 | /* 22 | int writable; 23 | int version; 24 | char* parts_category; 25 | char* name; 26 | char* object_short_name; 27 | struct Item_aspect balance; 28 | struct Item_aspect data; 29 | struct Item_aspect manufacturer; 30 | int level; 31 | int numberOfParts; 32 | struct aspect* parts; 33 | struct aspect* genericParts; 34 | int seed; 35 | uint8_t* wear; 36 | int numCustom; 37 | char* remainingBits; 38 | */ 39 | int version; 40 | int balance_bits; 41 | int balance_idx; 42 | char* balance; 43 | char* balance_short; 44 | char* eng_name; 45 | int invdata_bits; 46 | int invdata_idx; 47 | char* invdata; 48 | int manufacturer_bits; 49 | int manufacturer_idx; 50 | char* manufacturer; 51 | int level; 52 | char* remaining_data; 53 | int* part_invkeys; 54 | int* part_bits; 55 | char** parts; 56 | int* generic_bits; 57 | int* generic_parts; 58 | }; 59 | 60 | void dumpSerial(ProtobufCBinaryData item_serial_number); 61 | uint8_t* xorSaveData(uint8_t* data, uint8_t seed); 62 | uint8_t* xorItemSerialData(uint8_t* data, uint32_t seed, int len); 63 | void loadLookupTables(); 64 | char* lookupInTable(int tableIndex, int lineNumber); 65 | int findLookupTable(char* searchText); 66 | int findInTable(int tableIndex, char* searchText); 67 | 68 | #endif 69 | -------------------------------------------------------------------------------- /ItemLookupTest.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include "ItemCode.h" 6 | #include "OakShared.pb-c.h" 7 | #include "OakSave.pb-c.h" 8 | 9 | int loopContinue; 10 | char command[1024]; 11 | int table; 12 | int item; 13 | 14 | 15 | int main() { 16 | loopContinue = 1; 17 | 18 | printf("CSAV001ILT Item Lookup Test Program\n"); 19 | loadLookupTables(); 20 | printf("CSAV001ILT ^^^ If any errors occurred in the above process, stop the process or cancel the job now please.\n"); 21 | while(loopContinue == 1) { 22 | printf("*Go\n"); 23 | fgets(command, 1024, stdin); 24 | if(strcmp(command, "findtable\n") == 0) { 25 | printf("CSAV001ILT What table do you want to find?\n*Input\n"); 26 | fgets(command, 1024, stdin); 27 | strtok(command, "\n"); 28 | printf("CSAV001ILT Searching for %s\n", command); 29 | printf("CSAV001ILT Table number: %d\n", findLookupTable(command)); 30 | } 31 | else if(strcmp(command, "getindex\n") == 0) { 32 | printf("CSAV001ILT Enter the table index you want to pull from:\n*Input\n"); 33 | fgets(command, 1024, stdin); 34 | strtok(command, "\n"); 35 | table = atoi(command); 36 | printf("CSAV001ILT Enter item index/number:\n*Input\n"); 37 | fgets(command, 1024, stdin); 38 | strtok(command, "\n"); 39 | item = atoi(command); 40 | printf("CSAV001ILT Result: %s\n", lookupInTable(table, item)); 41 | } 42 | else if(strcmp(command, "findindex\n") == 0) { 43 | printf("CSAV001ILT Enter the table index you want to search:\n*Input\n"); 44 | fgets(command, 1024, stdin); 45 | strtok(command, "\n"); 46 | table = atoi(command); 47 | printf("CSAV001ILT Enter the search query:\n*Input\n"); 48 | fgets(command, 1024, stdin); 49 | strtok(command, "\n"); 50 | printf("CSAV001ILT Searching for %s\n", command); 51 | printf("CSAV001ILT Result: %d\n", findInTable(table, command)); 52 | } 53 | else if(strcmp(command, "exit\n") == 0) { 54 | loopContinue = 0; 55 | } 56 | } 57 | printf("CSAV001ILT Table processing complete\n"); 58 | return 0; 59 | } 60 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | HS SOFTWARE LICENSE - TERMS AND CONDITIONS 2 | This software was made by HackerSmacker. 3 | This software is freeware/public domain. 4 | 5 | BY USING THIS SOFTWARE, YOU AGREE TO THE FOLLOWING TERMS AND CONDITIONS: 6 | - I (HackerSmacker) am not resposible for any damages, malfunctions, 7 | hardware failures, legal issues, black holes in your living room, or anything. 8 | - By using this software, you are fully resposible for any outcomes from using 9 | it, good or bad. 10 | - Do not sell this software. Do you see the line that says "FREEware"? 11 | Yeah, if you sell this, you are breaking the law. Don't do it. 12 | - Do not use this software for malicous purposes AT ALL. Do not use it to ruin 13 | someone's experience/damage someone's computer. Doing so is illegal. 14 | - Do not pay for this software at all. 15 | - Do not pay for modded items. While it is probably not illegal, you are technically 16 | supporting fraud. 17 | - If you use any of the functions in this editor to produce modded items and sell 18 | them, you are breaking the law and legal action may be taken upon you by 2K Publishing 19 | and Gearbox Software. You are not permitted to sell anything related to this editor, 20 | input or output. 21 | - I am not a lawyer and this document does not constitute legal advice. 22 | - You may not use this software on a pirated copy of the game at all. Posessing, using, 23 | transmitting, or receiving pirated software is a violation of US federal law where 24 | applicable. 25 | - Do not use this software to reverse-engineer the game. That would consist a violation 26 | of Gearbox and 2K's license agreement, and they might send their lawyers after you. 27 | - Again, I am not responsible for what you do with this editor. It is up to you to make 28 | the correct decisions. 29 | - Do not re-distribute binaries of this program under any circumstances. 30 | - Do not compile this program and lace it with malware to send to someone. That is highly 31 | illegal. 32 | 33 | IF YOU WANT TO RE-USE ANY OF THE CODE CONTAINED IN THIS PROJECT, GO FOR IT. 34 | -------------------------------------------------------------------------------- /LookupTables/BPInvPartData_EridianFabricator_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/HeavyWeapons/Eridian/_Shared/_Design/Parts/Part_Eridian_Fabricator.Part_Eridian_Fabricator -------------------------------------------------------------------------------- /LookupTables/BPInvPart_AR_COV_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_01/Part_AR_COV_Barrel_01.Part_AR_COV_Barrel_01 2 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_01/Part_AR_COV_Barrel_01_A.Part_AR_COV_Barrel_01_A 3 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_01/Part_AR_COV_Barrel_01_B.Part_AR_COV_Barrel_01_B 4 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_01/Part_AR_COV_Barrel_01_C.Part_AR_COV_Barrel_01_C 5 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_AR_COV_Barrel_02.Part_AR_COV_Barrel_02 6 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_AR_COV_Barrel_02_A.Part_AR_COV_Barrel_02_A 7 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_AR_COV_Barrel_02_B.Part_AR_COV_Barrel_02_B 8 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_AR_COV_Barrel_02_C.Part_AR_COV_Barrel_02_C 9 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_AR_COV_Barrel_02_D.Part_AR_COV_Barrel_02_D 10 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_03/Part_AR_COV_Barrel_03.Part_AR_COV_Barrel_03 11 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_03/Part_AR_COV_Barrel_03_A.Part_AR_COV_Barrel_03_A 12 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_03/Part_AR_COV_Barrel_03_B.Part_AR_COV_Barrel_03_B 13 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_03/Part_AR_COV_Barrel_03_C.Part_AR_COV_Barrel_03_C 14 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_AR_COV_Body.Part_AR_COV_Body 15 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_AR_COV_Body_A.Part_AR_COV_Body_A 16 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_AR_COV_Body_B.Part_AR_COV_Body_B 17 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_AR_COV_Body_C.Part_AR_COV_Body_C 18 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_AR_COV_Ele_Corr.Part_AR_COV_Ele_Corr 19 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_AR_COV_Ele_Cryo.Part_AR_COV_Ele_Cryo 20 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_AR_COV_Ele_Fire.Part_AR_COV_Ele_Fire 21 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_AR_COV_Ele_Shock.Part_AR_COV_Ele_Shock 22 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_AR_COV_Ele_Radiation.Part_AR_COV_Ele_Radiation 23 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Foregrip/Part_AR_COV_Foregrip_01.Part_AR_COV_Foregrip_01 24 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Foregrip/Part_AR_COV_Foregrip_02.Part_AR_COV_Foregrip_02 25 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Foregrip/Part_AR_COV_Foregrip_03.Part_AR_COV_Foregrip_03 26 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Foregrip/Part_AR_COV_Foregrip_04.Part_AR_COV_Foregrip_04 27 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Grip/Part_AR_COV_Grip_01.Part_AR_COV_Grip_01 28 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Grip/Part_AR_COV_Grip_02.Part_AR_COV_Grip_02 29 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Grip/Part_AR_COV_Grip_03.Part_AR_COV_Grip_03 30 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Grip/Part_AR_COV_Grip_04.Part_AR_COV_Grip_04 31 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_AR_COV_Material_01_Common.Part_AR_COV_Material_01_Common 32 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Scope/Part_AR_COV_ScopeMount.Part_AR_COV_ScopeMount 33 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Scope/Part_AR_COV_Scope_01.Part_AR_COV_Scope_01 34 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Scope/Part_AR_COV_Scope_02.Part_AR_COV_Scope_02 35 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Scope/Part_AR_COV_Scope_03.Part_AR_COV_Scope_03 36 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Starter/Part_AR_COV_Starter_01.Part_AR_COV_Starter_01 37 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Starter/Part_AR_COV_Starter_02.Part_AR_COV_Starter_02 38 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Starter/Part_AR_COV_Starter_03.Part_AR_COV_Starter_03 39 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/BeltFeed/Part_AR_COV_BulletForge.Part_AR_COV_BulletForge 40 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_AR_COV_Material_02_UnCommon.Part_AR_COV_Material_02_UnCommon 41 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_AR_COV_Material_03_rare.Part_AR_COV_Material_03_Rare 42 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_AR_COV_Material_04_VeryRare.Part_AR_COV_Material_04_VeryRare 43 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_AR_COV_Material_05_Legendary.Part_AR_COV_Material_05_Legendary 44 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/_Unique/KriegAR/Parts/Damage/Part_AR_COV_Barrel_HeatDamage.Part_AR_COV_Barrel_HeatDamage 45 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/_Unique/KriegAR/Parts/FireRate/Part_AR_COV_Barrel_HeatFirerate.Part_AR_COV_Barrel_HeatFirerate 46 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/_Unique/KriegAR/Parts/Part_AR_COV_Material_KriegAR.Part_AR_COV_Material_KriegAR 47 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/AssaultRifle/COV/Part_AR_COV_Barrel_ETech.Part_AR_COV_Barrel_ETech 48 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/AssaultRifle/COV/Part_AR_COV_Barrel_ETech_A.Part_AR_COV_Barrel_ETech_A 49 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_AR_COV_Bottle.Part_AR_COV_Bottle 50 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/_Unique/Sawbar/Parts/Part_AR_COV_Barrel_Sawbar.Part_AR_COV_Barrel_Sawbar 51 | /Game/Gear/Weapons/AssaultRifles/ChildrenOfTheVault/_Shared/_Design/_Unique/Sawbar/Parts/Part_AR_COV_Material_Sawbar.Part_AR_COV_Material_Sawbar 52 | /Game/PatchDLC/Dandelion/Gear/Weapon/_Unique/Trash/Parts/Part_AR_COV_Barrel_Trash.Part_AR_COV_Barrel_Trash 53 | /Game/PatchDLC/Dandelion/Gear/Weapon/_Unique/Trash/Parts/Part_AR_COV_Material_Trash.Part_AR_COV_Material_Trash 54 | /Game/PatchDLC/Raid1/Re-Engagement/Weapons/ZheitsevEruption/Parts/Part_AR_COV_Barrel_Zheitsev_A.Part_AR_COV_Barrel_Zheitsev_A 55 | /Game/PatchDLC/Raid1/Re-Engagement/Weapons/ZheitsevEruption/Parts/Part_AR_COV_Barrel_Zheitsev_B.Part_AR_COV_Barrel_Zheitsev_B 56 | /Game/PatchDLC/Raid1/Re-Engagement/Weapons/ZheitsevEruption/Parts/Part_AR_COV_Barrel_Zheitsev_C.Part_AR_COV_Barrel_Zheitsev_C 57 | /Game/PatchDLC/Raid1/Re-Engagement/Weapons/ZheitsevEruption/Parts/Part_AR_COV_Material_Zheitsev.Part_AR_COV_Material_Zheitsev 58 | /Game/PatchDLC/Raid1/Re-Engagement/Weapons/ZheitsevEruption/Parts/Part_AR_COV_Barrel_Zheitsev.Part_AR_COV_Barrel_Zheitsev 59 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Homicidal/Parts/Part_AR_COV_Material_Homicidal.Part_AR_COV_Material_Homicidal 60 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Homicidal/Parts/Part_AR_COV_Barrel_Homicidal.Part_AR_COV_Barrel_Homicidal 61 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/SparkyBoom/Parts/Part_AR_COV_Barrel_SparkyBoom.Part_AR_COV_Barrel_SparkyBoom 62 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/SparkyBoom/Parts/Part_AR_COV_Material_SparkyBoom.Part_AR_COV_Material_SparkyBoom 63 | /Game/PatchDLC/Event2/Gear/Weapon/_Unique/PewPew/Parts/Part_AR_COV_Barrel_PewPew.Part_AR_COV_Barrel_PewPew 64 | /Game/PatchDLC/Event2/Gear/Weapon/_Unique/PewPew/Parts/Part_AR_COV_Material_PewPew.Part_AR_COV_Material_PewPew 65 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/BioBetsy/Parts/Part_AR_COV_Barrel_BioBetsy_Rad.Part_AR_COV_Barrel_BioBetsy_Rad 66 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/BioBetsy/Parts/Part_AR_COV_Material_BioBetsy.Part_AR_COV_Material_BioBetsy 67 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/BioBetsy/Parts/Part_AR_COV_Barrel_BioBetsy_Shock.Part_AR_COV_Barrel_BioBetsy_Shock 68 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/Sawhorse/Parts/Part_AR_COV_Barrel_Sawhorse.Part_AR_COV_Barrel_Sawhorse 69 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/Sawhorse/Parts/Part_AR_COV_Material_Sawhorse.Part_AR_COV_Material_Sawhorse 70 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/Sawhorse/Parts/Part_AR_COV_Barrel_Sawhorse_Epic.Part_AR_COV_Barrel_Sawhorse_Epic -------------------------------------------------------------------------------- /LookupTables/BPInvPart_ATL_AR_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Barrel/Barrel_01/Part_AR_ATL_Barrel_01.Part_AR_ATL_Barrel_01 2 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Barrel/Barrel_01/Part_AR_ATL_Barrel_01_A.Part_AR_ATL_Barrel_01_A 3 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Barrel/Barrel_01/Part_AR_ATL_Barrel_01_B.Part_AR_ATL_Barrel_01_B 4 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Barrel/Barrel_01/Part_AR_ATL_Barrel_01_C.Part_AR_ATL_Barrel_01_C 5 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Barrel/Barrel_02/Part_AR_ATL_Barrel_02.Part_AR_ATL_Barrel_02 6 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Barrel/Barrel_02/Part_AR_ATL_Barrel_02_A.Part_AR_ATL_Barrel_02_A 7 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Barrel/Barrel_02/Part_AR_ATL_Barrel_02_B.Part_AR_ATL_Barrel_02_B 8 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Barrel/Barrel_02/Part_AR_ATL_Barrel_02_C.Part_AR_ATL_Barrel_02_C 9 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Barrel/Barrel_03/Part_AR_ATL_Barrel_03.Part_AR_ATL_Barrel_03 10 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Barrel/Barrel_03/Part_AR_ATL_Barrel_03_A.Part_AR_ATL_Barrel_03_A 11 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Barrel/Barrel_03/Part_AR_ATL_Barrel_03_B.Part_AR_ATL_Barrel_03_B 12 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Barrel/Barrel_03/Part_AR_ATL_Barrel_03_C.Part_AR_ATL_Barrel_03_C 13 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Body/Part_ATL_AR_Body.Part_ATL_AR_Body 14 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Body/Part_ATL_AR_Body_A.Part_ATL_AR_Body_A 15 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Body/Part_ATL_AR_Body_B.Part_ATL_AR_Body_B 16 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Body/Part_ATL_AR_Body_C.Part_ATL_AR_Body_C 17 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Foregrip/Part_AR_ATL_Foregrip_01.Part_AR_ATL_Foregrip_01 18 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Foregrip/Part_AR_ATL_Foregrip_02.Part_AR_ATL_Foregrip_02 19 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Foregrip/Part_AR_ATL_Foregrip_03.Part_AR_ATL_Foregrip_03 20 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Foregrip/Part_AR_ATL_Foregrip_04.Part_AR_ATL_Foregrip_04 21 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Grip/Part_AR_ATL_Grip_01.Part_AR_ATL_Grip_01 22 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Grip/Part_AR_ATL_Grip_02.Part_AR_ATL_Grip_02 23 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Grip/Part_AR_ATL_Grip_03.Part_AR_ATL_Grip_03 24 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Grip/Part_AR_ATL_Grip_04.Part_AR_ATL_Grip_04 25 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Magazine/Part_AR_ATL_Mag_01.Part_AR_ATL_Mag_01 26 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Magazine/Part_AR_ATL_Mag_02.Part_AR_ATL_Mag_02 27 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Magazine/Part_AR_ATL_Mag_03.Part_AR_ATL_Mag_03 28 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Material/Part_AR_ATL_Material_01_Common.Part_AR_ATL_Material_01_Common 29 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Scope/Part_AR_ATL_Scope_01.Part_AR_ATL_Scope_01 30 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Scope/Part_AR_ATL_Scope_02.Part_AR_ATL_Scope_02 31 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Scope/Part_AR_ATL_Scope_03.Part_AR_ATL_Scope_03 32 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Tracker/Part_AR_ATL_Tracker_01.Part_AR_ATL_Tracker_01 33 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Tracker/Part_AR_ATL_Tracker_02.Part_AR_ATL_Tracker_02 34 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Tracker/Part_AR_ATL_Tracker_03.Part_AR_ATL_Tracker_03 35 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Material/Part_AR_ATL_Material_02_UnCommon.Part_AR_ATL_Material_02_UnCommon 36 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Material/Part_AR_ATL_Material_03_Rare.Part_AR_ATL_Material_03_Rare 37 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/Parts/Material/Part_AR_ATL_Material_04_VeryRare.Part_AR_ATL_Material_04_VeryRare 38 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/_Unique/Carrier/Parts/Part_AR_ATL_Barrel_Carrier.Part_AR_ATL_Barrel_Carrier 39 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/_Unique/Carrier/Parts/Part_AR_ATL_Material_Carrier.Part_AR_ATL_Material_Carrier 40 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/_Unique/RebellYell/Parts/Part_AR_ATL_Barrel_RebelYell.Part_AR_ATL_Barrel_RebelYell 41 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/_Unique/RebellYell/Parts/Part_AR_ATL_Material_RebelYell.Part_AR_ATL_Material_RebelYell 42 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/_Unique/RebellYell/Parts/Part_AR_ATL_Tracker_RebelYell.Part_AR_ATL_Tracker_RebelYell 43 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/_Unique/Portal/Parts/Part_AR_ATL_Barrel_Portals.Part_AR_ATL_Barrel_Portals 44 | /Game/Gear/Weapons/AssaultRifles/Atlas/_Shared/_Design/_Unique/Portal/Parts/Part_AR_ATL_Material_Portals.Part_AR_ATL_Material_Portals 45 | /Game/PatchDLC/Event2/Gear/Weapon/_Unique/OPQ/Parts/Part_AR_ATL_Barrel_OPQ.Part_AR_ATL_Barrel_OPQ 46 | /Game/PatchDLC/Event2/Gear/Weapon/_Unique/OPQ/Parts/Part_AR_ATL_Material_OPQ.Part_AR_ATL_Material_OPQ 47 | /Game/PatchDLC/Event2/Gear/Weapon/_Unique/OPQ/Parts/Part_AR_ATL_Tracker_OPQ.Part_AR_ATL_Tracker_OPQ -------------------------------------------------------------------------------- /LookupTables/BPInvPart_ATL_HW_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Barrel/Barrel_01/Part_ATL_Barrel_01.Part_ATL_Barrel_01 2 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Barrel/Barrel_01/Part_ATL_Barrel_01_A.Part_ATL_Barrel_01_A 3 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Barrel/Barrel_01/Part_ATL_Barrel_01_B.Part_ATL_Barrel_01_B 4 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Barrel/Barrel_01/Part_ATL_Barrel_01_C.Part_ATL_Barrel_01_C 5 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Barrel/Barrel_02/Part_ATL_Barrel_02.Part_ATL_Barrel_02 6 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Barrel/Barrel_02/Part_ATL_Barrel_02_A.Part_ATL_Barrel_02_A 7 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Barrel/Barrel_02/Part_ATL_Barrel_02_B.Part_ATL_Barrel_02_B 8 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Barrel/Barrel_02/Part_ATL_Barrel_02_C.Part_ATL_Barrel_02_C 9 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Barrel/Barrel_03/Part_ATL_Barrel_03.Part_ATL_Barrel_03 10 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Barrel/Barrel_03/Part_ATL_Barrel_03_A.Part_ATL_Barrel_03_A 11 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Barrel/Barrel_03/Part_ATL_Barrel_03_B.Part_ATL_Barrel_03_B 12 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Barrel/Barrel_03/Part_ATL_Barrel_03_C.Part_ATL_Barrel_03_C 13 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Body/Part_ATL_Body.Part_ATL_Body 14 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Body/Part_ATL_Body_A.Part_ATL_Body_A 15 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Body/Part_ATL_Body_B.Part_ATL_Body_B 16 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Body/Part_ATL_Body_C.Part_ATL_Body_C 17 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Foregrip/Part_ATL_Foregrip_01.Part_ATL_Foregrip_01 18 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Foregrip/Part_ATL_Foregrip_02.Part_ATL_Foregrip_02 19 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Foregrip/Part_ATL_Foregrip_03.Part_ATL_Foregrip_03 20 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Grip/Part_ATL_Grip_01.Part_ATL_Grip_01 21 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Grip/Part_ATL_Grip_02.Part_ATL_Grip_02 22 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Grip/Part_ATL_Grip_03.Part_ATL_Grip_03 23 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Magazine/Part_ATL_Mag_Pod_01.Part_ATL_Mag_Pod_01 24 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Magazine/Part_ATL_Mag_Pod_02.Part_ATL_Mag_Pod_02 25 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Magazine/Part_ATL_Mag_Pod_03.Part_ATL_Mag_Pod_03 26 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Marker/Part_ATL_Marker_01.Part_ATL_Marker_01 27 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Marker/Part_ATL_Marker_02.Part_ATL_Marker_02 28 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Marker/Part_ATL_Marker_03.Part_ATL_Marker_03 29 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Material/Part_ATL_Material_01_Common.Part_ATL_Material_01_Common 30 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Scope/Part_ATL_Scope_01.Part_ATL_Scope_01 31 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Scope/Part_ATL_Scope_02.Part_ATL_Scope_02 32 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Scope/Part_ATL_Scope_03.Part_ATL_Scope_03 33 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Wires/Part_ATL_Wire_01.Part_ATL_Wire_01 34 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Wires/Part_ATL_Wire_02.Part_ATL_Wire_02 35 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Wires/Part_ATL_Wire_03.Part_ATL_Wire_03 36 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Material/Part_ATL_Material_02_Uncommon.Part_ATL_Material_02_Uncommon 37 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Material/Part_ATL_Material_03_Rare.Part_ATL_Material_03_Rare 38 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/Parts/Material/Part_ATL_Material_04_VeryRare.Part_ATL_Material_04_VeryRare 39 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/_Unique/RubysWrath/Parts/Part_ATL_Barrel_RubysWrath.Part_ATL_Barrel_RubysWrath 40 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/_Unique/Freeman/Parts/Part_ATL_Barrel_Freeman.Part_ATL_Barrel_Freeman 41 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/_Unique/Freeman/Parts/Part_ATL_Marker_Freeman.Part_ATL_Marker_Freeman 42 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/_Unique/Freeman/Parts/Part_ATL_Material_Freeman.Part_ATL_Material_Freeman 43 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/_Unique/RubysWrath/Parts/Part_ATL_Marker_RubysWrath.Part_ATL_Marker_RubysWrath 44 | /Game/Gear/Weapons/HeavyWeapons/ATL/_Shared/_Design/_Unique/RubysWrath/Parts/Part_ATL_Material_RubysWrath.Part_ATL_Material_RubysWrath 45 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Plumage/Parts/Part_HW_ATL_Barrel_Plumage.Part_HW_ATL_Barrel_Plumage 46 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Plumage/Parts/Part_HW_ATL_Material_Plumage.Part_HW_ATL_Material_Plumage 47 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Plumage/Parts/Part_ATL_Marker_Plumage.Part_ATL_Marker_Plumage 48 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Plumage/Parts/Part_ATL_Mag_Pod_Plumage.Part_ATL_Mag_Pod_Plumage -------------------------------------------------------------------------------- /LookupTables/BPInvPart_HW_COV_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_01/Part_HW_COV_Barrel_01.Part_HW_COV_Barrel_01 2 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_01/Part_HW_COV_Barrel_01_A.Part_HW_COV_Barrel_01_A 3 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_01/Part_HW_COV_Barrel_01_B.Part_HW_COV_Barrel_01_B 4 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_01/Part_HW_COV_Barrel_01_C.Part_HW_COV_Barrel_01_C 5 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_HW_COV_Barrel_02.Part_HW_COV_Barrel_02 6 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_HW_COV_Barrel_02_A.Part_HW_COV_Barrel_02_A 7 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_HW_COV_Barrel_02_B.Part_HW_COV_Barrel_02_B 8 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_HW_COV_Barrel_02_C.Part_HW_COV_Barrel_02_C 9 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_03/Part_HW_COV_Barrel_03.Part_HW_COV_Barrel_03 10 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_03/Part_HW_COV_Barrel_03_A.Part_HW_COV_Barrel_03_A 11 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_03/Part_HW_COV_Barrel_03_B.Part_HW_COV_Barrel_03_B 12 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_03/Part_HW_COV_Barrel_03_C.Part_HW_COV_Barrel_03_C 13 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_HW_COV_Body.Part_HW_COV_Body 14 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_HW_COV_Body_A.Part_HW_COV_Body_A 15 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_HW_COV_Body_B.Part_HW_COV_Body_B 16 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_HW_COV_Body_C.Part_HW_COV_Body_C 17 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_HW_COV_Ele_Corr.Part_HW_COV_Ele_Corr 18 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_HW_COV_Ele_Cryo.Part_HW_COV_Ele_Cryo 19 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_HW_COV_Ele_Fire.Part_HW_COV_Ele_Fire 20 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_HW_COV_Ele_Normal.Part_HW_COV_Ele_Normal 21 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_HW_COV_Ele_Shock.Part_HW_COV_Ele_Shock 22 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_HW_COV_Ele_Radiation.Part_HW_COV_Ele_Radiation 23 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Engine/Part_HW_COV_Engine_01.Part_HW_COV_Engine_01 24 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Engine/Part_HW_COV_Engine_02.Part_HW_COV_Engine_02 25 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Engine/Part_HW_COV_Engine_03.Part_HW_COV_Engine_03 26 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Grip/Part_HW_COV_Grip_01.Part_HW_COV_Grip_01 27 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Grip/Part_HW_COV_Grip_02.Part_HW_COV_Grip_02 28 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Grip/Part_HW_COV_Grip_03.Part_HW_COV_Grip_03 29 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_HW_COV_Material_01_Common.Part_HW_COV_Material_01_Common 30 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Scopes/Part_HW_COV_Scope_01.Part_HW_COV_Scope_01 31 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Scopes/Part_HW_COV_Scope_02.Part_HW_COV_Scope_02 32 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Scopes/Part_HW_COV_Scope_03.Part_HW_COV_Scope_03 33 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Starters/Part_HW_COV_Starter_01.Part_HW_COV_Starter_01 34 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Starters/Part_HW_COV_Starter_02.Part_HW_COV_Starter_02 35 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Starters/Part_HW_COV_Starter_03.Part_HW_COV_Starter_03 36 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Tails/Part_HW_COV_Tail_01.Part_HW_COV_Tail_01 37 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Tails/Part_HW_COV_Tail_02.Part_HW_COV_Tail_02 38 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Tails/Part_HW_COV_Tail_03.Part_HW_COV_Tail_03 39 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Tails/Part_HW_COV_Tail_04.Part_HW_COV_Tail_04 40 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Tails/Part_HW_COV_Tail_05.Part_HW_COV_Tail_05 41 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Tails/Part_HW_COV_Tail_06.Part_HW_COV_Tail_06 42 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_HW_COV_Material_02_Uncommon.Part_HW_COV_Material_02_Uncommon 43 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_HW_COV_Material_03_Rare.Part_HW_COV_Material_03_Rare 44 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_HW_COV_Material_04_VeryRare.Part_HW_COV_Material_04_VeryRare 45 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/HW/COV/Part_HW_COV_Barrel_ETech.Part_HW_COV_Barrel_ETech 46 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/HW/COV/Part_HW_COV_Barrel_ETech_A.Part_HW_COV_Barrel_ETech_A 47 | /Game/Enemies/Goliath/Badass/_Design/Weapons/Part_HW_COV_Goliath_Barrel_02.Part_HW_COV_Goliath_Barrel_02 48 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/_Unique/PortaPooper/Part/Part_HW_COV_Barrel_PortaPooper.Part_HW_COV_Barrel_PortaPooper 49 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/_Unique/PortaPooper/Part/Part_HW_COV_Material_PortaPooper.Part_HW_COV_Material_PortaPooper 50 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/_ForAI/Part_HW_COV_Barrel_03_AI_UseONLY.Part_HW_COV_Barrel_03_AI_UseONLY 51 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/_ForAI/Part_HW_COV_Barrel_02_AI_UseONLY.Part_HW_COV_Barrel_02_AI_UseONLY 52 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Required/Part_HW_COV_Body_Hose.Part_HW_COV_Body_Hose 53 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Required/Part_HW_COV_Body_OilCan.Part_HW_COV_Body_OilCan 54 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/_ForAI/Part_HW_COV_Barrel_01_AI_UseONLY.Part_HW_COV_Barrel_01_AI_UseONLY 55 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/_Unique/HotDrop/Parts/Part_HW_COV_Barrel_HotDrop.Part_HW_COV_Barrel_HotDrop 56 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/_Unique/HotDrop/Parts/Part_HW_COV_Material_HotDrop.Part_HW_COV_Material_HotDrop 57 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/_Unique/Terror/Parts/Part_HW_COV_Material_Terror.Part_HW_COV_Material_Terror 58 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/_Unique/Terror/Parts/Part_HW_COV_Barrel_Terror.Part_HW_COV_Barrel_Terror 59 | /Game/Gear/Weapons/HeavyWeapons/ChildrenOfTheVault/_Shared/_Design/_Unique/HotDrop/Parts/Part_HW_COV_Material_HotDrop.Part_HW_COV_Material_HotDrop 60 | /Game/PatchDLC/Raid1/BadassHeavyWeapons/COV/Part_HW_COV_Barrel_03_AI_UseONLY_Bullet.Part_HW_COV_Barrel_03_AI_UseONLY_Bullet 61 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/SparkyBoom/Parts/Part_HW_COV_Barrel_SparkyBoom.Part_HW_COV_Barrel_SparkyBoom 62 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/SparkyBoom/Parts/Part_HW_COV_Material_SparkyBoom.Part_HW_COV_Material_SparkyBoom 63 | /Game/PatchDLC/Event2/Gear/Weapon/_Unique/YellowCake/Parts/Part_HW_COV_Barrel_ETech_YellowCake.Part_HW_COV_Barrel_ETech_YellowCake 64 | /Game/PatchDLC/Takedown2/Gear/Weapons/Globetrotter/Parts/Part_HW_COV_Barrel_Globetrotter.Part_HW_COV_Barrel_Globetrotter 65 | /Game/PatchDLC/Takedown2/Gear/Weapons/Globetrotter/Parts/Part_HW_COV_Material_Globetrotter.Part_HW_COV_Material_Globetrotter 66 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/BanditLauncher/Parts/Part_HW_COV_Barrel_BanditoLauncher.Part_HW_COV_Barrel_BanditoLauncher 67 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/BanditLauncher/Parts/Part_HW_COV_Material_BanditLauncher.Part_HW_COV_Material_BanditLauncher 68 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/BanditLauncher/Parts/Part_HW_COV_Barrel_BanditoLauncher_Epic.Part_HW_COV_Barrel_BanditoLauncher_Epic 69 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/BanditLauncher/Parts/Part_HW_COV_Ele_Normal_BanditLauncher.Part_HW_COV_Ele_Normal_BanditLauncher -------------------------------------------------------------------------------- /LookupTables/BPInvPart_HW_TOR_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/Part_HW_TOR_Barrel_01.Part_HW_TOR_Barrel_01 2 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/Part_HW_TOR_Barrel_01_A.Part_HW_TOR_Barrel_01_A 3 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/Part_HW_TOR_Barrel_01_B.Part_HW_TOR_Barrel_01_B 4 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/Part_HW_TOR_Barrel_01_C.Part_HW_TOR_Barrel_01_C 5 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Barrel/Barrel_02/Part_HW_TOR_Barrel_02.Part_HW_TOR_Barrel_02 6 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Barrel/Barrel_02/Part_HW_TOR_Barrel_02_A.Part_HW_TOR_Barrel_02_A 7 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Barrel/Barrel_02/Part_HW_TOR_Barrel_02_B.Part_HW_TOR_Barrel_02_B 8 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Barrel/Barrel_02/Part_HW_TOR_Barrel_02_C.Part_HW_TOR_Barrel_02_C 9 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Barrel/Barrel_03/Part_HW_TOR_Barrel_03.Part_HW_TOR_Barrel_03 10 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Barrel/Barrel_03/Part_HW_TOR_Barrel_03_A.Part_HW_TOR_Barrel_03_A 11 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Barrel/Barrel_03/Part_HW_TOR_Barrel_03_B.Part_HW_TOR_Barrel_03_B 12 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Barrel/Barrel_03/Part_HW_TOR_Barrel_03_C.Part_HW_TOR_Barrel_03_C 13 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Body/Part_HW_TOR_Body.Part_HW_TOR_Body 14 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Body/Part_HW_TOR_Body_A.Part_HW_TOR_Body_A 15 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Body/Part_HW_TOR_Body_B.Part_HW_TOR_Body_B 16 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Elemental/Part_HW_TOR_Ele_Corr.Part_HW_TOR_Ele_Corr 17 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Elemental/Part_HW_TOR_Ele_Cryo.Part_HW_TOR_Ele_Cryo 18 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Elemental/Part_HW_TOR_Ele_Fire.Part_HW_TOR_Ele_Fire 19 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Elemental/Part_HW_TOR_Ele_Shock.Part_HW_TOR_Ele_Shock 20 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Elemental/Part_HW_TOR_Ele_Radiation.Part_HW_TOR_Ele_Radiation 21 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Grips/Part_HW_TOR_Grip_01.Part_HW_TOR_Grip_01 22 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Grips/Part_HW_TOR_Grip_02.Part_HW_TOR_Grip_02 23 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Grips/Part_HW_TOR_Grip_03.Part_HW_TOR_Grip_03 24 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Magazine/Part_HW_TOR_Mag_01.Part_HW_TOR_Mag_01 25 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Magazine/Part_HW_TOR_Mag_02.Part_HW_TOR_Mag_02 26 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Magazine/Part_HW_TOR_Mag_03.Part_HW_TOR_Mag_03 27 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Material/Part_HW_TOR_Material_01_Common.Part_HW_TOR_Material_01_Common 28 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Scopes/Part_HW_TOR_Scope_01.Part_HW_TOR_Scope_01 29 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Scopes/Part_HW_TOR_Scope_02.Part_HW_TOR_Scope_02 30 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Scopes/Part_HW_TOR_Scope_03.Part_HW_TOR_Scope_03 31 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Tails/Tail_01/Part_HW_TOR_Tail_01.Part_HW_TOR_Tail_01 32 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Tails/Tail_02/Part_HW_TOR_Tail_02.Part_HW_TOR_Tail_02 33 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Tails/Tail_03/Part_HW_TOR_Tail_03.Part_HW_TOR_Tail_03 34 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Tails/Tail_01/Part_HW_TOR_Tail_01_A.Part_HW_TOR_Tail_01_A 35 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Tails/Tail_01/Part_HW_TOR_Tail_01_B.Part_HW_TOR_Tail_01_B 36 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Tails/Tail_02/Part_HW_TOR_Tail_02_A.Part_HW_TOR_Tail_02_A 37 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Tails/Tail_02/Part_HW_TOR_Tail_02_B.Part_HW_TOR_Tail_02_B 38 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Tails/Tail_03/Part_HW_TOR_Tail_03_A.Part_HW_TOR_Tail_03_A 39 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Tails/Tail_03/Part_HW_TOR_Tail_03_B.Part_HW_TOR_Tail_03_B 40 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Material/Part_HW_TOR_Material_02_Uncommon.Part_HW_TOR_Material_02_Uncommon 41 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Material/Part_HW_TOR_Material_03_Rare.Part_HW_TOR_Material_03_Rare 42 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/Parts/Material/Part_HW_TOR_Material_04_VeryRare.Part_HW_TOR_Material_04_VeryRare 43 | /Game/Gear/Weapons/_Shared/NPC_Weapons/Marcus/Part_HW_TOR_Material_Marcus.Part_HW_TOR_Material_Marcus 44 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/Swarm/Parts/Part_HW_TOR_Barrel_Swarm.Part_HW_TOR_Barrel_Swarm 45 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/Swarm/Parts/Part_HW_TOR_Material_Swarm.Part_HW_TOR_Material_Swarm 46 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/HW/TOR/Part_HW_TOR_Barrel_ETech.Part_HW_TOR_Barrel_ETech 47 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/HW/TOR/Part_HW_TOR_Barrel_ETech_A.Part_HW_TOR_Barrel_ETech_A 48 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/BurgerCannon/Parts/Part_HW_TOR_Barrel_BurgerCannon.Part_HW_TOR_Barrel_BurgerCannon 49 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/BurgerCannon/Parts/Part_HW_TOR_Material_BurgerCannon.Part_HW_TOR_Material_BurgerCannon 50 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/Tunguska/Parts/Part_HW_TOR_Barrel_Tunguska.Part_HW_TOR_Barrel_Tunguska 51 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/Tunguska/Parts/Part_HW_TOR_Material_Tunguska.Part_HW_TOR_Material_Tunguska 52 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/POOP/Parts/Part_HW_TOR_Barrel_POOP.Part_HW_TOR_Barrel_POOP 53 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/POOP/Parts/Part_HW_TOR_Material_POOP.Part_HW_TOR_Material_POOP 54 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/Rampager/Parts/Part_HW_TOR_Barrel_Rampager.Part_HW_TOR_Barrel_Rampager 55 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/Rampager/Parts/Part_HW_TOR_Material_Rampager.Part_HW_TOR_Material_Rampager 56 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_ForAI/Part_HW_TOR_Barrel_02_AI_UseONLY.Part_HW_TOR_Barrel_02_AI_UseONLY 57 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_ForAI/Part_HW_TOR_Barrel_03_AI_UseONLY.Part_HW_TOR_Barrel_03_AI_UseONLY 58 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_ForAI/Part_HW_TOR_Barrel_01_AI_UseONLY.Part_HW_TOR_Barrel_01_AI_UseONLY 59 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/Hive/Parts/Part_HW_TOR_Barrel_Hive.Part_HW_TOR_Barrel_Hive 60 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/Hive/Parts/Part_HW_TOR_Material_Hive.Part_HW_TOR_Material_Hive 61 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/RYNO/Parts/Part_HW_TOR_Barrel_RYNO.Part_HW_TOR_Barrel_RYNO 62 | /Game/Gear/Weapons/HeavyWeapons/Torgue/_Shared/_Design/_Unique/RYNO/Parts/Part_HW_TOR_Material_RYNO.Part_HW_TOR_Material_RYNO 63 | /Game/PatchDLC/Dandelion/Gear/Weapon/_Unique/Nukem/Parts/Part_HW_TOR_Material_Nukem.Part_HW_TOR_Material_Nukem 64 | /Game/PatchDLC/Dandelion/Gear/Weapon/_Unique/Nukem/Parts/Part_HW_TOR_Barrel_Nukem.Part_HW_TOR_Barrel_Nukem 65 | /Game/PatchDLC/Dandelion/Gear/Weapon/_Unique/Creamer/Parts/Part_HW_TOR_Barrel_Creamer.Part_HW_TOR_Barrel_Creamer 66 | /Game/PatchDLC/Dandelion/Gear/Weapon/_Unique/Creamer/Parts/Part_HW_TOR_Material_Creamer.Part_HW_TOR_Material_Creamer 67 | /Game/PatchDLC/Mayhem2/Gear/Weapon/_Shared/_Unique/Plague/Parts/Part_HW_TOR_Barrel_ETech_Plague.Part_HW_TOR_Barrel_ETech_Plague 68 | /Game/PatchDLC/Mayhem2/Gear/Weapon/_Shared/_Unique/Plague/Parts/Part_HW_TOR_Material_Plague.Part_HW_TOR_Material_Plague 69 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Satisfaction/Parts/Part_HW_TOR_Barrel_Satisfaction.Part_HW_TOR_Barrel_Satisfaction 70 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Satisfaction/Parts/Part_HW_TOR_Material_Satisfaction.Part_HW_TOR_Material_Satisfaction 71 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/IceAge/Parts/Part_HW_TOR_Material_IceAge.Part_HW_TOR_Material_IceAge 72 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/IceAge/Parts/Part_HW_TOR_Barrel_IceAge.Part_HW_TOR_Barrel_IceAge -------------------------------------------------------------------------------- /LookupTables/BPInvPart_HW_VLA_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Barrel/Barrel_01/Part_HW_VLA_Barrel_01.Part_HW_VLA_Barrel_01 2 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Barrel/Barrel_01/Part_HW_VLA_Barrel_01_A.Part_HW_VLA_Barrel_01_A 3 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Barrel/Barrel_01/Part_HW_VLA_Barrel_01_B.Part_HW_VLA_Barrel_01_B 4 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Barrel/Barrel_01/Part_HW_VLA_Barrel_01_C.Part_HW_VLA_Barrel_01_C 5 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Barrel/Barrel_02/Part_HW_VLA_Barrel_02.Part_HW_VLA_Barrel_02 6 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Barrel/Barrel_02/Part_HW_VLA_Barrel_02_A.Part_HW_VLA_Barrel_02_A 7 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Barrel/Barrel_02/Part_HW_VLA_Barrel_02_B.Part_HW_VLA_Barrel_02_B 8 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Barrel/Barrel_02/Part_HW_VLA_Barrel_02_C.Part_HW_VLA_Barrel_02_C 9 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Barrel/Barrel_03/Part_HW_VLA_Barrel_03.Part_HW_VLA_Barrel_03 10 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Barrel/Barrel_03/Part_HW_VLA_Barrel_03_A.Part_HW_VLA_Barrel_03_A 11 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Barrel/Barrel_03/Part_HW_VLA_Barrel_03_B.Part_HW_VLA_Barrel_03_B 12 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Barrel/Barrel_03/Part_HW_VLA_Barrel_03_C.Part_HW_VLA_Barrel_03_C 13 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Body/Part_HW_VLA_Body.Part_HW_VLA_Body 14 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Body/Part_HW_VLA_Body_A.Part_HW_VLA_Body_A 15 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Body/Part_HW_VLA_Body_B.Part_HW_VLA_Body_B 16 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Body/Part_HW_VLA_Body_C.Part_HW_VLA_Body_C 17 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Elemental/Part_HW_VLA_Elemental_Corr.Part_HW_VLA_Elemental_Corr 18 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Elemental/Part_HW_VLA_Elemental_Cryo.Part_HW_VLA_Elemental_Cryo 19 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Elemental/Part_HW_VLA_Elemental_Fire.Part_HW_VLA_Elemental_Fire 20 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Elemental/Part_HW_VLA_Elemental_Shock.Part_HW_VLA_Elemental_Shock 21 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Elemental/Part_HW_VLA_Elemental_Radiation.Part_HW_VLA_Elemental_Radiation 22 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Grip/Part_HW_VLA_Grip_01.Part_HW_VLA_Grip_01 23 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Grip/Part_HW_VLA_Grip_02.Part_HW_VLA_Grip_02 24 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Grip/Part_HW_VLA_Grip_03.Part_HW_VLA_Grip_03 25 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Magazine/Part_HW_VLA_Mag_01.Part_HW_VLA_Mag_01 26 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Magazine/Part_HW_VLA_Mag_02.Part_HW_VLA_Mag_02 27 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Magazine/Part_HW_VLA_Mag_03.Part_HW_VLA_Mag_03 28 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Material/Part_HW_VLA_Material_01_Common.Part_HW_VLA_Material_01_Common 29 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Scope/Part_HW_VLA_Scope_01.Part_HW_VLA_Scope_01 30 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Scope/Part_HW_VLA_Scope_02.Part_HW_VLA_Scope_02 31 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Scope/Part_HW_VLA_Scope_03.Part_HW_VLA_Scope_03 32 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Shoulder/Part_HW_VLA_Shoulder_01.Part_HW_VLA_Shoulder_01 33 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Shoulder/Part_HW_VLA_Shoulder_02.Part_HW_VLA_Shoulder_02 34 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Shoulder/Part_HW_VLA_Shoulder_03.Part_HW_VLA_Shoulder_03 35 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Tails/Part_HW_VLA_Tail_01.Part_HW_VLA_Tail_01 36 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Tails/Part_HW_VLA_Tail_02.Part_HW_VLA_Tail_02 37 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Tails/Part_HW_VLA_Tail_03.Part_HW_VLA_Tail_03 38 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Tails/Part_HW_VLA_Tail_04.Part_HW_VLA_Tail_04 39 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Underbarrel/Part_HW_VLA_Underbarrel_01.Part_HW_VLA_Underbarrel_01 40 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Underbarrel/Part_HW_VLA_Underbarrel_02.Part_HW_VLA_Underbarrel_02 41 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Underbarrel/Part_HW_VLA_Underbarrel_03.Part_HW_VLA_Underbarrel_03 42 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Material/Part_HW_VLA_Material_02_Uncommon.Part_HW_VLA_Material_02_Uncommon 43 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Material/Part_HW_VLA_Material_03_Rare.Part_HW_VLA_Material_03_Rare 44 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/Parts/Material/Part_HW_VLA_Material_04_VeryRare.Part_HW_VLA_Material_04_VeryRare 45 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/_Unique/Mongol/Parts/Part_HW_VLA_Barrel_Mongol.Part_HW_VLA_Barrel_Mongol 46 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/_Unique/Mongol/Parts/Part_HW_VLA_Material_Mongol.Part_HW_VLA_Material_Mongol 47 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/HW/VLA/Part_HW_VLA_Barrel_ETech.Part_HW_VLA_Barrel_ETech 48 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/HW/VLA/Part_HW_VLA_Barrel_ETech_A.Part_HW_VLA_Barrel_ETech_A 49 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/_Unique/CloudBurst/Parts/Part_HW_VLA_Barrel_CloudBurst.Part_HW_VLA_Barrel_CloudBurst 50 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/_Unique/CloudBurst/Parts/Part_HW_VLA_Underbarrel_CloudBurst.Part_HW_VLA_Underbarrel_CloudBurst 51 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/_Unique/CloudBurst/Parts/Part_HW_VLA_Material_CloudBurst.Part_HW_VLA_Material_CloudBurst 52 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/_ForAI/Part_HW_VLA_Barrel_01_AI_UseONLY.Part_HW_VLA_Barrel_01_AI_UseONLY 53 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/_ForAI/Part_HW_VLA_Barrel_02_AI_UseONLY.Part_HW_VLA_Barrel_02_AI_UseONLY 54 | /Game/Gear/Weapons/HeavyWeapons/Vladof/_Shared/_Design/_ForAI/Part_HW_VLA_Barrel_03_AI_UseONLY.Part_HW_VLA_Barrel_03_AI_UseONLY 55 | /Game/PatchDLC/Dandelion/Gear/Weapon/_Unique/IonCannon/Parts/Part_HW_VLA_Barrel_IonCannon.Part_HW_VLA_Barrel_IonCannon 56 | /Game/PatchDLC/Dandelion/Gear/Weapon/_Unique/IonCannon/Parts/Part_HW_VLA_Material_IonCannon.Part_HW_VLA_Material_IonCannon 57 | /Game/PatchDLC/Raid1/BadassHeavyWeapons/VLA/Part_HW_VLA_Barrel_01_AI_UseONLY_Bullet.Part_HW_VLA_Barrel_01_AI_UseONLY_Bullet 58 | /Game/PatchDLC/Raid1/BadassHeavyWeapons/VLA/Part_HW_VLA_Barrel_02_AI_UseONLY_Bullet.Part_HW_VLA_Barrel_02_AI_UseONLY_Bullet 59 | /Game/PatchDLC/Raid1/BadassHeavyWeapons/VLA/Part_HW_VLA_Barrel_03_AI_UseONLY_Bullet.Part_HW_VLA_Barrel_03_AI_UseONLY_Bullet 60 | /Game/PatchDLC/Mayhem2/Gear/Weapon/_Shared/_Unique/Backburner/Parts/Part_HW_VLA_Barrel_ETech_BackBurner.Part_HW_VLA_Barrel_ETech_BackBurner 61 | /Game/PatchDLC/Mayhem2/Gear/Weapon/_Shared/_Unique/Backburner/Parts/Part_HW_VLA_Material_BackBurner.Part_HW_VLA_Material_BackBurner -------------------------------------------------------------------------------- /LookupTables/BPInvPart_PS_ATL_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Barrel/Barrel_01/Part_PS_ATL_Barrel_01.Part_PS_ATL_Barrel_01 2 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Barrel/Barrel_01/Part_PS_ATL_Barrel_01_A.Part_PS_ATL_Barrel_01_A 3 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Barrel/Barrel_01/Part_PS_ATL_Barrel_01_B.Part_PS_ATL_Barrel_01_B 4 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Barrel/Barrel_01/Part_PS_ATL_Barrel_01_C.Part_PS_ATL_Barrel_01_C 5 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Barrel/Barrel_02/Part_PS_ATL_Barrel_02.Part_PS_ATL_Barrel_02 6 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Barrel/Barrel_02/Part_PS_ATL_Barrel_02_A.Part_PS_ATL_Barrel_02_A 7 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Barrel/Barrel_02/Part_PS_ATL_Barrel_02_B.Part_PS_ATL_Barrel_02_B 8 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Barrel/Barrel_02/Part_PS_ATL_Barrel_02_C.Part_PS_ATL_Barrel_02_C 9 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Barrel/Barrel_03/Part_PS_ATL_Barrel_03.Part_PS_ATL_Barrel_03 10 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Barrel/Barrel_03/Part_PS_ATL_Barrel_03_A.Part_PS_ATL_Barrel_03_A 11 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Barrel/Barrel_03/Part_PS_ATL_Barrel_03_B.Part_PS_ATL_Barrel_03_B 12 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Barrel/Barrel_03/Part_PS_ATL_Barrel_03_C.Part_PS_ATL_Barrel_03_C 13 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Body/Part_PS_ATL_Body.Part_PS_ATL_Body 14 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Body/Part_PS_ATL_Body_A.Part_PS_ATL_Body_A 15 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Body/Part_PS_ATL_Body_B.Part_PS_ATL_Body_B 16 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Body/Part_PS_ATL_Body_C.Part_PS_ATL_Body_C 17 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Grip/Part_PS_ATL_Grip_01.Part_PS_ATL_Grip_01 18 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Grip/Part_PS_ATL_Grip_02.Part_PS_ATL_Grip_02 19 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Grip/Part_PS_ATL_Grip_03.Part_PS_ATL_Grip_03 20 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Launcher/Part_PS_ATL_Launcher_01.Part_PS_ATL_Launcher_01 21 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Launcher/Part_PS_ATL_Launcher_02.Part_PS_ATL_Launcher_02 22 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Launcher/Part_PS_ATL_Launcher_03.Part_PS_ATL_Launcher_03 23 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Magazine/Part_PS_ATL_Mag_01.Part_PS_ATL_Mag_01 24 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Magazine/Part_PS_ATL_Mag_02.Part_PS_ATL_Mag_02 25 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Magazine/Part_PS_ATL_Mag_03.Part_PS_ATL_Mag_03 26 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Material/Part_PS_ATL_Material_01_Common.Part_PS_ATL_Material_01_Common 27 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Radar/Part_PS_ATL_Radar_01.Part_PS_ATL_Radar_01 28 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Radar/Part_PS_ATL_Radar_02.Part_PS_ATL_Radar_02 29 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Radar/Part_PS_ATL_Radar_03.Part_PS_ATL_Radar_03 30 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Material/Part_PS_ATL_Material_02_UnCommon.Part_PS_ATL_Material_02_UnCommon 31 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Material/Part_PS_ATL_Material_03_Rare.Part_PS_ATL_Material_03_Rare 32 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/Parts/Material/Part_PS_ATL_Material_04_VeryRare.Part_PS_ATL_Material_04_VeryRare 33 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/_Unique/Warmonger/Parts/Part_PS_ATL_Barrel_Warmonger.Part_PS_ATL_Barrel_Warmonger 34 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/_Unique/Warmonger/Parts/Part_PS_ATL_Material_Warmonger.Part_PS_ATL_Material_Warmonger 35 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/_Unique/Drill/Parts/Part_PS_ATL_Barrel_Drill.Part_PS_ATL_Barrel_Drill 36 | /Game/Gear/Weapons/Pistols/Atlas/_Shared/_Design/_Unique/Drill/Parts/Part_PS_ATL_Material_Drill.Part_PS_ATL_Material_Drill 37 | /Game/PatchDLC/Mayhem2/Gear/Weapon/_Shared/_Unique/DoubleTap/Parts/Part_PS_ATL_Barrel_DoubleTap.Part_PS_ATL_Barrel_DoubleTap 38 | /Game/PatchDLC/Mayhem2/Gear/Weapon/_Shared/_Unique/DoubleTap/Parts/Part_PS_ATL_Material_DoubleTap.Part_PS_ATL_Material_DoubleTap 39 | /Game/PatchDLC/Mayhem2/Gear/Weapon/_Shared/_Unique/DoubleTap/Parts/Part_PS_ATL_Launcher_DoubleTap.Part_PS_ATL_Launcher_DoubleTap 40 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/SpiritOfMaya/Parts/Part_PS_ATL_Barrel_SpiritOfMaya.Part_PS_ATL_Barrel_SpiritOfMaya 41 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/SpiritOfMaya/Parts/Part_PS_ATL_Material_SpiritOfMaya.Part_PS_ATL_Material_SpiritOfMaya -------------------------------------------------------------------------------- /LookupTables/BPInvPart_PS_COV_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Accessory/Part_PS_COV_Accessory_01.Part_PS_COV_Accessory_01 2 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Accessory/Part_PS_COV_Accessory_02.Part_PS_COV_Accessory_02 3 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Accessory/Part_PS_COV_Accessory_03.Part_PS_COV_Accessory_03 4 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Accessory/Part_PS_COV_Accessory_04.Part_PS_COV_Accessory_04 5 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Accessory/Part_PS_COV_Accessory_05.Part_PS_COV_Accessory_05 6 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_01/Part_PS_COV_Barrel_01.Part_PS_COV_Barrel_01 7 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_01/Part_PS_COV_Barrel_01_A.Part_PS_COV_Barrel_01_A 8 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_01/Part_PS_COV_Barrel_01_B.Part_PS_COV_Barrel_01_B 9 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_01/Part_PS_COV_Barrel_01_C.Part_PS_COV_Barrel_01_C 10 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_PS_COV_Barrel_02.Part_PS_COV_Barrel_02 11 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_PS_COV_Barrel_02_A.Part_PS_COV_Barrel_02_A 12 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_PS_COV_Barrel_02_B.Part_PS_COV_Barrel_02_B 13 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_02/Part_PS_COV_Barrel_02_C.Part_PS_COV_Barrel_02_C 14 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_03/Part_PS_COV_Barrel_03.Part_PS_COV_Barrel_03 15 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_03/Part_PS_COV_Barrel_03_A.Part_PS_COV_Barrel_03_A 16 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_03/Part_PS_COV_Barrel_03_B.Part_PS_COV_Barrel_03_B 17 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Barrel/Barrel_03/Part_PS_COV_Barrel_03_C.Part_PS_COV_Barrel_03_C 18 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_PS_COV_Body.Part_PS_COV_Body 19 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_PS_COV_Body_A.Part_PS_COV_Body_A 20 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_PS_COV_Body_B.Part_PS_COV_Body_B 21 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_PS_COV_Body_C.Part_PS_COV_Body_C 22 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Grip/Part_PS_COV_Grip_01.Part_PS_COV_Grip_01 23 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Grip/Part_PS_COV_Grip_02.Part_PS_COV_Grip_02 24 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_PS_COV_Material_01_Common.Part_PS_COV_Material_01_Common 25 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Scope/Part_PS_COV_Scope_01.Part_PS_COV_Scope_01 26 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Scope/Part_PS_COV_Scope_02.Part_PS_COV_Scope_02 27 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Scope/Part_PS_COV_Scope_03.Part_PS_COV_Scope_03 28 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Scope/Part_PS_COV_Scope_04.Part_PS_COV_Scope_04 29 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Starter/Part_PS_COV_Starter_01.Part_PS_COV_Starter_01 30 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Starter/Part_PS_COV_Starter_02.Part_PS_COV_Starter_02 31 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Starter/Part_PS_COV_Starter_03.Part_PS_COV_Starter_03 32 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Stock/Part_PS_COV_Stock_01.Part_PS_COV_Stock_01 33 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Stock/Part_PS_COV_Stock_02.Part_PS_COV_Stock_02 34 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_PS_COV_Ele_Corr.Part_PS_COV_Ele_Corr 35 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_PS_COV_Ele_Cryo.Part_PS_COV_Ele_Cryo 36 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_PS_COV_Ele_Fire.Part_PS_COV_Ele_Fire 37 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_PS_COV_Ele_Radiation.Part_PS_COV_Ele_Radiation 38 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Elemental/Part_PS_COV_Ele_Shock.Part_PS_COV_Ele_Shock 39 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Grip/Part_PS_COV_Grip_03.Part_PS_COV_Grip_03 40 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_PS_COV_Material_02_Uncommon.Part_PS_COV_Material_02_Uncommon 41 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_PS_COV_Material_03_Rare.Part_PS_COV_Material_03_Rare 42 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Material/Part_PS_COV_Material_04_VeryRare.Part_PS_COV_Material_04_VeryRare 43 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/_Unique/Legion/Parts/Part_PS_COV_Barrel_Legion.Part_PS_COV_Barrel_Legion 44 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/_Unique/Legion/Parts/Part_PS_COV_Material_Legion.Part_PS_COV_Material_Legion 45 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Pistol/COV/Part_PS_COV_Barrel_ETech.Part_PS_COV_Barrel_ETech 46 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Pistol/COV/Part_PS_COV_Barrel_ETech_A.Part_PS_COV_Barrel_ETech_A 47 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/_Unique/Mouthpiece/Parts/Part_PS_COV_Material_Mouthpiece.Part_PS_COV_Material_Mouthpiece 48 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/_Unique/Mouthpiece/Parts/Part_PS_COV_Barrel_Mouthpiece.Part_PS_COV_Barrel_Mouthpiece 49 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/Parts/Body/Part_PS_COV_Body_ForgeAndWater.Part_PS_COV_Body_ForgeAndWater 50 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/_Unique/Skeksis/Parts/Part_PS_COV_Barrel_Skeksis.Part_PS_COV_Barrel_Skeksis 51 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/_Unique/Skeksis/Parts/Part_PS_COV_Material_Skeksis.Part_PS_COV_Material_Skeksis 52 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/_Unique/Contagion/Parts/Part_PS_COV_Barrel_Contagion.Part_PS_COV_Barrel_Contagion 53 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/_Unique/Contagion/Parts/Part_PS_COV_Material_Contagion.Part_PS_COV_Material_Contagion 54 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/_Unique/PsychoStabber/Parts/Part_PS_COV_Barrel_PsychoStabber.Part_PS_COV_Barrel_PsychoStabber 55 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/_Unique/PsychoStabber/Parts/Part_PS_COV_Material_PsychoStabber.Part_PS_COV_Material_PsychoStabber 56 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/_Unique/Chad/Parts/Part_PS_COV_Barrel_Chad.Part_PS_COV_Barrel_Chad 57 | /Game/Gear/Weapons/Pistols/ChildrenOfTheVault/_Shared/_Design/_Unique/Chad/Parts/Part_PS_COV_Material_Chad.Part_PS_COV_Material_Chad 58 | /Game/PatchDLC/Dandelion/Gear/Weapon/Pistol/CotV/_Shared/_Design/Part/Barrel/Part_PS_Dandelion_COV_Barrel_MoneyGun.Part_PS_Dandelion_COV_Barrel_MoneyGun 59 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Hydrafrost/Parts/Part_PS_COV_Barrel_Hydrafrost.Part_PS_COV_Barrel_Hydrafrost 60 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Hydrafrost/Parts/Part_PS_COV_Material_Hydrafrost.Part_PS_COV_Material_Hydrafrost 61 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Gargoyle/Parts/Part_PS_COV_Barrel_Gargoyle.Part_PS_COV_Barrel_Gargoyle 62 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Gargoyle/Parts/Part_PS_COV_Material_Gargoyle.Part_PS_COV_Material_Gargoyle 63 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/Tizzy/Parts/Part_PS_COV_Barrel_Tizzy.Part_PS_COV_Barrel_Tizzy 64 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/Tizzy/Parts/Part_PS_COV_Material_Tizzy.Part_PS_COV_Material_Tizzy 65 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/Tizzy/Parts/Part_PS_COV_Stock_02_Tizzy.Part_PS_COV_Stock_02_Tizzy -------------------------------------------------------------------------------- /LookupTables/BPInvPart_PS_DAL_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Barrel/Barrel_01/Part_Dal_PS_Barrel_01.Part_Dal_PS_Barrel_01 2 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Barrel/Barrel_01/Part_Dal_PS_Barrel_01_A.Part_Dal_PS_Barrel_01_A 3 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Body/Part_Dal_PS_Body.Part_Dal_PS_Body 4 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/FiringMode/Part_Dal_PS_FiringMode_Auto_Single.Part_Dal_PS_FiringMode_Auto_Single 5 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Grip/Part_Dal_PS_Grip_01.Part_Dal_PS_Grip_01 6 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Magazine/Part_Dal_PS_Mag_01.Part_Dal_PS_Mag_01 7 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Material/Part_Dal_PS_Mat_01_Common.Part_Dal_PS_Mat_01_Common 8 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Scope/Part_Dal_PS_Scope_01.Part_Dal_PS_Scope_01 9 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Grip/Stock/Part_Dal_PS_Stock_01.Part_Dal_PS_Stock_01 10 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Barrel/Barrel_01/Part_Dal_PS_Barrel_01_B.Part_Dal_PS_Barrel_01_B 11 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Barrel/Barrel_01/Part_Dal_PS_Barrel_01_C.Part_Dal_PS_Barrel_01_C 12 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Barrel/Barrel_02/Part_Dal_PS_Barrel_02.Part_Dal_PS_Barrel_02 13 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Barrel/Barrel_02/Part_Dal_PS_Barrel_02_A.Part_Dal_PS_Barrel_02_A 14 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Barrel/Barrel_02/Part_Dal_PS_Barrel_02_B.Part_Dal_PS_Barrel_02_B 15 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Barrel/Barrel_02/Part_Dal_PS_Barrel_02_C.Part_Dal_PS_Barrel_02_C 16 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Barrel/Barrel_03/Part_Dal_PS_Barrel_03.Part_Dal_PS_Barrel_03 17 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Barrel/Barrel_03/Part_Dal_PS_Barrel_03_A.Part_Dal_PS_Barrel_03_A 18 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Barrel/Barrel_03/Part_Dal_PS_Barrel_03_B.Part_Dal_PS_Barrel_03_B 19 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Barrel/Barrel_03/Part_Dal_PS_Barrel_03_C.Part_Dal_PS_Barrel_03_C 20 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Elemental/Part_Dal_PS_Ele_Corr.Part_Dal_PS_Ele_Corr 21 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Elemental/Part_Dal_PS_Ele_Cryo.Part_Dal_PS_Ele_Cryo 22 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Elemental/Part_Dal_PS_Ele_Fire.Part_Dal_PS_Ele_Fire 23 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Elemental/Part_Dal_PS_Ele_Shock.Part_Dal_PS_Ele_Shock 24 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Elemental/Part_Dal_PS_Ele_Radiation.Part_Dal_PS_Ele_Radiation 25 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/FiringMode/Part_Dal_PS_FiringMode_Auto_Burst.Part_Dal_PS_FiringMode_Auto_Burst 26 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/FiringMode/Part_Dal_PS_FiringMode_Burst_Single.Part_Dal_PS_FiringMode_Burst_Single 27 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Grip/Part_Dal_PS_Grip_02.Part_Dal_PS_Grip_02 28 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Grip/Part_Dal_PS_Grip_03.Part_Dal_PS_Grip_03 29 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Magazine/Part_Dal_PS_Mag_02.Part_Dal_PS_Mag_02 30 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Magazine/Part_Dal_PS_Mag_03.Part_Dal_PS_Mag_03 31 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Scope/Part_Dal_PS_Scope_02.Part_Dal_PS_Scope_02 32 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Scope/Part_Dal_PS_Scope_03.Part_Dal_PS_Scope_03 33 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Accessory_01/Part_Dal_PS_Acc_03.Part_Dal_PS_Acc_03 34 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Accessory_01/Part_Dal_PS_Acc_04.Part_Dal_PS_Acc_04 35 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Accessory_01/Part_Dal_PS_Acc_05.Part_Dal_PS_Acc_05 36 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Accessory_02/Part_Dal_PS_Acc_01.Part_Dal_PS_Acc_01 37 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Accessory_02/Part_Dal_PS_Acc_02.Part_Dal_PS_Acc_02 38 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Grip/Stock/Part_Dal_PS_Stock_02.Part_Dal_PS_Stock_02 39 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Material/Part_Dal_PS_Mat_02_UnCommon.Part_Dal_PS_Mat_02_UnCommon 40 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Material/Part_Dal_PS_Mat_03_Rare.Part_Dal_PS_Mat_03_Rare 41 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/Parts/Material/Part_Dal_PS_Mat_04_VeryRare.Part_Dal_PS_Mat_04_VeryRare 42 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Pistol/Dahl/Part_Dal_PS_Barrel_ETech.Part_Dal_PS_Barrel_ETech 43 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/AAA/Parts/Part_Dal_PS_AAA.Part_Dal_PS_AAA 44 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/AAA/Parts/Part_Dal_PS_Mag_AAA.Part_Dal_PS_Mag_AAA 45 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/AAA/Parts/Part_Dal_PS_Mat_AAA.Part_Dal_PS_Mat_AAA 46 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Pistol/Dahl/Part_Dal_PS_Barrel_ETech_A.Part_Dal_PS_Barrel_ETech_A 47 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/Hornet/Parts/Part_Dal_PS_Barrel_Hornet.Part_Dal_PS_Barrel_Hornet 48 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/Hornet/Parts/Part_Dal_PS_Mat_Hornet.Part_Dal_PS_Mat_Hornet 49 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/Nemesis/Parts/Part_Dal_PS_Mat_Nemesis.Part_Dal_PS_Mat_Nemesis 50 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/Nemesis/Parts/Part_Dal_PS_Barrel_Nemesis.Part_Dal_PS_Barrel_Nemesis 51 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/Rakkman/Parts/Part_Dal_PS_Barrel_Rakkman.Part_Dal_PS_Barrel_Rakkman 52 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/Rakkman/Parts/Part_Dal_PS_Mat_Rakkman.Part_Dal_PS_Mat_Rakkman 53 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/Omniloader/Parts/Part_Dal_PS_Barrel_Omniloader.Part_Dal_PS_Barrel_Omniloader 54 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/Omniloader/Parts/Part_Dal_PS_Mat_Omniloader.Part_Dal_PS_Mat_Omniloader 55 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/Omniloader/Parts/Part_Dal_PS_Barrel_Omniloader.Part_Dal_PS_Barrel_Omniloader 56 | /Game/Gear/Weapons/Pistols/Dahl/_Shared/_Design/_Unique/Omniloader/Parts/Part_Dal_PS_Mat_Omniloader.Part_Dal_PS_Mat_Omniloader 57 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Kaleidoscope/Parts/Part_Dal_PS_Barrel_Kaleidoscope.Part_Dal_PS_Barrel_Kaleidoscope 58 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Kaleidoscope/Parts/Part_Dal_PS_Mat_Kaleidoscope.Part_Dal_PS_Mat_Kaleidoscope 59 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/PrivateInvestigator/Parts/Part_Dal_PS_Mat_PrivateInvestigator.Part_Dal_PS_Mat_PrivateInvestigator 60 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/PrivateInvestigator/Parts/Part_Dal_PS_Barrel_PrivateInvestigator.Part_Dal_PS_Barrel_PrivateInvestigator -------------------------------------------------------------------------------- /LookupTables/BPInvPart_PS_TOR_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/Part_PS_TOR_Barrel_01.Part_PS_TOR_Barrel_01 2 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/Part_PS_TOR_Barrel_01_B.Part_PS_TOR_Barrel_01_B 3 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Scope/Part_PS_TOR_Scope_01.Part_PS_TOR_Scope_01 4 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Scope/Part_PS_TOR_Scope_02.Part_PS_TOR_Scope_02 5 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Scope/Part_PS_TOR_Scope_03.Part_PS_TOR_Scope_03 6 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/FS/Part_PS_TOR_Barrel_01_B_Sight.Part_PS_TOR_Barrel_01_B_Sight 7 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/Part_PS_TOR_Barrel_01_A.Part_PS_TOR_Barrel_01_A 8 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/Part_PS_TOR_Barrel_01_C.Part_PS_TOR_Barrel_01_C 9 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_02/Part_PS_TOR_Barrel_02.Part_PS_TOR_Barrel_02 10 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_02/Part_PS_TOR_Barrel_02_A.Part_PS_TOR_Barrel_02_A 11 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_02/Part_PS_TOR_Barrel_02_B.Part_PS_TOR_Barrel_02_B 12 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_02/Part_PS_TOR_Barrel_02_C.Part_PS_TOR_Barrel_02_C 13 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_03/Part_PS_TOR_Barrel_03.Part_PS_TOR_Barrel_03 14 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_03/Part_PS_TOR_Barrel_03_A.Part_PS_TOR_Barrel_03_A 15 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_03/Part_PS_TOR_Barrel_03_B.Part_PS_TOR_Barrel_03_B 16 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Barrel/Barrel_03/Part_PS_TOR_Barrel_03_C.Part_PS_TOR_Barrel_03_C 17 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Body/Part_PS_TOR_Body.Part_PS_TOR_Body 18 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Body/Part_PS_TOR_Body_A.Part_PS_TOR_Body_A 19 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Body/Part_PS_TOR_Body_B.Part_PS_TOR_Body_B 20 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Body/Part_PS_TOR_Body_C.Part_PS_TOR_Body_C 21 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Elemental/Part_PS_TOR_Ele_Corrosive.Part_PS_TOR_Ele_Corrosive 22 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Elemental/Part_PS_TOR_Ele_Cryo.Part_PS_TOR_Ele_Cryo 23 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Elemental/Part_PS_TOR_Ele_Fire.Part_PS_TOR_Ele_Fire 24 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Elemental/Part_PS_TOR_Ele_Radiation.Part_PS_TOR_Ele_Radiation 25 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Elemental/Part_PS_TOR_Ele_Shock.Part_PS_TOR_Ele_Shock 26 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Grip/Part_PS_TOR_Grip_01.Part_PS_TOR_Grip_01 27 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Grip/Part_PS_TOR_Grip_02.Part_PS_TOR_Grip_02 28 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Grip/Part_PS_TOR_Grip_03.Part_PS_TOR_Grip_03 29 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Hammer/Part_PS_TOR_Hammer_01.Part_PS_TOR_Hammer_01 30 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Hammer/Part_PS_TOR_Hammer_02.Part_PS_TOR_Hammer_02 31 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Hammer/Part_PS_TOR_Hammer_03.Part_PS_TOR_Hammer_03 32 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Mag/Part_PS_TOR_Mag_01.Part_PS_TOR_Mag_01 33 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Mag/Part_PS_TOR_Mag_02.Part_PS_TOR_Mag_02 34 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Mag/Part_PS_TOR_Mag_03.Part_PS_TOR_Mag_03 35 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Material/Part_PS_TOR_Material_01_Common.Part_PS_TOR_Material_01_Common 36 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Scope/Part_PS_TOR_IronSight.Part_PS_TOR_IronSight 37 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Stock/Part_PS_TOR_Stock_01.Part_PS_TOR_Stock_01 38 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Stock/Part_PS_TOR_Stock_02.Part_PS_TOR_Stock_02 39 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Material/Part_PS_TOR_Material_02_Uncommon.Part_PS_TOR_Material_02_Uncommon 40 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Material/Part_PS_TOR_Material_03_Rare.Part_PS_TOR_Material_03_Rare 41 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Material/Part_PS_TOR_Material_04_VeryRare.Part_PS_TOR_Material_04_VeryRare 42 | /Game/Gear/Weapons/_Shared/NPC_Weapons/TinyTina/Part_PS_TOR_TinyTina_Material.Part_PS_TOR_TinyTina_Material 43 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Body/Part_PS_TOR_Body_D.Part_PS_TOR_Body_D 44 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/Foursum/Parts/Part_PS_TOR_Barrel_4SUM.Part_PS_TOR_Barrel_4SUM 45 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/Foursum/Parts/Part_PS_TOR_Barrel_Sight_4SUM.Part_PS_TOR_Barrel_Sight_4SUM 46 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/Foursum/Parts/Part_PS_TOR_Material_4SUM.Part_PS_TOR_Material_4SUM 47 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/Devestator/Parts/Part_PS_TOR_Barrel_Devestator.Part_PS_TOR_Barrel_Devestator 48 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/Devestator/Parts/Part_PS_TOR_Material_Devestator.Part_PS_TOR_Material_Devestator 49 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/Troy/Parts/Part_PS_TOR_Barrel_Troy.Part_PS_TOR_Barrel_Troy 50 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/Troy/Parts/Part_PS_TOR_Material_Troy.Part_PS_TOR_Material_Troy 51 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Pistol/TOR/Part_PS_TOR_Barrel_ETech.Part_PS_TOR_Barrel_ETech 52 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Pistol/TOR/Part_PS_TOR_Barrel_ETech_A.Part_PS_TOR_Barrel_ETech_A 53 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/Echo/Parts/Part_PS_TOR_Barrel_Echo.Part_PS_TOR_Barrel_Echo 54 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/Echo/Parts/Part_PS_TOR_Barrel_Mod_Breeder.Part_PS_TOR_Barrel_Mod_Breeder 55 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/Echo/Parts/Part_PS_TOR_Material_Echo.Part_PS_TOR_Material_Echo 56 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/Parts/Body/Part_PS_TOR_Body_SpeedLoader.Part_PS_TOR_Body_SpeedLoader 57 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/Nurf/Parts/Part_PS_TOR_Barrel_Nurf.Part_PS_TOR_Barrel_Nurf 58 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/Nurf/Parts/Part_PS_TOR_Material_Nurf.Part_PS_TOR_Material_Nurf 59 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/HeckelAndHyde/Heckle/Parts/Part_PS_TOR_Material_Heckle.Part_PS_TOR_Material_Heckle 60 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/HeckelAndHyde/Hyde/Parts/Part_PS_TOR_Material_Hyde.Part_PS_TOR_Material_Hyde 61 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/HeckelAndHyde/Heckle/Parts/Part_PS_TOR_Barrel_Heckle.Part_PS_TOR_Barrel_Heckle 62 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/HeckelAndHyde/Hyde/Parts/Part_PS_TOR_Barrel_Hyde.Part_PS_TOR_Barrel_Hyde 63 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/RoisensThorns/Parts/Part_PS_TOR_Barrel_RoisensThorns.Part_PS_TOR_Barrel_RoisensThorns 64 | /Game/Gear/Weapons/Pistols/Torgue/_Shared/_Design/_Unique/RoisensThorns/Parts/Part_PS_TOR_Material_RoisensThorns.Part_PS_TOR_Material_RoisensThorns 65 | /Game/PatchDLC/Raid1/Gear/Weapons/HandCannon/Parts/Part_PS_TOR_Material_HandCannon.Part_PS_TOR_Material_HandCannon 66 | /Game/PatchDLC/Raid1/Gear/Weapons/HandCannon/Parts/Part_PS_TOR_Barrel_HandCannon.Part_PS_TOR_Barrel_HandCannon 67 | /Game/PatchDLC/Dandelion/Gear/Weapon/_Unique/Scoville/Parts/Part_PS_TOR_Barrel_Scoville.Part_PS_TOR_Barrel_Scoville 68 | /Game/PatchDLC/Dandelion/Gear/Weapon/_Unique/Scoville/Parts/Part_PS_TOR_Material_Scoville.Part_PS_TOR_Material_Scoville 69 | /Game/PatchDLC/Dandelion/Gear/Weapon/_Unique/Craps/Parts/Part_PS_TOR_Barrel_Craps.Part_PS_TOR_Barrel_Craps 70 | /Game/PatchDLC/Dandelion/Gear/Weapon/_Unique/Craps/Parts/Part_PS_TOR_Material_Craps.Part_PS_TOR_Material_Craps 71 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/UnkemptHarold/Parts/Part_PS_TOR_Barrel_UnkemptHarold.Part_PS_TOR_Barrel_UnkemptHarold 72 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/UnkemptHarold/Parts/Part_PS_TOR_Material_UnkemptHarold.Part_PS_TOR_Material_UnkemptHarold 73 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/Voice/Parts/Part_PS_TOR_Barrel_Voice.Part_PS_TOR_Barrel_Voice 74 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/Voice/Parts/Part_PS_TOR_Material_Voice.Part_PS_TOR_Material_Voice 75 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/Voice/Parts/Part_PS_TOR_Barrel_Voice_Epic.Part_PS_TOR_Barrel_Voice_Epic -------------------------------------------------------------------------------- /LookupTables/BPInvPart_PS_VLA_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Barrels/Barrel_01/Part_PS_VLA_Barrel_01.Part_PS_VLA_Barrel_01 2 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Barrels/Barrel_01/Part_PS_VLA_Barrel_01_A.Part_PS_VLA_Barrel_01_A 3 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Barrels/Barrel_01/Part_PS_VLA_Barrel_01_B.Part_PS_VLA_Barrel_01_B 4 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Barrels/Barrel_01/Part_PS_VLA_Barrel_01_C.Part_PS_VLA_Barrel_01_C 5 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Barrels/Barrel_02/Part_PS_VLA_Barrel_02.Part_PS_VLA_Barrel_02 6 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Barrels/Barrel_02/Part_PS_VLA_Barrel_02_A.Part_PS_VLA_Barrel_02_A 7 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Barrels/Barrel_02/Part_PS_VLA_Barrel_02_B.Part_PS_VLA_Barrel_02_B 8 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Barrels/Barrel_02/Part_PS_VLA_Barrel_02_C.Part_PS_VLA_Barrel_02_C 9 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Barrels/Barrel_03/Part_PS_VLA_Barrel_03.Part_PS_VLA_Barrel_03 10 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Barrels/Barrel_03/Part_PS_VLA_Barrel_03_A.Part_PS_VLA_Barrel_03_A 11 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Barrels/Barrel_03/Part_PS_VLA_Barrel_03_B.Part_PS_VLA_Barrel_03_B 12 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Barrels/Barrel_03/Part_PS_VLA_Barrel_03_C.Part_PS_VLA_Barrel_03_C 13 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Body/Part_PS_VLA_Body.Part_PS_VLA_Body 14 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Body/Part_PS_VLA_Slide_01.Part_PS_VLA_Slide_01 15 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Magazine/MagType/Part_PS_VLA_MagType_01.Part_PS_VLA_MagType_01 16 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Magazine/MagType/Part_PS_VLA_MagType_02.Part_PS_VLA_MagType_02 17 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Body/Caps/Part_PS_VLA_SlideCap_01.Part_PS_VLA_SlideCap_01 18 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Body/Part_PS_VLA_Slide_03.Part_PS_VLA_Slide_03 19 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Body/Caps/Part_PS_VLA_SlideCap_03.Part_PS_VLA_SlideCap_03 20 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Body/Part_PS_VLA_Slide_02.Part_PS_VLA_Slide_02 21 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Elemental/Part_PS_VLA_Ele_Corr.Part_PS_VLA_Ele_Corr 22 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Elemental/Part_PS_VLA_Ele_Cryo.Part_PS_VLA_Ele_Cryo 23 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Elemental/Part_PS_VLA_Ele_Fire.Part_PS_VLA_Ele_Fire 24 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Elemental/Part_PS_VLA_Ele_Shock.Part_PS_VLA_Ele_Shock 25 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Elemental/Part_PS_VLA_Ele_Radiation.Part_PS_VLA_Ele_Radiation 26 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Grip/Part_PS_VLA_Grip_01.Part_PS_VLA_Grip_01 27 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Grip/Part_PS_VLA_Grip_02.Part_PS_VLA_Grip_02 28 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Grip/Part_PS_VLA_Grip_03.Part_PS_VLA_Grip_03 29 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Magazine/MagType/Part_PS_VLA_MagType_03.Part_PS_VLA_MagType_03 30 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Magazine/Part_PS_VLA_Mag_01_A.Part_PS_VLA_Mag_01_A 31 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Magazine/Part_PS_VLA_Mag_01_B.Part_PS_VLA_Mag_01_B 32 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Magazine/Part_PS_VLA_Mag_02_A.Part_PS_VLA_Mag_02_A 33 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Magazine/Part_PS_VLA_Mag_02_B.Part_PS_VLA_Mag_02_B 34 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Magazine/Part_PS_VLA_Mag_03_A.Part_PS_VLA_Mag_03_A 35 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Magazine/Part_PS_VLA_Mag_03_B.Part_PS_VLA_Mag_03_B 36 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Material/Part_PS_VLA_Material_01_Common.Part_PS_VLA_Material_01_Common 37 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Rail/Part_PS_VLA_Rail_01.Part_PS_VLA_Rail_01 38 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Rail/Part_PS_VLA_Rail_02.Part_PS_VLA_Rail_02 39 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Rail/Part_PS_VLA_Rail_03.Part_PS_VLA_Rail_03 40 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Rail/Part_PS_VLA_Rail_04.Part_PS_VLA_Rail_04 41 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Scopes/Part_PS_VLA_Scope_01.Part_PS_VLA_Scope_01 42 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Scopes/Part_PS_VLA_Scope_02.Part_PS_VLA_Scope_02 43 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Scopes/Part_PS_VLA_Scope_03.Part_PS_VLA_Scope_03 44 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Scopes/Part_PS_VLA_Scope_04.Part_PS_VLA_Scope_04 45 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Underbarrel/Part_PS_VLA_Underbarrel_01.Part_PS_VLA_Underbarrel_01 46 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Underbarrel/Part_PS_VLA_Underbarrel_02.Part_PS_VLA_Underbarrel_02 47 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Underbarrel/Part_PS_VLA_Underbarrel_03.Part_PS_VLA_Underbarrel_03 48 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Underbarrel_Mods/Part_PS_VLA_Underbarrel_02_A.Part_PS_VLA_Underbarrel_02_A 49 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Underbarrel_Mods/Part_PS_VLA_Underbarrel_02_B.Part_PS_VLA_Underbarrel_02_B 50 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Grip/Part_PS_VLA_GripMod_A.Part_PS_VLA_GripMod_A 51 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Underbarrel_Mods/Part_PS_VLA_Underbarrel_01_A.Part_PS_VLA_Underbarrel_01_A 52 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Material/Part_PS_VLA_Material_02_Uncommon.Part_PS_VLA_Material_02_Uncommon 53 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Material/Part_PS_VLA_Material_03_Rare.Part_PS_VLA_Material_03_Rare 54 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Material/Part_PS_VLA_Material_04_VeryRare.Part_PS_VLA_Material_04_VeryRare 55 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Pistol/Vladof/Part_PS_VLA_Barrel_ETech.Part_PS_VLA_Barrel_ETech 56 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/Parts/Material/Part_PS_VLA_Material_05_Legendary.Part_PS_VLA_Material_05_Legendary 57 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/_Unique/Magnificent/Parts/Part_PS_VLA_Barrel_Magnificent.Part_PS_VLA_Barrel_Magnificent 58 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/_Unique/Magnificent/Parts/Part_PS_VLA_Mag_Magnificent.Part_PS_VLA_Mag_Magnificent 59 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/_Unique/Magnificent/Parts/Part_PS_VLA_Material_Magnificent.Part_PS_VLA_Material_Magnificent 60 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/_Unique/BoneShredder/Parts/Part_PS_VLA_Barrel_BoneShredder.Part_PS_VLA_Barrel_BoneShredder 61 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/_Unique/BoneShredder/Parts/Part_PS_VLA_Material_BoneShredder.Part_PS_VLA_Material_BoneShredder 62 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Pistol/Vladof/Part_PS_VLA_Barrel_ETech_A.Part_PS_VLA_Barrel_ETech_A 63 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/_Unique/Infiniti/Parts/Part_PS_VLA_Barrel_Infiniti.Part_PS_VLA_Barrel_Infiniti 64 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/_Unique/Infiniti/Parts/Part_PS_VLA_Material_Infiniti.Part_PS_VLA_Material_Infiniti 65 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/_Unique/Infiniti/Parts/Part_PS_VLA_Mag_02_A_Infiniti.Part_PS_VLA_Mag_02_A_Infiniti 66 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/_Unique/TheLeech/Parts/Part_PS_VLA_Material_TheLeech.Part_PS_VLA_Material_TheLeech 67 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/_Unique/TheLeech/Parts/Part_PS_VLA_Underbarrel_TheLeech.Part_PS_VLA_Underbarrel_TheLeech 68 | /Game/Gear/Weapons/Pistols/Vladof/_Shared/_Design/_Unique/TheLeech/Parts/Part_PS_VLA_Material_TheLeech.Part_PS_VLA_Material_TheLeech 69 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Lasocannon/Parts/Part_PS_VLA_Barrel_Lasocannon.Part_PS_VLA_Barrel_Lasocannon 70 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Lasocannon/Parts/Part_PS_VLA_Material_Lasocannon.Part_PS_VLA_Material_Lasocannon 71 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Miscreant/Parts/Part_PS_VLA_Barrel_Miscreant.Part_PS_VLA_Barrel_Miscreant 72 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Miscreant/Parts/Part_PS_VLA_Material_Miscreant.Part_PS_VLA_Material_Miscreant 73 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/Firefly/Parts/Part_PS_VLA_Barrel_Firefly.Part_PS_VLA_Barrel_Firefly 74 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/Firefly/Parts/Part_PS_VLA_Mag_Firefly.Part_PS_VLA_Mag_Firefly 75 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/Firefly/Parts/Part_PS_VLA_Material_Firefly.Part_PS_VLA_Material_Firefly 76 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/Firefly/Parts/Part_PS_VLA_Rail_04_Firefly.Part_PS_VLA_Rail_04_Firefly -------------------------------------------------------------------------------- /LookupTables/BPInvPart_SG_TED_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SG_TED_Barrel_01.Part_SG_TED_Barrel_01 2 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SG_TED_Barrel_01_A.Part_SG_TED_Barrel_01_A 3 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SG_TED_Barrel_01_B.Part_SG_TED_Barrel_01_B 4 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SG_TED_Barrel_01_C.Part_SG_TED_Barrel_01_C 5 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SG_TED_Barrel_02.Part_SG_TED_Barrel_02 6 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SG_TED_Barrel_02_A.Part_SG_TED_Barrel_02_A 7 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SG_TED_Barrel_02_B.Part_SG_TED_Barrel_02_B 8 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SG_TED_Barrel_02_C.Part_SG_TED_Barrel_02_C 9 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SG_TED_Barrel_03.Part_SG_TED_Barrel_03 10 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SG_TED_Barrel_03_A.Part_SG_TED_Barrel_03_A 11 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SG_TED_Barrel_03_B.Part_SG_TED_Barrel_03_B 12 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SG_TED_Barrel_03_C.Part_SG_TED_Barrel_03_C 13 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Body/Part_SG_TED_Body.Part_SG_TED_Body 14 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Body/Part_SG_TED_Body_A.Part_SG_TED_Body_A 15 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Body/Part_SG_TED_Body_B.Part_SG_TED_Body_B 16 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Body/Part_SG_TED_Body_C.Part_SG_TED_Body_C 17 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Elemental/Part_SG_TED_Ele_Corr.Part_SG_TED_Ele_Corr 18 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Elemental/Part_SG_TED_Ele_Cryo.Part_SG_TED_Ele_Cryo 19 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Elemental/Part_SG_TED_Ele_Fire.Part_SG_TED_Ele_Fire 20 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Elemental/Part_SG_TED_Ele_Shock.Part_SG_TED_Ele_Shock 21 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Elemental/Part_SG_TED_Ele_Radiation.Part_SG_TED_Ele_Radiation 22 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/ForeGrip/Part_SG_TED_ForeGrip_01.Part_SG_TED_Foregrip_01 23 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/ForeGrip/Part_SG_TED_Foregrip_02.Part_SG_TED_Foregrip_02 24 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/ForeGrip/Part_SG_TED_Foregrip_03.Part_SG_TED_Foregrip_03 25 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/ForeGrip/Part_SG_TED_Foregrip_04.Part_SG_TED_Foregrip_04 26 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/ForeGrip/Part_SG_TED_Foregrip_05.Part_SG_TED_Foregrip_05 27 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Grip/Part_SG_TED_Grip_01.Part_SG_TED_Grip_01 28 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Grip/Part_SG_TED_Grip_02.Part_SG_TED_Grip_02 29 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Grip/Part_SG_TED_Grip_03.Part_SG_TED_Grip_03 30 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Grip/Part_SG_TED_Grip_04.Part_SG_TED_Grip_04 31 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Grip/Part_SG_TED_Grip_05.Part_SG_TED_Grip_05 32 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Material/Part_SG_TED_Material_01_Common.Part_SG_TED_Material_01_Common 33 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Scope/Part_SG_TED_Scope_01.Part_SG_TED_Scope_01 34 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Scope/Part_SG_TED_Scope_02.Part_SG_TED_Scope_02 35 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Scope/Part_SG_TED_Scope_03.Part_SG_TED_Scope_03 36 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Scope/Part_SG_TED_Scope_04.Part_SG_TED_Scope_04 37 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/TypeMod/Part_SG_TED_TypeMod_01.Part_SG_TED_TypeMod_01 38 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/TypeMod/Part_SG_TED_TypeMod_02.Part_SG_TED_TypeMod_02 39 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/TypeMod/Part_SG_TED_TypeMod_03.Part_SG_TED_TypeMod_03 40 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/TypeMod/Part_SG_TED_TypeMod_04.Part_SG_TED_TypeMod_04 41 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Material/Part_SG_TED_Material_02_Uncommon.Part_SG_TED_Material_02_Uncommon 42 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Material/Part_SG_TED_Material_03_Rare.Part_SG_TED_Material_03_Rare 43 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/Parts/Material/Part_SG_TED_Material_04_VeryRare.Part_SG_TED_Material_04_VeryRare 44 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Shotgun/Tediore/Part_SG_TED_Barrel_ETECH.Part_SG_TED_Barrel_ETECH 45 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Shotgun/Tediore/Part_SG_TED_Barrel_ETECH_A.Part_SG_TED_Barrel_ETECH_A 46 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Shotgun/Tediore/Part_SG_TED_Barrel_ETECH_B.Part_SG_TED_Barrel_ETECH_B 47 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Shotgun/Tediore/Part_SG_TED_Barrel_ETECH_C.Part_SG_TED_Barrel_ETECH_C 48 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/_Unique/Sludge/Parts/Part_SG_TED_Barrel_Sludge.Part_SG_TED_Barrel_Sludge 49 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/_Unique/Sludge/Parts/Part_SG_TED_Material_Sludge.Part_SG_TED_Material_Sludge 50 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/_Unique/Horizon/Parts/Part_SG_TED_Material_Horizon.Part_SG_TED_Material_Horizon 51 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/_Unique/Horizon/Parts/Part_SG_TED_Barrel_Horizon.Part_SG_TED_Barrel_Horizon 52 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/_Unique/Polybius/Parts/Part_SG_TED_Barrel_Polybius.Part_SG_TED_Barrel_Polybius 53 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/_Unique/Polybius/Parts/Part_SG_TED_Material_Polybius.Part_SG_TED_Material_Polybius 54 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/_Unique/FriendZone/Parts/Part_SG_TED_Barrel_FriendZone.Part_SG_TED_Barrel_FriendZone 55 | /Game/Gear/Weapons/Shotguns/Tediore/_Shared/_Design/_Unique/FriendZone/Parts/Part_SG_TED_Material_FriendZone.Part_SG_TED_Material_FriendZone 56 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Anarchy/Parts/Part_SG_TED_Barrel_Anarchy.Part_SG_TED_Barrel_Anarchy 57 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Anarchy/Parts/Part_SG_TED_Material_Anarchy.Part_SG_TED_Material_Anarchy 58 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/SacrificalLamb/Parts/Part_SG_TED_Barrel_SacrificialLamb.Part_SG_TED_Barrel_SacrificialLamb 59 | /Game/PatchDLC/EventVDay/Gear/Weapon/_Unique/TwitchPrime/Parts/Part_SG_TED_Mat_Twitch.Part_SG_TED_Mat_Twitch 60 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Omen/Parts/Part_SG_TED_Barrel_Omen.Part_SG_TED_Barrel_Omen 61 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Omen/Parts/Part_SG_TED_Material_Omen.Part_SG_TED_Material_Omen 62 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Brightside/Parts/Part_SG_TED_Material_Brightside.Part_SG_TED_Material_Brightside 63 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Brightside/Parts/Part_SG_TED_Barrel_Brightside.Part_SG_TED_Barrel_Brightside 64 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Brightside/Parts/Part_SG_TED_TypeMod_Brightside.Part_SG_TED_TypeMod_Brightside -------------------------------------------------------------------------------- /LookupTables/BPInvPart_SG_Torgue_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SG_Torgue_Barrel_01.Part_SG_Torgue_Barrel_01 2 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SG_Torgue_Barrel_01_A.Part_SG_Torgue_Barrel_01_A 3 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SG_Torgue_Barrel_01_B.Part_SG_Torgue_Barrel_01_B 4 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SG_Torgue_Barrel_01_C.Part_SG_Torgue_Barrel_01_C 5 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SG_Torgue_Barrel_02.Part_SG_Torgue_Barrel_02 6 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SG_Torgue_Barrel_02_A.Part_SG_Torgue_Barrel_02_A 7 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SG_Torgue_Barrel_02_B.Part_SG_Torgue_Barrel_02_B 8 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SG_Torgue_Barrel_02_C.Part_SG_Torgue_Barrel_02_C 9 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SG_Torgue_Barrel_03.Part_SG_Torgue_Barrel_03 10 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SG_Torgue_Barrel_03_A.Part_SG_Torgue_Barrel_03_A 11 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SG_Torgue_Barrel_03_B.Part_SG_Torgue_Barrel_03_B 12 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SG_Torgue_Barrel_03_C.Part_SG_Torgue_Barrel_03_C 13 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Body/Part_SG_Torgue_Body.Part_SG_Torgue_Body 14 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Body/Part_SG_Torgue_Body_A.Part_SG_Torgue_Body_A 15 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Body/Part_SG_Torgue_Body_B.Part_SG_Torgue_Body_B 16 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Elemental/Part_SG_Torgue_Ele_Corr.Part_SG_Torgue_Ele_Corr 17 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Elemental/Part_SG_Torgue_Ele_Cryo.Part_SG_Torgue_Ele_Cryo 18 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Elemental/Part_SG_Torgue_Ele_Fire.Part_SG_Torgue_Ele_Fire 19 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Elemental/Part_SG_Torgue_Ele_Shock.Part_SG_Torgue_Ele_Shock 20 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Elemental/Part_SG_Torgue_Ele_Radiation.Part_SG_Torgue_Ele_Radiation 21 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Foregrip/Part_SG_Torgue_Foregrip_01.Part_SG_Torgue_Foregrip_01 22 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Foregrip/Part_SG_Torgue_Foregrip_02.Part_SG_Torgue_Foregrip_02 23 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Foregrip/Part_SG_Torgue_Foregrip_03.Part_SG_Torgue_Foregrip_03 24 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Grip/Part_SG_Torgue_Grip_01.Part_SG_Torgue_Grip_01 25 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Grip/Part_SG_Torgue_Grip_02.Part_SG_Torgue_Grip_02 26 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Grip/Part_SG_Torgue_Grip_03.Part_SG_Torgue_Grip_03 27 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Mag/Part_SG_Torgue_Magazine_01.Part_SG_Torgue_Magazine_01 28 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Mag/Part_SG_Torgue_Magazine_02.Part_SG_Torgue_Magazine_02 29 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Mag/Part_SG_Torgue_Magazine_03.Part_SG_Torgue_Magazine_03 30 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Mag/Part_SG_Torgue_Magazine_04.Part_SG_Torgue_Magazine_04 31 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Material/Part_SG_Torgue_Material_01_Common.Part_SG_Torgue_Material_01_Common 32 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Scope/Part_SG_Torgue_Scope_01.Part_SG_Torgue_Scope_01 33 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Scope/Part_SG_Torgue_Scope_02.Part_SG_Torgue_Scope_02 34 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Scope/Part_SG_Torgue_Scope_03.Part_SG_Torgue_Scope_03 35 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Material/Part_SG_Torgue_Material_02_UnCommon.Part_SG_Torgue_Material_02_UnCommon 36 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Material/Part_SG_Torgue_Material_03_Rare.Part_SG_Torgue_Material_03_Rare 37 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Material/Part_SG_Torgue_Material_04_VeryRare.Part_SG_Torgue_Material_04_VeryRare 38 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/Parts/Material/Part_SG_Torgue_Material_05_Legendary.Part_SG_Torgue_Material_05_Legendary 39 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Shotgun/Torgue/Part_SG_Torgue_Barrel_ETech.Part_SG_Torgue_Barrel_ETech 40 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/Flakker/Parts/Part_SG_Torgue_Barrel_Flakker.Part_SG_Torgue_Barrel_Flakker 41 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/Flakker/Parts/Part_SG_Torgue_Magazine_Flak.Part_SG_Torgue_Magazine_Flak 42 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/Flakker/Parts/Part_SG_Torgue_Material_Flakker.Part_SG_Torgue_Material_Flakker 43 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/RedLiner/Parts/Part_SG_Torgue_Barrel_Redline.Part_SG_Torgue_Barrel_Redline 44 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/RedLiner/Parts/Part_SG_Torgue_Magazine_Redline.Part_SG_Torgue_Magazine_Redline 45 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/RedLiner/Parts/Part_SG_Torgue_Material_Redline.Part_SG_Torgue_Material_Redline 46 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/Flakker/Parts/Part_SG_Torgue_Magazine_Flakker.Part_SG_Torgue_Magazine_Flakker 47 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Shotgun/Torgue/Part_SG_TOR_Unique.Part_SG_TOR_Unique 48 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/TheBoringGun/Parts/Part_SG_TOR_Barrel_Boring.Part_SG_TOR_Barrel_Boring 49 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/TheBoringGun/Parts/Part_SG_TOR_Material_Boring.Part_SG_TOR_Material_Boring 50 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Shotgun/Torgue/Part_SG_Torgue_Barrel_ETech_A.Part_SG_Torgue_Barrel_ETech_A 51 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/Thumper/Parts/Part_SG_Torgue_Barrel_Thumper.Part_SG_Torgue_Barrel_Thumper 52 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/Thumper/Parts/Part_SG_Torgue_Material_Thumper.Part_SG_Torgue_Material_Thumper 53 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/Brew/Parts/Part_SG_Torgue_Material_Brewha.Part_SG_Torgue_Material_Brewha 54 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/Brew/Parts/Part_SG_Torgue_Barrel_Brewha.Part_SG_Torgue_Barrel_Brewha 55 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/Balrog/Parts/Part_SG_Torgue_Barrel_Balrog.Part_SG_Torgue_Barrel_Balrog 56 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/Balrog/Parts/Part_SG_Torgue_Material_Balrog.Part_SG_Torgue_Material_Balrog 57 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/TheLob/Parts/Part_SG_TOR_Material_TheLob.Part_SG_TOR_Material_TheLob 58 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/TheLob/Parts/Part_SG_Torgue_Barrel_ETech_TheLob.Part_SG_Torgue_Barrel_ETech_TheLob 59 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/Balrog/Parts/Part_SG_Torgue_Barrel_Balrog.Part_SG_Torgue_Barrel_Balrog 60 | /Game/Gear/Weapons/Shotguns/Torgue/_Shared/_Design/_Unique/Balrog/Parts/Part_SG_Torgue_Material_Balrog.Part_SG_Torgue_Material_Balrog 61 | /Game/PatchDLC/Raid1/Gear/Weapons/TiggsBoom/Parts/Part_SG_Torgue_Material_TiggsBoom.Part_SG_Torgue_Material_TiggsBoom 62 | /Game/PatchDLC/Raid1/Gear/Weapons/TiggsBoom/Parts/Part_SG_Torgue_TiggsBoom.Part_SG_Torgue_TiggsBoom 63 | /Hibiscus/Enemies/Lunatic/_Shared/_Design/Weapon/Parts/Part_SG_Torgue_Barrel_ETech_Lunatic_Lob.Part_SG_Torgue_Barrel_ETech_Lunatic_Lob 64 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Shocker/Parts/Part_SG_TOR_Material_Shocker.Part_SG_TOR_Material_Shocker 65 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Shocker/Parts/Part_SG_Torgue_Barrel_ETech_Shocker.Part_SG_Torgue_Barrel_ETech_Shocker 66 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Shoveler/Parts/Part_SG_Torgue_Material_Shoveler.Part_SG_Torgue_Material_Shoveler 67 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Shoveler/Parts/Part_SG_Torgue_Barrel_Shoveler.Part_SG_Torgue_Barrel_Shoveler 68 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/CriticalThug/Parts/Part_SG_Torgue_Body_CriticalThug.Part_SG_Torgue_Body_CriticalThug 69 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/CriticalThug/Parts/Part_SG_Torgue_CriticalThug.Part_SG_Torgue_CriticalThug 70 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/CriticalThug/Parts/Part_SG_Torgue_Material_CriticalThug.Part_SG_Torgue_Material_CriticalThug 71 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/CriticalThug/Parts/Part_SG_Torgue_Grip_01_CriticalThug.Part_SG_Torgue_Grip_01_CriticalThug -------------------------------------------------------------------------------- /LookupTables/BPInvPart_SM_TED_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SM_TED_Barrel_01.Part_SM_TED_Barrel_01 2 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SM_TED_Barrel_01_A.Part_SM_TED_Barrel_01_A 3 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SM_TED_Barrel_01_B.Part_SM_TED_Barrel_01_B 4 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SM_TED_Barrel_01_C.Part_SM_TED_Barrel_01_C 5 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SM_TED_Barrel_02.Part_SM_TED_Barrel_02 6 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SM_TED_Barrel_02_A.Part_SM_TED_Barrel_02_A 7 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SM_TED_Barrel_02_B.Part_SM_TED_Barrel_02_B 8 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SM_TED_Barrel_02_C.Part_SM_TED_Barrel_02_C 9 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SM_TED_Barrel_03.Part_SM_TED_Barrel_03 10 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SM_TED_Barrel_03_A.Part_SM_TED_Barrel_03_A 11 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SM_TED_Barrel_03_B.Part_SM_TED_Barrel_03_B 12 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SM_TED_Barrel_03_C.Part_SM_TED_Barrel_03_C 13 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Body/Part_SM_TED_Body.Part_SM_TED_Body 14 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Body/Part_SM_TED_Body_A.Part_SM_TED_Body_A 15 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Body/Part_SM_TED_Body_B.Part_SM_TED_Body_B 16 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Body/Part_SM_TED_Body_C.Part_SM_TED_Body_C 17 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Elemental/Part_SM_TED_Ele_Corr.Part_SM_TED_Ele_Corr 18 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Elemental/Part_SM_TED_Ele_Cryo.Part_SM_TED_Ele_Cryo 19 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Elemental/Part_SM_TED_Ele_Fire.Part_SM_TED_Ele_Fire 20 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Elemental/Part_SM_TED_Ele_Shock.Part_SM_TED_Ele_Shock 21 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Elemental/Part_SM_TED_Ele_Radiation.Part_SM_TED_Ele_Radiation 22 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Foregrip/Part_SM_TED_Foregrip_01.Part_SM_TED_Foregrip_01 23 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Foregrip/Part_SM_TED_Foregrip_02.Part_SM_TED_Foregrip_02 24 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Foregrip/Part_SM_TED_Foregrip_03.Part_SM_TED_Foregrip_03 25 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Foregrip/Part_SM_TED_Foregrip_04.Part_SM_TED_Foregrip_04 26 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Grip/Part_SM_TED_Grip_01.Part_SM_TED_Grip_01 27 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Grip/Part_SM_TED_Grip_02.Part_SM_TED_Grip_02 28 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Grip/Part_SM_TED_Grip_03.Part_SM_TED_Grip_03 29 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Grip/Part_SM_TED_Grip_04.Part_SM_TED_Grip_04 30 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Grip/Part_SM_TED_Grip_05.Part_SM_TED_Grip_05 31 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Material/Part_SM_TED_Material_01_Common.Part_SM_TED_Material_01_Common 32 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Scope/Part_SM_TED_Scope_01.Part_SM_TED_Scope_01 33 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Scope/Part_SM_TED_Scope_02.Part_SM_TED_Scope_02 34 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Scope/Part_SM_TED_Scope_03.Part_SM_TED_Scope_03 35 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Scope/Part_SM_TED_Scope_04.Part_SM_TED_Scope_04 36 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/TypeMod/Part_SM_TED_TypeMod_01.Part_SM_TED_TypeMod_01 37 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/TypeMod/Part_SM_TED_TypeMod_02.Part_SM_TED_TypeMod_02 38 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/TypeMod/Part_SM_TED_TypeMod_03.Part_SM_TED_TypeMod_03 39 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/TypeMod/Part_SM_TED_TypeMod_04.Part_SM_TED_TypeMod_04 40 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Material/Part_SM_TED_Material_02_UnCommon.Part_SM_TED_Material_02_UnCommon 41 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Material/Part_SM_TED_Material_03_Rare.Part_SM_TED_Material_03_Rare 42 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/Parts/Material/Part_SM_TED_Material_04_VeryRare.Part_SM_TED_Material_04_VeryRare 43 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/_Unique/TenGallon/Parts/Part_SM_TED_Material_TenGallon.Part_SM_TED_Material_TenGallon 44 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/_Unique/TenGallon/Part_SM_TED_BarrelMod_BabyMaker.Part_SM_TED_BarrelMod_BabyMaker 45 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/SMGs/Tediore/Part_SM_TED_Barrel_ETech.Part_SM_TED_Barrel_ETech 46 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/SMGs/Tediore/Part_SM_TED_Barrel_ETech_A.Part_SM_TED_Barrel_ETech_A 47 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/SMGs/Tediore/Part_SM_TED_Barrel_ETech_B.Part_SM_TED_Barrel_ETech_B 48 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/SMGs/Tediore/Part_SM_TED_Barrel_ETech_C.Part_SM_TED_Barrel_ETech_C 49 | /Game/Gear/Weapons/_Shared/NPC_Weapons/Clay/Part_SM_TED_Barrel_Clay.Part_SM_TED_Barrel_Clay 50 | /Game/Gear/Weapons/_Shared/NPC_Weapons/Clay/Part_SM_TED_Material_Clay.Part_SM_TED_Material_Clay 51 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/_Unique/TenGallon/Parts/Part_SM_TED_Barrel_TenGallon.Part_SM_TED_Barrel_TenGallon 52 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/_Unique/Beans/Parts/Part_SM_TED_Barrel_Beans.Part_SM_TED_Barrel_Beans 53 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/_Unique/Beans/Parts/Part_SM_TED_Material_Beans.Part_SM_TED_Material_Beans 54 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/_Unique/SpiderMind/Parts/Part_SM_TED_Barrel_SpiderMind.Part_SM_TED_Barrel_SpiderMind 55 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/_Unique/SpiderMind/Parts/Part_SM_TED_Material_SpiderMind.Part_SM_TED_Material_SpiderMind 56 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/_Unique/NotAFlamethrower/Parts/Part_SM_TED_Barrel_NotAFlamethrower.Part_SM_TED_Barrel_NotAFlamethrower 57 | /Game/Gear/Weapons/SMGs/Tediore/_Shared/_Design/_Unique/NotAFlamethrower/Parts/Part_SM_TED_Material_NotAFlamethrower.Part_SM_TED_Material_NotAFlamethrower 58 | /Hibiscus/Enemies/_Shared/_Design/ItemPools/PartOverride/Part_SM_TED_Barrel_ETech_Hib.Part_SM_TED_Barrel_ETech_Hib 59 | /Hibiscus/Enemies/_Shared/_Design/ItemPools/PartOverride/Part_SM_TED_Barrel_ETech_Small_Hib.Part_SM_TED_Barrel_ETech_Small_Hib 60 | /Hibiscus/Enemies/_Shared/_Design/ItemPools/PartOverride/Part_SM_TED_Barrel_ETech_Hib_Specter.Part_SM_TED_Barrel_ETech_Hib_Specter 61 | /Game/PatchDLC/Event2/Gear/Weapon/_Unique/NeedleGun/Parts/Part_SM_TED_Barrel_NeedleGun.Part_SM_TED_Barrel_NeedleGun 62 | /Game/PatchDLC/Event2/Gear/Weapon/_Unique/NeedleGun/Parts/Part_SM_TED_Material_NeedleGun.Part_SM_TED_Material_NeedleGun 63 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Earthbound/Parts/Part_SM_TED_Material_Earthbound.Part_SM_TED_Material_Earthbound 64 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Earthbound/Parts/Part_SM_TED_Barrel_Earthbound.Part_SM_TED_Barrel_Earthbound 65 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/PAT_Mk3/Parts/Part_SM_TED_Barrel_PatMk3.Part_SM_TED_Barrel_PatMk3 66 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/PAT_Mk3/Parts/Part_SM_TED_Material_PatMk3.Part_SM_TED_Material_PatMk3 67 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/PAT_Mk3/Parts/Part_SM_TED_Barrel_PatMk3_B.Part_SM_TED_Barrel_PatMk3_B 68 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/PAT_Mk3/Parts/Part_SM_TED_Barrel_PatMk3_Epic.Part_SM_TED_Barrel_PatMk3_Epic 69 | /Game/PatchDLC/Alisma/Gear/Weapon/_Unique/PAT_Mk3/Parts/Part_SM_TED_Barrel_PatMk3_Parent.Part_SM_TED_Barrel_PatMk3_Parent 70 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/DarkArmy/Parts/Part_SM_TED_Barrel_DarkArmy.Part_SM_TED_Barrel_DarkArmy 71 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/DarkArmy/Parts/Part_SM_TED_Material_DarkArmy.Part_SM_TED_Material_DarkArmy 72 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/DarkArmy/Parts/Part_SM_TED_BarrelMod_DarkArmy1.Part_SM_TED_BarrelMod_DarkArmy1 73 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/DarkArmy/Parts/Part_SM_TED_BarrelMod_DarkArmy2.Part_SM_TED_BarrelMod_DarkArmy2 74 | /Game/PatchDLC/Ixora/Gear/Weapons/_Unique/DarkArmy/Parts/Part_SM_TED_BarrelMod_DarkArmy3.Part_SM_TED_BarrelMod_DarkArmy3 -------------------------------------------------------------------------------- /LookupTables/BPInvPart_SR_HYP_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SR_HYP_Barrel_01.Part_SR_HYP_Barrel_01 2 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SR_HYP_Barrel_01_A.Part_SR_HYP_Barrel_01_A 3 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SR_HYP_Barrel_01_B.Part_SR_HYP_Barrel_01_B 4 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SR_HYP_Barrel_01_C.Part_SR_HYP_Barrel_01_C 5 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SR_HYP_Barrel_02.Part_SR_HYP_Barrel_02 6 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SR_HYP_Barrel_02_A.Part_SR_HYP_Barrel_02_A 7 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SR_HYP_Barrel_02_B.Part_SR_HYP_Barrel_02_B 8 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SR_HYP_Barrel_02_C.Part_SR_HYP_Barrel_02_C 9 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SR_HYP_Barrel_03.Part_SR_HYP_Barrel_03 10 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SR_HYP_Barrel_03_A.Part_SR_HYP_Barrel_03_A 11 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SR_HYP_Barrel_03_B.Part_SR_HYP_Barrel_03_B 12 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SR_HYP_Barrel_03_C.Part_SR_HYP_Barrel_03_C 13 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Body/Part_SR_HYP_Body.Part_SR_HYP_Body 14 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Body/Part_SR_HYP_Body_A.Part_SR_HYP_Body_A 15 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Body/Part_SR_HYP_Body_B.Part_SR_HYP_Body_B 16 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Body/Part_SR_HYP_Body_C.Part_SR_HYP_Body_C 17 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Elemental/Part_SR_HYP_Ele_Corr.Part_SR_HYP_Ele_Corr 18 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Elemental/Part_SR_HYP_Ele_Cryo.Part_SR_HYP_Ele_Cryo 19 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Elemental/Part_SR_HYP_Ele_Fire.Part_SR_HYP_Ele_Fire 20 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Elemental/Part_SR_HYP_Ele_Shock.Part_SR_HYP_Ele_Shock 21 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Elemental/Part_SR_HYP_Ele_Radiation.Part_SR_HYP_Ele_Radiation 22 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Grip/Part_SR_HYP_Grip_01.Part_SR_HYP_Grip_01 23 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Grip/Part_SR_HYP_Grip_02.Part_SR_HYP_Grip_02 24 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Grip/Part_SR_HYP_Grip_03.Part_SR_HYP_Grip_03 25 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Grip/Part_SR_HYP_Grip_04.Part_SR_HYP_Grip_04 26 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Magazine/Part_SR_HYP_Mag_01.Part_SR_HYP_Mag_01 27 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Magazine/Part_SR_HYP_Mag_02.Part_SR_HYP_Mag_02 28 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Magazine/Part_SR_HYP_Mag_03.Part_SR_HYP_Mag_03 29 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Material/Part_SR_HYP_01_Common.Part_SR_HYP_01_Common 30 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Rail/Part_SR_HYP_Rail_01.Part_SR_HYP_Rail_01 31 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Rail/Part_SR_HYP_Rail_02.Part_SR_HYP_Rail_02 32 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Rail/Part_SR_HYP_Rail_03.Part_SR_HYP_Rail_03 33 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Scope/Scope_01/Part_SR_HYP_Scope_01.Part_SR_HYP_Scope_01 34 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Scope/Scope_02/Part_SR_HYP_Scope_02.Part_SR_HYP_Scope_02 35 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Scope/Scope_03/Part_SR_HYP_Scope_03.Part_SR_HYP_Scope_03 36 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Shield/Part_SR_HYP_Shield_01.Part_SR_HYP_Shield_01 37 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Shield/Part_SR_HYP_Shield_02.Part_SR_HYP_Shield_02 38 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Shield/Part_SR_HYP_Shield_03.Part_SR_HYP_Shield_03 39 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Shield/Part_SR_HYP_Shield_04.Part_SR_HYP_Shield_04 40 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Stock/Part_SR_HYP_Stock_01.Part_SR_HYP_Stock_01 41 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Stock/Part_SR_HYP_Stock_02.Part_SR_HYP_Stock_02 42 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Stock/Part_SR_HYP_Stock_03.Part_SR_HYP_Stock_03 43 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Stock/Part_SR_HYP_Stock_04.Part_SR_HYP_Stock_04 44 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Scope/Scope_01/Part_SR_HYP_Scope_01_A.Part_SR_HYP_Scope_01_A 45 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Scope/Scope_01/Part_SR_HYP_Scope_01_B.Part_SR_HYP_Scope_01_B 46 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Scope/Scope_02/Part_SR_HYP_Scope_02_A.Part_SR_HYP_Scope_02_A 47 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Scope/Scope_02/Part_SR_HYP_Scope_02_B.Part_SR_HYP_Scope_02_B 48 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Scope/Scope_03/Part_SR_HYP_Scope_03_A.Part_SR_HYP_Scope_03_A 49 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Scope/Scope_03/Part_SR_HYP_Scope_03_B.Part_SR_HYP_Scope_03_B 50 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Material/Part_SR_HYP_02_Uncommon.Part_SR_HYP_02_Uncommon 51 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Material/Part_SR_HYP_03_Rare.Part_SR_HYP_03_Rare 52 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/Parts/Material/Part_SR_HYP_04_VeryRare.Part_SR_HYP_04_VeryRare 53 | /Game/Gear/Weapons/_Shared/NPC_Weapons/Zero/Part_SR_HYP_Zero.Part_SR_HYP_Zero 54 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/SniperRifles/Hyperion/Part_SR_HYP_Barrel_ETech.Part_SR_HYP_Barrel_ETech 55 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/SniperRifles/Hyperion/Part_SR_HYP_Barrel_ETech_A.Part_SR_HYP_Barrel_ETech_A 56 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/SniperRifles/Hyperion/Part_SR_HYP_Barrel_ETech_B.Part_SR_HYP_Barrel_ETech_B 57 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/SniperRifles/Hyperion/Part_SR_HYP_Barrel_ETech_C.Part_SR_HYP_Barrel_ETech_C 58 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/_Unique/Woodblocks/Parts/Part_SR_HYP_Barrel_Woodblocks.Part_SR_HYP_Barrel_Woodblocks 59 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/_Unique/Woodblocks/Parts/Part_SR_HYP_Woodblocks.Part_SR_HYP_Woodblocks 60 | /Game/Gear/Weapons/_Shared/NPC_Weapons/Zero/ZeroForPlayer/Part_SR_HYP_ZeroForPlayer.Part_SR_HYP_ZeroForPlayer 61 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/_Unique/TwoTime/Parts/Part_SR_HYP_Barrel_02_TwoTime.Part_SR_HYP_Barrel_02_TwoTime 62 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/_Unique/TwoTime/Parts/Part_SR_HYP_Ele_Shock_TwoTime.Part_SR_HYP_Ele_Shock_TwoTime 63 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/_Unique/TwoTime/Parts/Part_SR_HYP_Mat_TwoTime.Part_SR_HYP_Mat_TwoTime 64 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/_Unique/TwoTime/Parts/Part_SR_HYP_Scope_01_TwoTime.Part_SR_HYP_Scope_01_TwoTime 65 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/_Unique/MasterworkCrossbow/Parts/Part_SR_HYP_Barrel_Masterwork.Part_SR_HYP_Barrel_Masterwork 66 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/_Unique/MasterworkCrossbow/Parts/Part_SR_HYP_Masterwork.Part_SR_HYP_Masterwork 67 | /Game/Gear/Weapons/SniperRifles/Hyperion/_Shared/_Design/_Unique/MasterworkCrossbow/Parts/Part_SR_HYP_Mag_MasterworkCrossbow.Part_SR_HYP_Mag_MasterworkCrossbow 68 | /Game/PatchDLC/Raid1/Re-Engagement/Weapons/Tankman/Parts/Part_SR_HYP_Barrel_Tankman.Part_SR_HYP_Barrel_Tankman 69 | /Game/PatchDLC/Raid1/Re-Engagement/Weapons/Tankman/Parts/Part_SR_HYP_Tankman.Part_SR_HYP_Tankman 70 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Narp/Parts/Part_SR_HYP_Barrel_Narp.Part_SR_HYP_Barrel_Narp 71 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Narp/Parts/Part_SR_HYP_Material_Narp.Part_SR_HYP_Material_Narp -------------------------------------------------------------------------------- /LookupTables/BPInvPart_SR_JAK_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SR_JAK_Barrel_01.Part_SR_JAK_Barrel_01 2 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SR_JAK_Barrel_01_A.Part_SR_JAK_Barrel_01_A 3 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SR_JAK_Barrel_01_B.Part_SR_JAK_Barrel_01_B 4 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Barrel/Barrel_01/Part_SR_JAK_Barrel_01_C.Part_SR_JAK_Barrel_01_C 5 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SR_JAK_Barrel_02.Part_SR_JAK_Barrel_02 6 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SR_JAK_Barrel_02_A.Part_SR_JAK_Barrel_02_A 7 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SR_JAK_Barrel_02_B.Part_SR_JAK_Barrel_02_B 8 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Barrel/Barrel_02/Part_SR_JAK_Barrel_02_C.Part_SR_JAK_Barrel_02_C 9 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SR_JAK_Barrel_03.Part_SR_JAK_Barrel_03 10 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SR_JAK_Barrel_03_A.Part_SR_JAK_Barrel_03_A 11 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SR_JAK_Barrel_03_B.Part_SR_JAK_Barrel_03_B 12 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Barrel/Barrel_03/Part_SR_JAK_Barrel_03_C.Part_SR_JAK_Barrel_03_C 13 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Body/Part_SR_JAK_Body.Part_SR_JAK_Body 14 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Body/Part_SR_JAK_Body_A.Part_SR_JAK_Body_A 15 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Body/Part_SR_JAK_Body_B.Part_SR_JAK_Body_B 16 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Body/Part_SR_JAK_Body_C.Part_SR_JAK_Body_C 17 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Bolt/Part_SR_JAK_Bolt_01.Part_SR_JAK_Bolt_01 18 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Bolt/Part_SR_JAK_Bolt_02.Part_SR_JAK_Bolt_02 19 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Bolt/Part_SR_JAK_Bolt_03.Part_SR_JAK_Bolt_03 20 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Foregrip/Part_SR_JAK_Foregrip_01.Part_SR_JAK_Foregrip_01 21 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Foregrip/Part_SR_JAK_Foregrip_02.Part_SR_JAK_Foregrip_02 22 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Foregrip/Part_SR_JAK_Foregrip_03.Part_SR_JAK_Foregrip_03 23 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Foregrip/Part_SR_JAK_Foregrip_04.Part_SR_JAK_Foregrip_04 24 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Foregrip/Part_SR_JAK_Foregrip_05.Part_SR_JAK_Foregrip_05 25 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Magazine/Part_SR_JAK_Mag_01.Part_SR_JAK_Mag_01 26 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Magazine/Part_SR_JAK_Mag_02.Part_SR_JAK_Mag_02 27 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Magazine/Part_SR_JAK_Mag_03.Part_SR_JAK_Mag_03 28 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Material/Part_SR_JAK_01_Common.Part_SR_JAK_01_Common 29 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Scope/Scope_01/Part_SR_JAK_Scope_01.Part_SR_JAK_Scope_01 30 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Scope/Scope_02/Part_SR_JAK_Scope_02.Part_SR_JAK_Scope_02 31 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Scope/Scope_03/Part_SR_JAK_Scope_03.Part_SR_JAK_Scope_03 32 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Stock/Stock_01/Part_SR_JAK_Stock_01.Part_SR_JAK_Stock_01 33 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Stock/Stock_02/Part_SR_JAK_Stock_02.Part_SR_JAK_Stock_02 34 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Stock/Stock_03/Part_SR_JAK_Stock_03.Part_SR_JAK_Stock_03 35 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Stock/Stock_04/Part_SR_JAK_Stock_04.Part_SR_JAK_Stock_04 36 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Stock/Stock_05/Part_SR_JAK_Stock_05.Part_SR_JAK_Stock_05 37 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Material/Part_SR_JAK_02_Uncommon.Part_SR_JAK_02_Uncommon 38 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Scope/Scope_01/Part_SR_JAK_Scope_01_A.Part_SR_JAK_Scope_01_A 39 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Scope/Scope_01/Part_SR_JAK_Scope_01_B.Part_SR_JAK_Scope_01_B 40 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Scope/Scope_02/Part_SR_JAK_Scope_02_A.Part_SR_JAK_Scope_02_A 41 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Scope/Scope_02/Part_SR_JAK_Scope_02_B.Part_SR_JAK_Scope_02_B 42 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Scope/Scope_03/Part_SR_JAK_Scope_03_A.Part_SR_JAK_Scope_03_A 43 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Scope/Scope_03/Part_SR_JAK_Scope_03_B.Part_SR_JAK_Scope_03_B 44 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Stock/Stock_01/Part_SR_JAK_Stock_01_A.Part_SR_JAK_Stock_01_A 45 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Stock/Stock_02/Part_SR_JAK_Stock_02_A.Part_SR_JAK_Stock_02_A 46 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Stock/Stock_03/Part_SR_JAK_Stock_03_A.Part_SR_JAK_Stock_03_A 47 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Stock/Stock_04/Part_SR_JAK_Stock_04_A.Part_SR_JAK_Stock_04_A 48 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Stock/Stock_05/Part_SR_JAK_Stock_05_A.Part_SR_JAK_Stock_05_A 49 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Material/Part_SR_JAK_03_Rare.Part_SR_JAK_03_Rare 50 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/Parts/Material/Part_SR_JAK_04_VeryRare.Part_SR_JAK_04_VeryRare 51 | /Game/Gear/Weapons/_Shared/NPC_Weapons/Hammerlock/Part_SR_JAK_Material_Hammerlock.Part_SR_JAK_Material_Hammerlock 52 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/_Unique/Monocle/Parts/Part_SR_JAK_Barrel_Monocle.Part_SR_JAK_Barrel_Monocle 53 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/_Unique/Monocle/Parts/Part_SR_JAK_Bolt_Monocle.Part_SR_JAK_Bolt_Monocle 54 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/_Unique/Monocle/Parts/Part_SR_JAK_MAT_Monocle.Part_SR_JAK_MAT_Monocle 55 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/_Unique/Monocle/Parts/Part_SR_JAK_Scope_Monocle.Part_SR_JAK_Scope_Monocle 56 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/_Unique/Headsplosion/Parts/Part_SR_JAK_Bolt_Headsplosion.Part_SR_JAK_Bolt_Headsplosion 57 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/_Unique/Headsplosion/Parts/Part_SR_JAK_Material_Headsplosion.Part_SR_JAK_Material_Headsplosion 58 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/_Unique/IceQueen/Parts/Part_SR_JAK_Bolt_IceQueen.Part_SR_JAK_Bolt_IceQueen 59 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/_Unique/IceQueen/Parts/Part_SR_JAK_IceQueen.Part_SR_JAK_IceQueen 60 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/_Unique/TheHunter/Parts/Part_SR_JAK_Barrel_Hunter.Part_SR_JAK_Barrel_Hunter 61 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/_Unique/TheHunter/Parts/Part_SR_JAK_MAterial_Hunter.Part_SR_JAK_MAterial_Hunter 62 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/_Unique/TheHunter/Hunted/Part_SR_JAK_Barrel_Hunted.Part_SR_JAK_Barrel_Hunted 63 | /Game/Gear/Weapons/SniperRifles/Jakobs/_Shared/_Design/_Unique/TheHunter/Huntress/Part_SR_JAK_Barrel_Huntress.Part_SR_JAK_Barrel_Huntress 64 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Skullmasher/Parts/Part_SR_JAK_Bolt_Skullmasher.Part_SR_JAK_Bolt_Skullmasher 65 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/Skullmasher/Parts/Part_SR_JAK_MAT_Skullmasher.Part_SR_JAK_MAT_Skullmasher 66 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/CockyBastard/Parts/Part_SR_JAK_Bolt_CockyBastard.Part_SR_JAK_Bolt_CockyBastard 67 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/CockyBastard/Parts/Part_SR_JAK_MAT_CockyBastard.Part_SR_JAK_MAT_CockyBastard 68 | /Game/PatchDLC/EventVDay/Gear/Weapon/_Unique/WeddingInvitation/Parts/Part_SR_JAK_Bolt_WeddingInvite.Part_SR_JAK_Bolt_WeddingInvite 69 | /Game/PatchDLC/EventVDay/Gear/Weapon/_Unique/WeddingInvitation/Parts/Part_SR_JAK_Mat_WeddingInvite.Part_SR_JAK_Mat_WeddingInvite 70 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/UnseenThreat/Parts/Part_SR_JAK_Bolt_UnseenThreat.Part_SR_JAK_Bolt_UnseenThreat 71 | /Game/PatchDLC/Hibiscus/Gear/Weapon/_Unique/UnseenThreat/Parts/Part_SR_JAK_Material_UnseenThreat.Part_SR_JAK_Material_UnseenThreat -------------------------------------------------------------------------------- /LookupTables/BPInvPart_Tediore_Pistol_C.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Barrels/Barrel_01/Part_PS_TED_Barrel_01.Part_PS_TED_Barrel_01 2 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Barrels/Barrel_01/Part_PS_TED_Barrel_01_A.Part_PS_TED_Barrel_01_A 3 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Barrels/Barrel_01/Part_PS_TED_Barrel_01_B.Part_PS_TED_Barrel_01_B 4 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Barrels/Barrel_01/Part_PS_TED_Barrel_01_C.Part_PS_TED_Barrel_01_C 5 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Barrels/Barrel_02/Part_PS_TED_Barrel_02.Part_PS_TED_Barrel_02 6 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Barrels/Barrel_02/Part_PS_TED_Barrel_02_A.Part_PS_TED_Barrel_02_A 7 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Barrels/Barrel_02/Part_PS_TED_Barrel_02_B.Part_PS_TED_Barrel_02_B 8 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Barrels/Barrel_02/Part_PS_TED_Barrel_02_C.Part_PS_TED_Barrel_02_C 9 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Barrels/Barrel_03/Part_PS_TED_Barrel_03.Part_PS_TED_Barrel_03 10 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Barrels/Barrel_03/Part_PS_TED_Barrel_03_A.Part_PS_TED_Barrel_03_A 11 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Barrels/Barrel_03/Part_PS_TED_Barrel_03_B.Part_PS_TED_Barrel_03_B 12 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Barrels/Barrel_03/Part_PS_TED_Barrel_03_C.Part_PS_TED_Barrel_03_C 13 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Body/Part_PS_TED_Body.Part_PS_TED_Body 14 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Body/Part_PS_TED_Body_A.Part_PS_TED_Body_A 15 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Body/Part_PS_TED_Body_B.Part_PS_TED_Body_B 16 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Body/Part_PS_TED_Body_C.Part_PS_TED_Body_C 17 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Elemental/Part_PS_TED_Elemental_Corrosive.Part_PS_TED_Elemental_Corrosive 18 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Elemental/Part_PS_TED_Elemental_Fire.Part_PS_TED_Elemental_Fire 19 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Elemental/Part_PS_TED_Elemental_Cryo.Part_PS_TED_Elemental_Cryo 20 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Elemental/Part_PS_TED_Elemental_Shock.Part_PS_TED_Elemental_Shock 21 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Elemental/Part_PS_TED_Elemental_Radiation.Part_PS_TED_Elemental_Radiation 22 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Grips/Part_PS_TED_Grip_01.Part_PS_TED_Grip_01 23 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Grips/Part_PS_TED_Grip_03.Part_PS_TED_Grip_03 24 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Grips/Part_PS_TED_Grip_04.Part_PS_TED_Grip_04 25 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Material/Part_PS_TED_Material_01_Common.Part_PS_TED_Material_01_Common 26 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Scopes/Part_PS_TED_Scope_01.Part_PS_TED_Scope_01 27 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Scopes/Part_PS_TED_Scope_02.Part_PS_TED_Scope_02 28 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Scopes/Part_PS_TED_Scope_03.Part_PS_TED_Scope_03 29 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Type_Mods/Part_PS_TED_TypeMod_01.Part_PS_TED_TypeMod_01 30 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Type_Mods/Part_PS_TED_TypeMod_02.Part_PS_TED_TypeMod_02 31 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Type_Mods/Part_PS_TED_TypeMod_03.Part_PS_TED_TypeMod_03 32 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Type_Mods/Part_PS_TED_TypeMod_04.Part_PS_TED_TypeMod_04 33 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Material/Part_PS_TED_Material_02_UnCommon.Part_PS_TED_Material_02_UnCommon 34 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Grips/Part_PS_TED_Grip_02.Part_PS_TED_Grip_02 35 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Material/Part_PS_TED_Material_03_Rare.Part_PS_TED_Material_03_Rare 36 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Material/Part_PS_TED_Material_04_Epic.Part_PS_TED_Material_04_Epic 37 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Material/Part_PS_TED_Material_05_Legendary.Part_PS_TED_Material_05_Legendary 38 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Pistol/TED/Part_PS_TED_Barrel_ETech.Part_PS_TED_Barrel_ETech 39 | /Game/Gear/Weapons/_Shared/_Design/_Manufacturers/_ETech/_Design/Pistol/TED/Part_PS_TED_Barrel_ETech_A.Part_PS_TED_Barrel_ETech_A 40 | /Game/Gear/Weapons/_Shared/NPC_Weapons/Ava/Part_PS_TED_Material_Ava.Part_PS_TED_Material_Ava 41 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/_Unique/BabyMaker/Parts/Part_PS_TED_Material_BabyMaker.Part_PS_TED_Material_BabyMaker 42 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/_Unique/BabyMaker/Parts/Part_PS_TED_TypeMod_BabyMaker_Homing.Part_PS_TED_TypeMod_BabyMaker_Homing 43 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/_Unique/BabyMaker/Parts/Part_PS_TED_TypeMod_BabyMaker_Spider.Part_PS_TED_TypeMod_BabyMaker_Spider 44 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/_Unique/BabyMaker/Parts/Part_PS_TED_Barrel_BabyMaker.Part_PS_TED_Barrel_BabyMaker 45 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/_Unique/Gunerang/Parts/Part_PS_TED_Barrel_Gunerang.Part_PS_TED_Barrel_Gunerang 46 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/_Unique/Gunerang/Parts/Part_PS_TED_Material_Gunerang.Part_PS_TED_Material_Gunerang 47 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/_Unique/_Bangarang/Part_PS_TED_Material_Bangerang.Part_PS_TED_Material_Bangerang 48 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/_Unique/Sabre/Parts/Part_PS_TED_Barrel_Sabre.Part_PS_TED_Barrel_Sabre 49 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/_Unique/Sabre/Parts/Part_PS_TED_Material_Sabre.Part_PS_TED_Material_Sabre 50 | /Game/Gear/Weapons/Pistols/Tediore/Shared/_Design/Parts/Grips/Part_PS_TED_Grip_05.Part_PS_TED_Grip_05 51 | /Game/PatchDLC/Raid1/Re-Engagement/Weapons/Execute/Parts/Part_PS_TED_Barrel_Execute.Part_PS_TED_Barrel_Execute 52 | /Game/PatchDLC/Raid1/Re-Engagement/Weapons/Execute/Parts/Part_PS_TED_Material_Execute.Part_PS_TED_Material_Execute 53 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Plumage/Parts/Part_PS_TED_Barrel_Plumage.Part_PS_TED_Barrel_Plumage 54 | /Game/PatchDLC/Geranium/Gear/Weapon/_Unique/Plumage/Parts/Part_PS_TED_Material_Plumage.Part_PS_TED_Material_Plumage -------------------------------------------------------------------------------- /LookupTables/DownloadableEntitlementPartData.txt: -------------------------------------------------------------------------------- 1 | /Game/GameData/DLC/Entitlements/EntitlementPart_Currency_Eridium.EntitlementPart_Currency_Eridium 2 | /Game/GameData/DLC/Entitlements/EntitlementPart_Currency_GoldenKey.EntitlementPart_Currency_GoldenKey 3 | /Game/GameData/DLC/Entitlements/EntitlementPart_Currency_Money.EntitlementPart_Currency_Money 4 | /Game/GameData/DLC/Entitlements/EntitlementPart_Currency_DiamondKey.EntitlementPart_Currency_DiamondKey -------------------------------------------------------------------------------- /LookupTables/LIST.txt: -------------------------------------------------------------------------------- 1 | LookupTables/BPInvPart_AR_COV_C.txt 2 | LookupTables/BPInvPart_AR_DAL_C.txt 3 | LookupTables/BPInvPart_AR_TOR_C.txt 4 | LookupTables/BPInvPart_Artifact_C.txt 5 | LookupTables/BPInvPart_ATL_AR_C.txt 6 | LookupTables/BPInvPart_ATL_HW_C.txt 7 | LookupTables/BPInvPart_ClassMod_C.txt 8 | LookupTables/BPInvPart_Customization_Head_C.txt 9 | LookupTables/BPInvPart_Customization_Skin_C.txt 10 | LookupTables/BPInvPart_Dahl_SMG_C.txt 11 | LookupTables/BPInvPart_GrenadeMod_C.txt 12 | LookupTables/BPInvPart_HW_COV_C.txt 13 | LookupTables/BPInvPart_HW_TOR_C.txt 14 | LookupTables/BPInvPart_HW_VLA_C.txt 15 | LookupTables/BPInvPart_Hyperion_Shotgun_C.txt 16 | LookupTables/BPInvPart_JAK_AR_C.txt 17 | LookupTables/BPInvPart_Jakobs_Pistol_C.txt 18 | LookupTables/BPInvPart_MAL_SR_C.txt 19 | LookupTables/BPInvPart_Maliwan_SMG_C.txt 20 | LookupTables/BPInvPart_PS_ATL_C.txt 21 | LookupTables/BPInvPart_PS_COV_C.txt 22 | LookupTables/BPInvPart_PS_DAL_C.txt 23 | LookupTables/BPInvPart_PS_MAL_C.txt 24 | LookupTables/BPInvPart_PS_TOR_C.txt 25 | LookupTables/BPInvPart_PS_VLA_C.txt 26 | LookupTables/BPInvPart_SG_JAK_C.txt 27 | LookupTables/BPInvPart_SG_MAL_C.txt 28 | LookupTables/BPInvPart_SG_TED_C.txt 29 | LookupTables/BPInvPart_SG_Torgue_C.txt 30 | LookupTables/BPInvPart_Shield_C.txt 31 | LookupTables/BPInvPart_SM_Hyperion_C.txt 32 | LookupTables/BPInvPart_SM_TED_C.txt 33 | LookupTables/BPInvPart_SR_DAL_C.txt 34 | LookupTables/BPInvPart_SR_HYP_C.txt 35 | LookupTables/BPInvPart_SR_JAK_C.txt 36 | LookupTables/BPInvPart_Tediore_Pistol_C.txt 37 | LookupTables/BPInvPart_VLA_AR_C.txt 38 | LookupTables/BPInvPart_VLA_SR_C.txt 39 | LookupTables/BPInvPartData_EridianFabricator_C.txt 40 | LookupTables/BPVehiclePart_C.txt 41 | LookupTables/DownloadableEntitlementPartData.txt 42 | LookupTables/InventoryBalanceData.txt 43 | LookupTables/InventoryCustomizationPartData.txt 44 | LookupTables/InventoryData.txt 45 | LookupTables/InventoryGenericPartData.txt 46 | LookupTables/ItemPoolData.txt 47 | LookupTables/ManufacturerData.txt 48 | LookupTables/OakDownloadableContentLicenseData.txt -------------------------------------------------------------------------------- /LookupTables/ManufacturerData.txt: -------------------------------------------------------------------------------- 1 | /Game/Gear/Manufacturers/_Design/Misc/Currency.Currency 2 | /Game/Gear/Manufacturers/_Design/Dahl.Dahl 3 | /Game/Gear/Manufacturers/_Design/Torgue.Torgue 4 | /Game/Gear/Manufacturers/_Design/Vladof.Vladof 5 | /Game/Gear/Manufacturers/_Design/Maliwan.Maliwan 6 | /Game/Gear/Manufacturers/_Design/Tediore.Tediore 7 | /Game/Vehicles/_Shared/Design/Manufacturers/Vehicle.Vehicle 8 | /Game/Gear/Manufacturers/_Design/CoV.CoV 9 | /Game/Gear/Manufacturers/_Design/Eridian.Eridian 10 | /Game/Gear/Manufacturers/_Design/Atlas.Atlas 11 | /Game/Gear/Manufacturers/_Design/AI_Custom.AI_Custom 12 | /Game/Gear/Manufacturers/_Design/Jakobs.Jakobs 13 | /Game/Gear/Manufacturers/_Design/Hyperion.Hyperion 14 | /Game/Gear/Manufacturers/_Design/Pangolin.Pangolin 15 | /Game/Gear/Manufacturers/_Design/Anshin.Anshin 16 | /Game/Gear/Manufacturers/_Design/Misc/Mission.Mission 17 | /Game/Gear/Manufacturers/_Design/Misc/Health.Health 18 | /Game/Gear/Manufacturers/_Design/Misc/SDU.SDU 19 | /Game/Enemies/Punk_Female/_Unique/FirstGuy/_Design/ItemPool/Hyperion_PunkFirstGuy_TEMP.Hyperion_PunkFirstGuy_TEMP 20 | /Game/Gear/Manufacturers/_Design/Misc/WeaponSkin.WeaponSkin 21 | /Game/Gear/Manufacturers/_Design/Misc/WeaponTrinket.WeaponTrinket 22 | /Game/Gear/Manufacturers/_Design/Misc/EchoLog.EchoLog 23 | /Game/Gear/Manufacturers/_Design/Misc/PlayerHead.PlayerHead 24 | /Game/Gear/Manufacturers/_Design/Misc/PlayerSkin.PlayerSkin 25 | /Game/Gear/Manufacturers/_Design/ClassMod.ClassMod 26 | /Game/Gear/Manufacturers/_Design/Artifact.Artifact 27 | /Game/Gear/Manufacturers/_Design/Misc/Emote.Emote 28 | /Game/Gear/Manufacturers/_Design/Misc/EchoSkin.EchoSkin 29 | /Game/Gear/Manufacturers/_Design/Misc/CrewQuarters.CrewQuarters 30 | /Game/Gear/Manufacturers/_Design/Ammo.Ammo 31 | /Game/Gear/Manufacturers/_Design/Misc/NoManufacturer.NoManufacturer 32 | /Game/Gear/Manufacturers/_Design/Eridian_NoMinGamestage.Eridian_NoMinGamestage 33 | /Game/PatchDLC/Ixora/BodyMeshCustomization/PlayerBodyMesh.PlayerBodyMesh -------------------------------------------------------------------------------- /LookupTables/OakDownloadableContentLicenseData.txt: -------------------------------------------------------------------------------- 1 | /Game/GameData/DLC/Preorders/NeonPack/DlcLicense_Preorder_NeonPack.DlcLicense_Preorder_NeonPack 2 | /Game/GameData/DLC/Preorders/BoosterPack/DlcLicense_Preorder_BoosterPack.DlcLicense_Preorder_BoosterPack 3 | /Game/GameData/DLC/Preorders/ButtStallionPack/DlcLicense_Preorder_ButtStallionPack.DlcLicense_Preorder_ButtStallionPack 4 | /Game/GameData/DLC/Preorders/GearboxGearPack/DlcLicense_Preorder_GearboxGearPack.DlcLicense_Preorder_GearboxGearPack 5 | /Game/GameData/DLC/Preorders/GoldWeaponPack/DlcLicense_Preorder_GoldWeaponPack.DlcLicense_Preorder_GoldWeaponPack 6 | /Game/GameData/DLC/Preorders/RetroStylePack/DlcLicense_Preorder_RetroStylePack.DlcLicense_Preorder_RetroStylePack 7 | /Game/GameData/DLC/Preorders/ToyBoxPack/DlcLicense_Preorder_ToyBoxPack.DlcLicense_Preorder_ToyBoxPack 8 | /Game/PatchDLC/Dandelion/GameData/DLCData/DlcLicense_Dandelion.DlcLicense_Dandelion 9 | /Game/PatchDLC/Geranium/GameData/DLCData/DlcLicenseData_Geranium.DlcLicenseData_Geranium 10 | /Game/PatchDLC/Hibiscus/GameData/DLCData/DlcLicenseData_Hibiscus.DlcLicenseData_Hibiscus 11 | /Game/PatchDLC/Daffodil/GameData/DLCData/DlcLicense_Daffodil.DlcLicense_Daffodil 12 | /Game/PatchDLC/Alisma/GameData/DLCData/DlcLicenseData_Alisma.DlcLicenseData_Alisma 13 | /Game/PatchDLC/Ixora/GameData/DLCData/DlcLicenseData_Ixora.DlcLicenseData_Ixora 14 | /Game/PatchDLC/Ixora/GameData/DLCData/DlcLicenseData_Ixora_BeastmasterBodyMesh.DlcLicenseData_Ixora_BeastmasterBodyMesh 15 | /Game/PatchDLC/Ixora/GameData/DLCData/DlcLicenseData_Ixora_GunnerBodyMesh.DlcLicenseData_Ixora_GunnerBodyMesh 16 | /Game/PatchDLC/Ixora/GameData/DLCData/DlcLicenseData_Ixora_OperativeBodyMesh.DlcLicenseData_Ixora_OperativeBodyMesh 17 | /Game/PatchDLC/Ixora/GameData/DLCData/DlcLicenseData_Ixora_SirenBodyMesh.DlcLicenseData_Ixora_SirenBodyMesh -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | # GNU-style Makefile for CSave. 2 | 3 | # If you're using a compiler besides GCC (like clang or xlc), please say so here: 4 | CC = gcc 5 | LD = gcc 6 | 7 | # Link flags. 8 | LDFLAGS = -lprotobuf-c -L/usr/local/lib -L/usr/lib 9 | CFLAGS = -I. -O0 10 | 11 | # Global match rule for the protobufs. 12 | PROTOS = *.proto 13 | 14 | # Object files. 15 | OBJS = OakProfile.pb-c.o OakSave.pb-c.o OakShared.pb-c.o SaveUnpack.o FileTranslator.o SaveToProto.o ItemCode.o SaveGenerate.o ItemLookupTest.o ProtoToSave.o CSaveGUI.o ProfileUnpack.o ProfileGenerate.o ProtoToProfile.o ProfileToProto.o SaveConvert.o CSaveMenu.o ReadSaveHeader.o 16 | 17 | # Results of "compiling" $(PROTOS) 18 | CPROTOS = OakProfile.pb-c.c OakSave.pb-c.c OakShared.pb-c.c 19 | 20 | # Every program that should be included. 21 | PROGS = SaveUnpack SaveToProto SaveGenerate ItemLookupTest ProtoToSave CSaveGUI ProfileUnpack ProfileGenerate ProtoToProfile ProfileToProto SaveConvert CSaveMenu ReadSaveHeader 22 | 23 | # A library of the protos as to not overwhelm the linker on slower systems. 24 | LIBRARIES = libBL3Proto.a 25 | 26 | # Manual artifacts. 27 | MANUALS_PS = manual.ps 28 | MANUALS_PDF = manual.pdf 29 | MANUALS_TEXT = manual.txt 30 | 31 | # Install prefix. 32 | PREFIX = /usr/local 33 | 34 | # Troff postprocessor for the manual. The bottom one is for system V unix. 35 | TCONV = grops 36 | # TCONV = /usr/lib/lp/postscript/dpost 37 | 38 | 39 | all: $(PROGS) 40 | 41 | # Rule to typeset the manual to text 42 | # Note: you might want to use nroff here 43 | %.txt: %.ms 44 | @echo " TROFF " $< " TEXT" 45 | @nroff -ms $< > $@ 46 | @# @groff -Tascii -ms -Z $< | grotty -c | sed 's/[\x01-\x1F\x7F]//g' > $@ 47 | 48 | # Rule to typeset the manual to postscript 49 | %.ps: %.ms 50 | @echo " TROFF " $< 51 | @tbl $< | troff -Tps -ms > $@.temp 52 | @$(TCONV) $@.temp > $@ 53 | @rm $@.temp 54 | 55 | # Rule to convert the postscript manual to PDF 56 | %.pdf: %.ps 57 | @echo " PS2PDF " $< 58 | @ps2pdf $< $@ 59 | 60 | # Rule to compile all C sources to objects. 61 | %.o: %.c 62 | @echo " CC " $< 63 | @$(CC) $(CFLAGS) -c -o $@ $< 64 | 65 | # Rule to "compile" the protobufs. 66 | %.pb-c.c: %.proto 67 | @echo " PROTOC " $< 68 | @protoc-c --c_out=. $< 69 | 70 | # Rule to quickly re-generate the protobuf-c files without a complete rebuild. 71 | cprotos: $(CPROTOS) 72 | 73 | # Rule to generate the library. 74 | $(LIBRARIES): $(CPROTOS) $(OBJS) 75 | @echo " AR libBL3Proto" 76 | @ar cr libBL3Proto.a OakProfile.pb-c.o OakSave.pb-c.o OakShared.pb-c.o SaveToProto.o ItemCode.o FileTranslator.o 77 | 78 | # Linking rule. 79 | $(PROGS): $(LIBRARIES) 80 | @echo " LD SaveUnpack" 81 | @$(LD) -o SaveUnpack SaveUnpack.o libBL3Proto.a $(LDFLAGS) 82 | @echo " LD SaveToProto" 83 | @$(LD) -o SaveToProto SaveToProto.o libBL3Proto.a $(LDFLAGS) 84 | @echo " LD ProtoToSave" 85 | @$(LD) -o ProtoToSave ProtoToSave.o libBL3Proto.a $(LDFLAGS) 86 | @echo " LD SaveGenerate" 87 | @$(LD) -o SaveGenerate SaveGenerate.o libBL3Proto.a $(LDFLAGS) 88 | @echo " LD ItemLookupTest" 89 | @$(LD) -o ItemLookupTest ItemLookupTest.o libBL3Proto.a $(LDFLAGS) 90 | @echo " LD ProfileUnpack" 91 | @$(LD) -o ProfileUnpack ProfileUnpack.o libBL3Proto.a $(LDFLAGS) 92 | @echo " LD ProfileGenerate" 93 | @$(LD) -o ProfileGenerate ProfileGenerate.o libBL3Proto.a $(LDFLAGS) 94 | @echo " LD ProfileToProto" 95 | @$(LD) -o ProfileToProto ProfileToProto.o libBL3Proto.a $(LDFLAGS) 96 | @echo " LD ProtoToProfile" 97 | @$(LD) -o ProtoToProfile ProtoToProfile.o libBL3Proto.a $(LDFLAGS) 98 | @echo " LD SaveConvert" 99 | @$(LD) -o SaveConvert SaveConvert.o libBL3Proto.a $(LDFLAGS) 100 | @echo " LD ReadSaveHeader" 101 | @$(LD) -o ReadSaveHeader ReadSaveHeader.o libBL3Proto.a $(LDFLAGS) 102 | @echo " LD CSaveGUI" 103 | @$(LD) -o CSaveGUI CSaveGUI.o -lncurses 104 | @echo " LD CSaveMenu" 105 | @$(LD) -o CSaveMenu CSaveMenu.o 106 | 107 | # Manual generation rule. 108 | manual: $(MANUALS_PS) $(MANUALS_PDF) $(MANUALS_TEXT) 109 | 110 | # Install. Please note that this is a BSD-style install command, not a SVR4/5 style command! 111 | install: $(PROGS) manual 112 | @echo " INSTALL SaveUnpack" 113 | @install SaveUnpack $(PREFIX)/bin 114 | @echo " INSTALL SaveToProto" 115 | @install SaveToProto $(PREFIX)/bin 116 | @echo " INSTALL SaveGenerate" 117 | @install SaveGenerate $(PREFIX)/bin 118 | @echo " INSTALL ProtoToSave" 119 | @install ProtoToSave $(PREFIX)/bin 120 | @echo " INSTALL ProfileUnpack" 121 | @install ProfileUnpack $(PREFIX)/bin 122 | @echo " INSTALL ProfileGenerate" 123 | @install ProfileGenerate $(PREFIX)/bin 124 | @echo " INSTALL CSaveGUI" 125 | @install CSaveGUI $(PREFIX)/bin 126 | @echo " INSTALL CSaveMenu" 127 | @install CSaveMenu $(PREFIX)/bin 128 | @echo " INSTALL ProtoToProfile" 129 | @install ProtoToProfile $(PREFIX)/bin 130 | @echo " INSTALL ProfileToProto" 131 | @install ProfileToProto $(PREFIX)/bin 132 | @echo " INSTALL SaveConvert" 133 | @install SaveConvert $(PREFIX)/bin 134 | @echo " INSTALL ReadSaveHeader" 135 | @install ReadSaveHeader $(PREFIX)/bin 136 | 137 | uninstall: 138 | @echo " RM SaveUnpack" 139 | @rm $(PREFIX)/bin/SaveUnpack 140 | @echo " RM SaveToProto" 141 | @rm $(PREFIX)/bin/SaveToProto 142 | @echo " RM ProtoToSave" 143 | @rm $(PREFIX)/bin/ProtoToSave 144 | @echo " RM SaveGenerate" 145 | @rm $(PREFIX)/bin/SaveGenerate 146 | @echo " RM ProfileGenerate" 147 | @rm $(PREFIX)/bin/ProfileGenerate 148 | @echo " RM ProfileUnpack" 149 | @rm $(PREFIX)/bin/ProfileUnpack 150 | @echo " RM CSaveGUI" 151 | @rm $(PREFIX)/bin/CSaveGUI 152 | @echo " RM CSaveMenu" 153 | @rm $(PREFIX)/bin/CSaveMenu 154 | @echo " RM ProtoToProfile" 155 | @rm $(PREFIX)/bin/ProtoToProfile 156 | @echo " RM ProfileToProto" 157 | @rm $(PREFIX)/bin/ProfileToProto 158 | @echo " RM SaveConvert" 159 | @rm $(PREFIX)/bin/SaveConvert 160 | @echo " RM ReadSaveHeader" 161 | @rm $(PREFIX)/bin/ReadSaveHeader 162 | 163 | 164 | .PHONY: clean 165 | 166 | clean: 167 | rm -f *.o Oak*.pb-c.* *.a $(MANUALS_PS) $(MANUALS_PDF) $(MANUALS_TEXT) $(PROGS) 168 | -------------------------------------------------------------------------------- /Makefile.bsd: -------------------------------------------------------------------------------- 1 | # (Free/Net/Open)BSD Makefile. 2 | # Also applicable to MacOS 3 | 4 | # Your C compiler. GCC gives you less warnings 5 | CC = clang 6 | LD = clang 7 | 8 | # Linker library paths. 9 | LDFLAGS = -lprotobuf-c -L/usr/local/lib 10 | CFLAGS = -I. -I/usr/local/include 11 | 12 | # Autocheck rule for the protos 13 | PROTOS = *.proto 14 | 15 | # Resultant objects 16 | OBJS = OakProfile.pb-c.o OakSave.pb-c.o OakShared.pb-c.o SaveUnpack.o FileTranslator.o SaveToProto.o ItemCode.o SaveGenerate.o ItemLookupTest.o ProtoToSave.o CSaveGUI.o ProfileUnpack.o ProfileGenerate.o ProtoToProfile.o ProfileToProto.o SaveConvert.o CSaveMenu.o ReadSaveHeader.o 17 | 18 | # Results of the protobuf generation process 19 | CPROTOS = OakProfile.pb-c.c OakSave.pb-c.c OakShared.pb-c.c 20 | 21 | # All programs 22 | PROGS = SaveUnpack SaveToProto SaveGenerate ItemLookupTest ProtoToSave CSaveGUI ProfileUnpack ProfileGenerate ProtoToProfile ProfileToProto SaveConvert CSaveMenu ReadSaveHeader 23 | LIBRARIES = libBL3Proto.a 24 | 25 | # Manuals 26 | MANUALS_PS = manual.ps 27 | MANUALS_PDF = manual.pdf 28 | MANUALS_TXT = manual.txt 29 | 30 | # Install prefix (they'll go in /usr/local/bin by default) 31 | PREFIX = /usr/local 32 | 33 | all: $(PROGS) 34 | 35 | .SUFFIXES: .ps .ms .pdf .txt 36 | 37 | .ms.txt: 38 | @echo " TROFF " $< " TEXT" 39 | @troff -Tascii -ms $< > $@ 40 | 41 | .ms.ps: 42 | @echo " TROFF " $< 43 | @groff -Tps -ms $< > $@ 44 | 45 | .ps.pdf: 46 | @echo " PS2PDF " $< 47 | @ps2pdf $< $@ 48 | 49 | .SUFFIXES: .c .h .o 50 | 51 | .c.o: 52 | @echo " CC " $< 53 | @$(CC) $(CFLAGS) -c -o $@ $< 54 | 55 | cprotos: *.proto 56 | @echo " PROTOC OakProfile.proto" 57 | @protoc-c --c_out=. OakProfile.proto 58 | @echo " PROTOC OakSave.proto" 59 | @protoc-c --c_out=. OakSave.proto 60 | @echo " PROTOC OakShared.proto" 61 | @protoc-c --c_out=. OakShared.proto 62 | 63 | $(LIBRARIES): cprotos $(OBJS) 64 | @echo " AR libBL3Proto" 65 | @ar cr libBL3Proto.a OakProfile.pb-c.o OakSave.pb-c.o OakShared.pb-c.o FileTranslator.o SaveToProto.o ItemCode.o 66 | 67 | $(PROGS): $(LIBRARIES) 68 | @echo " LD SaveUnpack" 69 | @$(LD) -o SaveUnpack SaveUnpack.o libBL3Proto.a $(LDFLAGS) 70 | @echo " LD SaveToProto" 71 | @$(LD) -o SaveToProto SaveToProto.o libBL3Proto.a $(LDFLAGS) 72 | @echo " LD ProtoToSave" 73 | @$(LD) -o ProtoToSave ProtoToSave.o libBL3Proto.a $(LDFLAGS) 74 | @echo " LD SaveGenerate" 75 | @$(LD) -o SaveGenerate SaveGenerate.o libBL3Proto.a $(LDFLAGS) 76 | @echo " LD ItemLookupTest" 77 | @$(LD) -o ItemLookupTest ItemLookupTest.o libBL3Proto.a $(LDFLAGS) 78 | @echo " LD ProfileUnpack" 79 | @$(LD) -o ProfileUnpack ProfileUnpack.o libBL3Proto.a $(LDFLAGS) 80 | @echo " LD ProfileGenerate" 81 | @$(LD) -o ProfileGenerate ProfileGenerate.o libBL3Proto.a $(LDFLAGS) 82 | @echo " LD ProfileToProto" 83 | @$(LD) -o ProfileToProto ProfileToProto.o libBL3Proto.a $(LDFLAGS) 84 | @echo " LD ProtoToProfile" 85 | @$(LD) -o ProtoToProfile ProtoToProfile.o libBL3Proto.a $(LDFLAGS) 86 | @echo " LD SaveConvert" 87 | @$(LD) -o SaveConvert SaveConvert.o libBL3Proto.a $(LDFLAGS) 88 | @echo " LD ReadSaveHeader" 89 | @$(LD) -o ReadSaveHeader ReadSaveHeader.o libBL3Proto.a $(LDFLAGS) 90 | @echo " LD CSaveGUI" 91 | @$(LD) -o CSaveGUI CSaveGUI.o -lncurses 92 | @echo " LD CSaveMenu" 93 | @$(LD) -o CSaveMenu CSaveMenu.o 94 | 95 | manual: $(MANUALS_PS) $(MANUALS_PDF) 96 | 97 | install: $(PROGS) 98 | @echo " INSTALL SaveUnpack" 99 | @install SaveUnpack $(PREFIX)/bin 100 | @echo " INSTALL SaveToProto" 101 | @install SaveToProto $(PREFIX)/bin 102 | @echo " INSTALL SaveGenerate" 103 | @install SaveGenerate $(PREFIX)/bin 104 | @echo " INSTALL ProtoToSave" 105 | @install ProtoToSave $(PREFIX)/bin 106 | @echo " INSTALL ProfileUnpack" 107 | @install ProfileUnpack $(PREFIX)/bin 108 | @echo " INSTALL ProfileGenerate" 109 | @install ProfileGenerate $(PREFIX)/bin 110 | @echo " INSTALL CSaveGUI" 111 | @install CSaveGUI $(PREFIX)/bin 112 | @echo " INSTALL CSaveMenu" 113 | @install CSaveMenu $(PREFIX)/bin 114 | @echo " INSTALL ProtoToProfile" 115 | @install ProtoToProfile $(PREFIX)/bin 116 | @echo " INSTALL ProfileToProto" 117 | @install ProfileToProto $(PREFIX)/bin 118 | @echo " INSTALL SaveConvert" 119 | @install SaveConvert $(PREFIX)/bin 120 | @echo " INSTALL ReadSaveHeader" 121 | @install ReadSaveHeader $(PREFIX)/bin 122 | 123 | 124 | uninstall: 125 | @echo " RM SaveUnpack" 126 | @rm $(PREFIX)/bin/SaveUnpack 127 | @echo " RM SaveToProto" 128 | @rm $(PREFIX)/bin/SaveToProto 129 | @echo " RM ProtoToSave" 130 | @rm $(PREFIX)/bin/ProtoToSave 131 | @echo " RM SaveGenerate" 132 | @rm $(PREFIX)/bin/SaveGenerate 133 | @echo " RM ProfileGenerate" 134 | @rm $(PREFIX)/bin/ProfileGenerate 135 | @echo " RM ProfileUnpack" 136 | @rm $(PREFIX)/bin/ProfileUnpack 137 | @echo " RM CSaveGUI" 138 | @rm $(PREFIX)/bin/CSaveGUI 139 | @echo " RM CSaveMenu" 140 | @rm $(PREFIX)/bin/CSaveMenu 141 | @echo " RM ProtoToProfile" 142 | @rm $(PREFIX)/bin/ProtoToProfile 143 | @echo " RM ProfileToProto" 144 | @rm $(PREFIX)/bin/ProfileToProto 145 | @echo " RM SaveConvert" 146 | @rm $(PREFIX)/bin/SaveConvert 147 | @echo " RM ReadSaveHeader" 148 | @rm $(PREFIX)/bin/ReadSaveHeader 149 | 150 | 151 | .PHONY: clean 152 | 153 | clean: 154 | rm -f *.o Oak*.pb-c.* *.a $(MANUALS_PS) $(MANUALS_PDF) $(MANUALS_TXT) $(PROGS) 155 | -------------------------------------------------------------------------------- /Makefile.vc: -------------------------------------------------------------------------------- 1 | CC = cl 2 | LD = link 3 | CFLAGS = /c 4 | PROTOS = *.proto 5 | OBJS = OakProfile.pb-c.obj OakSave.pb-c.obj OakShared.pb-c.obj SaveUnpack.obj FileTranslator.obj SaveToProto.obj ItemCode.obj SaveGenerate.obj ItemLookupTest.obj ProtoToSave.obj ProfileUnpack.obj ProfileGenerate.obj ProtoToProfile.obj ProfileToProto.obj SaveConvert.obj CSaveMenu.obj ReadSaveHeader.obj 6 | CPROTOS = OakProfile.pb-c.c OakSave.pb-c.c OakShared.pb-c.c 7 | PROGS = SaveUnpack.exe SaveToProto.exe SaveGenerate.exe ItemLookupTest.exe ProtoToSave.exe ProfileUnpack.exe ProfileGenerate.exe ProtoToProfile.exe ProfileToProto.exe SaveConvert.exe CSaveMenu.exe ReadSaveHeader.exe 8 | LIBRARIES = csave.lib 9 | PREFIX = /usr/local 10 | PROTOCLIB = D:\\Programs\\vsc2010\\protobuf-c\\Lib\\protobuf-c.lib 11 | LDFLAGS = csave.lib $(PROTOCLIB) 12 | LDPREFIX = 13 | 14 | all: $(PROGS) 15 | 16 | %.obj: %.c 17 | @echo " CC " $< 18 | @$(CC) $(CFLAGS) $< 19 | 20 | %.pb-c.c: %.proto 21 | @echo " PROTOC " $< 22 | @protoc-c --c_out=. $< 23 | 24 | $(LIBRARIES): $(CPROTOS) $(OBJS) 25 | @lib /out:csave.lib OakProfile.pb-c.obj OakSave.pb-c.obj OakShared.pb-c.obj FileTranslator.obj ItemCode.obj 26 | 27 | $(PROGS): $(LIBRARIES) 28 | @echo " LD SaveUnpack" 29 | @$(LD) $(LDPREFIX) SaveUnpack.obj $(LDFLAGS) 30 | @echo " LD SaveToProto" 31 | @$(LD) $(LDPREFIX) SaveToProto.obj $(LDFLAGS) 32 | @echo " LD ProtoToSave" 33 | @$(LD) $(LDPREFIX) ProtoToSave.obj $(LDFLAGS) 34 | @echo " LD SaveGenerate" 35 | @$(LD) $(LDPREFIX) SaveGenerate.obj $(LDFLAGS) 36 | @echo " LD ItemLookupTest" 37 | @$(LD) $(LDPREFIX) ItemLookupTest.obj $(LDFLAGS) 38 | @echo " LD ProfileUnpack" 39 | @$(LD) $(LDPREFIX) ProfileUnpack.obj $(LDFLAGS) 40 | @echo " LD ProfileGenerate" 41 | @$(LD) $(LDPREFIX) ProfileGenerate.obj $(LDFLAGS) 42 | @echo " LD ProfileToProto" 43 | @$(LD) $(LDPREFIX) ProfileToProto.obj $(LDFLAGS) 44 | @echo " LD ProtoToProfile" 45 | @$(LD) $(LDPREFIX) ProtoToProfile.obj $(LDFLAGS) 46 | @echo " LD SaveConvert" 47 | @$(LD) $(LDPREFIX) SaveConvert.obj $(LDFLAGS) 48 | @echo " LD CSaveMenu" 49 | @$(LD) $(LDPREFIX) CSaveMenu.obj $(LDFLAGS) 50 | @echo " LD ReadSaveHeader" 51 | @$(LD) $(LDPREFIX) ReadSaveHeader.obj $(LDFLAGS) 52 | 53 | 54 | clean: 55 | rm -f *.obj Oak*.pb-c.* *.exe *.lib 56 | -------------------------------------------------------------------------------- /Makefile.watcom: -------------------------------------------------------------------------------- 1 | # CSave "Watcom Makefile" 2 | # (it's actually for GNU Make but I need to change it) 3 | 4 | # System declaration: 5 | # os2v2 = OS/2 2.0+ 6 | # nt = Windows 32-bit 7 | # linux = Linux, some version 8 | SYSTEM = os2v2 9 | CC = wcc386 10 | LD = wlink 11 | 12 | CFLAGS = -bt=$(SYSTEM) -bc -q 13 | PROTOS = *.proto 14 | OBJS = OakProfile.pb-c.obj OakSave.pb-c.obj OakShared.pb-c.obj SaveUnpack.obj FileTranslator.obj SaveToProto.obj ItemCode.obj SaveGenerate.obj ItemLookupTest.obj ProtoToSave.obj ProfileUnpack.obj ProfileGenerate.obj ProtoToProfile.obj ProfileToProto.obj SaveConvert.obj ReadSaveHeader.obj 15 | CPROTOS = OakProfile.pb-c.c OakSave.pb-c.c OakShared.pb-c.c 16 | PROGS = SaveUnpack.exe SaveToProto.exe SaveGenerate.exe ItemLookupTest.exe ProtoToSave.exe ProfileUnpack.exe ProfileGenerate.exe ProtoToProfile.exe ProfileToProto.exe SaveConvert.exe ReadSaveHeader.exe 17 | LIBRARIES = csave.lib 18 | 19 | # Path to your protobuf-c library 20 | PROTOCLIB = D:\\Programs\\OWC\\lib386\\protobuf-c.lib 21 | LDFLAGS = file csave.lib file $(PROTOCLIB) 22 | LDPREFIX = option quiet system $(SYSTEM) 23 | 24 | all: $(PROGS) 25 | 26 | 27 | .c.obj: 28 | @echo " CC " $< 29 | @$(CC) $(CFLAGS) $< 30 | 31 | $(CPROTOS): $(PROTOS) 32 | @echo " PROTOC OakProfile.proto" 33 | @protoc-c --c_out=. OakProfile.proto 34 | @echo " PROTOC OakSave.proto" 35 | @protoc-c --c_out=. OakSave.proto 36 | @echo " PROTOC OakShared.proto" 37 | @protoc-c --c_out=. OakShared.proto 38 | 39 | 40 | $(LIBRARIES): $(CPROTOS) $(OBJS) 41 | @wlib csave.lib +OakProfile.pb-c.obj +OakSave.pb-c.obj +OakShared.pb-c.obj +FileTranslator.obj +ItemCode.obj 42 | 43 | $(PROGS): $(LIBRARIES) 44 | @echo " LD SaveUnpack" 45 | @$(LD) $(LDPREFIX) file SaveUnpack.obj $(LDFLAGS) 46 | @echo " LD SaveToProto" 47 | @$(LD) $(LDPREFIX) file SaveToProto.obj $(LDFLAGS) 48 | @echo " LD ProtoToSave" 49 | @$(LD) $(LDPREFIX) file ProtoToSave.obj $(LDFLAGS) 50 | @echo " LD SaveGenerate" 51 | @$(LD) $(LDPREFIX) file SaveGenerate.obj $(LDFLAGS) 52 | @echo " LD ItemLookupTest" 53 | @$(LD) $(LDPREFIX) file ItemLookupTest.obj $(LDFLAGS) 54 | @echo " LD ProfileUnpack" 55 | @$(LD) $(LDPREFIX) file ProfileUnpack.obj $(LDFLAGS) 56 | @echo " LD ProfileGenerate" 57 | @$(LD) $(LDPREFIX) file ProfileGenerate.obj $(LDFLAGS) 58 | @echo " LD ProfileToProto" 59 | @$(LD) $(LDPREFIX) file ProfileToProto.obj $(LDFLAGS) 60 | @echo " LD ProtoToProfile" 61 | @$(LD) $(LDPREFIX) file ProtoToProfile.obj $(LDFLAGS) 62 | @echo " LD SaveConvert" 63 | @$(LD) $(LDPREFIX) file SaveConvert.obj $(LDFLAGS) 64 | @echo " LD ReadSaveHeader" 65 | @$(LD) $(LDPREFIX) file ReadSaveHeader.obj $(LDFLAGS) 66 | 67 | clean: 68 | rm -f *.obj Oak*.pb-c.* *.exe *.lib 69 | -------------------------------------------------------------------------------- /OakShared.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | package OakSave; 3 | message Vec3 { 4 | float x = 1; 5 | float y = 2; 6 | float z = 3; 7 | } 8 | message GameStatSaveGameData { 9 | int32 stat_value = 1; 10 | string stat_path = 2; 11 | } 12 | message InventoryCategorySaveData { 13 | uint32 base_category_definition_hash = 1; 14 | int32 quantity = 2; 15 | } 16 | message OakSDUSaveGameData { 17 | int32 sdu_level = 1; 18 | string sdu_data_path = 2; 19 | } 20 | message RegisteredDownloadableEntitlement { 21 | int32 id = 1; 22 | uint32 consumed = 2; 23 | bool registered = 3; 24 | bool seen = 4; 25 | } 26 | message RegisteredDownloadableEntitlements { 27 | string entitlement_source_asset_path = 1; 28 | repeated int64 entitlement_ids = 2; 29 | repeated RegisteredDownloadableEntitlement entitlements = 3; 30 | } 31 | message ChallengeStatSaveGameData { 32 | int32 current_stat_value = 1; 33 | string challenge_stat_path = 2; 34 | } 35 | message OakChallengeRewardSaveGameData { 36 | bool challenge_reward_claimed = 1; 37 | } 38 | message ChallengeSaveGameData { 39 | int32 completed_count = 1; 40 | bool is_active = 2; 41 | bool currently_completed = 3; 42 | int32 completed_progress_level = 4; 43 | int32 progress_counter = 5; 44 | repeated ChallengeStatSaveGameData stat_instance_state = 6; 45 | string challenge_class_path = 7; 46 | repeated OakChallengeRewardSaveGameData challenge_reward_info = 8; 47 | } 48 | message OakMailItem { 49 | uint32 mail_item_type = 1; 50 | string sender_display_name = 2; 51 | string subject = 3; 52 | string body = 4; 53 | string gear_serial_number = 5; 54 | string mail_guid = 6; 55 | int64 date_sent = 7; 56 | int64 expiration_date = 8; 57 | string from_player_id = 9; 58 | bool has_been_read = 10; 59 | } 60 | message OakCustomizationSaveGameData { 61 | bool is_new = 1; 62 | string customization_asset_path = 2; 63 | } 64 | message OakInventoryCustomizationPartInfo { 65 | uint32 customization_part_hash = 1; 66 | bool is_new = 2; 67 | } 68 | message CrewQuartersDecorationItemSaveGameData { 69 | bool is_new = 1; 70 | string decoration_item_asset_path = 2; 71 | } 72 | message CrewQuartersRoomItemSaveGameData { 73 | bool is_new = 1; 74 | string room_item_asset_path = 2; 75 | } 76 | message VaultCardSaveGameData { 77 | uint32 last_active_vault_card_id = 2; 78 | int32 current_day_seed = 3; 79 | int32 current_week_seed = 4; 80 | repeated VaultCardPreviousChallenge vault_card_previous_challenges = 5; 81 | repeated VaultCardRewardList vault_card_claimed_rewards = 6; 82 | } 83 | message VaultCardReward { 84 | int32 column_index = 1; 85 | int32 row_index = 2; 86 | } 87 | message VaultCardGearReward { 88 | int32 gear_index = 1; 89 | uint32 repurchase_count = 2; 90 | } 91 | message VaultCardRewardList { 92 | uint32 vault_card_id = 1; 93 | int64 vault_card_experience = 2; 94 | repeated VaultCardReward unlocked_reward_list = 4; 95 | repeated VaultCardReward redeemed_reward_list = 5; 96 | int32 vault_card_chests = 7; 97 | uint32 vault_card_chests_opened = 8; 98 | uint32 vault_card_keys_spent = 9; 99 | repeated VaultCardGearReward gear_rewards = 10; 100 | } 101 | message VaultCardPreviousChallenge { 102 | int32 previous_challenge_seed = 1; 103 | uint32 previous_challenge_id = 2; 104 | } 105 | -------------------------------------------------------------------------------- /ProfileToProto.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include "OakSave.pb-c.h" 5 | #include "OakProfile.pb-c.h" 6 | #include "OakShared.pb-c.h" 7 | #include "FileTranslator.h" 8 | 9 | #define FILESIZE_LIMIT 2000000 10 | 11 | extern struct Save save_t; 12 | int saveMode; 13 | FILE* inFile; 14 | char* outFileName; 15 | FILE* outFile; 16 | 17 | int main(int argc, char** argv) { 18 | saveMode = 2; 19 | printf("CSAV001CNV Save to Protocol Buffer Data Translation Program (for profile saves)\n"); 20 | if(argc < 2) { 21 | printf("CSAV001ABN Incorrect number of arguments (specify an input file and optionally a platform code)\n"); 22 | exit(1); 23 | } 24 | if(argc > 2) { 25 | printf("CSAV001CNV using user-specified platform...\n"); 26 | saveMode = atoi(argv[2]); 27 | } 28 | 29 | inFile = fopen(argv[1], "r"); 30 | if(inFile == NULL) { 31 | printf("CSAV001ABN File not found\n"); 32 | exit(1); 33 | } 34 | outFileName = strcat(argv[1], ".proto"); 35 | printf("CSAV00200I Output file = %s\n", outFileName); 36 | outFile = fopen(outFileName, "w"); 37 | if(outFile == NULL) { 38 | printf("CSAV001ABN Failed to open output file (read-only file system or bad DDNAME?)\n"), 39 | exit(1); 40 | } 41 | 42 | //uint8_t inputBuffer[FILESIZE_LIMIT]; 43 | //int fileLen = read_buffer(FILESIZE_LIMIT, inputBuffer, inFile); 44 | //rewind(inFile); // Rewind the tape drive like it's 1981 45 | //printf("CSAV00200I File size = %d\n", fileLen); 46 | readSave(inFile, saveMode); 47 | fwrite(save_t.remaining_data, sizeof(char), save_t.remaining_data_len, outFile); 48 | printf("CSAV001CNV Execution complete\n"); 49 | return 0; 50 | } 51 | 52 | -------------------------------------------------------------------------------- /ProfileUnpack.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include "OakShared.pb-c.h" 4 | #include "OakSave.pb-c.h" 5 | #include "FileTranslator.h" 6 | #include "ItemCode.h" 7 | 8 | #define FILESIZE_LIMIT 9000000 9 | 10 | int i; 11 | int j; 12 | 13 | uint8_t fileBuffer[FILESIZE_LIMIT]; 14 | OakSave__Profile* profData; 15 | 16 | OakSave__CrewQuartersRoomItemSaveGameData** unlocked_crew_quarters_rooms; 17 | size_t n_unlocked_crew_quarters_rooms; 18 | OakSave__CrewQuartersDecorationItemSaveGameData** unlocked_crew_quarters_decorations; 19 | size_t n_unlocked_crew_quarters_decorations; 20 | OakSave__OakInventoryCustomizationPartInfo** unlocked_inventory_customization_parts; 21 | size_t n_unlocked_inventory_customization_parts; 22 | OakSave__OakCustomizationSaveGameData** unlocked_customizations; 23 | size_t n_unlocked_customizations; 24 | OakSave__OakSDUSaveGameData** profile_sdu_list; 25 | size_t n_profile_sdu_list; 26 | size_t n_bank_inventory_category_list; 27 | OakSave__InventoryCategorySaveData** bank_inventory_category_list; 28 | OakSave__GameStatSaveGameData** profile_stats_data; 29 | size_t n_profile_stats_data; 30 | int fileLen; 31 | FILE* pbF; 32 | OakSave__GuardianRankProfileData *guardian_rank_obj; 33 | size_t n_rank_rewards; 34 | OakSave__GuardianRankRewardSaveGameData** rank_rewards; 35 | OakSave__VaultCardSaveGameData* vcData; 36 | int numVcPrevs; 37 | OakSave__VaultCardPreviousChallenge** vcPrev; 38 | int numVcRewards; 39 | OakSave__VaultCardRewardList** vcRewards; 40 | int numVcRewardsCurrent; 41 | OakSave__VaultCardReward** vcRewardCurrent; 42 | 43 | int main(int argc, char** argv) { 44 | if(argc < 2) { 45 | printf("CSAV001ABD Missing filename\n"); 46 | exit(1); 47 | } 48 | // Read the file 49 | pbF = fopen(argv[1], "r"); 50 | if(pbF == NULL) { 51 | printf("CSAV001ABD Failed to open file\n"); 52 | exit(1); 53 | } 54 | fileLen = read_buffer(FILESIZE_LIMIT, fileBuffer, pbF); 55 | 56 | // Print the welcome message 57 | printf("CSAV00100I Borderlands 3 CSave\n"); 58 | printf("CSAV00100I by HackerSmacker\n"); 59 | printf("CSAV00100S Profile file size = %d\n", fileLen); 60 | 61 | // Define the object, and read the data from the buffer (i.e. unpack it) 62 | profData = oak_save__profile__unpack(NULL, fileLen, fileBuffer); 63 | 64 | // print it out! 65 | printf("CSAV001GEN Last used save ID: %d\n", profData->last_used_savegame_id); 66 | printf("CSAV001GEN Difficulty: %d\n", profData->difficulty); 67 | printf("CSAV001GEN Matchmaking region: %s\n", profData->matchmaking_region); 68 | printf("CSAV001GEN Streaming service: %d\n", profData->streaming_service); 69 | 70 | // Profile Stats 71 | printf("CSAV001PSD Profile stat data:\n"); 72 | profile_stats_data = profData->profile_stats_data; 73 | n_profile_stats_data = profData->n_profile_stats_data; 74 | for(i = 0; i < n_profile_stats_data; i++) { 75 | printf("CSAV001PSD Stat: %s\n", profile_stats_data[i]->stat_path); 76 | printf("CSAV001PSD Value: %d\n", profile_stats_data[i]->stat_value); 77 | } 78 | 79 | // ICL in the profile? 80 | bank_inventory_category_list = profData->bank_inventory_category_list; 81 | n_bank_inventory_category_list = profData->n_bank_inventory_category_list; 82 | for(i = 0; i < n_bank_inventory_category_list; i++) { 83 | printf("CSAV001ICL Inventory Category %d is of type %x and has value %d\n", i, bank_inventory_category_list[i]->base_category_definition_hash, bank_inventory_category_list[i]->quantity); 84 | } 85 | 86 | // SDUs in the profile 87 | n_profile_sdu_list = profData->n_profile_sdu_list; 88 | profile_sdu_list = profData->profile_sdu_list; 89 | for(i = 0; i < n_profile_sdu_list; i++) { 90 | printf("CSAV001SDU %d SDUs, of type %s\n", profile_sdu_list[i]->sdu_level, profile_sdu_list[i]->sdu_data_path); 91 | } 92 | 93 | // Customizations 94 | n_unlocked_customizations = profData->n_unlocked_customizations; 95 | unlocked_customizations = profData->unlocked_customizations; 96 | for(i = 0; i < n_unlocked_customizations; i++) { 97 | printf("CSAV001CST Customization %d: %s\n", i, unlocked_customizations[i]->customization_asset_path); 98 | } 99 | 100 | 101 | // Inventory customizations 102 | n_unlocked_inventory_customization_parts = profData->n_unlocked_inventory_customization_parts; 103 | unlocked_inventory_customization_parts = profData->unlocked_inventory_customization_parts; 104 | for(i = 0; i < n_unlocked_inventory_customization_parts; i++) { 105 | printf("CSAV001CST Inventory Customization %d: hash %x\n", i, unlocked_inventory_customization_parts[i]->customization_part_hash); 106 | } 107 | 108 | // Decorations 109 | n_unlocked_crew_quarters_decorations = profData->n_unlocked_crew_quarters_decorations; 110 | unlocked_crew_quarters_decorations = profData->unlocked_crew_quarters_decorations; 111 | for(i = 0; i < n_unlocked_crew_quarters_decorations; i++) { 112 | printf("CSAV001CST Decoration %d: %s\n", i, unlocked_crew_quarters_decorations[i]->decoration_item_asset_path); 113 | } 114 | 115 | // Guardian Rank 116 | guardian_rank_obj = profData->guardian_rank; 117 | rank_rewards = guardian_rank_obj->rank_rewards; 118 | n_rank_rewards = guardian_rank_obj->n_rank_rewards; 119 | printf("CSAV001GRD Available tokens: %d\n", guardian_rank_obj->available_tokens); 120 | printf("CSAV001GRD Number of rank rewards: %d\n", guardian_rank_obj->n_rank_rewards); 121 | printf("CSAV001GRD Guardian rank value: %d\n", guardian_rank_obj->guardian_rank); 122 | printf("CSAV001GRD Guardian rank XP: %d\n", guardian_rank_obj->guardian_experience); 123 | printf("CSAV001GRD Guardian rank random rewards seed: %d\n", guardian_rank_obj->guardian_reward_random_seed); 124 | printf("CSAV001GRD Guardian rank new experience: %d\n", guardian_rank_obj->new_guardian_experience); 125 | for(i = 0; i < n_rank_rewards; i++) { 126 | printf("CSAV001GRD Reward %s has %d tokens\n", rank_rewards[i]->reward_data_path, rank_rewards[i]->num_tokens); 127 | } 128 | 129 | 130 | // Rooms 131 | n_unlocked_crew_quarters_rooms = profData->n_unlocked_crew_quarters_rooms; 132 | unlocked_crew_quarters_rooms = profData->unlocked_crew_quarters_rooms; 133 | 134 | // Vault Cards 135 | 136 | vcData = profData->vault_card; 137 | printf("CSAV001VCD Last active Vault Card ID: %d\n", vcData->last_active_vault_card_id); 138 | printf("CSAV001VCD Seed for today: %d\n", vcData->current_day_seed); 139 | printf("CSAV001VCD Seed for this week: %d\n", vcData->current_week_seed); 140 | numVcPrevs = vcData->n_vault_card_previous_challenges; 141 | vcPrev = vcData->vault_card_previous_challenges; 142 | for(i = 0; i < numVcPrevs; i++) { 143 | printf("CSAV001VCD Previous challenge %d:\n", i); 144 | printf("CSAV001VCD Seed: %d, ID: %d\n", vcPrev[i]->previous_challenge_seed, vcPrev[i]->previous_challenge_id); 145 | } 146 | 147 | vcRewards = vcData->vault_card_claimed_rewards; 148 | numVcRewards = vcData->n_vault_card_claimed_rewards; 149 | for(i = 0; i < numVcRewards; i++) { 150 | printf("CSAV001VCD Reward (card) %d:\n", i); 151 | printf("CSAV001VCD Card ID: %d\n", vcRewards[i]->vault_card_id); 152 | printf("CSAV001VCD Experience on card: %d\n", vcRewards[i]->vault_card_experience); 153 | printf("CSAV001VCD Vault Card chests available: %d\n", vcRewards[i]->vault_card_chests); 154 | printf("CSAV001VCD Vault Card chests opened: %d\n", vcRewards[i]->vault_card_chests_opened); 155 | printf("CSAV001VCD Spent keys: %d\n", vcRewards[i]->vault_card_keys_spent); 156 | } 157 | 158 | oak_save__profile__free_unpacked(profData, NULL); 159 | return 0; 160 | } 161 | -------------------------------------------------------------------------------- /ProtoToProfile.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include "OakSave.pb-c.h" 5 | #include "OakProfile.pb-c.h" 6 | #include "OakShared.pb-c.h" 7 | #include "FileTranslator.h" 8 | 9 | #define FILESIZE_LIMIT 9000000 10 | #define OUTPUT_EXTENSION ".edited.sav" 11 | 12 | extern struct Save save_t; 13 | int saveMode; 14 | FILE* inFile; 15 | char* outFileName; 16 | FILE* outFile; 17 | FILE* origFile; 18 | uint8_t* protoData; 19 | int inFileLen; 20 | uint8_t* protoData; 21 | 22 | int main(int argc, char** argv) { 23 | saveMode = 2; 24 | printf("CSAV001CNV Save to Protocol Buffer Data Translation Program (for profile saves)\n"); 25 | if(argc < 3) { 26 | fprintf(stderr, "CSAV001ABN Incorrect number of arguments: input.proto, original.sav, (optional) platform code\n"); 27 | exit(1); 28 | } 29 | if(argc > 3) { 30 | printf("CSAV001CNV using user-specified platform...\n"); 31 | saveMode = atoi(argv[3]); 32 | } 33 | 34 | inFile = fopen(argv[1], "r"); 35 | if(inFile == NULL) { 36 | fprintf(stderr, "CSAV001ABN Failed to open input file.\n"); 37 | exit(1); 38 | } 39 | outFileName = malloc(strlen(argv[1]) + strlen(OUTPUT_EXTENSION)); 40 | strcpy(outFileName, argv[1]); 41 | strcat(outFileName, OUTPUT_EXTENSION); 42 | printf("CSAV00100I Output file = %s\n", outFileName); 43 | 44 | origFile = fopen(argv[2], "r"); 45 | if(origFile == NULL) { 46 | fprintf(stderr, "CSAV001ABN Failed to open original file.\n"); 47 | exit(1); 48 | } 49 | 50 | outFile = fopen(outFileName, "w"); 51 | if(outFile == NULL) { 52 | fprintf(stderr, "CSAV001ABN Failed to open output file (read-only file system or bad DDNAME?)\n"), 53 | exit(1); 54 | } 55 | 56 | 57 | fseek(inFile, 0, SEEK_END); 58 | inFileLen = ftell(inFile); 59 | fseek(inFile, 0, SEEK_SET); 60 | protoData = malloc(inFileLen); 61 | if(!protoData) { 62 | printf("CSAV001ABD OUT OF MEMORY.\n"); 63 | exit(420); 64 | } 65 | fread(protoData, inFileLen, sizeof(uint8_t), inFile); 66 | fclose(inFile); 67 | printf("CSAV001CNV Input protobuf file length: %d\n", inFileLen); 68 | writeSave(origFile, outFile, protoData, inFileLen, saveMode); 69 | printf("CSAV001CNV Execution complete\n"); 70 | return 0; 71 | } 72 | 73 | -------------------------------------------------------------------------------- /ProtoToSave.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include "OakSave.pb-c.h" 5 | #include "OakProfile.pb-c.h" 6 | #include "OakShared.pb-c.h" 7 | #include "FileTranslator.h" 8 | 9 | #define FILESIZE_LIMIT 9000000 10 | #define OUTPUT_EXTENSION ".edited.sav" 11 | 12 | extern struct Save save_t; 13 | int saveMode; 14 | FILE* inFile; 15 | char* outFileName; 16 | FILE* outFile; 17 | FILE* origFile; 18 | uint8_t* protoData; 19 | int inFileLen; 20 | 21 | int main(int argc, char** argv) { 22 | saveMode = 1; 23 | printf("CSAV001CNV Save to Protocol Buffer Data Translation Program\n"); 24 | if(argc < 3) { 25 | fprintf(stderr, "CSAV001ABN Incorrect number of arguments: input.proto, original.sav, (optional) platform code\n"); 26 | exit(1); 27 | } 28 | if(argc > 3) { 29 | printf("CSAV001CNV using user-specified platform...\n"); 30 | saveMode = atoi(argv[3]); 31 | } 32 | inFile = fopen(argv[1], "r"); 33 | if(inFile == NULL) { 34 | fprintf(stderr, "CSAV001ABN Failed to open input file.\n"); 35 | exit(1); 36 | } 37 | outFileName = malloc(strlen(argv[1]) + strlen(OUTPUT_EXTENSION)); 38 | strcpy(outFileName, argv[1]); 39 | strcat(outFileName, OUTPUT_EXTENSION); 40 | printf("CSAV00100I Output file = %s\n", outFileName); 41 | 42 | origFile = fopen(argv[2], "r"); 43 | if(origFile == NULL) { 44 | fprintf(stderr, "CSAV001ABN Failed to open original file.\n"); 45 | exit(1); 46 | } 47 | 48 | outFile = fopen(outFileName, "w"); 49 | if(outFile == NULL) { 50 | fprintf(stderr, "CSAV001ABN Failed to open output file (read-only file system or bad DDNAME?)\n"), 51 | exit(1); 52 | } 53 | 54 | fseek(inFile, 0, SEEK_END); 55 | inFileLen = ftell(inFile); 56 | fseek(inFile, 0, SEEK_SET); 57 | protoData = malloc(inFileLen); 58 | if(!protoData) { 59 | printf("CSAV001ABD OUT OF MEMORY.\n"); 60 | exit(420); 61 | } 62 | fread(protoData, inFileLen, sizeof(uint8_t), inFile); 63 | fclose(inFile); 64 | printf("CSAV001CNV Input protobuf file length: %d\n", inFileLen); 65 | writeSave(origFile, outFile, protoData, inFileLen, saveMode); 66 | printf("CSAV001CNV Execution complete\n"); 67 | return 0; 68 | } 69 | 70 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | HackerSmacker's CSave - Borderlands 3 Save Editor 2 | By using this software, you agree to the terms and conditions 3 | specified in the LICENSE file. Failure to comply with the terms 4 | and conditions may result in an arrangement of issues. As such, 5 | don't violate the license. 6 | 7 | ----->>> LOOK <<<----- 8 | READ THE MANUAL FIRST. IT'S IN POSTSCRIPT AND PDF FORMAT (and now text format!). 9 | 10 | VERY FREQUENTLY ASKED QUESTIONS: 11 | Q. How can I download this? 12 | A. Download a binary for your machine from the build_win64/linux64/bsd64 folder. 13 | 14 | Q. What's with all of the CSAV001xxxy format messages? Do you work at IBM or something? 15 | A. %FAQ_ANS_WRGCPY Wrong company. No, I don't work at DEC either. 16 | It has to do with the history of CSave. Open the manual and scroll down to the bottom if you're curious. 17 | 18 | FREQUENTLY ASKED QUESTIONS: 19 | Q. What is this? 20 | A. It's a BL3 save editor. 21 | 22 | Q. Where can I download it for Windows? 23 | A. The build_win64 folder. 24 | 25 | Q. How do I import items? 26 | A. You can't, well not yet at least. I am currently re-working the code to make it more reliable. 27 | 28 | Q. Does it have a point-and-click GUI? 29 | A. Sorry, no. Command-line only. However, there is a ncurses-based "GUI" and it's CSaveGUI. 30 | 31 | Q. How can I contact you? 32 | A. File a bug report if it's bad, or message HackerSmacker#8496 on Discord. 33 | 34 | ---- VERY IMPORTANT, IF YOU DON'T READ ANYTHING ELSE READ THIS: ---- 35 | Open and read manual.pdf! 36 | Print the manual: 37 | lpr -P printername manual.ps (BSD/Linux) 38 | lp -d printername manual.ps (System V) 39 | print /queue=printername manual.ps (OpenVMS) 40 | print /D:printername manual.pdf (Windows) 41 | -------------------------------------------------------------------------------- /ReadSaveHeader.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include "FileTranslator.h" 4 | 5 | #define FILESIZE_LIMIT 2000000 6 | 7 | extern struct Save save_t; 8 | FILE* inFile; 9 | 10 | int main(int argc, char** argv) { 11 | printf("CSAV001RSH Read Save Header utility\n"); 12 | if(argc < 2) { 13 | printf("CSAV001ABN Incorrect number of arguments (specify an input file)\n"); 14 | exit(1); 15 | } 16 | inFile = fopen(argv[1], "r"); 17 | 18 | readSaveHeader(inFile); 19 | printf("CSAV001RSH Execution complete\n"); 20 | return 0; 21 | } 22 | 23 | -------------------------------------------------------------------------------- /SaveConvert.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include "OakSave.pb-c.h" 5 | #include "OakProfile.pb-c.h" 6 | #include "OakShared.pb-c.h" 7 | #include "FileTranslator.h" 8 | 9 | #define FILESIZE_LIMIT 2000000 10 | 11 | FILE* outFile; 12 | FILE* inFile; 13 | 14 | struct Save saveIn_t; 15 | struct keyValuePair* kvpIn_t; 16 | 17 | struct Save saveOut_t; 18 | struct keyValuePair* kvpOut_t; 19 | 20 | 21 | int main(int argc, char** argv) { 22 | int payloadStart; 23 | int processedLen; 24 | int pc_in = 0; 25 | int pc_out = 0; 26 | int i; 27 | printf("CSAV001SCA Binary Save Conversion Program\n"); 28 | if(argc < 4) { 29 | printf("CSAV001ABN Incorrect number of arguments! SaveConvert in.sav out.sav platformcode_in platformcode_out\n"); 30 | exit(1); 31 | } 32 | inFile = fopen(argv[1], "r"); 33 | if(inFile == NULL) { 34 | printf("CSAV001ABN File not found\n"); 35 | exit(1); 36 | } 37 | outFile = fopen(argv[2], "w"); 38 | if(outFile == NULL) { 39 | printf("CSAV001ABN Failed to open output file (read-only file system or bad DDNAME?)\n"), 40 | exit(1); 41 | } 42 | pc_in = atoi(argv[3]); 43 | pc_out = atoi(argv[4]); 44 | 45 | 46 | 47 | printf("CSAV001SCA Reading file...\n"); 48 | saveIn_t.header = malloc(4); 49 | fread(saveIn_t.header, sizeof(char), 4, inFile); 50 | fread(&saveIn_t.sg_version, sizeof(int32_t), 1, inFile); 51 | fread(&saveIn_t.pkg_version, sizeof(int32_t), 1, inFile); 52 | fread(&saveIn_t.engine_major, sizeof(int16_t), 1, inFile); 53 | fread(&saveIn_t.engine_minor, sizeof(int16_t), 1, inFile); 54 | fread(&saveIn_t.engine_patch, sizeof(int16_t), 1, inFile); 55 | fread(&saveIn_t.engine_build, sizeof(uint32_t), 1, inFile); 56 | fread(&saveIn_t.build_id_length, sizeof(int32_t), 1, inFile); 57 | saveIn_t.build_id = malloc(saveIn_t.build_id_length); 58 | fread(saveIn_t.build_id, sizeof(char), saveIn_t.build_id_length, inFile); 59 | fread(&saveIn_t.fmt_version, sizeof(int32_t), 1, inFile); 60 | fread(&saveIn_t.fmt_count, sizeof(int32_t), 1, inFile); 61 | kvpIn_t = malloc(saveIn_t.fmt_count * sizeof(struct keyValuePair)); 62 | for(i = 0; i < saveIn_t.fmt_count; i++) { 63 | kvpIn_t[i].guid = malloc(16); 64 | fread(kvpIn_t[i].guid, sizeof(char), 16, inFile); 65 | fread(&kvpIn_t[i].entry, sizeof(int32_t), 1, inFile); 66 | } 67 | fread(&saveIn_t.sg_type_len, sizeof(int32_t), 1, inFile); 68 | saveIn_t.sg_type = malloc(saveIn_t.sg_type_len); 69 | fread(saveIn_t.sg_type, sizeof(char), saveIn_t.sg_type_len, inFile); 70 | fread(&saveIn_t.remaining_data_len, sizeof(int32_t), 1, inFile); 71 | payloadStart = ftell(inFile); 72 | saveIn_t.remaining_data = malloc(saveIn_t.remaining_data_len); 73 | fread(saveIn_t.remaining_data, sizeof(char), saveIn_t.remaining_data_len, inFile); 74 | 75 | printf("CSAV001SCA Input save information:\n"); 76 | printf("CSAV001SCA Header: %s\n", saveIn_t.header); 77 | printf("CSAV001SCA SG version: %d\n", saveIn_t.sg_version); 78 | printf("CSAV001SCA Package version: %d\n", saveIn_t.pkg_version); 79 | printf("CSAV001SCA Engine version: %d.%d.%d\n", saveIn_t.engine_major, saveIn_t.engine_minor, saveIn_t.engine_patch); 80 | printf("CSAV001SCA Build ID length: %d\n", saveIn_t.build_id_length); 81 | printf("CSAV001SCA Build ID: %s\n", saveIn_t.build_id); 82 | printf("CSAV001SCA Custom format version: %d\n", saveIn_t.fmt_version); 83 | printf("CSAV001SCA Custom format count: %d\n", saveIn_t.fmt_count); 84 | //for(i = 0; i < saveIn_t.fmt_count; i++) { 85 | // printf("Custom format %d: GUID: %x, entry %d\n", i, kvp_t[i].guid, kvp_t[i].entry); 86 | //} 87 | printf("CSAV001SCA Save type length: %d\n", saveIn_t.sg_type_len); 88 | printf("CSAV001SCA Save type: %s\n", saveIn_t.sg_type); 89 | printf("CSAV001SCA Payload start position: %d\n", payloadStart); 90 | printf("CSAV001SCA Payload length: %d\n", saveIn_t.remaining_data_len); 91 | 92 | if(pc_in == 1) { 93 | processedLen = decryptSave(saveIn_t.remaining_data, 0, saveIn_t.remaining_data_len); 94 | } 95 | else if(pc_in == 2) { 96 | processedLen = decryptProfile(saveIn_t.remaining_data, 0, saveIn_t.remaining_data_len); 97 | } 98 | else if(pc_in == 3) { 99 | processedLen = decryptSave_PS4(saveIn_t.remaining_data, 0, saveIn_t.remaining_data_len); 100 | } 101 | else if(pc_in == 4) { 102 | processedLen = decryptProfile_PS4(saveIn_t.remaining_data, 0, saveIn_t.remaining_data_len); 103 | } 104 | if(pc_in == 7) { 105 | processedLen = decryptSave(saveIn_t.remaining_data, 0, saveIn_t.remaining_data_len); 106 | } 107 | else if(pc_in == 8) { 108 | processedLen = decryptProfile(saveIn_t.remaining_data, 0, saveIn_t.remaining_data_len); 109 | } 110 | 111 | 112 | saveOut_t = saveIn_t; 113 | kvpOut_t = kvpIn_t; 114 | 115 | 116 | if(pc_out == 1) { 117 | saveOut_t.build_id = "OAK-PATCHWIN641-118"; 118 | } 119 | else if(pc_out == 2) { 120 | saveOut_t.build_id = "OAK-PATCHWIN641-118"; 121 | } 122 | else if(pc_out == 3) { 123 | saveOut_t.build_id = "OAK-PADPS41-31"; 124 | } 125 | else if(pc_out == 4) { 126 | saveOut_t.build_id = "OAK-PADPS41-31"; 127 | } 128 | else if(pc_out == 7) { 129 | saveOut_t.build_id = "OAK-PATCHDIESEL0-200"; 130 | } 131 | else if(pc_out == 8) { 132 | saveOut_t.build_id = "OAK-PATCHDIESEL0-200"; 133 | } 134 | 135 | 136 | printf("CSAV001SCA Output save information:\n"); 137 | printf("CSAV001SCA Header: %s\n", saveOut_t.header); 138 | printf("CSAV001SCA SG version: %d\n", saveOut_t.sg_version); 139 | printf("CSAV001SCA Package version: %d\n", saveOut_t.pkg_version); 140 | printf("CSAV001SCA Engine version: %d.%d.%d\n", saveOut_t.engine_major, saveOut_t.engine_minor, saveOut_t.engine_patch); 141 | printf("CSAV001SCA Build ID length: %d\n", saveOut_t.build_id_length); 142 | printf("CSAV001SCA Build ID: %s\n", saveOut_t.build_id); 143 | printf("CSAV001SCA Custom format version: %d\n", saveOut_t.fmt_version); 144 | printf("CSAV001SCA Custom format count: %d\n", saveOut_t.fmt_count); 145 | //for(i = 0; i < saveOut_t.fmt_count; i++) { 146 | // printf("Custom format %d: GUID: %x, entry %d\n", i, kvpOut_t[i].guid, kvpOut_t[i].entry); 147 | //} 148 | printf("CSAV001SCA Save type length: %d\n", saveOut_t.sg_type_len); 149 | printf("CSAV001SCA Save type: %s\n", saveOut_t.sg_type); 150 | printf("CSAV001SCA Payload start position: %d\n", payloadStart); 151 | printf("CSAV001SCA Payload length: %d\n", saveOut_t.remaining_data_len); 152 | 153 | if(pc_out == 1) { 154 | processedLen = encryptSave(saveOut_t.remaining_data, 0, saveOut_t.remaining_data_len); 155 | } 156 | else if(pc_out == 2) { 157 | processedLen = encryptProfile(saveOut_t.remaining_data, 0, saveOut_t.remaining_data_len); 158 | } 159 | else if(pc_out == 3) { 160 | processedLen = encryptSave_PS4(saveOut_t.remaining_data, 0, saveOut_t.remaining_data_len); 161 | } 162 | else if(pc_out == 4) { 163 | processedLen = encryptProfile_PS4(saveOut_t.remaining_data, 0, saveOut_t.remaining_data_len); 164 | } 165 | 166 | printf("CSAV001SCA Writing new file...\n"); 167 | fwrite(saveOut_t.header, sizeof(char), 4, outFile); 168 | fwrite(&saveOut_t.sg_version, sizeof(int32_t), 1, outFile); 169 | fwrite(&saveOut_t.pkg_version, sizeof(int32_t), 1, outFile); 170 | fwrite(&saveOut_t.engine_major, sizeof(int16_t), 1, outFile); 171 | fwrite(&saveOut_t.engine_minor, sizeof(int16_t), 1, outFile); 172 | fwrite(&saveOut_t.engine_patch, sizeof(int16_t), 1, outFile); 173 | fwrite(&saveOut_t.engine_build, sizeof(uint32_t), 1, outFile); 174 | fwrite(&saveOut_t.build_id_length, sizeof(int32_t), 1, outFile); 175 | fwrite(saveOut_t.build_id, sizeof(char), saveOut_t.build_id_length, outFile); 176 | fwrite(&saveOut_t.fmt_version, sizeof(int32_t), 1, outFile); 177 | fwrite(&saveOut_t.fmt_count, sizeof(int32_t), 1, outFile); 178 | for(i = 0; i < saveOut_t.fmt_count; i++) { 179 | fwrite(kvpOut_t[i].guid, sizeof(char), 16, outFile); 180 | fwrite(&kvpOut_t[i].entry, sizeof(int32_t), 1, outFile); 181 | } 182 | fwrite(&saveOut_t.sg_type_len, sizeof(int32_t), 1, outFile); 183 | fwrite(saveOut_t.sg_type, sizeof(char), saveOut_t.sg_type_len, outFile); 184 | fwrite(&saveOut_t.remaining_data_len, sizeof(int32_t), 1, outFile); 185 | fwrite(saveOut_t.remaining_data, sizeof(char), saveOut_t.remaining_data_len, outFile); 186 | 187 | 188 | printf("CSAV001SCA Execution complete\n"); 189 | return 0; 190 | } 191 | 192 | -------------------------------------------------------------------------------- /SaveToProto.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include "OakSave.pb-c.h" 5 | #include "OakProfile.pb-c.h" 6 | #include "OakShared.pb-c.h" 7 | #include "FileTranslator.h" 8 | 9 | #define FILESIZE_LIMIT 2000000 10 | 11 | extern struct Save save_t; 12 | int saveMode; 13 | FILE* inFile; 14 | char* outFileName; 15 | FILE* outFile; 16 | 17 | 18 | int main(int argc, char** argv) { 19 | saveMode = 1; 20 | printf("CSAV001CNV Save to Protocol Buffer Data Translation Program\n"); 21 | if(argc < 2) { 22 | printf("CSAV001ABN Incorrect number of arguments (specify an input file, optionally a platform code)\n"); 23 | exit(1); 24 | } 25 | if(argc > 2) { 26 | printf("CSAV001CNV using user-specified platform...\n"); 27 | saveMode = atoi(argv[2]); 28 | } 29 | inFile = fopen(argv[1], "r"); 30 | if(inFile == NULL) { 31 | printf("CSAV001ABN File not found\n"); 32 | exit(1); 33 | } 34 | outFileName = strcat(argv[1], ".proto"); 35 | printf("CSAV00200I Output file = %s\n", outFileName); 36 | outFile = fopen(outFileName, "w"); 37 | if(outFile == NULL) { 38 | printf("CSAV001ABN Failed to open output file (read-only file system or bad DDNAME?)\n"), 39 | exit(1); 40 | } 41 | 42 | //uint8_t inputBuffer[FILESIZE_LIMIT]; 43 | //int fileLen = read_buffer(FILESIZE_LIMIT, inputBuffer, inFile); 44 | //rewind(inFile); // Rewind the tape drive like it's 1981 45 | //printf("CSAV00200I File size = %d\n", fileLen); 46 | readSave(inFile, saveMode); 47 | fwrite(save_t.remaining_data, sizeof(char), save_t.remaining_data_len, outFile); 48 | printf("CSAV001CNV Execution complete\n"); 49 | return 0; 50 | } 51 | 52 | -------------------------------------------------------------------------------- /Scripts/README.txt: -------------------------------------------------------------------------------- 1 | CSave SaveGenerate scripts 2 | 3 | Run them like this: 4 | SaveToProto original.sav; SaveGenerate in.proto out.proto < script.script; ProtoToSave out.proto original.sav edited.sav 5 | 6 | NAME DESCRIPTION 7 | resetAllChallenges.script Set all challenges to "incomplete". 8 | proceduralName.sh Enter a filename or wildcard (ex: *.sav) for the first argument. Changes the player's name to the filename. 9 | -------------------------------------------------------------------------------- /Scripts/proceduralName.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | for f in $1; do 4 | echo $f; 5 | SaveToProto $f 6 | SaveGenerate $f.proto $f.proto.edited << =EOF= 7 | set name 8 | $f 9 | exit 10 | =EOF= 11 | ProtoToSave $f.proto.edited $f 12 | rm $f.proto $f.proto.edited 13 | done 14 | -------------------------------------------------------------------------------- /bits.txt: -------------------------------------------------------------------------------- 1 | InventoryData: 2 | 1 7 3 | 17 8 4 | 21 9 5 | 22 10 6 | 37 11 7 | 8 | InventoryBalanceData: 9 | 1 9 10 | 15 10 11 | 25 11 12 | 53 12 13 | 14 | BPVehiclePart_C: 15 | 1 6 16 | 6 7 17 | 24 8 18 | 45 9 19 | 20 | BPInvPart_Dahl_SMG_C: 21 | 1 6 22 | 16 7 23 | 24 | BPInvPart_VLA_AR_C: 25 | 1 6 26 | 7 7 27 | 28 | BPInvPart_PS_DAL_C: 29 | 1 6 30 | 31 | BPInvPart_Maliwan_SMG_C: 32 | 1 6 33 | 27 7 34 | 35 | BPInvPart_MAL_SR_C: 36 | 1 6 37 | 10 7 38 | 39 | BPInvPart_HW_COV_C: 40 | 1 6 41 | 57 7 42 | 43 | BPInvPart_SG_MAL_C: 44 | 1 6 45 | 50 7 46 | 47 | BPInvPart_Jakobs_Pistol_C: 48 | 1 6 49 | 34 7 50 | 51 | BPInvPart_ATL_AR_C: 52 | 1 6 53 | 54 | BPInvPart_AR_COV_C: 55 | 1 6 56 | 55 7 57 | 58 | BPInvPart_AR_DAL_C: 59 | 1 6 60 | 23 7 61 | 62 | BPInvPart_JAK_AR_C: 63 | 1 6 64 | 52 7 65 | 66 | BPInvPart_ATL_HW_C: 67 | 1 6 68 | 69 | BPInvPart_HW_TOR_C: 70 | 1 6 71 | 47 7 72 | 73 | BPInvPart_HW_VLA_C: 74 | 1 6 75 | 76 | BPInvPart_PS_ATL_C: 77 | 1 6 78 | 79 | BPInvPartData_EridianFabricator_C: 80 | 1 1 81 | 82 | BPInvPart_PS_MAL_C: 83 | 1 6 84 | 34 7 85 | 86 | BPInvPart_PS_VLA_C: 87 | 1 6 88 | 20 7 89 | 90 | BPInvPart_SG_JAK_C: 91 | 1 6 92 | 13 7 93 | 94 | BPInvPart_SG_TED_C: 95 | 1 6 96 | 56 7 97 | 98 | BPInvPart_SG_Torgue_C: 99 | 1 6 100 | 54 7 101 | 102 | BPInvPart_SM_TED_C: 103 | 1 6 104 | 56 7 105 | 106 | BPInvPart_SR_DAL_C: 107 | 1 6 108 | 35 7 109 | 110 | BPInvPart_SR_HYP_C: 111 | 1 6 112 | 29 7 113 | 114 | BPInvPart_SR_JAK_C: 115 | 1 6 116 | 51 7 117 | 118 | BPInvPart_VLA_SR_C: 119 | 1 6 120 | 33 7 121 | 122 | BPInvPart_GrenadeMod_C: 123 | 1 7 124 | 32 8 125 | 126 | BPInvPart_Shield_C: 127 | 1 7 128 | 14 8 129 | 130 | BPInvPart_Artifact_C: 131 | 1 6 132 | 18 7 133 | 28 8 134 | 135 | BPInvPart_ClassMod_C: 136 | 1 8 137 | 4 9 138 | 26 10 139 | 140 | BPInvPart_Tediore_Pistol_C: 141 | 1 6 142 | 143 | BPInvPart_Hyperion_Shotgun_C: 144 | 1 6 145 | 37 7 146 | 147 | BPInvPart_SM_Hyperion_C: 148 | 1 6 149 | 37 7 150 | 151 | ManufacturerData: 152 | 1 5 153 | 43 6 154 | 155 | BPInvPart_PS_COV_C: 156 | 2 6 157 | 59 7 158 | 159 | BPInvPart_PS_TOR_C: 160 | 3 6 161 | 35 7 162 | 163 | BPInvPart_AR_TOR_C: 164 | 5 6 165 | 48 7 166 | 167 | InventoryCustomizationPartData: 168 | 8 2 169 | 17 4 170 | 19 7 171 | 46 8 172 | 173 | BPInvPart_Customization_Head_C: 174 | 9 4 175 | 11 7 176 | 177 | BPInvPart_Customization_Skin_C: 178 | 11 6 179 | 12 8 180 | 181 | InventoryGenericPartData: 182 | 30 1 183 | 31 2 184 | 38 3 185 | 39 4 186 | 40 5 187 | 41 6 188 | 45 7 189 | 58 8 190 | 191 | DownloadableEntitlementPartData: 192 | 36 2 193 | 44 3 194 | 195 | ItemPoolData: 196 | 37 10 197 | 45 11 198 | 199 | OakDownloadableContentLicenseData: 200 | 41 1 201 | 42 3 202 | 49 4 203 | 60 5 204 | 205 | 206 | -------------------------------------------------------------------------------- /bl3serialformatinfo.txt: -------------------------------------------------------------------------------- 1 | first 7 bits: version 2 | next N bits: InventoryBalanceData 3 | next X bits: InventoryData 4 | next Y bits: ManufacturerData 5 | next 7 bits: level 6 | next 6 bits: how many "standard" parts there are 7 | next N bytes: parts 8 | next 4 bits: how many "generic" parts there are (i.e. anointments) 9 | next N bytes: parts 10 | next 8 bits: how many mystery data elements 11 | next 8 bits: mystery data 12 | next 4 bits: number of customization parts (obsolete) 13 | next N bytes: former trinket and customization data 14 | next 7 bits or so: padding 15 | 16 | locate InventorySerialNumberDatabase.dat in pakchunk0-*.pakchunk0-* 17 | -------------------------------------------------------------------------------- /build_win64/CSaveGUI.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/CSaveGUI.exe -------------------------------------------------------------------------------- /build_win64/CSaveMenu.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/CSaveMenu.exe -------------------------------------------------------------------------------- /build_win64/ItemLookupTest.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/ItemLookupTest.exe -------------------------------------------------------------------------------- /build_win64/ProfileGenerate.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/ProfileGenerate.exe -------------------------------------------------------------------------------- /build_win64/ProfileToProto.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/ProfileToProto.exe -------------------------------------------------------------------------------- /build_win64/ProfileUnpack.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/ProfileUnpack.exe -------------------------------------------------------------------------------- /build_win64/ProtoToProfile.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/ProtoToProfile.exe -------------------------------------------------------------------------------- /build_win64/ProtoToSave.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/ProtoToSave.exe -------------------------------------------------------------------------------- /build_win64/ReadSaveHeader.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/ReadSaveHeader.exe -------------------------------------------------------------------------------- /build_win64/SaveConvert.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/SaveConvert.exe -------------------------------------------------------------------------------- /build_win64/SaveGenerate.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/SaveGenerate.exe -------------------------------------------------------------------------------- /build_win64/SaveToProto.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/SaveToProto.exe -------------------------------------------------------------------------------- /build_win64/SaveUnpack.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/SaveUnpack.exe -------------------------------------------------------------------------------- /build_win64/cygncursesw-10.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/cygncursesw-10.dll -------------------------------------------------------------------------------- /build_win64/cygprotobuf-c-1.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/cygprotobuf-c-1.dll -------------------------------------------------------------------------------- /build_win64/cygwin1.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/build_win64/cygwin1.dll -------------------------------------------------------------------------------- /exampleSaves/examples.tar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/exampleSaves/examples.tar -------------------------------------------------------------------------------- /exampleSaves/file_index.txt: -------------------------------------------------------------------------------- 1 | ------- 19.sav ------- 2 | Build ID: OAK-PATCHWIN641-118 3 | ------- 1prof.sav ------- 4 | Build ID: OAK-PATCHWIN641-118 5 | ------- 1ps4_v100.sav ------- 6 | Build ID: OAK-PADPS41-31 7 | ------- 2profps4.sav ------- 8 | Build ID: OAK-PADPS41-31 9 | ------- 310pc.sav ------- 10 | Build ID: OAK-PATCHDIESEL-222 11 | ------- 310ps4.sav ------- 12 | Build ID: OAK-PATCHDIESEL-222 13 | ------- 69ps4_v103.sav ------- 14 | Build ID: OAK-PATCHPS40-16 15 | -------------------------------------------------------------------------------- /exampleSaves/genIndex.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | rm file_index.txt 3 | for f in *.sav; do 4 | echo "------- $f -------" >> file_index.txt; 5 | ReadSaveHeader $f | grep "Build ID: " >> file_index.txt; 6 | done 7 | -------------------------------------------------------------------------------- /exampleSaves/index.txt: -------------------------------------------------------------------------------- 1 | 19.sav 1prof.sav 1ps4_v100.sav 2profps4.sav 310pc.sav 310ps4.sav 69ps4_v103.sav examples.tar 2 | 3 | 19.sav - one of my most-played BL3 saves. Derived from a Moxsy save from around 15 Jul 2020. 4 | 1prof.sav - my profile save. 5 | 1ps4_v100.sav - a PS4 save. 6 | 2profps4.sav - a PS4 profile save. 7 | 310pc.sav - an EGS save. 8 | 310ps4.sav - a PS4 save (conversion result from 310pc.sav) 9 | 69ps4_v103.sav - another PS4 save. 10 | 11 | See also: file_index.txt 12 | 13 | -------------------------------------------------------------------------------- /manpages/CSaveGUI.1: -------------------------------------------------------------------------------- 1 | .TH CSAVEGUI 1 2 | .SH NAME 3 | CSaveGUI \- ncurses "GUI" for CSave 4 | .SH SYNOPSIS 5 | .B CSaveGUI 6 | .SH DESCRIPTION 7 | .B CSaveGUI 8 | works in a similar fasion to CSaveMenu (please check its manual entries for 9 | details on where the CSave executables should go). \fBThis program does not 10 | work on anything but Unix.\fR For a more platform-independent solution, just 11 | use CSaveMenu. This user interface is dialog-driven, and is modeled after 12 | ISPF for ease of use. 13 | -------------------------------------------------------------------------------- /manpages/CSaveMenu.1: -------------------------------------------------------------------------------- 1 | .TH CSAVEMENU 1 2 | .SH NAME 3 | CSaveMenu \- terminal-independent CSave user interface 4 | .SH SYNOPSIS 5 | .B CSaveMenu 6 | .SH DESCRIPTION 7 | .B CSaveMenu 8 | is a terminal-independent user interface for the CSave programs that should 9 | work on everything. Please note that it invokes the CSave executables as they 10 | would be in your shell path, so please check and make sure that they are. 11 | On Unix, the CSave executables should be installed in /opt/csave/bin and that 12 | directory should be added to your path. On Windows, C:\\Program Files\\CSave 13 | should be in your path. For OS/2, C:\\csave will do. For VAX/VMS or OpenVMS, 14 | DISK$USER:[CSAVE] is the default. This program does not work on VM/CMS. 15 | -------------------------------------------------------------------------------- /manpages/ItemLookupTest.1: -------------------------------------------------------------------------------- 1 | .TH ITEMLOOKUPTEST 1 2 | .SH NAME 3 | ItemLookupTest \- verify integrity of item lookup database 4 | .SH SYNOPSIS 5 | .B ItemLookupTest 6 | .SH DESCRIPTION 7 | .B ItemLookupTest 8 | will verify the integrity of the CSave item lookup database and tables. 9 | This is a command-oriented program. If you compiled CSave without the 10 | -DPRODUCTION flag, it will look in the current directory for a subdirectory 11 | named LookupTables that contains the lookup table database files. If the 12 | files do not exist, errors will be thrown. If you compiled a "production" 13 | build of CSave, it will look in the directory specified by -DPREFIX. The 14 | default is /opt/csave/LookupTables. Please check the CSave Manual for details 15 | on how to use this program. 16 | -------------------------------------------------------------------------------- /manpages/ProfileGenerate.1: -------------------------------------------------------------------------------- 1 | .TH PROFILEGENERATE 1 2 | .SH NAME 3 | ProfileGenerate \- edit profile save protobuf data 4 | .SH SYNOPSIS 5 | .B ProfileGenerate 6 | \fBinput.proto\fR \fBedited.proto\fR 7 | .SH DESCRIPTION 8 | .B ProfileGenerate 9 | allows you to edit a converted BL3 profile save. This is a command-oriented 10 | program, and works the same way as \fBSaveGenerate(1)\fR. The commands for 11 | this program are listed in the CSave manual. 12 | .SH OPTIONS 13 | .br 14 | input.proto \- the input protobuf file. Do not specify a .sav here! 15 | .br 16 | edited.proto \- the edited output file. 17 | -------------------------------------------------------------------------------- /manpages/ProfileToProto.1: -------------------------------------------------------------------------------- 1 | .TH PROFILETOPROTO 1 2 | .SH NAME 3 | ProfileToProto \- convert binary profile save file to protobuf data 4 | .SH SYNOPSIS 5 | .B ProfileToProto 6 | \fBinput.sav\fR [\fBplatform\fR] 7 | .SH DESCRIPTION 8 | .B ProfileToProto 9 | will convert your BL3 profile.sav into a protobuf data stream suitable for 10 | editing. Its functionality is very similar to \fBSaveToProto(1)\fR and uses 11 | the same platform codes. 12 | .SH OPTIONS 13 | .br 14 | input.sav \- the input save file. 15 | .br 16 | platform \- the optional platform code. 17 | -------------------------------------------------------------------------------- /manpages/ProfileUnpack.1: -------------------------------------------------------------------------------- 1 | .TH PROFILEUNPACK 1 2 | .SH NAME 3 | ProfileUnpack \- display information about a BL3 profile (in protobuf format) 4 | .SH SYNOPSIS 5 | .B SaveUnpack 6 | \fBinput.proto\fR 7 | .SH DESCRIPTION 8 | .B SaveUnpack 9 | will read through a profile save and display as much about it as it can. 10 | The output is similar to \fBSaveUnpack(1)\fR. 11 | .SH OPTIONS 12 | .br 13 | input.proto \- the input protobuf file. Do not specify a .sav here! 14 | .br 15 | -------------------------------------------------------------------------------- /manpages/ProtoToProfile.1: -------------------------------------------------------------------------------- 1 | .TH PROTOTOPROFILE 1 2 | .SH NAME 3 | ProtoToProfile \- convert protobuf data for a profile save to a BL3 save 4 | .SH SYNOPSIS 5 | .B ProtoToProfile 6 | \fBinput.proto\fR \fBdonor.sav\fR [\fBplatform\fR] 7 | .SH DESCRIPTION 8 | .B ProtoToProfile 9 | will convert an edited protobuf-format profile into a binary format 10 | profile.sav file that can be used with BL3. Like \fBProtoToSave(1)\fR, you 11 | will need to specify a donor file to use the header from. 12 | .SH OPTIONS 13 | .br 14 | input.proto \- the input profile protobuf data. 15 | .br 16 | donor.sav \- the donor save file whose header will be used for the new file. 17 | .br 18 | platform \- the optional platform code. 19 | -------------------------------------------------------------------------------- /manpages/ProtoToSave.1: -------------------------------------------------------------------------------- 1 | .TH PROTOTOSAVE 1 2 | .SH NAME 3 | ProtoToSave \- convert protobuf data to a BL3 save 4 | .SH SYNOPSIS 5 | .B ProtoToSave 6 | \fBinput.proto\fR \fBdonor.sav\fR [\fBplatform\fR] 7 | .SH DESCRIPTION 8 | .B ProtoToSave 9 | will convert edited protobuf data and a donor save file into a BL3 .sav file. 10 | The reason you must have a donor save file is to get the header from it. This 11 | program simply replaces the serialized and obsfucated data in an existing 12 | save file with protobuf data. Since the protobuf data itself does not contain 13 | any information about the platform, game version, or any such required 14 | parameters, it is dependant on an external save file to salvage a header from. 15 | .SH OPTIONS 16 | .br 17 | input.proto \- the input protobuf data. 18 | .br 19 | donor.sav \- the donor save file whose header will be used for the new file. 20 | .br 21 | platform \- the optional platform code. 22 | -------------------------------------------------------------------------------- /manpages/ReadSaveHeader.1: -------------------------------------------------------------------------------- 1 | .TH READSAVEHEADER 1 2 | .SH NAME 3 | ReadSaveHeader \- read a BL3 save's header 4 | .SH SYNOPSIS 5 | .B ReadSaveHeader 6 | \fBinput.sav\fR 7 | .SH DESCRIPTION 8 | .B ReadSaveHeader 9 | will display information about a save, including its platform and version 10 | number. This information might be useful for using \fBGenSaveHeader(1)\fR to 11 | generate a custom "stub" save file for use with the save generation programs. 12 | .SH OPTIONS 13 | .br 14 | input.sav - save file to analyze 15 | -------------------------------------------------------------------------------- /manpages/SaveConvert.1: -------------------------------------------------------------------------------- 1 | .TH SAVECONVERT 1 2 | .SH NAME 3 | SaveConvert \- convert BL3 .sav saves between platforms 4 | .SH SYNOPSIS 5 | .B SaveConvert 6 | \fBinput.sav\fR \fBoutput.sav\fR \fBplatform_in\fR \fBplatform_out\fR 7 | .SH DESCRIPTION 8 | .B SaveConvert 9 | will allow you to convert BL3 binary save files (.sav) between systems. The 10 | reason this must be done is because the XOR bitmask and headers are different 11 | for different platforms. At the moment, this program understands PC saves 12 | for Epic Games Store and Steam, and PlayStation 4 saves. Other platforms are 13 | NOT supported. Furthermore, it should be noted that \fBthis program does not 14 | produce PS4 saves that you can put on a flash drive and stick into your 15 | console.\fR For that, you will need to look elsewhere, and that is out of the 16 | scope for CSave and its documentation. For a list of platform codes, please 17 | see \fBCSaveIntro(1)\fR. 18 | .SH OPTIONS 19 | .br 20 | input.sav \- the input save file. 21 | .br 22 | output.sav \- the output save file. 23 | .br 24 | platform_in \- the platform code for the input save file. 25 | .br 26 | platform_out \- the platform code for the output save file. 27 | 28 | -------------------------------------------------------------------------------- /manpages/SaveGenerate.1: -------------------------------------------------------------------------------- 1 | .TH SAVEGENERATE 1 2 | .SH NAME 3 | SaveGenerate \- edit save protobuf data 4 | .SH SYNOPSIS 5 | .B SaveGenerate 6 | \fBinput.proto\fR \fBedited.proto\fR 7 | .SH DESCRIPTION 8 | .B SaveGenerate 9 | will allow you to edit a BL3 (converted to protobuf) player save. A similar 10 | program exists for profile saves, \fBProfileGenerate(1)\fR as well. This is 11 | a command-oriented program, but you can use shell input redirection to run 12 | a script on a save file. For a complete list of commands, please see the CSave 13 | manual as they are not documented in this reference page. 14 | .SH OPTIONS 15 | .br 16 | input.proto \- the input protobuf file. Do not specify a .sav here! 17 | .br 18 | edited.proto \- the edited output file. 19 | -------------------------------------------------------------------------------- /manpages/SaveToProto.1: -------------------------------------------------------------------------------- 1 | .TH SAVETOPROTO 1 2 | .SH NAME 3 | SaveToProto \- convert binary save file to protobuf data 4 | .SH SYNOPSIS 5 | .B SaveToProto 6 | \fBinput.sav\fR [\fBplatform\fR] 7 | .SH DESCRIPTION 8 | .B SaveToProto 9 | will convert the BL3 .sav files (found in the game save directory) into 10 | protobuf data streams suitable for editing. The "platform code" can be 11 | used to read save files from platforms besides PC. Please see CSaveInfo(1) 12 | for a list of platform codes. 13 | .SH OPTIONS 14 | .br 15 | input.sav \- the input save file. 16 | .br 17 | platform \- the optional platform code. 18 | -------------------------------------------------------------------------------- /manpages/SaveUnpack.1: -------------------------------------------------------------------------------- 1 | .TH SAVEUNPACK 1 2 | .SH NAME 3 | SaveUnpack \- display information about a BL3 save (in protobuf format) 4 | .SH SYNOPSIS 5 | .B SaveUnpack 6 | \fBinput.proto\fR 7 | .SH DESCRIPTION 8 | .B SaveUnpack 9 | will read through a save file and display as much about it as it can. This does 10 | not output JSON data, as that is not really necessary here. For a BL3 save 11 | editor that does output JSON, please see bl3-cli-saveedit. 12 | .SH OPTIONS 13 | .br 14 | input.proto \- the input protobuf file. Do not specify a .sav here! 15 | .br 16 | -------------------------------------------------------------------------------- /manual.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HackerSmacker/CSave/0576c84475fad3a0ccab58b58de9e3a4ee66eed5/manual.pdf --------------------------------------------------------------------------------