A Minecraft client implementation made with Unity.
CornCraft is a Unity version of Minecraft. It connects to vanilla servers(version 1.16.2 to 1.20.1) and provides basic graphical, vanilla-like gameplay support. It is based on another open source project, Minecraft Console Client (MCC), and makes heavy use of its cross-version Minecraft protocol implementation.
However, unlike MCC itself which runs on modern .NET, CornCraft is a Unity app/game and runs on Mono/IL2CPP backend, so a large part of the code from MCC has been refactored or rewritten to adapt to Unity's environment.
Important! It is NOT recommended to join a public/commercial server with CornCraft, and CornCraft is NOT responsible for server banning due to using this client! The best and safest way to play with this client, at least for now, is to set up a server by yourself or with your friends.
The code CornCraft uses to parse vanilla resource packs is open source as a separate project called CornModel. Check it out if you want to make a Minecraft structure viewer, map editor or something like that with Unity.
This project makes use of Git LFS to store some of the resource files, so make sure you have it installed before cloning the repository. Either regular git clone ...
or git lfs clone ...
should work fine.
Recommended server versions for CornCraft are 1.16.5
, 1.17.1
, 1.18.2
and 1.19.2
, both vanilla servers and plugin servers like Spigot are supported.
When setting up a server for CornCraft, it is recommended to set the allow-flight
option to true
in server.properties
file, otherwise it's likely you'll be kicked from the server when moving around(because CornCraft does not and likely will not simulate vanilla player physics, it uses Unity's physics system).
For 1.19.1
or higher servers, it is also necessary to set enforce-secure-profile
to false
so that CornCraft can log in correctly.
The project is made and tested with Unity 2022.3.9f1, so it is recommended to use this version(or newer) of Unity to build this game.
Resource files will now be automatically downloaded if they're not present, so manual downloading is no longer necessary.
Most basic controls in CornCraft are similar to vanilla Java Edition. They're hard-coded for now, but will be configurable in the future. Here's a list of currently supported actions:
Key | Action |
---|---|
W / A / S / D | Move(/Fly) Horizontally |
Space | Move(/Fly) Up |
Left Shift | Move(/Fly) Down |
Left Ctrl | Toggle Walk/Rush Mode |
F3 | Toggle Debug Info |
F3 + F4 | Show Game Mode Switch |
F5 | Toggle First/Third Person Perspective |
F11 | Toggle Fullscreen |
T / / | Show Chat Screen |
Esc | Pause Game |
Like MCC, CornCraft adopts CDDL-1.0 as the license of its code repository, and this license applies to all source code except those mention their author and license or with specific license attached.
Some other open-source projects/code examples are used in the project, which don't fall under CDDL-1.0 and use their own licenses. Here's a list of them:
More information about CDDL-1.0 can be found on MCC's home page, in the license section, and the full license can be reviewed here.