表概述

reputation_spillover_template表实现了声望的连锁传递机制。当玩家获得某阵营声望时,系统根据此表配置向关联阵营传递一定比例的声望值。典型场景如完成联盟任务时,同时提升暴风城和联盟整体的声望。

主键为 faction,每条记录最多可以配置6个溢出目标阵营,各有独立的溢出比例和最高声望等级限制。

表结构

字段名数据类型默认值说明
factionSMALLINT UNSIGNED0源阵营ID(主键)
faction1-6SMALLINT UNSIGNED0溢出目标阵营ID(1-6)
rate_1-6FLOAT0溢出比例(如0.5=50%)
rank_1-6TINYINT UNSIGNED0溢出生效的最高声望等级

重要字段详解

faction (源阵营)

主键,当玩家获得该阵营声望时,触发溢出机制。一个源阵营可以向最多6个目标阵营溢出声望。

常见配置:暴风城(faction=72)的声望溢出到联盟(faction=469)。

rate (溢出比例)

定义溢出到目标阵营的声望比例:

  • 0.25 - 获得1点声望,目标阵营获得0.25点
  • 0.5 - 50%溢出(暴风城→联盟的常见配置)
  • 1.0 - 100%完全溢出
rank (最高声望等级)

溢出生效的最高声望等级限制。当目标阵营声望已达到该等级后,不再获得溢出声望。

声望等级:0=仇恨, 1=敌对, 2=冷淡, 3=中立, 4=友善, 5=尊敬, 6=崇敬, 7=崇拜。

实战案例

查询溢出到联盟(469)的来源阵营:
SELECT faction, rate_1, rank_1 FROM reputation_spillover_template WHERE faction1 = 469
UNION ALL
SELECT faction, rate_2, rank_2 FROM reputation_spillover_template WHERE faction2 = 469
UNION ALL
SELECT faction, rate_3, rank_3 FROM reputation_spillover_template WHERE faction3 = 469;
设置暴风城声望以50%溢出到联盟(最高到崇敬):
INSERT INTO reputation_spillover_template (faction, faction1, rate_1, rank_1)
VALUES (72, 469, 0.5, 6)
ON DUPLICATE KEY UPDATE faction1=469, rate_1=0.5, rank_1=6;
查询所有溢出配置:
SELECT faction, faction1, rate_1, rank_1, faction2, rate_2, rank_2
FROM reputation_spillover_template
ORDER BY faction;

常见问题

Q: 声望溢出没有生效,如何排查?

检查以下几点:

  1. 源阵营和目标阵营的faction ID是否正确
  2. rate是否大于0
  3. 目标阵营声望是否已达到rank设定的上限
  4. 是否同时受reputation_reward_rate倍率影响

Q: 一个源阵营最多可以向几个目标溢出?

表中提供了faction1-6共6个目标阵营位置,即最多6个溢出目标。