Jump to content

Creating A Settlement Shooting Range


Recommended Posts

I am creating another settlement for my settlement mod. It is a military settlement and I would like to include a shooting range for my soldiers. I want to assign them to the range (in workshop mode) where they will spend the working hours shooting, then they will go off duty like everyone else before turning in for the night. I looked at the supermutant who is firing at targets, located in Big Johns Scrapyard, in the Creation Kit. I see that there is a target marker that is linked to a x-marker (with an associated keyword) and then the supermutant is linked to the x-marker (with an associated keyword). So what I would like is to have some type of settler resource object (example a vendor store but I would like to substitute a vault mat as the nif file) that is linked to a target marker (down range), where I can assign a settler (like I would for a guard post or vendor store) so they can utilize the range. A vendor object would be be needed I suppose to be able to include a work schedule with the workshop script? I want to have this included in my mod internally (no other additional mod). Does anyone know how to accomplish this task? Thank you.

Link to comment
Share on other sites

Hi, sorry I'm not a modder so I can't help you but your idea sound super cool. Good luck on creating the mod. I hope to see it released some day :D .

I always want to make a BOS military settment myself and having a working shooting range is exactly what I want.

Link to comment
Share on other sites

Seen DMPTargetPracticePackage [PACK:001AE397] ?

Wanted meself and still can't happen to experiment with it.

 

May grab CC Settlement Ambush Kit for a ready solution, think it has assignable shooting range already (?).

Link to comment
Share on other sites

aaaah, it's alive! Exciting to make it work. If want, can post esp.

What is "vendor object" btw.?

 

Very simple, still the core part is Package, was unsure, coz had bad luck with custom packages previously. It only requires one linked ref in fact - Target (work object), shooting position can be picked up randomly from nearby markers (e.g. Traffic cones) by Find procedure. Shedule as desired, should have main condition Subject.HasLinkedRef(AssignedActorLinkKeyword). "AssignedActorLinkKeyword" is placeholder (and prop name below), actual kw may be left DMP_TargetPractise_Target or made any custom.

 

Next is to make a new work object. It should have WorkshopObjectScript with AssignedActorLinkKeyword property set - important part, game handles all the work here (work object links its worker to itself OnLoad, using this link kw - no need to worry) - and this lets the package know, when the actor is reassigned to other job.

 

Next is... well, that's all actually. One thing left is to attach the package to worker, can be done in different ways, simplest (and worst) is to patch WorkshopParent quest. On pc there's much more freedom. For ps4 i made it by casting a spell, which adds the worker into a custom StartGameEnabled quest's RefCollAlias upon contact with the assigned Target object. Quest must have higher priority, than WorkshopParent. Work obj must be Furn in this case, to provide OnActivate spell casting properly. Worker is removed from alias on timeout, but even if so, will get in contact with assigned obj later anyway and update the package stack (all handled by default ws packages here).

 

Kind of fishing rod or fish? idk, there's unlimited space for other implementations still, possibly, have done it all in a dumbest way.

If i manage to bring working Magnolia's mic into settlements, can die happy.

 

PS. Why in the name of digital gods Actor keeps running custom alias package, when my custom quest is stopped and reset???

 

PPS. Oh, vendor object... Did you actually mean smth like giving a "ticket" to settler at a vending stand? And then he goes into shooting range area and takes his place accordingly? Hm, can be.

Edited by hereami
Link to comment
Share on other sites

aaaah, it's alive! Exciting to make it work. If want, can post esp.

What is "vendor object" btw.?

 

Very simple, still the core part is Package, was unsure, coz had bad luck with custom packages previously. It only requires one linked ref in fact - Target (work object), shooting position can be picked up randomly from nearby markers (e.g. Traffic cones) by Find procedure. Shedule as desired, should have main condition Subject.HasLinkedRef(AssignedActorLinkKeyword). "AssignedActorLinkKeyword" is placeholder (and prop name below), actual kw may be left DMP_TargetPractise_Target or made any custom.

 

Next is to make a new work object. It should have WorkshopObjectScript with AssignedActorLinkKeyword property set - important part, game handles all the work here (work object links its worker to itself OnLoad, using this link kw - no need to worry) - and this lets the package know, when the actor is reassigned to other job.

 

Next is... well, that's all actually. One thing left is to attach the package to worker, can be done in different ways, simplest (and worst) is to patch WorkshopParent quest. On pc there's much more freedom. For ps4 i made it by casting a spell, which adds the worker into a custom StartGameEnabled quest's RefCollAlias upon contact with the assigned Target object. Quest must have higher priority, than WorkshopParent. Work obj must be Furn in this case, to provide OnActivate spell casting properly. Worker is removed from alias on timeout, but even if so, will get in contact with assigned obj later anyway and update the package stack (all handled by default ws packages here).

 

Kind of fishing rod or fish? idk, there's unlimited space for other implementations still, possibly, have done it all in a dumbest way.

If i manage to bring working Magnolia's mic into settlements, can die happy.

 

PS. Why in the name of digital gods Actor keeps running custom alias package, when my custom quest is stopped and reset???

 

PPS. Oh, vendor object... Did you actually mean smth like giving a "ticket" to settler at a vending stand? And then he goes into shooting range area and takes his place accordingly? Hm, can be.

 

 

A 'vendor object' would be a form that you can assign a settler to...like a store. Another one would be a guard post. I think you referred to them a 'work objects'?

 

This is for a PC.

 

I was thinking of using a vault mat as the firing position. The firing position would be linked to the 'UseweaponTargetMarker'; there is a keyword used between the firing position and the target marker via 'Linked ref' (DMP_targetpractice_target) . In the workshop mode, you could assign a settler to the firing position, They would move to and take up a position there and start firing at the target.

 

The vault mat/firing position would be the 'work object' with the 'workobjectscript'. I would not have the script set for 24 hours so the settler would go to bed at night. I also think the firing postion needs the keyword (DMP_targetpractice_standingmarker)???

 

This is how I was going to approach this problem to start with.

Link to comment
Share on other sites

Well, made it for own liking and understanding, also will do "direct" variation later somewhen, since they can fit different environment setup, but if doesn't look as a possible and simple working solution, which can be relatively easy "reversed" (swap Target and Position objects handling), then i explained badly, perhaps.

 

Still, thankful for original post - reminded me, that i wanted this, like that... : )

 

PS. Btw, Work24Hours var is not single reason. If any work object has Safety resource AV (which i've added, naturally...), the worker is marked as IsGuard and will run WorkshopGuard package (no sleep), when outside custom topmost package hours.

Edited by hereami
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...