Skip to content

Releases: MovingBlocks/Terasology

Preview Engine 5.3.0 / Alpha 23

03 Sep 10:51
Compare
Choose a tag to compare

Special thanks to everyone that contributed to this release:
@Cervator, @DarkWeird, @dragonempire96, @Jacob-Rueckert, @jdrueckert, @keturn, @kvaithin, @mohamedation, @MrGizmo123, @pollend, @shadowasphodel2919, @sid2002CN, @skaldarnar, @ujjman.

Changelog

🚀 Features

🐛 Bug Fixes

  • #5066 fix(rendering): Don't try to set window icon on macOS (@skaldarnar)
  • #5062 fix: do not crash on unexpected map format in GenericMapTypeHandler (@jdrueckert)
  • #5054 fix: do not run behavior simulation while paused (@keturn)
  • #5053 fix(facade): fix broken --load-last-game (@keturn)
  • #5048 fix(TypeHandlerLibrary): fix error-during-error-logging in GenericMap (@keturn)
  • #5043 fixup! test(MTE)! set default NetworkMode to NONE (#5041) (@skaldarnar)
  • #5036 fix(PathManager): allow paths to be symlinks (@keturn)
  • #5035 fix(templates): replace perlin with simplex as the default override.cfg (@keturn)
  • #5017 fix(Context)!: correct signature of Context.get (@keturn)
  • #5014 fix(ChunkProcessingPipeline): base thread pool size on available processors (@keturn)
  • #5013 fix(test): set jacoco excludes for engine-test's unitTest and integrationTest tasks (@keturn)
  • #5008 fix(SelectionScreen): be more robust in the face of save files with incomplete manifests (@keturn)
  • #5006 fix: path quirk on an M1 Mac using Azul JDK 11 (@Cervator)
  • #4980 fix: fix game screen goes black bug (@sid2002CN)
  • #4973 bugfix: resolve BlockSelectionRenderer (@pollend)

🧰 Maintenance

  • #5067 chore(world): improve logging for BlockManager (@skaldarnar)
  • #5064 chore: simplify implementation in Assets to one-liners (@skaldarnar)
  • #5063 chore(subsystems/discord): catch runtime exception and log only message (@skaldarnar)
  • #5052 chore(EntityPool): workaround "unchecked generics array creation" for getEntitiesWith (@keturn)
  • #5033 chore: CoreRegistry removal from engine.network (@keturn)
  • #5026 chore(#4908): match IntelliJ and Checkstyle formatting rules (@jdrueckert)
  • #5016 chore: remove unused ByteCodeReflectFactory (@keturn)
  • #5009 chore(StorageManager): typos and minor code cleanups (@keturn)
  • #5002 chore: Update lwjgl version to 3.3.1 (@DarkWeird)
  • #4992 chore: remove no longer existing CharacterMovement fields from prefabs (@jdrueckert)
  • #4989 refactor(Chunk): provide default implementations of methods where possible (@keturn)
  • #4984 chore: add security policy (@jdrueckert)
  • #4972 refactor: split out chunk work as a seperate helper class (@pollend)
  • #4970 chore: remove TessellatorHelper (@pollend)
  • #4965 chore: remove deprecated method in Block (@pollend)
  • #4964 chore: remove usage of Tesselator for BlockSelectionRenderer (@pollend)
  • #4888 chore: remove deprecated Chunk#getPosition(Vector3i) (@pollend)
  • #4786 chore(rendering): migrate chunk mesh generation Flux (@pollend)
  • #4768 chore: move SideBitFlags into Side (@pollend)

🧪 Tests

  • #5044 test(MTE): allow a test to add its own EngineSubsystem (@keturn)
  • #5041 test(MTE)! set default NetworkMode to NONE (@keturn)
  • #5040 test: add info logs to help track down sporadic (@jdrueckert)
  • #5039 test(MTE): replace IsolatedMTEExtension with JUnit's TestInstance.Lifecycle (@keturn)
  • #5037 test: add NetworkMode setting to MTE (@keturn)
  • #5022 test: reducing logspam (@keturn)
  • #5010 test: Move ModuleTestingEnvironment to engine-tests (@keturn)
  • #4987 test(ChunkMeshWorker): initial attempt at using reactor-test (@keturn)

