Skip to content

Repository files navigation

BaseCore(基地核心)

Minecraft NeoForge License

createmeow 科技系列 · 基地核心

BaseCore 是一款面向 Minecraft 1.21.1(NeoForge)的基地建设与防御模组。玩家可以放置基地核心划定势力范围,通过安装各种模块获得增益、防御入侵者,并配合防御炮加密容器等方块打造属于自己的安全基地。


目录


环境要求

项目 版本
Minecraft 1.21.1
NeoForge 21.1.228 或更高
Java 21

核心内容

基地核心

  • 方块名基地核心basecore:basecore
  • 基地的核心建筑,放置后自动以自身为中心生成一个立方体范围(AABB),范围内的所有基地设施共享所有权与模块效果。
  • 第一次放置的玩家自动成为领主,基地名称默认为 玩家名的基地
  • 基地核心拥有生命值,生命值归零后会变为损坏器械(保留内部库存)。
  • 右键打开界面:可管理成员、安装模块或进行升级(取决于游戏模式)。
  • 两个基地核心的范围不能相交,否则无法放置。

防御炮

  • 方块名防御炮basecore:defend
  • 自动攻击进入射程的敌人,攻击目标可在三种模式间切换:
    1. 敌对生物
    2. 玩家
    3. 所有目标
  • 切换方式:领主潜行 + 右键。
  • 支持安装专属模块,提升射程、伤害、防御、自动修复等属性。

加密容器

  • 方块名加密容器basecore:hash_chest
  • 受基地权限保护的存储容器。
  • 权限可在三种模式间切换:仅自己、基地成员、所有人。
  • 切换方式:领主潜行 + 右键。
  • 非授权玩家无法打开,且破坏时会提示“你不是此加密容器所在基地的领主”。

模块系统

模块是提升基地与防御炮性能的核心物品,分为增益模块与入侵干扰模块两类。

基地核心可用模块

模块 效果
范围提升模块 扩大基地作用范围,每级 +6 格
防御增强模块 提升基地生命值,每个 +250
安全模块 防止其他玩家破坏基地内建筑(最多 1 个)
自动修复模块 每 15 秒自动修复基地生命值
荆棘模块 对攻击基地的敌人造成反伤
爆炸保护模块 保护基地核心免受爆炸伤害(最多 1 个)
反侦察模块 识破基地范围内玩家的伪装效果
伤害提升模块 范围内获得力量效果,并提升防御炮伤害
跳跃提升模块 范围内获得跳跃提升效果
生命回复模块 范围内获得生命回复效果
抗性提升模块 范围内获得抗性提升效果
挖掘速度提升模块 范围内获得急迫效果
移动速度提升模块 范围内获得速度效果
挖掘疲劳模块 对入侵玩家施加挖掘疲劳效果
虚弱模块 对入侵玩家施加虚弱效果
缓慢模块 对入侵玩家施加缓慢效果

防御炮可用模块

  • 范围提升、防御增强、荆棘、自动修复、伤害提升、生命回复等模块同样可安装在防御炮上,强化其战斗能力。

零件经济

模组提供两种资源经济模式:

  • 零件basecore:part):基础货币单位,右键可将背包中的零件存入“零件钱包”。
  • 零件包basecore:part_bundle):内含多个零件,可一次性获取。

component 模式下,基地核心与防御炮的升级改为消耗零件,无需手动合成模块。

特殊物品

物品 作用
伪装装置 / 强力伪装装置 / 极端伪装装置 使用后获得“伪装”状态效果,等级越高、持续时间越长
保护信号干扰装置 对非己方基地核心进行干扰,使其进入入侵状态,同时随机获得零件材料
修复装置 右键基地核心或防御炮可恢复 50 点生命值
电磁脉冲炸弹 投掷型炸弹,命中后对周围基地核心与防御炮造成 50 点伤害并附加干扰;若目标被摧毁则变为损坏器械

基础材料

  • 电子元件、简单芯片、精制芯片、铜丝、电缆、天线、模块基底等,用于合成核心、模块与高级物品。

两种游戏模式

游戏模式由配置文件 config/basecore.json 中的 gameplay 字段控制:

  • modular(默认):玩家通过合成获得模块,将其放入基地核心/防御炮的库存中生效。
  • component:通过消耗“零件”直接购买升级,省去合成步骤,更适合服务器经济玩法。

配置说明

配置文件位于 config/basecore.json,启动游戏后自动生成。可调整项包括:

配置项 说明
gameplay 游戏模式:modularcomponent
part_death_drop_percent 死亡时掉落零件的百分比
upgrades.*_cost 各模块/升级的零件消耗数量

示例:

{
  "gameplay": "modular",
  "part_death_drop_percent": 10,
  "upgrades": {
    "range_cost": 64,
    "defense_cost": 128,
    "secure_cost": 96
  }
}

安装方法

  1. 确保已安装 Minecraft 1.21.1 与对应版本的 NeoForge 启动器。
  2. 下载 basecore-1.0.6.jar
  3. 将 JAR 文件放入游戏目录下的 mods 文件夹。
  4. 启动游戏,在创造模式物品栏的"基地核心"标签页或 JEI/EMI 中查看所有物品。

构建与开发

本项目使用 Gradle 与 NeoForge ModDevGradle 插件。

# 构建模组 JAR
./gradlew build
# 运行数据生成
./gradlew runData

构建产物位于 build/libs/basecore-1.0.6.jar


扩展开发(社区 API)

BaseCore 预留了公共扩展 API,社区模组可以轻松地向"零件升级"界面注册自定义升级项,无需修改 basecore 本体。

依赖方式

build.gradledependencies 中添加 basecore 依赖,即可访问 dev.anye.mc.basecore.api 包。

注册自定义升级

import dev.anye.mc.basecore.api.BasecoreUpgradeApi;
import dev.anye.mc.basecore.api.UpgradeDefinition;

public class YourMod {
    public YourMod(IEventBus modEventBus) {
        // 注册一个仅在基地核心升级界面出现的模块,售价 200 零件
        BasecoreUpgradeApi.registerUpgrade(new UpgradeDefinition(
                ItemRegister.MyModule::get,
                () -> 200
        ));

        // 同时出现在基地核心与防御炮界面
        BasecoreUpgradeApi.registerUpgrade(new UpgradeDefinition(
                ItemRegister.MyModule::get,
                () -> 300,
                true, true
        ));
    }
}

自定义模块物品

模块物品必须继承 BasecoreModuleItem 才能被基地核心识别并生效:

  • 重写 range(int count) / health(int count) 提供范围、生命加成;
  • 重写 tick(...) 实现每 tick 生效的效果(如状态效果、自动修复);
  • 构造时指定 maxLevel,即基地核心中的最大等级。

自定义防御炮模块上限

默认防御炮中模块上限为 4,可通过 API 覆盖(含内置模块),需在物品注册完成后调用:

BasecoreUpgradeApi.setDefendModuleMax(ItemRegister.MyModule.get(), 2);

注意事项

  • 升级项通过 Supplier 延迟解析模块物品,可在模组构造阶段注册;
  • 防御炮的效果逻辑在 DefendBlockEntity 中实现,若自定义模块需要防御炮专属效果,请参考内置模块自行处理;
  • 零件售价支持 IntSupplier 动态计算(例如读取配置文件)。

作者与许可

  • 作者:createmeow
  • 许可证:MIT

About

一个适用于多人大型服务器Minecraft模组,添加了基地攻防玩法

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages