Skip to content

Commit 0dbac6f

Browse files
committed
initial commit
0 parents  commit 0dbac6f

40 files changed

+1859
-0
lines changed

GameManual/Cards/Jink.tmd

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# 闪
2+
3+
^ 基本信息
4+
5+
[闪|!documents/Images/jink.png]
6+
7+
8+
- 使用时机:无
9+
- 目标:无
10+
- 效果:抵消【杀】的效果
11+
12+
参见:[杀|Slash.tmd]
13+
14+
^ FAQ
15+
16+
- Q: 【闪】在什么时机下使用?
17+
- A: 【闪】没有使用时机。当一名角色成为【杀】的目标时,其可以**打出**一张【闪】来抵消。无论在什么情况下,任何角色均不可能**使用**一张【闪】。
18+
19+
20+
- Q: 【闪】的全部效果只有抵消【杀】的效果吗(比如,为何没有考虑结算【弹幕】时的效果)?
21+
- A: 从牌面效果本身来说,【闪】的效果只有抵消【杀】而已。至于其他的打出方式,比如【弹幕】的结算,那是由【弹幕】这张牌的效果决定的,与【闪】本身的牌面效果没有关系。

GameManual/Cards/Peach.tmd

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# 桃
2+
3+
^ 基本信息
4+
5+
[桃|!documents/Images/peach.png]
6+
7+
8+
- 使用时机:1.出牌阶段;2.有角色濒死时
9+
- 目标:1.自己(已受伤);2.濒死角色
10+
- 效果:令目标回复1点体力
11+
12+
^ FAQ
13+
14+
- Q: 自己濒死可以对自己使用【桃】吗?
15+
- A: 可以。使用后自己回复一点体力。
16+
17+
18+
- Q: 在已受伤角色A的出牌阶段,B进入濒死状态,A使用【桃】时可以按照使用时机1指定自己为目标吗?
19+
- A: 不可以。按照濒死结算优先原则,场上有角色濒死时【桃】只能按使用时机2指定的方式使用。
20+
21+
22+
- Q: 对一濒死角色使用【桃】,若此【桃】结算前该角色已经脱离濒死状态,此【桃】结算时该角色是否回复体力?
23+
- A: 是。

