LegacyLand

基于 Paper 1.21 + Towny 的国家文明模拟插件

LegacyLand 在 Towny 国家体系之上构建了一套完整的文明模拟系统,涵盖政治、经济、外交、战争、科技、季节等维度,为玩家提供深度策略与生存体验。

功能模块一览

🏛

国家与政治

5 种政体、角色权限、法令系统、科技树

💰

经济系统

货币、银行、贷款、期货、股票、税收

🤝

外交

盟友、贸易协定、科技协定、保护担保

⚔️

战争

普通战争、攻城战、旗帜战、经济制裁

🏥

城镇设施

诊所、供水站、集市、兵营

🌍

世界系统

12 个子季节、体温水分、区块资源定价

技术栈

组件版本
Minecraft (Paper)1.21.x
Java21
构建工具Gradle 8.8
数据库SQLite / MySQL (HikariCP) / MongoDB
插件版本1.0-pre2

安装与依赖

依赖列表

插件必需版本要求
Paper必需1.21+
Towny必需0.102.0.0+
ItemsAdder必需3.6.3+
Vault必需—
PlaceholderAPI推荐—
BlueMap可选—

安装步骤

  1. 确保已安装所有必需依赖插件
  2. 将 LegacyLand-{version}-final.jar 放入服务器 plugins/ 目录
  3. 启动服务器,自动生成默认配置文件
  4. 按需修改 plugins/LegacyLand/config.yml
  5. 重启服务器使配置生效
Folia 兼容
插件内置异步调度器适配,可在 Folia 和 Paper 环境下运行。

配置说明

config.yml — 核心配置

database:
  type: sqlite          # sqlite / mysql / mongodb

  sqlite:
    filename: legacyland.db

  mysql:
    host: localhost
    port: 3306
    database: legacyland
    username: root
    password: password
    pool:
      maximum-pool-size: 10
      minimum-idle: 2
      connection-timeout: 30000

  mongodb:
    host: localhost
    port: 27017
    database: legacyland

player-status:
  enable-actionbar: true
  actionbar-update-interval: 10   # ticks

season:
  days-per-sub-season: 8

tech:
  points-per-member: 2
  research-tick-interval: 6000

politics.yml

配置 5 种政体的效果倍率、角色列表、自定义效果(速度加成、粒子效果等)。

tech.yml

配置科技树节点,包含科技线(line)、层级(tier)、前置条件、研究费用、效果键值。

数据库选择建议
小型服务器用 SQLite(无需额外配置);中大型服务器推荐 MySQL(连接池高并发);有 MongoDB 基础设施可选 MongoDB。

个人状态

LegacyLand 在原版血量和饥饿之上增加了水分和体温两个生存属性,实时显示在 ActionBar。

查看状态

/player info查看个人状态概览
/status info查看详细玩家状态
/season info查看当前季节和气候

属性说明

属性说明
生命值普通血量,被打掉了要喝药
食物饿了会掉血,要吃东西
水分干旱地区会脱水,要喝水(可用供水站恢复)
体温受季节、地形、装备综合影响,过冷过热都有副作用
职业主职业 + 副职业,影响技能成长和系统加成
贴士
体温是动态的——当前季节、所在地形都会影响体温。沙漠太热、雪地太冷,穿对衣服很重要。

加入国家

LegacyLand 以 Towny 国家体系为基础。加入一个国家非常重要,大多数经济和政治功能都需要你是某个国家的成员。

如何加入

找到该国城镇长(Mayor)邀请你,或通过 Towny 命令申请加入。加入后你将获得:

  • 国家货币账户(可存钱、取钱)
  • 参与投票和法令的资格
  • 参与外交和战争的资格
/legacy info显示你的国家、政体和分配角色

国家角色

角色职责
国王 / 总统最高权限,管理政体、法令、宣战
财政大臣管理国库、铸币、税收
军需官管理战争物资和征兵
议会议员参与提案投票
外交官管理外交关系
普通成员基础参与权

职业系统

