Skip to content
Retour au Blog
CobolCraft Minecraft server showing generated terrain with placed blocks and player inventory interface

CobolCraft: Running a Minecraft Server in COBOL

ice
ice
@ice
Updated
32 vues
TL;DR:CobolCraft is a fully functional Minecraft server written in COBOL that supports Minecraft 1.21.4 with terrain generation, multiplayer, crafting, and inventory management. It's a proof that unconventional language choices can build real, playable systems.
GitHub · Minecraft community project

CobolCraft (meyfa/CobolCraft)

A Minecraft server written in COBOL

Star on GitHub ↗
⭐ 690 stars💻 COBOL📜 MIT

Ever wondered what it would take to build a Minecraft server from scratch in a 60-year-old programming language? CobolCraft does exactly that. It's a fully functional Minecraft server written in COBOL that supports Minecraft 1.21.4, and somehow, it actually works.

What's CobolCraft Anyway?

CobolCraft is what happens when someone decides to implement a Minecraft server not in Go, Rust, or Java, but in COBOL (Common Business Oriented Language). If that sounds absurd, it kind of is. But it's also genuinely impressive.

This isn't a joke project either. CobolCraft implements real Minecraft server features: infinite terrain generation, multiplayer support with configurable player limits, persistent world and player data, crafting (both 2x2 and 3x3), item entities, chat, commands, fall damage, and respawning. You can connect with a standard Minecraft client and play legitimately.

The project has 690 GitHub stars and is licensed under MIT, meaning you can fork it, study it, or contribute. The maintainer clearly put serious work into this, and the fact that it runs at all speaks to both their skill and COBOL's surprising capability for complex systems.


Why Would Anyone Do This?

This is the question everyone asks. The honest answer: because they could. But there's more to it.

COBOL is often dismissed as a dinosaur language, but it's still running critical banking and government systems. It's verbose, yes, and its syntax feels alien to modern developers, but it's also incredibly stable and battle-tested. CobolCraft is a proof of concept that COBOL can handle non-trivial software challenges, even in 2026. It's a middle finger to the "COBOL is dead" crowd.

For most players? This isn't a replacement for your go-to multiplayer server. It's a educational curiosity, a technical achievement, and a fascinating exploration of what's possible when you ignore conventional wisdom and just build something weird.


Getting CobolCraft Running

If you want to try it, you've got two paths: native Linux or Docker.

Linux Setup

CobolCraft targets Linux on x86_64 or arm64 architectures. You'll need:

  • GnuCOBOL 3.1.2 or later (3.2+ is recommended for performance)
  • make, gcc, g++, and zlib development headers
  • curl (to download the official Minecraft server jar)
  • Java 21 or later (to extract game data from the jar)

On Debian or Ubuntu, most of this is straightforward:

bash
sudo apt-get install gnucobol make gcc g++ zlib1g-dev curl default-jre-headless

Then clone the repository and build it:

bash
git clone https://github.com/meyfa/CobolCraft.git
cd CobolCraft
make - jobs=$(nproc)
make run

The build process downloads the official Minecraft server jar, extracts block and recipe data, and compiles everything. First run creates a `server.properties` file with defaults. The server listens on localhost:25565 by default, which means you can only connect from your own machine. To make it accessible from outside (on your network, via VPN, or from a rented server), you'll need to edit the properties or adjust your network setup.

Docker Route

Prefer containers? Pull the pre-built image:

bash
docker pull meyfa/cobolcraft:latest

docker run - rm - interactive - tty \ - publish 25565:25565 \ - volume "$(pwd)/server.properties:/app/server.properties" \ - volume "$(pwd)/whitelist.json:/app/whitelist.json" \ - volume "$(pwd)/world:/app/world" \
 meyfa/cobolcraft

This is cleaner if you don't want to install GnuCOBOL and all its dependencies locally. The volumes let you persist configuration and world data between container runs.


Configuration and Features That Work

CobolCraft's `server.properties` file handles the basics. You can set the server port, world name, max players (up to 100), message of the day, and enable a whitelist if you want to restrict who joins.

On the gameplay side, here's what's solid: terrain generation and chunk loading actually work. You can mine blocks, place blocks, break blocks, and they all use Minecraft's real loot tables. Crafting works in both the 2x2 inventory grid and the 3x3 crafting table. You can chat, run commands, pick up items, store them in your inventory, and interact with certain blocks like doors and trapdoors.