🐌 Performance

  • #5029 performance(network): shutdown faster with parallelization (@keturn)

📚 Documentation

⚙️ Logistics

  • #5068 build(idea): exclude some things from import suggestions (@keturn)
  • #5065 build(idea): fix parameters in run configurations (@skaldarnar)
  • #5027 build(checkstyle): update to version 10.2, update .idea to match (@keturn)
  • #5020 build: extract project metrics/analytics to terasology-metrics gradle plugin (@keturn)
  • #5007 build(idea): update dictionary and gitignores (@keturn)
  • #4568 build(modules): add :modules:reportModuleOrder task (@keturn)

🧩 Other Changes

  • #5021 security: upgrade dependencies (@keturn)
  • #4999 made changes in BlockCommands.java to prevent adding of wrong number … (@ujjman)

Module Changelog

🚀 Features

Preview Engine 5.3.0 / Alpha 23 (Release Candidate 2)

23 Aug 21:13
03023ad
Compare
Choose a tag to compare

Changes

🚀 Features

🐛 Bug Fixes

🧰 Maintenance

⚙️ Logistics

  • #5062 fix: do not crash on unexpected map format in GenericMapTypeHandler (@jdrueckert)
  • #5068 build(idea): exclude some things from import suggestions (@keturn)
  • #5065 build(idea): fix parameters in run configurations (@skaldarnar)

Preview Engine 5.3.0 / Alpha 23 (Release Candidate 1)

21 Aug 12:09
b367a18
Compare
Choose a tag to compare

Changes

  • #5029 performance(network): shutdown faster with parallelization (@keturn)
  • #5044 test(MTE): allow a test to add its own EngineSubsystem (@keturn)
  • #5039 test(MTE): replace IsolatedMTEExtension with JUnit's TestInstance.Lifecycle (@keturn)
  • #5041 test(MTE)! set default NetworkMode to NONE (@keturn)
  • #5010 test: Move ModuleTestingEnvironment to engine-tests (@keturn)
  • #4987 test(ChunkMeshWorker): initial attempt at using reactor-test (@keturn)
  • #4999 made changes in BlockCommands.java to prevent adding of wrong number … (@ujjman)
  • #4980 fix: fix game screen goes black bug (@sid2002CN)

🚀 Features

🐛 Bug Fixes

  • #5053 fix(facade): fix broken --load-last-game (@keturn)
  • #5054 fix: do not run behavior simulation while paused (@keturn)
  • #5048 fix(TypeHandlerLibrary): fix error-during-error-logging in GenericMap (@keturn)
  • #5043 fixup! test(MTE)! set default NetworkMode to NONE (#5041) (@skaldarnar)
  • #5036 fix(PathManager): allow paths to be symlinks (@keturn)
  • #5035 fix(templates): replace perlin with simplex as the default override.cfg (@keturn)
  • #5017 fix(Context)!: correct signature of Context.get (@keturn)
  • #5013 fix(test): set jacoco excludes for engine-test's unitTest and integrationTest tasks (@keturn)
  • #5014 fix(ChunkProcessingPipeline): base thread pool size on available processors (@keturn)
  • #5008 fix(SelectionScreen): be more robust in the face of save files with incomplete manifests (@keturn)
  • #5006 fix: path quirk on an M1 Mac using Azul JDK 11 (@Cervator)
  • #4973 bugfix: resolve BlockSelectionRenderer (@pollend)

