Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
Seminar-HFO
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Shashank Suhas
Seminar-HFO
Commits
44865588
Commit
44865588
authored
Oct 19, 2015
by
Matthew Hausknecht
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #13 from UNiQ10/launch_refactor
Attempt at fixing NPC ghosts
parents
c783b3c9
5201d962
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
7 deletions
+15
-7
bin/Trainer.py
bin/Trainer.py
+15
-7
No files found.
bin/Trainer.py
View file @
44865588
...
@@ -430,7 +430,7 @@ class Trainer(object):
...
@@ -430,7 +430,7 @@ class Trainer(object):
self
.
_numPlayers
=
len
(
x
)
-
4
# -4 for time, ball, goal_l, and goal_r
self
.
_numPlayers
=
len
(
x
)
-
4
# -4 for time, ball, goal_l, and goal_r
self
.
send
(
'(look)'
)
self
.
send
(
'(look)'
)
self
.
registerMsgHandler
(
f
,
*
partial
,
quiet
=
True
)
self
.
registerMsgHandler
(
f
,
*
partial
,
quiet
=
True
)
while
self
.
_numPlayers
!=
2
*
11
:
#
self._numOffense + self._numDefense:
while
self
.
_numPlayers
!=
self
.
_numOffense
+
self
.
_numDefense
:
self
.
listenAndProcess
()
self
.
listenAndProcess
()
self
.
ignoreMsg
(
*
partial
,
quiet
=
True
)
self
.
ignoreMsg
(
*
partial
,
quiet
=
True
)
...
@@ -671,7 +671,7 @@ class Trainer(object):
...
@@ -671,7 +671,7 @@ class Trainer(object):
sorted_offense_agent_unums
=
sorted
(
self
.
_offenseOrder
[
1
:
self
.
_offenseAgents
+
1
])
sorted_offense_agent_unums
=
sorted
(
self
.
_offenseOrder
[
1
:
self
.
_offenseAgents
+
1
])
defense_unums
=
self
.
_defenseOrder
[:
self
.
_numDefense
]
defense_unums
=
self
.
_defenseOrder
[:
self
.
_numDefense
]
sorted_defense_agent_unums
=
sorted
(
self
.
_defenseOrder
[:
self
.
_defenseAgents
])
sorted_defense_agent_unums
=
sorted
(
self
.
_defenseOrder
[:
self
.
_defenseAgents
])
unnecessary_players
=
[]
#
unnecessary_players = []
# Launch offense
# Launch offense
agent_num
=
0
agent_num
=
0
...
@@ -685,11 +685,15 @@ class Trainer(object):
...
@@ -685,11 +685,15 @@ class Trainer(object):
agent_num
+=
1
agent_num
+=
1
else
:
else
:
player
=
self
.
launch_player
(
player_num
,
play_offense
=
True
)
player
=
self
.
launch_player
(
player_num
,
play_offense
=
True
)
time
.
sleep
(
0.15
)
if
player_num
in
offense_unums
:
if
player_num
in
offense_unums
:
self
.
_npcPopen
.
append
(
player
)
self
.
_npcPopen
.
append
(
player
)
necProcesses
.
append
([
player
,
'offense_npc_'
+
str
(
player_num
)])
necProcesses
.
append
([
player
,
'offense_npc_'
+
str
(
player_num
)])
else
:
else
:
unnecessary_players
.
append
(
player
)
player
.
terminate
()
time
.
sleep
(
0.1
)
continue
#unnecessary_players.append(player)
self
.
waitOnPlayer
(
player_num
,
on_offense
=
True
)
self
.
waitOnPlayer
(
player_num
,
on_offense
=
True
)
self
.
waitOnTeam
(
first
=
False
)
self
.
waitOnTeam
(
first
=
False
)
...
@@ -705,11 +709,15 @@ class Trainer(object):
...
@@ -705,11 +709,15 @@ class Trainer(object):
agent_num
+=
1
agent_num
+=
1
else
:
else
:
player
=
self
.
launch_player
(
player_num
,
play_offense
=
False
)
player
=
self
.
launch_player
(
player_num
,
play_offense
=
False
)
time
.
sleep
(
0.15
)
if
player_num
in
defense_unums
:
if
player_num
in
defense_unums
:
self
.
_npcPopen
.
append
(
player
)
self
.
_npcPopen
.
append
(
player
)
necProcesses
.
append
([
player
,
'defense_npc_'
+
str
(
player_num
)])
necProcesses
.
append
([
player
,
'defense_npc_'
+
str
(
player_num
)])
else
:
else
:
unnecessary_players
.
append
(
player
)
player
.
terminate
()
time
.
sleep
(
0.1
)
continue
#unnecessary_players.append(player)
self
.
waitOnPlayer
(
player_num
,
on_offense
=
False
)
self
.
waitOnPlayer
(
player_num
,
on_offense
=
False
)
self
.
waitOnTeam
(
first
=
False
)
self
.
waitOnTeam
(
first
=
False
)
self
.
checkIfAllPlayersConnected
()
self
.
checkIfAllPlayersConnected
()
...
@@ -722,9 +730,9 @@ class Trainer(object):
...
@@ -722,9 +730,9 @@ class Trainer(object):
self
.
listenAndProcess
(
1000
)
self
.
listenAndProcess
(
1000
)
# Terminate unnecessary players
# Terminate unnecessary players
print
'[Trainer] Removing unnecessary players'
#
print '[Trainer] Removing unnecessary players'
for
player
in
unnecessary_players
:
#
for player in unnecessary_players:
player
.
terminate
()
#
player.terminate()
# Broadcast the HFO configuration
# Broadcast the HFO configuration
offense_nums
=
' '
.
join
([
str
(
self
.
convertToExtPlayer
(
self
.
_offenseTeamName
,
i
))
offense_nums
=
' '
.
join
([
str
(
self
.
convertToExtPlayer
(
self
.
_offenseTeamName
,
i
))
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment