001package com.fs.starfarer.api.campaign.ai; 002 003/** 004 * Variables set in memory that indicate certain decisions or behaviors 005 * of the AI. Used to communicate between otherwise-disconnected modules, such 006 * as ability AI and other fleet AI modules. 007 * 008 * Mods replacing parts of the fleet AI should try to use these if possible/appropriate. 009 * 010 * Mods replacing fleet AI entirely (i.e. all modules, and all ability AI) are free 011 * to either use these or devise their own system. 012 * 013 * @author Alex Mosolov 014 * 015 * Copyright 2015 Fractal Softworks, LLC 016 */ 017public class FleetAIFlags { 018 019 public static final String USE_EB_FOR_TRAVEL = "$ai_useEBForTravel"; 020 021 /** 022 * SectorEntityToken, set if actively pursuing something. 023 */ 024 public static final String PURSUIT_TARGET = "$ai_pursuitTarget"; 025 026 027 /** 028 * SectorEntityToken, nearest enemy the AI is trying to avoid. 029 */ 030 public static final String NEAREST_FLEEING_FROM = "$ai_fleeingFrom"; 031 032 033 /** 034 * SectorEntityToken, nearest enemy. May or may not be trying to avoid. 035 */ 036 public static final String NEAREST_ENEMY = "$ai_nearestEnemy"; 037 038 039 /** 040 * Vector2f, Where it wants to go. 041 */ 042 public static final String TRAVEL_DEST = "$ai_travelDest"; 043 044 045 /** 046 * Vector2f, Where it's actually going (due to avoiding enemies/terrain/etc). 047 * Not set while orbiting. 048 */ 049 public static final String MOVE_DEST = "$ai_moveDest"; 050 051 052 053 /** 054 * Boolean, whether the AI wants to keep the transponder on. 055 */ 056 public static final String WANTS_TRANSPONDER_ON = "$ai_wantsTransponderOn"; 057 058 059 060 /** 061 * Float, days spent pursuing a target that's no longer visible. 062 */ 063 public static final String DAYS_TARGET_UNSEEN = "$ai_daysTargetUnseen"; 064 065 /** 066 * Vector2f, last location where the target was seen. 067 */ 068 public static final String LAST_SEEN_TARGET_LOC = "$ai_lastSeenTargetLoc"; 069 070 071 /** 072 * Does not get reset when the target changes. Used for an outside script to indicate where the fleet 073 * should start looking for a target it's trying to intercept. 074 */ 075 public static final String PLACE_TO_LOOK_FOR_TARGET = "$ai_placeToLook"; 076 077 public static final String SEEN_TARGET_JUMPING_FROM = "$ai_seenTargetJumpingFrom"; 078 079 /** 080 * Float, direction the target was going when last seen. 081 */ 082 public static final String LAST_SEEN_TARGET_HEADING = "$ai_lastSeenTargetHeading"; 083 084 085 /** 086 * Boolean, whether the fleet has an ability-induced speed penalty. 087 */ 088 public static final String HAS_SPEED_PENALTY = "$ai_hasSpeedPenalty"; 089 090 public static final String USED_INTERDICTION_PULSE = "$ai_usedIP"; 091 092 public static final String HAS_VISION_PENALTY = "$ai_hasVisionPenalty"; 093 public static final String HAS_SPEED_BONUS = "$ai_hasSpeedBonus"; 094 public static final String HAS_VISION_BONUS = "$ai_hasVisionBonus"; 095 096 public static final String HAS_LOWER_DETECTABILITY = "$ai_hasLowerDetectability"; 097 public static final String HAS_HIGHER_DETECTABILITY = "$ai_hasHigherDetectability"; 098 099 100} 101 102 103 104 105 106 107 108 109 110 111