Siege Command UI Suggestions

Users who are viewing this thread

Blood Gryphon

Master Knight
WBVC
Hey @emrozdemir right now its extremely difficult to try and command a siege attacks/defense without delegation on. I think this really comes down to the fact the command UI is not made for sieges. I really think sieges should have their own command UI that differs from field battle command UI. Here are some suggestions that I think would open the door for the player to really take command if they want, without drastic changes.

  1. Sieges are set up into 3 lanes let take advantage of this. Remove the F5 dismount command (no horses in sieges so useless command) and replace it with a lane assignment command. You could have F5 open up another row of choices for lanes and you could choose F1-F9 for set positions in the siege. If you needed more than just 9 choices, then split it once again into infantry and ranged so F5 - F1/F2 - F1-F9 (would give us 9 positions for inf and 9 for archer spots). This would allow the player to move troops around without having to directly point to the position, like the delegation currently does.
  2. Transfer UI improvements to make it easy to move troops from squad to squad. Check my other thread for more details
  3. If fall back positions ever exist, use the F1-F4/F5 advance and fallback commands to move troops from front or fallback positions instead of their current field battle variations.
  4. If you really wanted to help the player, when in the siege preparation and when you press alt there should be floating text with the name of the lane to show the general area so players can easily identify where they need to send troops (similar to pressing alt to see flags in MP siege).

1YuI-.jpg
 

Terco_Viejo

Spanish Gifquisition
Grandmaster Knight
I certainly like what I see and you have my +1 for sure. However let me share this code inside module_strings:

