|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413 |
- # 规则
- V6.0
- - [规则](#规则)
- - [简则](#简则)
- - [地图](#地图)
- - [人物](#人物)
- - [攻击](#攻击)
- - [交互](#交互)
- - [学习与毕业](#学习与毕业)
- - [勉励](#勉励)
- - [沉迷与唤醒](#沉迷与唤醒)
- - [门](#门)
- - [窗](#窗)
- - [箱子](#箱子)
- - [信息相关](#信息相关)
- - [可视范围](#可视范围)
- - [道具](#道具)
- - [得分](#得分)
- - [捣蛋鬼](#捣蛋鬼)
- - [学生](#学生)
- - [职业与技能](#职业与技能)
- - [捣蛋鬼](#捣蛋鬼-1)
- - [Assassin](#assassin)
- - [Klee](#klee)
- - [喧哗者ANoisyPerson](#喧哗者anoisyperson)
- - [Idol](#idol)
- - [学生(\&老师)](#学生老师)
- - [运动员](#运动员)
- - [教师](#教师)
- - [学霸](#学霸)
- - [机器人Robot](#机器人robot)
- - [技术宅TechOtaku](#技术宅techotaku)
- - [开心果](#开心果)
- - [细则](#细则)
- - [特殊说明](#特殊说明)
- - [移动](#移动)
- - [人物](#人物-1)
- - [初始状态](#初始状态)
- - [道具](#道具-1)
- - [交互](#交互-1)
- - [学习与毕业](#学习与毕业-1)
- - [攻击](#攻击-1)
- - [沉迷与唤醒](#沉迷与唤醒-1)
- - [门](#门-1)
- - [窗](#窗-1)
- - [箱子](#箱子-1)
- - [得分](#得分-1)
- - [信息相关](#信息相关-1)
- - [技能](#技能)
- - [职业](#职业)
-
- ## 简则
-
- - 每场比赛分为上下两个半场,上下半场双方换边
- - 单局比赛分为学生阵营(4 人)和捣蛋鬼阵营(1 人)
- - 最终将两场比赛己方所得分数相加,高者获胜
-
- ### 地图
- - 地图为矩形区域,游戏对象坐标为(x, y),x和y均为整数。
- - **x坐标轴正方向竖直向下,y坐标轴正方向水平向右**;
- - **极坐标以x坐标轴为极轴,角度逆时针为正方向**。
- - 地图由50 * 50个格子构成,每个格子代表1000 * 1000的正方形。每个格子的编号(CellX,CellY)可以计算得到:
-
- $$
- CellX=\frac{x}{1000},CellY=\frac{y}{1000}
- $$
-
- - 格子有对应区域类型:陆地、墙、草地、教室、校门、隐藏校门、门、窗、箱子
- - 任何格子的区域类型(PlaceType)始终不变,所有隐藏校门刷新点的区域类型均为隐藏校门
-
- ### 人物
- - 人物直径为800
- - 人物共有17种不可叠加的状态:
- 1. (可)移动状态 Idel
- 2. 学习 Learning
- 3. 被勉励 Encouraged
- 4. 在勉励 Encouraging
- 5. 开或锁门 Locking
- 6. 翻箱 Rummaging
- 7. 使用技能 UsingSpecialSkill
- 8. 开启校门 OpeningAGate
- 9. 唤醒他人中 Rousing
- - 之后八项为不可接受指令状态
- 1. 被唤醒中 Roused
- 2. 沉迷 Addicted
- 3. 退学 Quit
- 4. 毕业 Graduated
- 5. 被眩晕 Stunned
- 6. 前摇 Attacking
- 7. 后摇 Swinging
- 8. 翻窗 Climbing
-
- ### 攻击
- - 攻击距离是指攻击(子弹)的移动距离,也就是说理论上最远被攻击的学生的中心与捣蛋鬼的中心=学生的半径+捣蛋鬼的半径+攻击距离+子弹半径(200)*2
- - 蹦蹦炸弹BombBomb与strike攻击未写完的作业,会造成对应攻击力的损坏
- - 捣蛋鬼攻击交互状态或前后摇的学生,将使学生眩晕4.3s
- - 蹦蹦炸弹BombBomb可以攻击使门被打开
-
- | 攻击(子弹)类型 |搞蛋鬼的一般攻击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 |
-
- ### 交互
- - 除了翻窗,交互目标与交互者在一个**九宫格**方可交互
- - 交互进度每毫秒增加对应交互速度的值
- - 作业,门,箱子完成/开启进度达到10000000为完成
- - 校门开启进度达到18000为完成
-
-
- #### 学习与毕业
- - 共有10间教室,学生需要完成**7间**教室的作业,才可以开启校门。
- - 开启校门需要18秒,开启进度不清空
- - **3间**教室的作业完成时,隐藏校门会在刷新点之一随机显现;当只剩1名学生时,隐藏校门自动打开。
- - 从开启的校门或隐藏校门毕业是学生终极目标
-
- #### 勉励
- - 当被勉励程度达到当前损失的毅力值或1500000时,勉励完成,学生毅力增加对应被勉励程度。
- - 勉励中断时,被勉励程度保留;遭到攻击时被勉励程度清空
-
- #### 沉迷与唤醒
- - 学习毅力归零时,学生进入沉迷状态,每毫秒增加1沉迷度
- - 唤醒需要1秒,之后学习毅力恢复至1/2。沉迷程度不清空。
- - 进入沉迷状态时,如果学生原沉迷程度在(0,该玩家最大沉迷度/3)中,沉迷程度直接变为其最大沉迷度/3;原沉迷程度在[其最大沉迷度/3,其最大沉迷度x2/3)中,沉迷程度直接变为其最大沉迷度x2/3;原沉迷程度大于其最大沉迷度x2/3,从游戏中出局;
- - 当学生沉迷程度达到其最大沉迷程度时,从游戏中出局
-
- #### 门
- - 门分别属于三个教学区:三教,五教,六教
- - 拥有对应教学区的钥匙才能开锁对应的门
- - 锁门过程中,门所在格子内有人会使锁门过程中断
-
- #### 窗
- - 翻窗时玩家应当在窗前后一个格子内
-
- #### 箱子
- - 开箱后将有2个随机道具掉落在玩家位置。
-
- ### 信息相关
- - Bgm (在structures.h/.py中的student类或Tricker类中作为其属性)
- 1. 不详的感觉(dangerAlert):如果捣蛋鬼进入(学生的警戒半径/捣蛋鬼的隐蔽度)的距离,则学生的dangerAlert=(警戒半径/二者距离)
- 2. 期待搞事的感觉(trickDesire):如果有学生进入(捣蛋鬼的警戒半径/学生的隐蔽度)的距离,则捣蛋鬼trickDesire=(警戒半径/可被发觉的最近的学生距离)
- 3. 学习的声音(classVolume): 警戒半径内有人学习时,捣蛋鬼classVolume=((警戒半径x学习进度百分比)/最近二者距离)
- - 可以向每一个队友发送不超过256字节的信息
-
- ### 可视范围
- - 小于视野半径
- - 对于中心在草地中的物体,物体中心与玩家中心连线上均为草地方可见
- - 不在草地的物体,物体中心与玩家中心连线上无墙即可见
-
- ### 道具
- - 玩家同时最多拥有三个道具
- - 可以捡起与自己处于同一个格子(cell)的道具
- - 可将道具扔在玩家位置
-
- | 道具 | 对学生增益 | 学生得分条件 | 对搞蛋鬼增益 | 搞蛋鬼得分条件 |
- | :-------- | :-------------------------------------- | :-----------------| :-------------------------------------- |:-----------------|
- | Key3 | 能开启3教的门 |不得分| 能开启3教的门 |不得分|
- | Key5 | 能开启5教的门 |不得分| 能开启5教的门 |不得分|
- | Key6 | 能开启6教的门 |不得分| 能开启6教的门 |不得分|
- | AddSpeed | 2倍速,持续10s | 得分10| 2倍速,持续10s |得分10|
- | AddLifeOrClairaudience |若在10s内Hp归零,该增益消失以使Hp保留100|在10s内Hp归零,得分100 |10秒内得知全场玩家信息|得分10 |
- | AddHpOrAp |回血750000 | 回血成功,得分10 | 10秒内下一次攻击增伤1800000|不得分 |
- | ShieldOrSpear | 10秒内能抵挡一次伤害 | 10秒内成功抵挡一次伤害,得分50 |10秒内下一次攻击能破盾,如果对方无盾,则增伤900000| 10秒内破盾,得分50 |
- | RecoveryFromDizziness | 使用瞬间从眩晕状态中恢复 | 成功从眩晕状态中恢复,得分30|使用瞬间从眩晕状态中恢复 | 成功从眩晕状态中恢复,得分30|
-
- ## 得分
-
- ### 捣蛋鬼
-
- - 对学生造成伤害时,得伤害*100/基本伤害(1500000)分。
- - 对作业造成破坏时,每破坏n%的作业,得n分
- - 使学生沉迷时,得50分。
- - 使学生眩晕时,得20*眩晕时长(/s)分。
- - 每淘汰一个学生,得1000分
- - 摧毁一个TechOtaku的机器人,得50分。
-
- ### 学生
- - 学生每完成n%的作业,得2n分
- - 学生与捣蛋鬼处于小于5000的距离认为在牵制状态,得(牵制时长(ms)*0.00246)分
- - 使捣蛋鬼进入眩晕状态时,得20*眩晕时长(/s)分。
- - 成功唤醒一名同学,得100分
- - 成功勉励一名同学,得50*勉励程度/基本勉励程度(1500000)分
- - 毕业,得1000分
-
- ## 职业与技能
-
- ### 捣蛋鬼
-
- | 捣蛋鬼职业 | Assassin | Klee | 喧哗者ANoisyPerson | Idol |
- | :------------ | :--------------------- | :--------------------- | :--------------------- | :--------------------- |
- | 移动速度/s | 3960 | 3600 | 3852 | 3600 |
- | 隐蔽度 | 1.5 | 1 | 0.8 | 0.75 |
- | 警戒范围 | 22100 | 17000 | 15300 | 17000 |
- | 视野范围 | 15600 | 13000 | 13000 | 14300 |
- | 开锁门速度/ms| 5000 | 5000 | 5000 | 5000 |
- | 翻窗速度/s | 2540 | 2540 | 2794 | 2540 |
- | 翻箱速度/ms | 1250 | 1375 | 1250 | 1250 |
-
- #### Assassin
- - 普通攻击为 CommonAttackOfTricker
- - 主动技能
- 0. 隐身 BecomeInvisible
- - CD:40s 持续时间:10s
- - 在持续时间内玩家隐身,人物状态进入UsingSpecialSkill,进入其他状态会使得隐身状态解除
- - 使用瞬间得分15
- 1. 使用飞刀
- - CD:30s 持续时间:1s
- - 在持续时间内,攻击类型变为飞刀
- - 不直接得分
-
- #### Klee
- - 普通攻击为 CommonAttackOfTricker
- - 主动技能
- 0. 蹦蹦炸弹 JumpyBomb
- - CD:15s 持续时间:3s
- - 在持续时间内,攻击类型变为蹦蹦炸弹
- - 当蹦蹦炸弹因为碰撞而爆炸,向子弹方向上加上90°,120°,150°,180°,210°,240°,270° 发出7个小炸弹
- - 小炸弹运动停止前会因为碰撞爆炸,停止运动后学生碰撞会造成眩晕3.07s
- - 不直接得分,通过眩晕等获得对应得分
- 1. SparksNSplash:
- - CD:45s, 持续时间:10s
- - 技能使用瞬间,对于输入的额外参数PlayerID代表的角色,距离最近的本已停止运动的小炸弹开始追踪该角色(每100ms向该角色直线移动)(该角色无血量则失败)
- - 特性
- - 开局获得随机的一个道具(不会是钥匙)
-
- #### 喧哗者ANoisyPerson
- - 普通攻击为 strike
- - 主动技能
- 0. 嚎叫 Howl
- - CD:25s
- - 使用瞬间,在视野半径范围内(不是可视区域)的学生被眩晕5500ms,自己进入800ms的后摇
- - 通过眩晕获得对应得分
- - 特性
- - 在场所有学生Bgm系统被设为无用的值
-
- #### Idol
- - 普通攻击为 CommonAttackOfTricker
- - 主动技能
- 0. ShowTime
- - CD: 80s 持续时间:10s
- - 持续时间内
- - 使警戒范围外的学生眩晕并每500ms发送向自己移动500ms的指令(速度为学生本应速度*二者距离/警戒范围)
- - 对于视野范围(不是可视区域)内的学生每500ms加1500的沉迷度
- - 捣蛋鬼变为0.8倍速"
-
- ### 学生(&老师)
-
- | 学生职业 | 教师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 |
-
- #### 运动员
- - 主动技能
- 0. 冲撞 CanBeginToCharge
- - CD:60s 持续时间:3s
- - 在持续时间内,速度变为三倍,期间撞到捣蛋鬼,会导致捣蛋鬼眩晕7.22s,学生眩晕2.09s
- - 通过眩晕获得对应得分
-
- #### 教师
- - 主动技能
- 0. 惩罚 Punish
- - CD:45s
- - “使用瞬间,在视野距离/3范围内(不是可视范围)的翻窗、开锁门、攻击前后摇、使用技能期间的捣蛋鬼会被眩晕(3070+$\frac{500×已受伤害}{基本伤害(1500000)×2^{开局老师数量-1}}$)ms”
- - 其眩晕得分为正常眩晕得分/2^开局老师数量-1^
- 1. 喝茶 HaveTea
- - CD:90s
- - 使用瞬间,向额外参数/1000.0的角度瞬移3000(可以穿墙),如果会碰撞则失败。
- - 特性
- - 无法获得牵制得分
- - 无法毕业
- - 扣血则得分$\frac{100×受到伤害}{基本伤害(1500000)×2^{开局老师数量-1}}$
-
- #### 学霸
- - 特性
- - 冥想
- - 当处于可接受指令状态且不在学习时,会积累“冥想进度”,速度为40/ms
- - 受到攻击(并非伤害)、进入学习状态或进入不可接受指令状态(包括翻窗)冥想进度清零
- - 主动技能
- 0. 写答案 WriteAnswers
- - CD:30s
- - 使用瞬间,对于可交互范围内的一间教室的作业增加冥想进度,冥想进度清零
- - 通过学习获得对应得分
-
- #### 机器人Robot
- - 特性
- - 无技能
- - 不可被眩晕
- - 不可毕业
- - 不可救人
- - 无牵制得分
- - 不可使用道具(可以捡起和扔道具)
- - 不沉迷,击中直接摧毁
-
- #### 技术宅TechOtaku
- - 特性
- - 一名TechOtaku最多可以在场上同时最多拥有3个Robot,无法共享视野
- - 主动技能
- 0. 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总是尽量小
- 1. UseRobot
- - CD:2s,持续时间:0s
- - 输入额外参数PlayerID,切换到要使用的角色。
- - 切换到其他角色时,自己进入UsingSkill状态。
-
- #### 开心果
- - 主动技能
- 0. 唤醒 Rouse
- - CD:120s
- - 使用瞬间,唤醒可视范围内一个沉迷中的人
- - 通过唤醒获得对应得分
- 1. 勉励 Encourage
- - CD:120s
- - 使用瞬间,为可视范围内随机一个毅力不足的人试图补充750000的毅力值
- - 获得勉励750000的毅力值对应得分
- 2. 鼓舞 Inspire
- - CD:120s
- - 使用瞬间,可视范围内学生(包括自己)获得持续6秒的1.6倍速Buff
- - 每鼓舞一个学生得分10
-
- ## 细则
-
- ### 特殊说明
- - 不加说明,这里“学生”往往包括职业“教师”
-
- ### 移动
- - 不鼓励选手面向地图编程,因为移动过程中你可以受到多种干扰使得移动结果不符合你的预期;因此建议小步移动,边移动边考虑之后的行为。
-
- ### 人物
- - 眩晕状态中的玩家不能再次被眩晕(除非是ShowTime)
-
- ### 初始状态
- - 初赛玩家出生点固定且一定为空地
-
- ### 道具
- - 使用钥匙相当于销毁
- - 可接受指令状态下能捡起或扔道具,在场上即可使用道具
-
- ### 交互
- - 被唤醒或被勉励不属于交互状态,翻窗属于交互状态
-
- ### 学习与毕业
- - 一个校门同时最多可以由一人开启
- - 校门对于人有碰撞体积
- - 隐藏校门显现后对于人有碰撞体积
-
- ### 攻击
- - 无论近战远程均产生bullet表示攻击
- - 前摇期间攻击被打断时,子弹消失。
- - 每次学生受到攻击后会损失对应子弹的攻击力的学习毅力
- - 此处,前摇指 从播放攻击动作开始 攻击者不能交互 的时间
-
- ### 沉迷与唤醒
- - 不能两人同时唤醒一个人
- - 在被救时沉迷度不增加
-
- ### 门
- - 每个教学区都有2把钥匙
- - 一扇门只允许同时一个人开锁门
- - 开锁门未完成前,门状态表现为原来的状态
- - 开锁门进度中断后清空
-
- ### 窗
- - 由于窗户被占用导致翻窗失败会使先前行动停止
- - 翻越窗户是一种交互行为,翻窗一共有两个过程
- - 跳上窗:从当前位置到窗边缘中点,位置瞬移,时间=距离/爬窗速度。中断时,停留在原位置
- - 爬窗:从窗一侧边缘中点到另一侧格子中心,位置渐移,时间=距离/爬窗速度。中断时,停留在另一侧格子中心
- - 攻击可以穿过窗,道具可以在窗上
- - 有人正在翻越窗户时,其他玩家均不可以翻越该窗户。
- - 通常情况下捣蛋鬼翻越窗户的速度高于学生。
-
- ### 箱子
- - 地图上有8个箱子
- - 同一时刻只允许一人进行开启
- - 未开启完成的箱子在下一次需要重新开始开启。
- - 箱子开启后其中道具才可以被观测和拿取
- - 箱子道具不刷新
-
- ### 得分
- - 眩晕或毅力值归零时无牵制得分
-
- ### 信息相关
- - Bgm在没有符合条件的情况下,值为0。
- - 不能给自己发信息
-
- ### 技能
- - CD冷却计时是在开始使用技能的瞬间开始的
- - Klee的小炸弹不受道具增益影响
- - 除了切换攻击类型的技能,在不能执行指令的状态下(包括翻窗)均不能使用技能
-
- ### 职业
- - 学生职业可以重复选择
|