修仙功能开发上线

This commit is contained in:
liuwei
2025-11-18 11:19:59 +08:00
parent ca6969303d
commit eddc013182
6 changed files with 1883 additions and 1 deletions

122
plugins/xiuxian/config.toml Normal file
View File

@@ -0,0 +1,122 @@
# 修仙插件配置文件
# 说明:定义指令集、状态机时长、限流策略、修为速率、坊市商品与突破参数。
[Xiuxian]
enable = true
# 指令集合(无需前缀),按核心/经济/信息/社交/门派分类
command = ["修仙帮助", "注册修仙", "我的状态", "闭关", "出关", "聚灵", "排行榜", "修仙签到", "坊市", "购买", "乾坤袋", "突破", "强行突破", "劫掠", "赠与", "赠送", "创建门派", "加入门派", "退出门派"]
# 用法提示:命令格式错误时的反馈文本
command-format = """
📜修仙指令:
注册修仙 道号
我的状态
闭关
出关
聚灵 数量
排行榜
修仙签到
坊市
购买
乾坤袋
突破 - 需要丹药
强行突破 - 不需要丹药
劫掠 - 抢劫其他门派弟子
赠与 - 赠送灵石
赠送 - 赠送丹药物品
"""
[Xiuxian.status]
# 状态机参数:气息不稳/受伤保护时长(分钟),闭关收益计算上限(小时)
[Xiuxian.status]
unstable_qi_minutes = 15
injured_minutes = 60
max_cultivate_hours = 8
[Xiuxian.rate_limit]
# Redis 限流窗口(秒):用于防骚扰与防封,每个用户每条指令独立冷却
[Xiuxian.rate_limit]
status_seconds = 3
bag_seconds = 3
rob_seconds = 30
gather_seconds = 30
break_seconds = 60
force_break_seconds = 60
inout_seconds = 5
signin_seconds = 86400
shop_seconds = 10
buy_seconds = 5
gift_seconds = 10
[Xiuxian.cultivation]
# 修为结算参数:基础速率(每小时),灵根乘数(名称:倍率)
[Xiuxian.cultivation]
base_rate_per_hour = 100
spirit_roots = [
"废灵根:0.8",
"凡灵根:1.0",
"地灵根:1.2",
"天灵根:2.0"
]
[Xiuxian.shop]
# 坊市商品:名称:类型:价格(价格单位为灵石)。类型用于展示与分类,不影响逻辑。
[Xiuxian.shop]
items = [
"筑基丹:丹药:500",
"回气丹:丹药:200",
"聚灵符:材料:100"
]
[Xiuxian.breakthrough]
# 双轨制突破参数:丹药路径与强行路径
# pill_threshold丹药突破修为需求pill_item消耗的丹药名pill_success成功率
# force_threshold强行突破修为需求force_success成功率force_next_realm成功后的境界
[Xiuxian.breakthrough]
pill_threshold = 5000
pill_item = "筑基丹"
pill_success = 0.4
force_threshold = 20000
force_success = 0.1
force_next_realm = "筑基2层"
[Xiuxian.leaderboard]
# 排行榜键Redis Sorted Set。默认使用修为分数也支持按境界分值映射。
key = "xiuxian:zset:leaderboard:cultivation"
realm_key = "xiuxian:zset:leaderboard:realm"
[Xiuxian.realm_score]
# 境界分值映射:用于 realm 排行榜(基础值 + 层数),真仙为固定高分
stages = [
"凡人:0",
"炼气:10",
"筑基:20",
"金丹:30",
"元婴:40",
"化神:50",
"合体:60",
"大乘:70",
"渡劫:80",
"真仙:100"
]
[Xiuxian.layer_up]
# 每提升一层的修为阈值(简化规则):按当前境界前缀应用固定阈值
thresholds = [
"炼气:1000",
"筑基:5000",
"金丹:50000",
"元婴:200000",
"化神:1000000",
"合体:5000000",
"大乘:10000000",
"渡劫:50000000"
]
[Xiuxian.breakthrough_stages]
# 瓶颈突破定义当前境界10层:路径:修为消耗:成功率:目标境界
paths = [
"炼气10层:pill:5000:0.4:筑基1层",
"炼气10层:hard:20000:0.1:筑基2层",
"筑基10层:pill:50000:0.2:金丹1层",
"筑基10层:hard:200000:0.05:金丹2层"
]