131 lines
4.9 KiB
Markdown
131 lines
4.9 KiB
Markdown
# Zote Core — Inner Core Loader
|
|
|
|
[:ru: Русский](README-RU.md)
|
|
|
|
__Zote Core__ — server core based on Inner Core for Minecraft: Bedrock Edition 1.16.201 to facilitate unique gameplay with mods, often associated with creating customized modded servers.
|
|
|
|
The server core is based on [Nukkit-MOT](https://github.com/ZoteTeam/Nukkit-MOT), it can be easily updated by replacing the corresponding library.
|
|
|
|

|
|
|
|
## Installation
|
|
|
|
Any platform supporting Java 17 is supported. Download the latest release of the server core, or build a repository using Gradle.
|
|
|
|
Run the assembled kernel by opening the console in the folder with it:
|
|
|
|
```sh
|
|
java -jar ZoteCore-SNAPSHOT.jar -XX:MaxRAMPercentage=95.0
|
|
```
|
|
|
|
## Configuration
|
|
|
|
The settings are made using two main files: *server.properties* and *zotecore.yml*. They will be created automatically immediately after the kernel is launched, the documentation for the first one is available in the Nukkit-MOT repository.
|
|
|
|
Some settings of Nukkit are blocked by the loader, including *multiversion-min/max-protocol* (422), *xbox-auth* (authorization using it is not available) and *save-player-data-by-uuid* (false).
|
|
|
|
To make client sockets fall off without crashing the server, disable Watchdog. In the current implementation, alternative fix options are not available, the necessary setting is `thread-watchdog=on'.
|
|
|
|
### zotecore.yml
|
|
|
|
Standard kernel settings that can be used as a basis:
|
|
|
|
```yml zotecore.yml
|
|
# Change resolution of pack that client should have to log into server.
|
|
# However, no deprecated or unimplemented methods will be added.
|
|
pack: Inner Core
|
|
pack-version: 2.4.0b122 or higher
|
|
pack-version-code: ">163"
|
|
|
|
# Sets the list of mods and configs to load, you can specify
|
|
# name, folder name of a modpack from /modpacks or a path.
|
|
modpack: innercore
|
|
|
|
# Use vanilla crafting table interface, instead of custom one.
|
|
# Attention: currently not recommended and recipes dislayed with bugs.
|
|
use-legacy-workbench-override: off
|
|
|
|
# Disabling inventory fix for connected clients, outdated versions do not
|
|
# work properly with it, not allowing moving items around inventory.
|
|
use-legacy-inventory: on
|
|
|
|
# Switches the debugging mode for unsupported methods (e.g., client-side).
|
|
# Might be one of: none, debug (default), warning, raise.
|
|
unsupported-method-handling: debug
|
|
|
|
# Can mods use unsafe features (e.g., calling eval) or not.
|
|
# Attention: can create a security risk, however, for example,
|
|
# using requireGlobal can often disrupt operation of mods.
|
|
allow-unsafe-scripting: on
|
|
|
|
# Developer mode allows you to receive additional information
|
|
# about engine operation, as well as profiling of methods.
|
|
developer-mode: off
|
|
|
|
# Time in seconds between auto-saving data of mods (any value above 20),
|
|
# as well as the world if it is included in another option.
|
|
auto-save-period: 60
|
|
|
|
# Whether to save worlds in addition to mod data.
|
|
auto-save-world: on
|
|
|
|
# Whether socket server enabled or not.
|
|
# Server socket requires an additional port, connection
|
|
# through server sockets is more unstable.
|
|
socket-server-enabled: off
|
|
|
|
# Server socket port, usually should be between 10000 and 24999.
|
|
# But keep in mind that the client uses port 2304 by default.
|
|
socket-port: 2304
|
|
|
|
# Sends form to players when ticking exception happens,
|
|
# contains only script stacktrace (without sensitive properties).
|
|
display-ticking-errors-to-players: true
|
|
|
|
# If ticking callback interrupts too often, server will be stopped;
|
|
# otherwise it will continue trying restart itself continiously.
|
|
stop-on-critical-ticking-error: true
|
|
|
|
# Maximum number of packets sent to the client
|
|
max-packet-sending: 200
|
|
|
|
# Additional updatable threads
|
|
threading_additional_thread_count: 0
|
|
|
|
# Override player UUID
|
|
override-player-uuid: on
|
|
|
|
# Additional information in the log
|
|
# debug-logger: on
|
|
# info-logger: on
|
|
|
|
# Enable detailed network debugging
|
|
# network-debug: off
|
|
|
|
# Allow unsupported/blocked Nukkit settings to be overridden
|
|
# allow-unsupported-options: off
|
|
```
|
|
|
|
## Console commands
|
|
|
|
+ custom_items — displays a list of custom items
|
|
+ custom_blocks — displays a list of custom blocks
|
|
+ mods — displays a list of modifications on the server
|
|
+ inner_core_network — displays a list of players connected to the protocol on the server
|
|
+ state [runtimeId] — outputs block statuses by the runtime ID
|
|
+ profilecallback [enabled] [showParameters] — debugging and profiling of callbacks
|
|
+ dimensions_list — displays a list of dimensions
|
|
+ tps — displays the load on the tick inner core
|
|
+ gen_chunks [dimension] [x1] [z1] [x2] [z2] — loads or generates chunks in specified area
|
|
+ get_all_players_id — gets name and runtime ID of all online players
|
|
|
|
> All commands are for operators and cannot be called by players.
|
|
|
|
## Technical information
|
|
|
|
| Key | Value |
|
|
|-------------------------|--------------------|
|
|
| Protocol version | 422 (1.16.200) |
|
|
| Rhino version | 1.7.14 (`5a917b5`) |
|
|
| Instant Referrer | `a264591` |
|