Mount & Blade: Warband

Mount & Blade: Warband

Phantasy Calradia
目前顯示第 1-10 項,共 27 項
< 1  2  3 >
更新:5 月 26 日 @ 上午 5:29

patch notes v160 C18d 26.May.2025:

1) battle size scale fixed battle advantage not giving larger battle size when odds favor one side
xgm_mod_options: (Phantasy 2024 settings)
updated "battle size scale" to be a dial with values 2 through 5, default as 3
slightly smaller upper limit, as now a battle can have up to 3x nominal battle size in non-mount agents.

mission_templates:
mainly tweak this script:
(call_script, "script_battle_size_coefficient", ":battle_size", ":battle_advantage2", ":player_defender", 0), # GS last value is ":defense"

2) Error in faction ID seen when trying to "town recruit" from Mage towns/castles:
opcode = 2190 store_relation
game_menus: recruit_troops:
recruit_golems No error seen
recruit_golems3, recruit_golems4, recruit_golems5, recruit_golems6
found the mistake, also fixed Ogre recruiting.

3) Firestorm (cleric prayer@faith=8) seems too weak.
Range is too short,
damage looks to be limited to one opponent,
damage is low
Firestorm is at module_presentations: prayer_book: line 16373 fixed

4) Chamberlain at faction capital towns
added at menu "Town activities"

5) player mage: dispel magic
error at script mage_clothes_bonus Fixed

6) mounted animation adjust to cheer with staff animation
all of the stand on horse animations sink into mounts, this one was hiding with lancer animations

discord at https://discord.gg/MGUz3GQqAZ

更新:5 月 24 日 @ 上午 12:28

patch notes v160 C18c 24.May.2025:

1) battle size scale still too large for sieges and "great host" battles
changed algorithm to be:
"battle size scale" * 40 = "battle_size" (per side) (also, No longer read the battle size slider at all)
The old algorithm had a peak per side much higher and no test for total number of agents.

These numbers are further adjusted when either side has battle advantage, with battle advantage -6 treated as -6 and > 6 treated as 6
The battle advantage is then divided by 2 and the battle size for each side is adjusted.
The battle can still be skipped if the odds favor one side too much, after adjusting for clerics, terrain, and mages

raw advantage adjusts to battle_size after adjustments:
-1 = 4/3, -2 = 7/4, -3 = 10/5 * base battle size for the OTHER side when negative
0 = 2/3, 1 = 4/3, 2 = 6/3, 3 = 8/3 for the PLAYER side when positive or 0

This gives a slight advantage to the defender when attacking at negative or 0 advantage and a bonus to attacker when attacking with high advantage

xgm_mod_options: (Phantasy 2024 settings)
updated "battle size scale" to be a dial with values 2 through 6, default as 3
Yesterday's patch had a lower maximum size by my misunderstanding the edge test for highest value so now increased max by 1 beyond intended highest value.

mission_templates:
implement the logic discussed above.
fixed an error at common_siege_defender_reinforcement_check
lead_charge: (done), village_raid: (done), castle_attack_walls_defenders_sally: (done), castle_attack_walls_belfry: (done), castle_attack_walls_ladder: (done)

besiege_inner_battle_castle, besiege_inner_battle_town_center: no reinforcements check

added a new script for the battle size adjust from battle_advantage:
(call_script, "script_battle_size_coefficient", ":battle_size", ":battle_advantage2", ":player_defender", 0), # GS last value is ":defense"

2) correction for Start as King kingdom culture or when start as king option is used at a campaign import:
Yesterday's patch made some progress but villages belonging to vassals still show an issue with setting culture.
added dynamic fix to script_update_volunteer_troops_in_village and script_update_npc_volunteer_troops_in_village
to fix invalid faction ID when trying to retrieve local culture at either of these scripts.


discord at https://discord.gg/MGUz3GQqAZ

更新:5 月 22 日 @ 上午 3:00

patch notes v160 C18b 22.May.2025:

left over patch notes from yesterday:
xgm_mod_options:
updated "prefer large battles" to be a dial with values 1 through 5, default as 2
set an auto-correct 0 to become "2" at st_145, timer = 1.5 instead of 3 hours in case player plans a fight soon
set another auto-correct at st_181 timer = 3 hours in case they had large battles selected, will set "3"

