Back to MCP directory
publicPublicdnsLocal runtime

Noeli14_MCppServer

MCpp Server是一个用C++编写的高性能Minecraft服务器,旨在提供快速、高效且可定制的游戏体验,同时保持与最新Minecraft功能的兼容性。

article

README

🚀 MCpp Server项目

MCpp Server是一个处于早期开发阶段的服务器项目,它具备多线程架构、高效的区块加载与生成等特性,能为用户带来高性能的使用体验。不过目前可能存在一些问题,后续会不断优化。

🚀 快速开始

若你想运行MCpp Server服务器,可按以下步骤操作:

  1. 克隆仓库:
    git clone https://github.com/Noeli4/MCppServer.git
    cd MCppServer
    
  2. 创建构建目录:
    mkdir build
    cd build
    
  3. 使用 CMake 生成构建文件:
    cmake ..
    
    • 调试构建:
      cmake -DCMAKE_BUILD_TYPE=Debug ..
      
    • 发布构建:
      cmake -DCMAKE_BUILD_TYPE=Release ..
      
  4. 编译项目:
    make
    
  5. 运行服务器:
    ./MCppServer
    

✨ 主要特性

性能

  • 多线程架构:利用多个线程同时处理各种服务器任务,提升处理效率。
  • 超快且高效的区块加载与生成:使用多个线程来高效加载和生成区块,内存占用极低。
  • 优化的代码库:由 C++ 编写,以实现最大效率和最低延迟。

自定义与扩展性

  • 可配置设置:易于调整的配置文件,可根据需要定制服务器行为。
  • 即将推出的插件支持:提供基础,以便开发和集成自定义插件。

网络功能

  • 数据包压缩:通过压缩数据包来减少带宽使用量。
  • 服务器状态与延迟检测:提供实时服务器状态信息和延迟测量。

已实现与待实现功能

  • 登录
    • [x] 在线模式认证
    • [x] 加密
    • [x] 数据包压缩
  • 服务器配置
    • [x] 服务器链接
    • [x] 注册表
    • [x] 资源包(多个)
    • [x] 服务器品牌
    • [ ] Cookies
  • 服务器功能
    • [ ] Lua 插件 API
    • [x] 查询
    • [x] RCON
    • [x] 命令
    • [x] 聊天
    • [x] 翻译
  • 世界
    • [x] 加入世界
    • [x] 区块加载
    • [x] 区块生成
    • [x] 方块类型与状态
    • [x] 实体
    • [ ] 单一区块处理
  • 其他
    • [x] 命令方块
    • [x] 粉末雪块

📚 详细文档

MCpp Server 使用来自 PrismarineJS 的 Minecraft 数据存储,以确保准确和最新的游戏机制和数据。

📄 许可证

文档未提及许可证相关信息,故跳过此章节。

⚠️ 重要提示

此项目处于早期开发阶段,可能存在 bugs 和未完成的功能以及临时和未优化的代码。

💡 使用建议

对于任何问题或支持请求,请在 GitHub 仓库 上打开问题或讨论。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client