Open tm012 opened 5 years ago
self.time returns the game time in seconds, why would you want to set it?
if you want minutes you can do self.timeMinutes = self.time / 60. or use the code you suggested above and rename the variable.
I have same issue as above @mogue. can you clarify a bit on what you mean
if you want minutes you can do self.timeMinutes = self.time / 60. or use the code you suggested above and rename the variable.
self.time = (self.state.game_loop/22.4) self.timeMinutes = self.time/60 print('Time:',self.time)
this is what i have inserted. code uses
if len(self.units(TYPE.OBSERVER)) < math.floor(self.time/3):
at some point in the code
My code is async def on_step(self, iteration): self.time = (self.state.game_loop/22.4) / 60 .......................... ............................ While running this line (self.time = (self.state.game_loop/22.4) / 60) It's giving error on the line,
await ai.on_step(iteration) Inside Python36\lib\site-packages\sc2\main.py", line 135, in _play_game_ai
Logs: Traceback (most recent call last): File "C:\Users\tause\AppData\Local\Programs\Python\Python36\lib\site-packages\sc2\main.py", line 135, in _play_game_ai await ai.on_step(iteration) File "S:\Starcraft 2 API\Python Files\pythonStarcraftPart13.py", line 44, in on_step self.time = (self.state.game_loop/22.4) / 60 AttributeError: can't set attribute ERROR:sc2.main:resigning due to previous error --- on_end called --- Result.Defeat False