GameManual/Cards/Slash.tmd

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# 杀·火杀·雷杀
2+
3+
^ 基本信息
4+
5+
= = =
6+
[杀|!documents/Images/slash.png] [火杀|!documents/Images/fire_slash.png] [雷杀|!documents/Images/thunder_slash.png]
7+
8+
- 使用时机:出牌阶段
9+
- 目标:攻击范围内的一名其他角色
10+
- 效果:对目标造成1点无属性/火焰/雷电伤害(对应杀/火杀/雷杀)
11+
12+
【杀】的效果可以被目标角色打出【闪】抵消,无论该【杀】为何种属性。
13+
- 参见:[闪|Jink.tmd]
14+
15+
在出牌阶段的任何一个自由行动时间点,使用【杀】都需要消耗一张符卡。没有符卡则不能在该时间点使用【杀】。一些特定的效果能规避这一限制。
16+
- 参见:[符卡规则|../Rule.tmd#符卡]
17+
18+
^ FAQ
19+

GameManual/Cards/overview.tmd

+57
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
# 卡牌介绍
2+
3+
东方启灵阁中一共有38种不同的游戏牌。与三国杀相比,它们全部更改了插画,一部分更改了牌名,少数是三国杀中没有的。因此即便是熟悉三国杀的玩家,在初次接触这些游戏牌时,也难免会需要长时间适应。
4+
5+
^ 目录
6+
7+
我们为东方启灵阁玩家提供了介绍各种游戏牌的官方文档。下面列出了全部的文档链接:
8+
9+
- 基本牌
10+
- [杀·火杀·雷杀|Slash.tmd]
11+
- [闪|Jink.tmd]
12+
- [桃|Peach.tmd]
13+
- [酒|Analeptic.tmd]
14+
- 锦囊牌
15+
- 非延时锦囊
16+
- [废烬残蚀|Dismantlement.tmd]
17+
- [禁地藉略|Snatch.tmd]
18+
- [无中生有|ExNihilo.tmd]
19+
- [纵驭刃息|Collateral.tmd]
20+
- [冰尘蚀骨|IcyFog.tmd]
21+
- [妖山天岚|Haze.tmd]
22+
- [诹访决战|Duel.tmd]
23+
- [五谷丰登|AmazingGrace.tmd]
24+
- [读心术|MindReading.tmd]
25+
- [人形操纵|SavageAssault.tmd]
26+
- [弹幕|ArcheryAttack.tmd]
27+
- [幻落樱芳|GodSalvation.tmd]
28+
- [无懈可击|Nullification.tmd]
29+
- [火攻|FireAttack.tmd]
30+
- [鬼缚金锁|IronChain.tmd]
31+
- 延时锦囊
32+
- [天穹地界|Lightning.tmd]
33+
- [无何有乡|Indulgence.tmd]
34+
- [神社贡赋|SupplyShortage.tmd]
35+
- 装备牌
36+
- 武器牌
37+
- [八卦炉|Crossbow.tmd]
38+
- [冈格尼尔|QinggangSword.tmd]
39+
- [寒冰锥|IceSword.tmd]
40+
- [菊花印|GudingBlade.tmd]
41+
- [魔导书|Spear.tmd]
42+
- [陷阱网|Blade.tmd]
43+
- [追踪札|Axe.tmd]
44+
- [红叶扇|Halberd.tmd]
45+
- [莱瓦汀|Fan.tmd]
46+
- 防具牌
47+
- [八尺镜|EightDiagram.tmd]
48+
- [夜雀之翼|RenwangShield.tmd]
49+
- [神德魔阵|Vine.tmd]
50+
- [洩矢铁轮|SilverLion.tmd]
51+
- 人形牌
52+
- [蓬莱人形|DefensiveHorse.tmd]
53+
- [上海人形|OffensiveHorse.tmd]
54+
- 宝物牌
55+
- [阴阳玉|WoodenOx.tmd]
56+
57+
*特别提醒:三国杀中的【雌雄双股剑】【青龙偃月刀】和【麒麟弓】,在东方启灵阁中没有对应的卡牌。东方启灵阁中的【冰尘蚀骨】【妖山天岚】和【读心术】,在三国杀中没有对应的卡牌。*
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# 标准包
2+
3+
本文档是标准包武将介绍文档的总览页。各标准包武将文档链接在下方列出。
4+
5+
^ 博丽(12名)
6+
7+
- [博丽灵梦|reimu.tmd]
8+
- [雾雨魔理沙|marisa.tmd]
9+
- [伊吹萃香|suika.tmd]
10+
- [射命丸文|aya.tmd]
11+
- [琪露诺|cirno.tmd]
12+
- [蕾米莉亚·斯卡雷特|remilia.tmd]
13+
- [芙兰朵露·斯卡雷特|flandre.tmd]
14+
- [幽谷响子|kyouko.tmd]
15+
- [河城荷取|nitori.tmd]
16+
- [帕秋莉·诺蕾姬|pachouli.tmd]
17+
- [爱丽丝·玛格特罗伊德|alice.tmd]
18+
- [蕾蒂·霍瓦特罗克|letty.tmd]
19+
20+
^ 守矢(12名)
21+
22+
- [东风谷早苗|sanae.tmd]
23+
- [八坂神奈子|kanako.tmd]
24+
- [洩矢诹访子|suwako.tmd]
25+
- [古明地觉|satori.tmd]
26+
- [古明地恋|koishi.tmd]
27+
- [米斯蒂娅·萝蕾拉|mystia.tmd]
28+
- [黑谷山女|yamame.tmd]
29+
- [秋静叶|shizuha.tmd]
30+
- [秋穰子|minoriko.tmd]
31+
- [因幡帝|tewi.tmd]
32+
- [铃仙·优昙华院·稻叶|reisen.tmd]
33+
- [永江衣玖|iku.tmd]
+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# 博丽灵梦
2+
3+
^ 基本信息
4+
5+
[博丽灵梦|!documents/Images/reimu.png]
6+
7+
- 称号:中央的巫女
8+
- 势力:博丽
9+
- 体力:4
10+
- 技能:
11+
- 【封魔】出牌阶段,你可以选择一项:1.消耗一张符卡;2.弃置两张手牌。然后你指定一名本回合未成为“封魔”目标的其他角色如此选择,若其选项与你不同,本回合你不能发动“封魔”。
12+
- 【卦玉】**主公技,**其他博丽阵营角色的出牌阶段开始时,其可以选择一项:1.令你获得一张符卡;2.交给你一张符卡,然后其摸一张牌。
13+
14+
^ FAQ
15+
16+
^ 强度鉴定
17+
18+
= = = = = =
19+
*进攻/爆发 防御/耐久 辅助/压制 仇恨/集火 顺风/推进 逆风/破局
20+
D(非主公)/B(主公) D B(非主公)/A(主公) D B D
21+
22+
总体定位偏向压制、控场。无论进攻还是防守都比较弱(主公的话输出端有所改善),但其低嘲讽以及限制敌人出【杀】的能力使其能够在前中期较为安稳地生存。由于其技能不可忽视的压制力,灵梦在顺风局可以有力地减少敌人翻盘的可能性,但逆风局却难以一己之力挽回局面。
23+
24+
整体强度:C(非主公)/B(主公)
25+
26+
^ 使用建议
27+
28+
灵梦作为主公和非主公的打法思路完全不同。主公灵梦有“卦玉”的加成,多人局回合内通常有3张左右的符卡,这使得无论是“封魔”控场还是消耗冗余【杀】并实现爆发的力度都大大增强。可以说,主公灵梦的强度取决于符卡的数量,从而取决于本势力队友的数量。灵梦的忠臣应优先选择嘲讽不过高(当然作为忠臣嘲讽过低也不合适)、防御不过低的博丽势力角色。
29+
30+
非主公灵梦的发挥相对受限,但其嘲讽值甚至比主公更低。考虑到其侵略性不足的缺陷,非主公灵梦前期应采用保守打法,不过分招引仇恨。考虑到以寡敌众的难度,忠臣并不适合灵梦,因为前期忠臣不够积极作为容易导致反贼快速形成优势。然而灵梦与内奸身份相性较好,该身份下灵梦以低嘲讽作为韬光养晦的资本,并且在人数较少的残局时,其劣势被淡化,而控场压制的优势更为显露。反贼对灵梦来说也是可以考虑的选择,此时灵梦主要以压制主忠方菜刀核心或【杀】的输出最为灵活的那个角色为主,通过拖慢主忠方的攻势来形成反贼团体的前中期优势。
31+
32+
= =
33+
[目录|overview.tmd#博丽(12名)] 雾雨魔理沙

GameManual/Generals/overview.tmd

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# 武将详解
2+
3+
目前,东方启灵阁的武将包只有标准包一个,包含了24名武将,其中12名是博丽势力,12名是守矢势力。为了让新人玩家能快速查询武将信息,我们制定了本文档对全部武将进行详细的介绍及FAQ,并给出大略的强度鉴定和一些基本的用法建议。这些鉴定和建议不一定普适而全面,因此仅供参考,玩家仍应以自己的实战经验为主。
4+
5+
^ 扩展包
6+
7+
- [标准包|THStandard/overview.tmd]

GameManual/Rule.tmd

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# 部分规则
2+
3+
本文档列出了东方启灵阁的一部分游戏规则。之所以不列出全部游戏规则,是因为它与三国杀规则大同小异。本文档列出的主要是那些与三国杀规则不同的地方。
4+
5+
^ 符卡
6+
7+
东方启灵阁规则中,玩家若要在出牌阶段的自由行动时间点使用一张【杀】,必须消耗一张符卡。在游戏界面中,符卡本质上是一种标记(就像限定技标记、“七曜”标记那样),为一个深红色调的、带有纵向渐变的方块,上面写有篆文的“符”字,如下图:
8+
9+
[符卡|!documents/Images/@spell.png]
10+
11+
一旦玩家没有符卡,将不能在出牌阶段的自由行动时间点使用【杀】。出牌阶段结束时,玩家的符卡总会被调整至1,无论此前玩家的符卡数比1多还是少。
12+
13+
注意,符卡只影响在出牌阶段的**自由行动时间点**使用【杀】。也就是说,在包括但不限于下列几项的情形中,使用【杀】既不消耗符卡,也无须要求玩家有符卡。
14+
15+
- 因【纵驭刃息】的效果,目标A对目标B使用【杀】。
16+
- 出牌阶段开始时/结束时使用【杀】。
17+
- 自己的出牌阶段以外的阶段使用【杀】。
18+
- 出牌阶段,在某个事件结算中使用【杀】。
19+
- 在其他角色的回合内,因自己的技能效果主动使用【杀】。
20+
21+
上述效果的共同点就是游戏界面会弹出一个询问框,询问玩家是否发动技能/使用【杀】。此时玩家的手牌或阴阳玉牌中只有【杀】可被点选。
22+
23+
一些技能效果可以让玩家不依赖符卡地使用【杀】。这类技能效果在描述中一般记作“不消耗符卡”,但有必要指出,在如此描述的效果影响下,玩家不仅使用【杀】不消耗符卡,而且在没有符卡的时候也可以使用【杀】。这样的技能在目前的东方启灵阁中只有两个:
24+
25+
- 【八卦炉】武器技能。
26+
- 古明地恋的“断念”效果。
27+
28+
注意,这类效果并不意味着玩家的符卡数无法被更改。在这类技能效果影响下,玩家的符卡数仍会在出牌阶段还原为1,身份为主公的博丽灵梦仍会因“卦玉”获得符卡,被黑谷山女发动“瘴气”的玩家仍会失去符卡,等等。
29+
30+
参见:[游戏牌-杀|Cards/Slash.tmd]
31+
32+
^ 【酒】的机制
33+
34+
东方启灵阁中【酒】的机制与三国杀相比有了很大的改动。
35+
36+
首先,出牌阶段,玩家可以使用任意数量的【酒】,每使用一张【酒】,下一张【杀】的伤害就会+1,这个效果可以叠加。也就是说,理论上玩家可以通过此法使得一张【杀】的伤害无限增大。
37+
38+
其次,【酒】的效果不再于出牌阶段结束时消失,而是持续生效直到使用者的下个回合开始。【酒】的效果可以从玩家头像变红这一点看出。当玩家的回合开始时,头像上的红色遮罩会消失,意味着【酒】的效果消失。这意味着即便在回合外因【纵驭刃息】等效果使用【杀】,也有可能得到【酒】的伤害加成。需要注意的是,使用【杀】仍然会导致【酒】的效果消失。
39+
40+
此外,一旦玩家受到伤害,【酒】的效果就会消失,哪怕此时在玩家的出牌阶段内也是如此。这使得下面的建议是必要的:使用【酒】之后,如果想要借此提高下一张【杀】的伤害,就不要立即使用【决斗】这样的牌。另外,如果此时这个伤害大于等于玩家的体力值,则此伤害会-1。这意味着1体力的玩家可以在回合内使用掉手中的一张【酒】,从而在回合外保存另一张防御牌,同时还能抵挡下回合开始前的一次伤害。
41+
42+
需要注意的是,无论玩家叠加了多少【酒】的状态,只需一次伤害就能使其全部消失。如果伤害大于等于体力值,无论叠加了多少【酒】的状态,也只能减免1点伤害。因此不建议意图以此法抵挡致命伤害的玩家在回合外留下多于一张【酒】的效果。
43+
44+
参见:[游戏牌-酒|Cards/Analeptic.tmd]

GameManual/overview.tmd

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# 总览
2+
3+
我们为刚刚接触东方启灵阁不久的新人玩家们准备了这一介绍文档。文档的各个部分在下面列出,玩家可以点击链接进入相关页面查阅。所有的文档都配有常见FAQ。
4+
5+
- [部分规则|Rule.tmd]
6+
- [卡牌介绍|Cards/overview.tmd]
7+
- [武将详解|Generals/overview.tmd]
8+
9+
我们的八人局官方服务器:142.93.20.189
10+
开发者Kouchya联系方式:[email protected]

Images/@spell.png

3.86 KB
Loading

Images/fire_slash.png

99 KB
Loading

Images/jink.png

89.2 KB
Loading

Images/peach.png

99.4 KB
Loading

Images/reimu.png

184 KB
Loading

Images/slash.png

105 KB
Loading

Images/thunder_slash.png

105 KB
Loading

Tutorial/AITutorial/Initial.tmd

Whitespace-only changes.

Tutorial/AdvancedPackTutorial/Initial.tmd

Whitespace-only changes.

Tutorial/CodeExample/andun.tmd

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# 案楯
2+
3+
**本文档属于东方启灵阁扩展包开发教程系列。不参与源代码开发的用户可以忽略这部分内容。教程要求用户有一定的C++面向对象编程基础。**
4+
5+
## 代码
6+
7+
```cpp
8+
class Andun : public ProhibitSkill
9+
{
10+
11+
public:
12+
Andun() : ProhibitSkill("andun")
13+
{
14+
}
15+
16+
virtual bool isProhibited(const Player *from, const Player *to, const Card *card) const
17+
{
18+
return to->hasSkill(this) && card->isKindOf("Slash") && from->getHp() > to->getHp();
19+
}
20+
};
21+
```
22+
23+
[点击此处返回第一节|../PackageTutorial/PS-DS-MCS.tmd#禁止技]

Tutorial/CodeExample/fanshen.tmd

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# 梵神
2+
3+
**本文档属于东方启灵阁扩展包开发教程系列。不参与源代码开发的用户可以忽略这部分内容。教程要求用户有一定的C++面向对象编程基础。**
4+
5+
## 代码
6+
7+
```cpp
8+
class Fanshen : public OneCardViewAsSkill
9+
{
10+
11+
public:
12+
Fanshen() : OneCardViewAsSkill("fanshen")
13+
{
14+
filter_pattern = ".|diamond|.|hand";
15+
}
16+
17+
virtual bool isEnabledAtPlay(const Player *player) const
18+
{
19+
return !player->isKongcheng();
20+
}
21+
22+
virtual const Card *viewAs(const Card *originalCard) const
23+
{
24+
FireSlash *card = new FireSlash(Card::SuitToBeDecided, -1);
25+
card->addSubcard(originalCard);
26+
card->setSkillName(objectName());
27+
return card;
28+
}
29+
};
30+
31+
class FanshenTM : public TargetModSkill
32+
{
33+
34+
public:
35+
FanshenTM() : TargetModSkill("#fanshen-tm")
36+
{
37+
pattern = "FireSlash";
38+
}
39+
40+
virtual bool noLimit(const Player *player, const Card *) const
41+
{
42+
return player->hasSkill(this);
43+
}
44+
};
45+
```
46+
47+
添加技能代码:
48+
49+
```cpp
50+
karna->addSkill(new Fanshen);
51+
karna->addSkill(new FanshenTM);
52+
related_skills.insertMulti("fanshen", "#fanshen-tm");
53+
```
54+
55+
[点击此处返回第三节|../PackageTutorial/VS-OCV.tmd#练习]

Tutorial/CodeExample/furen.tmd

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# 覆刃
2+
3+
**本文档属于东方启灵阁扩展包开发教程系列。不参与源代码开发的用户可以忽略这部分内容。教程要求用户有一定的C++面向对象编程基础。**
4+
5+
## 代码
6+
7+
```cpp
8+
class Furen : public ViewAsSkill
9+
{
10+
11+
public:
12+
Furen() : ViewAsSkill("furen")
13+
{
14+
}
15+
16+
virtual bool viewFilter(const QList<const Card *> &, const Card *to_select) const
17+
{
18+
return !to_select->isEquipped();
19+
}
20+
21+
virtual bool isEnabledAtPlay(const Player *player) const
22+
{
23+
return !player->isKongcheng();
24+
}
25+
26+
virtual const Card *viewAs(const QList<const Card *> &cards) const
27+
{
28+
if (cards.length() != Self->getHandcardNum() || cards.isEmpty())
29+
return NULL;
30+
31+
ArcheryAttack *card = new ArcheryAttack(Card::SuitToBeDecided, -1);
32+
card->addSubcards(cards);
33+
card->setSkillName(objectName());
34+
return card;
35+
}
36+
};
37+
```
38+
39+
[点击此处返回第三节|../PackageTutorial/VS-OCV.tmd#练习]

0 commit comments

Comments
 (0)