Steward sects. Twenty-seven of them. One NPC offers 加入门派 and, later, 晋升. Joining is instant, promotion is a commission, and the ladder stops at 亲传. Every requirement is a number in a table, which is why this guide can list all of them.
Story sects. Everything else that can be joined. No NPC offers to let you in: entry comes out of a quest, promotion arrives as a letter, and the ladder runs one step further to 掌门. The data confirms the letters exist and the thresholds they fire at, and stops there — the quests themselves are compiled scripts in an asset bundle, not rows this pass could read.
The 事务总管 title does not tell you which is which. Fifty-nine NPCs carry it and only twenty-seven of them offer a join; the other thirty-two stand at story sects (太初剑宗, 嵩室山, 剑斋, 大雪山, 狂刀门, 丐门, 重天门, 绝剑门, 流云镖局, 云川镖局, 唐门, 东厂, 双修府, 黑沙寨 …) or at sects with no entry at all (不夜京, 穆特族, 捭阖谷, 凌云门, 三十六洞). Walking up to a steward and finding no 加入门派 in the menu is the expected outcome for most of them.
What actually marks a steward sect is a row of type 58 (IT_JoinMenPai) in npc_interact. Nothing
visible in the game distinguishes the two kinds before you talk to someone.
Sect affinity (宗门好感) is capped, and the cap depends on your rank in that sect
(MenPaiEntity.m_HaoGanLimit):
| Rank | Cap |
|---|---|
| 没加入 | 5 |
| 外门 | 25 |
| 内门 | 50 |
| 关门 | 75 |
| 亲传 | 100 |
| 掌门 | 100 |
And the promotion conditions ask for more than 24, more than 49, more than 74 — the cap of the rank you are standing in. The ceiling and the gate are the same number, so promotion becomes available at the exact moment affinity stops rising.
MenPaiManager.NpcAddMenPaiHaoGan applies the cap: it takes Min(current + gain, limit) before
clamping to ±100. The gain is silently reduced to whatever fits, and the on-screen +N message is
suppressed once nothing moves.
Consequence worth stating: there is no such thing as banking affinity toward the next rank. Once the bar is full you gain nothing from further sect work until you promote, and the four numbers people quote — 25 / 50 / 75 / 100 — are ceilings that happen to double as gates, not a schedule of notifications.
The cap only applies to your own sect. For every other sect the limit is the 没加入 row, 5. No amount of work for a sect you have not joined moves its standing past 5.
The floor is not capped the same way — only the ±100 clamp applies — so a sect you have wronged can sit at −100 while the best you can repair it to is +5.
Joining requires 宗门好感 > −1, and every sect starts you at 0 (MenPai.haogandu is 0 for all 244
rows). The real gate is the pair of skill numbers, and Handle_IT_JoinMenPai admits you the moment you
agree — no task, no waiting.
The one thing that can put joining out of reach is the 身败名裂 talent (id 20520), which subtracts 30
from your starting standing with every sect at once (MenPaiEntity.InitPlayerHaoGanByTalent). With
that talent you must climb back to 0 first, against a ceiling of 5.
Asking a steward for promotion does not promote you. It hands you a 委托 pulled at random from a group
(ForceSetWaitEntrust), and the promotion happens when you finish that commission — specifically in
EntrustManager.DoFinisedEntrustAction, which promotes only when the commission's flag is 3
(EntrustFlag.MenPaiUpLevel).
The 内门 → 关门 pools contain ten commissions each. Eight carry flag 3. Two carry flag 0. Both of the odd ones are 传递物品 deliveries, both are named 门派:关门弟子晋升 like the rest, and finishing one promotes nobody. This is true of all six of those pools (groups 1001001, 1003001, 1005001, 1007001, 1009001, 1011001).
It is not a dead end — the steward's 晋升 option is still there and re-rolls the pool — but a delivery task where you expected a duel is the one you can safely ignore.
The other two steps have no such rows: 外门 → 内门 draws from four commissions, 关门 → 亲传 from sixteen, and every one of them promotes.
| Step | Pool size | What you are asked to do |
|---|---|---|
| 外门 → 内门 | 4 | Fetch an item, or carry a message |
| 内门 → 关门 | 10 (8 promote) | Spar with a member and win |
| 关门 → 亲传 | 16 | Kill a named target |
Affinity thresholds are the same everywhere: 25, 50, 75. The skill numbers are not. These are the values the game checks, taken from each row's condition rather than from the text it prints — see the next section for where those two disagree.
| 门派 | 事务总管 | 位置 x, z | 入门 | 内门 (好感 25) | 关门 (好感 50) | 亲传 (好感 75) |
|---|---|---|---|---|---|---|
| 云潇山庄 | 叶风 | 667, 519 | 剑术 50 魔学 25 | 剑术 110 魔学 55 | 剑术 270 魔学 135 | 剑术 640 魔学 320 |
| 冼星堂 | 王志在 | 1878, 1000 | 剑术 40 诡辞 20 | 剑术 100 诡辞 50 | 剑术 240 诡辞 120 | 剑术 570 诡辞 285 |
| 十二连环坞 | 甘熠彤 | 358, 23 | 搏击 35 魔学 20 | 搏击 90 魔学 45 | 搏击 210 魔学 105 | 搏击 510 魔学 255 |
| 十陵阁 | 于博文 | 710, 481 | 剑术 30 诡辞 15 | 剑术 80 诡辞 40 | 剑术 190 诡辞 95 | 剑术 450 诡辞 225 |
| 千山学斋 | 吕采文 | 1518, 358 | 枪棍 30 儒学 15 | 枪棍 80 儒学 40 | 枪棍 190 儒学 95 | 枪棍 450 儒学 225 |
| 墨门 | 陈浩淼 | 1571, 1030 | 枪棍 50 墨学 25 | 枪棍 110 墨学 55 | 枪棍 270 墨学 135 | 枪棍 640 墨学 320 |
| 寻清门 | (无名) | 131, 1127 | 搏击 55 佛学 30 | 搏击 130 佛学 65 | 搏击 300 佛学 150 | 搏击 720 佛学 360 |
| 岭花谷 | 杨紫南 | 1736, 625 | 搏击 40 农学 20 | 搏击 100 农学 50 | 搏击 240 农学 120 | 搏击 570 农学 285 |
| 归墟剑宗 | (无名) | −157, 116 | 剑术 60 道学 30 | 剑术 140 道学 70 | 剑术 340 道学 170 | 剑术 810 道学 405 |
| 御虚门 | 封不摧 | 537, 1249 | 剑术 50 道学 25 | 剑术 110 道学 55 | 剑术 270 道学 135 | 剑术 640 道学 320 |
| 拂松门 | 李代过 | 1710, 331 | 刀法 30 墨学 15 | 刀法 80 墨学 40 | 刀法 190 墨学 95 | 刀法 450 墨学 225 |
| 昭月宗 | 方是非 | 1695, 1662 | 搏击 55 佛学 30 | 搏击 130 佛学 65 | 搏击 300 佛学 150 | 搏击 720 佛学 360 |
| 普贤堂 | 泷静 | 453, 1053 | 搏击 30 佛学 15 | 搏击 80 佛学 40 | 搏击 190 佛学 95 | 搏击 450 佛学 225 |
| 朔海派 | 叶以轩 | 1657, 23 | 刀法 40 魔学 20 | 刀法 100 魔学 50 | 刀法 240 魔学 120 | 刀法 570 魔学 285 |
| 望尘客栈 | 叶乐怡 | 1525, 1416 | 剑术 30 诡辞 15 | 剑术 80 诡辞 40 | 剑术 190 诡辞 95 | 剑术 450 诡辞 225 |
| 楚军 | 萧青 | 536, 859 | 刀法 40 兵道 20 | 刀法 100 兵道 50 | 刀法 240 兵道 120 | 刀法 570 兵道 285 |
| 爻光谷 | 陈如风 | 373, 1015 | 搏击 40 墨学 20 | 搏击 90 墨学 45 | 搏击 210 墨学 105 | 搏击 510 墨学 255 |
| 神兵山庄 | 蹇天薇 | 1104, 710 | 刀法 50 诡辞 25 | 刀法 110 诡辞 55 | 刀法 270 诡辞 135 | 刀法 640 诡辞 320 |
| 福兴镖局 | 知俞晨 | 1512, 439 | 枪棍 40 兵道 20 | 枪棍 100 兵道 50 | 枪棍 240 兵道 120 | 枪棍 570 兵道 285 |
| 遥雪峰 | 紫雍恬 | 788, 2012 | 剑术 50 魔学 25 | 剑术 110 魔学 55 | 剑术 270 魔学 135 | 剑术 640 魔学 320 |
| 长旌军 | 夏侯映寒 | 702, 1131 | 枪棍 40 兵道 20 | 枪棍 100 兵道 50 | 枪棍 240 兵道 120 | 枪棍 570 兵道 285 |
| 骆家军 | 裴学真 | 1527, 964 | 枪棍 40 兵道 20 | 枪棍 90 兵道 45 | 枪棍 210 兵道 105 | 枪棍 510 兵道 255 |
| 高家 | 高自强 | 867, 906 | 枪棍 40 兵道 20 | 枪棍 90 兵道 45 | 枪棍 210 兵道 105 | 枪棍 510 兵道 255 |
| 鸿月派 | 辟韶仪 | 906, 1623 | 刀法 30 墨学 15 | 刀法 80 墨学 40 | 刀法 190 墨学 95 | 刀法 450 墨学 225 |
| 鸿源学舍 | 叶振 | 1584, 985 | 刀法 30 儒学 15 | 刀法 80 儒学 40 | 刀法 190 儒学 95 | 刀法 450 儒学 225 |
| 麓山书院 | 高鸿煊 | 470, 781 | 剑术 55 儒学 30 | 剑术 300 儒学 150 | 剑术 720 儒学 360 | 剑术 810 儒学 405 |
| 齐军 | 范嘉玉 | 1404, 486 | 刀法 40 兵道 20 | 刀法 100 兵道 50 | 刀法 240 兵道 120 | 刀法 570 兵道 285 |
Coordinates are the steward's own x and z in npc_prototype — the same pair the trainer's teleport
takes.
Two of the stewards carry no personal name, only the job title. Two more have a job title that disagrees with the sect table: 朔海派's steward is titled 溯海派事务总管 and 鸿月派's is 鸿月帮事务总管.
麓山书院 is the outlier worth planning around: its 内门 step wants 剑术 300 where the equivalent step elsewhere wants 80–130.
Each row prints its requirements as a hand-written string and checks them with a separate condition list. In four rows those two disagree, and the condition is what runs:
| Sect | Step | Printed | Actually checked |
|---|---|---|---|
| 骆家军 | 入门 | 长兵 ≥ 35 | 枪棍 ≥ 40 |
| 高家 | 入门 | 长兵 ≥ 35 | 枪棍 ≥ 40 |
| 爻光谷 | 入门 | 搏击 ≥ 35 | 搏击 ≥ 40 |
| 十陵阁 | 亲传 | 剑术 ≥ 540 | 剑术 ≥ 450 |
The first three are harsher than advertised; the last is more generous. 云潇山庄's 亲传 line has a
cosmetic typo of its own — it reads 剑术≥=640 — but the number is right.
Those signs also use their own vocabulary. They write 长兵 for the attribute the character sheet calls 枪棍, and the table above uses the character sheet's names throughout — read off a running session, not guessed from the enum, which spells four of them differently again.
Every source that moves 宗门好感, with the amount it moves it by:
| Event | Change |
|---|---|
| Sect 悬赏 completed | base by task type × rank multiplier, rounded down |
| 切磋 round won | +1 |
| Sect 委托 (the wage task) finished | +1 |
| Sect 委托 failed | −5 … −2 |
| Killing a member of that sect | −5 … −3 |
| Leaving the sect | −50 |
Bounties are the only source with real throughput, and what they pay depends on the kind of task:
| Task | Base |
|---|---|
| 采集矿物 | 8 |
| 阅读书籍 / 属性 / 身法武学 | 5 |
| 属性(无上限) / 被动武学 | 4 |
| everything else | 1 |
Then the rank multiplier from MenPaiManager.m_身份好感加成系数: 外门 ×2, 内门 ×1.62, 关门 ×1.3,
亲传 ×1.05, 掌门 ×1.
A second multiplier runs the other way. When a bounty pays out that sect's own token, the count is
scaled by m_身份好感令牌加成系数 — 外门 ×1.05, 内门 ×1.3, 关门 ×1.62, 亲传 ×2.0. The same bounty
that hands an 外门 disciple sixteen affinity and a handful of tokens hands an 亲传 disciple eight
affinity and twice the tokens. Rank does not make sect work better; it changes what the work is for.
In practice a mining bounty is worth 16 affinity as 外门, 12 as 内门, 10 as 关门 — so each of the three promotions is two or three of the right bounties away, and every other kind of bounty is worth running only for its own reward.
Wages. menpaigongzi holds four rows per sect, one for ranks 外门 through 亲传. Each pays a money
pouch, a 修为 book, a 感悟 book, and that sect's token — 4, 5, 7 and 8 of them by rank. From 内门
upward it adds two skill books matched to the sect's own two attributes, and the whole set steps up in
tier as you rise: 断章 → 笔录 → 典籍 → 密卷.
Collecting the wage is refused if you have not finished that month's sect commission
(MenPaiGetGongZiResult.NotFinishEntrust); if you failed it, talking to the paymaster hands you a
replacement instead of the money.
The exchange. The sect shop's stock is split into seven groups, each gated on rank
(MenPaiShopRewardItem.SetLockState): groups 1 and 4 open at 内门, 2 and 5 at 关门, 3 and 6 at 亲传,
and group 7 only at 掌门. Everything is bought with that sect's token, so the token multiplier above is
what actually funds it.
Sect commissions. The 委托 board draws from a different list per rank (menpaientrust, keyed by
the rank enum) — 12 or 13 entries each, all of them 宗门考核 tasks that raise one of the sect's
development attributes. The 亲传 and 掌门 lists are identical.
The visibility conditions on these rows are unambiguous, and they are the reverse of what the names suggest:
切磋 costs 20 精力 and pits you against one member per rank tier. Winning steps you up a tier and pays +1 affinity; the 30-day cooldown only starts once you have beaten tier 4, so a run of four fights is one visit. Rewards are items drawn from the tier below yours at half count, plus that sect's token ×(tier × 5).
挑战 costs 40 精力 and is a four-round gauntlet, one opponent per rank tier, with no affinity attached
— it pays items only. Every opponent is rebuilt each time with every attribute scaled by
1 + 0.2 × (times you have already cleared it), so the second run is 20% harder than the first and it
never stops climbing.
众门大比 runs in June, once per year per sect (IsCanJoin compares the stored year, and the
interaction is locked outside month 6). It is a sixteen-entrant bracket: your finishing place is
2^(5 − round) − 1 if you won, so a first-round exit is 16th, second 8th, third 4th, and the final
gives 2nd or 1st. There is a third-place playoff. Only places 1, 2 and 3 carry rewards — the reward
table has three entries and nothing looks up 4th through 16th — and 1st includes everything 2nd and 3rd
would have given.
Sects can be split into two 派别, each starting at 50 standing, moving ±5 as you complete or fail that
branch's bounties, and unlocking exchange groups at 60 / 75 / 90 in one direction or the mirrored
40 / 25 / 10 in the other (MenPaiShopRewardItem.MduiHuanZuUnlockHanGan).
The menpaipaibie table has two rows. Both belong to 丐门, which is a story sect with no steward
and no join option in the interaction table. Anything written about choosing a faction inside your sect
is describing machinery that, in this build, has data for exactly one sect.
There are 81 promotion interactions in the game — 27 sects × 3 — and their rank conditions are
104|1, 104|2 and 104|3: 外门, 内门, 关门. There is no fourth. NpcMenPaiShenFenLevelUp will
happily take a player from 亲传 to 掌门, and two other callers use it, but both are gated on
CanNpcShenFenLevelUp, which tests an NPC's 境界 tier (4, 8 or 12) and is never satisfied by the
player's own promotion path.
What remains is the letters. mailcondition holds 45 rows that fire on sect affinity, at exactly
> 24, > 49, > 74 and > 99 — the four numbers again — and they belong to story sects:
| Sect | Letters at | Senders |
|---|---|---|
| 大雪山 | 25 / 50 / 75 / 100 | 本诣, 本心, 阿那罗 |
| 狂刀门 | 25 / 50 / 75 / 100 | 莫千山 |
| 丐门 | 25 / 50 / 100 | 蓉儿, 萧正德 |
| 十二连环坞 | 25 / 50 / 75 / 100 | 梅珠芹, 衡莆, 鹰眼老七 |
| 黑沙寨 | 25 / 50 / 75 / 100 | 张源, 大哥 |
| 绝剑门 | 25 / 50 / 75 / 100 | 萧明, 云婧, 莫靖 |
| 流云镖局 | 25 / 50 / 75 / 100 | 谢峰, 关钰, 关长威 |
| 云川镖局 | 25 / 50 / 75 / 100 | 林震天 |
| 东厂 | 25 / 50 / 75 / 100 | 曹公公 |
| (太初剑宗 / 砚溪山庄 / 丐门, senders carry no sect id) | 25 / 50 / 75 / 100 | 徐诸通, 王溪, 晏洵, 苏含笑 |
The fourth threshold, 100, only exists here. It is reachable only at 亲传, whose cap is 100, and it is what the letters use to open the 掌门 step. The quest each letter starts is a compiled script this pass could not read, so which of them ends in 掌门 is still a lead rather than a reading.
Sect affinity changing is what makes the letters check themselves: NpcAddMenPaiHaoGan fires
m_MailManager.OnTrigger for both ECT_CheckPlayerMenPaiHaoGan and
ECT_IsPlayerJoinedCurrentNpcMenPai on every change.
十二连环坞 appears in both lists, and it has two stewards to match: 甘熠彤 at 358, 23 offers the ordinary three-step ladder, and 卜文星 offers nothing but carries the title. Its letters are a full set of four. It is the only sect with both routes.
Checked against the TapTap sect guide (村头二狗, last edited 2025-08-28), which is the most complete account out there.
Right, and worth crediting:
Where it drifted:
SweetPotato.MenPaiManager, SweetPotato.MenPaiEntity, SweetPotato.MenPaiZhongMenDaBiManager,
NpcInteractionSystem.Handle_IT_*, EntrustManager.DoFinisedEntrustAction /
ForceSetWaitEntrust, MenPaiShopRewardItem.SetLockState, and the tables menpai, npc_interact,
npc_prototype, entrust_event_prototype, entrust_prototype, menpaigongzi, menpaientrust,
menpaipaibie, menpaizhongmendabi, mailcondition, talent_proto.
Two things were checked against a running session through the trainer's HTTP API rather than read: the attribute names the character sheet actually prints, and how many NPCs wear the 事务总管 title.
Interaction rows carry three condition columns and they do different jobs: condition decides whether
the row is shown, condition2 hides it when it matches, and condition3 leaves it visible but
greyed out with des as the reason. A trailing ! on any term negates it
(AnswerManager.ParseAnswers). Reading a requirement means reading condition3; reading who an option
is for means reading the first two.