CustomAI is a mod meant to help mapmakers and server's creators to customize the AI of entities! (but if you just want to mess around, that's okay)
Who never wanted that to happen ?
No one ? Really?
This mod only adds two things:
The AI Rewriter
The AI Emitter
The AI Rewriter
By right clicking on a entity which uses the new AI system of Minecraft, a menu like this one will appear:
By choosing one of the options, a other menu will appear where you can select a task, modify or remove it!
The AI Emitter
This emitter will apply all the tasks you'll give it onto the entities in a radius of 40 blocks!
To apply a task, right click on it with the AI Rewriter!
If you right click on it this a dye, you'll colorise the beam!
When an entity is affected by the emitter, a "link" is created ( you can change the number of segments displayed in the config file located in {minecraftFolder}/config/customai.cfg by modifing/adding the field "EmitterCurvesSegmentsNumber" ):
For map makers
As you might want to create an entity on the fly, the AI Emitter nor the AI Rewriter is a viable option.
But good news, the AI tasks are saved in the NBT Data of the entity with the mod!
So you can create this command:
The Item Name under Tempted by Item always seems to randomly reset to missingno, even after it's already working.
Attack by Collision seems to scrap any entity class other than player entity. Any reason why?
I spent like 4 hours toying around with the options and trying to create cool demo AIs, they work really well most of the time and your GUI is nice. I'm not sure what kind of maps this will be used for, but being able to mess around with the workings of the AI system is really fun!
Rollback Post to RevisionRollBack
▲▲ 6,000+ subs looking for Creators with 2k+ to collab - Click to visit my channel! ▲▲
The Item Name under Tempted by Item always seems to randomly reset to missingno, even after it's already working.
Attack by Collision seems to scrap any entity class other than player entity. Any reason why?
I spent like 4 hours toying around with the options and trying to create cool demo AIs, they work really well most of the time and your GUI is nice. I'm not sure what kind of maps this will be used for, but being able to mess around with the workings of the AI system is really fun!
For the Item name, I'll see but I have no idea why.
The player entity seems to be not registred in the name list of Minecraft, I'll add it manually.
And thanks for the feedback!
Edit: Also added a list of available tasks to the first post !
Edit: Also added a list of available tasks to the first post !
Awesome, that'll make it much easier to create these /summon commands.
Here's one sample from the commands I created for my WIP-video to show off your mod:
/summon Skeleton ~0 ~1 ~0
{
CustomAITargetTasks:
[
{
type:"net.minecraft.entity.ai.EntityAINearestAttackableTarget",
Entity class name:"Zombie",
priority:1,
Target chance:10,
Selector:"UNKNOWN",
On sight:"false",
Nearby only:"false"
},
{
type:"net.minecraft.entity.ai.EntityAINearestAttackableTarget",
Entity class name:"Wolf",
priority:2,
Target chance:10,
Selector:"UNKNOWN",
On sight:"false",
Nearby only:"false"
},
{
type:"net.minecraft.entity.ai.EntityAINearestAttackableTarget",
Entity class name:"net.minecraft.entity.player.EntityPlayer",
priority:3,
Target chance:10,
Selector:"UNKNOWN",
On sight:"true",
Nearby only:"false"
}
],
CustomAITasks:
[
{
type:"net.minecraft.entity.ai.EntityAIArrowAttack",
Move speed:1.1,
Max distance:20,
priority:4,
Reload time:5,
Distance from target:20.0,
Move speed:1.0,
Max reload time:30
},
{
type:"net.minecraft.entity.ai.EntityAIWander",
priority:8,
Speed:3.0
},
{
type:"net.minecraft.entity.ai.EntityAIPanic",
priority:5,
Move speed:3.0
}
],
CustomName:"Zombie Hunter",
Equipment:[{id:261},{id:305},{id:304},{id:303},{id:302}],
Riding:
{
id:Pig,
CustomAITasks:
[
{
type:"net.minecraft.entity.ai.EntityAIAvoidEntity",
Entity class name:"Zombie",
priority:1,
Near speed:1.6,
Far speed:1,
Distance from entity:10
},
{
type:"net.minecraft.entity.ai.EntityAIAvoidEntity",
Entity class name:"Wolf",
priority:1,
Near speed:1.6,
Far speed:1,
Distance from entity:10
},
{
type:"net.minecraft.entity.ai.EntityAIWander",
priority:8,
Speed:3.0
},
{
type:"net.minecraft.entity.ai.EntityAIPanic",
priority:5,
Move speed:3.0
}
],
CustomName:"SkeleSteed"
}
}
Usage: Creates a Skeleton that targets Zombies, Wolves, and Players and fires more quickly than usual, mounted on a pig which tries to avoid Zombies and Wolves (keeping the Skeleton away from its attackers to safely plunk arrows into them). I wrote it yesterday for a rig I'm making to have a massive Skeleton v Zombie war to really show off what your mod can do.
Two more things:
1. Possible bug: I've found that using the AI block on more than one or two mobs at a time will slowly lag my game more and more until it locks up. Possible memory leak or infinite loop? I certainly didn't expect this, I'm running on a brand-new computer with plenty of RAM and a pretty good Radeon card.
2. Suggestion: You should definitely develop a Bukkit-plugin version of this mod. Forget the items, the best functionality comes from /summon and injecting all of the NBT tags anyway. The AI Emitter causes intense lag for me and the AI Rewriter is cool for exploring the mod's features but really has no practical application - the ability to control and customize mob AI has much more potential in a server/minigame/map environment and since the AI is all server-side this mod might be far more practical that way.
What I mean to say is that it could be VERY beneficial if this mod could be used server-side, but work properly for players on Vanilla.
I'm looking forward to hearing more about development of this mod, I think it's so cool!
Awesome, that'll make it much easier to create these /summon commands.
Here's one sample from the commands I created for my WIP-video to show off your mod:
/summon Skeleton ~0 ~1 ~0
{
CustomAITargetTasks:
[
{
type:"net.minecraft.entity.ai.EntityAINearestAttackableTarget",
Entity class name:"Zombie",
priority:1,
Target chance:10,
Selector:"UNKNOWN",
On sight:"false",
Nearby only:"false"
},
{
type:"net.minecraft.entity.ai.EntityAINearestAttackableTarget",
Entity class name:"Wolf",
priority:2,
Target chance:10,
Selector:"UNKNOWN",
On sight:"false",
Nearby only:"false"
},
{
type:"net.minecraft.entity.ai.EntityAINearestAttackableTarget",
Entity class name:"net.minecraft.entity.player.EntityPlayer",
priority:3,
Target chance:10,
Selector:"UNKNOWN",
On sight:"true",
Nearby only:"false"
}
],
CustomAITasks:
[
{
type:"net.minecraft.entity.ai.EntityAIArrowAttack",
Move speed:1.1,
Max distance:20,
priority:4,
Reload time:5,
Distance from target:20.0,
Move speed:1.0,
Max reload time:30
},
{
type:"net.minecraft.entity.ai.EntityAIWander",
priority:8,
Speed:3.0
},
{
type:"net.minecraft.entity.ai.EntityAIPanic",
priority:5,
Move speed:3.0
}
],
CustomName:"Zombie Hunter",
Equipment:[{id:261},{id:305},{id:304},{id:303},{id:302}],
Riding:
{
id:Pig,
CustomAITasks:
[
{
type:"net.minecraft.entity.ai.EntityAIAvoidEntity",
Entity class name:"Zombie",
priority:1,
Near speed:1.6,
Far speed:1,
Distance from entity:10
},
{
type:"net.minecraft.entity.ai.EntityAIAvoidEntity",
Entity class name:"Wolf",
priority:1,
Near speed:1.6,
Far speed:1,
Distance from entity:10
},
{
type:"net.minecraft.entity.ai.EntityAIWander",
priority:8,
Speed:3.0
},
{
type:"net.minecraft.entity.ai.EntityAIPanic",
priority:5,
Move speed:3.0
}
],
CustomName:"SkeleSteed"
}
}
Usage: Creates a Skeleton that targets Zombies, Wolves, and Players and fires more quickly than usual, mounted on a pig which tries to avoid Zombies and Wolves (keeping the Skeleton away from its attackers to safely plunk arrows into them). I wrote it yesterday for a rig I'm making to have a massive Skeleton v Zombie war to really show off what your mod can do.
Two more things:
1. Possible bug: I've found that using the AI block on more than one or two mobs at a time will slowly lag my game more and more until it locks up. Possible memory leak or infinite loop? I certainly didn't expect this, I'm running on a brand-new computer with plenty of RAM and a pretty good Radeon card.
2. Suggestion: You should definitely develop a Bukkit-plugin version of this mod. Forget the items, the best functionality comes from /summon and injecting all of the NBT tags anyway. The AI Emitter causes intense lag for me and the AI Rewriter is cool for exploring the mod's features but really has no practical application - the ability to control and customize mob AI has much more potential in a server/minigame/map environment and since the AI is all server-side this mod might be far more practical that way.
What I mean to say is that it could be VERY beneficial if this mod could be used server-side, but work properly for players on Vanilla.
I'm looking forward to hearing more about development of this mod, I think it's so cool!
Thanks for the command, I'll try this out
The AI Emitter uses a highly precise drawing of the curves. In the future, you'll be able to change that in order to produce less lag.
Bukkit plugin ? This would be such a pain as AI is set both client and server sides (in contrary of what you said, sadly :/) on their own. I'm not sure at all this could work out correctly.
By the way, the map is now available !
EDIT: Just uploaded a new update to fix some bugs mentionned earlier in the topic and added a config file.
Hey man,
Any news for this mod? Any ideas for future updates? Do you think you could force other mobs to use your custom AI, or create new versions of them that do?
Still gonna make a video for you, I was just wondering if you'd had any more ideas. This could be really useful if applied well and would be even more useful down the road in 1.8 where most mobs have moved to the new AI system in preparation for the API. You should keep adding features to this, maybe even create an external utility for generating /summon commands for mapmakers. It would be *amazing* if you could add an item that would generate a /summon command for the exact mob you use it on and copy it into the clipboard. Then you can just customize the AI with the GUI and copy the command instead of writing it out from scratch to replicate your AI functions - I had to rewrite my commands multiple times to get them right, so why not cut out that part and be able to use the GUI? User-friendliness would increase 1,000%.
Or why not an item that, when used on a mob, turned it into a spawner that would spawn exact clones of that mob. You can even make them vanilla-friendly spawners, and create a gui for manipulating the spawner properties such as active range, max number spawned at once - all of these properties are just stored in NBT tags, why not allow for rewriting those and make this useful to a wider range of mapmakers? I think this could be really useful to mapmakers but the question is how do you get it noticed.
Just some suggestions from someone who likes your mod!
Rollback Post to RevisionRollBack
▲▲ 6,000+ subs looking for Creators with 2k+ to collab - Click to visit my channel! ▲▲
Hey man,
Any news for this mod? Any ideas for future updates? Do you think you could force other mobs to use your custom AI, or create new versions of them that do?
Still gonna make a video for you, I was just wondering if you'd had any more ideas. This could be really useful if applied well and would be even more useful down the road in 1.8 where most mobs have moved to the new AI system in preparation for the API. You should keep adding features to this, maybe even create an external utility for generating /summon commands for mapmakers. It would be *amazing* if you could add an item that would generate a /summon command for the exact mob you use it on and copy it into the clipboard. Then you can just customize the AI with the GUI and copy the command instead of writing it out from scratch to replicate your AI functions - I had to rewrite my commands multiple times to get them right, so why not cut out that part and be able to use the GUI? User-friendliness would increase 1,000%.
Or why not an item that, when used on a mob, turned it into a spawner that would spawn exact clones of that mob. You can even make them vanilla-friendly spawners, and create a gui for manipulating the spawner properties such as active range, max number spawned at once - all of these properties are just stored in NBT tags, why not allow for rewriting those and make this useful to a wider range of mapmakers? I think this could be really useful to mapmakers but the question is how do you get it noticed.
Just some suggestions from someone who likes your mod!
The mod is still going on, don't worry. I'll try to add the item to copy the AI tasks and create an external utility to help mapmakers
An update was released (1.0.2) !
Get it from the download page!
Changelog:
(+) Added the AI Copier item. Able to copy tasks from/to mobs, mob spawners,
command blocks (only containing summon commands) by right cliking on block/entity!
(+) Now uses build.gradle file to change version number at build
(*) EntityAIWorkers (so now longer CustomAIHelper) now control if a task is suitable or not for a given entity.
About the AI Copier
If the AI Copier is empty, right click on a mob spawner, a mob, or a command block to copy tasks from it.
If the item is not empty, right click to apply task on a mob spawner, a mob or a command block, but if you're sneaking in the same time, it will perform a copy of the tasks.
could you makes this have a config to set it for all mobs of a type not just in a certain radius
Are you talking about the emitter ?
If so, all mobs of a certain type in a radius is possible: add a gunpowder (for example) in the emitter to only affect Creepers. But it is still a WIP feature.
Who never wanted that to happen ?
No one ? Really?
This mod only adds two things:
By right clicking on a entity which uses the new AI system of Minecraft, a menu like this one will appear:
By choosing one of the options, a other menu will appear where you can select a task, modify or remove it!
The AI Emitter
This emitter will apply all the tasks you'll give it onto the entities in a radius of 40 blocks!
To apply a task, right click on it with the AI Rewriter!
If you right click on it this a dye, you'll colorise the beam!
When an entity is affected by the emitter, a "link" is created ( you can change the number of segments displayed in the config file located in {minecraftFolder}/config/customai.cfg by modifing/adding the field "EmitterCurvesSegmentsNumber" ):
For map makers
As you might want to create an entity on the fly, the AI Emitter nor the AI Rewriter is a viable option.
But good news, the AI tasks are saved in the NBT Data of the entity with the mod!
So you can create this command:
To spawn a Creeper which follows players and only that (so, it won't explode )
Complete list of the tasks available:
Download
You can get the mod file here, choose the lastest one: http://jglrxavpok.mi...ds/?id=CustomAI
You can get the sources here: https://github.com/jglrxavpok/CustomAI
A map with some showcase is available!
Moderator on the French Minecraft Forge Modding community
▲▲ 6,000+ subs looking for Creators with 2k+ to collab - Click to visit my channel! ▲▲
I'll check as soon as I can. Thanks for reporting it.
----------------------------------------------------------------------------------------
Edit: I'll upload a fix soon.
Moderator on the French Minecraft Forge Modding community
The Item Name under Tempted by Item always seems to randomly reset to missingno, even after it's already working.
Attack by Collision seems to scrap any entity class other than player entity. Any reason why?
I spent like 4 hours toying around with the options and trying to create cool demo AIs, they work really well most of the time and your GUI is nice. I'm not sure what kind of maps this will be used for, but being able to mess around with the workings of the AI system is really fun!
▲▲ 6,000+ subs looking for Creators with 2k+ to collab - Click to visit my channel! ▲▲
For the Item name, I'll see but I have no idea why.
The player entity seems to be not registred in the name list of Minecraft, I'll add it manually.
And thanks for the feedback!
Edit: Also added a list of available tasks to the first post !
Moderator on the French Minecraft Forge Modding community
Awesome, that'll make it much easier to create these /summon commands.
Here's one sample from the commands I created for my WIP-video to show off your mod:
Two more things:
1. Possible bug: I've found that using the AI block on more than one or two mobs at a time will slowly lag my game more and more until it locks up. Possible memory leak or infinite loop? I certainly didn't expect this, I'm running on a brand-new computer with plenty of RAM and a pretty good Radeon card.
2. Suggestion: You should definitely develop a Bukkit-plugin version of this mod. Forget the items, the best functionality comes from /summon and injecting all of the NBT tags anyway. The AI Emitter causes intense lag for me and the AI Rewriter is cool for exploring the mod's features but really has no practical application - the ability to control and customize mob AI has much more potential in a server/minigame/map environment and since the AI is all server-side this mod might be far more practical that way.
What I mean to say is that it could be VERY beneficial if this mod could be used server-side, but work properly for players on Vanilla.
I'm looking forward to hearing more about development of this mod, I think it's so cool!
▲▲ 6,000+ subs looking for Creators with 2k+ to collab - Click to visit my channel! ▲▲
Thanks for the command, I'll try this out
The AI Emitter uses a highly precise drawing of the curves. In the future, you'll be able to change that in order to produce less lag.
Bukkit plugin ? This would be such a pain as AI is set both client and server sides (in contrary of what you said, sadly :/) on their own. I'm not sure at all this could work out correctly.
By the way, the map is now available !
EDIT: Just uploaded a new update to fix some bugs mentionned earlier in the topic and added a config file.
Moderator on the French Minecraft Forge Modding community
Any news for this mod? Any ideas for future updates? Do you think you could force other mobs to use your custom AI, or create new versions of them that do?
Still gonna make a video for you, I was just wondering if you'd had any more ideas. This could be really useful if applied well and would be even more useful down the road in 1.8 where most mobs have moved to the new AI system in preparation for the API. You should keep adding features to this, maybe even create an external utility for generating /summon commands for mapmakers. It would be *amazing* if you could add an item that would generate a /summon command for the exact mob you use it on and copy it into the clipboard. Then you can just customize the AI with the GUI and copy the command instead of writing it out from scratch to replicate your AI functions - I had to rewrite my commands multiple times to get them right, so why not cut out that part and be able to use the GUI? User-friendliness would increase 1,000%.
Or why not an item that, when used on a mob, turned it into a spawner that would spawn exact clones of that mob. You can even make them vanilla-friendly spawners, and create a gui for manipulating the spawner properties such as active range, max number spawned at once - all of these properties are just stored in NBT tags, why not allow for rewriting those and make this useful to a wider range of mapmakers? I think this could be really useful to mapmakers but the question is how do you get it noticed.
Just some suggestions from someone who likes your mod!
▲▲ 6,000+ subs looking for Creators with 2k+ to collab - Click to visit my channel! ▲▲
I see it's potential in modpacks/custom maps/servers.
I'm working on an open-source mod called Craft++. Check it out!
Yeah, it was posted on reddit.
Modpacks ? I don't think so... But Custom maps & servers are what I had in mind in the first place!
EDIT: You'll be able to transfer AI tasks from mob spawners, mobs, AI emitters and command blocks to another with the AI Copier item:
Moderator on the French Minecraft Forge Modding community
Get it from the download page!
Changelog:
(+) Added the AI Copier item. Able to copy tasks from/to mobs, mob spawners,
command blocks (only containing summon commands) by right cliking on block/entity!
(+) Now uses build.gradle file to change version number at build
(*) EntityAIWorkers (so now longer CustomAIHelper) now control if a task is suitable or not for a given entity.
About the AI Copier
If the AI Copier is empty, right click on a mob spawner, a mob, or a command block to copy tasks from it.
If the item is not empty, right click to apply task on a mob spawner, a mob or a command block, but if you're sneaking in the same time, it will perform a copy of the tasks.
Moderator on the French Minecraft Forge Modding community
Are you talking about the emitter ?
If so, all mobs of a certain type in a radius is possible: add a gunpowder (for example) in the emitter to only affect Creepers. But it is still a WIP feature.
Moderator on the French Minecraft Forge Modding community
And this is now fixed! Just redownload the file.
Moderator on the French Minecraft Forge Modding community
Thanks for the feedback
Moderator on the French Minecraft Forge Modding community
Is this mod still active ? Does it work on 1.7.10 ? Anyhow seems like a nice mod , and if it works on 1.7.10 I will use it .
It's not active right now (I'm waiting for 1.8 mostly). No it does not work on 1.7.10, sorry. And thanks for the feedback anyway
Moderator on the French Minecraft Forge Modding community
I loaded the map in 1.7.10 and the AI changes work. But when the A.I. Rewriter is used it crashes.
I just found that odd. In theory, I can edit an A.I. in 1.7.2 with this mod, load it in 1.7.10 with this mod, just not use the rewriter.
I think it might because 1.7.10 had some changes about menu rendering.
Anyway, I'm actually impressed it even loads in 1.7.10
Moderator on the French Minecraft Forge Modding community