Commit graph

1491 commits

Author SHA1 Message Date
itsRevela 71b1bf92b8 Revert "fix: tutorial world"
This reverts commit 222852c11b.
2026-04-08 13:00:44 -05:00
Lord_Cambion a204ec52f4 fix: poison setting life to 1hp 2026-04-08 17:28:13 +02:00
Lord_Cambion 5f71ac96ff fix: ore spawning nether 2026-04-08 15:49:51 +02:00
piebot 69ff1f7271 Merge pull request 'Fishing update: bug fixes + better parity' (#13) from BrainFart17/LegacyEvolved:main into main
Reviewed-on: https://codeberg.org/piebot/LegacyEvolved/pulls/13
2026-04-08 12:44:08 +02:00
piebot 1256671dbf Merge pull request 'Fix music system inconsistencies and add dimension-aware boss bar handling' (#15) from GeorgeV22/LegacyEvolved:main into main
Reviewed-on: https://codeberg.org/piebot/LegacyEvolved/pulls/15
2026-04-08 12:41:38 +02:00
neoapps-dev 6fb106984a fix(build-linux): fourkit installation 2026-04-08 13:36:01 +03:00
neoapps-dev 6b63a808bb fix(build-linux): fourkit installation 2026-04-08 13:32:02 +03:00
neoapps-dev 25595fba71 fix(build-linux): silly me 2026-04-08 13:21:06 +03:00
neoapps-dev 0ddac15fad fix: linux cross-compiling 2026-04-08 13:07:04 +03:00
neoapps-dev 9babdac928 fix: linux cross-compiling 2026-04-08 12:44:56 +03:00
neoapps-dev 222852c11b fix: tutorial world 2026-04-08 12:21:09 +03:00
neoapps-dev de0ea474b1 chore: ignore .xwin 2026-04-08 12:19:12 +03:00
neoapps-dev ed18e26e85 feat: script for building 2026-04-08 12:09:32 +03:00
ryleu d449a582e4 add linux clang instructions 2026-04-08 12:05:43 +03:00
ryleu 5eab358dde add support for linux clang cross compiles 2026-04-08 12:03:15 +03:00
neoapps-dev b2f00d16e6 feat: cancel join 2026-04-08 11:47:25 +03:00
irice7 d191bee468 Add cancel join
Adds the Cancel Join tooltip to the "Connecting to host"
progress bar
2026-04-08 11:47:01 +03:00
itsRevela 42a582fb9f feat: add FourKit plugin host with dual server build
Adds the FourKit .NET 10 plugin host as a second dedicated server
build flavour alongside the existing vanilla server. Both flavours
build from the same source tree, with FourKit gated by the
MINECRAFT_SERVER_FOURKIT_BUILD preprocessor define.

Build layout:

  Minecraft.Server         vanilla, no plugin support, no .NET dep
  Minecraft.Server.FourKit FourKit-enabled, ships with bundled
                           .NET 10 self-contained runtime in runtime/
                           and an empty plugins/ folder

Both produce a Minecraft.Server.exe in their own per-target output
dir. The variant identity lives in the directory name, not the
binary name, so either flavour can be shipped as a drop-in.

Native bridge (Minecraft.Server/FourKit*.{cpp,h}):

* FourKitRuntime: hosts CoreCLR via hostfxr's command-line init API
  (the runtime-config API does not support self-contained components)
* FourKitBridge: ~50 Fire* event entry points, with inline no-op
  stubs for the standalone build so gameplay code can call them
  unconditionally
* FourKitNatives: ~80 native callbacks the managed side invokes
  for player/world/inventory mutations
* FourKitMappers: type and enum mapping helpers

Managed plugin host (Minecraft.Server.FourKit/):

* Bukkit-style API: Player, World, Block, Inventory, Command,
  Listener, EventHandler attribute, ~54 event classes
* PluginLoader with per-plugin AssemblyLoadContext
* FourKitHost as the [UnmanagedCallersOnly] entry point table
* Runtime resolves plugins relative to the host process so they
  always live next to Minecraft.Server.exe regardless of where the
  managed assembly itself is loaded from

Engine hooks (Minecraft.Client/, Minecraft.World/):

* Player lifecycle (PreLogin, Login, Join, Quit, Kick, Move,
  Teleport, Portal, Death) wired into PendingConnection and
  PlayerConnection without disturbing the cipher handshake or
  identity-token security flow
* Inventory open/click/drop hooks across every container menu type
* Block place/break/grow/burn/spread/from-to hooks across the
  full tile family
* Bed enter/leave, sign change, entity damage/death, ender pearl
  teleport hooks

Regression fixes preserved while applying donor diffs:

* ServerPlayer::die() retains the LCE-Revelations hardcore branch
  (setGameMode(ADVENTURE) + banPlayerForHardcoreDeath) in both the
  FourKit and non-FourKit code paths
* ServerLevel::entityAdded() retains the sub-entity ID reassignment
  loop required by the client's handleAddMob offset, fixing Ender
  Dragon and Wither boss multi-part hit detection
* LivingEntity::travel() retains the raw Player* cast and the
  cached frictionTile, both Revelations perf wins that the donor
  silently reverted
* ServerLogger.cpp keeps the file-logging code donor stripped
* PlayerList.cpp end portal transition fix and UIScene_EndPoem
  bounds-check are intact

Build system:

* Top-level CMakeLists.txt adds the Minecraft.Server.FourKit
  subdirectory and pulls in the new shared cmake/ServerTarget.cmake
  helper
* Minecraft.Server/cmake/sources/Common.cmake is now location
  independent (uses CMAKE_CURRENT_LIST_DIR) so the source list
  can be consumed from either server target's CMakeLists.txt
* The seven FourKit*.cpp/h files live in their own
  _MINECRAFT_SERVER_COMMON_SERVER_FOURKIT variable so the
  standalone target omits them
* configure-time .NET 10 SDK check fails fast with a clear
  download link if the SDK is missing
* global.json pins the SDK to 10.0.100 with latestFeature
  rollforward

Sample plugin (samples/HelloPlugin/) demonstrates the loader and
the PlayerJoinEvent listener pattern.

CI:

* nightly.yml builds both server flavours, ships
  LCE-Revelations-Server-Win64.zip and
  LCE-Revelations-Server-Win64-FourKit.zip, attests both, and
  updates release notes for the dual-flavour layout
* pull-request.yml pulls in actions/setup-dotnet so the FourKit
  publish step works in PR validation
* All zip artifacts and the client zip are renamed from
  LCREWindows64 to LCE-Revelations-{Client,Server}-Win64

Documentation:

* COMPILE.md gets a VS 2022 quick start, .NET 10 prereq section,
  server flavours explanation, and a troubleshooting section
* docs/FOURKIT_PORT_RECON.md captures the file-by-file recon that
  drove the port
* docs/FOURKIT_PARITY.md is the canonical reference for which
  events FourKit fires

Docker:

* docker-compose.dedicated-server.yml MC_RUNTIME_DIR default points
  at the vanilla CMake output. The FourKit Docker image is
  intentionally NOT shipped yet because hosting .NET 10 self
  contained inside Wine has not been smoke-tested
2026-04-08 03:02:48 -05:00
itsRevela 5d56f5080f chore: rename LCRE branding to LCE-Revelations
Renames release artifacts, Docker image, container/service names,
and shell wrappers from the legacy LCRE prefix to LCE-Revelations.

* Banner asset: LCRE-banner.png to LCE-Revelations-banner.png
* Docker compose service and container: minecraft-lce-dedicated-server
  to lce-revelations-dedicated-server
* ghcr image: ghcr.io/itsrevela/minecraft-lce-dedicated-server to
  ghcr.io/lce-hub/lce-revelations-dedicated-server
* Dockerfile MC_RUNTIME_DIR default points at the CMake build output
  path now that the legacy x64/ MSBuild path is no longer produced
* README and helper shell scripts updated to match

Workflow rename for nightly.yml release notes is folded into the
FourKit commit because the FourKit CI changes overwhelm the diff.
2026-04-08 02:30:58 -05:00
Loki Rautio d0786f956d Update more references to old smartcmd repo 2026-04-07 20:29:32 -05:00
George V. 308c07a7fd fix: correct mode-based music selection using unified music types
Aligned with LCERenewed changes up to commit
5ec8a0e41ba8146aba450258d8620cd3cb0299e0 by 3UR after previously
porting an incorrect revision.
2026-04-08 03:34:54 +03:00
George V. ff96cd3687 feat: support separate boss health bars per dimension
Add dimension-aware tracking for boss mobs and update the boss health
GUI system to maintain independent state for each dimension (Overworld,
Nether, End). This prevents conflicts when multiple bosses exist across
different dimensions simultaneously.

- Add `getDimension()` to `BossMob` base class and implement in
  `EnderDragon` and `WitherBoss`
- Replace static boss GUI state with dimension-indexed storage
- Introduce `getIndexFromDimension()` helper for dimension mapping
- Update rendering logic to use per-dimension state
- Isolate darkening effects and health display per dimension

Ported from LCERenewed commit 5ec8a0e41ba8146aba450258d8620cd3cb0299e0 by 3UR
2026-04-08 03:34:54 +03:00
BrainFart17 3781794be3 (fishing) Fix bugs and change random catch type selection
- Implement catch type random selection from decompiled java 1.7.2 code instead of using a WeighedRandomItemArray
- Fix fishingTreasuresArray length being set to 5 instead of 6
- Remove testing values for nibbleTimer
- Cast maxDamage of item to double before applying damage.
- Add include for EnchantmentCategory in LureEnchantment.cpp and LuckOfTheSeaEnchantment.cpp.
- sky obstruction is now checked before other checks.
2026-04-07 16:04:52 -07:00
Loki 126943e06e
Add details about org change to README 2026-04-07 17:44:00 -05:00
Lord_Cambion aaae8b01a9 feat: Melon Feature
fix: polished stone variants spawning on top of certain biomes.
2026-04-08 00:11:07 +02:00
Loki 108e3dc233
Whitespace adjustment to test GitHub webhook 2026-04-07 15:52:48 -05:00
/home/neo 29ebc01ea9
feat: TU19 tutorial world (#1) 2026-04-07 22:42:22 +03:00
Loki 29edc4aff0
Link to new Discord 2026-04-07 14:31:30 -05:00
/home/neo 7149e696f2
docs: discord server link 2026-04-07 22:04:22 +03:00
Lord_Cambion 38775d0f26 fix: world crash with particular seeds 2026-04-07 20:45:44 +02:00
Revela 078e661b91
Update README to include Unity-LCE Discord server link
Removed Fluxer server link and added Discord badge.
2026-04-07 13:43:05 -05:00
Revela a07d791683
Update project name in README.md
temporary
2026-04-07 13:37:38 -05:00
itsRevela 77fbf36f54 chore: remove 'why this fork exists' section from release notes 2026-04-07 13:35:32 -05:00
piebot 013c18ef85 Merge remote-tracking branch 'origin/main' 2026-04-07 21:05:36 +03:00
piebot d39bc9ad99 refactor: change wheat seeds to seeds
also make inverted daylight sensor implementation more accurate
2026-04-07 21:03:09 +03:00
Lord_Cambion 720e1a77a4 feat: oceanMonument
feat: Mesa biomes
feat: changed world generation according to java
fix: swamp hut changed to spruce
2026-04-07 19:41:14 +02:00
BrainFart17 e17e26ff99 Fix bugs and improve fishing mechanics parity with TU 31
- Based fishing mechanics off of decompiled java 1.7.2 instead of 1.12.
- Added check for sky access
- Switching between different fishing rods now reels the line back in
- Fixed duplicate assignment in fishingTreasuresArray
- Remove testing weights from catchTypeArray
- Make lureLevel and luckLevel member variables of FishingHook that are calculated upon initialization instead of recalculating every tick.
- Changed random nibbleTimer range from 5 - 30 secs to 5 - 45 secs
- Fixed out of order and incorrect assignments of fishingJunkArray
- Values are now clamped to prevent unintended behavior
- Lure now affects loot rates.
2026-04-07 08:00:13 -07:00
piebot 17aff7edb3 [skip ci] add emerald logo 2026-04-07 15:26:17 +02:00
BrainFart17 f38bcf1d4e Merge branch 'main' of https://codeberg.org/piebot/LegacyEvolved
Get latest updates from upstream
2026-04-07 05:11:22 -07:00
piebot fbc7243d16 Merge pull request 'fix: handled all audio and parameter types correctly to prevent crashes' (#11) from GeorgeV22/LegacyEvolved:main into main
Reviewed-on: https://codeberg.org/piebot/LegacyEvolved/pulls/11
2026-04-07 11:54:27 +02:00
piebot 9a5eec7372 Merge pull request 'fix(ci): remove broken paths-ignore and add [skip ci] support' (#12) from georgev22-patch-1 into main
Reviewed-on: https://codeberg.org/piebot/LegacyEvolved/pulls/12
2026-04-07 11:54:15 +02:00
GeorgeV22 448a92cce5 fix(ci): remove broken paths-ignore and add [skip ci] support 2026-04-07 09:55:14 +02:00
George V. 76ac11bde0 fix: handled all audio and parameter types correctly to prevent crashes
Original commit: 8658049e71
2026-04-07 09:30:16 +02:00
BrainFart17 07ec2e93ee Merge branch 'main' of https://codeberg.org/piebot/LegacyEvolved 2026-04-06 16:43:31 -07:00
BrainFart17 af22ca5e7a Update fishing mechanics for better parity with TU 31 2026-04-06 16:39:09 -07:00
Lord_Cambion 459bc20a77 dlcfix 2026-04-07 00:45:52 +02:00
rucheykov b928351e0b
Update Windows64_Minecraft.cpp (#1468) 2026-04-06 12:34:25 -05:00
Sylvessa 413baaceed
fix: reorder autosave tick to account for weak hardware (#1482) 2026-04-06 12:34:02 -05:00
Fireblade 98a86fc69b
feat. set intro scene background to white (#1474) 2026-04-06 12:33:45 -05:00
piebot fb5cd3abfe Merge pull request 'fix(fishing): fix catch type return and correct aux value calculations' (#10) from GeorgeV22/LegacyEvolved:main into main
Reviewed-on: https://codeberg.org/piebot/LegacyEvolved/pulls/10
2026-04-06 15:43:38 +02:00