Repository navigation
Releases: CurseStoneTeam/CurseStone
Releases · CurseStoneTeam/CurseStone
Release list
v1.0.2-beta
CurseStone v1.0.2 Beta Release
Changes since Beta v1.0.1.5.
Added
- Nether portals and dimension travel between the Overworld and Nether, including portal activation, persistent portal linking, coordinate conversion, and dimension switching.
- Multiworld support with world loading, unloading, lookup, independent ticking, autosaving, and shutdown saving.
- Nether terrain generation with bedrock boundaries, glowstone clusters, and fire placement.
- Vanilla beds with two-part placement, sleeping animations, player synchronization, bed-based spawn points, and nighttime skipping when all players in a world are asleep.
- Hunger and food systems with saturation, exhaustion, regeneration, starvation, and persistent player data.
- New foods: baked potato, beetroot, beetroot soup, raw and cooked fish, raw and cooked mutton, raw and cooked rabbit, rabbit stew, cookie, pumpkin pie, golden carrot, enchanted golden apple, rotten flesh, and spider eye.
- Drinkable potions, throwable splash potions, projectile collisions, shatter effects, and area-based effect application.
- 23 status effects: Speed, Slowness, Haste, Mining Fatigue, Strength, Instant Health, Instant Damage, Jump Boost, Nausea, Regeneration, Resistance, Fire Resistance, Water Breathing, Invisibility, Blindness, Night Vision, Hunger, Weakness, Poison, Wither, Health Boost, Absorption, and Saturation.
- Milk buckets that remove active status effects and leave an empty bucket.
- Bow drawing, release handling, arrow flight, projectile collisions, pickup, and despawning.
- Falling-block physics for sand, gravel, and anvils, including landing behavior and block restoration.
- Custom item names and NBT preservation across inventories, equipment, containers, and dropped-item entities.
- Expanded Lua plugin API with world management, player manipulation, plugin resource access, and additional player, entity, bed, door, and interaction events.
- Lua command overrides with automatic restoration of built-in commands when plugins unload.
- Lua plugin execution limits, per-call time limits, and automatic disabling after consecutive errors.
- Added
/kill <player>and the operator-only/statuscommand with TPS, memory, uptime, player count, plugin count, and world diagnostics. - First-run setup wizard for server settings, world configuration, and game defaults.
- Embedded default configuration templates in the executable.
- Added
start.shfor Linux and Termux andstart.batfor Windows, with automatic restarts after unexpected exits. - Windows x86-64 build support and platform-specific release archives.
- Doxygen documentation generation and automated publishing.
- Development guidelines, code-formatting rules, and project documentation.
Changed
- Separated basic configuration in
server.propertiesfrom advanced configuration incursestone.yml. - Moved plugin data storage to the server-root
data_pl/directory. - Standardized the server and plugin API version through
CURSESTONE_API, set to1.0.2. - Improved player damage handling for creative mode, environmental damage, armor, resistance, strength, weakness, and absorption.
- Improved multiplayer synchronization for health, hunger, food consumption, equipment, item use, bows, arrows, knockback, death, respawning, and item pickup.
- Improved door sounds, bed synchronization, and nighttime handling.
- Improved player NBT persistence for health, hunger, saturation, exhaustion, active effects, and bed spawn positions.
- Optimized incremental chunk autosaving with a shared per-tick budget across loaded worlds.
- Added UTF-16 support and improved normalization when reading
ops.txt. - Improved item-stack validation and maximum stack-size enforcement.
- Improved Windows portability through MSVC compatibility fixes, POSIX shims, threading support, and static zlib and LevelDB linking.
- Standardized source formatting and comments, reorganized source files, and removed obsolete empty source stubs and outdated test utilities.
Fixed
- Fixed Nether portal frame detection, ignition, metadata, portal linking, and dimension travel.
- Fixed beds and doors becoming ghost blocks or failing to synchronize correctly.
- Fixed bed sleeping animations and sleep data not being delivered correctly to the local player.
- Fixed chunk streaming issues that prevented the full view distance from loading correctly.
- Fixed login and spawn packet ordering to improve initial chunk delivery.
- Fixed falling blocks using an incorrect network entity ID that prevented proper client rendering.
- Fixed fire interactions, environmental damage, and fall-damage handling.
- Fixed splash potion rendering, shatter effects, and status-effect delivery on MCPE 0.15.10.
- Fixed food consumption, milk usage, health updates, and hunger synchronization in multiplayer.
- Fixed bow animations, arrow spawning, projectile movement, and release behavior in multiplayer.
- Fixed dropped items remaining visible after pickup and improved item synchronization between players.
- Fixed inventory duplication, invalid stack sizes, and merging of items with different NBT data.
- Fixed custom item names and NBT data being lost during inventory, container, equipment, and death-drop operations.
- Fixed player death and respawn handling.
- Fixed chest block-event packet handling.
- Fixed plugin event bindings and message handling.
- Fixed operator-list parsing on Android, including UTF-16 files and inconsistent entry formatting.
- Fixed Windows compilation and release packaging issues involving MSVC, POSIX compatibility,
ssize_t, math constants, logger threading, and artifact paths. - Fixed startup configuration defaults and behavior when configuration files are missing.
Notes
- Compared against Beta v1.0.1.5.
- Target client: Minecraft: Pocket Edition 0.15.x.
- Network protocol: 84.
- The project remains server software and does not implement every vanilla Minecraft mechanic.
- Some features may require additional in-game testing to verify complete client compatibility.
beta-v1.0.1.7
CurseStone beta v1.0.1.7 Windows binaries are now fully self-contained — no more "z.dll not found" errors. ### Added - Falling block physics (sand/gravel style entities). - Platform-specific startup scripts (start.bat / start.sh) bundled with the binaries. ### Fixed - Windows builds no longer require zlib1.dll: zlib and LevelDB are now linked statically into CurseStone.exe, so the executable runs on any clean Windows machine. - Bow mechanics: arrow motion is now synced and drawing while aiming at a block works. - Bed sleeping: full rework — sleeping UI, night sleeping mechanics, sleep data sent to self using runtime ID, ghost bed/door states, and block resync after use. - Door sounds and Lua interaction events. - Bed sleeping UI metadata encoding for protocol 84. - Custom item NBT persistence. ### Changed - Async chunk autosaving is faster and no longer stalls the main thread. - Server configuration is now split into server.properties and cursestone.yml with fixed embedded defaults; data_pl moved to the repo root. ### CI - Release binaries are packaged into per-platform ZIPs (linux-x86_64, android-arm64, windows-x86_64). - Windows CI builds zlib/LevelDB statically (x64-windows-static-md). --- Downloads: extract the ZIP for your platform and run start.bat (Windows) or start.sh (Linux/Android). The Windows executable is standalone — no extra DLLs needed.
CurseStone-beta-v1.0.1.6
Released binaries for windows,minor fixes and additions
CurseStone-beta-v1.0.1.5
Fix: Crash that it couldn't be applied to release 1.0.1, I forgot lol
CurseStone-beta-v1.0.1
Changelog ## v1.0.1 ### Added - Lua 5.4 plugin system (manifest, Lua runtime and bindings, built-in YAML and JSON parsers). Lua is bundled and compiled into the binary. - /plugins command. - Plugin API version constant (1.0.1). - Permission nodes for commands, checked before a command runs. - Dynamic /help built from the real command registry, paginated and filtered by permission. - Ops get the cursestone.* permissions by default. - New biomes: Beach, Ice Plains, Jungle, Savanna, Swamp, Taiga, Plains Plateau. - Vanilla-style noise, cave carver and lake generator. - New tree types: oak, big oak, birch, spruce, dark oak, acacia, jungle, big jungle, swamp. - Villages and desert temples. - Hunger and environmental damage (fall, lava, fire, cactus, drowning, starvation) through EntityDamageEvent. - Health and hunger sync to the client. - Sneak and sprint poses shown to other players. - Respawn action and default skin for clients that send none. - Torches and lava emit light. - Furnace lit and unlit block states. - Chests keep their contents between close and reopen. - Block entities for chests and furnaces that come with generated structures (TileFactory). - ItemNbt: shared item to NBT conversion. - Physics engine with swept AABB movement and ray tracing (HitResult). - Diagnostics recorder with richer crash dumps and error reports. - Packet handler errors write a diagnostics report and kick the player with the error. - build_local.sh to build without CMake. - 38 standalone checks and benchmarks in tools/. - License header on all source files. ### Changed - Renamed Level to World across the code (src/level to src/world, Level to World, level events to world events). - Config keys renamed: level-name, level-seed, level-format are now world-name, world-seed, world-format. The level: section in cursestone.yml is now world:. The old names are no longer read. - main.cpp and main.h renamed to CurseStone.cpp and CurseStone.h. - Software version and plugin API version set to 1.0.1. - Player.cpp split into modules under src/player/. - Crafting recipes and creative items are now registered in code instead of loaded from JSON. - Server tick now sleeps to a fixed schedule instead of a fixed delay per tick. - Nether generation uses the new noise implementation. - Default RakNet MTU lowered to 1400. - Chunk streaming limited per tick. - README.md and CONTRIBUTING.md rewritten. ### Fixed - RakNet: reliable messages could be delivered twice on lossy connections. - RakNet: clients that reuse a reliable message index no longer lose their handshake and login. - RakNet: Open Connection Request 2 accepts both address layouts. - RakNet: refused handshake packets are now logged. - RakNet: one stalled client no longer drops other players (in-flight limit, global retransmit budget, retransmit backoff, server keepalive). - RakNet: AFK players are no longer kicked by the timeout. - RakNet: larger UDP socket buffers to avoid false timeouts. - LoginPacket parsing failure on Linux builds. - TakeItemEntityPacket wrote its packet ID twice. - UpdateBlockPacket packs block data and flags into one byte. - PlayerListPacket sends skin ID and skin data. - PlayerActionPacket sprint toggle IDs. - Crash when a sign had blank lines (empty NBT strings returned null). - Out-of-bounds write when setting sign lines. - Autosave freeze of 500 to 760 ms on the main thread. ### Removed - resources/recipes.json, resources/creativeitems.json, resources/biome_definitions.json. - src/level/ (moved to src/world/). - SimplexNoise. - main.cpp and main.h. - Hard-coded command table in /help.
CurseStone-Obsidian-Alpha-v1.0.0
Primera release beta alpha del software, Aun no se puede usar para produccion