EntityCulling icon indicating copy to clipboard operation
EntityCulling copied to clipboard

1.8 updates

Open Oondanomala opened this issue 8 months ago • 6 comments

A few updates to the 1.8 version of the mod. Hide whitespace to view the actual changes.

  • Fixed build, it should work now (with all the ForgeGradle jankyness)
  • Updated OcclusionCulling to latest, and removed spectator check since it's unnecessary now
  • Removed unnecessary dependencies from the jar that Mixin was adding
  • Fixed mod resources (1.8 uses a different path and a different lang format)
  • Improved the way keybinds work
  • Used spaces everywhere (it was bothering me :p)
  • Some other really small changes

There's a lot more that can be done, but I can't be bothered right now

Oondanomala avatar Apr 17 '25 14:04 Oondanomala

Quality Gate Failed Quality Gate failed

Failed conditions
B Maintainability Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

sonarqubecloud[bot] avatar Apr 17 '25 14:04 sonarqubecloud[bot]

PR Summary

  • Shadow Plugin Version Updated The shadow plugin version has been updated from 2.0.4 to 4.0.4, enhancing the productivity and efficiency of applying shadows.

  • Repository URL Changed The repository URL has been changed from https://repo.sk1er.club/repository/maven-releases/ to https://repo.essential.gg/repository/maven-releases/, shifting the source of data fetching to a more reliable site.

  • Exclusion of Specific Modules Some specific modules (guava, gson, commons-io) from the org.spongepowered:mixin dependency have been removed, making our code lighter and more efficient.

  • Task Refactoring Refactoring of the moveResources task has been done to use tasks.register syntax, providing a more systematic approach to execute the task.

  • Removed Unused Metadata Files The META-INF/mods.toml and pack.mcmeta files, which contained mod and resource pack metadata, have been deleted for better housekeeping.

  • Name Convention Updated The META-INF/mcmod.info file has been renamed to mcmod.info (removed the META-INF directory) leading to a more intuitive categorizing.

  • Cleanup in build.gradle & Java Classes Minor formatting updates have been made in build.gradle files and Java classes, which include improving indentation, removing unnecessary blank lines, and reducing spaces for a better clean-up and aesthetics.

  • Input Handling for Mouse & Keyboard Events Key input handling for mouse and keyboard events has been added in EntityCullingMod enhancing the interactivity.

  • Refactored KeyBinding Initialization & Improved Chat Messages The keybind has been refactored while updating the translation keys in the localization files. Also, the chat messages have been made more lively with color formatting.

  • Removed Unused Import Unnecessary imports have been removed from EntityCullingModBase.java enhancing the efficiency of the system.

  • Localization Update A new localization file (en_US.lang) has been introduced for better key descriptions, while the old JSON localization file (en_us.json) has been removed.

  • Gradle Version Update The Gradle wrapper has been updated to version 4.10.3 and the occlusion culling dependency has changed to 0.0.8-SNAPSHOT improving the overall workflow.

  • Gradle Scripts Cleanup Unnecessary comments have been removed from Gradle script files (gradlew and gradlew.bat), resulting in cleaner code.

  • Debug Information Addition Information about rendered and skipped entities has been added to the debug HUD, making the development testing process more informative.

what-the-diff[bot] avatar Apr 17 '25 14:04 what-the-diff[bot]

From a glance looks good, that branch had been inactive for about 2 years, that explains a lot of breakage with the build. Will check it out later and put on modrinth/cf if everything works. I might need to take a look at the 1.12 branch too 👀.

tr7zw avatar Apr 17 '25 14:04 tr7zw

Is there any interest in a 1.8.9 legacy fabric version or should I just rip all the multi loader logic out? I have no use for it (and lack the experience necessary to make it work).

Oondanomala avatar Jun 07 '25 12:06 Oondanomala

Ngl, I kinda forgot about the pr. And no, I don't think having fabric 1.8 would be worth anyone's time.

Currently I'm mostly preparing all the mods/plugins for 1.21.6 and new lib logic. There is also a WIP of a reworked entityculling, but all of that should be out of scope for 1.8

tr7zw avatar Jun 07 '25 12:06 tr7zw

~Old ForgeGradle is a giant pain to work with so I probably wont do that anytime soon.~ I lied, will be a separate PR. This PR can be merged as is in the meantime.

Oondanomala avatar Jun 07 '25 13:06 Oondanomala

@tr7zw any updates on this? If you're not interested in maintaining (merging my pull requests :p) the 1.8 version then I'll make my own fork and move development there, just let me know.

Oondanomala avatar Nov 03 '25 15:11 Oondanomala

I'm a bit under the water right now, thanks to 1.21.10. I keep seeing the PRs for legacy versions, but just don't get around to test them. Will have to think about it, currently still bashing my head against 1.21.10 issues.

tr7zw avatar Nov 03 '25 15:11 tr7zw

Seeing how old this PR is, I owe you to get it done today or this week. Also, apparently it's been 3 years 😵‍💫 image

tr7zw avatar Nov 03 '25 15:11 tr7zw

Take your time 😁

I'll be making more pull requests to fix/improve a bunch of things soon, so you could wait for those if you don't have much time (I will probably switch the build system to use essential loom so I don't have to deal with the pain and suffering of working with old ForgeGradle and Gradle again).

Oondanomala avatar Nov 03 '25 16:11 Oondanomala

(I will probably switch the build system to use essential loom so I don't have to deal with the pain and suffering of working with old ForgeGradle and Gradle again).

Honestly, be my guest. The absolute unusability of the old build systems is one of the main reasons I don't bother with 1.8/1.12 ports/fixes. (And that I don't or many people play these versions anymore, compared to 1.21.1 etc). Just faceplanted full force trying to run the build under Java 21... Also, its not having a great time getting assets... image

tr7zw avatar Nov 03 '25 16:11 tr7zw

Seems to work fine. Might also need 1-2 fixes that I just recently fixed on the main branch here https://github.com/tr7zw/EntityCulling/blob/8fb963bcd5c5695dda5e8fdd41ae1f4c51c84d3a/EntityCulling-Shared/src/main/java/dev/tr7zw/entityculling/CullTask.java#L179 Marker armor stands are not skippable, and they need a fixed cull box 👀.

tr7zw avatar Nov 03 '25 16:11 tr7zw