职业分为主职业和副职业,影响技能成长和某些系统的加成。

/player profession main <职业名>设置主职业
/player profession sub <职业名>设置副职业
/player stats查看职业详情和经验进度

银行与货币

LegacyLand 有独立的货币体系。每个国家都有自己的货币,以实体物品形式存在,可存入银行变成电子余额。

货币基本操作

/bank deposit手持货币物品,存入银行账户
/bank withdraw <金额> [国家名]从账户提取货币物品
/bank balance [国家名]查询余额
/bank transfer <玩家名> <金额> [国家名]转账给别人
/bank exchange <金额> <源国家> <目标国家>货币兑换(收 15% 手续费)
汇率机制
货币汇率由各国的国库储备量决定,不是固定的。强大的国家货币更值钱。

贷款

/finance loan <金额> [国家名]向国家申请贷款
/finance loans查看我的贷款列表
/finance repay <贷款ID> <金额>还款
注意
贷款有利息,逾期可能影响你的信用评分。

市场与贸易

玩家市场

每个城镇可以设立市场,玩家通过售货箱出售物品。

/price set <价格>设置售货箱价格(输入后点击箱子)
/market info查看市场信息(需站在市场区域)

资源与运输

/resource info查看背包资源重量和当前区域
/resource transport <x> <y> <z>计算运输到指定坐标的费用
/landprice查看当前地块价格

期货合约

期货合约是「提前约定」的交易方式。卖方挂出合约,买方购买后,卖方在约定时间内交货。

卖方操作

/finance future <物品> <数量> <价格> <天数> [国家]手持物品挂出期货,例:/finance future diamond 64 500 7
/finance deliver <合约ID>手持物品履约交货

买方操作

/finance futures open查看市场上的期货合约
/finance buy <合约ID>购买合约
/finance claim <合约ID>到期后领取货物

股票市场

每个国家可以上市一支股票。股价与该国实力动态挂钩——国家越强大,股价越高。

股价公式

股价 = 发行价 × (当前实力评分 / 发行时实力评分) 实力评分 = 国库储备 × 0.5 + 领土区块数 × 200 + 人口数 × 500

买卖操作

/stock list查看当前所有上市股票
/stock info <股票ID>查看某支股票详情
/stock buy <股票ID> <数量>买入股票
/stock sell <股票ID> <数量> <每股价格>挂出卖单
/stock cancel <卖单ID>撤回卖单
分红
持有股票时,当该国领导人发放分红,你会自动收到打入银行账户的分红款。

股价变动逻辑

  • 打胜仗、扩张领土、吸引更多成员 → 股价上涨
  • 战败、领土萎缩、人口流失 → 股价下跌

外交系统

/diplomacy info [国家名]查看外交关系状态

关系类型

关系效果
盟友可以互相支援战争
贸易协定降低货币兑换手续费
科技协定可以共享科技研究
中立默认状态,互不干涉
敌对可以宣战

外交行动(需领导人权限)

/diplomacy ally <国家名>申请结盟
/diplomacy trade <国家名>签订贸易协定
/diplomacy tech <国家名>签订科技协定
/diplomacy neutral <国家名>改为中立关系
/diplomacy war <国家名>宣战

保护担保

强国可以为弱国提供安全保障,担保方科技效果部分溢出至被保护国。

/guarantee add <国家名>建立保护担保
/guarantee list查看担保关系

战争系统

经济制裁(开战前手段)

/ecowar embargo <国家名> <天数>资源禁运
/ecowar sanction <国家名> <关税率>经济制裁(提高对方货币关税)
/ecowar gdp查看各国 GDP 排名
/ecowar stats [国家]查看经济数据

普通战争

/war list查看当前所有战争
/war info查看自己参与的战争详情
/war join <战争ID> <角色>加入战争(soldier / logistics / scout)
/war surrender投降(需领导人权限)
/war peace求和(需领导人权限)

攻城战(Siege War)

