# 游戏机制与平衡性调整更新(基本不变版)

## 说明
- 有任何问题都可以在选手群中提出建议和讨论

## 游戏接口
  - 删除structures.h中Player的属性place

## 攻击
- 飞刀FlyingKnife
  - 前摇与CD变为600ms
- 搞蛋鬼的一般攻击CommonAttackOfTricker
  - 改为“不能攻击未写完的作业”
- 蹦蹦炸弹BombBomb
  - 未攻击至目标时的后摇改为1200ms
  - 增强为“可以攻击未写完的作业”
  - 增强为“可以攻击使门被打开（可以重新被锁上）”
- 小炸弹JumpyDumpty
  - 攻击距离改为1800
  - 小炸弹不受道具增益影响
  - 修改为“小炸弹与自己无碰撞体积”
- strike(新增)
  - 可以攻击未写完的作业

修改后：
|   攻击（子弹）类型 |搞蛋鬼的一般攻击CommonAttackOfTricker|飞刀FlyingKnife    |      蹦蹦炸弹BombBomb   | 小炸弹JumpyDumpty       |        strike          |
| :--------------------- |  :---------------------|  :--------------------- | :--------------------- | :--------------------- | :--------------------- |
|   子弹爆炸范围          |     0                  |        0                |   2000                 |    1000                |         0              |
|   子弹攻击距离          |     2200               |       78000             |   2200                 |    1800                |        2000            |
|   攻击力                |     1500000            |        1200000         |   1800000               |    900000             |        1600000         |
|   移动速度/s            |     7400               |              18500     |   6000                  |   8600                 |        6250            |
|   前摇（ms）            |     297                |      600               |   366                   |      -                 |        320             |
|未攻击至目标时的后摇（ms）|     800                |      0                  |     1200               |    -                    |        800             |
|攻击至目标时的后摇（ms）  |    3700                |     0                   |         3700           |      -                  |        3700            |
|   CD(ms)               |      800               |      600               |    3000                 |    -                    |        800             |
|   最大子弹容量          |      1                 |     1                  |    1                    |   -                     |         1              |  


## 职业
- 所有角色开锁门速度加速至1.25倍
- 所有角色翻箱速度加速至1.25倍

### 学生
- 先前学生翻窗数据有误

- Teacher
  - 学习速度由0改为50
  - 警戒范围由7500改为10000
  - 翻窗速度改为1000
  - 特质：
    - 扣血则得分$\frac{100×受到伤害}{基本伤害（1500000）×2^{开局老师数量-1}}$
  - 技能惩罚（Punish）改为
    - CD：45s
    - “使用瞬间，在**视野距离/3范围内（不是可视范围）的**翻窗、开锁门、攻击前后摇、**使用技能期间**的捣蛋鬼会被眩晕（3070+$\frac{500×已受伤害}{基本伤害（1500000）×2^{开局老师数量-1}}$）ms”
    - 对于眩晕得分为正常眩晕得分/2^开局老师数量-1^
  - 技能喝茶（HaveTea）（新增）
    - CD：90s
    - 使用瞬间，向额外参数/1000.0的角度瞬移3000（可以穿墙），如果会碰撞则失败。
- Robot（新增）
  - 无技能
  - 特性
    - 不可被眩晕
    - 不可毕业
    - 不可救人
    - 无牵制得分
    - 不可使用道具（可以捡起和扔道具）
- TechOtaku（新增）
  - 一名TechOtaku最多可以在场上同时最多拥有3个Robot，无法共享视野
  1. SummonGolem
    - CD：40s，持续时间：6s
    - 在持续时间中，学生进入人物状态进入UsingSpecialSkill(不能移动),进入其他状态会导致制作机器人失败。
    - 在持续时间中，学生面前生成道具CraftingBench；学生进入其他状态或该道具被碰撞后，CraftingBench消失且制作机器人失败。
    - 持续时间结束后，道具CraftingBench所在位置生成一个Robot，CraftingBench消失
    - TechOtaku的Robot的PlayerId = TechOtaku的PlayerId + n×5（一局游戏理论人数），其中1<=n<=3（自己的n为0）
    - 新造的Robot的PlayerId的n总是尽量小
  2. UseRobot
    - CD：2s，持续时间：0s
    - 输入额外参数PlayerID,切换到要使用的角色。
    - 切换到其他角色时，自己进入UsingSkill状态。

修改后：

|   学生职业     |        教师Teacher   |        健身狂Athlete  |学霸StraightAStudent |   开心果Sunshine    |   机器人Robot        |      技术宅TechOtaku |
| :------------ |  :------------------ |  :------------------ | :------------------ | :------------------ | :------------------ | :------------------ |
|   移动速度/s   |    2700              |      3150            |   2880              |    3000             |    2700             |        2880         |
|   最大毅力值   |     30000000         |      3000000         |   3300000           |    3200000          |    900000           |    2700000          |
|   最大沉迷度   |     600000           |        54000         |   78000             |    60000            |        0            |     60000           |
|   学习速度/ms  |        50            |      73              |   135               |     123             |     85             |      110            |
|   勉励速度/ms  |     80               |      90              |   100               |      120            |      0              |    100              |
|   隐蔽度       |      0.5             |      0.9             |     0.9             | 0.8                 |        0.8          |    1.1              |
|   警戒范围     |     10000            |      15000           |   13500             |    15000            |        0            |    15000            |
|   视野范围     |      9000            |      11000           |    9000             |    10000            |        0            |    9000             |
|   开锁门速度/ms |    5000             |    5000              |     5000            |         3500        |        0            |     5000            |
|   翻窗速度/ms   |      1000           |       1466           |     1018            |           1222      |        1            |    1100             |
|   翻箱速度/ms   |            1250     |   1250               |     1250            |     1125            |        1000         |    1100             |

### 捣蛋鬼
- Assassin
  - 技能隐身（BecomeInvisible）添加约束条件“使用隐身技能后，人物状态进入UsingSpecialSkill,进入其他状态会使得隐身状态解除"
- 喧哗者ANoisyPerson
  - 普通攻击改为strike
- Klee
  - 被动技能Lucky!（新增）:开局获得随机的一个道具（不会是钥匙）
  - 主动技能SparksNSplash（新增）：
    - CD：45s, 持续时间：10s
    - 技能使用瞬间，对于输入的额外参数PlayerID代表的角色，距离最近的本已停止运动的小炸弹开始追踪该角色（每100ms向该角色直线移动）（该角色无血量则失败）
  - 主动技能 蹦蹦炸弹 JumpyBomb
    - 当蹦蹦炸弹因为碰撞而爆炸，向子弹方向上加上90°，120°，150°，180°，210°，240°，270° 发出7个小炸弹
- Idol
  主动技能ShowTime改为
  "持续时间内
  - 使警戒范围外的学生眩晕并每**500ms**发送向自己移动**500ms**的指令（速度为学生本应速度*二者距离/警戒范围）
  - 对于视野范围（不是可视区域）内的学生每**500ms**加**1500**的沉迷度
  - 捣蛋鬼变为0.8倍速"