MCP-Mirror

Noeli14_MCppServer

Community MCP-Mirror
Updated

Mirror of https://github.com/Noeli14/MCppServer

image

License: MITCurrent version)

Fast and super efficient C++ 1.21.1 Minecraft Server. Compatible with Java Clients. Designed to feel like Vanilla Minecraft, but with the power of C++.

image

MCpp Server is a high-performance Minecraft server developed entirely in C++. Designed for speed, efficiency, and extensive customization, MCpp Server aims to provide a seamless and enjoyable experience for players while trying to maintain full compatibility with the latest Minecraft features.

โš ๏ธ Important โš ๏ธ

This project is in early development and may contain bugs and incomplete features, aswell as temporary and unoptimized code.

๐Ÿ™Œ Progress

Want to see what Iโ€™m working on? Check out the discussion tab under Show and Tell!

๐Ÿš€ Features

๐ŸŽ๏ธ Performance

  • Multi-threaded Architecture: Leverages multiple threads to handle various server tasks simultaneously.
  • Super fast and efficient Chunk Loading and Generation: Uses multiple threads to load and generate chunks with minimal Memory usage.
  • Optimized Codebase: Written in C++ for maximum efficiency and low latency.

๐Ÿ”ง Customization & Extensibility

  • Configurable Settings: Easily adjustable configuration files to tailor server behavior to your needs.
  • Plugin Support soon: Provides a foundation for developing and integrating custom plugins.

๐ŸŒ Networking

  • Packet Compression: Reduces bandwidth usage by compressing data packets.
  • Server Status & Ping: Provides real-time server status information and latency measurements.

๐Ÿงฉ Supported and WIP Features

  • Login
    • Authentication (online mdoe)
    • Encryption
    • Packet Compression
  • Server Configuration
    • Server Links
    • Registries
    • Resource Packs (multiple)
    • Server Brand
    • Cookies
  • Server
    • Lua Plugin API
    • Query
    • RCON
    • Commands
    • Chat
    • Translations
  • World
    • World Joining
    • Chunk Loading
    • Tablist
    • Entity Spawning
    • World Loading
    • Chunk Generation
    • World Border
    • World Time
    • Bossbar
    • Weather
    • Scoreboard
    • World Saving
  • Player
    • Player Skins
    • Client brand
    • Movement
    • Inventory
    • Equipment
    • Item Pickup
    • Combat
  • Entities
    • Players
    • Mobs (Animals, Monsters)
    • Entity AI
    • Boss
    • Minecart
    • Lightning Bolt
  • Physics
    • Item Physics
    • Falling Blocks

๐ŸŒ Use Pre-Generated World

Just put the world folder of your Vanilla Minecraft world in the Directory where the server executable is and it will be loaded when the server starts.

โš ๏ธ Important Notes

  • Linux Compatibility: The Linux version has not been thoroughly tested. You may encounter issues when running MCpp Server on Linux systems. To still be able to join the server, you should turn off online mode in the config.json file.
  • Ongoing Development: MCpp Server is actively being developed. Contributions and feedback are welcome to help improve the server.

๐Ÿ› ๏ธ Installation & Building

๐Ÿ“‹ Prerequisites

  • C++20 Compiler: Ensure you have a modern C++ compiler installed (e.g., GCC, Clang). On Windows you need MingW.
  • CMake: Version 3.14 or higher.
  • Git: To clone the repository.

๐Ÿ”ง Build Instructions

Linux:
  1. Clone the Repository

    git clone https://github.com/Noeli14/MCppServer.git
    cd MCppServer
    
  2. Create a Build Directory

    mkdir build
    cd build
    
  3. Generate Build Files with CMake

    cmake ..
    

    For Debug Build:

    cmake -DCMAKE_BUILD_TYPE=Debug ..
    

    For Release Build:

    cmake -DCMAKE_BUILD_TYPE=Release ..
    
  4. Compile the Project

    make
    
Windows (MingW & Make):
  1. Clone the Repository

    git clone https://github.com/Noeli14/MCppServer.git
    cd MCppServer
    
  2. Create a Build Directory

    mkdir build
    cd build
    
  3. Generate Build Files with CMake

    cmake .. -G "Unix Makefiles"
    

    For Debug Build:

    cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug ..
    

    For Release Build:

    cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release ..
    
  4. Compile the Project

    make
    
Windows (MingW & Ninja):
  1. Clone the Repository

    git clone https://github.com/Noeli14/MCppServer.git
    cd MCppServer
    
  2. Create a Build Directory

    mkdir build
    cd build
    
  3. Generate Build Files with CMake

    cmake .. -G "Ninja"
    

    For Debug Build:

    cmake -G "Ninja" -DCMAKE_BUILD_TYPE=Debug ..
    

    For Release Build:

    cmake -G "Ninja" -DCMAKE_BUILD_TYPE=Release ..
    
  4. Compile the Project

    ninja
    

๐Ÿš€ Running the Server

After a successful build, execute the server binary:

./MCppServer

๐Ÿ“ฆ Data Sources

MCpp Server utilizes data from the PrismarineJS Minecraft Data repository to ensure accurate and up-to-date game mechanics and data.

๐Ÿค Contributing

Contributions are welcome! Whether it's reporting bugs, suggesting features, or submitting pull requests, your help is greatly appreciated.

๐Ÿ“„ License

MCpp Server is licensed under the MIT License.

๐Ÿ“ซ Contact

For any questions or support, feel free to open an issue or discussion on the GitHub repository

MCP Server ยท Populars

MCP Server ยท New

    PraneshASP

    Foundry MCP Server

    An experimental MCP Server for foundry built for Solidity devs

    Community PraneshASP
    karakeep-app

    Karakeep MCP Server

    A self-hostable bookmark-everything app (links, notes and images) with AI-based automatic tagging and full text search

    Community karakeep-app
    karakeep-app

    karakeep

    A self-hostable bookmark-everything app (links, notes and images) with AI-based automatic tagging and full text search

    Community karakeep-app
    prisma

    Prisma

    Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB

    Community prisma
    iannuttall

    Flux UI MCP Server

    MCP Server

    Community iannuttall