Download presentation
Presentation is loading. Please wait.
Published byMeagan Russell Modified over 9 years ago
1
Pogamut 2 Platform for fast development of cognitive agents inside 3D environment Creating javabot project / pitfalls Startup/running/shutdown sequence and it’s methods Followbot + logs Faculty of mathematics and physics Charles University at Prague 26 th March 2008 http://artemis.ms.mff.cuni.cz/pogamut
2
Architecture review Simulates the world Exports information Translating text messages to java objects Model of the agent http://artemis.ms.mff.cuni.cz/pogamut
3
Creating new javabot project 1/3 http://artemis.ms.mff.cuni.cz/pogamut
4
Creating new javabot project 2/3 http://artemis.ms.mff.cuni.cz/pogamut P. name =will become=> package name P. location – Pogamut 2 platform folder (set via Menu/Tools/Options) P. folder – guess what ;-) Checkbox – simple view, can be switched off later on
5
Creating new javabot project 3/3 http://artemis.ms.mff.cuni.cz/pogamut Created project… … notice the imported library PogamutCore.jar
6
Javabot project pitfalls 1/2 http://artemis.ms.mff.cuni.cz/pogamut Renaming agent base class (Main) can be done, but you have to change manifest.mf as well manifest.mf can be found in window Files
7
Javabot project pitfalls 2/2 http://artemis.ms.mff.cuni.cz/pogamut Main method must be present in agent base class otherwise NB won’t recognize it as a runnable file
8
Sequences and methods 1/2 http://artemis.ms.mff.cuni.cz/pogamut Few methods 1) prePrepareAgent() before GB communication 2) postPrepareAgent() after GB communication 3) doLogic() iteratively called 4) shutdownAgent() at the end (exception)
9
Sequences and methods 2/2 http://artemis.ms.mff.cuni.cz/pogamut prePrepareAgent() postPrepareAgent() doLogic() shutdownAgent()
10
http://artemis.ms.mff.cuni.cz/pogamut Player memory.getSeePlayer() returns a PLR wrapper body.runToTarget(Player player) sends a RUNTO command body.turnHorizontal(int degrees) sends a TURN command FollowBot 1/6
11
http://artemis.ms.mff.cuni.cz/pogamut FollowBot 2/6 NullPointerException is around the corner… … logic and GB message receiver are in different threads.
12
http://artemis.ms.mff.cuni.cz/pogamut FollowBot 3/6 Better… … but what to do if the bot is facing the wall from the beginning ?
13
http://artemis.ms.mff.cuni.cz/pogamut FollowBot 4/6 Better… … but shouldn’t the bot seek the player on itself? … what if the bot lose the player?
14
http://artemis.ms.mff.cuni.cz/pogamut FollowBot 5/6 Introducing user log, levels… object log.finest() /.finer() /.fine() /.info() /.warning() /.severe()
15
http://artemis.ms.mff.cuni.cz/pogamut FollowBot 6/6 … TODO … but shouldn’t the bot seek the player on itself? memory.getSeeNavPoint() memory.getSeeNavPoints() … what if the bot lose the player? remember last player position, try to run there and turn around
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.