This project was created for multiple reasons:
- further my knowledge in C programming (this is my first C project)
- maximize performance for a great server and client experience
- give server owners (even more) control over their servers, instead of third-parties ;)
This is a standalone server. Some features may be limited in functionality, and some features will be expanded in the future.
- Maintainable server experience
- Logging
- Authentication / SSL / HTTPS / Secure connection
- Encryption
- Gameplay features
- Advancements
- Implementation
- Advancements' logic
- Boss Bars
- Commands
- Game Rules
- Implementatino
- Game Rules' logic
- Gamemodes
- Implementation
- Gamemodes' logic
- Materials
- Particles
- Implementation
- Permissions
- Scoreboards
- Implementation
- Scoreboard logic
- Sounds
- Implementation
- Statistics
- Implementation
- Statistics' logic
- Advancements
- Crafting
- Crafting logic
- Crafting Recipes
- Implementation
- Crafting Recipe logic
- Enchanting
- Enchantment Types
- Enchantments
- Implementation
- Enchantments' logic
- Entities
- Implementation
- Boundaries / Collision
- Implementation
- Collision logic
- Loot Tables
- Passengers / ridable
- Implementation
- Passengers' logic
- Pathfinding
- Events
- Hack detection
- Anti X-ray
- Speed / Velocity discrepancies
- Inventories
- Implementation
- Inventory Types
- Implementation
- Inventory Type logic
- Inventory logic
- Items
- Implementation
- Attack Cooldown
- Durability
- ItemMeta
- Stored Enchants
- Eatable
- Throwable
- NBT
- JSON
- Loot / treasure
- Plugins / Mods
- Implementation
- Enable / disable logic
- Potion Effects
- Implementation
- Potion Effect Types
- Potion Effects' logic
- Physics
- Gravity
- Block Gravity
- Entity Gravity
- Fall damage
- Liquids
- Gravity
- Structures
- Implementation
- Structure Generation
- Tick handling
- Dynamic tick rate
- Worlds
- Implementation
- Border
- Implementation
- Border logic
- Difficulties
- Location
- Seed randomizer
- Terrain Generation / Noise
- View distance
- Weather
- Saves to file
- Biomes
- Implementation
- Temperature and Rainfall
- Biome Generation
- Structures Generation
- Chunks
- Implementation
- ChunkData
- Chunk Generation
- Saves to file
- Blocks
- Implementation
- Boundaries / Collision
- Implementation
- Collision logic
- Block Entities
- Block Resistance (to explosions)
- Block Spawners
- BlockFace
- Command Blocks
- Passthrough-able
- Portals
- Preferred materials (that break the block)
- Pushable blocks (pistons)
- Redstone
- Communication with Client
- Gluon Client
- Minecraft Client
I'm just one dude. PRs are welcome, and need to adhere to the coding style defined in X.txt
.
This server is to mimic the vanilla Minecraft experience in all aspects, supporting all versions and the same world generation. The only logic added that doesn't adhere to vanilla Minecraft should be performance and memory improvements OR third-party additions.
There isn't a way to financially support this project at this time.
- a C JSON library (still researching a worthy implementation | may need to create a custom one)
- Other language contenders
- Python
- C++
- Other language contenders
- open terminal
- clone repo
- run
cd gluon-server
- run
bash _compile.sh
- run
bash _start.sh