J

### 概述

J，一个好玩的拍手游戏，拥有悠久的历史。2018年，这个游戏最早由ZYY和小土豆联合开发，中间经过不断地流传和更新，也包括中间一段时间的失传，最终在2021年被彻底崛起，重新焕发生机。现在，J的规则非常复杂，这一点我们会在下面解释。

作为一个拍手游戏，J除了它本身极具娱乐性的名称以外，其特殊之处还在于其十分自由的材质包和声音配置。不同的玩家的材质包都不相同，声音配置也不尽相同。

现在，J有9个常驻委员：ZYY、J哥（LCT）、倪老狗（CXK）、龟龟（XYH）、大儿（WYZ）、LYC、奶寄（DYJ）、SJJ（SWL）、YXR。你经常可以看到其中的3~5个人聚集在一起玩J，有时甚至全员都到齐，声势浩大，形成壮观的班级文化。

### 规则

#### 计算方法

J拥有一套复杂的计算方法。作为一个回合制游戏，游戏开始后，大家一个回合一个回合地出一些动作。然后产生一些不一样的效果。以下是J的最新正式版本的计算方法，在每回合的计算中，计算分为三个阶段，而且在游戏开始前，大家会得到一个初始化。（你可知道了：J没有团战的程序）

##### 初始化

* 所有人的生命值（以整型变量存储，每个人的存储互不影响）设置为5
* 将所有人的J数量（以整形变量存储，每个人的存储互不影响）设置为0
* 将所有人的J哥生命值（以整形变量存储，每个人的存储互不影响）设置为0
* 将时间（以整形变量存储，总变量）设置为-3
* 所有人的计数器（以整形变量存储，每个人的存储互不影响）设置为2
* 所有人的状态（以布尔形式变量存储，每个人的存储互不影响）设置为TRUE

##### 回合内第一阶段

（J的数量的第一波计算，所有计算自动跳过已判定g掉的人）

1. 统计大家出的动作，然后进行以下计算（统计从最北边的人开始，以顺时针顺序遍历）
	* 若出的是J，给这个人的J数增加1
	* 若出的是掏，给这个人的J数剪去1
	* 若出的是戳，给这个人的J数剪去2
	* 若出的是爆（拍），给这个人的J数剪去3
	* 若出的是剪，给这个人的J数剪去4
	* 若出的是捏，给这个人的J数剪去5
	* 若出的是砍（阿西吧！），给这个人的J数剪去6
	* 若出的是吃，给这个人的J数剪去7
	* 若出的是内裤（铛！），给这个人的J数剪去1
	* 若出的是护板，给这个人的J数剪去2
	* 若出的是吸J，给这个人的J数剪去2
	* 偷J在**这个阶段**没有效果
	* 投降在**这个阶段**没有效果
	* 挡在**这个阶段**没有效果
2. 欠J计算（同样从最北边的人开始计算，顺时针方向遍历）
	* 若这个人的J数量为负数，则进行以下计算
		+ 若这个人的J数<-3、时间<0、计数器<0中的任意一条满足要求，则给予这个人999的伤害
		+ 否则，将这个人的计数器剪去1
3. 其他计算（同样从最北边的人开始计算，顺时针方向遍历）
	* 若发现有人正在出偷，且时间=-3，给予这个人999的伤害
	* 若发现有人的J哥的血条>9，将这个人的J哥血条强制重新设置为9
	* 再次读入一遍大家出的动作，若发现有人的动作还能读入（一回合出两个或以上个动作），给予这个人999的伤害
	* 若发现只有一个人没有g，将其状态设置为FALSE，游戏结束，宣布胜利者
4. 收尾及死亡计算
	* 时间加上1
	* 从最北边的人开始计算，顺时针方向遍历，若发现有人的血条小于或等于0的，将其状态设为FALSE（视为g了）

##### 回合内第二阶段

（伤害计算，所有计算自动跳过g了的人）

伤害计算说明：

J中，有的动作可以造成伤害。在实际的伤害计算中，我们会把动作转换为这些伤害来进行计算，避免不需要的排列组合。如下就是J中全套可以造成伤害的动作极其能造成的伤害。

* 掏：伤害1
* 戳：伤害2
* 爆（拍）：伤害3
* 剪（杀人）：伤害4
* 捏：伤害5
* 砍（阿西吧！）：伤害6
* 吃：伤害7