simple_triggers:
st_145 patch (troop_set_slot, "trp_multiplayer_end", slot_troop_kingsupport_string_2b, 160), # marker to prev3ent this from running twice on the same savegame
corrected typo at script_game_start that failed to set slot_troop_kingsupport_string_2b and instead set slot_troop_kingsupport_string_2a
this gave "too many trade routes" message for nearly every town

st_181 set $g_phantasy_patch_minor = 18
st_60 sea trader handling; check if on water; update player icon
this has a correction for flying sea traders moving overland beyond the water's edge.
sea traders found far inland will be exchanged for land traders and given the same destination; these will then be jumped slightly to verify they are not stuck at the water's edge and have a path to the land map center.

st_52 trader/sea trader AI - no changes

ccp_presentations, cstm_presentations, cstm_strings, cstmmerge_game_menus, formations_scripts,
no changes, the date difference in 2025 was for faction name changes only at 2025

cstmmerge_constants deleted face code redefines that blocked merging custom troops (distorted faces result)
-----

New changes:

1) more robust garbage collection during battles
script_cf_list_agent_filter_gc
common_siege_defender_reinforcement_check (only if reinforcements) 19 sec
common_siege_attacker_reinforcement_check (now does GC even if no reinforcement wave) 23 sec
GC2 only if reinforcements
mission_templates: lead_charge
defender reinforcements (only if new reinforcement wave) 11 sec
attacker reinforcements (GC for list 09 and 10 always, GC2 only if reinforcements) 13 sec
mission_templates: village_raid
defender reinforcements (only if new reinforcement wave) 11 sec
attacker reinforcements (GC for list 09 and 10 always, GC2 only if reinforcements) 13 sec
mission_templates: castle_attack_walls_defenders_sally
attacker reinforcements (GC for list 09 and 10 always, GC2 only if reinforcements) 13 sec
defender reinforcements (only if new reinforcement wave) 11 sec
mission_templates: castle_attack_walls_belfry
defender reinforcements (only if new reinforcement wave) 13 sec
attacker reinforcements (GC for list 09 and 10 always, GC2 only if reinforcements) 17 sec
mission_templates: castle_attack_walls_ladder
defender reinforcements (only if new reinforcement wave) 13 sec
attacker reinforcements (GC for list 09 and 10 always, GC2 only if reinforcements) 17 sec

mission_templates: ship_battle
??? not used lists 09 and 10 are simply not cleaned at all; but enemy ships tend to be small parties

2) a better handler for flying ships at st_60
change sea traders found on land to land caravans and hop them onto land to prevent being stuck at the shoreline or on water

3) correction for Start as King kingdom culture or when start as king option is used at a campaign import:
removed the option to override kingdom culture. Your villages are the same culture they ever were.
Future versions of campaign export (for Chiaroscuro/Phantasy 2025) will need to redo export to export the culture for each owned fief.

Heavily edited gcstm_game_menus to force Swadia culture instead of an invalid culture for Start as King character creation for player_supporters,
"$cstm_start_as_king" = 1 is the test for start as a king option
hand merged the modified gcstm_game_menus at game_menus ln 230+ just to be sure.

This still does not address any changes made yesterday for new start as king / campaign import but going forward will not be an issue for campaign import.

4) remove the culture override at campaign restore, and the associated setting "select_culture" at Phantasy Settings.
"$g_import_culture2" and "$g_import_culture" impacted at xgm_mod_options
This in turn impacts the various char_import scripts used for different flavors of campaign import via WSE2/Lua

5) Mount animations - some of the rider animations sink into mounts when swinging.
dropped "anim_human" in favor of the more native "anim_human_02" and added acf_enforce_lowerbody|acf_synch_with_horse
to reduce sinking into the mount when on uneven ground. I might need to switch to stand_onhorse if this does not work.
Did test with epty hand swings while on horseback, these work better now.

Otherwise these must be "attacks_single_righttoleft_horseback" which is an animation I did not touch.
I have been focused on the animation while moving the horse only. Anytime someone else wants to try their hand I'm for it by the way.
I don't know any more about animations than you do. But I don't really see them so it doesn't bother me. I use menus for everything.

6) Speaking of menus, added access to the chamberlain at the village menus.

discord at https://discord.gg/MGUz3GQqAZ

更新:5 月 21 日 @ 上午 5:19

patch notes v160 C18 21.May.2025:
some changes from early 2025 version can be imported now:

A) factions have names instead of kingdom numbers in 2025 to not collide with Paradigm Chronomancer factions
This is untouched for 2024, but leads to a fair number of differences in coding.

