|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||

java.lang.Objectcz.cuni.amis.pogamut.ut2004.bot.impl.UT2004BotController<BOT>
cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004BotLogicController<BOT>
cz.cuni.amis.pogamut.ut3.bot.impl.UT3BotModuleController<BOT>
BOT - public class UT3BotModuleController<BOT extends cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004Bot>
The most advanced controller that is available. This controller contains all useful modules pre-instantiated.
| Field Summary | |
|---|---|
protected IAct |
act
Shortcut for the AbstractEmbodiedAgent.getAct(). |
protected cz.cuni.amis.pogamut.ut2004.bot.command.CompleteBotCommandsWrapper |
body
Wraps all available commands that can be issued to the virtual body of the bot inside UT2004. |
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensomotoric.AgentConfig |
config
Memory module specialized on the agent's configuration inside UT2004 - name, vision time, manual spawn, cheats (if enabled at GB2004). |
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.CTF |
ctf
Module specialized on CTF games. |
protected cz.cuni.amis.pogamut.ut2004.agent.navigation.floydwarshall.FloydWarshallMap |
fwMap
Path-planner ( IPathPlanner using NavPoints), you may use it to find paths inside the environment wihtout
waiting for round-trip of GetPath command and PathLists response from UT2004. |
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Game |
game
Memory module specialized on general info about the game - game type, time limit, frag limit, etc. |
protected cz.cuni.amis.pogamut.ut2004.agent.navigation.IUT2004GetBackToNavGraph |
getBackToNavGraph
Navigation helper that is able to get your bot back to the nearest navigation graph so you can use navigation
without fear of catastrophe. |
protected UT3AgentInfo |
info
Memory module specialized on general info about the agent whereabouts - location, rotation, health, current weapon, who is enemy/friend, etc. |
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Items |
items
Memory module specialized on items on the map - which are visible and which are probably spawned. |
protected AnnotationListenerRegistrator |
listenerRegistrator
Listener registrator that probes declared methods for the presence of EventListener, ObjectClassEventListener,
ObjectClassListener, ObjectEventListener and ObjectListener annotations and automatically registers
them as listeners on a specific events. |
protected cz.cuni.amis.pogamut.ut2004.bot.command.AdvancedLocomotion |
move
Shortcut for body.getAdvancedLocomotion() that allows you to manually steer the movement through the environment. |
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.NavigationGraphBuilder |
navBuilder
Navigation graph builder that may be used to manually extend the navigation graph of the UT2004. |
protected cz.cuni.amis.pogamut.ut2004.agent.navigation.IUT2004Navigation |
navigation
Command module that is internally using UT2004PathExecutor for path-following and FloydWarshallMap
for path planning resulting in unified class that can solely handle navigation of the bot within the environment. |
protected cz.cuni.amis.pogamut.ut2004.agent.navigation.IUT2004PathExecutor<ILocated> |
pathExecutor
Executor is used for following a path in the environment. |
protected IPathPlanner<ILocated> |
pathPlanner
Planner used to compute the path (consisting of navigation points) inside the map. |
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Players |
players
Memory module specialized on whereabouts of other players - who is visible, enemy / friend, whether bot can see anybody, etc. |
protected Random |
random
Random number generator that is usually useful to have during decision making. |
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensomotoric.Raycasting |
raycasting
Support for creating rays used for raycasting (see AutoTraceRay that is being utilized). |
protected cz.cuni.amis.pogamut.ut2004.agent.navigation.IUT2004RunStraight |
runStraight
Navigation helper that can run-straight to some point with stuck detectors. |
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Senses |
senses
Memory module specialized on agent's senses - whether the bot has been recently killed, collide with level's geometry, etc. |
protected cz.cuni.amis.pogamut.ut2004.bot.command.ImprovedShooting |
shoot
Shortcut for body.getAdvancedShooting() that allows you to shoot at opponent. |
protected UT3Visibility |
visibility
Module that provides visibility/cover information for the map. |
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.WeaponPrefs |
weaponPrefs
Weapon preferences for your bot. |
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensomotoric.Weaponry |
weaponry
Memory module specialized on info about the bot's weapon and ammo inventory - it can tell you which weapons are loaded, melee/ranged, etc. |
protected IVisionWorldView |
world
Shortcut for the UT2004Bot.getWorldView(). |
| Fields inherited from class cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004BotLogicController |
|---|
logicModule |
| Fields inherited from class cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004BotController |
|---|
bot, log, USER_LOG_CATEGORY_ID |
| Constructor Summary | |
|---|---|
UT3BotModuleController()
|
|
| Method Summary | |
|---|---|
void |
finishControllerInitialization()
|
cz.cuni.amis.pogamut.ut2004.bot.command.CompleteBotCommandsWrapper |
getBody()
|
cz.cuni.amis.pogamut.ut2004.agent.module.sensomotoric.AgentConfig |
getConfig()
|
cz.cuni.amis.pogamut.ut2004.agent.navigation.floydwarshall.FloydWarshallMap |
getFwMap()
|
cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Game |
getGame()
|
cz.cuni.amis.pogamut.ut2004.agent.module.sensor.AgentInfo |
getInfo()
|
cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Items |
getItems()
|
cz.cuni.amis.pogamut.ut2004.bot.command.AdvancedLocomotion |
getMove()
|
cz.cuni.amis.pogamut.ut2004.agent.module.sensor.NavigationGraphBuilder |
getNavBuilder()
|
cz.cuni.amis.pogamut.ut2004.agent.navigation.IUT2004Navigation |
getNavigation()
|
cz.cuni.amis.pogamut.unreal.agent.navigation.IUnrealPathExecutor<ILocated> |
getPathExecutor()
|
IPathPlanner<ILocated> |
getPathPlanner()
|
cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Players |
getPlayers()
|
Random |
getRandom()
|
cz.cuni.amis.pogamut.ut2004.agent.module.sensomotoric.Raycasting |
getRaycasting()
|
cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Senses |
getSenses()
|
cz.cuni.amis.pogamut.ut2004.bot.command.ImprovedShooting |
getShoot()
|
UT3Visibility |
getVisibility()
|
cz.cuni.amis.pogamut.ut2004.agent.module.sensor.WeaponPrefs |
getWeaponPrefs()
|
cz.cuni.amis.pogamut.ut2004.agent.module.sensomotoric.Weaponry |
getWeaponry()
|
IVisionWorldView |
getWorld()
|
void |
initializeController(BOT bot)
|
protected void |
initializeListeners(BOT bot)
Initializes listenerRegistrator and calls AnnotationListenerRegistrator.addListeners() method
to probe all declared methods for event-annotation presence. |
protected void |
initializeModules(BOT bot)
Initializes memory/command modules of the bot. |
protected void |
initializePathFinding(BOT bot)
Initializes path-finding modules: pathPlanner, fwMap and pathExecutor. |
| Methods inherited from class cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004BotLogicController |
|---|
beforeFirstLogic, getLogicInitializeTime, getLogicShutdownTime, initializeLogic, logic, logicInitialize, logicShutdown |
| Methods inherited from class cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004BotController |
|---|
botFirstSpawn, botInitialized, botKilled, botShutdown, getAct, getBot, getInitializeCommand, getLog, getName, getPassword, getWorldView, prepareBot |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface cz.cuni.amis.pogamut.ut2004.bot.IUT2004BotController |
|---|
botFirstSpawn, botInitialized, botKilled, botShutdown, getAct, getBot, getInitializeCommand, getLog, getPassword, getWorldView, prepareBot |
| Field Detail |
|---|
protected Random random
protected cz.cuni.amis.pogamut.ut2004.agent.navigation.IUT2004Navigation navigation
UT2004PathExecutor for path-following and FloydWarshallMap
for path planning resulting in unified class that can solely handle navigation of the bot within the environment.
In contrast to UT2004PathExecutor methods
of this module may be recalled every UT2004BotLogicController.logic() iteration even with
the same argument (which is not true for BasePathExecutor.followPath(cz.cuni.amis.pogamut.base.agent.navigation.IPathFuture).
Note that this class is actually initialized with instances of pathExecutor and fwMap
so you must take care if using add/remove stuck detectors or reinitilize this property to your liking (you can do that in UT2004BotController.botInitialized(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage)
method.
May be used since first UT2004BotLogicController.logic() is called.
Initialized inside initializePathFinding(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Game game
May be used since IUT2004BotController.botInitialized(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside initializeModules(UT2004Bot).
protected UT3AgentInfo info
May be used since first Self message is received, i.e, since the first IUT2004BotController.botFirstSpawn(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage, Self)
is called.
Initialized inside initializeModules(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Players players
May be used since IUT2004BotController.botInitialized(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside initializeModules(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Items items
May be used since IUT2004BotController.botInitialized(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside initializeModules(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Senses senses
May be used since IUT2004BotController.botInitialized(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside initializeModules(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensomotoric.Weaponry weaponry
May be used since IUT2004BotController.botInitialized(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside initializeModules(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensomotoric.AgentConfig config
May be used since IUT2004BotController.botInitialized(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, ConfigChange, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside initializeModules(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensomotoric.Raycasting raycasting
AutoTraceRay that is being utilized).
May be used since IUT2004BotController.botInitialized(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside initializeModules(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.bot.command.CompleteBotCommandsWrapper body
May be used since since the first IUT2004BotController.botFirstSpawn(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage, Self)
is called.
Initialized inside initializeModules(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.bot.command.ImprovedShooting shoot
Note: more weapon-handling methods are available through weaponry.
May be used since since the first IUT2004BotController.botFirstSpawn(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage, Self)
is called.
Initialized inside initializeModules(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.bot.command.AdvancedLocomotion move
Note: navigation is done via pathExecutor that needs PathHandle from the pathPlanner.
May be used since since the first IUT2004BotController.botFirstSpawn(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage, Self)
is called.
Initialized inside initializeModules(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.CTF ctf
CTF.isEnabled().
Initialized inside initializeModules(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.agent.navigation.IUT2004PathExecutor<ILocated> pathExecutor
May be used since since the first IUT2004BotController.botFirstSpawn(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage, Self)
is called.
Initialized inside initializePathFinding(UT2004Bot).
AbstractPathExecutor.addStuckDetector(cz.cuni.amis.pogamut.base.agent.navigation.IStuckDetector) is initialized with default stuck detectors:
UT2004TimeStuckDetector, UT2004PositionStuckDetector, UT2004DistanceStuckDetector.
If one of stuck detectors (heuristicly) finds out that the bot has stuck somewhere,
it reports it back to UT2004PathExecutor and the path executor will stop following the path switching
itself to PathExecutorState.STUCK, which in turn allows us to issue another follow-path command in the right time.
protected IPathPlanner<ILocated> pathPlanner
May be used since since the first IUT2004BotController.botFirstSpawn(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage, Self)
is called.
Initialized inside initializePathFinding(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.NavigationGraphBuilder navBuilder
May be used since IUT2004BotController.botInitialized(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage)
is called.
Initialized inside initializeModules(UT2004Bot).
protected AnnotationListenerRegistrator listenerRegistrator
EventListener, ObjectClassEventListener,
ObjectClassListener, ObjectEventListener and ObjectListener annotations and automatically registers
them as listeners on a specific events.
Note that this registrator is usable for 'this' object only! It will work only for 'this' object.
protected cz.cuni.amis.pogamut.ut2004.agent.module.sensor.WeaponPrefs weaponPrefs
WeaponPrefs class javadoc. It allows you to define preferences for
weapons to be used at given distance (together with their firing modes).
protected IVisionWorldView world
UT2004Bot.getWorldView().
protected IAct act
AbstractEmbodiedAgent.getAct().
protected cz.cuni.amis.pogamut.ut2004.agent.navigation.floydwarshall.FloydWarshallMap fwMap
IPathPlanner using NavPoints), you may use it to find paths inside the environment wihtout
waiting for round-trip of GetPath command and PathLists response from UT2004. It is much faster than
pathPlanner but you need to pass NavPoint instances to planner instead of
ILocated ... to find the nearest NavPoint instance, DistanceUtils is a handy, check especially
DistanceUtils.getNearest(java.util.Collection, ILocated).
protected cz.cuni.amis.pogamut.ut2004.agent.navigation.IUT2004GetBackToNavGraph getBackToNavGraph
navigation
without fear of catastrophe.
May be used since IUT2004BotController.botInitialized(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage)
is called.
Initialized inside initializePathFinding(UT2004Bot).
protected cz.cuni.amis.pogamut.ut2004.agent.navigation.IUT2004RunStraight runStraight
May be used since IUT2004BotController.botInitialized(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage)
is called.
Initialized inside initializePathFinding(UT2004Bot).
protected UT3Visibility visibility
May be used since IUT2004BotController.botInitialized(cz.cuni.amis.pogamut.ut2004.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage)
is called.
Initialized inside initializeModules(UT2004Bot).
| Constructor Detail |
|---|
public UT3BotModuleController()
| Method Detail |
|---|
public void initializeController(BOT bot)
initializeController in interface cz.cuni.amis.pogamut.ut2004.bot.IUT2004BotController<BOT extends cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004Bot>initializeController in class cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004BotLogicController<BOT extends cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004Bot>protected void initializeListeners(BOT bot)
listenerRegistrator and calls AnnotationListenerRegistrator.addListeners() method
to probe all declared methods for event-annotation presence.
bot - protected void initializePathFinding(BOT bot)
pathPlanner, fwMap and pathExecutor.
If you need different path planner / path executor - override this method and initialize your own modules.
bot - protected void initializeModules(BOT bot)
bot - public void finishControllerInitialization()
finishControllerInitialization in interface cz.cuni.amis.pogamut.ut2004.bot.IUT2004BotController<BOT extends cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004Bot>finishControllerInitialization in class cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004BotController<BOT extends cz.cuni.amis.pogamut.ut2004.bot.impl.UT2004Bot>public Random getRandom()
public cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Game getGame()
public cz.cuni.amis.pogamut.ut2004.agent.module.sensor.AgentInfo getInfo()
public cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Players getPlayers()
public cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Items getItems()
public cz.cuni.amis.pogamut.ut2004.agent.module.sensor.Senses getSenses()
public cz.cuni.amis.pogamut.ut2004.agent.module.sensomotoric.Weaponry getWeaponry()
public cz.cuni.amis.pogamut.ut2004.agent.module.sensomotoric.AgentConfig getConfig()
public cz.cuni.amis.pogamut.ut2004.agent.module.sensomotoric.Raycasting getRaycasting()
public cz.cuni.amis.pogamut.ut2004.bot.command.CompleteBotCommandsWrapper getBody()
public cz.cuni.amis.pogamut.ut2004.bot.command.ImprovedShooting getShoot()
public cz.cuni.amis.pogamut.ut2004.bot.command.AdvancedLocomotion getMove()
public cz.cuni.amis.pogamut.unreal.agent.navigation.IUnrealPathExecutor<ILocated> getPathExecutor()
public IPathPlanner<ILocated> getPathPlanner()
public cz.cuni.amis.pogamut.ut2004.agent.module.sensor.NavigationGraphBuilder getNavBuilder()
public cz.cuni.amis.pogamut.ut2004.agent.module.sensor.WeaponPrefs getWeaponPrefs()
public IVisionWorldView getWorld()
public cz.cuni.amis.pogamut.ut2004.agent.navigation.floydwarshall.FloydWarshallMap getFwMap()
public cz.cuni.amis.pogamut.ut2004.agent.navigation.IUT2004Navigation getNavigation()
public UT3Visibility getVisibility()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||