用Pthon模拟玩家和电脑战争。
战争的图形界面:
- 由100*100的小方格构成。
- 在每个小方格随机绘制山脉、湖泊、平原、森林,但同类型的往往聚在一起,比如山脉连着山脉。
- 在某个靠近边界的小方格绘制防守方的城池。城池必有一面连着平原,且和进攻方的出现点一直有平原连接。
- 在另一侧边界设置进攻方的出现点,可以是一片连接的方格。
- 防守城池和进攻点直接可以有多条平原连接,但不超过五条。
- 部队在地图中也以方块显示。处于地图的上层。
部队属性包括:总兵数、士气、攻击、防御。
- 总兵数:部队一共多少人。
- 士气:部队的士气。取值1~100。
- 攻击:影响部队对敌方造成的伤害。
- 防御:影响部队被对方造成的伤害。
部队的一般操作:行军、下寨、放火、叫骂
- 行军:部队移动。
- 在平原上移动每一格减1点士气。
- 在山上移动每一格减3点士气,且每天最多移动五格。
- 必须有船才能在湖泊上移动。
- 在森林中移动每一格减1点士气,但每天最多移动五格。
- 下寨:结束一天行动。每天可恢复10%士气和10%伤兵
- 放火、在部队周围指定位置放火。如果放火位置有敌方则敌方减少士兵。具体减少士兵计算如下:减少士兵数 = 总兵数*(100-敌方将领智力)/100*(1-敌方的部队士气)/100
- 叫骂:
- 叫骂成功率 = (100-敌方将领智力)/(100-敌方将领胆色)/10*随机值,随机值为0.8~1.2
- 叫骂成功率>50%则叫骂成功,敌方武将出击,玩家可以选择迎击还是退却。迎击则有概率触发单挑,概率为敌方武将
将领属性包括:体、武、智、德、经、忠、统、胆。
- 体:将领的体力。体力为零则将领死亡。取值1~100。
- 武:将领的武力。取值1~100。
- 智:将领的智力。取值1~100。
- 德:将领的仁德。取值1~100。
- 经:将领的经验值。
- 忠:将领的忠心度。取值1~100。该属性对玩家隐藏。
- 统:将领统帅部队的能力。取值1~100。
- 胆:将领的胆色。取值1~100。
防守方将领:
- 名字:赵云
- 体:100
- 武:100
- 智:80
- 德:90
- 经:4000
- 忠:100
- 统:90
- 胆:100
敌方将领:
- 名字:菜菜
- 体:90
- 武:70
- 智:20
- 德:70
- 经:0
- 忠:80
- 统:60
- 胆:10