tslat / smartbrainlib Goto Github PK
View Code? Open in Web Editor NEWA smart brain library for Minecraft mods.
License: Mozilla Public License 2.0
A smart brain library for Minecraft mods.
License: Mozilla Public License 2.0
See: shouldKeepRunning & stop
MC version 1.16.5; forge version 36.2.26; Smart Brain version 1.2
Crash log: https://pastebin.com/GBW4TMpk
Compatibility level set to JAVA_17
00:49:52.945
launcher
main
Exception in thread "main" org.spongepowered.asm.launch.MixinInitialisationError: Error initialising mixin config smartbrainlib.mixins.json
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.Config.create(Config.java:153)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.Mixins.createConfiguration(Mixins.java:100)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.Mixins.addConfiguration(Mixins.java:87)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformManager.addConfig(MixinPlatformManager.java:262)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformAgentDefault.prepare(MixinPlatformAgentDefault.java:46)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinContainer.prepare(MixinContainer.java:122)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformManager.createContainerFor(MixinPlatformManager.java:144)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformManager.addContainer(MixinPlatformManager.java:134)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformManager.addNestedContainers(MixinPlatformManager.java:152)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformManager.scanForContainers(MixinPlatformManager.java:213)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformManager.inject(MixinPlatformManager.java:186)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.MixinBootstrap.inject(MixinBootstrap.java:202)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.MixinLaunchPluginLegacy.initializeLaunch(MixinLaunchPluginLegacy.java:201)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.MixinLaunchPlugin.initializeLaunch(MixinLaunchPlugin.java:34)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchPluginHandler.lambda$announceLaunch$11(LaunchPluginHandler.java:100)
at java.base/java.util.HashMap.forEach(HashMap.java:1421)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchPluginHandler.announceLaunch(LaunchPluginHandler.java:100)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:51)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.run(Launcher.java:106)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.main(Launcher.java:77)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23)
at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:149)
Caused by: java.lang.IllegalArgumentException: The specified resource 'smartbrainlib.mixins.json' was invalid or could not be read
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinConfig.create(MixinConfig.java:1282)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.Config.create(Config.java:148)
... 23 more
00:49:52.946
monitor
Process Monitor
Process crashed with exit code 1
Hello,
When trying to make a mob acting as a pack i got an issue with the TargetOrRetaliate behaviour causing a NullPointerException when using alertAlliesWhen set on always true.
Here is the crash report.
crash-2023-07-16_01.55.32-server.txt
And here is how i use it in my entity:
After installing the mod for the latest MC 1.21, the game crash
Minecraft Version1.21
Forge 51.0.8
SmartBrainLib-forge-1.21-1.14.2
No crash log report.
Smartbrainlib started crashing my game. I was able to fix the issue by downgrading the mod to a previous version, however, please fix this so no-one else will have this issue
thanks!
latest.log
SetWalkTargetToAttackTarget -> AnimatableMeleeAttack fails to do the delayed hurt
I use Flemmli97's DebugUtils, which re-enables the vanilla debug renderers, to help with in-game debugging of Brains. When reading which behaviors are currently running, any instance of GroupBehavior
does not provide any more information beyond the name of the GroupBehavior
sub-class.
If you override BehaviorControl#debugString
in GroupBehavior
, you can format the debug string to not only provide the name of the GroupBehavior
sub-class, but the debug strings of the currently running behaviors. This can help diagnose which of the sub-behaviors of a GroupBehavior
are currently running when the vanilla debug renderer is re-enabled.
Example:
@Override public String debugString() { Set<String> runningBehaviors = this.behaviours.stream() .filter((behaviour) -> behaviour.getStatus() == Behavior.Status.RUNNING) .map(BehaviorControl::debugString) .collect(Collectors.toSet()); String name = this.getClass().getSimpleName(); return "(" + name + "): " + String.join(",", runningBehaviors); }
Will 1.19.2 receive feature updates or only 1.19.3?
In my mods I currently support 1.18.2, 1.19.2, and 1.19.3.
I am considering to slowly migrate my AI towards SBL and would like to plan ahead which versions to cherry-pick the related commits over. It seems in the 1.19.3 upgrade commit a variety of utilities was added that is missing from 1.19.2.
Can you shed some light?
Much appreciated!
The Wiki page seems to be heavily outdated.
Trying to follow it leads to errors about the overridable brainProvider
method missing, and all of the example projects are outdated as well (last changes were done a year ago)
It's already a daunting enough task as a beginner trying to base my mod on a sorta obscure library. Not having any up to date documentation for it as well is terrifying.
Making the first ritual in Occultism
crash-2024-04-10_20.33.30-client.txt
I have been testing my Fabric mods with Sinytra Connector and noticed it crashes with the Fabric version. The workaround has been to use the Forge version with no issues in my SBL-powered mods.
Issue reported to Sinytra here: Sinytra/Connector#232
I just thought I'd share it here in case other users report issues.
I was trying to use AllApplicableBehaviors
as a way to create a simple sublist of behaviors when adding behaviors to a BehaviorActivityGroup
, expecting all tasks to not only start, but tick as well per the documentation. This was not the case - for example, using BreedWithPartner
as a sub-listed behavior, which ticks continously until breeding is complete, the tick method is never called. This suggests that any instance of AllApplicableBehaviors
is never ticked.
I looked into the source and noticed this in AllApplicableBehaviors#doStartCheck
:
return (this.runningBehaviour = pickBehaviour(level, entity, gameTime, this.behaviours)) != null;
runningBehavior
has to be set to a non-null value for AllApplicableBehaviors#doStartCheck
to return true and tick the running behaviors. However, in AllApplicableBehaviors#pickBehavior
, it always returns null after starting all the behaviors.
My suggestion is to actually return any of the successfully started behaviors in AllApplicableBehaviors#pickBehavior
so that runningBehavior
is set to a non-null value and AllApplicableBehaviors#doStartCheck
can actually return true, allowing the ticking of the started sub behaviors. runningBehavior
is effectively no-op'd per the implementation of AllApplicableBehaviors
so it shouldn't have adverse effects with a set value.
Example:
ExtendedBehaviour<? super E> running = null; for (ExtendedBehaviour<? super E> behaviour : extendedBehaviours) { if(behaviour.tryStart(level, entity, gameTime)){ running = behaviour; } } return running;
klikli-dev/occultism#992
SmartBrainLib-forge-1.20.1-1.12
Should be return level.noCollision(entity, entity.getBoundingBox().move(Vec3.atBottomCenterOf(statePos).subtract(entity.position())));
Current implementation calculates difference between targetentity pos and targetblock pos, which is not what the brain mob's pos is moving through
Details and crash log are here:
klikli-dev/occultism#1029
Error using SmartBrainLib 1.12
on Minecraft 1.20.4
with Fabric 0.91.1
: Namespace (named) does not match current runtime namespace (intermediary). Details:
java.lang.RuntimeException: Failed to read accessWidener file from mod smartbrainlib
at net.fabricmc.loader.impl.FabricLoaderImpl.loadAccessWideners(FabricLoaderImpl.java:514)
at net.fabricmc.loader.impl.launch.knot.Knot.init(Knot.java:149)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:68)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:87)
at org.prismlauncher.EntryPoint.listen(EntryPoint.java:130)
at org.prismlauncher.EntryPoint.main(EntryPoint.java:70)
Caused by: net.fabricmc.loader.impl.lib.accesswidener.AccessWidenerFormatException: line 1: Namespace (named) does not match current runtime namespace (intermediary)
at net.fabricmc.loader.impl.lib.accesswidener.AccessWidenerReader.error(AccessWidenerReader.java:285)
at net.fabricmc.loader.impl.lib.accesswidener.AccessWidenerReader.read(AccessWidenerReader.java:84)
at net.fabricmc.loader.impl.FabricLoaderImpl.loadAccessWideners(FabricLoaderImpl.java:512)
... 6 more
Mods installed:
[17:00:02] [main/INFO]: Loading Minecraft 1.20.4 with Fabric Loader 0.15.1
[17:00:02] [main/INFO]: Loading 128 mods:
- areas 5.2
- badpackets 0.5.4
- better_end_sky 0.2.1+1.20
- collective 7.13
- detailab 2.6.3+1.20.4-fabric
- durabilitytooltip 1.1.5
- dynamic_fps 3.2.1
- dynamiccrosshair 7.6+1.20.3
\-- yaclx 1.10+1.20
- entity_model_features 1.2
- entity_texture_features 5.0
\-- org_apache_httpcomponents_httpmime 4.5.10
- fabric-api 0.91.1+1.20.4
|-- fabric-api-base 0.4.34+f31bf88132
|-- fabric-api-lookup-api-v1 1.6.44+9468a19d32
|-- fabric-biome-api-v1 13.0.14+9468a19d32
|-- fabric-block-api-v1 1.0.13+73761d2e32
|-- fabric-block-view-api-v2 1.0.2+73761d2e32
|-- fabric-blockrenderlayer-v1 1.1.44+f4b7e42432
|-- fabric-client-tags-api-v1 1.1.5+86b1264532
|-- fabric-command-api-v1 1.2.39+f71b366f32
|-- fabric-command-api-v2 2.2.18+23e8616e32
|-- fabric-commands-v0 0.2.56+df3654b332
|-- fabric-containers-v0 0.1.80+df3654b332
|-- fabric-content-registries-v0 5.0.8+9468a19d32
|-- fabric-convention-tags-v1 1.5.8+9468a19d32
|-- fabric-crash-report-info-v1 0.2.21+f4b7e42432
|-- fabric-data-generation-api-v1 13.1.16+1b2a41bc32
|-- fabric-dimensions-v1 2.1.59+a2e8758a32
|-- fabric-entity-events-v1 1.5.26+9468a19d32
|-- fabric-events-interaction-v0 0.6.13+9468a19d32
|-- fabric-events-lifecycle-v0 0.2.70+df3654b332
|-- fabric-game-rule-api-v1 1.0.44+6f7ba8f232
|-- fabric-item-api-v1 2.1.33+9468a19d32
|-- fabric-item-group-api-v1 4.0.19+f6e85ac232
|-- fabric-key-binding-api-v1 1.0.39+f4b7e42432
|-- fabric-keybindings-v0 0.2.37+df3654b332
|-- fabric-lifecycle-events-v1 2.2.28+9468a19d32
|-- fabric-loot-api-v2 2.1.3+6f9f09e032
|-- fabric-message-api-v1 6.0.3+ebb1549632
|-- fabric-mining-level-api-v1 2.1.58+f4b7e42432
|-- fabric-model-loading-api-v1 1.0.6+9468a19d32
|-- fabric-models-v0 0.4.5+9386d8a732
|-- fabric-networking-api-v1 3.1.1+901470e432
|-- fabric-object-builder-api-v1 13.0.6+a2e8758a32
|-- fabric-particles-v1 1.1.5+f4b7e42432
|-- fabric-recipe-api-v1 2.0.14+23e8616e32
|-- fabric-registry-sync-v0 4.0.12+9468a19d32
|-- fabric-renderer-api-v1 3.2.2+2034447c32
|-- fabric-renderer-indigo 1.5.2+2034447c32
|-- fabric-renderer-registries-v1 3.2.49+df3654b332
|-- fabric-rendering-data-attachment-v1 0.3.40+73761d2e32
|-- fabric-rendering-fluids-v1 3.0.31+f4b7e42432
|-- fabric-rendering-v0 1.1.52+df3654b332
|-- fabric-rendering-v1 3.0.11+9468a19d32
|-- fabric-resource-conditions-api-v1 2.3.12+de5c6cca32
|-- fabric-resource-loader-v0 0.11.14+f31bf88132
|-- fabric-screen-api-v1 2.0.15+f6e85ac232
|-- fabric-screen-handler-api-v1 1.3.49+9468a19d32
|-- fabric-sound-api-v1 1.0.15+f4b7e42432
|-- fabric-transfer-api-v1 4.0.5+aaf9c96932
\-- fabric-transitive-access-wideners-v1 5.0.12+1b2a41bc32
- fabric-language-kotlin 1.10.16+kotlin.1.9.21
|-- org_jetbrains_kotlin_kotlin-reflect 1.9.21
|-- org_jetbrains_kotlin_kotlin-stdlib 1.9.21
|-- org_jetbrains_kotlin_kotlin-stdlib-jdk7 1.9.21
|-- org_jetbrains_kotlin_kotlin-stdlib-jdk8 1.9.21
|-- org_jetbrains_kotlinx_atomicfu-jvm 0.23.1
|-- org_jetbrains_kotlinx_kotlinx-coroutines-core-jvm 1.7.3
|-- org_jetbrains_kotlinx_kotlinx-coroutines-jdk8 1.7.3
|-- org_jetbrains_kotlinx_kotlinx-datetime-jvm 0.4.1
|-- org_jetbrains_kotlinx_kotlinx-serialization-cbor-jvm 1.6.2
|-- org_jetbrains_kotlinx_kotlinx-serialization-core-jvm 1.6.2
\-- org_jetbrains_kotlinx_kotlinx-serialization-json-jvm 1.6.2
- fabricloader 0.15.1
\-- mixinextras 0.3.1
- fusion 1.1.0+c
- geckolib 4.3.1
\-- com_eliotlash_mclib_mclib 20
- immediatelyfast 1.2.8+1.20.4
\-- net_lenni0451_reflect 1.3.1
- iris 1.6.13
|-- io_github_douira_glsl-transformer 2.0.0-pre13
|-- org_anarres_jcpp 1.4.14
\-- org_antlr_antlr4-runtime 4.11.1
- jade 13.1.0
- java 21
- languagereload 1.5.10+1.20.3
- midnightlib 1.5.1
- minecraft 1.20.4
- modernfix 5.10.0+mc1.20.3
\-- mixinextras 0.3.1
- modmenu 9.0.0-pre.1
- nochatreports 1.20.4-v2.5.0
|-- fabric-api-base 0.4.34+f31bf88132
|-- fabric-networking-api-v1 3.1.1+901470e432
|-- fabric-rendering-v1 3.0.11+9468a19d32
|-- fabric-resource-loader-v0 0.11.14+f31bf88132
\-- fabric-screen-api-v1 2.0.15+f6e85ac232
- polymer-bundled 0.7.1+1.20.4
|-- polymer-autohost 0.7.1+1.20.4
|-- polymer-blocks 0.7.1+1.20.4
|-- polymer-common 0.7.1+1.20.4
| \-- packet_tweaker 0.5.0+1.20.2-rc1
|-- polymer-core 0.7.1+1.20.4
| |-- polymer-networking 0.7.1+1.20.4
| | \-- polymer-common 0.7.1+1.20.4
| | \-- packet_tweaker 0.5.0+1.20.2-rc1
| \-- polymer-registry-sync-manipulator 0.7.1+1.20.4
|-- polymer-resource-pack 0.7.1+1.20.4
| \-- polymer-common 0.7.1+1.20.4
| \-- packet_tweaker 0.5.0+1.20.2-rc1
\-- polymer-virtual-entity 0.7.1+1.20.4
\-- polymer-common 0.7.1+1.20.4
\-- packet_tweaker 0.5.0+1.20.2-rc1
- randomvillagenames 3.4
- reeses-sodium-options 1.7.0+mc1.20.2-build.97
- repurposed_structures 7.2.2+1.20.3-fabric
- smartbrainlib 1.12
- sodium 0.5.4
- sodium-extra 0.5.3+mc1.20.2-build.114
|-- caffeineconfig 1.3.0+1.17
\-- crowdin-translate 1.4+1.19.3
- supermartijn642configlib 1.1.8+a
- terrablender 3.3.0.3
|-- com_electronwill_night-config_core 3.6.7
\-- com_electronwill_night-config_toml 3.6.7
- terralith 2.4.11
- treeharvester 8.3
- villagernames 7.1
- wi_zoom 1.5-MC1.20.4
- yet_another_config_lib_v3 3.3.1+1.20.4
|-- com_twelvemonkeys_common_common-image 3.10.0
|-- com_twelvemonkeys_common_common-io 3.10.0
|-- com_twelvemonkeys_common_common-lang 3.10.0
|-- com_twelvemonkeys_imageio_imageio-core 3.10.0
|-- com_twelvemonkeys_imageio_imageio-metadata 3.10.0
|-- com_twelvemonkeys_imageio_imageio-webp 3.10.0
|-- org_quiltmc_parsers_gson 0.2.1
\-- org_quiltmc_parsers_json 0.2.1
- zombiehorsespawn 4.7
Noticed this in InvalidateAttackTarget#invalidateIf
. Also present in InvalidateMemory
LookAtTarget
overrides Behavior#timedOut
, which means you cannot set it to run for a set duration before terminating via ExtendedBehavior#runFor
.
In my personal use-case, I was attempting to make LookAtTarget
work more like vanilla's LookAtTargetSink
, as I was having issues with a mob never changing its look target through idle look behaviors predicated on the absence of a look target. Given the example of SBLSkeleton
, which sets a runtime duration for its LookAtTarget
via runFor
, I expected that would help fix my issue, before investigating the source and seeing the method override. I had to resort to making a new version of LookAtTarget
that allowed timing out.
There are a handful of other stock behaviors provided by this mod that override timedOut
to return false, which effectively no-ops runFor
for them. A suggestion would be to introduce a couple of builder methods in ExtendedBehavior
to disable and enable timing out, changing a boolean field that handles calling super.timedOut
in ExtendedBehavior#timedOut
. You can then call the disable method in the constructors of these stock behaviors intended to not time out by default. This would allow devs such as myself to re-enable timing out after instantiating one of these stock behaviors.
There's no deserialization.
SBL version: 1.13
Minecraft version: 1.20.1
The last condition in this line is wrong https://github.com/Tslat/SmartBrainLib/blob/1.20.4/Common/src/main/java/net/tslat/smartbrainlib/api/core/behaviour/custom/target/SetRetaliateTarget.java#L38
It should be using the owner's memory, not the ally (who has not been hurt and does not have this memory).
Hi,
Could you perhaps build the NeoForge package for 1.20.2 with the new loader version?
I can only see the 1.20.1 and 1.20.4 here https://cloudsmith.io/~tslat/repos/sbl/groups/
For 1.20.1 I am running into the loader version reset issue, and for 1.20.4 i would have to update again.
Let me know if i can help.
BreakBlock behavior has this code
@OverRide
protected boolean shouldKeepRunning(E entity) {
return entity.level.getGameTime() <= this.breakTime && this.targetBlockPredicate.test(entity, this.pos, entity.level.getBlockState(this.pos)) && !this.stopPredicate.test(entity, this.pos, this.state);
}
Which returns "false" by default, because <= this.breakTime is set to 0, and entity.level.getGameTime() is greater then 0 pretty much all the time.
This causes the entity to instantly stop using the behavior, and not be able to break any blocks.
The Maven repository given in the “Getting Started” page of the wiki (https://dl.cloudsmith.io/public/tslat/sbl/maven/
) no longer exists. Has it moved elsewhere?
Hello!
I'm building a custom villager profession which should act in a particular way and stumbed upon the Brain / Activity / Task system. Or at least at its definition building (VillagerTaskListProvider anyone?). I highly suspect an intern wrote that code, due to the extreme cyclomatic complexity. I searched documentation around the entire net (using Fabric), but found literally NONE.
That's when I fuond out this library. Now the question is: can I use this lib in order to specify a particular behavior of a villager with a particular profession, or should I replace the villager behavior all at once? (I hope for the former...).
Currently I'm injecting an (empty) list of tasks using a mixin on the VillagerTaskListProvider::createWorkTasks
method.
Thanks 👍
When you set an expirable memory while there's an existing value, the SmartBrain does not check for duplicate entries and adds another instance of it, causing it to tick down multiple times every tick
Caused by SmartBrain.setMemoryInternal:
@Override
public <U> void setMemoryInternal(MemoryModuleType<U> memoryType, Optional<? extends ExpirableValue<?>> memory) {
if (memory.isPresent() && memory.get().getValue()instanceof Collection<?> collection && collection.isEmpty())
memory = Optional.empty();
this.memories.put(memoryType, memory);
if (memory.isPresent() && memory.get().canExpire()) //This does not check if the memory already exists in expirableMemories
this.expirableMemories.add(memoryType);
}
mc 1.20.1
Forge 47.1.3
mod: smartbrainlib-forge-1.20.1-1.12.jar
not sure what happened? either you purposely uploaded the wrong mod file or were unaware that anything above forge 47.1.3 was currently broken beyond repair. but the latest update is calling for forge 47.1.4x instead of 47.1.3. just giving you a heads up. I had to downgrade to get it working again.
Hi.
I noticed the following crash while upgrading Occultism (which now depends on SmartBrainLib).
Exception caught from launcher
java.lang.reflect.InvocationTargetException
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at io.github.zekerzhayard.forgewrapper.installer.Main.main(Main.java:57)
at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:88)
at org.prismlauncher.EntryPoint.listen(EntryPoint.java:126)
at org.prismlauncher.EntryPoint.main(EntryPoint.java:71)
Caused by: java.lang.module.ResolutionException: Modules forgebrainlib and smartbrainlib export package net.tslat.smartbrainlib to module modularrouters
at java.base/java.lang.module.Resolver.resolveFail(Resolver.java:901)
at java.base/java.lang.module.Resolver.failTwoSuppliers(Resolver.java:815)
at java.base/java.lang.module.Resolver.checkExportSuppliers(Resolver.java:736)
at java.base/java.lang.module.Resolver.finish(Resolver.java:380)
at java.base/java.lang.module.Configuration.<init>(Configuration.java:140)
at java.base/java.lang.module.Configuration.resolveAndBind(Configuration.java:494)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.ModuleLayerHandler.buildLayer(ModuleLayerHandler.java:75)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.TransformationServicesHandler.buildTransformingClassLoader(TransformationServicesHandler.java:60)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.run(Launcher.java:104)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.main(Launcher.java:77)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23)
at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141)
... 8 more
Exiting with ERROR
Process exited with code 2.
I currently don't have any further information on this and have reverted back to an older version of Occultism until I have an idea of what is causing this problem.
Log:
WARN StatusConsoleListener The use of package scanning to locate plugins is deprecated and will be removed in a future release
WARN StatusConsoleListener The use of package scanning to locate plugins is deprecated and will be removed in a future release
WARN StatusConsoleListener The use of package scanning to locate plugins is deprecated and will be removed in a future release
[23:39:13.818] [main/INFO] [Launcher/MODLAUNCHER]: ModLauncher running: args [--launchTarget, forgeclientuserdev, --version, 21.0.6-beta, --assetIndex, asset-index, --assetsDir, C:\Users\Collin\.gradle\caches\minecraft\assets\1.21, --gameDir, ., --fml.neoForgeVersion, 21.0.6-beta, --fml.fmlVersion, 4.0.1, --fml.mcVersion, 1.21, --fml.neoFormVersion, 20240613.152323]
[23:39:13.820] [main/INFO] [Launcher/MODLAUNCHER]: JVM identified as Amazon.com Inc. OpenJDK 64-Bit Server VM 21.0.3+9-LTS
[23:39:13.822] [main/INFO] [Launcher/MODLAUNCHER]: ModLauncher 11.0.2+main.4612c65f starting: java version 21.0.3 by Amazon.com Inc.; OS Windows 10 arch amd64 version 10.0
[23:39:13.919] [main/INFO] [loading.ImmediateWindowHandler/]: Loading ImmediateWindowProvider fmlearlywindow
[23:39:13.993] [main/INFO] [EARLYDISPLAY/]: Trying GL version 4.6
[23:39:14.182] [main/INFO] [EARLYDISPLAY/]: Requested GL version 4.6 got version 4.6
[23:39:14.242] [main/INFO] [mixin/]: SpongePowered MIXIN Subsystem Version=0.8.5 Source=union:/C:/Users/Collin/.gradle/caches/modules-2/files-2.1/net.fabricmc/sponge-mixin/0.13.4+mixin.0.8.5/8adf0cff1795a169141b9e16ad7b9f6e2527a990/sponge-mixin-0.13.4+mixin.0.8.5.jar%23136!/ Service=ModLauncher Env=CLIENT
[23:39:14.429] [pool-2-thread-1/INFO] [EARLYDISPLAY/]: GL info: NVIDIA GeForce GTX 1070/PCIe/SSE2 GL version 4.6.0 NVIDIA 551.23, NVIDIA Corporation
[23:39:14.492] [main/INFO] [loading.moddiscovery.ModDiscoverer/SCAN]: Found mod file "neoforge-21.0.6-beta.jar" [locator: neoforge devenv provider ([C:\Users\Collin\Documents\GitHub\New-World\.gradle\repositories\ng_dummy_ng\net\neoforged\neoforge\21.0.6-beta\neoforge-21.0.6-beta.jar])]
[23:39:14.501] [main/INFO] [loading.moddiscovery.ModDiscoverer/SCAN]: Found mod file "neoforge-21.0.6-beta.jar" [locator: neoforge devenv provider ([C:\Users\Collin\Documents\GitHub\New-World\.gradle\repositories\ng_dummy_ng\net\neoforged\neoforge\21.0.6-beta\neoforge-21.0.6-beta.jar])]
[23:39:14.509] [main/INFO] [loading.moddiscovery.ModDiscoverer/SCAN]: Found mod file "main" [locator: userdev mods and services, reader: mod manifest]
[23:39:14.517] [main/INFO] [loading.moddiscovery.ModDiscoverer/SCAN]: Found mod file "neoforge-21.0.6-beta.jar" [locator: userdev mods and services, reader: mod manifest]
[23:39:14.521] [main/INFO] [loading.moddiscovery.ModDiscoverer/SCAN]: Found mod file "geckolib-neoforge-1.21-4.5.5.jar" [locator: userdev mods and services, reader: mod manifest]
[23:39:14.529] [main/INFO] [loading.moddiscovery.ModDiscoverer/SCAN]: Found mod file "TerraBlender-neoforge-1.21-4.0.0.1.jar" [locator: userdev mods and services, reader: mod manifest]
[23:39:14.533] [main/INFO] [loading.moddiscovery.ModDiscoverer/SCAN]: Found mod file "SmartBrainLib-neoforge-1.21-1.14.2.jar" [locator: userdev mods and services, reader: mod manifest]
[23:39:14.555] [main/INFO] [loading.moddiscovery.ModDiscoverer/SCAN]: Found gamelibrary file "mixinextras-neoforge-0.3.5.jar" [locator: userdev mods and services, reader: mod manifest]
[23:39:14.661] [main/WARN] [selection.JarSelector/]: Attempted to select a dependency jar for JarJar which was passed in as source: mixinextras-neoforge-0.3.5.jar. Using Mod File: C:\Users\Collin\.gradle\caches\modules-2\files-2.1\io.github.llamalad7\mixinextras-neoforge\0.3.5\ef3ffcf309dae656517b2f120189b1c9b21737dd\mixinextras-neoforge-0.3.5.jar
[23:39:14.661] [main/INFO] [loading.moddiscovery.locators.JarInJarDependencyLocator/]: No dependencies to load found. Skipping!
[23:39:14.811] [main/INFO] [loading.FMLServiceProvider/CORE]: Loading coremod script-engine for [neoforge]
[23:39:15.556] [main/INFO] [mixin/]: Compatibility level set to JAVA_17
[23:39:15.561] [main/INFO] [mixin/]: Compatibility level set to JAVA_21
Exception in thread "main" org.spongepowered.asm.launch.MixinInitialisationError: Error initialising mixin config smartbrainlib.mixins.json
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.Config.create(Config.java:153)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.Mixins.createConfiguration(Mixins.java:100)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.Mixins.addConfiguration(Mixins.java:87)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformManager.addConfig(MixinPlatformManager.java:262)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformAgentDefault.prepare(MixinPlatformAgentDefault.java:46)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinContainer.prepare(MixinContainer.java:122)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformManager.createContainerFor(MixinPlatformManager.java:144)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformManager.addContainer(MixinPlatformManager.java:134)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformManager.addNestedContainers(MixinPlatformManager.java:152)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformManager.scanForContainers(MixinPlatformManager.java:213)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.platform.MixinPlatformManager.inject(MixinPlatformManager.java:186)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.MixinBootstrap.inject(MixinBootstrap.java:202)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.MixinLaunchPluginLegacy.initializeLaunch(MixinLaunchPluginLegacy.java:201)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.MixinLaunchPlugin.initializeLaunch(MixinLaunchPlugin.java:34)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchPluginHandler.lambda$announceLaunch$11(LaunchPluginHandler.java:100)
at java.base/java.util.HashMap.forEach(HashMap.java:1429)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchPluginHandler.announceLaunch(LaunchPluginHandler.java:100)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:51)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.run(Launcher.java:103)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.main(Launcher.java:74)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26)
at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23)
at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210)
at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69)
Caused by: java.lang.IllegalArgumentException: The specified resource 'smartbrainlib.mixins.json' was invalid or could not be read
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinConfig.create(MixinConfig.java:1290)
at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.Config.create(Config.java:148)
... 24 more
> Task :runClient FAILED
32 actionable tasks: 1 executed, 31 up-to-date
Kinda looks like NeoForge expects a mixin?
getting this error.
16:45:06] [main/ERROR]: Missing or unsupported mandatory dependencies:
Mod ID: 'smartbrainlib', Requested by: 'occultism', Expected range: '[1.11,)', Actual version: '[MISSING]'
Downgrading works.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.