the Sim Settlements forums!

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

Tutorial Multiple Activations / Activation Wheel

Whisper

Well-Known Member
Patreon Supporter
Community Rockstar
Verified Builder
Vault Librarian
Messages
1,218
Basics of the topic, more fleshing out to be done later (particularly with shots from the Creation Kit).

Prior, it has been noted that there can be no more than three activation options on an object. These being:

1/ the default activation on the object (Search for workshops, Craft for workbenches, Talk for settlers, etc)

2/ up to two (2) more activation options are possible

2a/ a hard-coded second option, Transfer for Workshops and Workbenches (defaults)

2b/ the Track option on beds/plants/settlers of Workshop Plus, Whats Your Name from WYN, etc

2c/ the combination of two mods, each adding a single option - so that Tracking and Whats Your Name can both have activations on a settler (the order they appear is determined by load-order and when the perks are given to the player)

3/ adding a 4th activation option causes all to disappear

3a/ the Armor Workbench has 2 options normally, you can add a third:
7AB46321-B2FB-418E-A8BA-41339B13CF6F.png

3b/ adding a fourth causes all to disappear (“Use” appears to be a game-engine default and the equivalent of “Craft”):
2E1B00D5-ED87-4DA1-999B-EEBEBB57F44F.png

4/ adding yet another activation - taking the total to five (5) - causes the game engine to bring up options in the dialogue wheel:
27D1949F-ED11-44FE-A8DF-64DDF0867D0C.png

4a/ a better illustration by numbering the options:
36B25C13-8ECA-4C28-86E5-542E3F5AE042.png

4b/ adding yet more numbered activations demonstrates how they are overridden:
EF43E3F4-C73B-4C32-B5D9-4AD8EDEF493A.png

4c/ this implies that the Use option will always stay at the bottom of the wheel, everything else starts at the top and cycles clockwise, overriding each other in order.

4d/ note that the hard-coded game option “Transfer” has disappeared. If you want that, you’ll have to emulate that with an activation of your own - or have some means of disabling several activations so that the game defaults return.

More testing needed.
 
Last edited:

Whisper

Well-Known Member
Patreon Supporter
Community Rockstar
Verified Builder
Vault Librarian
Messages
1,218
Multiple Activations / Activation Wheel - while in Workshop mode.

While in Workshop mode all of the normal activation options disappear. This means that you cannot talk to/trade with settlers, ask them their name, etc. Instead other options appear: to assign them to work objects, supply lines, move over there, pick up/scrap/store items, etc.

The regular activation options can be brought back while in Workshop mode by adding more activations to the object (do this upon entering Workshop mode, remove upon exiting Workshop mode). Again these appear in the Activation Wheel. When they appear the default workshop activations seem to remain, though appear to be unusable (TEST MORE) - the wheel also shows:
4CB479C9-9E42-4856-A644-3F6AA835538A.jpeg
Note for PC users: when the Activation Wheel is shown the mouse becomes “sticky” and turning is difficult. This is because the Activation Wheel overrides the turning/direction options in Workshop mode in favor of selecting the Activation options. This issue does not occur on XBox.

TODO: Investigate disabling the mouse for selecting dialogue options on the PC.

TODO: Investigate the interaction of the Activation Wheel with custom dialogue interfaces like Full Dialogue Interface and Extended Dialogue Interface. (With XDI might there be several items - a scrollable list - of activations possible?)

When the Activation Wheel is visible some Workshop mode actions are not possible. For instance, you cannot pick up this plant or bed to move/scrap/store them:
1DEB40B1-0D26-434F-AFEF-5C2C74D3831D.png
4D236505-9A04-47AF-BDEF-D9A2CB8EA490.jpeg
The solution is to include Hide/Disable option/s in the wheel, so that the object can be dealt with normally. If the Activation Wheel is temporarily hidden, when the object is picked up in build-mode the Activation Wheel does not return until the object is placed down once more.

