@@ -524,36 +524,62 @@ df.squad_order_rescue_hfst = {}
524524--- @field id integer all army.controllers seen and reached via InvasionOrder controllers ' armies have been of type = Invasion and absent from the ' all ' vector
525525--- @field entity_id integer References : historical_entity
526526--- @field site_id integer References : world_site<br>Invasion /Order : site to invade. Visit /Quest /VillainousVisit : site to ' visit'
527- --- @field unk_1 integer
527+ --- @field subregion_id integer References : world_region
528528--- @field pos_x integer Look like the unit is map_block , i.e. 3 * 16 * world tile. Position of target , which is the starting point for defeated invasions
529529--- @field pos_y integer
530- --- @field unk_18 integer Seen one case of 1990 for VillainVisiting
531- --- @field unk_1c integer same value for the same visitor
532- --- @field unk_20 df.container
530+ --- @field percentage_pop integer
531+ --- @field number_pop integer
532+ --- @field activity_id df.container
533533--- @field year integer
534534--- @field year_tick integer
535- --- @field unk_34 integer References : army_controller<br>id of other army controller (Invasion ) from same entity seen here
536- --- @field unk_38 integer References : army_controller<br>copy of the id seen here , as well as a t7 for a t5 controller
535+ --- @field parent_id integer References : army_controller<br>id of other army controller (Invasion ) from same entity seen here
536+ --- @field master_id integer References : army_controller<br>copy of the id seen here , as well as a t7 for a t5 controller
537537--- @field master_hf integer References : historical_figure<br>InvasionOrder : Civ /sitegov master. Invasion : leader of the attack , can be in army nemesis vector
538- --- @field general_hf integer References : historical_figure<br>InvasionOrder : leader of the attack. Invasion : subordinate squad leader (? ) in army nemesis vector. Can be same as master
539- --- @field unk_44_1 integer
540- --- @field unk_44_2 integer
541- --- @field visitor_nemesis_id integer References : nemesis_record<br>Set for VillainousVisit
542- --- @field unk_44_4 integer 3 , 6 seen for Villain
543- --- @field unk_44_5 df.container
544- --- @field unk_50 integer
545- --- @field unk_54 df.container
546- --- @field unk_44_11v df.container
547- --- @field unk_v50_b0 df.container
538+ --- @field commander_hf integer References : historical_figure<br>InvasionOrder : leader of the attack. Invasion : subordinate squad leader (? ) in army nemesis vector. Can be same as master
539+ --- @field origin_task_holder_nemesis_id integer References : nemesis_record
540+ --- @field origin_task_id integer
541+ --- @field origin_plot_holder_nemesis_id integer References : nemesis_record
542+ --- @field origin_plot_id integer
543+ --- @field ignore_track_entity_id df.container
544+ --- @field flag army_controller_flag
545+ --- @field assigned_squads df.container References : squad
546+ --- @field assigned_epp_entity_id df.container References : historical_entity
547+ --- @field assigned_epp_epp_id df.container References : entity_position_assignment
548548--- @field mission_report mission_report
549549--- @field data army_controller_data
550- --- @field type army_controller_type
550+ --- @field goal army_controller_goal
551551df .army_controller = {}
552552
553553--- @param key integer
554554--- @return army_controller | nil
555555function df .army_controller .find (key ) end
556556
557+ --- @class _army_controller_flag : integer , string , df.bitfield
558+ --- @field do_not_clear_army_dependencies 0
559+ --- @field [ 0] " do_not_clear_army_dependencies"
560+ --- @field delete_me 1
561+ --- @field [ 1] " delete_me"
562+ --- @field site_realized_over_goal 2
563+ --- @field [ 2] " site_realized_over_goal"
564+ --- @field civ_rep 3
565+ --- @field [ 3] " civ_rep"
566+ --- @field done_for_dwarf_mode 4
567+ --- @field [ 4] " done_for_dwarf_mode"
568+ df .army_controller .T_flag = {}
569+
570+ --- @class army_controller_flag
571+ --- @field [ 0] boolean
572+ --- @field do_not_clear_army_dependencies boolean
573+ --- @field [ 1] boolean
574+ --- @field delete_me boolean
575+ --- @field [ 2] boolean
576+ --- @field site_realized_over_goal boolean
577+ --- @field [ 3] boolean
578+ --- @field civ_rep boolean
579+ --- @field [ 4] boolean
580+ --- @field done_for_dwarf_mode boolean
581+
582+
557583--- @class army_controller_data : df.class
558584--- @field t1 army_controller_sub1
559585--- @field InvasionOrder army_controller_invasion_order
@@ -578,110 +604,114 @@ function df.army_controller.find(key) end
578604df .army_controller .T_data = {}
579605
580606
581- --- @class _army_controller_type : integer , string , df.enum
582- --- @field t0 0
583- --- @field [ 0] " t0"
584- --- @field t1 1
585- --- @field [ 1] " t1"
586- --- @field InvasionOrder 2
587- --- @field [ 2] " InvasionOrder"
588- --- @field t3 3
589- --- @field [ 3] " t3"
590- --- @field Invasion 4
591- --- @field [ 4] " Invasion"
592- --- @field t5 5
593- --- @field [ 5] " t5"
594- --- @field t6 6
595- --- @field [ 6] " t6"
596- --- @field t7 7
597- --- @field [ 7] " t7"
598- --- @field t8 8
599- --- @field [ 8] " t8"
600- --- @field t9 9
601- --- @field [ 9] " t9"
602- --- @field t10 10
603- --- @field [ 10] " t10"
604- --- @field t11 11
605- --- @field [ 11] " t11"
606- --- @field Visit 12
607- --- @field [ 12] " Visit"
608- --- @field t13 13
609- --- @field [ 13] " t13"
610- --- @field t14 14
611- --- @field [ 14] " t14"
612- --- @field t15 15
613- --- @field [ 15] " t15"
614- --- @field t16 16
615- --- @field [ 16] " t16"
616- --- @field Quest 17
617- --- @field [ 17] " Quest"
618- --- @field t18 18
619- --- @field [ 18] " t18"
620- --- @field t19 19
621- --- @field [ 19] " t19"
622- --- @field t20 20
623- --- @field [ 20] " t20"
624- --- @field t21 21
625- --- @field [ 21] " t21"
626- --- @field t22 22
627- --- @field [ 22] " t22"
628- --- @field t23 23
629- --- @field [ 23] " t23"
630- --- @field VillainousVisit 24
631- --- @field [ 24] " VillainousVisit"
632- df .army_controller .T_type = {}
633-
634- --- @class army_controller_type
607+ --- @class _army_controller_goal : integer , string , df.enum
608+ --- @field NONE -1
609+ --- @field [ 0] " NONE"
610+ --- @field HOLD_TERRITORY 1
611+ --- @field [ 1] " HOLD_TERRITORY"
612+ --- @field HARASS 2
613+ --- @field [ 2] " HARASS"
614+ --- @field SITE_INVASION 3
615+ --- @field [ 3] " SITE_INVASION"
616+ --- @field RAMPAGE 4
617+ --- @field [ 4] " RAMPAGE"
618+ --- @field CAMP 5
619+ --- @field [ 5] " CAMP"
620+ --- @field GUARD 6
621+ --- @field [ 6] " GUARD"
622+ --- @field HUNTING 7
623+ --- @field [ 7] " HUNTING"
624+ --- @field PATROL 8
625+ --- @field [ 8] " PATROL"
626+ --- @field PACIFY_SITE 9
627+ --- @field [ 9] " PACIFY_SITE"
628+ --- @field PACIFY_CONNECTED_HAMLET 10
629+ --- @field [ 10] " PACIFY_CONNECTED_HAMLET"
630+ --- @field WAIT 11
631+ --- @field [ 11] " WAIT"
632+ --- @field ESCAPE 12
633+ --- @field [ 12] " ESCAPE"
634+ --- @field MOVE_TO_SITE 13
635+ --- @field [ 13] " MOVE_TO_SITE"
636+ --- @field RECLAIM_SITE 14
637+ --- @field [ 14] " RECLAIM_SITE"
638+ --- @field CREATE_NEW_SITE 15
639+ --- @field [ 15] " CREATE_NEW_SITE"
640+ --- @field POSSE 16
641+ --- @field [ 16] " POSSE"
642+ --- @field SITE_WORK 17
643+ --- @field [ 17] " SITE_WORK"
644+ --- @field RECOVER_ARTIFACT 18
645+ --- @field [ 18] " RECOVER_ARTIFACT"
646+ --- @field RESCUE_HF 19
647+ --- @field [ 19] " RESCUE_HF"
648+ --- @field MAKE_REQUEST 20
649+ --- @field [ 20] " MAKE_REQUEST"
650+ --- @field PERFORM_TASK 21
651+ --- @field [ 21] " PERFORM_TASK"
652+ --- @field ASSASSINATE_HF 22
653+ --- @field [ 22] " ASSASSINATE_HF"
654+ --- @field ABDUCT_HF 23
655+ --- @field [ 23] " ABDUCT_HF"
656+ --- @field SABOTAGE_ENTITY 24
657+ --- @field [ 24] " SABOTAGE_ENTITY"
658+ --- @field INFILTRATE_SOCIETY 25
659+ --- @field [ 25] " INFILTRATE_SOCIETY"
660+ df .army_controller .T_goal = {}
661+
662+ --- @class army_controller_goal
635663--- @field [ 0] boolean
636- --- @field t0 boolean
664+ --- @field NONE boolean
637665--- @field [ 1] boolean
638- --- @field t1 boolean
666+ --- @field HOLD_TERRITORY boolean
639667--- @field [ 2] boolean
640- --- @field InvasionOrder boolean
668+ --- @field HARASS boolean
641669--- @field [ 3] boolean
642- --- @field t3 boolean
670+ --- @field SITE_INVASION boolean
643671--- @field [ 4] boolean
644- --- @field Invasion boolean
672+ --- @field RAMPAGE boolean
645673--- @field [ 5] boolean
646- --- @field t5 boolean
674+ --- @field CAMP boolean
647675--- @field [ 6] boolean
648- --- @field t6 boolean
676+ --- @field GUARD boolean
649677--- @field [ 7] boolean
650- --- @field t7 boolean
678+ --- @field HUNTING boolean
651679--- @field [ 8] boolean
652- --- @field t8 boolean
680+ --- @field PATROL boolean
653681--- @field [ 9] boolean
654- --- @field t9 boolean
682+ --- @field PACIFY_SITE boolean
655683--- @field [ 10] boolean
656- --- @field t10 boolean
684+ --- @field PACIFY_CONNECTED_HAMLET boolean
657685--- @field [ 11] boolean
658- --- @field t11 boolean
686+ --- @field WAIT boolean
659687--- @field [ 12] boolean
660- --- @field Visit boolean
688+ --- @field ESCAPE boolean
661689--- @field [ 13] boolean
662- --- @field t13 boolean
690+ --- @field MOVE_TO_SITE boolean
663691--- @field [ 14] boolean
664- --- @field t14 boolean
692+ --- @field RECLAIM_SITE boolean
665693--- @field [ 15] boolean
666- --- @field t15 boolean
694+ --- @field CREATE_NEW_SITE boolean
667695--- @field [ 16] boolean
668- --- @field t16 boolean
696+ --- @field POSSE boolean
669697--- @field [ 17] boolean
670- --- @field Quest boolean
698+ --- @field SITE_WORK boolean
671699--- @field [ 18] boolean
672- --- @field t18 boolean
700+ --- @field RECOVER_ARTIFACT boolean
673701--- @field [ 19] boolean
674- --- @field t19 boolean
702+ --- @field RESCUE_HF boolean
675703--- @field [ 20] boolean
676- --- @field t20 boolean
704+ --- @field MAKE_REQUEST boolean
677705--- @field [ 21] boolean
678- --- @field t21 boolean
706+ --- @field PERFORM_TASK boolean
679707--- @field [ 22] boolean
680- --- @field t22 boolean
708+ --- @field ASSASSINATE_HF boolean
681709--- @field [ 23] boolean
682- --- @field t23 boolean
710+ --- @field ABDUCT_HF boolean
683711--- @field [ 24] boolean
684- --- @field VillainousVisit boolean
712+ --- @field SABOTAGE_ENTITY boolean
713+ --- @field [ 25] boolean
714+ --- @field INFILTRATE_SOCIETY boolean
685715
686716--- @class army_controller_sub1 : df.class
687717--- @field unk_1 integer
0 commit comments