AI - woshiermuqwq/mythic-chinese GitHub Wiki
此页面将列出所有可用的AI行动器与AI目标选择器
AI行动器将决定实体该做什么. 若所写AI行动器不适用于实体, 那么它可能没有效果.
如给实体种类为僵尸的Mythic实体写上"EatGrass(啃草)"是没有任何作用的.
无法修改鱿鱼、史莱姆、蝙蝠、幻翼、末影龙、猪灵(包括暴君)、恶魂、恼鬼的AI.
有攻击性质的行动器(如 meleeattack)在被动生物(如 鸡)上无法正常工作.(原因: 缺少attack_damage属性NBT)
高版本被动实体虽然可使用攻击性质的AI行动器, 但需要定义 Damage: 数值
一项
与阵营相关的AI行动器, 若玩家为OP则仍然会将玩家当作 "指定阵营或其它阵营" 内的实体
鹦鹉无法使用有远离性质的行动器(如 fleeplayers)
例子:
超级实体:
Type: zombie
Health: 200
Display: '非凡的 僵尸'
AIGoalSelectors:
- clear
- meleeattack
- randomstroll
这只僵尸会近距离攻击目标,无目标时会随机走动.
所有实体可用
AI行动器名 | 别称 | 描述 |
---|---|---|
clear | reset | 清除默认(原版)AI行动器 并防止生物朝向发生变动 |
breakdoors | 破坏路线上的门 | |
eatgrass | 啃草 | |
float | swim | 漂浮在水上 |
lookatplayers | 看向玩家 | |
opendoors | opendoor | 开启路径上的门 |
closedoors | restrictopendoor | 关闭路径上的门 |
randomlookaround | lookaround | 看向周围 |
gotospawnlocation{maxrange(max, r)=寻找的最大距离(格方块);minrange(min, mr)=与出生点所保持的距离(格方块);speed=移速;droptarget(dt)=是否无视当前目标走向出生点} | gotospawn | 走向实体的出生点 |
doNothing{fleeconditions=[ - 条件 条件活动 ]} [仅限付费版] | nothing{conditions(cond, c)=[ 条件 ]} | 条件不满足就不进行操作 条件的检测对象是施法者而非仇恨目标 不支持条件: Has Aura(Stacks) 建议用临时权限替代光环 |
生物可用
flee开头的AI行动器共有的修改项:
修改项名 | 描述 | 默认值 |
---|---|---|
distance | 远离距离 | 5 |
speed | 逃离速度 | 2 |
safespeed=2 | 即将达到远离距离时的逃离速度 | 1 |
AI行动器名 | 别称 | 描述 |
---|---|---|
avoidcreepers | 躲避爬行者 | |
avoidskeletons | 躲避骷髅 | |
avoidzombies | 躲避僵尸 | |
fleesun | 躲避日光 | |
meleeattack{attackreach(攻击距离, 不可≤0, 5.4.0)=4} | 常规攻击方式 | |
movetowardstarget | 走向目标 | |
movetowater(5.2.1) | 走向水源 | |
movetolava(5.2.1) | 走向熔岩 | |
moveblock{material=方块id;radius=水平检索半径;radiusy=垂直检索半径;speed=移动速度} | 走向特定方块(5.2.1) | |
randomstroll | 随机走动 | |
restrictsun | 躲避高亮度地区 | |
fleeplayers | runfromplayers | 躲避玩家 |
fleegolems | runfromgolems | 躲避铁傀儡 |
fleevillagers | runfromvillagers | 躲避村民 |
fleewolves | runfromwolves | 躲避狼 |
fleefaction{f=阵营名}(5.2.1) | 躲避处在指定阵营内的实体(可作用于玩家) | |
fleeConditional{conditions=} [仅限付费版] | fleeIf | 躲避符合条件的实体. |
spiderattack | 跳跃攻击方式(如狼、蜘蛛) | |
leapattarget | 朝目标冲刺 | |
moveindoors | 室内活动 | |
movethroughvillage | 村庄内活动 | |
movetowardsrestriction | 未知 | |
patrol x1,y1,z1;x2,y2,z2;x3,y3,z3;… | patrolroute | 依次走到多个坐标点路程需≤实体跟随距离) |
gotolocation x,y,z | goto | 走到指定坐标点(路程需≤实体跟随距离) |
gotoowner{followrange(fr, r, maxrange)=跟随距离(格方块);minrange(mr)=与主人所保持的距离(格方块);speed=移速;droptarget(dt)=是否无视当前目标走向主人} | 走向主人(路程≤实体跟随距离) | |
gotoparent{followrange(fr, r, maxrange)=跟随距离(格方块);minrange(mr)=与父系实体所保持的距离(格方块);speed=移速;droptarget(dt)=是否无视当前目标走向父系实体} | 走向父系实体(路程≤实体跟随距离 若无法使用请注意 Protollib 版本) | |
gotowater(5.0.5) | 寻找并进入水源 | |
panicWhenOnFire | panic | 着火时寻找水源熄火 |
randomFly | 随机飞行 |
FleeConditional 示例:
AIGoalSelectors:
- clear
- fleeConditional{distance=5;speed=2;safespeed=2;conditions=[ - inlineofsight true ]}
]}
动物可用 (5.0.3)
AI行动器名 | 别称 | 描述 |
---|---|---|
breed | 走向繁殖对象 |
远程攻击方式实体可用
对近身攻击方式的实体使用将报错, 如僵尸
AI行动器名 | 别称 | 描述 |
---|---|---|
arrowattack{speed=移速;attackspeedmax=最快射速;attackspeedmin=最慢射速;attackradius=寻敌半径范围} | 无需拉弓射箭(实体必须可拉弓) | |
skeletonbowattack{speed=移速;attackspeedmin=最慢射速;attackradius=寻敌半径范围} | bowshoot, bowmaster | 拉弓射箭(实体必须可拉弓) |
猪灵与掠夺者可用
AI行动器名 | 别称 | 描述 |
---|---|---|
crossbowAttack{speed=移速;attackradius=寻敌半径范围} | 拉弩射箭 |
爬行者可用
AI行动器名 | 别称 | 描述 |
---|---|---|
creeperswell(4.14.2) | creeperexplode | 爬行者膨胀后爆炸 |
AI目标选择器(不同于技能的目标选择器)将决定实体选择什么样的实体为目标
从 MM 4.14.0 开始, 若实体的AI目标选择器被清除(clear), 实体将忘却自己先前的目标, 从而停止攻击
例子:
超级实体:
Type: zombie
Health: 200
Display: '非凡的 僵尸'
AIGoalSelectors:
- meleeattack
- randomstroll
AITargetSelectors:
- clear
- players
- golems
这只僵尸仅会选取玩家和铁傀儡为目标(因已清除默认AI目标选择器所以不会像原版一样即使被骷髅之类的误伤也不会还击)
所有实体可用
AI目标选择器名 | 别称 | 描述 |
---|---|---|
clear | 清除默认(原版) | |
attacker | hurtbytarget, damager | 选取对自身造成伤害(未令实体变红不算造成伤害)的实体 |
monsters | 选取原版实体种类为怪物的实体(包括原版) | |
players | 选取玩家 | |
villagers | 选取原版实体种类为村民的实体(包括原版). | |
golems | 选取原版实体种类为傀儡(包括雪傀儡)的实体(包括原版) | |
nearestConditionalTarget{mustsee=是否仅选取可以看到的实体(如盔甲架 5.3.0);mustreach=是否仅选取可以到达的实体(5.3.0)} [仅限付费版] | nearestConditional, nearestIf | 选取离自身最近的符合条件的实体 无论如何都不会选取没有实体基本数据的实体, 如Marker 无法选取纯发包实体, 如盔甲架抛射物/文本抛射物 |
NearestConditionalTarget 示例:
AITargetSelectors:
- clear
- nearestConditionalTarget{conditions=[
- entitytype PLAYER true
- hasaura{aura=marked_for_death} true
]}
拥有阵营的实体可用
AI目标选择器名 | 描述 |
---|---|
OtherFaction | 选取其它阵营内的所有实体为目标 |
OtherFactionMonsters | 选取其它阵营内实体种类为怪物的实体为目标 |
OtherFactionVillagers | 选取其它阵营内实体种类为村民的实体为目标 |
SpecificFaction 阵营名 | 选取指定阵营内的所哟IU实体为目标 |
SpecificFactionMonsters 阵营名 | 选取指定阵营内实体种类为怪物的实体为目标 |
示例:
AITargetSelectors:
- SpecificFaction 亡灵
选取亡灵阵营内的所有实体为目标
已驯服实体可用
AI目标选择器名 | 描述 |
---|---|
ownerattacker | 攻击主人的实体 |
ownertarget | 主人的目标 |