Because the Activation Wheel includes the default option, you can do things in Workshop mode that you couldn’t normally. Like trading with a settler:
98AD8EF6-0892-4828-A31E-FFA13DBF8AE0.jpeg
Or even harvesting crops:
80BF750A-C886-43A1-BDEE-5ACDAE00BFC4.png
7229B5D8-308A-414B-8088-7EA0C69D5B31.png
(Note that once harvested the option is blank, though the Activation Wheel is still there.)
 

Whisper

Well-Known Member
Patreon Supporter
Community Rockstar
Verified Builder
Vault Librarian
Messages
1,218
Cycling Activation Wheel - non-workshop mode.

High-level pseudocode/general concept. (TODO: Concept mod with cycling options. Pictures from the CK showing how things are set up.)

Parameters:
* the object already has a single default activation
* it requires 4 extra activation options to show the Wheel
* option #2 is not shown (only 1, 3-5, optionally others)
* 8 options are desired (in addition to the Default and Cycle options)

Layout of options:
Code:
         Cycle
           ^
Option B < + > Option A
           v
     Default Option
* Global value to switch alt-activations off/on (Cycle_On, default 0.0)
* Holotape to toggle the above
* Global value to determine which pair of options are currently available (Cycle_Active, default 0.0)

Perk Activation options:
* Invisible
* Cycle
* Option 0A
* Option 0B
* Option 1A
* Option 1B
* Option 2A
* Option 2B
* Option 3A
* Option 3B

Condition functions:
* Global Cycle_On == 1.0 (all the above)
* Global Cycle_Active:
** Option 0A & B - Cycle_Active == 0.0
** Option 1A & B - Cycle_Active == 1.0
** Option 2A & B - Cycle_Active == 2.0
** Option 3A & B - Cycle_Active == 3.0

Code (each time the Cycle option is selected):
Code:
Cycle_Active.SetValue(Cycle_Active.GetValue() + 1.0)
If Cycle_Active.GetValue() > 3.0
  Cycle_Active.SetValue(0.0)
EndIf
Notes:
* If an odd number of activators is desired then the “Option A” or “Option B” for one of the cycles should be blank. Possibly set it to “Disable”, setting Cycle_On to 0.0 and leaving the entire set of cycling options disabled until re-enabled.
* A perk can have multiple Activation entry points.
* A perk for a cycle-group can have a full set of activations for multiple objects. Best to keep them exclusively for a single item (easier to comprehend/maintain).
 
Last edited:

Whisper

Well-Known Member
Patreon Supporter
Community Rockstar
Verified Builder
Vault Librarian
Messages
1,218
Cycling Activation Wheel - Workshop mode.

This is done in much the same way as the non-Workshop mode, with some differences:

1/ since you only need 4 activation options for the Activation Wheel to appear in Workshop mode, the Invisible option above is not required

2/ due to the “stickiness” of the mouse and the requirement to use Workshop mode options (move, store, scrap, assign to work objects/supply lines) you need a “Hide (10 secs)” option

3/ for situations where you need to do several things and 10 seconds time is too short, you need a “Disable” option

4/ the perk/s should be added to the player upon entering Workshop mode and removed upon exiting Workshop mode

Setting up a Hide option:
Code:
; disable the cycling
Cycle_On.SetValue(0.0)

; use a different timer number for different perks
settimer(10, 5)
Deal with the timer:
Code:
Event OnTimer(int aiTimerID)
  ; make certain it is the correct timer
  If aiTimerID == 5
    ; turn the cycle back on
    Cycle_On.SetValue(1.0)
  EndIf
EndEvent
If you want to permanently disable the cycle, set Cycle_On to 0.0 - the player can toggle it back on in the holotape.
Code:
; disable until re-enabled via holotape
Cycle_On.SetValue(0.0)
If you want the cycle re-enabled upon going into Workshop mode again, set the Cycle_Active to 2000.0 and re-set it to 0.0 when going into workshop mode once more.
Code:
; disable until re-enter workshop mode
Cycle_Active.SetValue(2000.0)
(The number chosen is deliberately ridiculously high in case the modder keeps adding cycle functions and forgets to up the number upon reaching it.)
 
