스타크래프트2 봇

스타크래프트2 인공지능 봇을 만들어보자 (#5)

오잎 클로버 2021. 8. 7. 12:00
728x90

본격적인 공격 유닛인 마린(해병)을 생산해보고자 한다.

barracks = [unit for unit in obs.observation.feature_units if unit.unit_type == units.Terran.Barracks]

elif len(barracks) == 1 and not self.unit_type_is_selected(obs,units.Terran.Barracks): 
     barrack = barracks[0]
     return actions.FUNCTIONS.select_point("select",(brrack.x,brrack.y))
elif self.unit_type_is_selected(obs,units.Terran.Barracks) and self.can_do(obs,TRAIN_MARINE_QUICK): 
     return actions.FunctionCall(TRAIN_MARINE_QUICK,[NOT_QUEUED])

위 코드를 step 메소드에 추가하므로서 마린을 생산하는 것을 구현할 수 있다.

 

이번 글은 필자의 일정 때문에 좀 빨리 끝났다.

다음 번에는 이전까지 작성했던 모든 코드를 사용 및 공격 가는 것을 구현하고자한다.