Commit graph

22 commits

Author SHA1 Message Date
kuwacom 48f0023d67 add: restore the basic anti-cheat implementation and add spawn protection
Added the following anti-cheat measures and add spawn protection to `server.properties`.
- instant break
- speed
- reach
2026-03-14 07:30:23 +09:00
sylvessa 64daf89695 add random seed generation 2026-03-11 11:08:20 -05:00
kuwacom 48557c6af9 update: add world size config to dedicated server properties 2026-03-11 20:38:25 +09:00
kuwacom 72a324c147 fix: include UI header (new update fix) 2026-03-11 19:32:24 +09:00
kuwacom cfa0a7de7f add: add Whitelist to Dedicated Server 2026-03-11 17:16:36 +09:00
kuwacom aa6692426d fix: replace shutdown flag with atomic variable for thread safety 2026-03-08 22:27:14 +09:00
kuwacom 2979755454 fix: fixed the save logic during server shutdown
Removed redundant repeated saves and eliminated the risks of async writes.
2026-03-08 20:01:23 +09:00
kuwacom 590241c5ef fix: fix stop command shutdown process
add dedicated server shutdown request handling
2026-03-08 18:23:29 +09:00
kuwacom 71fd1e3a62 add: significantly improved the dedicated server logging system
- add ServerLogManager to Minecraft.Server as the single entry point for dedicated-server log output
- forward CMinecraftApp logger output to the server logger when running with g_Win64DedicatedServer
- add named network logs for incoming, accepted, rejected, and disconnected connections
- cache connection metadata by smallId so player name and remote IP remain available for disconnect logs
- keep Minecraft.Client changes minimal by using lightweight hook points and handling log orchestration on the server side
2026-03-08 15:22:00 +09:00
kuwacom b535baa7c6 add: Dedicated Server BAN access manager with persistent player and IP bans
- add Access frontend that publishes thread-safe ban manager snapshots for dedicated server use
- add BanManager storage for banned-players.json and banned-ips.json with load/save/update flows
- add persistent player and IP ban checks during dedicated server connection handling
- add UTF-8 BOM-safe JSON parsing and shared file helpers backed by nlohmann/json
- add Unicode-safe ban file read/write and safer atomic replacement behavior on Windows
- add active-ban snapshot APIs and expiry-aware filtering for expires metadata
- add RAII-based dedicated access shutdown handling during server startup and teardown
2026-03-08 10:15:13 +09:00
kuwacom 35f81c6e4f update: converted Japanese comments to English 2026-03-07 20:12:17 +09:00
kuwacom fa09e28572 add: implement StringUtils for string manipulation and refactor usages
Unified the scattered utility functions.
2026-03-07 17:39:37 +09:00
kuwacom 965a859b40 add: add implementing interactive command line using linenoise
- Integrated linenoise library for line editing and completion in the server console.
- Updated ServerLogger to handle external writes safely during logging.
- Modified ServerMain to initialize and manage the ServerCli for command input.
- The implementation is separate from everything else, so it doesn't affect anything else.
- The command input section and execution section are separated into threads.
2026-03-07 16:48:58 +09:00
kuwacom 9e4052ece5 update: add LAN advertising configuration for server.properties
LAN-Discovery, which isn’t needed in server mode and could potentially be a security risk, has also been disabled(only server mode).
2026-03-07 11:51:38 +09:00
kuwacom 31bfb7e428 update: add basically all configuration options that are implemented in the classes to server.properties 2026-03-07 01:21:04 +09:00
kuwacom b8d62896dd fix: add initial save for newly created worlds in dedicated server
on the server side, I fixed the behavior introduced after commit aadb511, where newly created worlds are intentionally not saved to disk immediately.
2026-03-06 21:55:00 +09:00
kuwacom 392dfdad1f update: changed the virtual screen to 720p
Since the crash caused by the 720p `skinHud.swf` not being included in `MediaWindows64.arc` has been resolved, switching back to 720p to reduce resource usage.
2026-03-06 19:13:41 +09:00
kuwacom 7cb41782c1 fix: change virtual screen resolution to 1920x1080(HD)
Since 31881af56936aeef38ff322b975fd0 , `skinHud.swf` for 720 is not included in `MediaWindows64.arc`,
the app crashes unless the virtual screen is set to HD.
2026-03-05 10:00:19 +09:00
kuwacom 965676f495 update: update keyboard and mouse input initialization 1dc8a005ed 2026-03-05 09:38:18 +09:00
kuwacom 1d9dccb7bd update: implement enhanced logging functionality with configurable log levels 2026-03-05 07:43:37 +09:00
kuwacom 6d44e40b4e add: refactor world loader & add server properties
- Introduced ServerLogger for logging startup steps and world I/O operations.
- Implemented ServerProperties for loading and saving server configuration from `server.properties`.
- Added WorldManager to handle world loading and creation based on server properties.
- Updated ServerMain to integrate server properties loading and world management.
- Enhanced project files to include new source and header files for the server components.
2026-03-05 07:31:49 +09:00
kuwacom e4c8229e52 add: Dedicated Server implementation
- Introduced `ServerMain.cpp` for the dedicated server logic, handling command-line arguments, server initialization, and network management.
- Created `postbuild_server.ps1` script for post-build tasks, including copying necessary resources and DLLs for the dedicated server.
- Added `CopyServerAssets.cmake` to manage the copying of server assets during the build process, ensuring required files are available for the dedicated server.
- Defined project filters in `Minecraft.Server.vcxproj.filters` for better organization of server-related files.
2026-03-04 18:12:26 +09:00