Ideas

LittleSimBe's avatar
LittleSimBe
New Spectator
2 days ago
Status:
Reviewed

[DU] Servo Module Picker Locks Game When Only One Module Is Available

Tested with NO mods and a freshly repaired game on ver1.118.257.1020

At Enhancement Level 2, a Servo unlocks its first Behavior Module. However, the immediately available Module Picker interaction requires two active modules to confirm and offers no cancel option. As a result, the picker window stays open and locks the game.

<I c="TraitTypePickerSuperInteraction" i="interaction" m="traits.trait_type_picker_interaction" n="picker_HumanoidRobot_BehaviorModule_Add_Limited_2" s="221273">
...
  <V n="picker_dialog" t="object_picker">
    <U n="object_picker">
      <L n="dialog_options">
        <E>DISABLE_CLOSE_BUTTON</E>
        <E>DISABLE_PICKER_CLOSE_BUTTON</E>
      </L>
      <V n="icon" t="enabled">
        <V n="enabled" t="participant">
          <U n="participant">
            <L n="participant_type">
              <E>TargetSim</E>
            </L>
          </U>
        </V>
      </V>
      <V n="max_selectable" t="static_count">
        <U n="static_count">
          <T n="exclude_previously_selected">False</T>
          <T n="number_selectable">2</T>
        </U>
      </V>
      <T n="min_choices">1</T>
      <T n="min_selectable">2</T>
    </U>
  </V>
...
</I>

Edit By crinrict: Added pack tag to title.

2 Comments

  • I believe there's a flaw in how the picker interaction handles whitelist checks.

    The two-module picker only makes sense when more than two modules are available. At Enhancement Level 4, the Servo unlocks a third module, which is when the interaction is needed for the first time and should appear (this is also stated in the info text when reaching lvl4).

    Therefore, it would make sense to remove the testglobals whitelist entries for the following traits:
    <T>219912<!--trait_Humanoid_Robots_EnhancementLevel_2--></T>
    <T>219913<!--trait_Humanoid_Robots_EnhancementLevel_3--></T> 

    <I c="TraitTypePickerSuperInteraction" i="interaction" m="traits.trait_type_picker_interaction" n="picker_HumanoidRobot_BehaviorModule_Add_Limited_2" s="221273">
    ...
      <L n="test_globals">
        <V t="sim_info">
    ...
        </V>
        <V t="buff">
    ...
        </V>
        <V t="identity">
    ...
        </V>
        <V t="trait">
          <U n="trait">
            <E n="subject">TargetSim</E>
            <L n="whitelist_traits">
    ...
            </L>
          </U>
        </V>
        <V t="trait">
          <U n="trait">
            <L n="blacklist_traits">
              <T>219910<!--trait_Humanoid_Robots_EnhancementLevel_10--></T>
              <T>219919<!--trait_Humanoid_Robots_EnhancementLevel_9--></T>
              <T>219917<!--trait_Humanoid_Robots_EnhancementLevel_7--></T>
              <T>219918<!--trait_Humanoid_Robots_EnhancementLevel_8--></T>
              <T>219916<!--trait_Humanoid_Robots_EnhancementLevel_6--></T>
              <T>219915<!--trait_Humanoid_Robots_EnhancementLevel_5--></T>
            </L>
            <E n="subject">TargetSim</E>
          </U>
        </V>
        <V t="trait">
          <U n="trait">
            <E n="subject">TargetSim</E>
            <L n="whitelist_traits">
             <T>219914<!--trait_Humanoid_Robots_EnhancementLevel_4--></T>
    --->>>   <T>219912<!--trait_Humanoid_Robots_EnhancementLevel_2--></T>  <<<---  TAKE THESE OUT
    --->>>   <T>219913<!--trait_Humanoid_Robots_EnhancementLevel_3--></T>  <<<---  TAKE THESE OUT
            </L>
          </U>
        </V>
        <V t="trait">
          <U n="trait">
            <E n="subject">TargetSim</E>
            <L n="whitelist_traits">
    ...
            </L>
          </U>
        </V>
      </L>
      <E n="trait_type">ROBOT_MODULE</E>
    </I>