Fallout 4

File information

Last updated

Original upload

Created by

SKKmods

Uploaded by

SKKmods

Virus scan

Safe to use

About this mod

Find, move or create workshop center, spawn, attack and caravan markers in game. Move the red WorkshopWorkbench totally safely.

Requirements
Permissions and credits
Translations
  • Spanish
  • Russian
  • French
Mirrors
Changelogs
Find, move or create workshop center, spawn, attack and caravan markers in game. Move the red WorkshopWorkbench totally safely. 


[ spawns where YOU want them ]


Install this mod at any time in any game, after leaving Vault 111 the player is given a [ .SKK Move Workshop Markers ] menu activation item in AID inventory (craft spare at the Chemlab). When activated it pops a menu:

1. Load Markers
2. Unload Markers
3. Create new attack marker
4. Remove created attack marker
5. Fix fast travel markers.
6. Make LocationCenterMarker movable
7. Create a logfile when markers are unloaded (PC only)

The [ Load Markers ] option will find the closest workshop in the active uGrids which must have a WorkshopLinkCenter marker (some mod workshops don't), otherwise you get a warning and nothing else happens.


(a) WorkshopLinkCenter also known as LocationCenterMarker is hard linked to the workshop location as a Location Reference Type, identified with a Mr Handy box titled CENTER

It is used by radiant quests for conditional Workshop picks, as a target by many AI travel (Provisioners, Patrols, Attacks) and sandbox (Settlers) packages and other game mechanics.

The marker can be made moveable in the menu incase you totally must build on top of it which can cause actor AI movement packages that target it to freeze, like provisioners and attackers. Or if it has been walled in AI movement packages that target it will teleport the actor to marker - settlement attacks are favourite for this.

A warning and option to cancel is displayed if you try to drop the marker outside of the workshop location tagged cells. Once you have moved it, set the proxy object to locked so an actor can't move it through collision. Use this function TOTALLY AT YOUR OWN RISK if you absolutely must build over or wall in this marker.


(b) WorkshopLinkSpawn if there is no separate WorkshopLinkSpawn marker (e.g. Sanctuary) a new one will be placed by the center marker so it can be moved. This is identified with an [E] grabbable/movable Traffic Cone titled SPAWN. 

There is no common standard for even base game processes to use Workshop spawning markers.  Some new settler recruitment uses WorkshopLinkSpawn and some use WorkshopLinkAttackMarker or LocationEdgeMarker. 


(c) WorkshopLinkAttackMarker should be coincidental with LocationEdgeMarker. If there is no WorkshopLinkAttackMarker (e.g. Airport)  a new one will be placed by the player so it can be moved. That or any existing markers are identified with an [ E ] grabbable/movable Traffic Cone titled ATTACK.

> Green traffic cones are used for markers that have both WorkshopLinkAttackMarker and LocationEdgeMarker tags so will be used in any attack.

> Yellow traffic cones are used for markers that only have WorkshopLinkAttackMarker tag which is used by most attacks. 

> Red traffic cones are used for markers that only have LocationEdgeMarker tag which is used by some attacks.


More new attack markers (adding both LocationEdgeMarker and and LocationEdgeMarker tags) can be created at the player and moved around. The various spawning systems which use these markers will generally pick randomly from the inventory. 

Some base game workshop or settlement attack quests use WorkshopLinkAttackMarkers some LocationEdgeMarkers and others even try WorkshopLinkSpawn. As many of the attack systems look exactly the same, this generates plenty of confusion for mod creators and players.  For the complete list of workshop markers and what they do, read the article SKK Workshop Utilities - Workshop Keyword Test https://www.nexusmods.com/fallout4/articles/2094 and refer to the Workshop Keyword Checklist table.

Of course mods do whatever they do depending on the authors knowledge and sophistication as there are no firm standards to follow.  This mod was created specifically to help make SKK Settlement Attack System which uses WorkshopLinkAttackMarkers more interesting.


Yes, but why do attackers suddenly appear in my workshop area ?

(1) There is no clear navmesh path from their spawn marker to the LocationCenterMarker which is the AI travel package destination.

(2) LocationCenterMarker has been built over so is unreachable for the AI travel package destination.

(3) If the actor spawns "off screen" unloaded outside of the 10K uGridsToLoad around the player, their AI travel package can instantly teleport to the edge of the loaded area around the player if it intersects the stright line path WHICH MAY BE INSIDE YOUR BUILD ZONE.

(4) The base game fast travel marker has an attack marker keyword and you used the fas travel mat to move it inside your settlement. There is a menu option to fix this.



(d) CaravanDestinationRefType Most base game workshop settlements have a default destination marker for trade caravans, like Carla at Sanctuary, which if built over confuses the AI travel packages. This is identified with an [E] grabbable/movable Shopping trolley titled CARAVAN. Location restrictions are unknown, but once a caravan trade post is built (unlock with [ SetStage FFBunkerHill03 500 ]) this marker is ignored.



(e) Move red Workshop Workbench (v008 onwards)

Build a [ Move Workshop Proxy ] under Build/Resources/Misc where you want to move a workshop within its own build area and activate the menu. It can be moved as many times as you like, with the option to return to its original editor placed position.

If you do not want the object appearing in your workshop build menus console [ set SKK_MWMWorkshopMoveEnabled to 0 ] 

Moving a red Workshop Workbench which is registered with WorkshopParentScript for resource production can cause all sorts of issues, so this includes checks and validations: Cell, Location and Keywords. Moving within its own cell is 100% OK. Moving within its original location should be OK. Moving to a new location that does not have the right keywords is insane and will trash your workshop arrays. To ensure all workshop resources can be detected in large workshop build areas it is best keep it as close to the center of the build area as possible. READ THIS ARTICLE to learn more.


(f) Fix fast travel markers (v012 onwards)

Several base game workshops can be connected to the wrong map marker when they initially register with WorkshopParentScript so the fast travel mat doesnt actually work. This will detect and fix: Airport connecting to Prydwen map marker, Hangmans connecting to Flagon Tunnel map marker, Homeplate connecting to Diamond city map marker.

Several base game workshops map marker fast travel spawn markers are also configured as attack markers with either LocationEdgeMarker or WorkshopLinkAttackMarker keywords so the player can fast travel directly into the middle of an attacking mob (usually Egret, Taffington, Zimonja). This dynamically tests each marker, if it has attack keywords it creates a new clean fast travel spawn marker in front of the workshop that can be moved with the fast travel mat.

Several base game workshops map marker fast travel spawn markers are outside the workshop location which can cause problems with them being found (usually Starlight, Graygarden, Castle, Warwick). This dynamically tests each marker, if it is not in the workshop location it creates a new clean fast travel spawn marker in front of the workshop that can be moved with the fast travel mat.

This is a one time scan and fix of all registered workshops, once run the option is removed from the menu.


(g) General observations

(1) All markers are map marked to help you find them. 

(2) Move or place markers anywhere that has good navmesh and good access paths for AI to detect. Avoid rocks, water and such else actors can get stuck. If there is no path, the completionist AI can teleport direct to the destination which is usually your center marker.

(3) Probably best to keep markers within 10K game units of the workshop so new actors have a good chance of spawning with 3d loaded when the player is on site. AI packages can get stuck (as if on rocks) or teleport straight to the center marker if the actor spawns with 3d unloaded.

(4) The cone/box/trolley proxy markers have physics so the player can grab and move them out of workshop mode, but other actors can collide to move them, or if placed on water they will sail away*. The actual invisible workshop marker they are linked to is only moved to follow the cone when the actual player grabs and drops them, so you may see discrepancies between the map marker on the actual invisible spawn marker and its traffic cone proxy which is sailing away.

(5) To trigger base game attacks at workshops that have population console [ cqf WorkshopParent "WorkshopParentScript.TriggerAttack" WorkshopRef NumberOfAttackers ] e.g.  [cqf WorkshopParent "WorkshopParentScript.TriggerAttack" 000250fe 4 ] or use Settlement Attack System [ >>> Attack Now ] option.

(6) This does not allow markers placed in the Creation Kit to be deleted as they are (should be) statically bound to cell locations which can cause all sorts of issues if removed. Deleting any base game object is just bad, mmmaky ?

(7) When your finished run [ Unload markers ] from the menu. If you forget, after 15 minutes of inactivity the current workshop marker selections are automatically unloaded.
 
(8) Update 005 offers an option to create a log file (on PC only) when markers unload that can be used to create console .bat files in other savegames when you have perfect marker positions. You may need to enable debug logging. Look in ...\Documents\My Games\Fallout4\Logs\Script\User (or wherever your mod manager moves stuff) for SKK_MoveWorkshopMarkers*.log files.

Spoiler:  
Show

[09/10/2020 - 12:51:13PM] SKK_MoveWorkshopMarkers_5353003 log opened (PC-64)
[09/10/2020 - 12:51:13PM] ;; [workshopscript < (000250FE)>] [Cell <SanctuaryExt (0000DD60)>] WorkshopLinkCenter
[09/10/2020 - 12:51:13PM] PRID [ObjectReference < (0004BE7A)>];
[09/10/2020 - 12:51:13PM] SetPos X -81800.125000;
[09/10/2020 - 12:51:13PM] SetPos Y 87332.406250;
[09/10/2020 - 12:51:13PM] SetPos Z 7695.283203;
[09/10/2020 - 12:51:13PM] SetAngle X 0.000000;
[09/10/2020 - 12:51:13PM] SetAngle Y -0.000000;
[09/10/2020 - 12:51:13PM] SetAngle Z 151.834015;
[09/10/2020 - 12:51:13PM] ;; [workshopscript < (000250FE)>] [Cell <SanctuaryExt (0000DD60)>] WorkshopLinkSpawn
[09/10/2020 - 12:51:13PM] PRID [ObjectReference < (FF003ABC)>];
[09/10/2020 - 12:51:13PM] SetPos X -81800.125000;
[09/10/2020 - 12:51:13PM] SetPos Y 87332.406250;
[09/10/2020 - 12:51:13PM] SetPos Z 7695.283203;
[09/10/2020 - 12:51:13PM] SetAngle X 0.000000;
[09/10/2020 - 12:51:13PM] SetAngle Y -0.000000;
[09/10/2020 - 12:51:13PM] SetAngle Z 151.834015;
[09/10/2020 - 12:51:13PM] ;; [workshopscript < (000250FE)>] [Cell <SanctuaryExt (0000DD60)>] WorkshopLinkAttackMarker
[09/10/2020 - 12:51:13PM] PRID [ObjectReference < (001AE30A)>];
[09/10/2020 - 12:51:13PM] SetPos X -85137.500000;
[09/10/2020 - 12:51:13PM] SetPos Y 94912.679688;
[09/10/2020 - 12:51:13PM] SetPos Z 8261.123047;
[09/10/2020 - 12:51:13PM] SetAngle X 0.000000;
[09/10/2020 - 12:51:13PM] SetAngle Y -0.000000;
[09/10/2020 - 12:51:13PM] SetAngle Z 53.353645;
[09/10/2020 - 12:51:13PM] ;; [workshopscript < (000250FE)>] [Cell <SanctuaryExt (0000DD60)>] WorkshopLinkAttackMarker
[09/10/2020 - 12:51:13PM] PRID [ObjectReference < (001AE309)>];
[09/10/2020 - 12:51:13PM] SetPos X -68807.898438;
[09/10/2020 - 12:51:13PM] SetPos Y 94972.117188;
[09/10/2020 - 12:51:13PM] SetPos Z 7338.394531;
[09/10/2020 - 12:51:13PM] SetAngle X 0.000000;
[09/10/2020 - 12:51:13PM] SetAngle Y -0.000000;
[09/10/2020 - 12:51:13PM] SetAngle Z 160.783264;
[09/10/2020 - 12:51:13PM] ;; [workshopscript < (000250FE)>] [Cell <SanctuaryExt (0000DD60)>] WorkshopLinkAttackMarker
[09/10/2020 - 12:51:13PM] PRID [ObjectReference < (000A3772)>];
[09/10/2020 - 12:51:13PM] SetPos X -70848.921875;
[09/10/2020 - 12:51:13PM] SetPos Y 81960.617188;
[09/10/2020 - 12:51:13PM] SetPos Z 7506.567383;
[09/10/2020 - 12:51:13PM] SetAngle X 0.000000;
[09/10/2020 - 12:51:13PM] SetAngle Y -0.000000;
[09/10/2020 - 12:51:13PM] SetAngle Z 286.834015;
[09/10/2020 - 12:51:13PM] ;; [workshopscript < (000250FE)>] [Cell <SanctuaryExt (0000DD60)>] CaravanDestinationObject
[09/10/2020 - 12:51:13PM] PRID [ObjectReference < (00245FD7)>];
[09/10/2020 - 12:51:13PM] SetPos X -79451.429688;
[09/10/2020 - 12:51:13PM] SetPos Y 90314.125000;
[09/10/2020 - 12:51:13PM] SetPos Z 7830.855957;
[09/10/2020 - 12:51:13PM] SetAngle X 0.000000;
[09/10/2020 - 12:51:13PM] SetAngle Y -0.000000;
[09/10/2020 - 12:51:14PM] SetAngle Z 229.183167;
[09/10/2020 - 12:51:14PM] PRID;
[09/10/2020 - 12:51:14PM] Log closed



Compatibility & Known Issues 

The mod has no dependencies on extenders or DLCs and does not change any existing base game scripts, assets or objects. As with 99% of SKK mods, its 100% pure new Creation Kit forms and scripts. As it does not touch any other stuff in your save-game, there will be no load order issues or mod conflicts.


Nexus user specific FAQ

(1) What about an ESL version ? NO, SKK mods will not be published in ESL format because life contains sufficient hassle.

(2) What about MCM ? NO, as 90% of SKK mod users are Xbox. If one more wafer-thin inventory item triggers your OCD distress, use the console or hotkeys.ini to pop the menu with [ cqf SKK_MWM "SKK_MWMQuestScript.MainMenu" ]

(3) With thanks to @pepperman35 for adding grabbable physics to the Mr Handy box for a movable LocationCenterMarker proxy. 


PC manual installation & removal

As this makes no changes to the base game it can be installed at any time in any game stage and has no load order considerations.

Copy  SKKMoveWorkshopMarkers.esp and  SKKMoveWorkshopMarkers  - Main.ba2 to your ...\Fallout 4\Data directory, enable in the Bethesda mod menu, mod manger or whatever.

The mod can be disabled if markers are not loaded as no scripts run, it sleeps. Any marker moves and new markers will be persistent. Only remove mods if you are happy to accept potential conflicts from load order changes in a save game. 


*******************************************************************************************
If you have read the comprehensive solution description and still need support
use the SKK Mods Discord channel discord://discord.gg/tgKNT77DC8
*******************************************************************************************