/siege outpost建立前哨站(站在信标上)
/siege station create建立补给站(站在信标上)
/siege core add <核心名>添加城市核心目标
/siege info查看攻城战进度

旗帜战(Flag War)

/flagwar info查看自己的旗帜战信息
/flagwar list查看所有旗帜战
/flagwar cancel取消自己发起的旗帜战

国家领导人专区

权限要求
以下内容需要国家领导人(国王/总统)权限。

建立国家经济

/economy create创建国库(第一步)
/economy mint <面值>铸造货币(消耗金锭,产出货币物品)
/economy info查看国库状态

政体系统

/legacy politics list查看所有可用政体
/legacy politics set <政体ID>切换政体(有冷却时间)
/legacy role <玩家名> <角色>给成员分配角色

法令系统

/law enact <类型> [小时] [参数]直接颁布法令(无需投票)
/law propose <类型> [小时] [参数]发起提案投票
/law vote <提案ID> yes/no成员投票
/law list [国家]查看当前法令
/law repeal <法令ID>废除法令

科技研究

/tech list查看可研究的科技
/tech info <科技ID>查看科技详情
/tech research <科技ID>研究科技(消耗研究点数)
/tech status查看当前研究状态

发行股票

/stock issue <ID> <显示名称> <总股本> <发行价>发行股票(每国只能有一支)
/stock dividend <每股金额>发放分红(从国库扣款)
/stock delist <股票ID>股票下市

国家政治系统

政体类型

政体ID特点
封建制FEUDAL封臣制度,分封领地
共和制REPUBLIC议会投票,民主决策
君主立宪制CONSTITUTIONAL君主 + 议会共治
军事独裁MILITARY军事效率优先,战斗加成
商业联邦COMMERCIAL贸易效率优先,经济加成
政体配置
每种政体的具体效果通过 politics.yml 配置驱动,支持自定义速度加成、粒子效果等。

科技树

  • 每在线成员每次贡献 2 点研究点(可配置)
  • 生成间隔:6000 ticks(约 5 分钟)
  • 保卫国科技溢出机制:保护弱国可获得部分科技效果

经济体系

货币流通

货币以实体物品形式流通,铸币机消耗金锭铸造。每个国家有独立货币,汇率由各国国库储备动态决定。

税收系统

税种说明
交易税玩家之间交易时收取
土地税占有城镇区块定期缴纳
封臣税封建制下封臣向宗主缴纳
/tax查看税率设置

经济战争手段

手段命令效果
禁运/ecowar embargo阻止目标国家的资源贸易
经济制裁/ecowar sanction提高对方货币关税
通胀攻击—破坏对方货币价值
货币战争—综合货币打压策略
/ecowar gdp查看各国 GDP 实时排名

城镇设施系统

Facility 模块为城镇提供可建造的基础设施,由市长在己方地块内放置 ItemsAdder 家具触发建造。

设施类型

设施建造费用使用费玩家冷却效果
诊所5005060 秒清除伤病 + 恢复 50% 血量
供水站2001030 秒水分恢复至满值
集市8000—降低城镇交易税 −2%
兵营10000—对参战玩家施加速度+力量增益

叠书递减公式

第 n 个设施效果系数 = 0.7^(n-1) 集市示例(交易税减免): 1 个 → −2.00%(累计 −2.00%) 2 个 → −1.40%(累计 −3.40%) 3 个 → −0.98%(累计 −4.38%)

建造与拆除

  • 建造:市长手持设施物品,放置在己方城镇地块内,自动扣除建造费用
  • 拆除:任何玩家可破坏,退还 30% 建造费用给破坏者
  • 建造费用自动存入国库

设施命令

/facility list列出所在城镇所有设施及叠书系数
/facility info <type>查看某类设施的建造费用和当前效果
/facility remove市长专用:破坏脚下设施并退还 30%
右键使用
使用诊所和供水站只需右键点击设施,无需命令。

世界与季节系统

季节系统

共 4 大季节,每季节含 3 个子季节,总计 12 个子季节,每个子季节默认持续 8 游戏天(可配置)。

