kraggrim said:Change time between companions trying to leave:
Tired of constantly reminding your companions that nobody gets to leave the party? Use this!
Make a backup of triggers.txt, then open it and search forThere areCode:0.000000 0.000000 24
fourthree instances, the one nearest the top of the file is the one you want. Change that 24 to a higher number, 99999 worked for me.
Please note, if it's the same as Brytenwalda this trigger contains a few different companion conflict related things (see the spoiler below). I would advise only using this if you have your party as you'd like to have it for the rest of the game. Do not use during story mode, I don't know for sure but would probably **** things up.
#Process morale and determine personality clashes
(0, 0, 24,
[],
[
#Count NPCs in party and get the "grievance divisor", which determines how fast grievances go away
#Set their relation to the player
(assign, ":npcs_in_party", 0),
(assign, ":grievance_divisor", 100),
(try_for_range, ":npc1", companions_begin, companions_end),
(main_party_has_troop, ":npc1"),
(val_add, ":npcs_in_party", 1),
(try_end),
(val_sub, ":grievance_divisor", ":npcs_in_party"),
(store_skill_level, ":persuasion_level", "skl_persuasion", "trp_player"),
(val_add, ":grievance_divisor", ":persuasion_level"),
(assign, reg7, ":grievance_divisor"),
# (display_message, "@{!}Process NPC changes. GD: {reg7}"),
##Activate personality clash from 24 hours ago
(try_begin), #scheduled personality clashes require at least 24hrs together
(gt, "$personality_clash_after_24_hrs", 0),
(eq, "$disable_npc_complaints", 0),
(try_begin),
(troop_get_slot, "ther_npc", "$personality_clash_after_24_hrs", slot_troop_personalityclash_object),
(main_party_has_troop, "$personality_clash_after_24_hrs"),
(main_party_has_troop, "ther_npc"),
(assign, "$npc_with_personality_clash", "$personality_clash_after_24_hrs"),
(try_end),
(assign, "$personality_clash_after_24_hrs", 0),
(try_end),
#
(try_for_range, ":npc", companions_begin, companions_end),
###Reset meeting variables
(troop_set_slot, ":npc", slot_troop_turned_down_twice, 0),
(try_begin),
(troop_slot_eq, ":npc", slot_troop_met, 1),
(troop_set_slot, ":npc", slot_troop_met_previously, 1),
(try_end),
###Check for coming out of retirement
(troop_get_slot, "ccupation", ":npc", slot_troop_occupation),
(try_begin),
(eq, "ccupation", slto_retirement),
(troop_get_slot, ":renown_min", ":npc", slot_troop_return_renown),
(str_store_troop_name, s31, ":npc"),
(troop_get_slot, ":player_renown", "trp_player", slot_troop_renown),
(assign, reg4, ":player_renown"),
(assign, reg5, ":renown_min"),
# (display_message, "@{!}Test {s31} for retirement return {reg4}, {reg5}."),
(gt, ":player_renown", ":renown_min"),
(troop_set_slot, ":npc", slot_troop_personalityclash_penalties, 0),
(troop_set_slot, ":npc", slot_troop_morality_penalties, 0),
(troop_set_slot, ":npc", slot_troop_occupation, 0),
(try_end),
#Check for political issues
(try_begin), #does npc's opponent pipe up?
(troop_slot_ge, ":npc", slot_troop_days_on_mission, 5),
(troop_slot_eq, ":npc", slot_troop_current_mission, npc_mission_kingsupport),
(troop_get_slot, "ther_npc", ":npc", slot_troop_kingsupport_opponent),
(troop_slot_eq, "ther_npc", slot_troop_kingsupport_objection_state, 0),
(troop_set_slot, "ther_npc", slot_troop_kingsupport_objection_state, 1),
(str_store_troop_name, s3, ":npc"),
(str_store_troop_name, s4, "ther_npc"),
(try_begin),
(eq, "$cheat_mode", 1),
(display_message, "str_s4_ready_to_voice_objection_to_s3s_mission_if_in_party"),
(try_end),
(try_end),
#Check for quitting
(try_begin),
(main_party_has_troop, ":npc"),
(call_script, "script_npc_morale", ":npc"),
(assign, ":npc_morale", reg0),
(try_begin),
(lt, ":npc_morale", 20),
(store_random_in_range, ":random", 0, 100),
(val_add, ":npc_morale", ":random"),
(lt, ":npc_morale", 20),
(assign, "$npc_is_quitting", ":npc"),
(try_end),
#Reduce grievance over time (or augment, if party is overcrowded
(troop_get_slot, ":grievance", ":npc", slot_troop_personalityclash_penalties),
(val_mul, ":grievance", 90),
(val_div, ":grievance", ":grievance_divisor"),
(troop_set_slot, ":npc", slot_troop_personalityclash_penalties, ":grievance"),
(troop_get_slot, ":grievance", ":npc", slot_troop_morality_penalties),
(val_mul, ":grievance", 90),
(val_div, ":grievance", ":grievance_divisor"),
(troop_set_slot, ":npc", slot_troop_morality_penalties, ":grievance"),
#Change personality grievance levels
(try_begin),
(this_or_next|troop_slot_ge, ":npc", slot_troop_personalityclash_state, 1),
(eq, "$disable_npc_complaints", 1),
(troop_get_slot, "bject", ":npc", slot_troop_personalityclash_object),
(main_party_has_troop, "bject"),
(call_script, "script_reduce_companion_morale_for_clash", ":npc", "bject", slot_troop_personalityclash_state),
(try_end),
(try_begin),
(this_or_next|troop_slot_ge, ":npc", slot_troop_personalityclash2_state, 1),
(eq, "$disable_npc_complaints", 1),
(troop_get_slot, "bject", ":npc", slot_troop_personalityclash2_object),
(main_party_has_troop, "bject"),
(call_script, "script_reduce_companion_morale_for_clash", ":npc", "bject", slot_troop_personalityclash2_state),
(try_end),
(try_begin),
(this_or_next|troop_slot_ge, ":npc", slot_troop_personalitymatch_state, 1),
(eq, "$disable_npc_complaints", 1),
(troop_get_slot, "bject", ":npc", slot_troop_personalitymatch_object),
(main_party_has_troop, "bject"),
(troop_get_slot, ":grievance", ":npc", slot_troop_personalityclash_penalties),
(val_mul, ":grievance", 9),
(val_div, ":grievance", 10),
(troop_set_slot, ":npc", slot_troop_personalityclash_penalties, ":grievance"),
(try_end),
#Check for new personality clashes
#Active personality clash 1 if at least 24 hours have passed
(try_begin),
(eq, "$disable_npc_complaints", 0),
(eq, "$npc_with_personality_clash", 0),
(eq, "$npc_with_personality_clash_2", 0),
(eq, "$personality_clash_after_24_hrs", 0),
(troop_slot_eq, ":npc", slot_troop_personalityclash_state, 0),
(troop_get_slot, "ther_npc", ":npc", slot_troop_personalityclash_object),
(main_party_has_troop, "ther_npc"),
(assign, "$personality_clash_after_24_hrs", ":npc"),
(try_end),
#Personality clash 2 and personality match is triggered by battles
(try_begin),
(eq, "$npc_with_political_grievance", 0),
(troop_slot_eq, ":npc", slot_troop_kingsupport_objection_state, 1),
(assign, "$npc_with_political_grievance", ":npc"),
(try_end),
#main party does not have troop, and the troop is a companion
(else_try),
(neg|main_party_has_troop, ":npc"),
(eq, "ccupation", slto_player_companion),
(troop_get_slot, ":days_on_mission", ":npc", slot_troop_days_on_mission),
(try_begin),
(gt, ":days_on_mission", 0),
(val_sub, ":days_on_mission", 1),
(troop_set_slot, ":npc", slot_troop_days_on_mission, ":days_on_mission"),
##diplomacy chief begin
(else_try),
(troop_slot_eq, ":npc", slot_troop_current_mission, dplmc_npc_mission_spy_request), #spy mission
(troop_slot_ge, ":npc", dplmc_slot_troop_mission_diplomacy, 1), #caught
(troop_set_slot, "trp_hired_blade", slot_troop_mission_object, ":npc"),
(assign, "$npc_to_rejoin_party", "trp_hired_blade"),
##diplomacy chief end
(else_try),
(troop_slot_ge, ":npc", slot_troop_current_mission, 1),
#If the hero can join
(this_or_next|neg|troop_slot_eq, ":npc", slot_troop_current_mission, npc_mission_rejoin_when_possible),
# (hero_can_join, ":npc"), MOTO error! This explains why companions sometimes never come back from mission...
(hero_can_join, "p_main_party"),
(assign, "$npc_to_rejoin_party", ":npc"),
(try_end),
(try_end),
(try_end),
]),
You can see what is probably the :grievance_divisor", 100 in the text file just along from the 24.0000. Changing that might be a more elegant way of doing this, not tried it though.
EDIT: tested from a new game in 1.04 sandbox, companions will complain about and praise each other after battle but never try to leave, so should be fine to have on from the start.
EDIT 2: This will affect companions sent off on missions, so you'll need to reset it when you want them back.
dlga_prisoner_chat_noble_arm3:prisoner_chat_noble_arm3a 69631 3463 6 1541 3 1224979098644774912 144115188075855902 4 32 2 1224979098644774912 0 2147483679 2 1224979098644774912 288230376151712503 2703 2 1224979098644774913 1224979098644774912 32 2 1224979098644774913 35 2325 2 13 1224979098644774912 I'd_like_to_try_on_your_{s13}. 3464 3 2133 2 144115188075856105 4 1541 3 1224979098644774912 144115188075855902 4 2133 2 144115188075855915 1224979098644774912 NO_VOICEOVER
dlga_prisoner_chat_noble_arm3:prisoner_chat_noble_arm3a 69631 3463 3 1541 3 1224979098644774912 144115188075855902 4 32 2 1224979098644774912 0 2325 2 13 1224979098644774912 I'd_like_to_try_on_your_{s13}. 3464 3 2133 2 144115188075856105 4 1541 3 1224979098644774912 144115188075855902 4 2133 2 144115188075855915 1224979098644774912 NO_VOICEOVER
and replace it with this:dlga_start:battle_reason_stated 4095 0 6 31 2 144115188075856100 2 2202 1 72057594037927941 1609 2 72057594037927943 72057594037927941 1073741855 2 72057594037927943 576460752303423496 1073741855 2 72057594037927943 576460752303423497 31 2 72057594037927943 576460752303423502 I_will_drink_from_your_skull! 3527 1 600 1 1152921504606847115 NO_VOICEOVER
dlga_start:battle_reason_stated 4095 0 10 31 2 144115188075856100 2 2202 1 72057594037927941 1609 2 72057594037927943 72057594037927941 1073741855 2 72057594037927943 576460752303423496 1073741855 2 72057594037927943 576460752303423566 1073741855 2 72057594037927943 576460752303423567 1073741855 2 72057594037927943 576460752303423568 1073741855 2 72057594037927943 576460752303423569 1073741855 2 72057594037927943 576460752303423497 31 2 72057594037927943 576460752303423502 I_will_drink_from_your_skull! 3527 1 600 1 1152921504606847115 NO_VOICEOVER
kraggrim said:Add a certain character back to your party as a companion again Reforged/2.0
Irish questline spoilers:
For this make sure you have a companion you don't want that you can swap out for her in your party (remember to remove any equipment you want to keep). Make a backup of your saves and then download the save-game editor. Import your save and open the 'party_records' section (should be about 3/4 of the way down), the player character's party should be #0 at the very top of the list. Find the 'stacks' section and in this find the companion you want to swap out. Their troop_id should be:If you want to have Morrigan back to your party after the questline is over then follow this guide.
Change that number to 1298. Now go to the 'troops' section (about 6 lines under party records), open it and find the companion that you swapped out. Open their 'slots' tab and reset 'slot_troop_occupation (2)' to 0. You also want to set their 'slot_troop_cur_center (12)' to a number between 21 and 50. This is the town they'll be in, you can look which number corresponds to which city under the party_records tab if there's a specific one you want.295 Caio
296 Egil
297 Brunhild
298 Donnchadh
299 Morgant
300 Bodo
301 Dwywei
302 Reginhard
303 Clovis
304 Ceawlin
305 Solveig
306 Asbjorn
307 Helgi
308 Ailchu
309 Agathinos
310 Beda
If you want it to be like you never met them there's probably a bunch of other slots you want to reset to 0, like slot_troop_met_previously (80), slot_troop_first_encountered (59), slot_troop_present_at_event (9), slot_troop_courtship_state (5), slot_troop_last_talk_time (4). Dunno how important these are really.
Not designed for getting adventuring or lord companions back into your party. That would be more complex, but you could probably do it with a similar process and by comparing their slots with those of a current companion.
kraggrim said:kuplas, 45 is Aileach so it might be he'd moved on to another town by the time you got there. Try using the save editor to check his current town and see if he's there. If that doesn't work I'd try starting anew game, saving, then compare that save with your current one in the editor and reset all helgi's slots to what they were in the new game save. Hopefully it will be like you'e never met him and he'll show up now.
'Companions: change time between attempts to leave the party' hasn't been tested in the full reforged release but yes it should stop them trying to leave if you set the number high enough. It does stop them coming back if you send them on missions or lose them for whatever reason. I would recommend this one instead, just keep your morale up for a couple of days as it gradually comes into effect.
Dracosoara, I think prisoner recruitment feature might be in presentations.txt now, have a look there. I'm not sure about the prisoner limit one, I'll have a wee look.
kraggrim said:Player towns/castles generate garrison automatically like AI lords (1.04)
In simple_triggers.txt (make a backup) find this section:
1.400000 147 2136 3 1224979098644774912 648518346341351445 648518346341351564 2147484189 3 1224979098644774912 7 360287970189639680 1651 2 1224979098644774913 1224979098644774912 7 3 1224979098644774914 0 1224979098644774913 1656 3 1224979098644774915 1224979098644774912 1224979098644774914 2147485155 1 1224979098644774915 1657 3 1224979098644774916 1224979098644774912 1224979098644774914 32 2 1224979098644774916 0 2136 3 1224979098644774917 10 60 2107 2 1224979098644774916 1224979098644774917 2108 2 1224979098644774916 100 4 0 31 2 1224979098644774916 0 2105 2 1224979098644774916 1 3 0 521 3 1224979098644774918 1224979098644774912 49 2122 3 1224979098644774919 1224979098644774916 20 2105 2 1224979098644774918 1224979098644774919 501 3 1224979098644774912 49 1224979098644774918 1616 3 1224979098644774912 1224979098644774915 1224979098644774916 3 0 266 1 1224979098644774920 2133 2 1224979098644774921 1 4 0 31 2 1224979098644774920 0 2133 2 1224979098644774921 3 5 0 31 2 1224979098644774920 1 2133 2 1224979098644774921 2 5 0 31 2 1224979098644774920 2 2133 2 1224979098644774921 1 3 0 2107 2 1224979098644774921 480 521 3 1224979098644774918 1224979098644774912 49 521 3 1224979098644774922 1224979098644774912 50 2133 2 1224979098644774923 1 4 0 1073742385 3 1224979098644774912 400 2 561 3 1224979098644774912 54 1 2133 2 1224979098644774923 0 3 0 4 0 31 2 1224979098644774923 1 2147483680 2 1224979098644774922 72 2122 3 1224979098644774924 1224979098644774922 1224979098644774922 5 0 31 2 1224979098644774923 1 2122 3 1224979098644774924 1224979098644774922 73 5 0 31 2 1224979098644774923 0 2123 3 1224979098644774925 1224979098644774922 2 2122 3 1224979098644774924 1224979098644774925 1224979098644774925 3 0 4 0 561 3 1224979098644774912 7 1 2105
Change 147 to 146 and remove the red 2147484189 3 1224979098644774912 7 360287970189639680 section. The red section seems to be the player exception bit.
I think what will happen is it will automatically sell prisoners from the center and add money to it, then spend that center's money on new troops to add, and maybe upgrade some (this could be a different trigger though). Or it might do 1 of these things, or none, it's an adventure! I'd backup your saves either way and maybe store prisoners you want to keep in a refuge or troop camp.
Towns/castles with no lord fill with troops (1.04 untested)
If you want centers with no assigned Lord to fill their garrison then delete the blue 561 3 1224979098644774912 7 1. Reduce the 147 (or 146 if you have both tweaks) to 146 (145 with both).
This is untested but theoretically should work. If anyone tests it can you please let me know the outcome.
kraggrim said:Cheers Dracosoara, will link on the front page. What makes you think prisoner limit is influenced by renown?