🧰 Maintenance

  • #5053 fix(facade): fix broken --load-last-game (@keturn)
  • #5052 chore(EntityPool): workaround "unchecked generics array creation" for getEntitiesWith (@keturn)
  • #5048 fix(TypeHandlerLibrary): fix error-during-error-logging in GenericMap (@keturn)
  • #5033 chore: CoreRegistry removal from engine.network (@keturn)
  • #5027 build(checkstyle): update to version 10.2, update .idea to match (@keturn)
  • #5040 test: add info logs to help track down sporadic (@jdrueckert)
  • #5026 chore(#4908): match IntelliJ and Checkstyle formatting rules (@jdrueckert)
  • #5021 security: upgrade dependencies (@keturn)
  • #5016 chore: remove unused ByteCodeReflectFactory (@keturn)
  • #5009 chore(StorageManager): typos and minor code cleanups (@keturn)
  • #4786 chore(rendering): migrate chunk mesh generation Flux (@pollend)
  • #5007 build(idea): update dictionary and gitignores (@keturn)
  • #4768 chore: move SideBitFlags into Side (@pollend)
  • #5002 chore: Update lwjgl version to 3.3.1 (@DarkWeird)
  • #4970 chore: remove TessellatorHelper (@pollend)
  • #4992 chore: remove no longer existing CharacterMovement fields from prefabs (@jdrueckert)
  • #4989 refactor(Chunk): provide default implementations of methods where possible (@keturn)
  • #4972 refactor: split out chunk work as a seperate helper class (@pollend)
  • #4984 chore: add security policy (@jdrueckert)
  • #4888 chore: remove deprecated Chunk#getPosition(Vector3i) (@pollend)
  • #4965 chore: remove deprecated method in Block (@pollend)
  • #4898 feat(gestaltv7-eventsystem): Migration Event and @ReceiveEvent to gestalt's (@DarkWeird)

📚 Documentation

⚙️ Logistics

Engine 5.2.0 / Alpha 22

05 Dec 11:05
Compare
Choose a tag to compare

Special thanks to everyone that contributed to this release: @ahv15, @casals, @Cervator, @DarkWeird, @jdrueckert, @keturn, @meetcshah19, @mohamedation, @opl-, @pollend, @rzats, @skaldarnar, @tolziplohu, @ujjman

🚀 Features

  • #4147 feat: set limits for maximum memory use. (@keturn)
  • #4753 feature(ecs-gestalt): Migrate Components to gestalt's Components. (@DarkWeird)
  • #4833 feat: add priority to Updates annotation of facet providers (@tolziplohu)
  • #4843 feat: hide NotificationOverlay (chat box) if HUD is hidden (@skaldarnar)
  • #4849 feat: add random distribution utilities from AnotherWorld (@tolziplohu)
  • #4855 feat: add debug bounding box rendering (@pollend)
  • #4857 feat: add commands for visual debugging (bounding boxes, etc.) (@skaldarnar)
  • #4858 feat: make render distance for (partially) transparent blocks adjustable (@tolziplohu)
  • #4902 feat(RelevanceSystem): addRelevanceEntity returns the relevant region (@keturn)
  • #4906 feat: add vertex attribute bindings for short and byte (@pollend)
  • #4934 feat(i18n): Update Ukrainian locale with current strings (@rzats)
  • #4935 feat(i18n): Update engine settings i18n (@rzats)
  • #4946 feat(F3): show process data size and limit (@keturn)
  • #4968 feat: add support for skinned Mesh (@pollend)

🐛 Bug Fixes

  • #4840 fix: resolve Advance World Settings issue (@pollend)
  • #4841 fix: Better handling of ComponentSystem loading with optional dependencies (@DarkWeird)
  • #4845 fix(build): use Maps from guava, not Google API Client (@keturn)
  • #4847 fix: enable block tinting in LOD chunks (@tolziplohu)
  • #4853 bugfix: change bullet physics implement into component system (@pollend)
  • #4862 bugfix: PojoPrefab was getting seriliazed as a value type (@pollend)
  • #4863 bugfix: fix debug for skeleton renderer (@pollend)
  • #4884 fix(autoconfig): fix back-animation to empty screen (@DarkWeird)
  • #4892 bugfix: migrate deprecated texture2D (@pollend)
  • #4897 fix(rendering): replicate SkeletalMesh fields, fix debug skeleton scale (@pollend)
  • #4895 fix(PathManager): working directory should always be a fallback (@keturn)
  • #4907 fix(headless-fixes): remove InputSystem and NuiManager from headlesses (@DarkWeird)
  • #4916 build(server): fix --homedir arg for gradle task server (@DarkWeird)
  • #4919 fix: Avoid a couple cases where no NUIManager would cause trouble. (@Cervator)
  • #4932 fix(engine/rendering): Fix ChunkMeshRenderer listens to wrong deactivate event (@opl-)
  • #4937 fix(SystemConfig): ensure thread max limit is never less than one (@keturn)
  • #4962 fix(headless-execution): MainMenuState can handle headless now. Correct loadingstate for headless clients. (@DarkWeird)