季节子季节特点
春早春、仲春、春分温暖,适合春季作物
夏初夏、盛夏、晚夏炎热,干旱风险
秋初秋、仲秋、秋分凉爽,丰收季节
冬初冬、隆冬、晚冬寒冷,降雪
/season info查看当前季节和气候
/season set <季节>管理员设置季节

体温系统

  • 当前季节(夏热冬冷)
  • 所在地形(沙漠热,雪山冷)
  • 装备材质(铁甲导热强,皮甲有保温)

区块资源定价

不同生物群系产出差异化资源,资源采集被追踪,地价动态浮动。BlueMap 可实时渲染地价与国家标记。

/landprice查看当前区块地价

命令速查表

日常指令

想做的事命令
查看自己状态/player info 或 /status info
查看银行余额/bank balance
存入货币手持货币 → /bank deposit
取出货币/bank withdraw <金额>
转账给别人/bank transfer <玩家> <金额>
查看当前季节/season info
查看所有股票/stock list
买股票/stock buy <ID> <数量>
挂卖单/stock sell <ID> <数量> <价格>
查看战争/war list
查看外交关系/diplomacy info
查看各国 GDP/ecowar gdp
查看贷款/finance loans
查看期货市场/finance futures open
查看土地价格/landprice
查看城镇设施/facility list

所有根命令

命令功能
/legacy国家信息、政体、角色管理
/diplomacy外交关系、宣战、结盟、签协定
/guarantee保护担保管理
/war战争列表、加入、投降、求和
/siege攻城战前哨站与核心管理
/flagwar旗帜战管理
/economy国库创建、铸币、查询
/bank存取款、转账、货币兑换
/finance贷款、期货合约
/stock股票发行、买卖、分红
/ecowar经济制裁、禁运、GDP 排名
/tax税率查看与设置
/law法令颁布、提案、投票
/tech科技树查看与研究
/market市场信息管理
/price售货箱定价
/resource资源系统查询
/landprice地价查询
/season季节查看与设置
/player玩家属性、职业管理
/status玩家状态查看
/facility城镇设施查看与管理

新玩家入门顺序

  1. /player info — 查看自己的属性
  2. 加入一个国家(联系城镇长)
  3. /player profession — 选择职业
  4. /bank balance — 看看有没有初始余额
  5. /stock list — 研究各国股票
  6. /diplomacy info — 了解当前外交格局
  7. /war list — 看看有没有在进行的战争

更新日志

v1.0-pre2 当前

  • 完整经济系统:银行、贷款、期货、股票、铸币、国库、税收
  • 经济战争:禁运、制裁、通胀攻击、货币战争、GDP 统计
  • 战争系统:普通战争、攻城战(前哨站 + 补给站)、旗帜战
  • 法令系统:直接颁布 + 提案投票,多种法令类型
  • 科技树:研究点积累、政体锁定线、保卫国溢出
  • 外交保卫担保系统、区块资源定价 + 动态地价
  • 市场系统 + 售货箱定价、GUI 系统 + 组织系统
  • BlueMap 地价与国家标记集成
  • 构建混淆加密(ProGuard + ASM 字符串 XOR)
  • Folia 兼容

v1.0-Beta2.1

  • 修复 OrganizationManager 权限检查错误
  • 新增 NationPermission MANAGE_ORGANIZATION
  • 重写 NationTradeManager 原子性事务(买方扣款→卖方取物→买方存物→卖方收款)
  • 贸易加入外交关系门控(敌对/战争状态禁止贸易)

v1.0-Beta2

  • 配置驱动的政治体制系统(5 种政体)
  • 自定义效果系统(速度加成、粒子效果)
  • 多数据库支持(SQLite / MySQL / MongoDB)
  • 季节系统(12 个子季节)
  • 玩家状态系统(体温、水分、职业)
  • PlaceholderAPI 集成

v1.0-Beta1

  • 国家成员与角色系统
  • 国家税收系统
  • 国家外交系统
  • SQLite 数据持久化