
SmartBrainLib
A brain library for Minecraft, making the brain system easier to use and manage
4.8M
288
Changelog
Version
1.17
Changes
API
- Performed a general cleanup across the entire mod, bringing it in line with modern modding practices
- Added
SmartBrainBuilderand extracted the various Brain-construction methods to it.SmartBrainOwnerextends it by default, but extracting it now means you can have an external class contain your AI implementation if wanted with minimal additional effort - Added
BehaviourUtil- a helper class forBehaviorControlrelated methods - Added
ExtendedBehaviour#tryExpire- a method to allow for graceful expiration of behaviours when switchingActivities - Added
ExtendedSensor#onlyScanIf- an optional condition for sensors to only scan if the condition is met - Users no longer need to tick the brain, SBL ticks it automatically for you (unless you override
customServerAIStepin yourmob) - Users no longer need to return a
SmartBrainProviderorSmartBraininstance in your entity class. SBL creates it automatically for you - Moved over to Jspecify's Nullability annotations per the new industry standard. See [here][https://jspecify.dev] for more information
- Renamed
SBLLoadertoSBLPlatform - Renamed
SBLConstants#LOADERtoSBLConstants#PLATFORM - Removed
EntityRetrievalUtil#streamEntities- Its benefits just weren't worth the confusion it caused - Removed
EntityRetrievalUtil#findEntities- It only served to offer a 'max' entity short-circuit, which has now been built into the other methods - Removed
BrainUtil#forEachBehaviour - Changed
GroupBehaviour#getBehavioursfrom anIteratorto anIterable - Added
BrainBehaviourPredicate#isChildOfBehaviourhelper method - Renamed the
net.tslat.smartbrainlib.objectpackage tonet.tslat.smartbrainlib.library.object - Moved
BrainBehaviourConsumer,BrainBehaviourPredicate,ToFloatBiFunction, andTriPredicatetonet.tslat.smartbrainlib.library.interfaces - Made
ExtendedTargetingConditionsextendBiPredicate - Renamed
FreePositionTrackertoExactPositionTracker - Renamed
MemoryTest#hasNoMemoriestoMemoryTest#noMemories - Renamed
MemoryTest#builder(int)toMemoryTest#sized(int) - Renamed
BrainActivityGrouptoActivityBuilder - Renamed
EntityFilteringSensortoNearestVisibleEntityFilteredSensor - Renamed the generic
Ttype across all of SBL's brain-related classes toBOfor consistent and clear type understanding - Bubbled up polymorphic overloads of self-returning methods across behaviours and sensors
- Ensured consistency of generic type ordering across all of SBL's brain-related classes
Internal
- Greatly improved the Javadocs in
EntityRetrievalUtil - Converted all Javadocs to Markdown, per Java 25's new standard
- Reorganised the boilerplate/example code
- Added
package-infodeclarations to each package for more consistent and cleaner API usage - Significantly overhauled the Javadocs across the entire mod
- General code cleanup and improvements
- Implemented pre-collapsed code sections for boilerplate code, to further improve code clarity
Changelog
Version
1.17
Changes
API
- Performed a general cleanup across the entire mod, bringing it in line with modern modding practices
- Added
SmartBrainBuilderand extracted the various Brain-construction methods to it.SmartBrainOwnerextends it by default, but extracting it now means you can have an external class contain your AI implementation if wanted with minimal additional effort - Added
BehaviourUtil- a helper class forBehaviorControlrelated methods - Added
ExtendedBehaviour#tryExpire- a method to allow for graceful expiration of behaviours when switchingActivities - Added
ExtendedSensor#onlyScanIf- an optional condition for sensors to only scan if the condition is met - Users no longer need to tick the brain, SBL ticks it automatically for you (unless you override
customServerAIStepin yourmob) - Users no longer need to return a
SmartBrainProviderorSmartBraininstance in your entity class. SBL creates it automatically for you - Moved over to Jspecify's Nullability annotations per the new industry standard. See [here][https://jspecify.dev] for more information
- Renamed
SBLLoadertoSBLPlatform - Renamed
SBLConstants#LOADERtoSBLConstants#PLATFORM - Removed
EntityRetrievalUtil#streamEntities- Its benefits just weren't worth the confusion it caused - Removed
EntityRetrievalUtil#findEntities- It only served to offer a 'max' entity short-circuit, which has now been built into the other methods - Removed
BrainUtil#forEachBehaviour - Changed
GroupBehaviour#getBehavioursfrom anIteratorto anIterable - Added
BrainBehaviourPredicate#isChildOfBehaviourhelper method - Renamed the
net.tslat.smartbrainlib.objectpackage tonet.tslat.smartbrainlib.library.object - Moved
BrainBehaviourConsumer,BrainBehaviourPredicate,ToFloatBiFunction, andTriPredicatetonet.tslat.smartbrainlib.library.interfaces - Made
ExtendedTargetingConditionsextendBiPredicate - Renamed
FreePositionTrackertoExactPositionTracker - Renamed
MemoryTest#hasNoMemoriestoMemoryTest#noMemories - Renamed
MemoryTest#builder(int)toMemoryTest#sized(int) - Renamed
BrainActivityGrouptoActivityBuilder - Renamed
EntityFilteringSensortoNearestVisibleEntityFilteredSensor - Renamed the generic
Ttype across all of SBL's brain-related classes toBOfor consistent and clear type understanding - Bubbled up polymorphic overloads of self-returning methods across behaviours and sensors
- Ensured consistency of generic type ordering across all of SBL's brain-related classes
Internal
- Greatly improved the Javadocs in
EntityRetrievalUtil - Converted all Javadocs to Markdown, per Java 25's new standard
- Reorganised the boilerplate/example code
- Added
package-infodeclarations to each package for more consistent and cleaner API usage - Significantly overhauled the Javadocs across the entire mod
- General code cleanup and improvements
- Implemented pre-collapsed code sections for boilerplate code, to further improve code clarity
Changelog
Version
1.17
Changes
API
- Performed a general cleanup across the entire mod, bringing it in line with modern modding practices
- Added
SmartBrainBuilderand extracted the various Brain-construction methods to it.SmartBrainOwnerextends it by default, but extracting it now means you can have an external class contain your AI implementation if wanted with minimal additional effort - Added
BehaviourUtil- a helper class forBehaviorControlrelated methods - Added
ExtendedBehaviour#tryExpire- a method to allow for graceful expiration of behaviours when switchingActivities - Added
ExtendedSensor#onlyScanIf- an optional condition for sensors to only scan if the condition is met - Users no longer need to tick the brain, SBL ticks it automatically for you (unless you override
customServerAIStepin yourmob) - Users no longer need to return a
SmartBrainProviderorSmartBraininstance in your entity class. SBL creates it automatically for you - Moved over to Jspecify's Nullability annotations per the new industry standard. See [here][https://jspecify.dev] for more information
- Renamed
SBLLoadertoSBLPlatform - Renamed
SBLConstants#LOADERtoSBLConstants#PLATFORM - Removed
EntityRetrievalUtil#streamEntities- Its benefits just weren't worth the confusion it caused - Removed
EntityRetrievalUtil#findEntities- It only served to offer a 'max' entity short-circuit, which has now been built into the other methods - Removed
BrainUtil#forEachBehaviour - Changed
GroupBehaviour#getBehavioursfrom anIteratorto anIterable - Added
BrainBehaviourPredicate#isChildOfBehaviourhelper method - Renamed the
net.tslat.smartbrainlib.objectpackage tonet.tslat.smartbrainlib.library.object - Moved
BrainBehaviourConsumer,BrainBehaviourPredicate,ToFloatBiFunction, andTriPredicatetonet.tslat.smartbrainlib.library.interfaces - Made
ExtendedTargetingConditionsextendBiPredicate - Renamed
FreePositionTrackertoExactPositionTracker - Renamed
MemoryTest#hasNoMemoriestoMemoryTest#noMemories - Renamed
MemoryTest#builder(int)toMemoryTest#sized(int) - Renamed
BrainActivityGrouptoActivityBuilder - Renamed
EntityFilteringSensortoNearestVisibleEntityFilteredSensor - Renamed the generic
Ttype across all of SBL's brain-related classes toBOfor consistent and clear type understanding - Bubbled up polymorphic overloads of self-returning methods across behaviours and sensors
- Ensured consistency of generic type ordering across all of SBL's brain-related classes
Internal
- Greatly improved the Javadocs in
EntityRetrievalUtil - Converted all Javadocs to Markdown, per Java 25's new standard
- Reorganised the boilerplate/example code
- Added
package-infodeclarations to each package for more consistent and cleaner API usage - Significantly overhauled the Javadocs across the entire mod
- General code cleanup and improvements
- Implemented pre-collapsed code sections for boilerplate code, to further improve code clarity
No changelog was specified.
No changelog was specified.
No changelog was specified.
No changelog was specified.
No changelog was specified.
No changelog was specified.
No changelog was specified.
No changelog was specified.
1
...Совместимость
Авторы
Сведения
Лицензия:
Опубликован:3 года назад
Обновлён:1 месяц назад
ID проекта: