Commit Graph
523 Commits
Author SHA1 Message Date
Anaël 95111a621a performance: Apply culling to tile entities and throttle PathNavigation::updatePath to run every 8 ticks
Nightly Release / build (push) Canceled after 0s
Nightly Release / release (push) Canceled after 0s
Nightly Release / cleanup (push) Canceled after 0s
Sync branches with main / sync (push) Canceled after 0s
Cull tile entities and throttle mob pathfinding to every 8 ticks.
The players won't see the difference on the pathfinding and the culling improves the performance by a lot in zones with a lot of tile entities

in TileEntityRenderDispatcher.cpp:
Calculate if the tile entities are visible in the camera. Early return if they are so they don't get rendered while the players don't look at those tile entities so .
in PathNavigation.cpp:
Do a simple modulo operation on the current number of ticks to test if its been 8 ticks since last operation. UpdatePath(); doesn't get executed if elapsed time isn't enough
2026-10-04 21:02:32 +02:00
Anaël 1b691739e6 QOL: Add some java commands
Added many commands from Minecraft Java edition:

    setblock
    fill
    seed
    xp
    gamemode spectator
    summon
    effect
    difficulty
    spawnpoint
    setworldspawn
    kick
    enchant

All of the logic is contained inside of PlayerConnection.cpp along with the previous command handler, i also changed MobEffect.h to add a new helper for potion names -> ids.
And for spectator, a bunch of small changes inside server/client related file, along with the removal of the weird /spectator command which was added previously. I think it can still be refined because im not sure the invisibility thing is working.
2026-10-04 21:01:15 +02:00
Anaël d8d65bcd49 game loop: Refactor the tooltips loop
Moved the whole logic to a new file (TooltipManager.cpp), and rewrote most of the logic to profit from object oriented programming. The side-effect is that the changes are scattered across entities, tiles and items because moving everything to OOP requires to add the tooltip to every .cpp file for every tile/item/entities (or their class, on plants for example which all use the tooltip IDS_TOOLTIPS_PLANT)

The issue with the default tooltips loop written by 4J is that:

    Its running in the main Minecraft::tick loop and is more than a thousand lines long, polluting the function.
    Not using C++'s full potential with object oriented programming, 4J decided to use a big switch case (probably because it could run better on hardware without branch prediction like the WiiU or Xbox 360 ?)
    And seems to be better off in its own file than in the main Minecraft.cpp file
