vac333 Posted March 8, 2016 Share Posted March 8, 2016 @VlitSI just uploaded Weaponsmith Extended. Could you take a look at what I've done for filtering the OMODs and let me know if you think something else would be more effective.From what I am seeing, you used the ma_ keyword to make the new OMODs only show up on modded guns, and then used the "GetEquipped" conditional on all the COBJs to limit them to only showing when you have the relevant weapon equipped. Barring the use of the ModdedItemHasKeyword conditional I already suggested (which, as you said, could potentially result in another keyword cap bug if used frequently)*, the only thing I can think of is maybe using FLSTs for the GetEquipped reference. Whether or not that would work depends on the way it gets treated (I'm assuming it would just check if you had one item on the list equipped, but it's possible it would require you to have them all equipped). On it's own it wouldn't be useful, but if you added more (vanilla/AWKCR added) ma_ keywords to the OMODs, used together it could allow a little more flexibility in crafting mods without running into the problem of two mods inadvertently using the same keywords. Of course, then you run into the problem of making the FLSTs. Since most mods only add a single weapon, the FLSTs would have to either be made by each person (which the majority of mod users wouldn't have a clue how to do) or would require a s***-ton of compatability patches. I guess that would work if you had a list of compiled patches on the Weaponsmith Extended page like you do on Armorsmith Extended, you would just need to add the FLST to the patch. And using the Equal to/OR for the conditional type would make it so it would still work if the person didn't have the patch with the FLST without requiring you to edit the COBJ in the patch (assuming it was made using your infrastructure/guidelines). If nothing else, the FLST idea would probably work well for armor mods, since those often have a bunch of armors, so you could have a single FLST for all of the armors made by each author. Combine that with properly vague-yet-descriptive-enough categories, and you could use the same ap_ keywords for a hundred different mods without having to craft (for instance) texture changes under the "utility" category. While your current armor system works pretty well, a "GetEquipped" conditional pointing to an FLST would allow any armor to use OMODs for different texture versions instead of having each one a separate armor, all using just a single ap_keyword. You could even re-purpose vanilla lining keyword AE replaced for that purpose, so it wouldn't add to the ap_ keyword count. Alternatively, instead of FLSTs you could use the crafting grenade idea DDproductions used for his buildable castle and flag mods (instead of checking if you have the relevant weapon, it checks if you have a certain grenade equipped, and only enables the recipies if you do). You could use either vanilla grenades or new ones (to reduce the chance of someone seeing the wrong thing because they happen to have a grenade equipped), and a set of guidelines/list of mods using the infrastructure could help reduce the chance of two mods using the exact same ma_ keywords and grenades. The advantage of this method over FLSTs is that making two mods work together "in the same list" (i.e. using the same grenade) wouldn't require any compatability patches, and if a compatability patch was needed it would just need to change the referenced grenade, so the compatibility patch wouldn't actually need to have multiple masters. The disadvantage is, of course, the need to carry different grenades for crafting (although you could, again, use "Equal to/OR" condition types so you can also mod something if you have that weapon equipped but don't have the grenade). One question: if all the mods for a weapon have the "GetEquipped" conditional, does it not show up in the workbench unless you have it equipped? If it shows up anyway, the only thing needed to make your current method perfect is a script that allows you to equip the selected weapon/armor within the workbench (like the Power Armor station does). Honesty, I don't understand why they didn't include that functionality from the beginning. I guess it would probably need to include a bit in the script that transfers an item from the workbench inventory to the player's inventory, since most of the time most of the weapons/armors that you can see are stored in the workbench (unless you cranked up the carryweight to ridiculous levels like me because you have a compulsive need to loot every single thing you can possibly loot). *I honestly don't think there would be much of an issue using that conditional. Yes, those keyword types are used for dynamic naming, but with the shear number of dn_ keywords people who include dynamic naming add to their mods I think we would have seen that keyword cap several months ago. What about using the console frame work to only have specific set batches loaded at one time?I was thinking of using this in the Player settlement mod merge I am creatingOnly problem with using the console frame work is, all the console frame work mods I see on the Nexus over write each other,if there was away, an update to console frame work to allow for plugins into the frame work instead of over writing the main file... Link to comment Share on other sites More sharing options...
Gambit77 Posted March 9, 2016 Author Share Posted March 9, 2016 One question: if all the mods for a weapon have the "GetEquipped" conditional, does it not show up in the workbench unless you have it equipped? If it shows up anyway, the only thing needed to make your current method perfect is a script that allows you to equip the selected weapon/armor within the workbench (like the Power Armor station does). Honesty, I don't understand why they didn't include that functionality from the beginning. I guess it would probably need to include a bit in the script that transfers an item from the workbench inventory to the player's inventory, since most of the time most of the weapons/armors that you can see are stored in the workbench (unless you cranked up the carryweight to ridiculous levels like me because you have a compulsive need to loot every single thing you can possibly loot). For the most part yes, the mods don't show up unless the the weapon they belong on is equipped. There is a handful of mods that are showing up on everything, but I don't think they are viable in the sense that you could actually choose them though. Their ingredient requirements when showing on the wrong weapon are listed as none. I haven't gotten a chance to do the testing to figure out what their problem is, but I suspect it has to do with them having more that one ap keyword listed in their recipes. But I still need to test that guess. Atm, it's just a small visual bug, and I've labeled the problem mods with their weapon in the name to make it obvious. Link to comment Share on other sites More sharing options...
VIitS Posted March 9, 2016 Share Posted March 9, 2016 I don't mean the mods, I meant the weapons themselves. Now that I have a little more sleep I realized that something won't show up at the workbench unless you can craft a mod for it, so that's no good. I did realize that, if you have Legendary Modifications that will show up for everything (since they don't have the conditional), so "fixing" the crafting workbench script would work greak there if you have Legendary Modiofications. I figured out the reason some mods are showing up where they shouldn't: it's not your keywords, it's your miscmods. Every single OMOD I saw showing up in the wrong place used a vanilla miscmod, and deleting that prevented it from showing up when you didn't have the relevant gun equipped. Nevermind, it's not JUST your keywords. When I moved on from testing the M82, I found that when I had the G3 equipped, I could add the G3 OMODs to the other mod-added weapons. Same when I had the G20 equipped. Which means the miscmod thing is a symptom not a cause. I noticed the same thing when working out how to remove the Gauss rifle suppressor from the game*. I'll see if I can figure out what is forming the connection. What is strange is that for some of the things, I can attach the OMOD to the wrong gun if I have the miscmod in my inventory already, but for others I can't. Yet for all of the problem OMODS, I could attach it to the wrong gun just fine if I had the weapon the problem OMODs were designed for. Some testing in game (with everything but AmromorKeywords and Weaponsmith disabled), I noticed a few other things (one of which being that some of the things I didn't have the assets for could still be added/modded in the workbench without crashing the game, no idea how): -The M82a2 has a duplicate barrel category (not at all related to the above, testing shows)-You might want to get rid of the M82 stock COBJ, since there is only one option (same with M82 magazine). If you want to keep the records so it's easier to add in if the mod ever gets updated to add options, just deleting the Created Object should work.-For some reason trying to modify the M82 receiver causes a ctd every time. Probably because I don't have all the assets downloaded, but the M82 is one of the few that I do, and it was still crashing when I got only the M82 OMODs to show up, so I don't know why it would be accessing some other asset Also, am I correct in assuming the list of keywords under the main one (i.e. the one used to determine category) in the OMODs are keywords added to the weapon from havin gthat OMOD equipped? If so, why does the AK 2047 have three "obsolete" keywords on the receiver? *Someone mentioned it not making sense, as the gauss rifle sound would be primarily due to the speed of the projectile, and that they were having trouble getting it to go away. I thought I could figure it out, and realized that one of the things you needed to remove was the miscmod connection. Link to comment Share on other sites More sharing options...
Gambit77 Posted March 13, 2016 Author Share Posted March 13, 2016 I don't mean the mods, I meant the weapons themselves. Now that I have a little more sleep I realized that something won't show up at the workbench unless you can craft a mod for it, so that's no good. I did realize that, if you have Legendary Modifications that will show up for everything (since they don't have the conditional), so "fixing" the crafting workbench script would work greak there if you have Legendary Modiofications. I figured out the reason some mods are showing up where they shouldn't: it's not your keywords, it's your miscmods. Every single OMOD I saw showing up in the wrong place used a vanilla miscmod, and deleting that prevented it from showing up when you didn't have the relevant gun equipped. Nevermind, it's not JUST your keywords. When I moved on from testing the M82, I found that when I had the G3 equipped, I could add the G3 OMODs to the other mod-added weapons. Same when I had the G20 equipped. Which means the miscmod thing is a symptom not a cause. I noticed the same thing when working out how to remove the Gauss rifle suppressor from the game*. I'll see if I can figure out what is forming the connection. What is strange is that for some of the things, I can attach the OMOD to the wrong gun if I have the miscmod in my inventory already, but for others I can't. Yet for all of the problem OMODS, I could attach it to the wrong gun just fine if I had the weapon the problem OMODs were designed for. Some testing in game (with everything but AmromorKeywords and Weaponsmith disabled), I noticed a few other things (one of which being that some of the things I didn't have the assets for could still be added/modded in the workbench without crashing the game, no idea how): -The M82a2 has a duplicate barrel category (not at all related to the above, testing shows)-You might want to get rid of the M82 stock COBJ, since there is only one option (same with M82 magazine). If you want to keep the records so it's easier to add in if the mod ever gets updated to add options, just deleting the Created Object should work.-For some reason trying to modify the M82 receiver causes a ctd every time. Probably because I don't have all the assets downloaded, but the M82 is one of the few that I do, and it was still crashing when I got only the M82 OMODs to show up, so I don't know why it would be accessing some other asset Also, am I correct in assuming the list of keywords under the main one (i.e. the one used to determine category) in the OMODs are keywords added to the weapon from havin gthat OMOD equipped? If so, why does the AK 2047 have three "obsolete" keywords on the receiver? *Someone mentioned it not making sense, as the gauss rifle sound would be primarily due to the speed of the projectile, and that they were having trouble getting it to go away. I thought I could figure it out, and realized that one of the things you needed to remove was the miscmod connection.Thanks VlitS for cracking what was causing that bug. I'll start working on the fix. As far as whatever weapon you have equipped, it's OMODs showing on other guns in the bench, that's normal. It should work that way. Whichever weapon is equipped is the weapon whose OMOD set is going to show up, no matter which of the WSE guns you're looking at. That'[s why you have to equip the one you want to mod. That's the drawback. All those guns share the same ma and ap keyword combinations on their OMODs, the GetEquipped condition is what filters in the place of individual ma keywords. If you have a miscmod in your inventory then you can use it, it'll bypass any requirements for crafting. I'll do some testing on the M82a2, I haven't actually modded it yet, so I'll test to see if it crashes for me too. I believe your understanding of secondary ap keywords in an OMOD is correct. As far as the obsolete keywords for the AK2047 I don't know, never noticed them. I'll take a look. Link to comment Share on other sites More sharing options...
VIitS Posted March 16, 2016 Share Posted March 16, 2016 Was talking to someone recently, and figured this info could be useful here as well for possible use in the AWKCR infrastructure:Here's a list of all the ap keywords in the vanilla game with no references in Fallout4.esm: http://i.imgur.com/bs2YDAH.png There's a bunch more that you could probably use. As an example, there are two ap keywords whose only vanilla use is that they are added as options to the Junkjet by the Junkjet Receiver. You could slap a name on there, and as long as all omods using that keyword have an ma keyword other than ma_junkjet or ma_CanHaveNullMuzzle they won't show up on the JunkJet. Hell, throw in an edit to the JunkJet standard Receiver OMOD (00111ffa) as part of your plugin, and you don't even have to worry about that. And that doesn't even include all the ap keywords you can use for different types of items. For instance, no vanilla power armor OMOD will have a weapon ma keyword, so you could probably reuse those just fine. Leave it with no name, and it will just show the name of the currently equipped OMOD instead. The only problem I can see with using currently unused vanilla keywords is the game would probably CTD if they deleted those keywords in a future patch and your mod referenced them, but Bethesda being Bethesda, I don't see that ever happening. They've got three ap keywords with OBSOLETE on the end of the editor ID, and I've seen several records with DeleteMe in the editor ID, so I think we are safe. Also, a list of the same for ma keywords:http://i.imgur.com/NkmMaqf.png Looking through the full list, ma_PA_ArmLeft is referenced exactly twice: for "T-51 Left Arm" and "T-51 Right Arm" :dry: (and not a single OMOD, the OMODs and all Power Armor arms all just use ma_PA_Arm). Quality work there, Bethesda. They also have 6 ma_PA_Raider keywords (one for each part) that are only used in the list of Keywords those pieces have (all OMODs just use ma_PA_Raider), and a similar set up for most of the other power armor types). It's like they added the option to use multiple MNAM keywords somewhere down the line, changed all the OMODs, and then forgot to delete the extraneous keywords. If you include edits to the relevant OMODs and PA armor ARMO records, you could free up another 30 ma keywords. No wonder the keyword cap is so close to vanilla, they threw them around like popcorn, and never bothered cleaning up the mess. Another nice feature you make known for quickly making OMODs for a new weapon are Template OMODs. The game has 171, and use the ma_Template keyword so they don't show up anywhere. No good for using on actual OMODs, but it kind-of serves as a quick tutorial on how to make different OMODs. Link to comment Share on other sites More sharing options...
mac2636 Posted March 16, 2016 Share Posted March 16, 2016 Haven't seen it mentioned but could the keyword limit also cause settlers to become invisible, similarly to robots? Or is it likely a completely different bug? Link to comment Share on other sites More sharing options...
Gambit77 Posted March 30, 2016 Author Share Posted March 30, 2016 Maybe Mac. There's been all kinds of f*#@ed up bugs popping up since the update that came with Automatron. Mod weapons turning invisible. The player character turning invisible when using a non-PA jetpack. It's getting harder and harder to troubleshoot because the problems are just getting weirder and weirder. Link to comment Share on other sites More sharing options...
fadingsignal Posted March 30, 2016 Share Posted March 30, 2016 Maybe Mac. There's been all kinds of f***ed up bugs popping up since the update that came with Automatron. Mod weapons turning invisible. The player character turning invisible when using a non-PA jetpack. It's getting harder and harder to troubleshoot because the problems are just getting weirder and weirder. My "gut" tells me it's partially the performance optimizations that are being put in. I noticed vanilla objects being occluded before they're off screen since the 1.4 update, and I haven't gotten around to even playing since the DLC was released. With the current Survival Mode beta completely blocking mods and console, it makes me wonder how bad mod compatibility is going to be with that update. Fingers crossed. Anyhow, I had a question about AWKCR crafting categories and glad I ended up in this thread. I'm about to release a new mod that is comprised of craftable "Equipment" that can be placed in the outside world (NOT Workshop objects!) and added a new category called EQUIPMENT since it doesn't really fit with AWKCR's existing weapon and armor targeted categories. Because this keyword is only used by the COBJ and not in any FormList anywhere, I thought it would be fine, but it sounds like there's a cap there as well, so it sort of answered my question. I'd like to petition AWKCR to add an EQUIPMENT category for things like computers/beacons/flares/other functional equipment. Right now the Catch-All "Other" doesn't work too well for these, as again, most things that end up there are wearable types of items. Anyway cheers, thanks for all your hard work on everything! Link to comment Share on other sites More sharing options...
mac2636 Posted March 30, 2016 Share Posted March 30, 2016 Maybe Mac. There's been all kinds of f***ed up bugs popping up since the update that came with Automatron. Mod weapons turning invisible. The player character turning invisible when using a non-PA jetpack. It's getting harder and harder to troubleshoot because the problems are just getting weirder and weirder. Thanks Gambit. Seriously man, you are paving the way for FO4 modding big time. My available free time has dropped off a cliff lately, so testing is getting more difficult (hard to get back to where my mindset was several days before). I've purposely kept Automatron off my main PC where I do most of my testing and playing. Its just not worth it to add all those new variables into my testing. I'll try to remove another big chunk of added keywords here soon to see if that makes the invisible settlers visible again. Link to comment Share on other sites More sharing options...
mac2636 Posted March 30, 2016 Share Posted March 30, 2016 Maybe Mac. There's been all kinds of f***ed up bugs popping up since the update that came with Automatron. Mod weapons turning invisible. The player character turning invisible when using a non-PA jetpack. It's getting harder and harder to troubleshoot because the problems are just getting weirder and weirder. My "gut" tells me it's partially the performance optimizations that are being put in. I noticed vanilla objects being occluded before they're off screen since the 1.4 update, and I haven't gotten around to even playing since the DLC was released. With the current Survival Mode beta completely blocking mods and console, it makes me wonder how bad mod compatibility is going to be with that update. Fingers crossed. Anyhow, I had a question about AWKCR crafting categories and glad I ended up in this thread. I'm about to release a new mod that is comprised of craftable "Equipment" that can be placed in the outside world (NOT Workshop objects!) and added a new category called EQUIPMENT since it doesn't really fit with AWKCR's existing weapon and armor targeted categories. Because this keyword is only used by the COBJ and not in any FormList anywhere, I thought it would be fine, but it sounds like there's a cap there as well, so it sort of answered my question. I'd like to petition AWKCR to add an EQUIPMENT category for things like computers/beacons/flares/other functional equipment. Right now the Catch-All "Other" doesn't work too well for these, as again, most things that end up there are wearable types of items. Anyway cheers, thanks for all your hard work on everything! Hey Fading, thanks for chiming in. Would you mind giving a little more info on your performance optimization theory. I'm not much of a modder myself, but I'm hoping to learn enough to at least provide some help and insight as to bug workarounds and or fixes. This invisible settler thing is one of the ones that frustrates me the most. Link to comment Share on other sites More sharing options...
Recommended Posts