基礎(chǔ)知識
本章節(jié)設(shè)計 主要涉及游戲機制 和一些傷害計算的邏輯
先認識creep部件
*文檔:https://screeps-cn.github.io/creeps.htm
打架能用到的有:
請牢記一下部件和作用寝并,能做到不用看就知道
機制1:工作機制:
默認打架都用t3打架,要不你連塔都摸不到
因為敵人打你的時候,你沒辦法預(yù)判對面打你哪個
所以如果你放前面实蓬,傷害被打掉了接下來就是真?zhèn)?br> 你要避免這種情況缘琅,只有將白球在第2tick被打的時候才能生效演闭,所以不能放前面
機制2:同步操作:
這張圖:想說明的是近戰(zhàn)和遠程對于同一個creep只能使用一次
比如說 heal 和 attack不能同時使用褒颈,rangeHeal 不能和 rangeAttack同時用
所以針對以上前提有以下結(jié)論:
1.attack/work和 heal不能同時用伙单,所以紅黃球身上最好不要有綠球
2.range 和 heal 同時可以用,但是哈肖,所以一半四人小隊會以藍綠形式出現(xiàn) ,但是傷害往往不夠,需要抱團打人
3.claim 和 heal是沖突的念秧,偷家的時候切記,之前吃過虧嗷淤井,沒能禁止safemode!!
機制3:傷害計算
代碼執(zhí)行順序
當兩個爬爬互相打架的時候币狠,程序是有順序的游两,打多少傷害,奶多少漩绵,這個是確定的
現(xiàn)在有諾干個爬爬贱案,在地圖上,同一tick究竟發(fā)生什么了?
從下面這張圖來說明:結(jié)合代碼
首先看源碼:
也就是說:我們在計算傷害之前會對全局object進行傷害統(tǒng)計
比如說止吐,有4個爬RA藍色框框的宝踪,紅球,和2個紅球a那個紅球
那么紅球會先標記 6個爬的傷害和
其次是 綠球和塔進行奶碍扔,標記2個奶上去的和
最后進行加減計算,根據(jù)源碼所示瘩燥,直到數(shù)值為負數(shù),進行死亡操作