
Modrinth · Minecraft mod
Brainless Lib
AI Library for Better than Adventure
Quick answer
Which Brainless Lib release matches b1.7.3?
Brainless Lib 1.3.1 targets b1.7.3 with bta-babric. Do not install it on the client. It must be installed on the dedicated server. No extra mods listed for this file.
Where it goes
Is Brainless Lib required on the client, server, or both?
Do not install it on the client. It must be installed on the dedicated server.
This file is marked server-only.
What else does Brainless Lib 1.3.1 need?
1.3.1 on b1.7.3. Every mod below is checked against that same setup.
This file does not list any required mods. Do not add a library just because a different file uses it.
This file does not list any required or optional mods.
Before you install it
Add Brainless Lib without breaking your instance.
Built for Brainless Lib 1.3.1 on b1.7.3. Pick another file and the loader, install side or required mods may change.
- 01
Stick to this file
Use 1.3.1. It targets b1.7.3 with bta-babric; another release may have different loader, side or dependency requirements.
- 02
Bring the mods it needs
This file does not list any required mods. Do not add a library just because a different file uses it.
- 03
Put it on the correct side
Do not install it on the client. It must be installed on the dedicated server.
- 04
Pick the file you checked
Use the “Get this file” button beside 1.3.1. It opens that exact file at the source.
About this project
What does Brainless Lib add?
Brainless Library
Game AI framework and utilities, WIP!
Btw
It started as a code experiment, maybe it will end up as such.
Warning:
It has nothing to do with generative AI or complex neural networks.
Example of villagier AI
AI ai = AI.create(brain -> {
brain.inputs()
.add("hunger", 0.0)
.add("fatigue", 0.0)
.add("danger", 0.0)
.add("work", 0.0);
brain.layer("desires", layer -> {
layer.mix("desire_eat")
.add("hunger", 1.0).sub("danger", 0.7).sigmoid(6);
layer.mix("desire_sleep")
.add("fatigue", 1.0).sub("danger", 0.9).sigmoid(6);
layer.mix("desire_flee")
.add("danger", 1.0).sigmoid(8);
layer.mix("desire_work")
.add("work", 1.0).sub("hunger", 0.5).sub("fatigue", 0.4).sigmoid(5);
});
});
JobQueue queue = ai.queue(JobQueue.Mode.HIGHEST_WINS, 0.25, 3);
queue.register("Eat", ai.getBrain().getNode("desire_eat"), () -> System.out.println("Villager eats"));
queue.register("Sleep", ai.getBrain().getNode("desire_sleep"), () -> System.out.println("Villager sleeps"), () -> System.out.println("Sleep interrupted"));
queue.register("Flee", ai.getBrain().getNode("desire_flee"), () -> System.out.println("Villager flees!"), () -> System.out.println("Flee interrupted"));
queue.register("Work", ai.getBrain().getNode("desire_work"), () -> System.out.println("Villager works"));
// Each game tick:
ai.update(in -> in
.set("hunger", 0.8)
.set("fatigue", 0.3)
.set("danger", 0.0)
.set("work", 0.5));
Queue modes
| Mode | Behavior |
|---|---|
HIGHEST_WINS |
Most urgent desire always first |
FIFO_TIERED |
Sorted into high/mid/low tiers, FIFO within each |
WEIGHTED_RANDOM |
Higher desire = higher chance, not guaranteed |
Queue pre-calculates next N jobs. If total desire delta exceeds threshold, discards and rebuilds.
Connection ops
Built-in: add, sub, mul, div, max, min.
Custom:
layer.mix("desire_eat").op("hunger", (a, b) -> a + b * 1.5, 0.8);
Project description from Modrinth.
Pick your setup
Brainless Lib by Minecraft version and loader
Choose the version and loader you play, then open the matching release.
Check the dependencies, then try the file in a copied instance before changing a world you care about.
Recent files
Brainless Lib versions and loaders
1.3.1
brainless-1.3.1.jar
28 May 2026
1.3.0
brainless-1.3.0.jar
28 May 2026
1.2.0
brainless-1.2.0.jar
24 May 2026
1.1.0
brainless-1.1.0.jar
22 May 2026
1.0.0
brainless-1.0.0.jar
21 May 2026
Looking for an older file? The official Modrinth project page is in Resources.