1) Animations for ride_x (horse) and horse_pace_x are tweaked slightly to improve mounted animations.
The result is not perfect, but better than it was.

2) re-arranged game_menus
character creation brought back "start as king" option
however if you start as king then use the import campaign function I made and tell THAT to set a new culture it gets confused and will error when setting village recruits
I don't really have time to chase it, but I figured you should know. Leave the "override culture" setting at 1 in Phantasy Settings in this case, to accept whatever the default was at that village (Swadian).
You can always migrate population to a new culture if you own the village, and that works correctly.

camp menu tree is changed around to be more useful, with less menus to traverse for things I use more often
tweaks and settings are moved a bit, as are cheats, to be more tidy.

too many changes to data layout to copy the improved skills and character class display from 2025
village specialty buying and selling now considers party trade skill rather than player (only) trade skill
buying a ship now costs 2500 instead of 1500

a (large) number of fixes to Rigale crafting and harvest system are NOT back ported as too many changes occurred at the data layer for 2025
fixed a menu typo at woodworking still mentioning small pistols in the recipes.
reduced cost of guild lessons to 100 for novice level skills lessons.

town/village menu is rearranged for the cheats that give access to editing scenes, mainly.

3) mission_templates:
common_battle_mission_start reset player_agent ID number to -1 in case this is a second wave battle
common_battle_tab_press add a call to script_cf_list_agent_filter_gc2 to always cleanup lists before ending battle,
mainly to get a more accurate resurrection check for after battle auto-resurrection check.

the speedup for clothes interference checking for 2025 is not back ported to 2024
a number of fixes to cleric alignment and removal of deity selection at 2025 could not be back ported to 2024
the check for who can use spell_book and prayer_book presentations (open the book and pick the spell) is different for 2025 to allow quested classes after character creation sometime

paladin_auras: aura of regen -- fixed error blocking regeneration in most cases, upped effect slightly
this regen is independent of regen from rings or from skin type

common_battle_rebuke_undead, common_battle_flame_strike, npc_timed_cleric_spells, regenerate_faith, spell_limiter, common_battle_healing_spell, common_battle_turn_undead
list_10 for clerics&paladins could grow very large so removed the implicit runtime cleanup when encountering dead agents in the list. The more efficient garbage collection, collapsing the list once instead of again for each new dead cleric reduces stutter as battles grow larger.

Damage is increased for flame strike, with slightly less defense boost when attacking high resist targets.
NPC flame strike has a better mechanism to ensure range
All 2025 magic and cleric spells skip feeblemind check/effect; this is not back-ported to 2024
boosted damage at common_battle_turn_undead
lay hands is improved at 2025, not back ported to 2024

regenerate_magic_1, regenerate_magic_2, regenerate_magic_3, regenerate_magic_4, regenerate_magic_5, spell_limiter, timed_mage_spells
improved handler for list_09 (mages), since mage list could also get very large, to defer cleanup of dead agents until garbage collection to repack the list once only

common_siege_defender_reinforcement_check, common_siege_attacker_reinforcement_check,
these have a reworked battle size scaler from 2025 applied, which has a change at Phantasy settings

common_sit_aware_check added from 2025. this fires each 6.9 seconds to apply, one time, the cumulative effects of dying for each side, across all agents in battle
Instead of each agent dying forcing a check against every last agent (including horses) for both sides, and repeating if EITHER side makes a kill or incapacitates an agent (or the agent exits the map)
all of these are tabulated for the last almost 7 seconds and applied once only. The "unrealistic" aspect is the original applied a stronger score to nearby agents for that side and a boost for the one killer agent,
while this has to simulate a more average distance and boost the entire killer's side, since who made the kill is no longer retrievable.
uses unused global variables summoned_att and summoned_def to keep score
$g_presentation_battle_active hold which side the player belongs to to not have to keep checking every few seconds

mission "conversation_encounter" fixed to allow full helms to not be removed and possibly lost.
missions "lead_charge" and "village_raid":
ti_on_agent_spawn change initial courage score to be aware of tiers so that farmers, looters, and townspeople break sooner than veterans
ti_on_agent_killed_or_wounded removed the call to script_apply_death_effect_on_courage_scores this is now called once per 6.9 seconds not once per death
every 7.1 seconds call script_apply_effect_of_other_people_on_courage_scores (was 3 seconds)

