adb3nj Posted February 9, 2023 Share Posted February 9, 2023 I've just published a mod, Diamond City - You Be The Mayor. Essentially it adds the Diamond City outfield as a workshop settlement. It was a lot of work, and when it runs properly, it's great. The problem I'm having is, sometimes – and I've not been able to identify the determining factors – after enabling the mod and running the quests, I'm unable to assign settlers to tasks, or transfer them from other settlements. Nonetheless, Diamond City comes up in the list of settlement locations, and I can establish supply lines, so it seems to be semi-initialized. My assumption is the WorkshopAddLocationsScript isn't firing properly, but I can't figure out which bits aren't firing, let alone why. I've enabled Papyrus logging, but there aren't any references to the script in the log. I know something is happening though because I'm getting three debug notifications in-game, although they just flash the name of the script. (I'm also expecting more notifications – up to 17.) It's a 62-line script, so I realise I'm asking a fair amount, but might somebody be able to help me debug it? Or else help me to figure out why the workshop isn't always getting initialized properly? Link to comment Share on other sites More sharing options...
SKKmods Posted February 9, 2023 Share Posted February 9, 2023 Run the Workshop Ownership Utilities tests: Corruption, Keywords and Resources and read the associated articles. Do they tell you anything ? Link to comment Share on other sites More sharing options...
greekrage Posted February 9, 2023 Share Posted February 9, 2023 (edited) I've just published a mod, Diamond City - You Be The Mayor. Essentially it adds the Diamond City outfield as a workshop settlement. It was a lot of work, and when it runs properly, it's great. The problem I'm having is, sometimes – and I've not been able to identify the determining factors – after enabling the mod and running the quests, I'm unable to assign settlers to tasks, or transfer them from other settlements. Nonetheless, Diamond City comes up in the list of settlement locations, and I can establish supply lines, so it seems to be semi-initialized. My assumption is the WorkshopAddLocationsScript isn't firing properly, but I can't figure out which bits aren't firing, let alone why. I've enabled Papyrus logging, but there aren't any references to the script in the log. I know something is happening though because I'm getting three debug notifications in-game, although they just flash the name of the script. (I'm also expecting more notifications – up to 17.) It's a 62-line script, so I realise I'm asking a fair amount, but might somebody be able to help me debug it? Or else help me to figure out why the workshop isn't always getting initialized properly?if you are using a cell that belongs to another location thats the problem... I know its an internal cell but if im not mistaken ..the same applies as if it were a real world cell.. Look at your location data and the resources etc... Is it all there ?Also what markers have you placed and how are they linked ? Also did you add keywords to the vanilla location data or is this a separate location ? Edited February 9, 2023 by greekrage Link to comment Share on other sites More sharing options...
adb3nj Posted February 13, 2023 Author Share Posted February 13, 2023 (edited) Run the Workshop Ownership Utilities tests: Corruption, Keywords and Resources and read the associated articles. Do they tell you anything ? Hi! Yes! (Also sorry for the delay in replying – I thought I was following the thread, but apparently not.) Initially I got the following error with the WorkshopParent diagnostic: [02/13/2023 - 02:23:27AM] SKK_WUTestWorkshopListScript,error,37,37,[workshopscript <None>],[Location < (00002CEF)>],[Location < (00002CEF)>],None,None [02/13/2023 - 02:24:16AM] SKK_WUTestWorkshopListScript,PASS,38,38,[workshopscript < (2C001735)>],[Location < (00002CEF)>],[Location < (00002CEF)>],[Location < (00002CEF)>],[Cell <DiamondCityOrigin (00000FEE)>]So cell 2CEF (Diamond City – my workshop) is in there twice, first with a location missing, and then correctly. I'm guessing this is because I initially just modded DC to be a trading/supply line location, with no build area. I then ran the build-area mod over the top of the supply-line mod. However, even with save files that just have the one mod running and don't throw up any WorkshopParent error, I'm having problems initializing the workshop reliably. Anyway, your mod corrected the errant list to this: [02/13/2023 - 02:30:17AM] SKK_WUTestWorkshopListScript,PASS,37,37,[workshopscript < (FF06EEC9)>],[Location < (2D00BE8D)>],[Location < (2D00BE8D)>],[Location < (2D00BE8D)>],[Cell <SKKWUHoldingCell (2D00BE8E)>] [02/13/2023 - 02:30:18AM] SKK_WUTestWorkshopListScript,PASS,38,38,[workshopscript < (2C001735)>],[Location < (00002CEF)>],[Location < (00002CEF)>],[Location < (00002CEF)>],[Cell <DiamondCityOrigin (00000FEE)>]I.e. the broken Diamond City entry has been replaced with an SKK holding cell. With the keyword diagnostic, I'm getting: [02/13/2023 - 02:32:59AM] SKK_WUTestWorkshopKeywordsScript,[workshopscript < (2C001735)>],[Cell <DiamondCityOrigin (00000FEE)>],ERROR WorkshopParent registered workshop MapMarker [ObjectReference < (0001CAD5)>] does not match Location [Location < (00002CEF)>] MapMarkerRefType [ObjectReference < (0014536F)>] [02/13/2023 - 02:32:59AM] SKK_WUTestWorkshopKeywordsScript,[workshopscript < (2C001735)>],[Cell <DiamondCityOrigin (00000FEE)>],WARNING: WorkshopParentRegistered workshop has no WorkshopLinkAttackMarkers connected to WorkshopLinkCenter [ObjectReference < (00039432)>] Attacks may not be able to spawn actors.The second part is contained for completeness only, as settlement attacks are disabled, but the mismatched map markers would presumably create issues? Although your documentation suggests it should only create issues with the map, and I'm getting the same error even with save files where the workshop does seem to have initialized properly. Resource values are also being misreported regardless of whether the workshop seems to have initialized properly or not, but these are the discrepancies: Bad initialization: [02/13/2023 - 02:31:38AM] Unassigned Population 0 [02/13/2023 - 02:31:38AM] Unassigned Resources 64 [02/13/2023 - 02:31:38AM] [02/13/2023 - 02:31:38AM] Keyword WorkshopWorkObject 73 [02/13/2023 - 02:31:38AM] Keyword WorkshopItemKeyword 103Notably, none of the population of 9 are actually assigned. Here's a good initialization: [02/13/2023 - 03:11:11AM] Unassigned Population 8 [02/13/2023 - 03:11:11AM] Unassigned Resources 51 [02/13/2023 - 03:11:11AM] [02/13/2023 - 03:11:11AM] Keyword WorkshopWorkObject 73 [02/13/2023 - 03:11:11AM] Keyword WorkshopItemKeyword 124Not sure why the WorkshopItemKeyword number is different, or if it's important. Edited February 13, 2023 by adb3nj Link to comment Share on other sites More sharing options...
adb3nj Posted February 13, 2023 Author Share Posted February 13, 2023 if you are using a cell that belongs to another location thats the problem... I know its an internal cell but if im not mistaken ..the same applies as if it were a real world cell.. Look at your location data and the resources etc... Is it all there ?Also what markers have you placed and how are they linked ? Also did you add keywords to the vanilla location data or is this a separate location ? Everything else is there. It's on the map, and water, beds, power and defense are all fine. The population's accurate too. Only added keywords to vanilla location data. Link to comment Share on other sites More sharing options...
SKKmods Posted February 13, 2023 Share Posted February 13, 2023 This is typical of workshop location issues. (a) If you have followed a QUALITY guide to creating workshops and followed ALL the instructions then; (b) the location data is probably being overwritten by something else lower in the load order. © BUT if there is infact NOTHING else in the load order EXCEPT your mod then return to (a) and check your steps with a different "quality" guide. Link to comment Share on other sites More sharing options...
adb3nj Posted February 13, 2023 Author Share Posted February 13, 2023 This is typical of workshop location issues. (a) If you have followed a QUALITY guide to creating workshops and followed ALL the instructions then; (b) the location data is probably being overwritten by something else lower in the load order. © BUT if there is infact NOTHING else in the load order EXCEPT your mod then return to (a) and check your steps with a different "quality" guide. Thanks, I'll go through it all again when I can. Regarding registering the workshop and the quest priority though, I was under the impression that a lower number means higher priority, so a quest with priority 0 would run before everything else. Have I got that wrong? Or is 0 an exception? Link to comment Share on other sites More sharing options...
SKKmods Posted February 13, 2023 Share Posted February 13, 2023 The higher the quest priority value the more it "wins" in actor dialog stacks, thats an EZ test. And if you look at the base game all the OVERRIDE quests are priority 99/100. Zero is the default for new quests, so if that is an exception there are a crap tonne of those around competing for primacy. Link to comment Share on other sites More sharing options...
adb3nj Posted February 13, 2023 Author Share Posted February 13, 2023 Okay, I wonder if that's the issue with my mod then. I've checked the map marker reference that was throwing up the conflict error and it was just a reference to an unused location (South Fens Tower), so I've deleted that. Haven't had a chance to check if it makes a difference in game yet, but I can't imagine it would. I'm guessing if I go to the Boston Airport settlement and run your keyword diagnostic, I'd get a similar error relating to the Prydwyn map marker. Link to comment Share on other sites More sharing options...
SKKmods Posted February 13, 2023 Share Posted February 13, 2023 All documented clearly in (16.2) MULTIPLE MAP MARKERS But map markers are not your issue. Its Location location location. Link to comment Share on other sites More sharing options...
Recommended Posts