最终结果在这里!
介绍
在2042年,世界变得人口过多。全球化,人满为患,新的生活方式以及全球缺乏卫生条件导致了新的流行病蔓延。在那些困难时期,国家领导人必须管理局势。您不能让人口大量减少,但也许可以让邻居死掉而受益……
词汇表
健康:人们没有感染
感染:谁可以从大流行死亡人
死亡:尸体数量,没有特别的影响(只计分)
感染率:数健康谁就会成为感染每回合
传染率:百分比感染,将转换健康到被感染每回合
死亡率:每回合将死亡的感染百分率
迁移率:每回合将迁移/迁徙的健康和感染百分率
当地:仅影响您的州
全局:影响每个州
原理
每个参与者将从100个人开始管理一个城镇。不幸的是,其中有一个被感染。
该游戏是回合制的。转弯由七个阶段组成,最后一个阶段是交互式的(向机器人询问命令)。玩家的顺序在每个回合中都是随机的。下一个阶段在每个城镇都执行了上一个阶段时开始(第1轮:玩家1,第2玩家,...;第2轮:第3玩家,第2玩家,第1玩家...):
1. Mutation - AUTOMATED
2. Reproduction - AUTOMATED
3. Migration - AUTOMATED
4. Infection - AUTOMATED
5. Contagion - AUTOMATED
6. Extinction - AUTOMATED
7. Players Turn - INTERACTIVE
控制器通过命令参数为您提供输入,而程序必须通过stdout输出。
句法
输入值
每次调用程序时,它将收到以下格式的参数:
Round;YourPlayerId;PlayerId_Healthy_Infected_Dead_InfectionRate_ContagionRate_LethalityRate_MigrationRate;PlayerId_Healthy_Infected_Dead_InfectionRate_ContagionRate_LethalityRate_MigrationRate;...
回合均为1索引。
输入示例
6;2;1_106_23_9_2_4_13_5;0_20_53_62_16_20_35_5;2_20_53_62_16_20_35_5
在这里,您看到它是第六轮,您是玩家2。您有20位健康,53位感染,62位死亡,16%的感染率,20%的传染率,35%的致死率和5%的迁移率。
输出量
您必须输出三个字符(无空格,无分隔符),每个字符对应于本轮将要执行的一个动作。字符的顺序决定了动作的顺序。您可以多次输出相同的动作。
N
:执行Ñ othing
M
:研究中号 icrobiology [效果:减少本地传染率 4%]
E
:研究È pidemiology [效果:减少本地传染率 8%]
I
:研究我 mmunology [效果:减少本地致死率 4%]
V
:研究V预防接种的[效果:减少本地传染率被一个,减少局部传染率 4%,减少局部致死率 2%]
C
:给ç URE [效果:转换10局部感染到健康 ]
Q
:Q uarantine [效果:移除30个本地感染者 ]
O
:O边界[效果:将本地迁移率提高10%]
B
:关闭B订单[效果:将本地迁移率降低10%]
T
:Bio T错误[效果:转换4全球健康到感染 ]
W
:w ^ eaponization [效果:增加全球传染率通过1,增加全球致死率 2%]
D
:d issemination [效果:增加全球感染率通过如图1所示,增加全球传染率 2%]
P
:P acification [效果:减少全球传染率通过1,减少全球传染率 1%,减少全球致死率 1%]
游戏玩法
所有阶段
无效的命令 =没有
百分比像整数一样累加,即10%-4%= 6%。在公式中应用百分比时,结果将被下限。
阶段1:变异
大流行变得越来越有力。每回合,它随机获得以下属性之一(此突变会同时影响所有玩家):
- 全球感染率提高2
- 全球传染率提高5%
- 全球致死率提高5%
阶段2:复制
每五轮比赛(第5、10、15轮...)将诞生新的公民。每对健康者将使一个健康者(23个健康者产生11个新的健康者)。每对感染都会造成一个感染。
阶段3:迁移
每回合,根据迁移率的不同,一部分健康和受感染的人将离开州(10个健康人将离开一个州,其健康状况为100 ,迁移率为 10%)。然后,将再次根据移民率在各个州之间分配移民。(对每个州的比率进行加权,然后对移民进行相应分配)。
阶段4:感染
健康每个状态被转换为感染,根据感染率。
阶段5:传染
根据传染率,将每个状态的健康状态都转换为感染状态。数乘以计算出的感染由传染率。
阶段6:灭绝
根据死亡率,感染者会转化为死亡。数乘以计算出的感染由致死率。
阶段7:玩家回合
每个玩家都收到输入,并且必须输出三个动作,这些动作按照输出的顺序执行。
规则
- 不得将Bot写为击败或支持其他特定的Bot。
- 允许写入文件。请写入“ yoursubmissionname.txt”,游戏开始前该文件夹将被清空。禁止使用其他外部资源。
- 您的提交有1秒钟的响应时间(每个镇)。
- 提供命令以编译和运行提交。
获奖
获胜者是50轮后最健康的赢家。如果玩家是最后一位在世(超过0个“ 健康”或“ 感染”),游戏将停止并获胜。如果多个玩家有相同数量的健康,在一个大多数感染会获胜,那么一个用更少的死秒。
控制者
您可以在GitHub上找到控制器。它还包含三个用Java编写的samplebot。
要使其运行,请签出项目并在Java IDE中将其打开。main
类方法中的入口点Game
。需要Java 8。
要添加机器人,首先需要Java的编译版本(.class文件)或解释语言的源代码。将它们放置在项目的根文件夹中。然后,在players
包中创建一个新的Java类(您可以在已经存在的机器人上举个例子)。此类必须实现Player
以重写方法String getCmd()
。返回的字符串是运行您的机器人的shell命令。例如,你可以让使用此命令红宝石机器人的工作:return "C:\Ruby\bin\ruby.exe MyBot.rb";
。最后,将Bot添加players
到Game
类顶部的数组中。
最终结果(2016-03-04 08:22 GMT)
全球(100声望):
100场比赛结果:http : //pasted.co/942200ff
1. EvilBot (24, 249, 436)
2. Triage (23, 538, 486)
3. WICKED (23, 537, 489)
4. Israel (23, 40, 240)
5. InfectedTown (22, 736, 482)
6. ZombieState (22, 229, 369)
7. Mooch (22, 87, 206)
8. InfectedHaven (21, 723, 483)
9. Crossroads (16, 9, 136)
10. TheKeeper (3, 4, 138)
11. Terrorist (0, 595, 496)
12. InfectionBot (0, 511, 430)
13. FamilyValues (0, 6, 291)
14. UndecidedBot (0, 0, 20)
15. XenoBot (0, 0, 26)
16. Researcher (0, 0, 33)
17. Strategist (0, 0, 42)
18. TheCure (0, 0, 55)
19. Socialist (0, 0, 67)
20. TrumpBot (0, 0, 77)
21. CullBot (0, 0, 81)
22. BackStabber (0, 0, 87)
23. BlunderBot (0, 0, 104)
24. RemoveInfected (0, 0, 111)
25. PFC (0, 0, 117)
26. BioterroristBot (0, 0, 118)
27. PassiveBot (0, 0, 118)
28. Smaug (0, 0, 118)
29. WeaponOfMassDissemination (0, 0, 119)
30. AllOrNothing (0, 0, 121)
31. Obamacare (0, 0, 122)
32. DisseminationBot (0, 0, 123)
33. CureThenQuarantine (0, 0, 125)
34. Madagascar (0, 0, 129)
35. OpenAndClose (0, 0, 129)
36. ThePacifist (0, 0, 130)
37. MedicBot (0, 0, 131)
38. Medic (0, 0, 133)
39. Salt (0, 0, 134)
40. Piecemeal (0, 0, 136)
41. Graymalkin (0, 0, 137)
42. PureBot (0, 0, 140)
43. MadScienceBot (0, 0, 144)
44. BipolarBot (0, 0, 149)
45. RedCross (0, 0, 151)
世界末日少(200点声望):
100个游戏结果:http : //pasted.co/220b575b
1. FamilyValues (5708, 14, 2)
2. BlunderBot (5614, 12, 3)
3. Graymalkin (5597, 17, 4)
4. PureBot (5550, 12, 5)
5. Crossroads (5543, 11, 4)
6. Salt (5488, 24, 7)
7. CureThenQuarantine (5453, 13, 7)
8. Piecemeal (5358, 121, 23)
9. TrumpBot (5355, 12, 5)
10. CullBot (5288, 12, 9)
11. AllOrNothing (5284, 13, 10)
12. Madagascar (5060, 180, 35)
13. TheKeeper (4934, 165, 44)
14. WICKED (4714, 25, 5)
15. Strategist (2266, 25, 5)
16. BackStabber (2180, 1327, 596)
17. RemoveInfected (2021, 33, 27)
18. OpenAndClose (1945, 667, 394)
19. Triage (1773, 401, 80)
20. TheCure (1465, 46, 26)
21. Obamacare (1263, 525, 247)
22. Mooch (1103, 546, 269)
23. Israel (1102, 580, 292)
24. RedCross (1086, 1700, 727)
25. ThePacifist (1069, 636, 580)
26. Researcher (1035, 113, 37)
27. UndecidedBot (825, 219, 93)
28. PassiveBot (510, 990, 567)
29. MedicBot (411, 1474, 667)
30. Medic (392, 1690, 619)
31. Socialist (139, 63, 90)
32. XenoBot (0, 82, 170)
谢谢大家的参与。我希望您能像我运行游戏一样花很多时间来设计和编码您的机器人。