ドラフトは、プログラマー向け
のゲームの
プレビューです 。 (非常に汚い、意見やコメントを収集するために公開されていますが、マイナスではないでください)
habrahabr.ru/blogs/sport_programming/74536そして
habrahabr.ru/blogs/sport_programming/74523一般的なエンジンで準備完了。 ゲームはターンベースであり、プレーヤープログラムへのインターフェイスはSTDIN STDOUTです。 任意のプログラミング言語を使用できます(I / Oをサポートしている場合、brainfuckでさえも)
wxPython(Linux / Windows / OSX)にGUIテスターがあり、スクリプトまたはバイナリをダウンロードできるサイト、デプロイされたプレーヤー評価システム(コード実行時間を含む)があります。 チームバトルとSDKは、いくつかの言語で計画されています。
すべて(サイトを含む)はGPLの下で非営利になります。
ダガーとフラッシャーは大歓迎です
PS ハブに関する議論の影響下で、文字通り一晩、絶対的な初心者によって書かれた厳密に判断しないでください アドバイスとコミットによるより良いサポート
更新:プレーヤープログラムの
入力/出力形式の実際の説明を書きました
UPD ここに未完成のSDKがあります
。Pythonのボットコードは次のようになります。
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()
Copy Source | Copy HTML #!/usr/bin/python """Sample game bot for python-robots""" import pyr-sdk class DumbBoot (pyr-sdk.Pobot): def main (self): """Main cyclic function: :))""" for enemyrobot in self .robots: if self .GetDistToRobot(enemyrobot)< 4 : self .FireToRobot(enemyrobot) if self .energy< 50 : self .KillYMySelf() if not self .isWallAhead(): self .Go() else : self .Left() ###########common part self .reloading() def start (self): """some code which run once""" pass if __name__== "__main__" : darvin_small_metal_guy = DumbBoot ()