1. 阶段内初始化：将所有人当轮收到的伤害（定为x，整型变量，每个人的存储互不影响）定为0；将所有人的统计伤害（定为y，整型变量，每个人的存储互不影响）设置为0，将小白旗（布尔型变量，每个人的存储互不影响）设置为FALSE
2. 从最北边的人开始，顺时针方向进行计算：
	* 若这个人正在出戳：
		+ 若这个人的目标正在出挡：
			- 让他的动作不再是挡（失去保护作用）
			- 给他的血量加2
		+ 若这个人的目标正在出铛
			- 让他的动作不再是铛（失去保护作用）
3. 从最北边的人开始，顺时针方向进行计算：
	* 从轮到的人的人的左边开始，顺时针开始计算：（区分顺序）
		+ 小循环里的人是否在攻击大循环的人？
			- 若是：
				* 将x设置为小循环伤害
				* 大循环的人是否正在攻击小循环的人？
					+ 若是：
						- 大循环的人造成的伤害是否比小循环的人伤害更高？
							* 若否：
								+ 将x减小大循环伤害
							* 若是：
								+ 将x设置为0
				* 大循环的人的J哥的剩余血量是否大于x？
					+ 若否：
						- 将x减少J哥剩余血量
						- 将J哥血量设置为0
					+ 若是：
						- 将x设置为0
						- 将J哥血量减少小循环伤害
				* 大循环的人是否正在出防具（非攻击）？
					+ 若正在出挡：
						- x是否大于2？
							* 若是：
								+ 将x剪去2
							* 若否：
								+ 将x设置为0
				* 若正在出铛：
					+ x是否大于5？
						- 若是：
							* 将x剪去5
						- 若否：
							* 将x设置为0
				* 若正在出护板：
					+ x是否大于**8？**
						- 若是：
							* 将x剪去8
						- 若否：
							* 将x设置为0
				* 若正在出吸J：
					+ x是否大于6？
						- 若否：
							* 将x设置为0
							* 将J数增加3
				* 若正在出偷：
					+ 将x乘上100
	* 竖起小白旗：若x>0，将小白旗设置为TRUE
	* 锁定伤害并继承：y增加x
	* x设置为0

1. 投降判定：
	* 从最北边的人开始，顺时针方向进行计算：
		+ 若这个人的小白旗为FALSE且这个人正在出投降：
			- 将他的hp减少999
2. 死亡判定：从最北边的人开始，顺时针进行计算：
	* 若这个人不在出投降
		+ 将他的hp剪去y
	* 若这个人的生命值小于等于0，将这个人的状态设置为FALSE（视作g了）

##### 回合内第三阶段

（偷J计算，自动跳过已经g了的人）

1. 初始化：将所有人的A金库（整型变量，每个人的存储互不影响）设置为每个人的J数，将所有人的B金库（整型变量，每个人的存储互不影响）设置为0，将所有人的损失（布尔型变量，每个人的存储互不影响）设置为FALSE
2. 从最北边的人开始，顺时针方向遍历：
	* 从这个人左边开始，顺时针方向遍历：
		+ 如果大循环的人正在偷小循环的人：
			- 若小循环的人没有正在偷大循环的人，且小循环的人没有在出挡铛护板以及吸J
				* 将小循环的人的损失设置为TRUE
				* 将大循环的人B金库增加小循环的人A金库
3. 从最北边的人开始，顺时针遍历：
	* 若发现这个人的损失为TRUE
		+ 将这个人的A金库清零
4. 将所有人的J数设置为A、B金库相加

#### “国际公约”

J中存在很多潜规则。然而这些规则并不会被写进规则及计算方法中，而是存在于“国际公约”中。比如说，一整套团战的规则基本上都在“国际公约”里面。不遵守“国际公约”的人将遭到集火。以下就是统计得到的部分“国际公约”。

1. 集火J哥
2. 集火倪老狗
3. 如果J哥或者奶寄作为ATM机身份出现，先集火他们
	* 说明：ATM机是J中的一种玩法，是中立者躺平的一种行为。其表现是一直出J，永远不打或偷别人，专门为别人送J因而被称为ATM机
