How to disable companion complaints, or how to punish them for it?

Users who are viewing this thread

Yoshi Murasaki

Knight at Arms
It's annoying listening companion complaints. They think they are in bakery and not army.

Can I disable their complaints, or somehow punish them, like whip them properly?
 
Guys;
If you know how to work with Python, You can add this (see spoiler) to module_game_menus.py of the desired module python source and compile.
(of course, If You know Python, you can put this in your own menu or anywhere you like)

## Make a copy of module_game_menus.py before You start messing with python files.
## Find "camp_action" menu.  Insert RED code between BLUE code.

 
("camp_action",0,
  "Choose an action:",
  "none",
  [
    ],
[

     
## NPC's Interaction Begin
      ("rbe_disable_NPC_interaction1",[ (eq, "$disable_npc_complaints", 0),],"Disable NPC's Interaction.",
      [
          (assign, "$disable_npc_complaints", 1),
          (jump_to_menu, "mnu_camp_action"),
        ]),
      ("rbe_enable_NPC_interaction1",[ (eq, "$disable_npc_complaints", 1),],"Enable NPC's Interaction.",
      [
          (assign, "$disable_npc_complaints", 0),
          (jump_to_menu, "mnu_camp_action"),
        ]),
## NPC's Interaction End

   
("camp_recruit_prisoners",
      [(troops_can_join, 1),
        (store_current_hours, ":cur_time"),

Option will be in "Camp" -> "Take an action Menu", and You can freely Enable or Disable Interactions while playing.
 
I'm using Diplomacy mod: 

In TWEEKMB - disable companion interaction is grayed out and not selectable.  Only " we hang deserters" is available, but I really dont want to use that, I'm a good guy.

I've searched my entire computer and there is no:  module_game_menus.py located anywhere on my computer.

I don't know how to use Python, even if I did, would it mess up the Diplomacy mod???


I'm about ready to "hang them all".  Getting sick of their *****ing.
 
After hours of reading tutorials, installing python, and working on this feature I STILL can't get the 'disable companion interaction working.

The module_game_menus.py compiles with no errors, and all the txt files show up in my mod, but the menu still doesn't appear.

This is what my py looks like -minus some of the 'camp cheat' text.  Can anyone tell me what I'm doing wrong, this... and my companions *****ing is driving me crazy.


("camp_action",0,
  "Choose an action:",
  "none",
  [
    ],
    [

        ## NPC's Interaction Begin
      ("rbe_disable_NPC_interaction1",[ (eq, "$disable_npc_complaints", 0),],"Disable NPC's Interaction.",
      [
          (assign, "$disable_npc_complaints", 1),
          (jump_to_menu, "mnu_camp_action"),
        ]),
      ("rbe_enable_NPC_interaction1",[ (eq, "$disable_npc_complaints", 1),],"Enable NPC's Interaction.",
      [
          (assign, "$disable_npc_complaints", 0),
          (jump_to_menu, "mnu_camp_action"),
        ]),
## NPC's Interaction End

      ("camp_recruit_prisoners",
      [(troops_can_join, 1),
        (store_current_hours, ":cur_time"),
        (val_sub, ":cur_time", 24),
        (gt, ":cur_time", "$g_prisoner_recruit_last_time"),
        (try_begin),
          (gt, "$g_prisoner_recruit_last_time", 0),
          (assign, "$g_prisoner_recruit_troop_id", 0),
          (assign, "$g_prisoner_recruit_size", 0),
          (assign, "$g_prisoner_recruit_last_time", 0),
        (try_end),
        ], "Recruit some of your prisoners to your party.",
      [(jump_to_menu, "mnu_camp_recruit_prisoners"),
        ],
      ),
      ("action_read_book",[],"Select a book to read.",
      [(jump_to_menu, "mnu_camp_action_read_book"),
 
Having a look at this, I noticed four commented-out sections of script in module_dialogs.py that seems to handle this the first time one complains, and shut them all up. That is if I am not mistaken. Warband v1.131. Like the first one

Code:
##  [anyone|plyr, "companion_objection_response", [
##      ],  "I prefer my followers to keep their opinions to themselves.", "close_window", [
##                    (troop_set_slot, "$map_talk_troop", "$npc_grievance_slot", tms_dismissed),
##                    (troop_get_slot, ":grievance", "$map_talk_troop", slot_troop_morality_penalties),
##                    (val_add, ":grievance", 10),
##                    (troop_set_slot, "$map_talk_troop", slot_troop_morality_penalties, ":grievance"),
##                    (assign, "$disable_npc_complaints", 1),
##          ]],


remove the comments, compile, and it should work I reckon (?)
 
You mean actually delete these four entries?  Or just remove the ## in front of each of them so they look like this?

  [anyone|plyr, "companion_objection_response", [
      ],  "I prefer my followers to keep their opinions to themselves.", "close_window", [
                    (troop_set_slot, "$map_talk_troop", "$npc_grievance_slot", tms_dismissed),
                    (troop_get_slot, ":grievance", "$map_talk_troop", slot_troop_morality_penalties),
                    (val_add, ":grievance", 10),
                    (troop_set_slot, "$map_talk_troop", slot_troop_morality_penalties, ":grievance"),
                    (assign, "$disable_npc_complaints", 1),
          ]],

Forgive my lack of knowledge.  I always thought the # symbol means 'ignore'.  Not sure what two of them side by side mean, the same thing??
I'm going to try it, just for giggles and...  sometimes experimentation is fun.
 
Ok, so after a little bit of testing... 

I 'think' what this does is disable their 'casual comments' about places and experiences.  It doesn't keep them from complaining about each other.

I tried it out, and once I hit the "I prefer my companions seen, not heard....  like my women"... I stopped getting their casual dialogs.  At least I think I did.  Haven't heard one for a couple days but that could be because I've heard them all already, or haven't traveled by any triggers.


I'm thinking the first post by ramonb is correct; despite it not working for me at the moment, so question:  Does it matter where in the 'camp_action' section it is placed?
Maybe I need to move it up or down past another action menu?

 
That's not encouraging.

I know someone managed to disable complaints in "Native Expansion" for M&B, but I've yet to see/find a mod that does it for Warband.

I know they wanted a bit more realism/personality in the game, but it's annoying.  Maybe there is a way to reduce the morale penalty for saying:  "Dont bother me with your petty problems."  ????
 
Back
Top Bottom