🧰 Maintenance

  • #4157 chore[facade]: use picocli for processing command line options (@keturn)
  • #4795 chore: remove finite check from LocalPlayer (@pollend)
  • #4799 refactor: replace usage of ThreadManagerSubsystem with reactor Scheduler (@pollend)
  • #4800 refactor: transaction manager with reactor (@pollend)
  • #4839 refactor(GameScheduler): provide ThreadMonitor-compatible schedule method (@keturn)
  • #4842 chore: adjust default logback configuration (@skaldarnar)
  • #4844 chore: add maven repo that contains jpastebin (@jdrueckert)
  • #4864 chore: stop ignoring checkstyle findings (@jdrueckert)
  • #4867 chore: remove SubmersibleCamera abstraction (@pollend)
  • #4869 chore: address some checkstyle warnings (@skaldarnar)
  • #4870 chore: some lintings and suggested simplifications (@keturn)
  • #4873 chore: upgrade crashreporter dependency 4.1.0 -> 4.2.0 (@jdrueckert)
  • #4878 chore: remove internal ai system for engine (@pollend)
  • #4883 chore: remove unused render utilities (@pollend)
  • #4885 chore: minor fixes and introduce some test cases for VertexResource (@pollend)
  • #4886 chore: add test cases for IndexResource and address some problems found through test cases (@pollend)
  • #4887 chore: cleanup extra qualification for org.joml from termath migration (@pollend)
  • #4889 chore: remove deprecated LegacyGsonTypeHandlerAdapter (@pollend)
  • #4890 chore(PathManager): remove some "probably isn't needed anymore" code (@keturn)
  • #4893 refactor: split chunkMesh to ChunkMeshImpl (@pollend)
  • #4894 refactor: construct block mesh generator single shape with standard mesh data (@pollend)
  • #4896 refactor: refactor mesh generation for IconMeshFactory (@pollend)
  • #4899 ci: fail checkstyle on all findings except warning.LOW (@jdrueckert)
  • #4901 chore(LocationComponent): provide convenience constructor for Vector3i (@keturn)
  • #4903 chore: update vertex attribute with put(T[] data) (@pollend)
  • #4905 refactor: add test cases for vertex resource and update api with put and replace (@pollend)
  • #4918 chore(StateMainMenu): include message in toString representation for debugging (@keturn)
  • #4931 refactor(translation): use ResourceUrn instead of SimpleUrn (@DarkWeird)
  • #4936 chore: remove some slow logging (@Cervator)
  • #4939 chore: add reactor-extra to dependencies (@keturn)
  • #4954 chore: overhaul issue template (@jdrueckert)
  • #4964 chore: remove usage of Tesselator for BlockSelectionRenderer (@pollend)

⚙️ Logistics

  • #4938 build(javadoc): disable doclint messages about missing tags (@keturn)
  • #4859 build(facade): oops, junit was supposed to be a test-only dependency (@keturn)
  • #4864 chore: stop ignoring checkstyle findings (@jdrueckert)
  • #4891 build(IntelliJ): turn on checkstyle.scan-before-checkin (@keturn)
  • #4899 ci: fail checkstyle on all findings except warning.LOW (@jdrueckert)
  • #4914 build(IntelliJ): add inspections allowing IntelliJ to correct "modifier out of order" infractions (@keturn)
  • #4916 build(server): fix --homedir arg for gradle task server (@DarkWeird)
  • #4927 build(ci): build using a java 11 toolchain (@keturn)
  • #4928 build: upgrade minimum compatible version to Java 11 (@keturn)
  • #4938 build(javadoc): disable doclint messages about missing tags (@keturn)
  • #4939 chore: add reactor-extra to dependencies (@keturn)
  • #4941 Revert "build(ci): build using a java 11 toolchain" (@keturn)
  • #4942 build: build using a java 11 toolchain (@keturn)
  • #4945 build: fix mystery Artifactory issue (@Cervator)
  • #4955 chore: reduce logger level for animation-action link on behaviors (@casals)

🐌 Performance

🧪 Tests

  • #3992 test(TypeHandlerLibrary): RuntimeDelegatingTypeHandler test failure (@keturn)
  • #4913 test(modules): make com.google.truth assertion library available (@keturn)
  • #4940 test: add unitTest target to TypeHandlerLibrary and facades (@keturn)
  • #4944 test(TypeHandlerLibrary): provide a logger during test execution (@keturn)
  • #4846 test: have IntelliJ ask if tests should be run by itself or gradle (@keturn)

Module Changes

🚀 Features

🐛 Bug Fixes

Preview Engine 5.2.0 / Alpha 22 (Release Candidate 4)

19 Nov 01:07
85f9c82
Compare
Choose a tag to compare

Changes

  • #3992 test(TypeHandlerLibrary): RuntimeDelegatingTypeHandler test failure (@keturn)
  • #4934 feat(i18n): Update Ukrainian locale with current strings (@rzats)

🚀 Features

  • #4946 feat(F3): show process data size and limit (@keturn)

🐛 Bug Fixes

  • #4897 fix(rendering): replicate SkeletalMesh fields, fix debug skeleton scale (@pollend)
  • #4932 fix(engine/rendering): Fix ChunkMeshRenderer listens to wrong deactivate event (@opl-)
  • #4944 test(TypeHandlerLibrary): provide a logger during test execution (@keturn)
  • #4940 test: add unitTest target to TypeHandlerLibrary and facades (@keturn)
  • #4937 fix(SystemConfig): ensure thread max limit is never less than one (@keturn)

🧰 Maintenance

📚 Documentation

⚙️ Logistics

  • #4938 build(javadoc): disable doclint messages about missing tags (@keturn)
  • #4945 build: fix mystery Artifactory issue (@Cervator)
  • #4928 build: upgrade minimum compatible version to Java 11 (@keturn)
  • #4942 build: build using a java 11 toolchain (@keturn)
  • #4940 test: add unitTest target to TypeHandlerLibrary and facades (@keturn)
  • #4941 Revert "build(ci): build using a java 11 toolchain" (@keturn)
  • #4927 build(ci): build using a java 11 toolchain (@keturn)
  • #4939 chore: add reactor-extra to dependencies (@keturn)
  • #4914 build(IntelliJ): add inspections allowing IntelliJ to correct "modifier out of order" infractions (@keturn)

Preview Engine 5.2.0 / Alpha 22 (Release Candidate 3)

03 Oct 18:32
221c2fe
Compare
Choose a tag to compare

Changes

🐛 Bug Fixes

  • #4919 fix: Avoid a couple cases where no NUIManager would cause trouble. (@Cervator)

🧰 Maintenance

  • #4918 chore(StateMainMenu): include message in toString representation for debugging (@keturn)

Preview Engine 5.2.0 / Alpha 22 (Release Candidate 2)

01 Oct 19:50
b858dac
Compare
Choose a tag to compare

Changes

🚀 Features

  • #4902 feat(RelevanceSystem): addRelevanceEntity returns the relevant region (@keturn)
  • #4906 feat: add vertex attribute bindings for short and byte (@pollend)
  • #4857 feat: add commands for visual debugging (bounding boxes, etc.) (@skaldarnar)
  • #4855 feat: add debug bounding box rendering (@pollend)
  • #4887 chore: cleanup extra qualification for org.joml from termath migration (@pollend)
  • #4853 bugfix: change bullet physics implement into component system (@pollend)

🐛 Bug Fixes

  • #4916 build(server): fix --homedir arg for gradle task server (@DarkWeird)
  • #4907 fix(headless-fixes): remove InputSystem and NuiManager from headlesses (@DarkWeird)
  • #4885 chore: minor fixes and introduce some test cases for VertexResource (@pollend)
  • #4886 chore: add test cases for IndexResource and address some problems found through test cases (@pollend)
  • #4895 fix(PathManager): working directory should always be a fallback (@keturn)
  • #4892 bugfix: migrate deprecated texture2D (@pollend)
  • #4884 fix(autoconfig): fix back-animation to empty screen (@DarkWeird)
  • #4853 bugfix: change bullet physics implement into component system (@pollend)

🧰 Maintenance

  • #4903 chore: update vertex attribute with put(T[] data) (@pollend)
  • #4913 test(modules): make com.google.truth assertion library available (@keturn)
  • #4901 chore(LocationComponent): provide convenience constructor for Vector3i (@keturn)
  • #4885 chore: minor fixes and introduce some test cases for VertexResource (@pollend)
  • #4886 chore: add test cases for IndexResource and address some problems found through test cases (@pollend)
  • #4890 chore(PathManager): remove some "probably isn't needed anymore" code (@keturn)
  • #4887 chore: cleanup extra qualification for org.joml from termath migration (@pollend)
  • #4889 chore: remove deprecated LegacyGsonTypeHandlerAdapter (@pollend)
  • #4883 chore: remove unused render utilities (@pollend)

📚 Documentation

  • #4885 chore: minor fixes and introduce some test cases for VertexResource (@pollend)
  • #4886 chore: add test cases for IndexResource and address some problems found through test cases (@pollend)

⚙️ Logistics

  • #4916 build(server): fix --homedir arg for gradle task server (@DarkWeird)
  • #4891 build(IntelliJ): turn on checkstyle.scan-before-checkin (@keturn)
  • #4895 fix(PathManager): working directory should always be a fallback (@keturn)

Preview Engine 5.2.0 / Alpha 22 (Release Candidate 1)

29 Aug 10:05
cfcc712
Compare
Choose a tag to compare

Changes

  • #4846 test: have IntelliJ ask if tests should be run by itself or gradle (@keturn)

🚀 Features

  • #4753 feature(ecs-gestalt): Migrate Components to gestalt's Components. (@DarkWeird)
  • #4843 feat: hide NotificationOverlay (chat box) if HUD is hidden (@skaldarnar)
  • #4147 feat: set limits for maximum memory use. (@keturn)
  • #4849 feat: add random distribution utilities from AnotherWorld (@tolziplohu)
  • #4157 chore[facade]: use picocli for processing command line options (@keturn)
  • #4833 feat: add priority to Updates annotation of facet providers (@tolziplohu)

🐛 Bug Fixes

  • #4862 bugfix: PojoPrefab was getting seriliazed as a value type (@pollend)
  • #4863 bugfix: fix debug for skeleton renderer (@pollend)
  • #4858 feat: make render distance for (partially) transparent blocks adjustable (@tolziplohu)
  • #4847 fix: enable block tinting in LOD chunks (@tolziplohu)
  • #4845 fix(build): use Maps from guava, not Google API Client (@keturn)
  • #4841 fix: Better handling of ComponentSystem loading with optional dependencies (@DarkWeird)
  • #4840 fix: resolve Advance World Settings issue (@pollend)