4. 如果ATM机不是J哥或者奶寄，不要打他们
5. 出动作的时候**要**说出来（不然会被当做老六）
6. 不要挂机
7. 不要经常出假动作或音画不匹配（除了骗J哥）
8. 不要连续出三个以上的掏
9. 不要连续出三个以上的偷
10. 不要拥有太多的J
11. J哥不能有太多
	* 说明：因为一次出J哥可以给J哥加三格血，因而9滴血的J哥被称作三层J哥，以此类推。
12. 不要经常“快乐”
	* 版本之子剪十分好用，但不要用太多
13. 不要tk队友
14. 不要击杀别人（下一局一定会吸仇恨）（虽然不可避免）

### 其他

#### J常驻委员各成员特点

* ZYY
	+ 爆伤小能手
	+ 受仇恨影响较大
	+ 小型伤害为主
	+ 特性开掘者
		- 名场面：拍！还J，还J，还J，拍！还J，还J，还J，拍！……（J数量从来没有上过0）
* J哥
	+ 偷J小能手
	+ 太拽了
	+ 能够提前观测周围动向而使用投降躲避伤害
	+ 万众瞩目
		- 名场面：——偷！~~hh你有几个J——oh不J哥，你已经g了！（掏）
	+ 被爆伤击杀极多
* 倪老狗
	+ 非常狗
		- 名场面：——阿西吧！——hh出的是护板——再阿西吧！——hh出的还是护板
		- 民场面2：吸！再吸！还吸！我还吸！
	+ 受仇恨影响很小（反杀小能手）
	+ 万众瞩目
	+ 被爆伤击杀较多
* 龟龟
	+ 动作单一（几乎只有阿西吧）
	+ 爆伤小能手
	+ 准心不稳定（你不知道下一轮他要打谁）
* 大儿
	+ 仇恨低
	+ 几乎打伤害（除了配合使用无限掏）
	+ 常常是最终赢家
	+ 玩法激进
* LYC
	+ J哥层数累计最多（J哥改版后，几乎只有他出J哥）
	+ 最特殊的材质包
	+ 最遵守国际公约（不主动打除J哥和倪老狗以外的人，打杀人的人）
	+ 被爆伤击杀极多
* 奶寄
	+ 非常激进，常常因被偷J而损失极其惨重（常常超过10个J）
	+ 公认的最佳ATM（怎么还会打人的）
	+ 在非ATM状态下最像ATM
	+ 出Dick Boom的频率比别人高出十几倍
	+ 对投降有着深刻的研究（砍完别人一定要投，事实证明有效）
* SJJ
	+ 出动作不声不响，动作模糊，常被视作老六而被LYC早早击杀
	+ 动作单一（几乎只有吃）
* YXR
	+ 动作模糊，可以提前观测周围动向及时出护板
	+ 被爆伤击杀极多

#### J历史各版本对照

##### 2021年前

* 2018年，J的前世——鸭鸭，在原2班群雄割据的拍手游戏局面中渐渐堕落。于是，小土豆和ZYY联合开创了J
	+ 在这个版本中，已经出现了当今J的核心动作：掏戳爆剪捏砍吃，挡内裤护板，但是在当时，大家只有一滴血
* 现在大家有3滴血了
* J在校外培训机构流传
* 加入了原2班拍手特色——个人技能
* J在原2班堕落，但在校外培训机构热度不减
	+ 大儿在此处学会玩J，成为目前J常驻委员中除ZYY以外最古老的玩家
* 添加了Dick Boom，但是它可以一次攻击两个人，而且这个时候它可以造成999的伤害
* 大家有5滴血了（需要验证）
	+ “我很难记起来什么时候大家有5滴血了，甚至我都不记得到底有没有加入5滴血，但是我记得好像是加入过的”——ZYY
* 添加了金刚不坏之J，由三个护板兑换，能够永久提升2点防御力
* 添加了自爆之J，需要三个J，出自爆之J的时候别人攻击会瞬间将攻击给予者击杀
* J关键常驻委员消失，仅剩ZYY一人，J堕落

##### 2021年后

* 2021年，在一次偶然的机会中，ZYY重拾了拍手游戏的设想，想起了J
* J重启了，一瞬间获得大量热度
	+ 当时，考虑到规则的简单化，ZYY移除了剪和捏，将砍和吃直接提前，也移除了富余的防具青铜护板，血量也下调至3
* J结合11班班级文化，添加了大杀器J哥天降（能对全场人造成999点伤害）和奶寄降临（防具，能保护全队，能抗住J哥天降）
* 有时，在逆境中被暴打的玩家体验很差，会直接按投降键退出游戏。ZYY发现了存在其中的巨大机遇，为投降添加了实际用途——在别人打你的时候，投降能为你抵挡一切伤害，但是如果没有人打你，投降就意味着直接g
* 为了丰富游戏玩法，J添加了回血功能，但是因为不够平衡，暂时还在测试版中
* 出现万恶版本——甲乙丙丁测试版，丙哥天降和丁哥天降过于逆天，tk队友过于魔法。
* 现在国际公约不再允许tk队友的行为出现
* 白垩纪版本更新了，至此，甲乙丙丁测试版彻底被挤掉
	+ “我只是想略微简单化一下游戏，但看到现在越来越复杂的玩法，我意识到我严重低估了大家”——ZYY
	+ 事实上，在此之前，ZYY已经有了这样的主意，但是考虑到大家可能严重的不适应，迟迟没有加入
	+ 现在，剪和捏被加入了，砍和吃向后顺延，重新加入了青铜护板、Dick Boom，移除了**投降**、J哥天降和肥董降临。尽管这非常复古，还是有些功能得到略微的修改——Dick Boom现在只能攻击一个目标，铛现在只需要1个挡了
* 投降的实际用途再一次加入了
* Dick Boom现在只可以造成10的伤害
* 侏罗纪版本更新了
	+ 现在，铛再一次需要两个挡了，而大家的血量也被添加到5滴
	+ 为了鼓励大家多出J（毕竟大家习惯了最多只消耗5个J），砍和吃的伤害提升1
	+ “尽管这些设定并不是最古老的，事实上，这些设定比白垩纪版本的这些设定更新。它还是被称为侏罗纪版本”
* Dick Boom现在要12个J，比原来多2个
* 在一次偶然的测试中，现在最为关键的功能性动作偷J被发明了，于此同时，能够瞬间获得100个J的制造J也被加入测试版
* 偷J一度得到流行，在之后的平衡性调整中，制造J因过于魔法而从测试版中移除。现在，偷J时若受到伤害会直接寄。这一波平衡性调整使得偷J几乎成为正式功能
* ZYY发现了偷封锁，该特性在用于2打1时会非常致命。若敌方已经用完所有的J，此时一个人不断地偷，另一个人攒J购买大杀器，让被集火玩家毫无反击之力
* 为了修复这个bug，现在偷J不可以偷走被偷者所有的J，而会无论如何总保留一个J。尽管这使得计算明显变得复杂，但目前看来这是唯一的方法。
* 大儿撰写了首个更新预告
* 大儿提出了“预支J”的玩法
* 现在可以“欠”J了，最多可以欠3个，且不管欠几个J，都必须在3回合内还清，开局5回合内也不可以欠J。出动作时会自动欠J
* 欠J让游戏速度大大加快。一场精准的砍可以把出挡的满血玩家直接击杀，大家需要额外的防具。
* 加入了“J哥”，作为一种额外性防具，出挡的时候可以挡伤，没出挡的时候也可以挡伤，还能叠加三层，还能挡偷，关键是便宜：只要4个J，除了会G，简直是无敌！
* J哥过于逆天，现在J哥需要5个J了
* ZYY发明了负数J玩法，即从不让J数变为正数，完全避免了被偷的问题。作为代价，这种战术打不出剪及以上伤害，但实际上拍已经可以对目标的J哥造成巨额伤害。该战术一度流行，让偷得到堕落。为了再次兴起偷，剪及以上、砍以下伤害被提升1
* J哥不再能抵挡偷，但是价格下调至3，尽管如此，现在用J哥的人也变少了
* 更多的更新预告被撰写
* 加入吸J，但是似乎还是比较废
* J目前局势已经稳定，如果不出意外，我们将将侏罗纪以后新添的功能加入到正式版本中，现在就只是平衡性调整了
* 进行了以下平衡性调整
	+ 多人偷不再可以资金流动
		- 这条主要是因为为了计算方便
	+ 偷现在又可以把被偷者的J偷完了
		- 因为存在欠J，原版本“偷封锁”并不好用，不信试试看
* J的wiki建立了
* 戳对于铛和挡的穿透效果正式被加入

#### 预告

* J即将推出人机。目前，人机还完全处于研发中，但是研发已经开始了