Merge remote-tracking branch 'upstream/main'
# Conflicts: # Minecraft.Client/Common/UI/UIScene_LoadOrJoinMenu.cpp # Minecraft.Client/Minecraft.Client.vcxproj # Minecraft.Client/Minecraft.Client.vcxproj.filters # Minecraft.Server/Minecraft.Server.vcxproj # Minecraft.World/Minecraft.World.vcxproj # Minecraft.World/Minecraft.World.vcxproj.filters # README.md
This commit is contained in:
commit
b58f7c8fdd
111 files changed
+8188
-73058
No files matched your search
@@ -47,8 +47,9 @@ The current goal of MinecraftConsoles is to be a multi-platform base for further
|
||||
See our our [Contributor's Guide](./CONTRIBUTING.md) for more information on the goals of this project.
|
||||
|
||||
## Download
|
||||
### Client
|
||||
Windows users can download our [Nightly Build](https://github.com/itsRevela/MinecraftConsoles/releases/tag/Nightly)! Simply download the `.zip` file and extract it to a folder where you'd like to keep the game. You can set your username in `username.txt` (you'll have to make this file)
|
||||
|
||||
### Server
|
||||
If you're looking for Dedicated Server software (with hardcore-mode functionality), download its [Nightly Build here](https://github.com/itsRevela/MinecraftConsoles/releases/tag/Nightly-Dedicated-Server). Similar instructions to the client more or less, though see further down in this README for more info on that.
|
||||
|
||||
## Platform Support
|
||||
@@ -61,6 +62,7 @@ If you're looking for Dedicated Server software (with hardcore-mode functionalit
|
||||
|
||||
## Features
|
||||
|
||||
- Dedicated Server Software (`Minecraft.Server.exe`)
|
||||
- Fixed compilation and execution in both Debug and Release mode on Windows using Visual Studio 2022
|
||||
- Added support for keyboard and mouse input
|
||||
- Added fullscreen mode support (toggle using F11)
|
||||
@@ -68,7 +70,6 @@ If you're looking for Dedicated Server software (with hardcore-mode functionalit
|
||||
- Added a high-resolution timer path on Windows for smoother high-FPS gameplay timing
|
||||
- Device's screen resolution will be used as the game resolution instead of using a fixed resolution (1920x1080)
|
||||
- LAN Multiplayer & Discovery
|
||||
- Dedicated Server Software (`Minecraft.Server.exe`)
|
||||
- Added persistent username system via `username.txt`
|
||||
- Decoupled usernames and UIDs to allow username changes
|
||||
- Fixed various security issues present in the original codebase
|
||||
@@ -100,6 +101,10 @@ If you're looking for Dedicated Server software (with hardcore-mode functionalit
|
||||
- **Toggle Debug Console**: `F6`
|
||||
|
||||
|
||||
|
||||
## Contributors
|
||||
Would you like to contribute to this project? Please read our [Contributor's Guide](CONTRIBUTING.md) before doing so! This document includes our current goals, standards for inclusions, rules, and more.
|
||||
|
||||
## Client Launch Arguments
|
||||
|
||||
| Argument | Description |
|
||||
@@ -123,60 +128,8 @@ LAN multiplayer is available on the Windows build
|
||||
- Rename yourself without losing data by keeping your `uid.dat`
|
||||
- Split-screen players can join in, even in Multiplayer
|
||||
|
||||
Parts of this feature are based on code from [LCEMP](https://github.com/LCEMP/LCEMP) (thanks!)
|
||||
|
||||
# Dedicated Server Software
|
||||
|
||||
|
||||
## Dedicated Server in Docker (Wine)
|
||||
|
||||
This repository includes a lightweight Docker setup for running the Windows dedicated server under Wine.
|
||||
### Quick Start (No Build, Recommended)
|
||||
|
||||
No local build is required. The container image is pulled from GHCR.
|
||||
|
||||
```bash
|
||||
./start-dedicated-server.sh
|
||||
```
|
||||
|
||||
`start-dedicated-server.sh` does the following:
|
||||
- uses `docker-compose.dedicated-server.ghcr.yml`
|
||||
- pulls latest image, then starts the container
|
||||
|
||||
If you want to skip pulling and just start:
|
||||
|
||||
```bash
|
||||
./start-dedicated-server.sh --no-pull
|
||||
```
|
||||
|
||||
Equivalent manual command:
|
||||
|
||||
```bash
|
||||
docker compose -f docker-compose.dedicated-server.ghcr.yml up -d
|
||||
```
|
||||
|
||||
### Local Build Mode (Optional)
|
||||
|
||||
Use this only when you want to run your own locally built `Minecraft.Server` binary in Docker.
|
||||
**A local build of `Minecraft.Server` is required for this mode.**
|
||||
|
||||
```bash
|
||||
docker compose -f docker-compose.dedicated-server.yml up -d --build
|
||||
```
|
||||
|
||||
Useful environment variables:
|
||||
- `XVFB_DISPLAY` (default: `:99`)
|
||||
- `XVFB_SCREEN` (default: `64x64x16`, tiny virtual display used by Wine)
|
||||
|
||||
Fixed server runtime behavior in container:
|
||||
- executable path: `/srv/mc/Minecraft.Server.exe`
|
||||
- bind IP: `0.0.0.0`
|
||||
- server port: `25565`
|
||||
|
||||
Persistent files are bind-mounted to host:
|
||||
- `./server-data/server.properties` -> `/srv/mc/server.properties`
|
||||
- `./server-data/GameHDD` -> `/srv/mc/Windows64/GameHDD`
|
||||
|
||||
## About `server.properties`
|
||||
|
||||
`Minecraft.Server` reads `server.properties` from the executable working directory (Docker image: `/srv/mc/server.properties`).
|
||||
@@ -236,26 +189,72 @@ Minecraft.Server.exe -name MyServer -port 25565 -ip 0.0.0.0 -maxplayers 8 -logle
|
||||
Minecraft.Server.exe -seed 123456789
|
||||
```
|
||||
|
||||
## Dedicated Server in Docker (Wine)
|
||||
|
||||
This repository includes a lightweight Docker setup for running the Windows dedicated server under Wine.
|
||||
### Quick Start (No Build, Recommended)
|
||||
|
||||
No local build is required. The container image is pulled from GHCR.
|
||||
|
||||
```bash
|
||||
./start-dedicated-server.sh
|
||||
```
|
||||
|
||||
`start-dedicated-server.sh` does the following:
|
||||
- uses `docker-compose.dedicated-server.ghcr.yml`
|
||||
- pulls latest image, then starts the container
|
||||
|
||||
If you want to skip pulling and just start:
|
||||
|
||||
```bash
|
||||
./start-dedicated-server.sh --no-pull
|
||||
```
|
||||
|
||||
Equivalent manual command:
|
||||
|
||||
```bash
|
||||
docker compose -f docker-compose.dedicated-server.ghcr.yml up -d
|
||||
```
|
||||
|
||||
### Local Build Mode (Optional)
|
||||
|
||||
Use this only when you want to run your own locally built `Minecraft.Server` binary in Docker.
|
||||
**A local build of `Minecraft.Server` is required for this mode.**
|
||||
|
||||
```bash
|
||||
docker compose -f docker-compose.dedicated-server.yml up -d --build
|
||||
```
|
||||
|
||||
Useful environment variables:
|
||||
- `XVFB_DISPLAY` (default: `:99`)
|
||||
- `XVFB_SCREEN` (default: `64x64x16`, tiny virtual display used by Wine)
|
||||
|
||||
Fixed server runtime behavior in container:
|
||||
- executable path: `/srv/mc/Minecraft.Server.exe`
|
||||
- bind IP: `0.0.0.0`
|
||||
- server port: `25565`
|
||||
|
||||
Persistent files are bind-mounted to host:
|
||||
- `./server-data/server.properties` -> `/srv/mc/server.properties`
|
||||
- `./server-data/GameHDD` -> `/srv/mc/Windows64/GameHDD`
|
||||
|
||||
|
||||
## Build & Run
|
||||
|
||||
1. Install [Visual Studio 2022](https://aka.ms/vs/17/release/vs_community.exe).
|
||||
1. Install [Visual Studio 2022](https://aka.ms/vs/17/release/vs_community.exe) or [newer](https://visualstudio.microsoft.com/downloads/).
|
||||
2. Clone the repository.
|
||||
3. Open the project by double-clicking `MinecraftConsoles.sln`.
|
||||
4. Make sure `Minecraft.Client` is set as the Startup Project.
|
||||
5. Set the build configuration to **Debug** (Release is also ok but missing some debug features) and the target platform to **Windows64**, then build and run.
|
||||
3. Open the project folder from Visual Studio.
|
||||
4. Set the build configuration to **Windows64 - Debug** (Release is also ok but missing some debug features), then build and run.
|
||||
|
||||
### CMake (Windows x64)
|
||||
|
||||
```powershell
|
||||
cmake -S . -B build -G "Visual Studio 17 2022" -A x64
|
||||
cmake --build build --config Debug --target MinecraftClient
|
||||
cmake --preset windows64
|
||||
cmake --build --preset windows64-debug --target Minecraft.Client
|
||||
```
|
||||
|
||||
For more information, see [COMPILE.md](COMPILE.md).
|
||||
|
||||
## Contributors
|
||||
Would you like to contribute to this project? Please read our [Contributor's Guide](CONTRIBUTING.md) before doing so! This document includes our current goals, standards for inclusions, rules, and more.
|
||||
|
||||
## Star History
|
||||
|
||||
[](https://www.star-history.com/?spm=a2c6h.12873639.article-detail.7.7b9d7fabjNxTRk#smartcmd/MinecraftConsoles&type=date&legend=top-left)
|
||||
Reference in new issue
Block a user