Some blocks are fully implemented: torches, slabs, stairs, rotated logs and pillars, buttons, doors, trapdoors, beds, and signs. More complex blocks with multiple states or special interactions aren't there yet. Redstone? Nope. Pistons? Not really. Some orientation-dependent blocks partially work, but don't expect full parity with vanilla Minecraft.

Physics is extremely basic. Falling damage and void damage work, and you'll respawn properly. But collision detection is simplistic, and you won't experience the kind of smooth movement mechanics you get from Java Edition. It's enough to play, but you'll notice the difference.

If you want to build something interesting, you can. If you're expecting to run a survival server for 50 people mining Netherite, you'll be disappointed. But for a small group building with basic blocks and exploring a generated world? Absolutely feasible.


Real Talk: The Limitations

CobolCraft works, but it's not Spigot or Paper. Blocks with complex behavior require mountains of specialized COBOL code. Many interactive features are missing. Performance on massive builds hasn't been tested at scale. The project is clear about what it supports and what it doesn't, which is refreshing honesty.

Also worth noting: this is built with GnuCOBOL, which compiles to C. That means it's dependent on GnuCOBOL's maturity and the underlying C compiler's performance. Version 3.2+ is recommended because earlier versions had performance issues. If you're running on an underpowered machine or planning to host 100 concurrent players, your mileage may vary.

The whitelist is persistent (stored in JSON), which is nice. Configuration is straightforward. But if you find a bug in the server logic, you're reading COBOL to fix it. That's not ideal unless you actually know COBOL, which most modern developers don't.


When You Might Use This

Genuinely? Probably not for serious gameplay. It's a novelty, but a well-executed one.

Where it shines: education. If you're teaching systems programming, language design, or distributed systems, CobolCraft is a perfect case study. It shows what's possible with unusual tool choices and demonstrates that language age doesn't equal inability. It's also great for anyone learning COBOL who wants a real-world project to study.

It's also just fun to say you've run a Minecraft server in COBOL. That's a conversation starter at any tech meetup.

If you're building a Minecraft hub or creative world with a small group and want something unusual to host, it could work. Just manage expectations. Stick to basic building blocks, keep player counts low, and avoid trying to recreate complex redstone contraptions. And before you invest time, maybe read through the project's GitHub Issues to see what's currently broken or planned.

For everything else, there's Paper, Spigot, or a cloud hosting provider running vanilla Java Edition.


Getting More Out of Your Server

Once you've got a CobolCraft server running and you're exploring your generated world, you might want to enhance your Minecraft experience elsewhere. The Minecraft Skin Creator on Minecraft.How lets you design custom player skins before you jump in. And if you're curious about specific blocks you're mining or placing, the Minecraft Block Search tool is a quick way to look up properties and crafting recipes.

These aren't CobolCraft-specific, but they're useful tools for any Minecraft player.

Bottom line: CobolCraft is a genuinely impressive technical achievement that proves COBOL isn't just a relic. It's not going to replace your favorite multiplayer server, but it's worth understanding as a proof of concept. And if you're bored with conventional Minecraft hosting options, it's a wild experiment to try.

Frequently Asked Questions

Can I actually play on a CobolCraft server like a normal Minecraft server?
Yes, CobolCraft is a fully functional Minecraft server that supports Minecraft 1.21.4. You connect with any standard Minecraft client, and core features like building, mining, crafting, inventory, and chat work. However, it doesn't support all block types or complex redstone features. It's best suited for small groups doing basic survival or creative building.
What does COBOL have to do with Minecraft, and why would anyone build a server in it?
COBOL is a 60-year-old business programming language often dismissed as obsolete. CobolCraft is a proof of concept showing COBOL can handle complex systems. It demonstrates that language age doesn't equal inability, making it valuable for education and challenging conventional wisdom about old technology.
Do I need to learn COBOL to run or maintain a CobolCraft server?
Not to run it, but yes to modify or debug it. Basic setup and configuration use standard config files. However, if you encounter bugs or want to add features, you'll need to read and write COBOL code. Most modern developers don't know COBOL, so this is a significant limitation for long-term customization.
What are the system requirements for running CobolCraft?
You need GnuCOBOL 3.1.2 or later (3.2+ recommended), make, gcc, g++, zlib, curl, and Java 21+. It runs on Linux x86_64 or arm64. Alternatively, use the Docker image if you don't want to install dependencies locally. Windows support hasn't been tested.
Is CobolCraft free and open source?
Yes. CobolCraft is released under the MIT license on GitHub (meyfa/CobolCraft) with 690 stars. You can use it, fork it, study it, or contribute. It's completely free and actively maintained.