advmode

advmode.ui_advmode_menu

<enum-type type-name="ui_advmode_menu" base-type="int16_t">
  <enum-item name="Default" value="0"/>
  <enum-item name="Look"/>
  <enum-item name="ConversationAddress"/>
  <enum-item name="ConversationSelect"/>
  <enum-item name="ConversationSpeak"/>
  <enum-item name="Inventory"/>
  <enum-item name="Drop"/>
  <enum-item name="ThrowItem"/>
  <enum-item name="Wear"/>
  <enum-item name="Remove"/>
  <enum-item name="Interact"/>
  <enum-item name="Put"/>
  <enum-item name="PutContainer"/>
  <enum-item name="Eat"/>
  <enum-item name="ThrowAim"/>
  <enum-item name="Fire"/>
  <enum-item name="Get"/>
  <enum-item name="Unk17"/>
  <enum-item name="CombatPrefs"/>
  <enum-item name="Companions"/>
  <enum-item name="MovementPrefs"/>
  <enum-item name="SpeedPrefs"/>
  <enum-item name="InteractAction"/>
  <enum-item name="MoveCarefully"/>
  <enum-item name="Announcements"/>
  <enum-item name="UseBuilding"/>
  <enum-item name="Travel"/>
  <enum-item name="Unk27"/>
  <enum-item name="Unk28"/>
  <enum-item name="SleepConfirm"/>
  <enum-item name="Unk30"/>
  <enum-item name="Unk31"/>
  <enum-item name="Unk32"/>
  <enum-item name="FallAction"/>
  <enum-item name="ViewTracks"/>
  <enum-item name="Jump"/>
  <enum-item name="Unk36"/>
  <enum-item name="AttackConfirm"/>
  <enum-item name="AttackType"/>
  <enum-item name="AttackBodypart"/>
  <enum-item name="AttackStrike"/>
  <enum-item name="Unk41"/>
  <enum-item name="Unk42"/>
  <enum-item name="DodgeDirection"/>
</enum-type>

advmode.conversation

<struct-type type-name="conversation">
  <stl-string name="conv_title"/>
  <enum base-type="int32_t" name="state">
    <enum-item name="started"/>
    <enum-item name="active"/>
    <enum-item name="finished"/>
    <enum-item name="quit"/>
  </enum>
  <stl-vector type-name="int16_t" name="talk_choices"/>
  <int32_t name="unk_30" ref-target="unit"/>
  <int32_t name="unk_34" ref-target="historical_figure"/>
  <int32_t name="unk_38"/>
  <int32_t name="unk_3c" ref-target="unit"/>
  <int32_t name="unk_40" ref-target="historical_figure"/>
  <int32_t name="unk_44"/>
  <int32_t name="unk_48" ref-target="unit"/>
  <int32_t name="unk_4c" ref-target="historical_figure"/>
  <int32_t name="unk_50"/>
  <stl-vector name="unk_54" pointer-type="nemesis_record"/>
  <stl-vector name="unk_64" pointer-type="historical_entity"/>
  <int8_t name="unk_74"/>
  <int32_t name="unk_78"/>
  <int32_t name="unk_7c"/>
  <int16_t name="unk_80"/>
  <stl-vector name="unk_84"/>
  <stl-vector name="unk_94"/>
  <stl-vector name="unk_a4"/>
  <pointer name="location" type-name="building">
    civzone
  </pointer>
  <int8_t name="unk_b8"/>
  <int32_t name="unk_bc"/>
  <stl-vector name="speech">
    <pointer>
      <stl-vector name="text" pointer-type="stl-string">
        wordwrap
      </stl-vector>
      <int32_t name="speaker" ref-target="unit"/>
      <int32_t name="unk_14"/>
      <int32_t name="unk_18"/>
      <int16_t name="fg"/>
      <int16_t name="bg"/>
      <int16_t name="bright"/>
    </pointer>
  </stl-vector>
</struct-type>

advmode.talk_choice_type

<enum-type type-name="talk_choice_type">
  <enum-item name="Greet"/>
  <enum-item name="Nevermind"/>
  <enum-item name="Trade"/>
  <enum-item name="AskJoin"/>
  <enum-item name="AskSurroundings"/>
  <enum-item name="SayGoodbye"/>
  <enum-item name="AskStructure"/>
  <enum-item name="AskFamily"/>
  <enum-item name="AskProfession"/>
  <enum-item name="AskPermissionSleep"/>
  <enum-item name="AccuseNightCreature"/>
  <enum-item name="AskTroubles"/>
  <enum-item name="BringUpEvent"/>
  <enum-item name="SpreadRumor"/>
  <enum-item name="ReplyGreeting"/>
  <enum-item name="RefuseConversation"/>
  <enum-item name="ReplyImpersonate"/>
  <enum-item name="BringUpIncident"/>
  <enum-item name="TellNothingChanged"/>
  <enum-item name="Goodbye2"/>
  <enum-item name="ReturnTopic"/>
  <enum-item name="ChangeSubject"/>
  <enum-item name="AskTargetAction"/>
  <enum-item name="RequestSuggestAction"/>
  <enum-item name="AskJoinInsurrection"/>
  <enum-item name="AskJoinRescue"/>
  <enum-item name="StateOpinion"/>
  <enum-item name="RespondJoinInsurrection"/>
  <enum-item/>
  <enum-item name="AllowPermissionSleep"/>
  <enum-item name="DenyPermissionSleep"/>
  <enum-item/>
  <enum-item name="AskJoinAdventure"/>
  <enum-item name="AskGuideLocation"/>
  <enum-item name="RespondJoin"/>
  <enum-item name="RespondJoin2"/>
  <enum-item name="OfferCondolences"/>
  <enum-item name="StateNotAcquainted"/>
  <enum-item name="SuggestTravel"/>
  <enum-item name="SuggestTalk"/>
  <enum-item name="RequestSelfRescue"/>
  <enum-item name="AskWhatHappened"/>
  <enum-item name="AskBeRescued"/>
  <enum-item name="SayNotRemember"/>
  <enum-item/>
  <enum-item name="SayNoFamily"/>
  <enum-item name="StateUnitLocation"/>
  <enum-item name="ReferToElder"/>
  <enum-item name="AskComeCloser"/>
  <enum-item name="DoBusiness"/>
  <enum-item name="AskComeStoreLater"/>
  <enum-item name="AskComeMarketLater"/>
  <enum-item name="TellTryShopkeeper"/>
  <enum-item name="DescribeSurroundings"/>
  <enum-item name="AskWaitUntilHome"/>
  <enum-item name="DescribeFamily"/>
  <enum-item name="StateAge"/>
  <enum-item name="DescribeProfession"/>
  <enum-item name="AnnounceNightCreature"/>
  <enum-item name="StateIncredulity"/>
  <enum-item name="BypassGreeting"/>
  <enum-item name="AskCeaseHostilities"/>
  <enum-item name="DemandYield"/>
  <enum-item name="HawkWares"/>
  <enum-item name="YieldTerror"/>
  <enum-item name="Yield"/>
  <enum-item name="ExpressOverwhelmingEmotion"/>
  <enum-item name="ExpressGreatEmotion"/>
  <enum-item name="ExpressEmotion"/>
  <enum-item name="ExpressMinorEmotion"/>
  <enum-item name="ExpressLackEmotion"/>
  <enum-item name="OutburstFleeConflict"/>
  <enum-item name="StateFleeConflict"/>
  <enum-item name="MentionJourney"/>
  <enum-item name="SummarizeTroubles"/>
  <enum-item name="AskAboutIncident"/>
  <enum-item name="AskDirectionsPerson"/>
  <enum-item name="AskDirectionsPlace"/>
  <enum-item name="AskWhereabouts"/>
  <enum-item name="RequestGuide"/>
  <enum-item name="RequestGuide2"/>
  <enum-item name="ProvideDirections"/>
  <enum-item name="ProvideWhereabouts"/>
  <enum-item name="TellTargetSelf"/>
  <enum-item name="TellTargetDead"/>
  <enum-item name="RecommendGuide"/>
  <enum-item name="ProfessIgnorance"/>
  <enum-item name="TellAboutPlace"/>
  <enum-item name="AskFavorMenu"/>
  <enum-item name="AskWait"/>
  <enum-item name="AskFollow"/>
  <enum-item name="ApologizeBusy"/>
  <enum-item name="ComplyOrder"/>
  <enum-item name="AgreeFollow"/>
  <enum-item name="ExchangeItems"/>
  <enum-item name="AskComeCloser2"/>
  <enum-item name="InitiateBarter"/>
  <enum-item name="AgreeCeaseHostile"/>
  <enum-item name="RefuseCeaseHostile"/>
  <enum-item name="RefuseCeaseHostile2"/>
  <enum-item name="RefuseYield"/>
  <enum-item name="RefuseYield2"/>
  <enum-item name="Brag"/>
  <enum-item name="DescribeRelation"/>
  <enum-item name="ClaimSite"/>
  <enum-item name="AnnounceLairHunt"/>
  <enum-item name="RequestDuty"/>
  <enum-item name="AskJoinService"/>
  <enum-item name="AcceptService"/>
  <enum-item name="TellRemainVigilant"/>
  <enum-item name="GiveServiceOrder"/>
  <enum-item name="WelcomeSelfHome"/>
  <enum-item/>
  <enum-item name="AskTravelReason"/>
  <enum-item name="TellTravelReason"/>
  <enum-item name="AskLocalRuler"/>
  <enum-item name="ComplainAgreement"/>
  <enum-item name="CancelAgreement"/>
  <enum-item name="SummarizeConflict"/>
  <enum-item name="SummarizeViews"/>
  <enum-item name="AskClaimStrength"/>
  <enum-item name="AskArmyPosition"/>
  <enum-item name="AskOtherClaims"/>
  <enum-item name="AskDeserters"/>
  <enum-item name="AskSiteNeighbors"/>
  <enum-item name="DescribeSiteNeighbors"/>
  <enum-item name="RaiseAlarm"/>
  <enum-item name="DemandDropWeapon"/>
  <enum-item name="AgreeComplyDemand"/>
  <enum-item name="RefuseComplyDemand"/>
  <enum-item name="AskLocationObject"/>
  <enum-item name="DemandTribute"/>
  <enum-item name="AgreeGiveTribute"/>
  <enum-item name="RefuseGiveTribute"/>
  <enum-item name="OfferGiveTribute"/>
  <enum-item name="AgreeAcceptTribute"/>
  <enum-item name="RefuseAcceptTribute"/>
  <enum-item name="CancelTribute"/>
  <enum-item name="OfferPeace"/>
  <enum-item name="AgreePeace"/>
  <enum-item name="RefusePeace"/>
  <enum-item name="AskTradeDepotLater"/>
  <enum-item name="ExpressAstonishment"/>
  <enum-item name="CommentWeather"/>
  <enum-item name="CommentNature"/>
  <enum-item name="SummarizeTerritory"/>
  <enum-item name="SummarizePatrols"/>
  <enum-item name="SummarizeOpposition"/>
  <enum-item name="DescribeRefugees"/>
  <enum-item name="AccuseTroublemaker"/>
  <enum-item name="AskAdopt"/>
  <enum-item name="AgreeAdopt"/>
  <enum-item name="RefuseAdopt"/>
  <enum-item name="RevokeService"/>
  <enum-item name="InviteService"/>
  <enum-item name="AcceptInviteService"/>
  <enum-item name="RefuseShareInformation"/>
  <enum-item name="RefuseInviteService"/>
  <enum-item name="RefuseRequestService"/>
  <enum-item name="OfferService"/>
  <enum-item name="AcceptPositionService"/>
  <enum-item name="RefusePositionService"/>
  <enum-item name="InvokeNameBanish"/>
  <enum-item name="InvokeNameService"/>
  <enum-item name="GrovelMaster"/>
  <enum-item name="DemandItem"/>
  <enum-item name="GiveServiceReport"/>
  <enum-item name="OfferEncouragement"/>
  <enum-item name="PraiseTaskCompleter"/>
  <enum-item name="AskAboutPersonMenu"/>
  <enum-item name="AskAboutPerson"/>
  <enum-item name="TellAboutPerson"/>
  <enum-item name="AskFeelings"/>
  <enum-item name="TellThoughts"/>
  <enum-item name="AskServices"/>
  <enum-item name="TellServices"/>
  <enum-item name="OrderDrink"/>
  <enum-item name="RentRoom"/>
  <enum-item name="ExtendRoomRental"/>
  <enum-item name="ConfirmServiceOrder"/>
  <enum-item name="AskJoinEntertain"/>
  <enum-item name="RespondJoinEntertain"/>
  <enum-item name="AskJoinTroupe"/>
  <enum-item/>
  <enum-item name="RefuseTroupeApplication"/>
  <enum-item name="InviteJoinTroupe"/>
  <enum-item name="AcceptTroupeInvitation"/>
  <enum-item name="RefuseTroupeInvitation"/>
  <enum-item name="KickOutOfTroupe"/>
  <enum-item name="CreateTroupe"/>
  <enum-item name="LeaveTroupe"/>
  <enum-item/>
  <enum-item name="TellBePatientForService"/>
  <enum-item name="TellNoServices"/>
  <enum-item name="AskWaitUntilThere"/>
  <enum-item name="DenyWorkingHere"/>
  <enum-item name="ExpressEmotionMenu"/>
  <enum-item name="StateValueMenu"/>
  <enum-item name="StateValue"/>
  <enum-item/>
  <enum-item name="ProvideDirectionsBuilding"/>
  <enum-item name="Argue"/>
  <enum-item name="Flatter"/>
  <enum-item name="DismissArgument"/>
  <enum-item name="RespondPassively"/>
  <enum-item name="Acquiesce"/>
  <enum-item name="DerideFlattery"/>
  <enum-item name="ExpressOutrageAtDismissal"/>
  <enum-item name="PressArgument"/>
  <enum-item name="DropArgument"/>
  <enum-item name="AskWork"/>
  <enum-item name="AskWorkGroup"/>
  <enum-item name="GrantWork"/>
  <enum-item name="RefuseWork"/>
  <enum-item name="GrantWorkGroup"/>
  <enum-item name="RefuseWorkGroup"/>
</enum-type>

advmode.talk_choice

<struct-type type-name="talk_choice">
  <enum name="type" base-type="int32_t" type-name="talk_choice_type"/>
  <pointer name="event" type-name="entity_event"/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t init-value="-1"/>
</struct-type>

advmode.ui_advmode

<struct-type type-name="ui_advmode">
  <enum base-type="int16_t" name="menu" type-name="ui_advmode_menu"/>
  <int8_t name="site_level_zoom">
    when set, the travel map is zoomed in to show site details
  </int8_t>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <bool name="travel_clouds"/>
  <enum base-type="int8_t" name="travel_right_map">
    <enum-item name="MapNone"/>
    <enum-item name="MapSite"/>
    <enum-item name="MapWorld"/>
  </enum>
  <bool name="show_menu">
    bottom menu in travel mode
  </bool>
  <stl-string name="message">
    you must move from surrounding obstacles
  </stl-string>
  <int16_t name="message_color"/>
  <int8_t name="message_brightness"/>
  <bool name="travel_not_moved"/>
  <int8_t name="unk4b"/>
  <uint8_t name="travel_move_countdown"/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int8_t/>
  <int32_t name="tick_counter">
    goes up to XXX
  </int32_t>
  <int32_t name="frame_counter">
    goes up to 10000 (ticks?)
  </int32_t>
  <int16_t name="unk6"/>
  <bool name="sleeping"/>
  <int8_t/>
  <int32_t name="bogeymen_timer">
    initialized to 4-7 when the cackling starts
  </int32_t>
  <int32_t name="bogeymen_killed"/>
  <int32_t name="unk9">
    initialized to 60 when the cackling starts
  </int32_t>
  <int32_t name="unk10"/>
  <stl-vector type-name="int32_t" name="searched_x"/>
  <stl-vector type-name="int32_t" name="searched_y"/>
  <stl-vector type-name="int32_t" name="searched_z"/>
  <stl-vector type-name="int32_t" name="searched_timeout"/>
  <int8_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int8_t/>
  <stl-vector name="unk20" type-name="int32_t"
      ref-target="world_site"/>
  <stl-vector name="unk21" type-name="int32_t"/>
  <stl-vector name="unk22" type-name="int32_t"/>
  <int32_t/>
  <int32_t/>
  <int8_t/>
  <static-array type-name="int32_t" count="1000"/>
  <static-array type-name="int32_t" count="1000"/>
  <static-array type-name="int32_t" count="1000"/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <static-array type-name="int16_t" count="9"/>
  <static-array type-name="int16_t" count="9"/>
  <static-array type-name="int16_t" count="9"/>
  <static-array count="9" name="unk_v40_1">
    <int16_t/>
    <int8_t/>
    <int32_t/>
    <int32_t/>
    <int32_t/>
  </static-array>
  <static-array type-name="int8_t" count="9"/>
  <static-array type-name="int8_t" count="9"/>
  <static-array type-name="int32_t" count="9"/>
  <static-array type-name="int8_t" count="9"/>
  <int32_t>
    race
  </int32_t>
  <int32_t>
    caste
  </int32_t>
  <int8_t/>
  <int32_t/>
  <int32_t/>
  <int8_t/>
  <int32_t/>
  <compound name="unk_3124">
    <int16_t/>
    <int16_t/>
    <int16_t/>
    <int16_t/>
    <int16_t/>
    <int16_t/>
    <int32_t/>
    <int32_t/>
    <int32_t/>
    <int32_t/>
    <int32_t/>
    <int32_t/>
    <int32_t/>
    <int32_t/>
    <int32_t/>
    <int32_t/>
    <int8_t/>
    <int8_t/>
    <int8_t/>
    <stl-vector/>
    <int32_t/>
    <static-array type-name="int8_t" count="20736"/>
    <int8_t/>
    <int8_t/>
    <int16_t/>
    <int16_t/>
    <int16_t/>
    <int32_t/>
    <stl-vector/>
    <int32_t/>
    <stl-vector/>
    <int32_t/>
    <stl-vector/>
    <int32_t/>
    <int8_t/>
    <int8_t/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <int32_t/>
    <stl-string/>
    <int8_t/>
    <int8_t/>
    <int8_t/>
    <stl-vector/>
    <stl-bit-vector/>
    <stl-bit-vector/>
    <int32_t/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
  </compound>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <int8_t/>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <stl-vector/>
  <int32_t/>
  <int8_t/>
  <int16_t name="unk23"/>
  <int16_t name="unk24"/>
  <int16_t name="unk25"/>
  <int16_t name="unk26"/>
  <int32_t name="player_id" refers-to="$global.world.nemesis.all[$]"/>
  <int16_t/>
  <int16_t/>
  <int16_t/>
  <int32_t/>
  <compound name="conversation">
    <stl-vector name="activity" pointer-type="activity_entry"/>
    <stl-vector name="activity_event" pointer-type="activity_event"/>
    <int32_t name="cursor_activity"
        refers-to="$$._parent.activity[$]"/>
    <int32_t name="cursor_choice" refers-to="$$._parent.choices[$]"/>
    <int32_t name="current_page"/>
    <stl-vector name="page_top_choices" type-name="int32_t"/>
    <stl-vector name="page_bottom_choices" type-name="int32_t"/>
    <stl-vector name="choices">
      <pointer>
        <pointer name="choice" type-name="talk_choice"/>
        <stl-vector name="keywords" pointer-type="stl-string"/>
        <stl-vector name="title" pointer-type="stl-string"/>
        <int32_t name="orig_index"/>
        <int32_t name="ranking"/>
      </pointer>
    </stl-vector>
    <stl-string name="filter"/>
    <stl-vector name="targets">
      <pointer>
        <int32_t name="unit_id" ref-target="unit"/>
        <int32_t name="histfig_id" ref-target="historical_figure"/>
        <enum base-type="int32_t" name="type">
          <enum-item name="Talk"/>
          <enum-item/>
          <enum-item/>
          <enum-item name="Shout"/>
          <enum-item name="Perform"/>
        </enum>
      </pointer>
    </stl-vector>
    <int32_t name="cursor_target" refers-to="$$._parent.targets[$]"/>
  </compound>
  <stl-vector/>
  <int32_t/>
  <stl-vector name="unk28"/>
  <stl-vector name="unk29"/>
  <stl-vector name="unk30"/>
  <stl-vector name="actions"
      pointer-type="adventure_movement_option"/>
  <stl-vector name="unk31">
    v0.34.08
  </stl-vector>
  <int32_t/>
  <int8_t/>
  <int8_t/>
  <int8_t/>
  <int8_t/>
  <int8_t/>
  <int8_t/>
  <int8_t/>
  <int32_t/>
  <compound name="companions">
    <stl-vector name="unit" pointer-type="unit"/>
    <stl-bit-vector name="unit_visible"/>
    <compound name="unit_position" type-name="coord_path"/>
    <stl-vector name="all_histfigs" type-name="int32_t"
        ref-target="historical_figure">
      includes dead
    </stl-vector>
  </compound>
  <stl-vector name="unk37"/>
  <stl-vector name="unk38"/>
  <int32_t name="unk_1e4"/>
  <int32_t name="unk_1e8"/>
  <int32_t name="unk_1ec"/>
  <int32_t name="unk_1f0"/>
  <int32_t name="unk_1f4"/>
  <int32_t name="unk_1f8"/>
  <int32_t name="unk_1fc"/>
  <int32_t name="unk_200"/>
  <stl-string name="unk39"/>
  <int32_t name="unk_220"/>
  <int32_t name="unk_224"/>
  <compound name="unk_v40_2">
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <int8_t/>
    <stl-vector/>
    <stl-vector/>
  </compound>
  <compound name="unk_v40_3">
    <int32_t/>
    <stl-vector/>
  </compound>
  <int32_t/>
  <int32_t/>
  <int32_t/>
  <compound name="unk_v40_4">
    <static-array count="100" name="unk_v40_4a">
      <int32_t/>
      <int16_t/>
      <int16_t/>
      <int16_t/>
      <int16_t/>
      <int16_t/>
      <int16_t/>
      <int16_t/>
      <int32_t/>
      <int32_t/>
    </static-array>
    <int32_t/>
  </compound>
  <compound name="unk_v40_5">
    <stl-vector/>
    <stl-vector/>
    <stl-vector/>
    <int32_t/>
    <stl-vector/>
    <stl-vector/>
  </compound>
  <compound name="unk_v42_1">
    <int32_t/>
    <stl-vector/>
    <stl-vector/>
    <stl-string/>
    <int8_t/>
    <int32_t/>
    <int32_t/>
    <int32_t/>
    <stl-vector/>
  </compound>
  <int32_t/>
  <int16_t/>
  <int16_t/>
  <int16_t/>
  <int8_t/>
  <int8_t/>
  <int16_t/>
  <int16_t/>
  <stl-string/>
</struct-type>

advmode.adventure_movement_option

<class-type type-name="adventure_movement_option"
    original-name="adventure_movement_optionst">
  ...
</class-type>