🧰 Maintenance

  • #4873 chore: upgrade crashreporter dependency 4.1.0 -> 4.2.0 (@jdrueckert)
  • #4870 chore: some lintings and suggested simplifications (@keturn)
  • #4799 refactor: replace usage of ThreadManagerSubsystem with reactor Scheduler (@pollend)
  • #4864 chore: stop ignoring checkstyle findings (@jdrueckert)
  • #4869 chore: address some checkstyle warnings (@skaldarnar)
  • #4794 perf: improve performance of mesh generator for chunks (@pollend)
  • #4844 chore: add maven repo that contains jpastebin (@jdrueckert)
  • #4842 chore: adjust default logback configuration (@skaldarnar)
  • #4157 chore[facade]: use picocli for processing command line options (@keturn)
  • #4840 fix: resolve Advance World Settings issue (@pollend)
  • #4839 refactor(GameScheduler): provide ThreadMonitor-compatible schedule method (@keturn)
  • #4800 refactor: transaction manager with reactor (@pollend)

📚 Documentation

  • #4859 build(facade): oops, junit was supposed to be a test-only dependency (@keturn)

⚙️ Logistics

  • #4864 chore: stop ignoring checkstyle findings (@jdrueckert)
  • #4859 build(facade): oops, junit was supposed to be a test-only dependency (@keturn)
  • #4147 feat: set limits for maximum memory use. (@keturn)
  • #4845 fix(build): use Maps from guava, not Google API Client (@keturn)
  • #4841 fix: Better handling of ComponentSystem loading with optional dependencies (@DarkWeird)

Engine 5.1.1 / Alpha 21 Patch 1

08 Aug 16:17
Compare
Choose a tag to compare

⚠️ This release has a known issue that crashes the game in the Advanced Game Setup (AGS) stage "Universe Setup". For details, see #4911 ⚠️

Module Changes

🐛 Bug Fixes

Terasology/Inventory#46 fix: retrieve character entity within binding (@skaldarnar)

Engine 5.1.0 / Alpha 21

08 Aug 13:05
Compare
Choose a tag to compare

Special thanks to everyone that contributed to this release: @ahv15, @BenjaminAmos, @Cervator, @IsaiahBlanks, @jdrueckert, @KdotJPG, @keturn, @meetcshah19, @NicholasBatesNZ, @NicolaasJKotze, @pollend, @remram44, @ryuk156, @skaldarnar, @tolziplohu

🚀 Features

  • #4828 feat: restore biome-based grass and foliage tinting (@tolziplohu)
  • #4823 feat: add SetDirection event to set player orientation (@ahv15)
  • #4818 feat: allow for ranged item activation (@skaldarnar)
  • #4813 feat(ModuleManager): do not depend on PathManager to load modules from the classpath (@keturn)
  • #4802 feat(noise): Add domain rotation to mitigate Perlin squareness (@KdotJPG)

🐛 Bug Fixes

🧰 Maintenance

  • #4817 chore: remove unecessary cast (@pollend)
  • #4815 chore(rendering): cleanup and remove deprecated glDisabled (@pollend)
  • #4809 refactor(GameState): extract common code from MainMenu and HeadlessSetup (@keturn)
  • #4804 chore: remove url check when updating repositories (@pollend)

🐢 Performance

  • #4825 perf: remove extra locking in pipeline to avoid thread contention (@pollend)
  • #4821 perf: remove extra length prepend (@pollend)
  • #4820 perf(network): replace de-/inflate with lz4 for both directions (@pollend)
  • #4814 perf: avoid calling GLFW.glfwGetWindowSize (@pollend)

🧪 Tests

  • #4830 test: deprecate WorldProvidingHeadlessEnvironment (@keturn)

⚙️ Logistics

  • #4812 build: avoid transitive dependency on org.reflections (@keturn)

Module Changes

🚀 Features

Terasology/BiomesAPI#17 feat: restore biome-based grass and foliage tinting (@tolziplohu)
Terasology/CoreRendering#68 feat: restore biome-based grass and foliage tinting (@tolziplohu)
Terasology/CoreWorlds#41 feat: restore biome-based grass and foliage tinting (@tolziplohu)
Terasology/FlowingLiquids#35 feat: add support for biome-based block tinting (@tolziplohu)
Terasology/GenericRocks#3 feat: update sandstone and slate textures (@tolziplohu)
Terasology/Inventory#45 feat: add inventory screen titles (@jdrueckert)
Terasology/LightAndShadow#226 feat: use item activation (right click) for magic staff (@skaldarnar)
Terasology/LightAndShadow#229 feat: face opponents base on spawn (@ahv15)
Terasology/LightAndShadow#230 feat: use cards for defense (@ahv15)
Terasology/LightAndShadowResources#70 feat: add range to magic staff (@skaldarnar)
Terasology/ManualLabor#50 feat: Add shearing system (@meetcshah19)
Terasology/ManualLabor#51 feat: add wool item drop (@meetcshah19)
Terasology/ManualLabor#52 feat: add Durability and assembly process for CrudeShears (@meetcshah19)
Terasology/ManualLabor#54 feat: add particle effect and shearing sound (@meetcshah19)
Terasology/MetalRenegades#150 feat: rock strata in rocky biome (@tolziplohu)
Terasology/MetalRenegades#155 feat: variable-size mesas based on noise (@tolziplohu)
Terasology/MetalRenegades#158 feat: add world preview colors for new biomes (@tolziplohu)
Terasology/MetalRenegades#159 feat: shallower or completely dry rivers in drier areas (@tolziplohu)
Terasology/MetalRenegades#160 feat: block tinting support for MR biomes and dry grass in scrublands (@tolziplohu)
Terasology/ModuleTestingEnvironment#58 feat!: load only modules listed as dependencies, not all in modules/ (@keturn)

🐛 Bug Fixes

Terasology/BiomesAPI#16 fix: add initialize() method to Biome (@tolziplohu)
Terasology/CombatSystem#81 fix: picking up weapons (@ahv15)
Terasology/CoreWorlds#39 fix: move block caching to Biome.initialize (@tolziplohu)
Terasology/Furnishings#13 fix: incorrect placement of doors (@ahv15)
Terasology/Health#96 fix: only render damage overlay on client receiving damage (@skaldarnar)
Terasology/LightAndShadow#216 fix: update surfaces facet to prevent tree's in certain locations (@ahv15)
Terasology/LightAndShadow#223 fix: move block caching out of static initializer (@tolziplohu)
Terasology/ManualLabor#53 fix: increase attack event priority and consume it (@meetcshah19)
Terasology/ManualLabor#57 fix: Consume event only when shearing (@meetcshah19)
Terasology/ManualLabor#58 fix: particle effect in multiplayer (@meetcshah19)
Terasology/MetalRenegades#154 fix: move block caching to Biome.initialize (@tolziplohu)
Terasology/MetalRenegades#157 fix: clamp steepness to avoid inverted rivers (@tolziplohu)
Terasology/Minimap#30 fix: use correct tile size for minimap grid (@tolziplohu)
Terasology/ModuleTestingEnvironment#62 fix: docs link on README.md (@jdrueckert)
Terasology/SimpleFarming#117 fix(#116): Hard crash destroying Joshaberry Bush due to missing berryseed. (@NicolaasJKotze)
Terasology/WildAnimals#85 fix: play animal damage sounds for all clients (@skaldarnar)

🧰 Maintenance

Terasology/CoreAdvancedAssets#5 chore: add display name to chest prefab (@jdrueckert)
Terasology/DynamicCities#101 chore(BlockBufferSystem): reduce log spam (@skaldarnar)
Terasology/JoshariasSurvival#73 chore: remove obsolete itemPickup delta (@jdrueckert)
Terasology/LightAndShadowResources#73 chore: Adjust for changes in #4818 (@skaldarnar)
Terasology/ModuleTestingEnvironment#59 chore: set scenario properties in the Config (@keturn)

🧪 Tests

Terasology/ManualLabor#59 test: Add shearing system tests (@meetcshah19)
Terasology/NameGenerator#34 test: port to ModuleTestingEnvironment, replacing NameGeneratorTestingEnvironment (@keturn)
Terasology/Pathfinding#64 test: port to ModuleTestingEnvironment from HeadlessEnvironment (@keturn)
Terasology/Rails#87 test: re-enable tests with the current MTE version (@keturn)

📚 Documentation

Terasology/LightAndShadow#221 doc: add documentation (@ahv15)