diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 104 |
1 files changed, 57 insertions, 47 deletions
@@ -1,20 +1,24 @@ -# MinecraftConsoles + +# MinecraftConsoles (Legacy Console Edition) [](https://discord.gg/jrum7HhegA) - +This project is based on source code of Minecraft Legacy Console Edition v1.6.0560.0 (TU19) with some fixes and improvements applied. The current goal of MinecraftConsoles is to be a multi-platform base for further development, such as modding, backports, and anything else LCE. On top of that, we're working to make this a quality experience on Desktop with or without a controller while (long-term) retaining console support. -## Introduction - -This project contains the source code of Minecraft Legacy Console Edition v1.6.0560.0 (TU19) with some fixes and improvements applied. +See our our [Contributor's Guide](./CONTRIBUTING.md) for more information on the goals of this project. ## Download Windows users can download our [Nightly Build](https://github.com/smartcmd/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) +If you're looking for Dedicated Server software, download its [Nightly Build here](https://github.com/smartcmd/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 - **Windows**: Supported for building and running the project -- **macOS / Linux**: The Windows nightly build may run through Wine or CrossOver based on community reports, but this is unofficial and not currently tested by the maintainers +- **macOS / Linux**: The Windows nightly build will run through Wine or CrossOver based on community reports, but this is unofficial and not currently tested by the maintainers when pushing updates +- **Android**: The Windows nightly build does run but has stability / frametime pacing issues frequently reported +- **iOS**: No current support +- **All Consoles**: Console support remains in the code, but maintainers are not currently verifying console functionality / porting UI Changes to the console builds at this time. ## Features @@ -25,26 +29,43 @@ Windows users can download our [Nightly Build](https://github.com/smartcmd/Minec - 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 -- Added persistent username system via "username.txt" +- 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 +- Splitscreen Multiplayer support (connect to dedicated servers, etc) +- In-game server management (Add Server button, etc) -## Multiplayer -Basic LAN multiplayer is available on the Windows build +## Controls (Keyboard & Mouse) -- Hosting a multiplayer world automatically advertises it on the local network -- Other players on the same LAN can discover the session from the in-game Join Game menu -- Game connections use TCP port `25565` by default -- LAN discovery uses UDP port `25566` -- Add servers to your server list with the in-game Add Server button (temp) -- Rename yourself without losing data by keeping your `uid.dat` +- **Movement**: `W` `A` `S` `D` +- **Jump / Fly (Up)**: `Space` +- **Sneak / Fly (Down)**: `Shift` (Hold) +- **Sprint**: `Ctrl` (Hold) or Double-tap `W` +- **Inventory**: `E` +- **Chat**: `T` +- **Drop Item**: `Q` +- **Crafting**: `C` Use `Q` and `E` to move through tabs (cycles Left/Right) +- **Toggle View (FPS/TPS)**: `F5` +- **Fullscreen**: `F11` +- **Pause Menu**: `Esc` +- **Attack / Destroy**: `Left Click` +- **Use / Place**: `Right Click` +- **Select Item**: `Mouse Wheel` or keys `1` to `9` +- **Accept or Decline Tutorial hints**: `Enter` to accept and `B` to decline +- **Game Info (Player list and Host Options)**: `TAB` +- **Toggle HUD**: `F1` +- **Toggle Debug Info**: `F3` +- **Open Debug Overlay**: `F4` +- **Toggle Debug Console**: `F6` -Parts of this feature are based on code from [LCEMP](https://github.com/LCEMP/LCEMP) (thanks!) -### Launch Arguments +## Client Launch Arguments | Argument | Description | |--------------------|-----------------------------------------------------------------------------------------------------| -| `-name <username>` | Sets your in-game username. | +| `-name <username>` | Overrides your in-game username. | | `-fullscreen` | Launches the game in Fullscreen mode | Example: @@ -52,6 +73,22 @@ Example: Minecraft.Client.exe -name Steve -fullscreen ``` +## LAN Multiplayer +LAN multiplayer is available on the Windows build + +- Hosting a multiplayer world automatically advertises it on the local network +- Other players on the same LAN can discover the session from the in-game Join Game menu +- Game connections use TCP port `25565` by default +- LAN discovery uses UDP port `25566` +- Add servers to your server list with the in-game Add Server button (temp) +- 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. @@ -101,7 +138,7 @@ 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` +## About `server.properties` `Minecraft.Server` reads `server.properties` from the executable working directory (Docker image: `/srv/mc/server.properties`). If the file is missing or contains invalid values, defaults are auto-generated/normalized on startup. @@ -138,7 +175,7 @@ lan-advertise=false autosave-interval=60 ``` -### Dedicated Server launch arguments +## Dedicated Server launch arguments The server loads base settings from `server.properties`, then CLI arguments override those values. @@ -160,29 +197,6 @@ Minecraft.Server.exe -name MyServer -port 25565 -ip 0.0.0.0 -maxplayers 8 -logle Minecraft.Server.exe -seed 123456789 ``` -## Controls (Keyboard & Mouse) - -- **Movement**: `W` `A` `S` `D` -- **Jump / Fly (Up)**: `Space` -- **Sneak / Fly (Down)**: `Shift` (Hold) -- **Sprint**: `Ctrl` (Hold) or Double-tap `W` -- **Inventory**: `E` -- **Chat**: `T` -- **Drop Item**: `Q` -- **Crafting**: `C` Use `Q` and `E` to move through tabs (cycles Left/Right) -- **Toggle View (FPS/TPS)**: `F5` -- **Fullscreen**: `F11` -- **Pause Menu**: `Esc` -- **Attack / Destroy**: `Left Click` -- **Use / Place**: `Right Click` -- **Select Item**: `Mouse Wheel` or keys `1` to `9` -- **Accept or Decline Tutorial hints**: `Enter` to accept and `B` to decline -- **Game Info (Player list and Host Options)**: `TAB` -- **Toggle HUD**: `F1` -- **Toggle Debug Info**: `F3` -- **Open Debug Overlay**: `F4` -- **Toggle Debug Console**: `F6` - ## Build & Run 1. Install [Visual Studio 2022](https://aka.ms/vs/17/release/vs_community.exe). @@ -200,10 +214,6 @@ cmake --build build --config Debug --target MinecraftClient For more information, see [COMPILE.md](COMPILE.md). -## Known Issues - -- Native builds for platforms other than Windows have not been tested and are most likely non-functional. The Windows nightly build may still run on macOS and Linux through Wine or CrossOver, but that path is unofficial and not currently supported - ## 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. |
