Commit Graph
100 Commits
Author SHA1 Message Date
Jan eed7164b5b Save scriptstrings per zone and not per asset since that solves all problems with multiple assets of the same zone referencing the same struct in memory that has scriptstring indices 2020-10-23 15:54:27 +02:00
Jan f8e7a10789 Also remove string reference in scriptstring callback from WeaponDumper 2020-10-23 13:35:50 +02:00
Jan 2e61f46544 Make InfoStringDumper scriptstring callback return std::string instead of const std::string& since a reference is not needed 2020-10-23 13:26:32 +02:00
Jan 99195232bb Add dumping of hideTags and noteTrackSoundMap to weapons for T6 2020-10-23 12:55:07 +02:00
Jan 991bcf6d58 Make sure that assets that use scriptstrings always have an empty scriptstring at position 0 2020-10-23 12:54:51 +02:00
Jan 3cfcfa0c5d Make sure scriptstring arrays are being reallocated when they are reusable so if it is being referenced again the scriptstring indices are the ones of the zone instead of the asset that originally loaded them 2020-10-23 12:54:18 +02:00
Jan 6cca45fc26 Add scriptstring value callback to weapon loading of t6 2020-10-23 12:52:44 +02:00
Jan 068add0eef Fix script string indices being off by one due to inserting empty script string that is not necessarly in the zone 2020-10-23 12:51:18 +02:00
Jan 7acf07a4b4 Use offsetof macro instead of fixed offset values for weaponfields of t6 2020-10-20 17:30:10 +02:00
Jan c86139b0fa Add dumping of t6 weapons 2020-10-20 12:49:20 +02:00
Jan d942c5a625 Make AbstractAssetDumper use the XAssetInfo instead of the raw asset pointer to be able to access dependencies and scriptstrings 2020-10-20 12:48:53 +02:00
Jan ab217bb1a9 Fix AddonMapEnts dumping code not including necessary headers 2020-10-19 08:29:58 +02:00
Jan fc336a1019 Add dumping of iw4 addonmapents 2020-10-18 17:41:52 +02:00
Jan 019e772cd2 Add dumping of iw4 loaded sounds 2020-10-18 17:41:14 +02:00
Jan ac022ee78a Add dumping of luminance textures from iwis 2020-10-18 17:39:22 +02:00
Jan f3afaf3110 move zoneloaderfactories in their respective game namespaces 2020-10-17 16:04:26 +02:00
Jan f0c8ffa6be move contentloader classes to their respective game namespaces 2020-10-17 15:55:19 +02:00
Jan 464f8231df IWD code style changes 2020-10-17 15:15:17 +02:00
Jan 641ee15775 Move iwi writer for version 27 in its iwi27 namespace 2020-10-17 15:00:10 +02:00
Jan 395c139681 Use map for IWD entries to speed up finding entries by name 2020-10-17 14:59:36 +02:00
Jan a1c965a4c0 Dump iw4 images 2020-10-16 15:57:39 +02:00
Jan b8b8e4c267 Implement loading of the remaining iw4 assets which are the map assets 2020-10-11 12:22:20 +02:00
Jan 133437d644 Make assets header file an input for zonecode to make sure the code is regenerated when the asset header is changed 2020-10-10 23:25:19 +02:00
Jan 4a6c73c4d9 Fix XAnim Trans, Quat2, Quat alignment 2020-10-10 23:00:53 +02:00
Jan 6baf3416d4 Fix iw4 xanim to having an unsigned bonecount instead of signed 2020-10-10 13:33:58 +02:00
Jan ba585426e9 Fix IW4 XAnimDynamicIndices to being loaded differently in trans, quat, quat2 2020-10-10 13:33:25 +02:00
Jan e0e4fc255a Fix XModel quats and trans counts not being correct in IW4 2020-10-10 11:51:10 +02:00
Jan af0dc46b31 Fix SoundAliasCustom loading for IW4 actually being loaded like const char** 2020-10-10 11:46:43 +02:00
Jan c952aacda1 Remove the zonecodegenerator requirement to reference members in a type reference because IW did nasty things in their game that require me to do so. 2020-09-16 10:18:11 +02:00
Jan 6437d8daa4 Remove SndDriverGlobals references as an asset since it is non existant for IW4 PC builds 2020-09-15 12:54:32 +02:00
Jan 906d112619 Add loading of iw4 weapondef and vehicledef assets 2020-09-15 12:51:59 +02:00
Jan 9ce71a63ae Shorten clipmap reorder command for iw4 2020-09-15 11:34:53 +02:00
Jan c515747bc0 Add loading of iw4 font and addonmapents assets 2020-09-15 11:21:46 +02:00
Jan fb93d7cb2f Add loading of iw4 assets clipmap and mapents 2020-09-15 10:44:45 +02:00
Jan 14666ed944 Dump a few iw4 assets 2020-09-09 18:40:01 +02:00
Jan 4aafbac113 Fix ZoneCode array loading overwriting pointers when an array is loaded while inside of an array of the same type 2020-09-09 16:12:20 +02:00
Jan 8778421ebb Quick code style fix 2020-09-09 16:11:21 +02:00
Jan 83d76acedc add structureddatadef loading code for iw4 2020-09-09 12:36:53 +02:00
Jan 0efff7d637 add iw4 tracerdef loading code 2020-09-09 12:08:09 +02:00
Jan 3bf47f058d Add LeaderboardDef asset loading for IW4 2020-09-09 12:03:14 +02:00
Jan b4756c3688 Add IW4 ImpactFx loading code 2020-09-09 11:58:42 +02:00
Jan ceeb1832cd Add IW4 GfxLightDef asset loading code 2020-09-09 11:54:15 +02:00
Jan 24195be273 Add Fx asset for IW4 2020-09-09 11:47:29 +02:00
Jan 9108add01d Fix XModelSurfs being entirely loaded in temp block by adding the feature to specify a block for a struct to be able to make xmodelsurfs being loaded in normal block 2020-09-09 11:47:09 +02:00
Jan bdbfb7114e Add menu loading for iw4 2020-09-08 20:52:29 +02:00
Jan 18bd0ab524 Remove empty lines in array pointer template 2020-09-08 19:20:19 +02:00
Jan c1d2ac6604 Add localize entry to iw4 and skip snddriverglobals since the asset is not loaded but is still in the asset list of fastfiles 2020-09-08 13:10:54 +02:00
Jan e7898a1f3c Fix Cubemap mipmap sizes 2020-09-08 12:34:54 +02:00
Jan d35560ccd7 Add support for loading sound assets from iw4 zones 2020-09-08 12:11:16 +02:00
Jan 79848b4631 ZoneCodeGenerator: Make arraypointer work with temp block 2020-09-08 12:01:15 +02:00
Jan b25fe9a9f7 Added iw4 assets related to materials, xmodels 2020-09-07 18:19:20 +02:00
Jan 5e8173539b Generate zone code for IW4 for the first 3 assets 2020-09-07 14:14:07 +02:00
Jan 413034f7b2 Let ZoneCodeGenerator print the size of the struct as a comment in load method 2020-09-07 12:51:49 +02:00
Jan f59cb29cb2 Fix Processor inflate not setting next input buffer 2020-09-06 18:39:00 +02:00
Jan d7096c9137 Add AuthedBlocks processor for IW4 fastfiles 2020-09-06 18:18:30 +02:00
Jan 060e5678b5 Read IW4 signed headers 2020-09-06 14:39:19 +02:00
Jan 3a69b3b0b0 ObjWriting: Use CsvWriter class for StringTables 2020-02-23 13:16:04 +01:00
Jan 4b87e9c086 ObjWriting: Add additional known hashes for fonticon aliases 2020-02-23 13:10:02 +01:00
Jan 8ec525d3d2 ObjWriting: Dump FontIcon assets as csv files
According to the asset names this seems to be their original format. however since i didn't find any examples of that asset in raw form i just tried to come up with a realistic csv style for it
2020-02-23 02:02:11 +01:00
Jan ccef1dca28 Add dumper for DDS and texture converter for reordering colors 2020-09-04 12:51:13 +02:00
Jan 362094b6f0 Update changelist about DDS image dumping 2020-02-22 02:13:05 +01:00
Jan f0c50ce943 ObjLoading: Fix not being able to load cubemaps due to wrong calculation of mipsize
Now includes the face count into the calculation which is 6 for cube maps and 1 for everything else
2020-02-22 01:53:24 +01:00
Jan 5ef1e585c6 ObjWriting: Implement writing textures as DDS files 2020-02-22 01:34:27 +01:00
Jan 000022afe9 ObjWriting: Add DDS writer basis 2020-02-19 15:54:10 +01:00
Jan b436781632 ObjWriting: Use proper extension when dumping image files 2020-02-19 15:52:07 +01:00
Jan 87d760f6d7 ObjWriting: Use configured image output format when trying to dump images 2020-02-19 15:36:49 +01:00
Jan 14593b4799 Unlinker: Do not list localized strings one by one in the zone file and do not include keyvaluepairs at all because they should be in the meta data 2020-02-19 14:45:55 +01:00
Jan f0b66f0a35 ZoneCommon: List zone content in the order it was loaded 2020-02-19 14:10:50 +01:00
Jan a7b59ea3d7 ZoneCommon: Remove unused GlobalAssetPool source file 2020-02-19 12:21:07 +01:00
Jan 9572391082 Unlinker: Make zone files creators game dependent and in the unlinker project instead of the ObjWriting component 2020-02-18 17:15:51 +01:00
Jan 992e9cea30 ZoneLoading: Properly link assets as dependencies instead of only saving the name of the dependency 2020-02-18 13:16:39 +01:00
Jan 246d74992c Unlinker: Fix not attempting to load specified zone files from arguments 2020-02-14 23:54:13 +01:00
Jan 23f77bb335 Unlinker: Make parsing specified command line arguments its own class 2020-02-14 23:40:47 +01:00
Jan f3779bac03 ObjWriting: Add dumper for GfxImage iwi files of version 27 2020-02-11 23:47:04 +01:00
Jan 6b59fcb5fe ObjCommon: Add Id to ImageFormats to be able to identify predefined formats without comparing pointers 2020-02-11 23:46:25 +01:00
Jan 7d809faf07 ObjWriting: Add method to AbstractAssetDumper for checking whether an asset should be dumped 2020-02-11 20:46:59 +01:00
Jan dd4987c2f1 ObjLoading: Fix not setting texture size on loading an image to signalize there's a valid texture object 2020-02-11 20:45:57 +01:00
Jan 80deff450d ObjLoading: Load common ipaks depending on SP/MP/ZM for every zone and make sure to not double load them 2020-02-10 23:02:44 +01:00
Jan 53b03c1fdb ObjLoading: Fix loading the wrong chunkbuffer window data when trying to shift chunkbuffer 2020-02-10 14:17:28 +01:00
Jan 76712328b2 ObjLoading: Add implementation for loading iwis of version 27 (T6) 2020-02-10 14:16:49 +01:00
Jan 43fa845839 ObjLoading: Add possibility to go back to the beginning of a IPakEntryReadStream 2020-02-09 10:01:09 +01:00
Jan 4baca81210 ObjLoading: Implement IPakEntryReadStream as a linear stream 2020-02-09 09:51:57 +01:00
Jan 7b3b527ece ObjLoading: Fix not including algorithm header even though using find_if 2020-02-09 01:27:20 +01:00
Jan eaa64665d6 ObjLoading: Fix Ipak entry size not specifying the filesize but the difference between start pos and end pos 2020-02-09 01:22:27 +01:00
Jan 345687125f ObjLoading: Fix not increasing head on reading uncompressed ipak data 2020-02-09 00:04:21 +01:00
Jan 28bc614a6d ObjLoading: Initial commit for IPak entry reading 2020-02-08 22:54:24 +01:00
Jan 91d5439f25 ObjLoading: Fix not respecting that IPak index entries specify an offset to the data section and not a file offset 2020-02-08 22:53:33 +01:00
Jan 00d7997d0a ObjLoading: Add basis for IPakEntryReadStream to read ipak entries 2020-02-08 15:55:10 +01:00
Jan 5bda400acb ObjLoading: Add basis for Iwi loading 2020-02-07 20:55:10 +01:00
Jan 589347ce08 ZoneCommon: Add Texture pointer from OAT to GfxTexture union of T6 to be able to save loaded texture data in GfxImage 2020-02-07 20:54:40 +01:00
Jan b210661ac8 Unlinker: Fix not attempting to load files from manually specified search paths 2020-02-07 20:53:41 +01:00
Jan c2b28a54be ObjCommon: Fix IPak order of hashes from name - data to data - name 2020-02-07 20:53:07 +01:00
Jan 9f8022c2ca ZoneCommon: Add GameLanguagePrefix class and save known prefixes for languages in the game object 2020-02-07 20:52:24 +01:00
Jan f73c27a7dc Premake: Add include guard to make sure dependencies do not include themselves in an infinite chain when two components depend on each other 2020-02-07 02:46:24 +01:00
Jan 55d5746650 ZoneCode: Add Action on loading a GfxImage to set the loadedSize property to 0 to indicate Texture data has not yet been loaded 2020-02-06 21:26:34 +01:00
Jan 75f6caab54 ObjCommon: Refactor classes for holding Texture information 2020-02-06 19:01:45 +01:00
Jan 63330ff908 ZoneCommon: Extract non ZoneMemory management from ZoneMemory into Utils::MemoryManager class 2020-02-05 16:52:43 +01:00
Jan b67b4ee316 ObjLoading: Add documentation for IObjLoader, ObjLoading and IWD 2020-02-04 23:48:11 +01:00
Jan b8de90a675 ObjLoading: Do not attempt to load textures that already have a loaddef 2020-02-04 19:52:23 +01:00
Jan d01f5c49a8 ZoneLoading: Add implementation for LoadImageData action:
Duplicate any ImageLoadDef that contains data, otherwise discard temporary empty loaddef
2020-02-04 19:45:45 +01:00