|
Jadex 0.941 | ||||||||
PREV AGENT NEXT AGENT | FRAMES NO FRAMES | ||||||||
SUMMARY: | BELIEF | GOAL | PLAN | EVENT | EXPRESSION | INITIAL STATE | DETAIL: BELIEF | GOAL | PLAN | EVENT | EXPRESSION | INITIAL STATE |
jadex.examples.blackjack.dealer.Dealer
jadex.adapter.standalone.planlib.DF_standalone
Belief Summary | |
belief CardSet |
cardset
The card set used to play the game. |
belief GameState |
gamestate
|
belief Dealer |
myself
The self representation of the dealer. |
beliefset Player |
players
The players. |
belief long |
playerwaitmillis
The number of seconds to wait for answers from players. |
belief boolean |
singleStepMode
When set to true, each step in the game must be manually issued in the GUI. |
belief GameStatistics |
statistics
The history of played games. |
belief int |
stepdelay
The number of seconds to wait before drawing a card. |
beliefset AgentIdentifier |
tracker
It's possible that a few different manager (possibly from remote Players) want to track their players during the game, therefor a beliefset containing all manager-AIDs is needed. |
Goal Summary | |
achievegoalref |
df_deregister
Used for deregistering the dealer at the df. |
maintaingoalref |
df_keep_registered
Used for registering the dealer at the df. |
performgoal |
play_game()
Main goal to play a game. |
performgoal |
play_with_player(Player player)
Goal to play with a single player (in the context of a larger game). |
Plan Summary | |
standard plan |
gui_plan()
Manage dealer gui. |
standard plan |
play_game_plan()
Play a game. |
standard plan |
play_with_player_plan(Player player)
Play a game with a single player. |
standard plan |
propagate_game_state_plan()
|
standard plan |
register_plan()
Register a player. |
Event Summary | |
messageevent |
inform_action_done(Class content-class, String language, String ontology, String performative)
inform a player about a the game result |
messageevent |
inform_game_state(Class content-class, String conversation-id, String language, String ontology, String performative)
|
messageevent |
inform_shutdown(String content-start, String performative)
The manager is shutting down the BlackJack application. |
messageevent |
inform_tracker(String content, String performative)
inform tracker about playing players |
messageevent |
query_tracking(String content-start, String performative)
The manager registers as tracker on game settings. |
messageevent |
refuse_action(String language, String ontology, String performative)
inform a player about a the game result |
messageevent |
refuse_bet(Class content-class, String language, String ontology, String performative)
|
messageevent |
request_bet(Class content-class, String conversation-id, String language, String ontology, String performative)
A player makes a bet. |
messageevent |
request_draw(Class content-class, String language, String ontology, String performative)
A player wants to draw another card. |
messageevent |
request_finished(Class content-class, String language, String ontology, String performative)
A player has finished its game (i.e. doesn't want to draw any more cards). |
messageevent |
request_join(Class content-class, String language, String ontology, String performative)
Player request to join the game. |
internalevent |
step()
Event to trigger a step. |
Expression Summary | |
condition |
dealer_card
Check if the dealer has drawn its first card. |
condition |
dealer_finished
Check if the dealer has finished drawing cards. |
condition |
dealers_turn
Check if it is the dealer's turn. |
condition |
players_turn
Check if it is the $player's turn. |
expression |
turnplayer
The player that gets the next card (if any). |
Initial State Summary | |
default initial state |
default
|
Belief Detail |
belief CardSet cardset
belief long playerwaitmillis
(Integer)$propertybase.getProperty("standard.timeout")
belief int stepdelay
1
belief boolean singleStepMode
false
belief Dealer myself
new Dealer()
belief GameStatistics statistics
new GameStatistics()
belief GameState gamestate
new GameState($beliefbase.myself, null)
beliefset Player players
beliefset AgentIdentifier tracker
Goal Detail |
performgoal play_game()
$beliefbase.players.length > 0
performgoal play_with_player(Player player)
player
achievegoalref df_deregister
address
description
df
result
df_deregister
in capability jadex.adapter.standalone.planlib.DF_standalone
maintaingoalref df_keep_registered
address
buffertime
current_time
description
df
leasetime
result
df_keep_registered
in capability jadex.adapter.standalone.planlib.DF_standalone
Plan Detail |
standard plan register_plan()
new DealerRegisterPlayerPlan()
request_join
standard plan play_game_plan()
new DealerGameRoundMasterPlan()
play_game
standard plan play_with_player_plan(Player player)
player
(goal mappings: play_with_player.player)new DealerGameRoundPlayerPlan()
play_with_player
standard plan gui_plan()
new DealerGUIPlan()
standard plan propagate_game_state_plan()
new PropagateGameStatePlan()
myself
players
Event Detail |
internalevent step()
messageevent request_join(Class content-class, String language, String ontology, String performative)
content-class
Default value:
RequestJoin.class
language
Default value:
SFipa.JAVA_XML
ontology
Default value:
BlackjackOntology.ONTOLOGY_NAME
performative
Default value:
SFipa.REQUEST
messageevent request_draw(Class content-class, String language, String ontology, String performative)
content-class
Default value:
RequestDraw.class
language
Default value:
SFipa.JAVA_XML
ontology
Default value:
BlackjackOntology.ONTOLOGY_NAME
performative
Default value:
SFipa.REQUEST
messageevent request_bet(Class content-class, String conversation-id, String language, String ontology, String performative)
content-class
Default value:
RequestBet.class
conversation-id
Default value:
SFipa.createUniqueId($scope.getAgentName())
- language
Default value:
SFipa.JAVA_XML
ontology
Default value:
BlackjackOntology.ONTOLOGY_NAME
performative
Default value:
SFipa.REQUEST
messageevent refuse_bet(Class content-class, String language, String ontology, String performative)
content-class
Default value:
RequestBet.class
language
Default value:
SFipa.JAVA_XML
ontology
Default value:
BlackjackOntology.ONTOLOGY_NAME
performative
Default value:
SFipa.REFUSE
messageevent request_finished(Class content-class, String language, String ontology, String performative)
content-class
Default value:
RequestFinished.class
language
Default value:
SFipa.JAVA_XML
ontology
Default value:
BlackjackOntology.ONTOLOGY_NAME
performative
Default value:
SFipa.REQUEST
messageevent inform_shutdown(String content-start, String performative)
content-start
Default value:
"manager:shutDown"
performative
Default value:
SFipa.INFORM
messageevent query_tracking(String content-start, String performative)
content-start
Default value:
"manager:registerAsTracker"
performative
Default value:
SFipa.QUERY_REF
messageevent inform_action_done(Class content-class, String language, String ontology, String performative)
content-class
Default value:
Done.class
language
Default value:
SFipa.JAVA_XML
ontology
Default value:
BlackjackOntology.ONTOLOGY_NAME
performative
Default value:
SFipa.INFORM
messageevent refuse_action(String language, String ontology, String performative)
language
Default value:
SFipa.JAVA_XML
ontology
Default value:
BlackjackOntology.ONTOLOGY_NAME
performative
Default value:
SFipa.REFUSE
messageevent inform_tracker(String content, String performative)
content
performative
Default value:
SFipa.INFORM
messageevent inform_game_state(Class content-class, String conversation-id, String language, String ontology, String performative)
content-class
Default value:
GameState.class
conversation-id
Default value:
SFipa.createUniqueId($scope.getAgentName())
language
Default value:
SFipa.JAVA_XML
ontology
Default value:
BlackjackOntology.ONTOLOGY_NAME
performative
Default value:
SFipa.INFORM
Expression Detail |
expression turnplayer
select one Player $p from $beliefbase.players
where $p.getState().equals(Player.STATE_PLAYING)
order by $p.getCards().length
condition dealers_turn
// The dealer may draw its initial card when all players have two cards.
$beliefbase.myself.getCards().length==0 &&
(select one Player $p from $beliefbase.players
where !$p.getState().equals(Player.STATE_IDLE) && $p.getCards().length!=2)
== null
// The dealer may draw more cards, when all players are either idle or finished.
|| (select one Player $p from $beliefbase.players
where !$p.getState().equals(Player.STATE_IDLE) && !$p.getState().equals(Player.STATE_FINISHED))
== null
condition players_turn
// All players must be idle, playing, or finished.
(select one Player $p from $beliefbase.players
where !$p.getState().equals(Player.STATE_IDLE)
&& !$p.getState().equals(Player.STATE_PLAYING)
&& !$p.getState().equals(Player.STATE_FINISHED))
== null
// And this player must be the first with the least number of cards.
// Hack !!! Assume "any" selects players in order.
&& (select one Player $p from $beliefbase.players
where $p.getState().equals(Player.STATE_PLAYING)
&& $p.getCards().length<=$player.getCards().length
order by $p.getCards().length)
== $player
condition dealer_card
$beliefbase.myself.getCards().length==1
condition dealer_finished
$beliefbase.myself.getState().equals(Player.STATE_FINISHED)
|| $beliefbase.myself.getState().equals(Player.STATE_IDLE)
Initial State Detail |
default initial state default
$propertybase.getProperty("fipa.agentdescription.dealer")
, leasetime=6000000
)
|
Jadex 0.941 | ||||||||
PREV AGENT NEXT AGENT | FRAMES NO FRAMES | ||||||||
SUMMARY: | BELIEF | GOAL | PLAN | EVENT | EXPRESSION | INITIAL STATE | DETAIL: BELIEF | GOAL | PLAN | EVENT | EXPRESSION | INITIAL STATE |
Copyright (C) 2002-2005 Lars Braubach, Alexander Pokahr, Andrzej Walczak - University of Hamburg. Use is subject to license terms.