2026-10-04 20:54:24 +02:00
anael.rstandAnaël 706aa550d2 fix: prevent player from moving when sleeping (#4185)
# What changed ?
Added a simple check in Player::travel to prevent a player from moving when asleep

# Why ?
Pressing the sneak key while the player is asleep would cause the camera to leave the player's body and see the head moving while the body stayed still in the bed

---------

Co-authored-by: Anaël <60509176+Bakoubak@users.noreply.github.com>
Reviewed-on: https://git.neolegacy.dev/neoStudiosLCE/neoLegacy/pulls/4185
Co-authored-by: anael.rst <144+vistaslayer@noreply.neolegacy.dev>
Co-committed-by: anael.rst <144+vistaslayer@noreply.neolegacy.dev>
2026-10-04 20:48:17 +02:00
ACL a809e71d58 fix: Thrown eggs use snowball particles when hitting a block (#167)
Thrown eggs used snowball particles when hitting a block, there wasn't any code for the correct particles either.
I added the new egg particles and assigned them to the thrown egg entity.

Before:
![2026-08-07_20.09.22.png](/attachments/2d55ef32-3750-4825-b884-9a39a50e9bd8)

Now:
![2026-08-07_20.18.59.png](/attachments/d2b5571e-c121-44e2-a412-12d2a460f8d7)

Reviewed-on: https://git.neolegacy.dev/neoStudiosLCE/neoLegacy/pulls/167
Co-authored-by: ACL <puffymono@gmail.com>
Co-committed-by: ACL <puffymono@gmail.com>
2026-08-08 16:56:00 +01:00
Fireblade 3ff2f52105 chore: bump version 2026-08-02 19:59:27 -04:00
Fireblade 8d3e02bc1f feat: randomization-free landing particles 2026-08-02 18:11:23 -04:00
Fireblade 2c42b0cea3 chore: make slime block more accurate to decomp 2026-08-02 15:06:34 -04:00
Fireblade 30d7291310 chore: update keyboard tooltips 2026-07-25 01:40:21 -04:00
Fireblade c0265373a6 fix: hanging entities in dlc worlds 2026-07-24 18:59:43 -04:00
Fireblade 09c305e970 fix: magma block damage still taking effect when the player has frost walker 2026-07-24 17:44:59 -04:00
Fireblade 306d1c9fb7 feat: new chunk load toggle
also fixes item frames / paintings in dlc worlds
2026-07-24 15:14:27 -04:00
Fireblade a045d994fb feat: tu43 entity sounds, spawner fixes, and a 16x16 region toolset 2026-07-23 19:47:55 -04:00
Fireblade 1488469cb2 fix: translucent item rendering 2026-07-22 15:07:43 -04:00
Fireblade cd64f5f52b feat: keyboard and mouse controls
fixes:
- unsafe string conversion
- fence gates not connecting to walls properly
2026-07-20 02:24:35 -04:00
Fireblade 10ab8b114d fix: shapeless recipies not accounting for duplicate crafting items 2026-07-18 23:02:35 -04:00
Fireblade 525b89484c fix: enchantment table + frost walker (kinda)
fixes:
- treasure enchants being selectable within the enchantment table menu
- frost walker resemblance to decompiled legacy console edition
- enchantment table featuring hot-swappable abilities where the player could replace one tool with another whilst keeping the exact same potential enchantments in the enchant menu
2026-07-18 22:03:54 -04:00
Fireblade f5afc92cdd chore: port rest of magma block stuff 2026-07-18 20:52:23 -04:00
Fireblade d3067a7d0a chore: update block localizations 2026-07-18 19:12:07 -04:00
Fireblade 1011c714c4 fix: grass path
fixes:
- grass path not being on the shovel's diggable list, hence the slow breaking speed whilst mining the block
- grass path AABB collisions, creating a discrepency between farmland + the grass path tile where the former could walk up more tiles than the latter
2026-07-18 19:01:12 -04:00
Fireblade 338b1b2dd9 fix: misc bugs
fixes:
- f3 menu outside world border
- control type being affected by seemingly random oddities
- bedrock glitch in low y levels (thanks tranq)
2026-07-17 19:20:05 -04:00
Fireblade db98211d62 fix: add suport for additional languages 2026-07-16 17:05:38 -04:00
Tranqlmao 454da0ce3c Banners Complete!
Fixed improper behaviors of banners to adhere to LCE, as well as redid the banner recipes!
2026-07-15 14:50:09 -04:00
SevenToaster509 8e0983ad4e fix: banner names being incorrect 2026-07-15 11:12:21 +01:00
Fireblade 8fad0908f6 fix packet issue for skins (#49)
Reviewed-on: https://git.neolegacy.dev/neoStudiosLCE/neoLegacy/pulls/49
Reviewed-by: tranqlmao <20+tranqlmao@noreply.neolegacy.dev>
Reviewed-by: Fireblade <3+fireblade@noreply.neolegacy.dev>
2026-07-15 07:27:23 +01:00
Tranqlmao d7a08122c7 Banner Patterns!
Banner Patterns, some lighting fixes, and loot-table nbt!
2026-07-14 20:31:05 -04:00
DrPerkyLegit f583a53f7f read the values in the same way as we write 2026-07-14 20:01:44 -04:00
Fireblade 3833d0f3b7 feat: customizable panorama + village fixes (#46)
Reviewed-on: https://git.neolegacy.dev/neoStudiosLCE/neoLegacy/pulls/46
2026-07-13 22:21:32 +01:00
Tranqlmao 680f539f30 TU43 Bug fixes
Fixed the following:
Cape behavior,
Magma block spawn
Fossil Spawn
Igloo Spawn / other issues
Classic Crafting
Server-sided loot table fix
2026-07-13 16:59:00 -04:00
Fireblade f5b395b4f0 fix: wood bridges 2026-07-13 02:39:22 -04:00
Fireblade 99414c8906 fix: village generation
previously, world generation standards required all parts of the village (houses, pathes, etc) to be in a village-appropriate biome. now, villages have been made to inherit from the well's point-of-view; meaning that, as long as the well is in an acceptable biome, the rest of the village will continue to generate
2026-07-13 02:22:52 -04:00
Fireblade 48b80ba865 fix: world format discrepancies 2026-07-12 01:00:58 -04:00
Fireblade f0a868411a fix: build failures 2026-07-11 21:48:52 -04:00
Fireblade 54528fac16 feat: loot tables (#43)
self-explanatory

Reviewed-on: https://git.neolegacy.dev/neoStudiosLCE/neoLegacy/pulls/43
2026-07-12 02:05:06 +01:00
Tranqlmao a4c746bee4 TU43 Structures, bug fixes & minor changes
- Elytra flight, damage, kinetic energy, pretty much any bug someone reported, paper doll, etc.
- Fossil & Igloo generation
- Texture interpolation
- Iggy mouse fix for world settings
- Neo branding on main screen
- Release build txt logger
- Debug mode spectator
- Several server fixes
- Flowerpot fixes
- Several more changes made in TU43
2026-07-11 19:30:16 -04:00
Fireblade 1fd2c95abe Merge branch 'main' of https://git.neolegacy.dev/neoStudiosLCE/neoLegacy into feat/mario-world 2026-07-08 18:51:08 -04:00
Fireblade 5d9417ee29 fix: kanji fonts (#36)
Reviewed-on: https://git.neolegacy.dev/neoStudiosLCE/neoLegacy/pulls/36
2026-07-08 23:32:56 +01:00
Fireblade 9f5de77d3f fix: utf font widening 2026-07-08 16:20:19 -04:00
Tranqlmao 055e9cd0ca Merge branch 'main' of https://git.neolegacy.dev/neoStudiosLCE/neoLegacy 2026-07-07 19:48:20 -04:00
Tranqlmao be3bf0aebd TU43 Release 4
+ Banners, Banners, Banners!
2026-07-07 19:47:42 -04:00
Fireblade bb0ca3752e Merge pull request 'feat: structure files, updated sounds, and village improvements' (#33) from Fireblade/neoLegacy:main into main
Reviewed-on: https://git.neolegacy.dev/neoStudiosLCE/neoLegacy/pulls/33
2026-07-07 20:52:56 +01:00
Fireblade 52138bfe62 feat: structure files, updated sounds, and village improvements 2026-07-07 15:52:09 -04:00
Tranqlmao d1bf3952cd TU43 Release 3
+ Gameplay changes
Stained clay renamed to "Hardened Clay" (e.g. White Hardened Clay)
Gold ore now generates in mesa biomes between Y=32 and Y=79
Shears can no longer be enchanted with Silk Touch
Pigs can be led/bred with potatoes and beetroots (in addition to carrots)
Elder Guardians now drop dry sponges instead of wet sponges
Endermen now spawn in the Nether
2026-07-07 15:07:01 -04:00
Fireblade 9bbd4b3e90 fix: World Gen (biomes mostly) 2026-07-07 19:36:17 +01:00
Tranqlmao 558173cfd0 TU43 Release 2
+ Added Magma Block, Nether Wart Block, Bone Block, End Stone Block
+ All Beetroot Items
+ Polar Bear (excluding audio)
+ / now opens chat for commands
2026-07-07 12:54:31 -04:00
Tranqlmao 37cd621561 TU43 Release 1
+ Mending & FrostWalker (Needs some tlc)
+ Path Blocks
+ All Beetroot Items
- Some SWF & Texture atlasChanges
2026-07-06 23:28:11 -04:00
Fireblade 31c46e1e48 fix: zombie villager model 2026-07-06 19:45:24 -04:00
Fireblade 1f6c4886c5 Merge branch 'TU31' into feat/mario-world 2026-07-05 19:54:15 -04:00
Fireblade 3f51fcb01f merge upstream 2026-07-05 19:48:38 -04:00
Fireblade ede54a1600 Merge remote-tracking branch 'upstream/main' into TU31 2026-07-05 18:32:31 -04:00