zeye Posted June 23, 2013 Share Posted June 23, 2013 Hey guys, I'd like to make some weapons accessible to other classes, and I have zero idea how. I cant seem to find what keeps them segregated in the core ini file so please help me. Much appreciation to anyone who can lend a hand. Thanks. -Zeye Link to comment Share on other sites More sharing options...
Amineri Posted June 23, 2013 Share Posted June 23, 2013 In the DGC.ini it is the weapon's properties that determine which classes can equip the weapon (for the most part). The class/weapon property identifiers are:eWP_Sniper, eWP_Assault, eWP_Heavy There are also eWP_Support and eWP_Rifle, but in the vanilla game these properties don't do anything. Also please bear in mind that these properties do double duty. eWP_Sniper makes the weapon get the close-range aim penalty. eWP_Assault makes the weapon get the long range aim penalty and extra short range aim bonus. I'm not certain what would happen if 2 or more weapon properties were given to the same weapon. I have an experimental mod that changes the loadout requirements (being testing in Long War and Merciless now). This is what Yzax is using to make all weapons be equippable by any class (I made the eWP_AnyClass property take precedence). The upk function that controls whether an item can be equipped is in XComStrategyGame.upk, in XGStorage.IsClassEquippable. The vanilla game version of this function is a little bit hacked up trying to accomodate the Heavy classes aversion to pistols. Link to comment Share on other sites More sharing options...
zeye Posted June 23, 2013 Author Share Posted June 23, 2013 Thanks a bunch bro! I'm thinking of making the assault rifle an all class weapon. I was also thinking of making the rocket-launcher a support weapon as well (yes I know, its the heavies' thing, but just wanted it for personal use). Would there be some trick to do this or would it be like all the other weapons? Link to comment Share on other sites More sharing options...
Amineri Posted June 23, 2013 Share Posted June 23, 2013 The Rocket Launcher has a fair bit of special code to handle it. For starters, there has to be a second large item slot made available in order to equip it. This is currently tied to the soldier being of the Heavy class (I've modded it in my game to test having the FireRocket perk). The other issue is the pistol slot. It may not look it, but the pisto slot is handled completely differently from the 2nd Large Item slot that the Rocket Launcher goes in. I know anUser experimented with making the Rocket Launcher a small item and giving it the eWP_Pistol property, which makes it equippable generally in the pistol slot of any soldier. This is probably the easiest way to make it work. The major side effect is that the Rocket Launcher will be equipped to the pistol attachment point on the armor mesh (right hip) instead of at the back. If you want the Rocket Launcher to be only a Support class weapon (and not Heavy?) then some more extensive changes are required. If you'd like to try them out "a la carte" (I haven't tested them much in isolation), here are a pair of hex changes that change the class requirements: Alter XGFacility_Lockers.GetLockerItem to pass class-embedded weapon property information to IsClassEquippable Vanilla original hex code: 01 2D 00 00 AB 1F 00 00 00 00 00 00 FC 2C 00 00 00 00 00 00 00 00 00 00 01 2D 00 00 00 00 00 00 75 01 00 00 06 30 00 00 91 03 00 00 61 02 00 00 0F 35 AA 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 0F 35 A9 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 19 1B 23 27 00 00 00 00 00 00 16 26 00 7D 40 00 00 00 1B CC 0F 00 00 00 00 00 00 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 16 14 2D 35 A8 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 1B E1 14 00 00 00 00 00 00 48 00 2D 00 00 00 FF 2C 00 00 16 07 D6 01 9A 38 3A 00 01 2D 00 00 38 3A 24 00 16 07 2F 01 72 19 1B F4 02 00 00 00 00 00 00 16 09 00 B2 27 00 00 00 01 B2 27 00 00 00 FF 2C 00 00 16 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 27 06 D3 01 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 82 9A 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 2C 3F 16 18 23 00 F2 19 00 FF 2C 00 00 0A 00 0A 45 00 00 00 1B 1F 11 00 00 00 00 00 00 16 28 16 16 07 D3 01 2D 35 A7 2C 00 00 AB 2C 00 00 00 00 00 FD 2C 00 00 0F 35 A6 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 24 05 06 CE 02 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 81 19 1B 23 27 00 00 00 00 00 00 16 47 00 76 40 00 00 00 1B 33 14 00 00 00 00 00 00 19 00 FF 2C 00 00 0A 00 91 45 00 00 00 1B B5 0E 00 00 00 00 00 00 16 38 3D 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 16 16 07 CE 02 2D 35 A7 2C 00 00 AB 2C 00 00 00 00 00 FD 2C 00 00 0F 35 A6 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 19 1B 23 27 00 00 00 00 00 00 16 28 00 7A 40 00 00 00 1B 90 10 00 00 00 00 00 00 38 3D 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 16 07 7C 03 82 2D 35 A7 2C 00 00 AB 2C 00 00 00 00 00 FD 2C 00 00 18 2C 00 77 2E 97 FE FF FF 19 1C AE FD FF FF 16 09 00 30 FB FF FF 00 01 30 FB FF FF 2A 16 16 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 81 19 2E 97 FE FF FF 19 1C AE FD FF FF 16 09 00 30 FB FF FF 00 01 30 FB FF FF 0A 00 82 FF FF FF 00 2D 01 82 FF FF FF 16 04 00 FD 2C 00 00 04 3A FE 2C 00 00 53 SHIV Loadout 1.0 hex code: (virtual 0x349) 01 2D 00 00 AB 1F 00 00 00 00 00 00 FC 2C 00 00 00 00 00 00 00 00 00 00 01 2D 00 00 00 00 00 00 75 01 00 00 06 30 00 00 49 03 00 00 61 02 00 00 0F 35 AA 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 0F 35 A9 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 19 1B 23 27 00 00 00 00 00 00 16 26 00 7D 40 00 00 00 1B CC 0F 00 00 00 00 00 00 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 16 14 2D 35 A8 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 1B E1 14 00 00 00 00 00 00 48 00 2D 00 00 00 FF 2C 00 00 16 07 D8 01 9A 38 3A 00 01 2D 00 00 38 3A 24 00 16 07 2F 01 72 19 1B F4 02 00 00 00 00 00 00 16 09 00 B2 27 00 00 00 01 B2 27 00 00 00 FF 2C 00 00 16 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 27 06 94 01 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 82 9A 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 2C 3F 16 18 23 00 F2 19 00 FF 2C 00 00 0A 00 0A 45 00 00 00 1B 1F 11 00 00 00 00 00 00 16 28 16 16 07 D5 01 19 00 FF 2C 00 00 0A 00 30 45 00 00 00 1B 1B 14 00 00 00 00 00 00 16 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 27 06 55 02 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 81 19 1B 23 27 00 00 00 00 00 00 16 47 00 76 40 00 00 00 1B 33 14 00 00 00 00 00 00 19 00 FF 2C 00 00 0A 00 91 45 00 00 00 1B B5 0E 00 00 00 00 00 00 16 38 3D 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 16 16 07 D5 02 19 00 FF 2C 00 00 0A 00 30 45 00 00 00 1B 1B 14 00 00 00 00 00 00 16 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 81 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 2C 0E 16 16 04 00 FD 2C 00 00 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 04 3A FE 2C 00 00 53 new hex for subclasses: (virtual 0x35D) 01 2D 00 00 AB 1F 00 00 00 00 00 00 FC 2C 00 00 00 00 00 00 00 00 00 00 01 2D 00 00 00 00 00 00 75 01 00 00 06 30 00 00 5D 03 00 00 61 02 00 00 0F 35 AA 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 0F 35 A9 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 19 1B 23 27 00 00 00 00 00 00 16 26 00 7D 40 00 00 00 1B CC 0F 00 00 00 00 00 00 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 16 14 2D 35 A8 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 1B E1 14 00 00 00 00 00 00 48 00 2D 00 00 00 FF 2C 00 00 16 07 D8 01 9A 38 3A 00 01 2D 00 00 38 3A 24 00 16 07 2F 01 72 19 1B F4 02 00 00 00 00 00 00 16 09 00 B2 27 00 00 00 01 B2 27 00 00 00 FF 2C 00 00 16 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 27 06 94 01 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 82 9A 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 2C 3F 16 18 23 00 F2 19 00 FF 2C 00 00 0A 00 0A 45 00 00 00 1B 1F 11 00 00 00 00 00 00 16 28 16 16 07 D5 01 19 00 FF 2C 00 00 0A 00 30 45 00 00 00 1B 1B 14 00 00 00 00 00 00 16 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 27 06 FA 02 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 81 19 1B 23 27 00 00 00 00 00 00 16 6C 00 76 40 00 00 00 1B 33 14 00 00 00 00 00 00 35 2F FF FF FF 7D FA FF FF 00 00 35 B4 F9 FF FF 74 FA FF FF 00 01 19 00 FF 2C 00 00 09 00 EC 44 00 00 00 01 EC 44 00 00 38 3D 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 16 16 07 FA 02 19 00 FF 2C 00 00 0A 00 30 45 00 00 00 1B 1B 14 00 00 00 00 00 00 16 14 2D 35 A7 2C 00 00 AB 2C 00 00 00 01 00 FD 2C 00 00 81 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 35 C5 02 00 00 C8 02 00 00 00 00 48 00 2D 00 00 2C 0E 16 16 04 00 FD 2C 00 00 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 04 3A FE 2C 00 00 53 --------------------------------------------------- Rewrite XGStorage.IsClassEquippable to use class-embedded weapon property information to determine what items are equippable original hex:(690 file) header: 78 40 00 00 AB 1F 00 00 00 00 00 00 75 40 00 00 00 00 00 00 00 00 00 00 78 40 00 00 00 00 00 00 4F 00 00 00 4F 0A 00 00 46 03 00 00 B2 02 00 00 body: 07 84 00 84 84 84 84 84 9A 38 3A 00 77 40 00 00 38 3A 24 50 16 18 12 00 9A 38 3A 00 77 40 00 00 38 3A 24 4C 16 16 18 12 00 9A 38 3A 00 77 40 00 00 38 3A 24 4F 16 16 18 12 00 9A 38 3A 00 77 40 00 00 38 3A 24 4E 16 16 18 12 00 9A 38 3A 00 77 40 00 00 38 3A 24 51 16 16 18 12 00 9A 38 3A 00 77 40 00 00 38 3A 24 52 16 16 04 27 07 B5 00 9B 35 B9 02 00 00 C8 02 00 00 01 00 1B 09 15 00 00 00 00 00 00 38 3A 00 77 40 00 00 4A 16 26 16 04 27 07 0E 01 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 38 3A 00 77 40 00 00 2C 05 16 05 78 40 00 00 00 00 78 40 00 00 0A FD 00 24 00 0A 02 01 24 04 0A 09 01 24 03 04 27 0A FF FF 04 28 07 B1 01 9A 38 3A 00 78 40 00 00 38 3A 24 02 16 07 AF 01 84 84 84 84 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 38 3A 00 77 40 00 00 2C 08 16 18 12 00 9A 38 3A 00 77 40 00 00 38 3A 24 55 16 16 18 12 00 9A 38 3A 00 77 40 00 00 38 3A 24 58 16 16 18 12 00 9A 38 3A 00 77 40 00 00 38 3A 24 4C 16 16 18 12 00 9A 38 3A 00 77 40 00 00 38 3A 24 4D 16 16 04 27 06 B1 01 04 28 07 E3 01 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 38 3A 00 77 40 00 00 2C 03 16 04 27 07 15 02 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 38 3A 00 77 40 00 00 2C 02 16 04 27 05 78 40 00 00 00 00 78 40 00 00 0A 5E 02 24 04 04 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 38 3A 00 77 40 00 00 2C 06 16 06 39 03 0A 94 02 24 03 04 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 38 3A 00 77 40 00 00 2C 04 16 06 39 03 0A CA 02 24 05 04 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 38 3A 00 77 40 00 00 2C 05 16 06 39 03 0A 00 03 24 02 04 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 38 3A 00 77 40 00 00 2C 08 16 06 39 03 0A 36 03 24 01 04 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 38 3A 00 77 40 00 00 2C 07 16 06 39 03 0A FF FF 04 28 04 3A 76 40 00 00 53 new hex: (244 file, virtual 0x2EE) header: 78 40 00 00 AB 1F 00 00 00 00 00 00 75 40 00 00 00 00 00 00 00 00 00 00 78 40 00 00 00 00 00 00 4F 00 00 00 4F 0A 00 00 EE 02 00 00 B2 02 00 00 body: 2C 07 40 00 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 38 3A 00 77 40 00 00 2C 02 16 04 9B 38 3A 00 78 40 00 00 2C 02 16 07 72 00 19 1B C8 27 00 00 00 00 00 00 16 17 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 38 3A 00 77 40 00 00 2C 03 16 04 27 07 88 00 9A 38 3A 00 77 40 00 00 38 3A 24 03 16 04 27 07 9E 00 9A 38 3A 00 77 40 00 00 38 3A 24 09 16 04 27 07 B4 00 9A 38 3A 00 77 40 00 00 38 3A 24 0E 16 04 27 07 DA 00 9A 38 3A 00 78 40 00 00 2C 06 16 07 DA 00 9A 38 3A 00 77 40 00 00 2C 0F 16 04 27 07 EE 00 9A 38 3A 00 78 40 00 00 2C 00 16 04 28 04 19 1B C8 27 00 00 00 00 00 00 16 20 00 4F FF FF FF 00 1B 89 2C 00 00 00 00 00 00 38 3A 00 77 40 00 00 38 3A 00 78 40 00 00 16 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 04 3A 76 40 00 00 53 What this does it changes what information is passed to IsClassEquippable. Each soldier has a copy of the eWP_<classname> property ID stored when the soldier is given a class, but it is currently unused. This function now uses that information instead of the actual class. The IsClassEquippable function is then drastically simplified. In order of check:Pistol is equippable unless soldier has eWP_Heavy Weapon with eWP_AnyClass is equippable by any soldier Assault Rifles, Laser Rifles and Light Plasma Rifles are equippable by any soldier Plasma Assault Rifles are equippable if soldier has eWP_Assault Rookies can carry no other items Otherwise item is equippable if it has the same eWP_<classname> tag as the soldierThe easiest route to go (if I understand what you are going for) would be to keep the Heavy as the Rocket Launcher soldier (a lot of hex changes needed to pry them apart), and switch the LMG over to the Support, then rework the class perk trees as desired. With the above hex change if you change the LMG-class weapons to have eWP_Support then they will only be equippable by the Support class. Unfortunately the level-up process will still equip the Heavy soldier with an LMG, although it won't be equippable generally. Link to comment Share on other sites More sharing options...
zeye Posted June 23, 2013 Author Share Posted June 23, 2013 Hmm this is alot to process but I think I've got it. I actually only wanted the to allow the support to be able to to use it and keep the heavies use of it as-well. Im not sure how to hex (probably a big deal), and the whole "hey bro your leg now weighs 50 pounds heavier" seems a little to make-shift. I most likely will be making it a pistol but I thank you for your time and extremely helpful tips. Muffin is be shipped as we speak! Link to comment Share on other sites More sharing options...
Yzaxtol Posted June 23, 2013 Share Posted June 23, 2013 If you want full control on which of your classes use which items when you play, keep a look-out for Merciless V1.5, when it's finally released I should have managed to get All Weapons and All Items shared between all classes. It's currently in beta with the rocket still fixed on the Heavy and a few bugs with injured soldiers and the arcthrower not being wieldable. Link to comment Share on other sites More sharing options...
zeye Posted June 23, 2013 Author Share Posted June 23, 2013 I most certainly will! I'm a big fan of merciless and cant wait for the next update! I'm just a little impatient and I expect that most mods on the XCOM nexus update slowly because of the XCOM nexus's fleeting popularity. It's a real shame this game is amazing. Link to comment Share on other sites More sharing options...
Yzaxtol Posted June 23, 2013 Share Posted June 23, 2013 Nah, we update slowly because XCOM is Fu.... really hard to mod. Link to comment Share on other sites More sharing options...
zeye Posted June 23, 2013 Author Share Posted June 23, 2013 Yeah hence why this topic exists. Can't wait for that update man your mod's amazing. I cant play the game without it. Link to comment Share on other sites More sharing options...
Zybertryx Posted June 24, 2013 Share Posted June 24, 2013 (edited) Wouldn't the easiest way to make the Rocket Launcher a Support Class Only weapon without any graphical anomalies or glitches be done by renaming and retheming the Heavy Class as the Support Class and then changing the LMG (and Laser/Plasma equivs) so that it's usable by the Support Class (which is now the new "Heavy") and not by the Heavy Class (which is now the new "Support")? I'm talking about 50% of this being accomplished through in-game description (int files) - literally rename "Heavy" to "Support" and "Support" to "Heavy". So, unless there's something crucial I'm overlooking, which is quite possible, you'd only need to switch the Class allowance of the LMGs (etc) so that they're usable by (Vanilla) Supports (which, if you're following, are now "Heavies"). Then simply switch the HP, Aim and Will per rank values of the Heavy for those of the Support in the DGC.ini to preserve their progression there. As perk modification is completely painless thanks to ToolBoks, this would complete the process. This is how I'd go about it assuming an otherwise Vanilla system of 4 fixed Classes, anyhoo. I'm not certain what would happen if 2 or more weapon properties were given to the same weapon. I just gave the Assault Rifle the "AnyClass" property (replacing "Rifle") and my Snipers (and of course, Supports, Rookies and Assaults who always could anyway) could equip them but my Heavies could not. So I also gave Assault Rifles the property "Heavy" (replacing "None") and now every class can equip Assault Rifles. However, due to native code stickiness, I assume this would mean that from hereafter, without some surgery anyway, that Assault Rifles will suffer from less ammo capacity (3 shots from a full clip or 1 burst of suppression)? This actually might be exactly what my mod needs to make rookie suppression less spammable and "Ammo Conservation" both more desirable and less OP. . . this begs the question though; would Snipers who use Assault Rifles be able to use "Headshot", "Disabling Shot", "Executioner" and the other intuitively weapon-specific perks? And if so *looks to Amneri* could you lock certain perks to certain weapons (as I know you've unlocked a couple)? [Edit] Wow, this is epic. Seems that "Headshot" and "Disabling Shot" are already locked to Sniper Rifles! This is awesome! However, in case there's a perk I think should be locked to a specific weapon and isn't (like say, Flush for the LMG, Heavy Laser and Heavy Plasma) are you able to make it so? Edited June 24, 2013 by Zybertryx Link to comment Share on other sites More sharing options...
Recommended Posts