Last edited:

Whisper

Well-Known Member
Patreon Supporter
Community Rockstar
Verified Builder
Vault Librarian
Messages
1,218
Cycling Activation Wheel with Custom Activator.

With a custom activator object you can use the default option for the cycling effect: “E) Cycle”. This might change to the engine default “E) Use” when in the Activation Wheel state.

If no Hide option is required, then the Activator can have three options per cycle. Alternatively the Hide/Disable options can be available somewhere in the options cycle.

The previously-described 5+ activations for non-workshop mode and 4+ activations for workshop mode apply.
 

Markustay

New Member
Messages
9
Interesting.

1) In that first set of observations you gave, I realized the easiest workaround for the transfer command is to have it repeat as every third command, and thus, it will change positions but never move off the wheel (if redundant commands are possible).
2) Does the wheel always pop-up (vanilla game engine), or is that something created by Workshop Framework?
3) You speak of a timer, and my mind went in that direction as well. Were you thinking in terms of hovering over an object (trader, resource, etc.) and then another set of choices would be given? (Trade/Harvest/whatever)
4) Does this work in the same way as dialogue trees? Would it be possible to just have the four choices, that lead to other choices, or would that become too cumbersome? Because you would really only have three choices again, and a 'back' option.

I was a big user of mods that dynamically add settlements, like C.A.M.P. & Conquest, until I realize what that does to the Workshop Parent most of the time. Heck, More than half the settlement mods on the Nexus do that (and I spend a lot time tinkering with them to fix them properly). But the one good thing that comes out of that experience is you learn a LOT of work-arounds for stuff, and you also get a good feel of how the Workshop system actually works under-the-hood. That being said, Conquest had this weird scripting thing where it took a while to connect to the 'network' of workshops, so even when you had Provisioners set up, there was a delay of a few minutes before it would kick you out of WS mode and then put you right back in, but this time connected to larger network of linked WS's, rather than just the local one. I bring this up because sometimes I would do something real quick, leave that settlement, be fairly far-away from the settlement... and that script would kick-in and pop me into WS mode, in the middle of nowhere, and I would still be able to interact with NPCs, etc. Heck, it happened SO many times while I was using a crafting bench, which made it hard to read the text. So YEAH, timers work, even unintentionally because of lag, and you can wind up with two totally separate sets of interaction boxes on your screen. Also, the normal kick-out would come into play, and I'd only have a few seconds like that, unless I was in a settlement (either the original, at a WB, or even if I ran to another close one). Things get weird at that point.
 

Whisper

Well-Known Member
Patreon Supporter
Community Rockstar
Verified Builder
Vault Librarian
Messages
1,218
I have a proof-of-concept, will get into working on it soon(tm). Mostly because I need to fix something in an XBox mod of mine that’s been broken since May(!) and I’ve been head-deep in other stuff instead.

It could be set up like a dialogue tree, it depends. I have a list of things that I’d like to try for xBox users - just need the time to test and see how it works.
 

Markustay

New Member
Messages
9
Man, was my commenting here earlier serendipitous...
Okay, so I have another 'must have' mod that is now bumping-heads with Workshop Framework. It too adds a third option to the Workshop & Workbenches. Here's my thought: Can I crack-open that other mod, make a copy of that command-pop-up (essentially duplicating the command the mod already adds), and your discovery here will kick-in, and I will have BOTH commands from both mods available? ('New' option I added was just a dummy to force the wheel to appear)
 

Whisper

Well-Known Member
Patreon Supporter
Community Rockstar
Verified Builder
Vault Librarian
Messages
1,218
It should be possible to make a "dummy" custom mod that you can include in the mix. What mod is it and what does it do?
 
Top