<string id="str_formation_ai_behavior_text.BehaviorAdvance" text="{=RU6D7hSR}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} advancing." />
<string id="str_formation_ai_behavior_text.BehaviorAssaultWalls" text="{=b0yJ9JsW}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} assaulting walls." />
<string id="str_formation_ai_behavior_text.BehaviorBodyguard" text="{=KafFddmO}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} protecting general." />
<string id="str_formation_ai_behavior_text.BehaviorCautiousAdvance" text="{=faYiCHXK}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} moving into missile range." />
<string id="str_formation_ai_behavior_text.BehaviorCavalryScreen" text="{=1E6hFc0r}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} screening against enemy moving behind our back." />
<string id="str_formation_ai_behavior_text.BehaviorCharge" text="{=9yffPYUl}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} charging." />
<string id="str_formation_ai_behavior_text.BehaviorDefend" text="{=b7aDfCR9}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} defending." />
<string id="str_formation_ai_behavior_text.BehaviorDefendKeyPosition" text="{=24L5DoQt}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} defending key positions." />
<string id="str_formation_ai_behavior_text.BehaviorDefendCastleKeyPosition" text="{=jhosdZaX}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} defending key positions of the castle." />
<string id="str_formation_ai_behavior_text.BehaviorDefensiveRing" text="{=y0MmmV8C}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} forming a defensive ring around missile troops." />
<string id="str_formation_ai_behavior_text.BehaviorDestroySiegeWeapons" text="{=kvykuTJS}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} attacking siege weapons." />
<string id="str_formation_ai_behavior_text.BehaviorEliminateEnemyInsideCastle" text="{=a15eUf3B}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} fighting enemy inside the walls." />
<string id="str_formation_ai_behavior_text.BehaviorFireFromInfantryCover" text="{=y3OKIfj0}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} shooting from infantry cover." />
<string id="str_formation_ai_behavior_text.BehaviorFlank" text="{=nHSVy0ns}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} flanking from {#IS_LEFT}{#}left{#}multiple sides{\#}{?IS_MIDDLE}middle{?}{\?}{?IS_RIGHT}right{?}{\?}." />
<string id="str_formation_ai_behavior_text.BehaviorGeneral" text="{=4U6x48yQ}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} leading battle." />
<string id="str_formation_ai_behavior_text.BehaviorHoldHighGround" text="{=p4PIzGTP}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} holding high ground." />
<string id="str_formation_ai_behavior_text.BehaviorHorseArcherSkirmish" text="{=Tqa0r78j}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} doing hit and run." />
<string id="str_formation_ai_behavior_text.BehaviorMountedSkirmish" text="{=ilhkpKfp}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} skirmishing on mount." />
<string id="str_formation_ai_behavior_text.BehaviorProtectFlank" text="{=Lg3zeoYi}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} protecting {#IS_LEFT}{#}left{#}multiple{\#}{?IS_MIDDLE}middle{?}{\?}{?IS_RIGHT}right{?}{\?} flank{#IS_LEFT}{#}{#}s{\#}." />
<string id="str_formation_ai_behavior_text.BehaviorPullBack" text="{=N7w6zi0F}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} pulling back." />
<string id="str_formation_ai_behavior_text.BehaviorRegroup" text="{=Z3yCe1HS}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} regrouping." />
<string id="str_formation_ai_behavior_text.BehaviorReserve" text="{=DJgeYv9X}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} moving in reserve." />
<string id="str_formation_ai_behavior_text.BehaviorRetakeCastleKeyPosition" text="{=gA5fByM2}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} trying to retake {#IS_LEFT}{#}right wall{#}walls on multiple sides{\#}{?IS_MIDDLE}middle wall{?}{\?}{?IS_RIGHT}left wall{?}{\?}." />
<string id="str_formation_ai_behavior_text.BehaviorRetreat" text="{=Q2JYjFQl}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} retreating." />
<string id="str_formation_ai_behavior_text.BehaviorRetreatToKeep" text="{=29bsCzkn}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} retreating to safety." />
<string id="str_formation_ai_behavior_text.BehaviorSallyOut" text="{=PAa618xe}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} sallying out." />
<string id="str_formation_ai_behavior_text.BehaviorScreenedSkirmish" text="{=3wS4uOvU}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} skirmishing from behind." />
<string id="str_formation_ai_behavior_text.BehaviorShootFromCastleWalls" text="{=iCirZbD8}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} shooting from the castle walls." />
<string id="str_formation_ai_behavior_text.BehaviorShootFromSiegeTower" text="{=wKbafI9r}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} shooting from the siege tower." />
<string id="str_formation_ai_behavior_text.BehaviorSkirmish" text="{=7cnb2iEb}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} skirmishing." />
<string id="str_formation_ai_behavior_text.BehaviorSkirmishBehindFormation" text="{=5WJbtDqp}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} skirmishing behind allies." />
<string id="str_formation_ai_behavior_text.BehaviorSkirmishLine" text="{=yfNAkFgF}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} forming a skirmish line." />
<string id="str_formation_ai_behavior_text.BehaviorSparseSkirmish" text="{=7EVjgrFW}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} skirmishing sparcely." />
<string id="str_formation_ai_behavior_text.BehaviorStop" text="{=OSZUvWbG}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} ready." />
<string id="str_formation_ai_behavior_text.BehaviorTacticalCharge" text="{=dyY3hkH1}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} charging at {?IS_PLURAL}different enemy formations{?}an enemy formation{\?}." />
<string id="str_formation_ai_behavior_text.BehaviorUseMurderHoles" text="{=nVKEUvaC}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} using murder holes." />
<string id="str_formation_ai_behavior_text.BehaviorUseSiegeMachines" text="{=Tu46dFyH}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} using siege weapons." />
<string id="str_formation_ai_behavior_text.BehaviorVanguard" text="{=thIebQAR}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} riding in vanguard." />
<string id="str_formation_ai_behavior_text.BehaviorWaitForLadders" text="{=hSsS5xAa}{TROOP_NAMES_BEGIN}{?IS_PLURAL} and {?}{\?}{TROOP_NAMES_END} {?IS_PLURAL}are{?}is{\?} waiting for other siege machines to arrive." />
<string id="str_team_ai_tactic_text.TacticDefensiveEngagement" text="{=o0OQ5omY}Our plan is to remain on the defensive." />
<string id="str_team_ai_tactic_text.TacticFullScaleAttack" text="{=BPVFAl7J}Our plan is to attack with full force around our infantry." />
<string id="str_team_ai_tactic_text.TacticRangedHarrassmentOffensive" text="{=vXzJJtYq}Our plan is to get in range and shower them with arrows." />
<string id="str_team_ai_tactic_text.TacticFrontalCavalryCharge" text="{=CoHPb7DL}Our plan is to crush them with our cavalry and sweep the rest with a follow up attack." />
<string id="str_team_ai_tactic_text.TacticCoordinatedRetreat" text="{=KJDqOGEU}Our plan is to fall back in formation to fight another day." />
<string id="str_team_ai_tactic_text.TacticBreachWalls" text="{=uinDitbl}We must breach the walls." />
<string id="str_team_ai_tactic_text.TacticDefendCastle" text="{=WharCvcX}We must defend the walls and not let the enemy inside." />
<string id="str_team_ai_tactic_text.TacticCharge" text="{=Q3KrMlLd}CHARGE!" />
<string id="str_team_ai_tactic_text.TacticDefensiveLine" text="{=0JyRvjSF}Our plan is to form a defensive line." />
<string id="str_team_ai_tactic_text.TacticDefensiveRing" text="{=9dcQ2VZv}Our plan is to form a defensive ring around our ranged troops." />
<string id="str_team_ai_tactic_text.TacticHoldChokePoint" text="{=1wkANMRC}Our plan is to try and hold this narrow pass." />
<string id="str_team_ai_tactic_text.TacticSallyOutDefense" text="{=UX7reJ3K}We must rush to defend our siege machines lest the enemy destroy them." />
<string id="str_team_ai_tactic_text.TacticSallyOutHitAndRun" text="{=arWaVMpe}We must hit hard and destroy their siege machines." />
<string id="str_formation_ai_sergeant_instruction_text" text="{=kwKT6zKq}Your unit is expected to: {BEHAVIOUR_NAME_BEGIN}{?IS_PLURAL} and {?}{\?}{BEHAVIOUR_NAME_END}" />
<string id="str_formation_ai_soldier_instruction_text" text="{=Vap6ahft}Men! {BEHAVIOUR_NAME_BEGIN}!" />
<string id="str_formation_soldier_join_text" text="{=3vT6TQmF}{PLAYER.LINK}, you are in {SIDE_STRING} {CLASS_NAME}." />
<string id="str_formation_ai_side_change_string" text="{=3vT6TQmF}{PLAYER.LINK}, you are in {SIDE_STRING} {CLASS_NAME}." />
<string id="str_formation_ai_sergeant_instruction_text" text="{=!}Your unit is expected to: {BEHAVIOUR_NAME_BEGIN}{?IS_PLURAL} and {?}{\?}{BEHAVIOUR_NAME_END}{?IS_GENERAL_SIDE} from {SIDE_STRING}{?}{\?}" />
<string id="str_formation_ai_side_strings.Left" text="{=7zUWqY3O}Left" />
<string id="str_formation_ai_side_strings.Middle" text="{=qIvDX0JR}Center" />
<string id="str_formation_ai_side_strings.Right" text="{=25MeMNbP}Right" />
<string id="str_formation_class_string.Infantry" text="{=1Bm1Wk1v}Infantry" />
<string id="str_formation_class_string.Ranged" text="{=bIiBytSB}Archers" />
<string id="str_formation_class_string.Cavalry" text="{=YVGtcLHF}Cavalry" />
<string id="str_formation_class_string.HorseArcher" text="{=q2Y2DHiA}Horse Archers" />
<string id="str_troop_type_name.Ranged" text="{=rangedtroop}Ranged" />
<string id="str_troop_type_name.Cavalry" text="{=YVGtcLHF}Cavalry" />
<string id="str_troop_type_name.Infantry" text="{=1Bm1Wk1v}Infantry" />
<string id="str_troop_type_name.HorseArcher" text="{=ugJfuabA}Horse Archer" />
<string id="str_troop_type_name.Skirmisher" text="{=s9oED1IR}Skirmisher" />
<!-- New -->
<!--IS_GENERAL_SIDE true means there are several behaviours which explicitly declare their side, in which case in order not to repeat "from left side" several times, main body text will say it once and it won't be mentioned in each individiual behaviour's text-->
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorAdvance" text="{=aDA9PWFT}Advance" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorAssaultWalls" text="{=pLZeP6L6}Assault walls{?IS_GENERAL_SIDE}{?} from {SIDE_STRING} side{\?}" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorProtectGeneral" text="{=!} " />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorCautiousAdvance" text="{=qlw2LWgu}Move in to range" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorCavalryScreen" text="{=lQQPKo02}Move to screen us against foes moving behind our back" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorCharge" text="{=Yj0cQVLH}Charge!" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorDefend" text="{=iyob7aH3}Defend your position" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorDefendCastleKeyPosition" text="{=6Jx6qbZn}Defend{?IS_GENERAL_SIDE}{?} {SIDE_STRING}{\?} walls" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorDefendKeyPosition" text="{=lnKAqDVM}Defend key position" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorDefensiveRing" text="{=7xFRFV0P}Form a defensive ring." />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorDestroySiegeWeapons" text="{=7chepLLh}Destroy siege weapons{?IS_GENERAL_SIDE}{?} on {SIDE_STRING} side{\?}" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorEliminateEnemyInsideCastle" text="{=xHc1xhG8}Eliminate enemy inside castle." />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorFireFromInfantryCover" text="{=9C0J0ZkT}Fire from infantry cover." />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorFlank" text="{=8UFjXbbW}Flank{?IS_GENERAL_SIDE}{?} from {SIDE_STRING} side{\?}" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorGeneral" text="{=!} " />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorHoldHighGround" text="{=3xIv2cP9}Hold high ground" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorHorseArcherSkirmish" text="{=DTRwTvT4}Horse archer, skirmish!" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorMountedSkirmish" text="{=0hCHIcVk}Skirmish on mount" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorProtectFlank" text="{=xq62HAIO}Protect{?IS_GENERAL_SIDE}{?} {SIDE_STRING}{\?} flank of ally {TARGET_FORMATION}" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorPullBack" text="{=mJB7knQo}Pull back" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorRegroup" text="{=LBy6YDMV}Regroup" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorReserve" text="{=DItheHi7}Stay behind in reserve" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorRetakeCastleKeyPosition" text="{=b0Mv6mZy}Retake castle position!" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorRetreat" text="{=VbeHEAsa}Retreat" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorRetreatToKeep" text="{=VbeHEAsa}Retreat" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorSallyOut" text="{=1cd6u0qn}Open the gates and sally out!" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorScreenedSkirmish" text="{=vw1bbcww}Skirmish behind ally {TARGET_FORMATION}" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorShootFromCastleWalls" text="{=cqI6P8fr}Shoot from castle walls" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorShootFromSiegeTower" text="{=4l3BLxBC}Shoot from siege tower" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorSkirmish" text="{=VRdy76RQ}Skirmish" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorSkirmishBehindFormation" text="{=CkwERBcS}Skirmish behind ally formation." />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorSkirmishLine" text="{=JG2bgZMM}Skirmish in front of ally {TARGET_FORMATION}" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorSparseSkirmish" text="{=3IGjY8RG}Skirmish freely" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorStop" text="{=xSKFr3Rs}Wait" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorTacticalCharge" text="{=ka7vAxgo}Charge at enemy {TARGET_FORMATION}" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorUseMurderHole" text="{=oGflu1jV}Use murder hole" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorUseSiegeMachines" text="{=t5X1TNBq}Use siege machines{?IS_GENERAL_SIDE}{?} on {SIDE_STRING} side{\?}" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorVanguard" text="{=iVEZrZzs}Ride in vanguard" />
<string id="str_formation_ai_sergeant_instruction_behavior_text.BehaviorWaitForLadders" text="{=LZhRP3PM}Wait for other siege machines" />
<string id="str_build_time_day_hour" text="{=YNPYmO4g}{DAY_PREPARATION_TIME} {?PLURAL_DAYS}days{?}day{\?} {HOUR_PREPARATION_TIME} {?PLURAL_HOURS}hours{?}hour{\?}" />

Maybe the new "order of battle" feature will include a tailored UI for it all... at least it's not unreasonable to think in this plausible way 😌 .
 
excellent idea! I always misremember with number is where on the map, more than once I have ordered troops to walk along the length of the wall.
The code seems interesting as wel. I hope one of the next patches includes this.
as stated in other treads by other people, sieges (and battles) can use the order for nearby troops. maybe assign them to a new formation number automatically so this does not mess things up.
 
Top Bottom