mission: "village_attack_bandits" add common_battle_tab_press to allow tab to end battle afterwards
set timed battle ends check at 20 seconds instead of native 60 seconds
add resurrection check for player troops

mission: besiege_inner_battle_town_center, castle_attack_walls_defenders_sally, castle_attack_walls_belfry
added resurrection check 2025 better battle size logic

mission: ship_battle
adjusted courage by tier

4) scripts:
"initialize_economic_information" some added tweaks to towns
did not back port 2025 dynamic village economy adjusts by terrain (since so many dragged around) these are hard coded at 2024
did not back port 2025 dynamic adjust to Rigale crafting/harvest guilds at towns by terrain type
did not back port 2025 dynamic detection of coastal villages/towns for fish production and fishing guilds

"ccp_get_character_background_text"
set starting town by faction according to each capital not the 6 towns with starting merchants defined
set new strings to be displayed for journey to each of the Phantasy factions past Sarranids

"ccp_generate_skill_set" this is tied to the "black screen" one page presentation for character creation
add support for $cstm_start_as_king from character creation
define town_16 as a capital for Rigale guilds chance when start as a king was selected at character creation
increased paladin starting honor from 3 to 4, for better lay hands effect
duplicated items still seen for start as king. Otherwise start as king is working.

"ccp_generate_skill_set2" menu driven character creation, this had an error in duplicating some start items that is fixed for 2025, back ported
tested, no longer gives double class items for menu create char.

"cf_exportchar1", "cf_exportchar2", "cf_exportchar3", "cf_exportchar4"
fix an error in checking guilds that would have skipped bakeries
adjust credit for ship to 2500 instead of 1500
"cf_importchar5" no changes, the change was at export

5) Strings:
added strings for player start at any faction

更新:2 月 21 日 @ 上午 8:55

patch notes v160 C17.IVd 21.Feb.2025:
some changes from early 2025 version can be imported now:
a) st_145 updated to add a hot patch for C17.IVd

