npm install
在项目根目录下添加 .screeps.json
{
"branch":"default",
"email": "your email in screeps",
"password": "your password"
}
执行grunt推上代码
2019/9/10 自杀系统
2019/9/27 cacheController 能够自动将多segment合并为一个 来保存大于100kb的对象
2019/9/27 war module 从控制台进行指挥的战争系统
2019/9/9 修复了power-b在治疗时左右横跳的bug
2019/9/9 修复了watcher堵门口的bug
2019/9/10 修改powercreep的移动cost=1
2019/9/13 修复creep对穿roomPosition越界问题
2019/9/13 在有视野的敌对区域执行正常寻路
2019/9/5 10235956 进攻E14N41 玩家guy
2019/9/6 10241074 进攻E14N41失败 对方填充tower优先级过高
2019/9/9 nuke E36N49 E33N38
2019/9/9 10349375 进攻E14N41 玩家guy
2019/9/10 进攻E14N41失败 敌人开启了safemode
2019/9/24 nuke E15N41 overmind-1
2019/9/24 nuke E34N47 玩家Meekohi
2019/9/24 nuke E27N47 玩家Devnix
2019/9/27 nuke E25N48 玩家Devnix
2019/9/27 attack E23N47 Blokkie_NL
2019/9/27 attack E31N41 barret50cal
2019/9/27 attack E23N41 dandykong
2019/9/27 attack E17N39 TwelveBaud
2019/9/28 nuke E19N39 Morkonena
2019/9/28 attack E22N42 Ower
2019/9/28 attack E19N45 Azusa
2019/9/28 attack E38N41 TKerstiens
2019/9/28 attack E34N47 Meekohi
2019/9/28 attack E17N42 woofmao
2019/9/28 attack E31N32 nullpointerat
2019/9/28 attack E32N33 fredboy
2019/9/28 attack E33N37 damfle
2019/9/28 attack E36N42 GCZ
2019/9/28 attack E34N42 grgushi
2019/9/28 attack E33N41 Cardy31
2019/9/30 nuke E32N32 AndrewTawin
2019/9/30 nuke E21N43 thdetdestro
2019/9/30 nuke E19N47 Devnix
2019/9/30 attack E12N41 ags131
2019/10/1 nuke E33N38 hackgpp
2019/10/2 nuke E16N38 TwelveBaud
2019/10/3 nuke E21N39 Devnix
2019/10/5 attack E11N39 ags131
2019/10/5 attack E33N36 hackgpp
2019/10/6 nuke E39N47 Armaos
2019/10/6 attack E33N38 hackgpp
Game.war.init(['E12N41',[39,2,'E12N40'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E11N38',[24,47,'E11N39'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
2019/10/8 nuke E37N38 IC4U
Game.war.init(['E12N41',[39,2,'E12N40'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E14N39',[24,46,'E14N40'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E12N38',[30,46,'E12N39'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E11N37',[4,31,'E12N37'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E12N36',[4,31,'E12N37'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E8N41',[4,6,'E9N41'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E7N41',[41,2,'E7N40'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E9N45',[4,26,'E10N45'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E31N45',[48,25,'E30N45'],{SEAL:1},['E28N46'],{SEAL:{wall:true}}])
Game.war.init(['E41N39',[43,24,'E40N39'],{boostAttack:1,boostHeal:1},['E27N38'],{},['boost']])
Game.war.init(['E30N35',[25,25,'E30N35'],{boostAttack:1,boostHeal:1},['E27N38'],{},['boost','keep']])
Game.war.init(['E43N39',[40,47,'E43N40'],{boostAttack:1,boostHeal:1},['E27N38'],{},['boost']])
Game.war.init(['E40N38',[25,25,'E40N38'],{boostAttack:1,boostHeal:1},['E27N38'],{},['boost']])
Game.war.init(['E42N34',[25,25,'E40N39'],{SEAL:1},['E27N38'],{SEAL:{heal:true}}])
Game.war.init(['E18N44',[11,27,'E19N44'],{SEAL:1},['E19N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E33N38',[29,46,'E33N39'],{SEAL:1},['E29N38'],{SEAL:{smallattack:true}}])
Game.war.init(['E12N38',[30,46,'E12N39'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E6N41',[39,44,'E6N42'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E16N43',[13,2,'E16N42'],{SEAL:1},['E14N41'],{SEAL:{heal:true}}])
Game.war.init(['E38N39',[44,27,'E37N39'],{SEAL:1},['E29N41'],{SEAL:{heal:true}}])
Game.war.init(['E11N38',[24,47,'E11N39'],{SEAL:2},['E14N41'],{SEAL:{heal:true}}])
Game.war.init(['E13N42',[14,2,'E13N41'],{SEAL:1},['E14N41'],{SEAL:{heal:true}}])
Game.war.init(['E14N39',[24,46,'E14N40'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E22N39',[20,7,'E22N38'],{SEAL:1},['E19N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E24N38',[42,23,'E23N38'],{SEAL:1},['E19N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E6N49',[21,24,'E7N50'],{SEAL:2},['E14N41'],{SEAL:{heal:true}}])
Game.war.init(['E9N36',[15,9,'E9N35'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E21N34',[32,2,'E21N33'],{SEAL:2},['E19N41'],{SEAL:{heal:true}}])
Game.war.init(['E23N34',[3,14,'E24N34'],{SEAL:2},['E27N38'],{SEAL:{heal:true}}])
Game.war.init(['E25N44',[18,3,'E25N43'],{boostAttack:1,boostHeal:1},['E25N43'],{},['boost','keep']])
Game.war.init(['E8N48',[4,15,'E9N48'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E16N38',[22,31,'E16N39'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E16N43',[15,10,'E16N42'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E11N39',[25,25,'E11N40'],{SEAL:1},['E14N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E6N49',[21,24,'E7N50'],{SEAL:1},['E14N41'],{SEAL:{heal:true}}])
Game.war.init(['E8N35',[16,3,'E8N34'],{SEAL:1},['E14N41'],{SEAL:{heal:true}}])
Game.war.init(['E32N44',[45,28,'E31N44'],{boostAttack:1,boostHeal:1},['E28N46'],{},['boost','keep']])
Game.war.init(['E33N48',[24,16,'E33N48'],{boostAttack:1,boostHeal:1},['E28N46'],{},['boost','keep']])
Game.war.init(['E32N44',[45,28,'E31N44'],{boostHeal:1},['E28N46'],{},['boost','keep']])
Game.war.init(['E37N49',[13,45,'E37N50'],{boostHeal:1},['E28N46'],{},['boost','keep']])
Game.war.init(['E18N44',[11,27,'E19N44'],{SEAL:1},['E19N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E29N37',[15,48,'E9N38'],{boostHeal:1},['E14N41'],{boostHeal:{heallv6:true}},['boost','keep']])
Game.war.init(['E34N42',[29,3,'E34N41'],{boostAttack:1,boostHeal:1},['E29N41'],{boostHeal:{heallv7:true},boostAttack:{attacklv7:true}},['boost','keep']])
Game.war.init(['E38N41',[32,3,'E38N40'],{boostHeal:1},['E29N41'],{boostHeal:{heallv6:true}},['boost','keep']])
Game.war.init(['E25N44',[17,2,'E25N43'],{boostAttack:1,boostHeal:1},['E25N43'],{boostHeal:{heallv6:true},boostAttack:{attacklv6:true}},['boost','keep']])
Game.war.init(['E14N44',[43,2,'E14N42'],{boostAttack:1,boostHeal:1},['E14N41'],{
boostHeal:{'tough': 13,'move': 10,'heal': 27},
boostAttack: {'tough': 15,'move': 10,'ranged_attack': 25}},['boost','keep']])
Game.war.init(['E24N43',[47,27,'E24N44'],{boostAttack:1,boostHeal:1},['E25N43'],{boostHeal:{heallv7:true},boostAttack:{attacklv7:true}},['boost','keep']])
Game.war.init(['E22N44',[14,2,'E22N43'],{boostAttack:1,boostHeal:1},['E19N41'],{boostHeal:{heallv7:true},boostAttack:{attacklv7:true}},['boost','keep']])
Game.war.init(['E27N43',[31,47,'E27N44'],{boostAttack:1,boostHeal:1},['E25N43'],{boostHeal:{heallv7:true},boostAttack:{attacklv7:true}},['boost','keep']])
Game.war.init(['E23N42',[15,47,'E23N41'],{boostAttack:1,boostHeal:1},['E19N41'],{boostHeal:{heallv7:true},boostAttack:{attacklv7:true}},['boost']])
Game.war.init(['E24N44',[2,24,'E25N44'],{boostAttack:1,boostHeal:1},['E25N43'],{boostHeal:{heallv8:true},boostAttack:{attacklv8:true}},['boost','keep']])
Game.war.init(['E24N43',[48,34,'E23N43'],{boostAttack:1,boostHeal:1},['E14N41'],{boostHeal:{heallv6:true},boostAttack:{attacklv6:true}},['boost']])
Game.war.init(['E18N44',[11,27,'E19N44'],{SEAL:1},['E19N41'],{SEAL:{smallattack:true}}])
Game.war.init(['E15N42',[46,31,'E14N42'],{boostAttack:1,boostHeal:1},['E14N41'],{boostHeal:{heallv6:true},boostAttack:{attacklv6:true}},['boost']])
Game.war.init(['E12N46',[10,4,'E12N45'],{boostAttack:1,boostHeal:1},['E14N41'],{boostHeal:{heallv6:true},boostAttack:{attacklv6:true}},['boost']])
Game.war.init(['E2N28',[13,44,'E2N29'],{boostAttack:1,boostHeal:1},['E14N41'],{boostHeal:{heallv8:true},boostAttack:{attacklv8:true}},['boost','keep']])
Game.war.init(['E33N41',[17,2,'E33N40'],{boostAttack:1,boostHeal:1},['E29N41'],{boostHeal:{heallv6:true},boostAttack:{attacklv6:true}},['boost','keep']])
Game.war.init(['E23N42',[19,3,'E23N41'],{boostAttack:1,boostHeal:1},['E19N41'],{boostHeal:{heallv6:true},boostAttack:{attacklv6:true}},['boost','keep']])
Game.war.init(['E23N41',[10,2,'E23N40'],{destroyer:1},['E19N41'],{destroyer:{claim25:true}},['keep']])
Game.war.init(['E21N43',[46,13,'E20N43'],{boostAttack:1,boostHeal:1},['E19N41'],{boostHeal:{heallv6:true},boostAttack:{attacklv6:true}},['boost','keep']])
Game.war.init(['E21N43',[46,13,'E20N43'],{destroyer:1},['E19N41'],{destroyer:{claim25:true}},['keep']])
Game.war.init(['E11N32',[14,14,'E11N32'],{SEAL:1},['E14N41'],{SEAL:{wall:true}},['keep']])
Game.war.init(['W4N21',[34,1,'W4N20'],{SEAL:1},['E1N29'],{SEAL:{heal15:true}},['keep']])
Game.war.init(['E0N29',[25,25,'E0N29'],{SEAL:1},['E1N29'],{SEAL:{ra10:true}},['keep']])
Game.war.init(['E1N30',[25,25,'E1N30'],{SEAL:1},['E1N29'],{SEAL:{ra10:true}},['keep']])
Game.war.init(['E0N30',[25,40,'E0N30'],{SEAL:1},['E1N29'],{SEAL:{ra10:true}},['keep']])
Game.war.init(['E1N25',[4,11,'E1N24'],{destroyer:1},['E1N29'],{destroyer:{claim25:true}},['keep']])
Game.war.init(['E0N23',[25,25,'E0N23'],{boostHeal:1},['E1N29'],{boostHeal:{heallv7:true}},['keep','boost']])
Game.war.init(['E14N39',[24,5,'E14N39'],{SEAL:1},['E14N41'],{SEAL:{wall:true}},['keep']])
Game.war.init(['E14N39',[24,5,'E14N39'],{SEAL:1},['E1N29'],{SEAL:{wall:true}},['keep']])
Game.war.init(['E2N28',[22,44,'E2N29'],{boostAttack:1,boostHeal:1},['E1N29'],{boostHeal:{heallv6:true},boostAttack:{attacklv6:true}},['boost','keep']])
Game.war.init(['W1N26',[6,44,'W0N26'],{boostAttack:1,boostHeal:1},['E1N29'],{boostHeal:{heallv6:true},boostAttack:{attacklv6:true}},['boost','keep']])
Game.war.init(['E1N23',[9,18,'E1N23'],{destroyer:1},['E1N29'],{destroyer:{claim25:true}},['keep']])
Game.war.init(['W1N26',[40,3,'W1N26'],{destroyer:1},['E1N29'],{destroyer:{claim25:true}},['keep']])
Game.war.init(['E2N28',[9,5,'E2N28'],{destroyer:1},['E1N29'],{destroyer:{claim25:true}},['keep']])
Game.war.init(['W2N30',[6,35,'W1N30'],{SEAL:1},['E1N29'],{SEAL:{heal15:true}},['keep']])
Game.war.init(['W3N31',[26,4,'W3N30'],{boostAttack:1,boostHeal:1},['E1N29'],{boostHeal:{heallv7:true},boostAttack:{attacklv7:true}},['boost','keep']])
Game.war.init(['E0N23',[25,25,'E0N23'],{boostSEAL:1},['E1N29'],{boostSEAL:{tough:5,heal:5,ranged_attack:15,move:25}},['keep','boost']])
Game.war.init(['E1N23',[9,18,'E1N23'],{destroyer:1,SEAL:1},['E1N29'],{destroyer:{speedClaim:true},SEAL:{heal15:true}},['keep']])
Game.war.init(['E0N23',[25,25,'E0N23'],{boostSEAL:1},['E1N29'],{boostSEAL:{tough:5,heal:10,ranged_attack:10,move:25}},['keep','boost']]) Game.war.init(['W5N30',[44,6,'W5N30'],{SEAL:1},['E1N29'],{SEAL:{ra10:true}},['keep']]) Game.war.init(['W1N37',[3,29,'W0N37'],{destroyer:1,SEAL:1},['E1N29'],{destroyer:{claim25:true},SEAL:{heal15:true}},['keep']]) Game.war.init(['E0N23',[25,25,'E0N23'],{boostAttack:1,boostHeal:1},['E1N29'],{boostHeal:{heallv7:true},boostAttack:{alv8:true}},['boost','keep']])
Game.war.init(['W0N32',[25,25,'W0N32'],{SEAL:1},['E1N29'],{SEAL:{ra10:true}},['keep']]) Game.war.init(['E1N23',[25,25,'E0N23'],{destroyer:1,SEAL:1},['E1N29'],{destroyer:{claim25:true},SEAL:{heal15:true}},['keep']]) Game.war.init(['W5N31',[22,38,'W5N31'],{SEAL:1},['E1N29'],{SEAL:{attack:25,move:25}},['keep']])
Game.war.init(['W19N23',[44,8,'W20N23'],{boostAttack:1,boostHeal:1},['W15N32'],{boostHeal:{heallv6:true},boostAttack:{attacklv6:true}},['boost','keep']])
Game.war.init(['W19N23',[25,26,'W19N23'],{destroyer:1},['W15N32'],{destroyer:{claim25:true}},['keep']])
Game.war.init(['W19N23',[4,24,'W19N23'],{SEAL:1},['W15N32'],{SEAL:{wall:true}},['keep']]) Game.war.init(['E1N30',[25,25,'E1N30'],{},['E1N29'],{},['keep','boost']])
刷墙效率=刷墙数量Q/(刷墙时间+路程时间 * 2)
刷墙时间=容量carry/刷墙work数=carry * 50/work
刷墙量Q=carry * 100
move=(carry+work)/2
carry+work+move=48
carry+work=32
work=32-carry
F=carry100/(carry50/(32-carry)+dist*2)