BOT
- public class UDKBotModuleController<BOT extends UDKBot> extends UDKBotLogicController<BOT>
Modules currently available:
Modifier and Type | Field and Description |
---|---|
protected IAct |
act
Shortcut for the
UDKBotModuleControllerNew#getAct() . |
protected CompleteBotCommandsWrapper |
body
Wraps all available commands that can be issued to the virtual body of the bot inside UDK.
|
protected AgentConfig |
config
Memory module specialized on the agent's configuration inside UDK - name, vision time, manual spawn, cheats (if enabled at GB2004).
|
protected ItemDescriptors |
descriptors
Sensory module that provides mapping between
ItemType and ItemDescriptor providing
an easy way to obtain item descriptors for various items in UDK. |
protected Game |
game
Memory module specialized on general info about the game - game type, time limit, frag limit, etc.
|
protected AgentInfo |
info
Memory module specialized on general info about the agent whereabouts - location, rotation, health, current weapon, who is enemy/friend, etc.
|
protected 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 AdvancedLocomotion |
move
Shortcut for body.getAdvancedLocomotion() that allows you to manually steer the movement through the environment.
|
protected IPathExecutor<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 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 Raycasting |
raycasting
Support for creating rays used for raycasting (see
AutoTraceRay that is being utilized). |
protected Senses |
senses
Memory module specialized on agent's senses - whether the bot has been recently killed, collide with level's geometry, etc.
|
protected AdvancedShooting |
shoot
Shortcut for body.getAdvancedShooting() that allows you to shoot at opponent.
|
protected 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
UDKBotModuleControllerNew#getWorldView() . |
logicModule
bot, user, USER_LOG_CATEGORY_ID
Constructor and Description |
---|
UDKBotModuleController() |
Modifier and Type | Method and Description |
---|---|
void |
initializeController(BOT bot)
Called during the construction of the
UDKBot before the GameBots2004 greets the bot even before
IUDKBotController.prepareBot(UDKBot) method. |
protected void |
initializeListeners(BOT bot)
Initializes
UDKBotModuleControllerNew#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:
UDKBotModuleControllerNew#pathPlanner and UDKBotModuleControllerNew#pathExecutor . |
beforeFirstLogic, getLogicInitializeTime, getLogicShutdownTime, logic, logicInitialize, logicShutdown
botInitialized, botKilled, botShutdown, botSpawned, getAct, getBot, getInitializeCommand, getLog, getPassword, getWorldView, prepareBot
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
botInitialized, botKilled, botShutdown, botSpawned, getInitializeCommand, getPassword, prepareBot
protected Random random
protected Game game
May be used since IUDKBotController.botInitialized(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside UDKBotModuleControllerNew#initializeModules(UDKBot)
.
protected AgentInfo info
May be used since first Self
message is received, i.e, since the first IUDKBotController.botSpawned(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage, Self)
is called.
Initialized inside UDKBotModuleControllerNew#initializeModules(UDKBot)
.
protected Players players
May be used since IUDKBotController.botInitialized(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside UDKBotModuleControllerNew#initializeModules(UDKBot)
.
protected ItemDescriptors descriptors
ItemType
and ItemDescriptor
providing
an easy way to obtain item descriptors for various items in UDK.
May be used since IUDKBotController.botInitialized(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside UDKBotModuleControllerNew#initializeModules(UDKBot)
.
protected Items items
May be used since IUDKBotController.botInitialized(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside UDKBotModuleControllerNew#initializeModules(UDKBot)
.
protected Senses senses
May be used since IUDKBotController.botInitialized(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside UDKBotModuleControllerNew#initializeModules(UDKBot)
.
protected Weaponry weaponry
May be used since IUDKBotController.botInitialized(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside UDKBotModuleControllerNew#initializeModules(UDKBot)
.
protected AgentConfig config
May be used since IUDKBotController.botInitialized(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, ConfigChange, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.InitedMessage)
is called.
Initialized inside UDKBotModuleControllerNew#initializeModules(UDKBot)
.
protected Raycasting raycasting
AutoTraceRay
that is being utilized).
May be used since IUDKBotController.botInitialized(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.ConfigChange, cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.InitedMessage)
is called.
protected CompleteBotCommandsWrapper body
May be used since since the first IUDKBotController.botSpawned(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage, Self)
is called.
Initialized inside UDKBotModuleControllerNew#initializeModules(UDKBot)
.
protected AdvancedShooting shoot
Note: more weapon-handling methods are available through UDKBotModuleControllerNew#weaponry
.
May be used since since the first IUDKBotController.botSpawned(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage, Self)
is called.
Initialized inside UDKBotModuleControllerNew#initializeModules(UDKBot)
.
protected AdvancedLocomotion move
Note: navigation is done via UDKBotModuleControllerNew#pathExecutor
that needs PathHandle
from the UDKBotModuleControllerNew#pathPlanner
.
May be used since since the first IUDKBotController.botSpawned(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage, Self)
is called.
Initialized inside UDKBotModuleControllerNew#initializeModules(UDKBot)
.
protected IPathExecutor<ILocated> pathExecutor
May be used since since the first IUDKBotController.botSpawned(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage, Self)
is called.
Initialized inside UDKBotModuleControllerNew#initializePathFinding(UDKBot)
.
protected IPathPlanner<ILocated> pathPlanner
May be used since since the first IUDKBotController.botSpawned(cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo, ConfigChange, InitedMessage, Self)
is called.
Initialized inside UDKBotModuleControllerNew#initializePathFinding(UDKBot)
.
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 IVisionWorldView world
UDKBotModuleControllerNew#getWorldView()
.protected IAct act
UDKBotModuleControllerNew#getAct()
.public void initializeController(BOT bot)
IUDKBotController
UDKBot
before the GameBots2004 greets the bot even before
IUDKBotController.prepareBot(UDKBot)
method.
NOTE: This is Pogamut's developers reserved method - do not override it and if you do, always use 'super' to call parent's initializeController.
initializeController
in interface IUDKBotController<BOT extends UDKBot>
initializeController
in class UDKBotLogicController<BOT extends UDKBot>
protected void initializeListeners(BOT bot)
UDKBotModuleControllerNew#listenerRegistrator
and calls AnnotationListenerRegistrator.addListeners()
method
to probe all declared methods for event-annotation presence.bot
- protected void initializePathFinding(BOT bot)
UDKBotModuleControllerNew#pathPlanner
and UDKBotModuleControllerNew#pathExecutor
.
If you need different path planner / path executor - override this method and initialize your own modules.bot
- protected void initializeModules(BOT bot)
bot
- Copyright © 2012 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.