1) Trade Routes have been better documented and 38 additional routes are added,
which actually means 76 routes in total (one pair for each new route) are added to the existing routes.
This should increase prosperity to many under-served towns, especially during peace.
script_initialize_trade_routes
after changes (15 routes maximum allowed by Warband engine): [sending routes + receiving routes ]
("town_1","Sargoth", 13+2 routes Coastal
("town_2","Tihr", 12+3 Routes Coastal
("town_3","Veluca", 12+3 Routes
("town_4","Suno", 10+5 routes
("town_5","Jelkala", 11+4 ROUTES Coastal
("town_6","Praven", 7+6 ROUTES Coastal
("town_7","Uxkhal", 7+7 Routes
("town_8","Reyvadin", 7+8 Routes
("town_9","Khudan", 7+8 Routes
("town_10","Tulga", 9+6 Routes
("town_11","Curaw", 6+9 Routes Coastal
("town_12","Wercheg", 7+8 Routes Coastal
("town_13","Rivacheg", 6+8 Routes Coastal
("town_14","Halmar", 7+8 Routes
("town_15","Yalen", 5+9 Routes Coastal
("town_16","Dhirim", 3+12 Routes
("town_17","Ichamur", 2+13 Routes
("town_18","Narra", 3+12 Routes
("town_19","Shariz", 4+10 Routes Coastal
("town_20","Durquba", 2+12 Routes
("town_21","Ahmerrad", 4+9 Routes
("town_22","Bariyye", 3+11 Routes

("elf_forest","Elf Forest", 10+5 Routes
("dwarven_kingdom","Tharuk's Gate", 6+9 Routes
("entrance_to_underdark","Shin'szaluk's Ladder", 5+9 Routes
("orc_fortress","Bloody Cliff", 10+1 Routes
("wizard_tower","Wizard Tower", 10+5 Routes
("necromancers_castle","The Obsidian Spire", 8+3 Routes
("blazing_hand_temple","Blazing Hand Temple", 9+2 Routes

at script_phantasy_patch_160c17_4d
2)a) Reinforcement templates are adjusted for factions with few clerics or mages.
Swadia, Vaegir, Khergit, Nord, Rhodoks, Sarranid, Orc, Necromancer faction reinforcements are adjusted.
script_initialize_faction_troop_types is re-run at patch to refresh the template values at savegames in progress.

b) Shamans are now dual class and will multiplex both mage spells and cleric spells at the same time.
This was already pioneered by Orc Shamenesses, but now extends to Khergit and Nord Shamen as well.
line 1985

3) a)The gear worn by these two troops is adjusted to reduce magic interference,
khergit_cleric
remove:
itm_khergit_guard_helmet,itm_khergit_guard_armor,itm_mail_chausses,itm_tab_shield_small_round_b,itm_mail_mittens,
itm_mail_gauntlets,itm_spiked_mace,itm_guard_helmet
add:
itm_nomad_vest, itm_nomad_boots, itm_fur_hat, itm_st_leathergloves, itm_journeyman_staff

nord_cleric
remove:
itm_mail_chausses,itm_tab_shield_round_b,itm_mail_mittens,itm_mail_gauntlets,itm_spiked_mace,itm_winged_mace,itm_nordic_helmet
keep: itm_cuir_bouilli
add:
itm_snake_staff, black_leather_gloves, black_leather_boots, lplume_helm1

b) magic skill is adjusted for these two troop rows.

4) damage from snake and moon staves slightly adjusted; the swing is blunt instead of piercing,
for snake staff the thrust damage is increased and remains piercing. Snake staff retains the DoT poison effect introduced earlier.

5)## adjust bakery and brewery start up costs
(item_set_slot, "itm_bread", slot_item_enterprise_building_cost, 1250), # GS was 1500, then 1200
(item_set_slot, "itm_ale", slot_item_enterprise_building_cost, 1500), # GS was 2500, then 3000

6) add to Valkyrie strength, as their armor is very heavy.
This also has to be set at game_start, as 30 is the nominal max strength that can be set at module_troops due to definitions at header_troops

(call_script, "script_delta_stat", "trp_nord_supertroop", ca_strength, 40), # set strength to 40 from whatever it was

# add to Knight of the King (swadian_supertroop) strength to finally total 34, but troops can accept max str_30 due to header_troops definition
# add +1 str to swadian_cleric, vaegir_cleric, rhodok_cleric, sarranid_cleric (total 18 now)
# add to ogre_crusher = 28 (from 27 str) and ogre_destroyer = 30 (from 27 str)

7) added a folder called "new_language" with the comma separated variables (CSV) formatted language files
plus a scrape of how to make translations. I estimate it could burn between 50 and 200 hours to translate the mod, but since it is low skilled work
that I have exactly no advantage to any user whatsoever, I am investing my time scripting and doing the heavy lifting that ordinary users cannot help with,.

That said, if even a third of these were done, by google translate if needed, then it is that many hours closer to a language.
Get me the files you edit, either by adding yourself to discord or writing me at Taleworlds forum as gsanders
or for that matter on gmail as gsstar@gmail.com

This was a gmail account back when gmail first started. it really means gs* as in a pointer reference to me.
I'm not otherwise anybody's "star", although my hobby is Astronomy.

TO DO: translate the first 20 or so lines to show what it looks like, as that would help teach others what to do, using google translate
or winging it in my really poor grammar Russian and add a ru folder to "languages"
that could be added to by some so far unknown (but heroic!) volunteer.

If you are waiting for me to do everything,I'll probably die of old age first. Get off yer butt and help,
else it stays in English since I can play in English all day long.

---- TO DO out of time this week
8 ) adjust at mission_templates auto-equip for chamberlain and constable
mainly to allow the two troops to not play with inventory they were entrusted with
town_visit
castle_visit
these now need to be manually equipped.
(troop_set_auto_equip, <troop_id>, <value>),

更新:2 月 12 日 @ 下午 11:17

C17.IVc quick fix bandit_lair mission, force skip merchant quest line, add str to Warlord Krothu.

更新:2 月 7 日 @ 上午 6:31

Patch Notes Phantasy Calradia v160 C17.IVb 07.Feb.2025:

a) module_info_pages
Nag to read the darned manual instead of complaining in public that you didn't understand the mod.
If you feel the manual needs rewriting (it does but I don't have the time), be sure to volunteer to do so and I'll expect it first thing Monday morning.
I'll credit you, if you like. There is plenty more that could be rewritten if you have that much time on your hands.
Otherwise give me a break. I get it, the mod is not for everyone. Let the 50 people that actually LIKE the mod have a chance at it please.

1) patch C17.II the test for the marker to keep it from repeating at st_145 fails with WSE2,
changed test operation from
(neg|troop_slot_eq, "trp_multiplayer_end", slot_troop_kingsupport_string_2, 160),
to
(troop_slot_lt, "trp_multiplayer_end", slot_troop_kingsupport_string_2, 160),

corrected the patch message from C7.II to C17.II not that the code cares but I sense some critics are really tense about every detail.

added at start_game
(troop_set_slot, "trp_multiplayer_end", slot_troop_kingsupport_string_2, 160), # patch C17.II
adjusted test at st_145 as well.

更新:2 月 5 日 @ 上午 7:41

Patch Notes Phantasy Calradia v160 C17.IV 05.Feb.2025:

1) Clean up errors seen from utility Lav's W.R.E.C.K. (v1.0.0):
a) too many elements in module `troops` entity `looter`
was not able to resolve this, but modmerger is attempting to inject content from cstm_troops.py just before the line for looters at module_troops. Renamed cstm_troops.py and removed the previous cstm_troops.pyc to prevent linking in. Checked the error by moving looters, by overwriting looters, and by moving the previous line past looters all with no change then reverted to original. Will remove ALL modmerged files in 2025 prototype, and move to Lav's WRECK 1.1.3
Lav's WRECK is not used in this mod as it cannot process modmerger files correctly.

This was motivated by error
Script error on opcode 1277: Invalid faction ID: 123 line no 220 at script:
game_event_simulate_battle
where the hypothesis for root cause is faction ID value 123 is really a set of bitflags summed together, suggesting a comma is missing in troops file, causing the faction ID value to be reading from a different element most likely the one before faction (scene) or after (items list, not likely).

b) try/end operations do not match in script.game_event_party_encounter: 1 try_end(s) missing - Fixed
try/end operations do not match in script.cf_dplmc_version_checker: 1 try_end(s) missing - Fixed
removed the lordly contents of bonus chest 3 at richercheg
try/end operations do not match in mnu.reference_reports_a(#7).mno_show_third_trade_routes.choice: 1 try_end(s) missing - Fixed
try/end operations do not match in mnu.leatherworker_various_3(#342).mno_crafting_warg.choice: 1 try_end(s) missing - Fixed
duplicate entity found: prsnt.wse_mission_debug_window - Fixed

2) Mission_templates: defender reinforcements during open map battles (mission lead_charge)
The issue is for large fights the smaller side (usually defender) gets beaten down to almost 0 agents standing and then the 11 second reinforcements dribble in 25 at a time and 250 enemies stand around the spawn location and beat them down casually.

The notion was to create a burst of up to 4 reinforcement waves at once, so long as that side had less than 90 agents, with a disconnect to stop looping and stop remeasuring agents once one of the cycles met conditions to no longer reinforce. This lets the defenders stay mostly together while honoring the battle size intentions.
Battle sizes are more strictly enforced when in Phantasy Settings (camp menu) the "prefer large battles" is UNCHECKED.

Additionally you can slide the battle size to less than 100%, ESC general options at Warband any time, but nobody does that they prefer to complain.
lead_charge line 13066
see lines 13228 - 13495

3) Follow-up from last update, I wrote the missing scripts referred to by Motomaru's later formAI.py modmerger module, and filled in the missing formAI_constants referenced by the newer code. This let me make the newer formation AI active, with these in-line changes noted:
added checks for player changes at mod options (probably not relevant to Phantasy Calradia)
#player has turned off closest agent mechanism (see mod options)
INFANTRY:
bum rush archers with low level melee troops when advantage in numbers is 2:1 logic slightly changed
attempt to build a new formation logic changed:
instead of considering troop level the check is made for armor of the opponents as a more reliable measurement
considers the width (length) of the formation before building a wedge formation (currently 35 meters or less)
adjusts spacing according to weapons with swing type attack differently than before, with more precision to make a slightly tighter formation.
hold near archers now takes into account the distance from rear of the wedge to point of the wedge when ordering infantry to move in front of archers
reassemble if too scattered - new section
some other changes in tactics:
attack leader if closest troop
move no farther than nearest troop if its unit is far off
CAVALRY:
some adjusts at reinforcements for cavalry

4) A critical fix:
Clerics newly created were looping back to start of game after deity selection.
mnu_start_cleric added (assign, "$needs_deity_selection", 0), after each deity choice is made
(jump_to_menu,"mnu_start_character_6"), # ln 3205
left the player outside town and skipped the merchant quest line selection to avoid getting stuck in a loop
noticed Paladins were getting treated as Clerics, adjusted this at simple_triggers # 17
set deity for Paladins to be Lathander, for cleric weapon summoning purposes

set deity for Necromancer/Cleric combination as Talona, the mother of plagues to fit the story line as it evolves.
checked strings to see if either npc27 (Kevtil) or npc33 (Padubast) needed updates as to the deities involved at backstory_a and -b but look correct.

5) Build a filter around simple_triggers # 36 to increase overall stability
st_36 see ln 2133 (party_get_battle_opponent, ":opponent", ":party_no"),
inserted:
(store_distance_to_party_from_party, ":party_distance_to_siege", ":party_no", ":center_no"),
(lt, ":party_distance_to_siege", 9), # GS filter any parties too far away from the siege, just to reduce risk of a hang from stale opponent party_IDs when checking opponent party_ID

6) shirtless characters: Bards especially, some lords such as Krothu (Orc King)
To wear an item at court that item needs to be flagged item property Civilian, and NOT flagged item property Merchandise else it is not worn (this to keep diplomacy storage NPCs from wearing gear found in inventory).
Flagged accordingly the outfits worn by various musicians, bards, Krothu and others.
Possible side effects might be the constable or chamberlain wearing cool armor from their inventory.

However bards in taverns still liked to wander with their shirts off, and I had a report of a musician that should not have been displayed (and was nameless and invisible). Tracked this to a declaration at module_constants coming from diplomacy, and set to the correct value tavern_minstrels_end = "trp_musicans_end"
Gentlemen, they now wear shirts again. I know, how old fashioned...

7) a) Adjusted names of master craftsmen for every town.
b) Corrected at dialogs the description for Fireball to say 4 meters radius instead of 7.
set accordingly at module_items

8) Campaign import tweak: when importing but the player has no towns or does not join a faction,
the town relation to the player is not updated. Now the relation is updated immediately after adding an enterprise (list of bit flag compressed enterprises, to be technical). It gets re-updated after the town changes ownership if the player owned it when the export was made, and is joining a faction. (set this BEFORE importing, at Phantasy settings).
script_cf_importchar5 ln 111462 see line 112377

更新:2 月 3 日 @ 上午 8:55

Patch Notes Phantasy Calradia v160 C17.IIIc 03.Feb.2025:

1) mission_templates:
errors with uninitialized variables seen at missions alley_fight and bandit_lair, probably others:

determined the errors came from the group of triggers called "dplmc_battle_mode_triggers", when not also having previously ran
common_init_deathcam,common_start_deathcam,common_move_deathcam,common_rotate_deathcam,
as well.

Also the report given me showed some missions loaded triggers ina different order than others, so to speed troubleshooting for NEXT time, I adjusted all of these missions to get the same triggers in the same sequence:

back_alley_revolt
bandits_at_night, village_center, town_center, visit_town_castle, village_attack_bandits, village_raid,
besiege_inner_battle_castle, besiege_inner_battle_town_center, castle_attack_walls_defender_sally,
castle_visit, sneak_caught_fight, quick_battle, quick_battle_siege, multiplayer_sg,multiplayer_bt,
multiplayer_fd, bandit lair ln 28319, alley_fight

all of these were at risk of errors IF deathcam was started, which for some of them should have been an auto fail of the mission in native but I am far too nice...

2) If during character creation either primary or secondary class is Cleric or Fighter, and the player chose to do the starting merchant quest line instead of selecting to skip the quests and just collect the rewards, THEN the player gets stuck after choosing deity for a cleric OR fighter specialization for a fighter. These share the same timed trigger.

Edited the menus jumped to at game_menus to return the player to just outside the town walls instead of into town and fighting the bandit a second time. Changed the timer from 4 hours to 2 hours; if the player selected to skip the merchant encounters they would have been sleeping 3 hours so 2 hours catches this and I wake them up early; if instead they selected to do the quests again they are not in the first fight and the quests continue correctly.

3) Pressing F2 during a battle to reach the "advanced formations" options shows a series of "STR not found" messages and the buttons do nothing.
press F2 button and see missing strings:
F1 ui_order_form_1_row
F2 ui_order_form_2_row
F3 ui_order_form_3_row
F4 ui_order_form_4_row
F5 ui_order_form_5_row

After verifying what the key bindings are in first Warband and then WSE2 (they are not the same), I had a list of non PBOD/Formations/FormAI bindings, and could assume anything not seen was PBOD, FormAI, or Formations.
Working backwards from there, I determined PBOD or FormAI was not being modmerged correctly, or so I thought.

I manually merged FormAI and noted that I had a dormant, later script from Motomaru so tried it instead. This found that the later version had been put aside because it needs 2 scripts made from scratch, and Motomaru had intentionally left them out from the OSP probably because they were about to sell the working build as Viking Conquest, and I was looking at a precursor from August 2012. I built a =hybrid but the jewel of the kit I reverted to the older, known working code. Someday I'll write the missing layer and try the improved AI.

After doing all that, I determined the answer was to edit module.ini to set this line
use_advanced_formation = 0
if set to = 1 it assumes you bought the license for VC.

4) I said I only fixed 3 things but there was a fourth initiative:
back patch simple_triggers module to B14 just enough to locate the components of the post-(newer-diplomacy merge C series causing the crash at save.

Here are my notes:
scripts called by simple_triggers:
randomly_start_war_peace_new st_25
process_sieges st_27
process_village_raids st_28
init_ai_calculation, calculate_troop_ai st_29
cf_random_political_event st_32
process_alarms, allow_vassals_to_join_indoor_battle, process_kingdom_parties_ai st_35 1 hr

st_36 see ln 2112 (party_get_battle_opponent, ":opponent", ":party_no"),
inside loop range active_npcs_begin to _end

EDIT: I expect this is the smoking gun, that and deleting beached ships, which might also be corsairs, sea traders, or fishing spots at st-60, which is now commented away.

For st_35 I have not made changes yet because I should prepare a filter to only test parties that happen to be close to a center (or if I really have to another party, which would be much less efficient than just looking for fixed centers).
This would let me discard most of the testing while making sure village raids and sieges of walled centers work correctly. Doing this, I can skip about 70-85% of the parties found, and reduce the likelihood of finding a crash worthy stale party as ":opponent" in the above test by the same 70-85%, which would be a huge gain. But it deserves a few days of testing. Next time. FINDING the little f*cker was an accomplishment of sorts, anyway.
------

recalculate_ais st_38

st_60 check if on water / removing beached ship 0.35
lines 4178-79 commented, but need to check if sea traders get removed anymore
## (party_detach, ":cur_party"),
## (remove_party, ":cur_party"), # GS apr.15.24 remove obsolete beached player ships

update_party_creation_random_limits st_76
st_147 disabled recruiter kit here 1 hr timer



更新:1 月 31 日 @ 上午 7:22

Patch Notes Phantasy Calradia v160 C17.IIIb 31.Jan.2025:

A) menu driven character creation failed to give starting funds and items.
< Seems to be working already.>

1) battle size adjusts more faithfully according to setting at Phantasy Options: 100% slider ==
250 "prefer large battles' ON
120 "prefer large battles" OFF

xgm_mod_options
(troop_get_slot, ":prefer_large_battles", "trp_multiplayer_end", slot_troop_current_rumor), # 0 = OFF, 1 = ON

--- (at the reinforcements for defender, and attacker in each of the mission templates below)
(troop_get_slot, ":prefer_large_battles", "trp_multiplayer_end", slot_troop_current_rumor), # 0 = OFF, 1 = ON
(assign, ":battle_multiplier", 120),
(try_begin),
(eq, ":prefer_large_battles", 1),
(assign, ":battle_multiplier", 250),
(try_end),

(val_add, ":battle_size_slider", 1),
(store_mul, ":battle_size", ":battle_size_slider", ":battle_multiplier"),
---
also: set throttle3 to 5/2 battle size not 7/2
reinforcement waves aim for 1/4th not 1/8th now, in order to having fewer reinforcement waves.
lead_charge 13061
village_raid 13756
castle_attack_walls_belfry 15280
castle_attack_walls_ladder 15793

2) Testing changed script_game_event_simulate_battle for possible change to mid game crashes on saving game (and sometimes movement across the map).
This was held back from yesterday's patch for longer testing. The concern was whether NPC sieges would be interfered with if one problem area was commented away, but I could see
factions taking castles even with the section I was concerned with commented away so I believe this does not make anything worse. It is still too early to tell if it is indeed better.
It was very stable on a fresh character aged to 61 days, but it is too early to tell if it will make much difference in (already aged) deep campaigns. It does not seem any worse and has not crashed in those 61 days.
If there are STILL issues with crashes, they are coming from timings at simple_triggers, so I will watch next week and decide if further tweaks are needed.

3) recruit 10 female elves for 200 dinars changed to 15 for 300 mnu_recruit_troops ln 24468