- 欢迎来到Minecraft插件百科!
- 对百科编辑一脸懵逼?帮助:快速入门带您快速熟悉百科编辑!
- 因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289
MythicMobs:修订间差异
小 (有人在bbs弄,我就不瞎折腾了) |
|||
| 第2,695行: | 第2,695行: | ||
=物品(Items)= | =物品(Items)= | ||
==概览== | |||
在 MythicMobs 里制作自定义物品是相当简单的。不像生物和技能,这个插件的物品没有特殊或独一无二的选项。任何通过 MythicMobs 制作的物品都可以使用原版命令制造出来,不过使用 MythicMobs 制作物品来的更加舒服一些。 | |||
以下的这些选项里,只有 ''internal_itemname'' 和 ''Id'' 是必需的。所有其他的选项都是完全可选的。 | |||
<pre> | |||
iternal_itemname: | |||
Id: | |||
Data: | |||
Display: | |||
Attributes: | |||
Amount: | |||
Options: | |||
Enchantments: | |||
Lore: | |||
PotionEffects: | |||
BannerLayers: | |||
</pre> | |||
'''拆开所有的选项来看''' | |||
*internal_itemname: | |||
**用于给 MythicMobs 参考,想叫什么叫什么 | |||
**必须为字母数字,并且大小写敏感 | |||
*Id: | |||
**设置物品的种类 | |||
**可以是 Bukkit 材料名称或是物品 ID | |||
**见常用物品 ID | |||
*Data: | |||
**设置物品数据 | |||
**用于物品的耐久和方块种类 | |||
*Display: '[名称]' | |||
**设置物品名称 | |||
**可以使用技能|变量 | |||
**必须使用单引号包围 | |||
*Attributes: | |||
**设置物品的属性,见下物品属性 | |||
*Amount: | |||
**设置物品的数量 | |||
*Options: | |||
**这是一个特殊的子选项,提供了大量的附加属性 | |||
**见物品选项 | |||
*Hide: 在 2.4 中添加 | |||
**允许隐藏特定的属性 | |||
**“ATTRIBUTES”, “ENCHANTS”, “DESTROYS”, “PLACED_ON”, “POTION_EFFECTS” 和 “UNBREAKABLE”. | |||
==药水== | ==药水== | ||
*'''''needtext''''' | *'''''needtext''''' | ||
==常用物品 ID== | |||
=掉落(Drops)= | =掉落(Drops)= | ||
2017年7月22日 (六) 05:29的版本
| 外文名 | MythicMobs |
| 插件类型 | Spigot / CraftBukkit |
| 最新版本 | v2.6.0 |
| 兼容服务端 | 1.6.2-1.11 |
| 前置插件 | 无 |
| 源地址 | http://mythicmobs.net/manual/doku.php |
概览
MythicMobs(MM)插件可以充分修改服务器内原版生物的各项属性。通过修改原版生物,从最简单的血量/伤害的提升,到修改生物的目标习性,乃至赋予生物一个强大技能。
制作出独特的生物,BOSS,和其他有趣的生物~ 在RPG服务器内制作出具有挑战性的BOSS碾压玩家不在是梦~
此插件允许你给予生物:
- 技能——赋予自定义的技能。(发动条件,冷却时间,目标)
- 属性——修改属性。(血量,伤害量,移动速度,攻击范围)
- 特效——使用音效,粒子效果和其他特效。
- 装备——自定义属性的装备和掉落表。
- 伤害调整——调整伤害对生物的影响。(免疫溺水,受到箭的伤害减半,烧伤恢复血量...)
- 生成控制——定点,定时,特殊条件,自定义属性...
- 等级制度——根据等级提升生物的属性和能力值。
- 威胁度——更好的攻击目标选择。
- 自定义AI——自定义生物适当的行动目标和首要/次要攻击目标。
- 派别系统——根据所在的派别,结合自定义AI,使生物学会攻击不同的派别,又或者与玩家站在同一站线。
- 伪装——使生物幻化为任何东西~ 需要LibsDisguises和ProtocolLib插件
- 插件兼容——兼容各种流行的插件!
- 更多功能尽情期待~
配置文件(config.yml)
编辑yml格式文件时,可以使用#符号留言或标记。
# 这是一条留言。
如果yml内含有中文,Windows服务端需转码成ANSI,Linux服务端需转码成UTF8以避免文字乱码。
只要保证配置文件的后缀为yml并且此文件为正确可读的yml格式,任何yml配置文件(config.yml除外)都可以被重命名为任意名字。这样就可以更方便地管理自己的配置文件,比如 Tier1_mobs.yml,Tier2_mobs.yml。
| config.yml文本 |
|---|
Version: 2.4
General:
AllowMetrics: true
CheckForUpdates: true
CompatibilityMode: false
DebugLevel: 0
ErrorLogging: true
UseVolatileFeatures: true
Clock:
ClockInterval: 5
SaveInterval: 5
SpawnsInterval: 2
ScannerInterval: 10
CleanupInterval: 600
Components:
CustomSpawners: true
RandomSpawning: true
Mobs:
EnableAIModifiers: true
EnableTimerSkills: true
EnableThreatTables: true
EnablePlayerFactions: true
EnableLegacySkills: true
KillMessagePrefix: ''
ShowHealth:
Radius: 25
Format: <mob.name> - <mob.php> (<mob.hp> / <mob.mhp>)
Scaling:
Default:
Enabled: true
PerBlocksFromSpawn: 250
world2:
Enabled: true
PerBlocksFromSpawn: 250
world2_nether:
Enabled: false
PerBlocksFromSpawn: 100
DefaultLevelModifiers:
Health: 0.1
Armor: 0
Damage: 0
KnockbackResistance: 0
Power: 0
RandomSpawning:
GenerateSpawnPoints: false
MaxMobsPerChunk: 80
SpawnRadiusPerPlayer: 64
SpawnRadiusPerPlayerY: 32
DespawnLazyRandomMobs: true
MaxGenerationTime: 20
PointsPerSecond:
Land: 10
Air: 0
Sea: 0
Lava: 0
Ground: 0
Compatibility:
Heroes:
Enabled: true
ShowXPMessage: true
XPMessageFormat: You receive <drops.xp> experience for slaying <mob.name>
McMMO:
Enabled: true
ShowXPMessage: true
XPMessageFormat: You receive <drops.xp> experience for slaying <mob.name>
SkillAPI:
Enabled: true
ShowXPMessage: true
XPMessageFormat: You receive <drops.xp> experience for slaying <mob.name>
Vault:
Enabled: true
ShowMoneyMessage: true
MoneyMessageFormat: You receive <drops.money> currency for slaying <mob.name>
|
<spoiler>
基本项—General
| 项 | 参数 | 描述 |
|---|---|---|
| AllowMetrics | [true/false] | 是否发送度量数据给开发者 |
| CheckForUpdates | [true/false] | 是否自动检测插件最新版本 |
| CompatibilityMode | [true/false] | 是否开启插件兼容模式 若和其他插件有冲突的话启用此模式或许能解决插件冲突问题 |
| DebugLevel | [number] | 调试等级,等级越高显示的信息就越多 启用的话会关闭妨碍调试的功能,如随机生成,生物生成,和其他随机的功能 (范围:0 ~ 4) 0:不检测 1:最低级 在生成点显示火焰粒子。(很实用~) 插件启动或重载时记录所有生成点 2:中等级 记录技能的发动,生物的死亡,掉落表,等。 插件启动或重载时记录所有物品,技能,和掉落表。 记录异常技能助于解决问题。 最高级别的有用Debug等级 3:重量级 4:过量信息 |
| ErrorLogging | [true/false] | 是否保存插件报错日志 保存路径:\MythicMobs\Error Logs\ |
| UseVolatileFeatures | [true/false] | 是否使用易变特性 如果使用的是不支持的Bukkit或奇怪的Spigot版本,可尝试禁用此项 |
时钟—Clock
| 项 | 参数 | 描述 |
|---|---|---|
| ClockInterval | [number] | 设置技能所允许的最低发动间隔,修改此项后必须重启插件,建议数值以5递增 (只适用于“~onTimer:xx”。单位:刻) |
| SaveInterval | [number] | 保存插件数据的时间间隔(单位:分钟) |
| SpawnsInterval | [number] | 生成间隔(单位:秒) |
| ScannerInterval | [number] | 检测区块和清除非加载区块生物的间隔(单位:秒) |
| CleanupInterval | [number] | 清除间隔(单位:秒) |
分支—Components
| 项 | 参数 | 描述 |
|---|---|---|
| CustomSpawners | [true/false] | 是否启用此插件怪物的生成 |
| RandomSpawning | [true/false] | 是否启用此插件怪物的随机生成 |
生物—Mobs
| 项 | 参数 | 描述 |
|---|---|---|
| EnableAIModifiers | [true/false] | 是否启用自定义AI |
| EnableTimerSkills | [true/false] | 是否启用计时技能 |
| EnableThreatTables | [true/false] | 是否启用威胁度 |
| EnablePlayerFactions | [true/false] | 是否启用player为可用派别 |
| EnableLegacySkills | [true/false] | 是否识别旧版MythicMobs(2.0版本之前)插件的技能格式 |
| KillMessagePrefix | '[text]' | 设置MM生物杀死玩家时显示的信息前缀 |
| ShowHealth Radius Format |
[number] '[text]' |
血量显示项 发送生物血量信息的半径范围 血量信息的格式,可使用变量 |
| DefaultLevelModifiers | 默认每提升1级的各项上升数值 | |
| RandomSpawning GenerateSpawnPoints MaxMobsPerChunk SpawnRadiusPerPlayer SpawnRadiusPerPlayerY DespawnLazyRandomMobs MaxGenerationTime PointsPerSecond |
[true/false] [number] [number] [number] [true/false] [number] [number] |
随机生成项 是否生成生成点 单个区块所允许生物的最大值 以玩家为中心所生成生物的半径范围(水平方向。单位:方块) 以玩家为中心所生成生物的半径范围(Y轴方向。单位:方块) 是否清除非加载区块的生物 最大生成时间 每秒点数(陆地/天空/海/岩浆/地面) |
兼容项—Compatibility
| 项 | 参数 | 描述 |
|---|---|---|
| Heroes Enabled ShowXPMessage XPMessageFormat |
[true/false] [true/false] '[text]' |
是否启用 是否显示经验信息 显示经验信息的格式,可使用变量 |
| McMMO Enabled ShowXPMessage XPMessageFormat |
[true/false] [true/false] '[text]' |
是否启用 是否显示经验信息 显示经验信息的格式,可使用变量 |
| SkillAPI Enabled ShowXPMessage XPMessageFormat |
[true/false] [true/false] '[text]' |
是否启用 是否显示经验信息 显示经验信息的格式,可使用变量 |
| Vault Enabled ShowMoneyMessage MoneyMessageFormat |
[true/false] [true/false] '[text]' |
是否启用 是否显示金钱信息。 显示金钱信息的格式,可使用变量 |
</spoiler>
命令&权限
输入/mythicmobs会显示所有可用的命令。每个命令也会提示你如何使用。
名字name和显示名字DisplayName并不是同一个东西。
[ ]内的参数为必填,< >内的参数为选填。
<spoiler>
基本命令
| 命令 | 参数 | 描述 |
|---|---|---|
| /mythicmobs /mm |
显示所有可用命令 | |
| /mm debug /mm d |
[level] | 调试等级 |
| /mm debugmode | [true/false] | 是否启用调试模式 |
| /mm reload /mm r |
插件重载 | |
| /mm save | 强行保存 |
物品命令
| 命令 | 参数 | 描述 |
|---|---|---|
| /mm items /mm i |
显示所有物品相关的命令 | |
| /mm items get | [物品] <数量> | 给予自己一个插件配置文件下的物品 |
| /mm items give | [玩家] [物品] <数量> | 给予特定玩家一个插件配置文件下的物品 |
| /mm items list | 列出成功读取的物品 |
生物命令
| 命令 | 参数 | 描述 |
|---|---|---|
| /mm mobs /mm m |
显示所有生物相关的命令 | |
| /mm mobs info | [生物] | 显示特定生物的详细信息 |
| /mm mobs list | 列出成功读取的生物 | |
| /mm mobs listactive | 列出目前已生成的生物及其数量 | |
| /mm mobs kill | [x] | 清除名字内带有x的所有生物 |
| /mm mobs killall | 清除所有生物 | |
| /mm mobs spawn | [生物]:<等级> <数量> <世界,x,y,z> | 生成特定的生物 |
| /mm mobs spawnsilent | [生物]:<等级> <数量> <世界,x,y,z> | 生成特定的生物,不记录到控
制台 |
| /mm mobs stats | 显示多少已加载的生物(数量) |
刷怪蛋命令
| 命令 | 参数 | 描述 |
|---|---|---|
| /mm egg /mm e |
显示所有刷怪蛋相关的命令 | |
| /mm egg get | [生物] <数量> | 给予自己特定生物的刷怪蛋 |
| /mm egg give | [玩家] [生物] <数量> | 给予特定玩家特定生物的刷怪蛋 |
生成点命令
大部分情况下,生成点配置识别以下通配符。
- ?为单个字母的通配符
使用"/mm s set ?at leashrange 32"会使生成的怪物名字为Cat,Rat,Fat等 - *为任意数量的通配符
使用"/mm s set T* leashrange 32"会使所有名字T开头的生成点的leashrange设置为32 - 命令中的生成点名字输入*的话,代表所有生成点的名字
| 命令 | 参数 | 描述 |
|---|---|---|
| /mm spawners /mm s |
显示所有生成点相关命令 | |
| /mm s create | [生成点] [生物] | 在玩家位置生成新的生成点 生物为配置文件下的生物名字,非显示名字 例子:/mm s create Ruins_Skeleton1 DecayingSkeleton |
| /mm s set | [生成点] [设置] [数值] | 修改生成点的设置 暂无详情 |
| /mm s addcondition | [生成点] [条件] [数值] | 添加生成点条件 |
| /mm s removecondition | [生成点] [条件] | 删除生成点条件 例子:/mm s removecondition Ruins_Skeleton1 outside |
| /mm s info | [生成点] | 显示生成点的详细信息 |
| /mm s listnear | <范围> | 列出范围内所有生成点(单位:方块半径) |
| /mm s resettimers | [生成点] | 重置生成点的冷却时间 |
| /mm s spawn | [生物] | 创建一个特定生物的生成点 |
| /mm s cut | [关键字] | 剪切生成点 例子:/mm s cut g:BoneCastle 剪切所有BoneCastle群下的生成点 例子:/mm s cut r:200 剪切半径200格范围内的所有生成点 例子:/mm s cut Elementals_* 剪切所有名字以Elementals_的生成点 /mm s cut * 剪切所有生成点,慎用 |
| /mm s paste | 粘贴生成点到相对坐标下 可以多次粘贴,不过每次都会替换掉前一次的粘贴(不重复) | |
| /mm s undo | 撤回上一次剪切/粘贴动作 只在当前剪切动作有效。若有新的剪切动作以新的进行撤回 |
实体测试命令
| /mm u testeffect [技能语法] |
使用一个特效。例子:
| /mm u testeffect effect:particles{particle=witchMagic;amount=20;speed=0.7} |
| /mm u testskill [目标] [技能] |
- 目前无效
- 目标为目标选择器,target,playersinradius...
- 使用一个技能。例子:
| /mm u testskill target lightning |
信号命令
| /mm signal <UUID> <信号> |
- 用于发送给生物一个特定的信号,从而触发其技能(~onSignal[signal])
- 只在输入生物的UUID时有效,输入生物名字无效
- 通常配合/tellraw使用
- 此命令对所有玩家开放使用。然而因为无法知道生物的UUID和信号的名字,普通玩家并不可以滥用此命令
权限
基本权限
- mythicmobs.admin
给予使用所有此插件命令的权限。 - mythicmobs.signal
给予使用"/mm signal <mob.uuid> <signal>"此命令的权限。
</spoiler>
生物(Mobs)
大部分为选填项,也就是说没必要把每个项都列入配置内。
以下为一个实体生物可修改的项示例和例子。
<spoiler>
| internal_mobname: Type: Display: Health: Damage: Armor: BossBar: Faction: Mount: Options: Modules: AIGoalSelectors: AITargetSelectors: Drops: DropsPerLevel: DamageModifiers: Equipment: KillMessages: LevelModifiers: Disguise: Skills: |
super_zombie: Type: zombie Display: '&lSuper Zombie&r' Health: 200 Damage: 14 Armor: 10 Faction: superb_zombies Mount: super_zombie_undead_horse Options: PreventOtherDrops: true PreventItemPickup: true Despawn: false KnockbackResistance: 0.25 MovementSpeed: 0.25 Modules: ThreatTable: false ImmunityTable: true AIGoalSelectors: - 0 clear - 1 meleeattack - 2 randomstroll AITargetSelectors: - 0 clear - 1 attacker - 2 players Drops: - diamond 1-3 1 - exp 50 1 - super_zombie_sword 1 1 DropsPerLevel: - rotten_flesh 1-3 0.5 - exp 10 1 DamageModifiers: - ENTITY_ATTACK 0 - PROJECTILE 1.25 - MAGIC 1.75 Equipment: - super_zombie_helmet:4 - super_zombie_sword:0 KillMessages: - '<target.name> was superbly slain by a <mob.name>' LevelModifiers: - Armor 0.05 - MovementSpeed: 0.01 - KnockbackResistance: 0.05 - Health: 2 - Damage: 1 Disguise: Type: player Skin: '&lSuper Zombie&r' Player: jaylawl Skills: - throw{v=5;vy=5} @target ~onAttack 0.5 - effect:sound{s=mob.zombie.hurt;v=1;p=0} @self ~onDamaged - effect:particles{p=cloud;a=50;s=0.05} @self ~onDeath |
</spoiler>
生物配置名字(internal_mobname)
- 此名字为插件读取生物时使用的名字
- 区分大小写,识别字母和数字(还有下划线?)
super_zombie: SuperZombie: superzombie:
生物种类(Type)
- 确定生物的类别
- 不区分大小写
- Bukkit下注册的种类也可以使用,但不保证其可行性和兼容性有好多没列出来 使用实体ID应该也是可以的
- 可识别的种类列表
<spoiler>
| 英文名字 | 中文名字 |
|---|---|
| ARMOR_STAND | 盔甲架 |
| BABY_PIG_ZOMBIE | 小僵尸猪人 |
| BABY_PIG_ZOMBIE_VILLAGER | 小僵尸猪村民 |
| BABY_ZOMBIE | 小僵尸 |
| BABY_ZOMBIE_VILLAGER | 小僵尸村民 |
| BAT | 蝙蝠 |
| BLAZE | 烈焰人 |
| BOAT | 船 |
| CAVE_SPIDER | 洞穴蜘蛛 |
| CHICKEN | 鸡 |
| COW | 牛 |
| CREEPER | 爬行者 |
| ELDER_GUARDIAN | 远古守卫者 |
| ENDER_DRAGON | 末影龙 |
| ENDERMAN | 末影人 |
| ENDERMITE | 末影螨 |
| GHAST | 恶魂 |
| GIANT | 巨人 |
| GUARDIAN | 守卫者 |
| HORSE | 马 |
| HUSK | 尸壳 |
| IRON_GOLEM | 铁傀儡 |
| MAGMA_CUBE | 岩浆怪 |
| MUSHROOM_COW | 蘑菇牛 |
| OCELOT | 豹猫 |
| PIG | 猪 |
| PIG_ZOMBIE | 僵尸猪人 |
| PIG_ZOMBIE_VILLAGER | 僵尸猪村民 |
| PRIMED_TNT | 点燃的TNT |
| POLAR_BEAR | 北极熊 |
| RABBIT | 兔子 |
| SHEEP | 羊 |
| SILVERFISH | 蠹虫 |
| SKELETON | 骷髅 |
| SKELETON_HORSE | 骷髅马(MC 1.11+) |
| SHULKER | 潜影贝 |
| SLIME | 史莱姆 |
| SNOWMAN | 雪傀儡 |
| SPIDER | 蜘蛛 |
| STRAY | 流髑 |
| SQUID | 鱿鱼 |
| VILLAGER | 村民 |
| WITCH | 女巫 |
| WITHER | 凋灵 |
| WITHER_SKELETON | 凋灵骷髅 |
| WOLF | 狼 |
| ZOMBIE | 僵尸 |
| ZOMBIE_HORSE | 僵尸马(MC 1.11+) |
| ZOMBIE_VILLAGER | 僵尸村民 |
</spoiler>
Type: zombie Type: SKELETON
名字显示(Display)
- 生物头上所显示的名字
- 支持颜色代码和变量
- 必须填写在撇号'内'
- 若想名字内显示'撇号,可以使用'的变量代码<&sq>
Display: 'Super Zombie' Display: '&eSuper Zombie' Display: '&cSuper Zombie&r - <mob.level>'
血量(Health)
- 设置生物的最大血量
- 此插件没有最大血量限制。
然而Spigot有2048的最大限制,可在spigot.yml内修改
Health: 200
伤害(Damage)
- 设置生物的基础近战攻击力
- 1点伤害=0.5颗心
- 不会涉及到近战以外的伤害,如弓箭、爆炸、恶魂火焰弹、药水等所造成的伤害。
Damage: 10
防御(Armor)
- 减低生物所受到的伤害量
- 1点伤害=0.5颗心
Armor: 7
Boss血条(BossBar)
- 插件版本2.4或以上
Minecraft 1.9或以上 - 像末影龙那样显示生物的血条在屏幕上方
internal_mobname:
Type: <mobtype>
BossBar:
Enabled: [true/false]
Title: '[name]'
Range: [range]
Color: [color]
Style: [style]
CreateFog: [true/false]
DarkenSky: [true/false]
PlayMusic: [true/false]
- Enabled—是否显示
- Title—显示的名字
- Range—显示的半径范围
- Color—血条的颜色
- PINK,BLUE,RED,GREEN,YELLOW,PURPLE,WHITE
区分大小写 - Style—字体风格
- SOLID,SEGMENTED_6,SEGMENTED_10,SEGMENTED_12,SEGMENTED_20
区分大小写
- CreateFog,DarkenSky和PlayMusic暂时不可用
Test:
Type: creeper
Display: '&cTest'
Health: 20
BossBar:
Enabled: true
Title: 'Test'
Range: 20
Color: RED
Style: SOLID
派别(Faction)
- 设置生物所属的派别,主要用于编辑AI或技能的攻击目标
- 区分大小写,识别字母和数字(还有下划线?)
Faction: SuperZombies Faction: super_zombies
骑乘(Mount)
- 设置生物的骑乘,骑乘必须为MM下的配置生物
- 设置完后,当生物生成时便会自行召唤并坐在骑乘上
Mount: super_zombie_horse
选项(Options)
- 修改或给予生物一系列的可修改项,如是否消失、击退抗性、跟踪范围、移动速度等(有很多哦...)
VeryFastSkeleton:
Type: skeleton
Display: 'Very Fast Skeleton'
Options:
MovementSpeed: 0.3
NoDamageTicks: 50
选项详解
<spoiler>
| 通用选项(Universal options) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| AlwaysShowName | [true/false] |
|
| AttackSpeed | [number] |
|
| Collidable | [true/false] |
|
| Despawn | [true/false] |
|
| FollowRange | [value] |
|
| Glowing | [true/false] |
|
| Invincible | [true/false] |
|
| KnockbackResistance | [number] |
|
| MaxCombatDistance | [number] |
|
| MovementSpeed | [number] |
|
| NoAI | [true/false] |
|
| NoDamageTicks | [number] |
|
| NoGravity | [true/false] |
|
| Persistent | [true/false] |
|
| PreventItemPickup | [true/false] |
|
| PreventLeashing | [true/false] |
|
| PreventMobKillDrops | [true/false] |
|
| PreventOtherDrops | [true/false] |
|
| PreventRandomEquipment | [true/false] |
|
| PreventRenaming | [true/false] |
|
| RepeatAllSkills | [true/false] |
|
| ShowHealth | [true/false] |
|
| Silent | [true/false] |
|
特定设置
| 盔甲架(Armor Stands) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| HasArms | [true/false] | 盔甲架是否有手 2.5前失效
|
| HasGravity | [true/false] | 盔甲架是否受重力影响
|
| Invisible | [true/false] | 是否隐形
|
| ItemBody | [MythicItem Name] | 胸部所装备的MM配置物品 |
| ItemFeet | [MythicItem Name] | 脚部所装备的MM配置物品 |
| ItemHand | [MythicItem Name] | 手上所装备的MM配置物品 |
| ItemHead | [MythicItem Name] | 头部所装备的MM配置物品 |
| ItemLegs | [MythicItem Name] | 腿部所装备的MM配置物品 |
| Marker | [true/false] | 盔甲架是否不能被破坏等活动 |
| Small | [true/false] | 是否为小型盔甲架
|
| Pose Head Body LeftArm RightArm LeftLeg RightLeg |
[0,0,0] | 设置各部位的旋转角度
Mob:
Type: armor_stand
Pose:
Head: 0,50,0
Body: 0,10,10
LeftArm: 0 to 360,0,0
RightArm: 0 to 90,0,0
|
| 鸡(Chicken) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| Jockey | [true/false] | 是否为鸡骑士
|
| 爬行者(Creepers) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| ExplosionRadius | [number] | 爆炸范围 |
| FuseTicks | [number] | 引爆时间(刻) |
| SuperCharged | [true/false] | 是否为充能爬行者
|
| PreventSuicide | [true/false] | 爆炸后是否不死亡
|
| 末影人(Endermen) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| PreventTeleport | [true/false] | 是否阻止其传送
|
| 掉落方块(Falling Blocks) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| Block | [方块种类] | 设定方块的种类
|
| BlockData | [Number] | 方块的附加值
|
| 马(Horses) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| HorseArmor | [armor_type] | 马铠的种类
|
| HorseCarryingChest | [true/false] | 是否背载箱子
|
| HorseColor | [horse_color] | 马的颜色
|
| HorseSaddled | [true/false] | 是否装备上鞍
|
| HorseStyle | [horse_style] | 马的皮肤纹路
|
| HorseTamed | [true/false] | 是否被驯化
|
| HorseType | [type] | 马的种类
|
| 豹猫(Ocelots) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| Ocelot | [type] | 豹猫的种类
|
| 猪(Pigs) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| Saddled | [true/false] | 是否装备上鞍
|
| 兔子(Rabbits) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| RabbitType | [rabbit_type] | 兔子的种类
|
| Baby | [true/false] | 是否为小兔子
|
| 蠹虫(Silverfish) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| PreventBlockInfection | [true/false] | 阻止其影响方块
|
| 雪傀儡(Snowmen) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| PreventSnowFormation | [true/false] | 阻止其生成雪片
|
| TNT | ||
|---|---|---|
| 项 | 参数 | 备注 |
| FuseTicks | [number] | 引爆时间(刻)
|
| ExplosionYield | [number] | 爆炸的强度
|
| Incendiary | [true/false] | 爆炸是否点燃物品
|
| 村民(Villagers) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| VillagerType | [type] | 村民的职业
|
| 僵尸类(Zombies) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| ReinforcementsChance | [number] | 增援几率
|
| 僵尸村民(Zombie Villagers) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| Profession | [type] | 僵尸村民的职业(2.4)
|
特定类设置
| 可繁殖类(Breedable mobs) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| Age | [number] | 确定生物的岁数
|
| AgeLock | [true/false] | 是否锁定岁数
|
| 可染色类(Colorable Mobs) 用于羊和狼 | ||
|---|---|---|
| 项 | 参数 | 备注 |
| Color | [number] | 修改羊毛或项圈的颜色
|
| 中立类(Neutral mobs)用于狼和猪人 | ||
|---|---|---|
| 项 | 参数 | 备注 |
| Angry | [true/false] | 生成时是否被激怒
|
| 史莱姆一族(Slimes & Magma Cubes) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| PreventSlimeSplit | [true/false] | 是否阻止其进行分裂 |
| Size | [number] | 史莱姆的大小
|
| 可被驯服类(Tameable Mobs) | ||
|---|---|---|
| 项 | 参数 | 备注 |
| Tameable | [true/false] | 是否可被驯服
|
</spoiler>
模块(Modules)
- 设置启用/禁用威胁度(Threat Tables)和伤害硬直(Immunity Tables)模块
威胁度(Threat Tables)

威胁度用于控制生物的攻击目标。一般情况下原版的生物只会单纯地以最后一个伤害源为攻击目标。
若是启用威胁度,生物便会记录各玩家对他所造成的伤害,并因此选择累计造成伤害最高的玩家为攻击目标。从而避免生物两头跑被调戏的尴尬局面。
威胁度的几个内置功能让生物的目标选择能力看起来更聪明,并遵从一般MMORPG游戏下的规则。玩家通过造成伤害提升对生物的威胁度,若是远离BOSS便会降低威胁度。
一段时间内超过生物的最大攻击范围(MaxCombatRange),离开当前世界,或退出游戏的话也会降低其威胁度。
生物只会在新的威胁度超过当前攻击目标威胁度的110%时才会改变攻击目标。
注意-启用威胁度的生物会无视AITargetSelectors下的设置。并且,启用的生物会尝试攻击任何对他造成伤害的实体。
启用办法:ThreatTable后面设为true
BigScaryBoss:
Type: zombie
Display: '&6Zombie'
Health: 20000
Modules:
ThreatTable: true
威胁度的计算是全自动进行的。若想特意修改生物对某目标的威胁度,可通过Threat技能进行修改。
威胁度还拥有API,包括"嘲讽"和改变威胁的能力,若另一个插件作者有意修改技能或能力与威胁度的关系。
伤害硬直(Immunity Tables)
伤害硬直允许生物在受到伤害时记录各玩家的伤害免疫时间(NoDamageTicks),换句话说生物只会在每(默认)半秒的时间内受到同一个玩家的伤害。没开启伤害硬直的话就是每半秒的时间内受到伤害。其意义就是允许多个玩家同时或短时间内攻击生物时,生物会受到多次伤害计算。
启用办法:ImmunityTable后面设为true
BigHealthBoss:
Type: pig_zombie
Display: '&6Hungry Hungry Piggy Zombie'
Health: 20000
Modules:
ImmunityTable: true
Options:
NoDamageTicks: 10
- 可通过修改通用选项下的NoDamageTicks定义伤害硬直的时间
默认设置为10刻
自定义AI
几个自定义AI教程示例
| 目标,对象,派别 |
|---|
*自定义AI通常会使用到的两个东西。AI行动目标,确定生物的行动。还有AI对象目标,确定生物所选取的攻击对象或技能对象
DecayingSkeleton:
Mobtype: skeleton
Display: '&aa decaying skeleton'
Health: 15
Damage: 1
Faction: Undead
AIGoalSelectors:
- 0 clear
- 1 arrowattack
AITargetSelectors:
- 0 clear
- 1 players
Options:
FollowRange: 10
MovementSpeed: 0.2
PreventOtherDrops: true
DecayingSkeleton:
Mobtype: skeleton
Display: '&aa decaying skeleton'
Health: 15
Damage: 1
Faction: Undead
AIGoalSelectors:
- 0 clear
- 1 meleeattack
AITargetSelectors:
- 0 clear
- 1 hurtbytarget
- 2 otherfactionmonsters
Equipment:
- COS_WoodSword:0
Options:
FollowRange: 10
MovementSpeed: 0.2
PreventOtherDrops: true
|
| 示例1:城镇门卫 |
|---|
*接下来我们将设置一个守在城门的守卫用于赶走靠近的怪物。我们的守卫可以使用铁傀儡伪装成村民,不过这样的话铁傀儡原有的AI和其特殊的击飞攻击使其略厉害了点...所以我们现在用MM的AI设置一个适合我们使用的守卫
SummonedGuard1:
Mobtype: skeleton
Display: '&Ea town guard'
Health: 500
Damage: 5
Equipment:
- COS_StoneSword:0
Options:
Disguise: villager
Despawn: true
FollowRange: 5
AlwaysShowName: false
MovementSpeed: 0.35
PreventOtherDrops: true
KnockbackResistance: 1
PreventMobKillDrops: true
SummonedGuard1:
Mobtype: skeleton
Display: '&Ea town guard'
Health: 500
Damage: 5
Equipment:
- COS_StoneSword:0
Faction: Guard
AIGoalSelectors:
- 0 clear
- 1 opendoors
- 2 meleeattack
AITargetSelectors:
- 0 clear
- 1 hurtbytarget
- 2 otherfactionmonsters
Options:
Disguise: villager
Despawn: true
FollowRange: 5
AlwaysShowName: false
MovementSpeed: 0.35
PreventOtherDrops: true
KnockbackResistance: 1
PreventMobKillDrops: true
DecayingSkeleton:
Mobtype: skeleton
Display: '&aa decaying skeleton'
Health: 15
Damage: 1
Faction: Undead
AIGoalSelectors:
- 0 clear
- 1 meleeattack
AITargetSelectors:
- 0 clear
- 1 hurtbytarget
- 2 players
Equipment:
- COS_RawHead:4
- COS_WoodSword:0
Options:
Despawn: true
FollowRange: 10
AlwaysShowName: false
MovementSpeed: 0.2
PreventOtherDrops: true
|
| 示例2:兽人vs哥布林 |
|---|
*设想一下,一个世界里有两个种群,哥布林和兽人,而他们对对方一直以来都不太友善。
OrcCenturion:
Mobtype: villagezombie
Display: '&aan orc centurion'
Health: 50
Damage: 4
Faction: Orcs
AIGoalSelectors:
- 0 clear
- 1 opendoors
- 2 meleeattack
AITargetSelectors:
- 0 clear
- 1 hurtbytarget
- 2 specificfactionmonsters Goblin
- 3 players
Equipment:
- C_DeathfistSkullcap:4
- C_DeathfistTunic:3
- C_DeathfistLeggings:2
- C_DeathfistBoots:1
- COS_WoodSword:0
Options:
Despawn: true
FollowRange: 10
AlwaysShowName: false
MovementSpeed: 0.25
PreventOtherDrops: true
PreventItemPickup: true
KnockbackResistance: 0.25
PreventMobKillDrops: true
GoblinBattlemaster:
Mobtype: zombie
Display: '&aa goblin battlemaster'
Health: 80
Damage: 4
Faction: Goblin
AIGoalSelectors:
- 0 clear
- 1 opendoors
- 2 meleeattack
AITargetSelectors:
- 0 clear
- 1 hurtbytarget
- 2 specificfactionmonsters Orcs
- 3 players
Equipment:
- COS_BronzeHead:4
- COS_BronzeChest:3
- COS_BronzeLegs:2
- COS_BronzeFeet:1
- COS_WoodAxe:0
Skills:
- skill BashI ~onAttack >0 0.25
Options:
Despawn: true
FollowRange: 10
AlwaysShowName: false
MovementSpeed: 0.25
PreventOtherDrops: true
PreventItemPickup: true
KnockbackResistance: 0.4
PreventMobKillDrops: true
|
行动选择器(AIGoalSelectors)
行动选择器,顾名思义规定生物的行动。若生物自身没有此项基本行动就不会对其产生作用。例如,僵尸不会也不能吃草(EatGrass)。
例子:
SuperMob: Type: zombie Health: 200 Display: 'Superb Zombie' AIGoalSelectors: - 0 clear - 1 meleeattack - 2 randomstroll
这只僵尸除了会攻击玩家,还会在没有攻击目标时随意走动。 <spoiler>
| 所有生物(All Mobs) | ||
|---|---|---|
| 项 | 别名 | 备注 |
| clear | reset | 清除生物的AI 放置首位保证生物AI的正常运行 |
| breakdoors | 使生物懂得破门 | |
| eatgrass | 使生物偶尔...吃草 | |
| float | swim | 使生物懂浮在水面,不被淹死 |
| lookatplayers | 望向附近玩家 | |
| opendoors | opendoor | 使生物懂得打开面前的门并经过后关上 |
| closedoors | restrictopendoor | 不清楚有什么用 哪位来测试下:P (原话哦...) |
| randomlookaround | lookaround | 随处观看 |
| 生物(Creatures Only) | ||
|---|---|---|
| 项 | 别名 | 备注 |
| avoidarrows | 使生物躲闪箭 MM 2.5.0+ 移除 | |
| avoidcreepers | 使生物躲避爬行者 | |
| avoidskeletons | 使生物躲避骷髅 | |
| avoidzombies | 使生物躲避僵尸 | |
| fleesun | 早上躲在影子下 | |
| meleeattack | 使生物靠近并近攻目标 | |
| movetowardstarget | 使生物靠近目标 | |
| randomstroll | 随处走动 | |
| restrictsun | 理论上能限制生物走向高亮度的地方 | |
| fleeplayers | runfromplayers | 躲避玩家 |
| fleegolems | runfromgolems | 躲避铁傀儡 |
| fleevillagers | runfromvillages | 躲避村民 |
| spiderattack | 使蜘蛛攻击目标(看着和meleeattack没什么不同) *可尝试配合leapattarget使用 | |
| leapattarget | 使生物跳向目标*貌似需要meleeattack/spiderattack才能正常运作 | |
| moveindoors | 暂无描述 | |
| movethroughvillage | 暂无描述 | |
| movetowardsrestriction | 暂无描述,自己猜吧... | |
| patrol x1,y1,z1;x2,y2,z2;x3,y3,z3;… | patrolroute | 巡逻,坐标之间走动 MM 2.4添加 只在MC 1.9下正常运作 |
| gotolocation x,y,z | goto | 走向坐标 MM 2.4添加 |
| gotoowner | 走向主人 MM 2.4.1 | |
| 射手(Ranged Entities Only) | ||
|---|---|---|
| 项 | 别名 | 备注 |
| arrowattack | 弹射攻击 (使骷髅射箭) | |
| skeletonbowattack | bowshoot bowmaster |
MC1.9+骷髅的新扫射AI |
</spoiler>
目标选择器(AITargetSelectors)
目标选择器,顾名思义设置生物的目标对象。 例子:
SuperMob: Type: zombie Health: 200 Display: 'Superb Zombie' AIGoalSelectors: - 0 clear - 1 meleeattack - 2 randomstroll AITargetSelectors: - 0 clear - 1 players - 2 golems
所有生物(All Creatures)
- clear—清除所有AI
- attacker—以攻击源为目标
- players—以玩家为目标
- villagers—以村民为目标
- golems—以傀儡为目标
派别相关(Faction Support)
- OtherFaction—以自身以外派别的生物为目标
- OtherFactionMonsters—以自身以外派别的怪物为目标?
- OtherFactionVillagers—以自身以外派别的村民为目标
- SpecificFaction [派别名字]—特指一个派别为目标
- SpecificFactionMonsters [派别名字]—特指一个派别为目标?
AITargetSelectors: - 1 SpecificFaction undead
限制生物只以undead派的生物为目标
可驯服类(Tameable Creatures)
- ownerattacker—以攻击自己主人的对象为目标
- ownertarget—以自己主人攻击的对象为目标
伤害调整(DamageModifiers)
- 设置或者说控制生物最终受到的伤害量
- 比如,免疫近伤,但受到箭的伤害加倍...
| 可修改项列表 | ||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
例子
<spoiler>
注意:设置为1的话就是受到全数伤害
高于1就会受到比原本多的伤害
低于1就是减少等值伤害
0为免疫此伤害
设为负数值的话就会进行回血,但若此生物原本免疫此伤害便不会凑效(比如铁傀儡免疫掉落伤,烈焰人免疫烧伤/岩浆)
- 那么我们开始从一个基本的框架弄起
ArmoredZombie: Mobtype: zombie Display: '&aArmored Zombie' Health: 40 Damage: 6
- 呐,我们先为Armored Zombie提升受到两个伤害的抗性吧。近战和弹射物受到的伤害为原来的75%,如下
ArmoredZombie: Mobtype: zombie Display: '&aArmored Zombie' Health: 40 Damage: 6 DamageModifiers: - ENTITY_ATTACK 0.75 - PROJECTILE 0.75
- 这样我们的僵尸就对这两的伤害抗性提高了。任何来自其他生物或玩家造成的这两个伤害就会减低25%。感觉有点厉害啊,咱们在给他一个弱点吧
ArmoredZombie: Mobtype: zombie Display: '&aArmored Zombie' Health: 40 Damage: 6 DamageModifiers: - ENTITY_ATTACK 0.75 - PROJECTILE 0.75 - MAGIC 1.25
- 完成了~这样的话我们的僵尸就对近伤和弹射物有少许抗性提升,并且弱点为magic(投掷型恢复药水)
- 我们下一个例子是抗火僵尸,他不仅不会受到接触火焰和岩浆的伤害,还会从中恢复血量。接触岩浆时恢复4倍速哦~
不适用于下界生物,因为他们自身免疫火焰伤害导致伤害调整不可修改
FireElemental: Mobtype: zombie Display: '&cFire Elemental' Health: 20 DamageModifiers: - FIRE -1 - LAVA -4 - FIRE_TICK 0
</spoiler>
装备(Equipment)
- 给予生物生成时装备上原版或MM配置的物品或装备
- 装备只会在其生成时装备上,之后可以被如Equip技能更改
- 如果不想生物生成时有任何装备,可以使用PreventRandomEquipment这一设置,详见Options
另一种办法是装备栏设置上假的装备,如使用ID为0的物品
internal_mobname: Type: <mobtype> Equipment: - <item>:<slot> - <item>:<slot> - ...
- <item>
可以是MM配置物品或原版物品 - <slot>
决定物品所在的装备槽
- <item>
| 槽 | 描述 |
|---|---|
| 5 | 非主手槽,1.9的新功能。能渲染任何物品 |
| 4 | 头部。除了头盔外,可以是任何拥有方块模型的物品(如砧板,玻璃片,玻璃块...)或玩家头颅。大部分能准确渲染 |
| 3 | 胸部。只渲染胸甲,但可以装备任何物品 |
| 2 | 腿部。只渲染腿部装备,但可以装备任何物品 |
| 1 | 脚部。只渲染靴子,但可以装备任何物品 |
| 0 | 主手槽。渲染任何物品 |
非主手槽(5)于2.3.2版本加入
例子
<spoiler>
awesome_boss: Type: pig_zombie Equipment: - awesome_boss_helmet:4 - diamond_sword:0
头部的awesome_boss_helmet为MM配置物品
主手握着原版钻石剑
</spoiler>
死亡信息(KillMessages)
- 允许你自定义生物杀死玩家时的显示信息。通常当玩家被杀死时只会显示"玩家被僵尸杀死"或"玩家被燃烧至死"之类的信息。给予自定义死亡信息让死亡的意义...到达一个新的高度
- 写法比较简单。还可以设置从已设好的语句中随机显示一个。
Souleater: Type: SKELETON Display: 'Soul Eater' Health: 666 KillMessages: - '<target.name> had their soul completely devoured' - '<target.name><&sq>s soul was feasted upon by Soul Eater' Skills: ...
- 就是这么简单!任何被Soul Eater杀掉的玩家,服务器会发送设置好的2个语句中的随机一个。同时也可以于语句中使用变量,比如例子中所使用的<target.name>就是生物目标对象的名字,也就是死亡的玩家名字
- 更多的修改可在config.yml下修改KillMessagePrefix。此项修改为所有生物的杀害信息(然而修改这里不适用变量)
小技巧
- 你也可以设置如下来使生物"不显示"玩家死亡信息
SilentUndead: Type: zombie Display: 'Silent Undead' KillMessages: - ''
等级调整值(LevelModifiers)
- 生物的等级是一个比较有用的功能。等级的上升意味着其威力的提升,同时还能因其掉落更多的物品
- 或者,更通过修改设置可以使其根据自身等级掉落完全不同的物品,使用不同的技能,又或者生成于不同的地方(使用spawners和randomspawns)
- 生物的等级可被世界范围(见下),随机生成,或技能SetLevel影响
- 此页目前只概括基本的用法,更多教程或例子或在以后添加
Zombie:
MobType: zombie
Health: 100
Damage: 10
Display: '&5Zombie Lvl - <mob.level>'
Options:
MovementSpeed: 0.3
Drops:
- GOLD_NUGGET 1 1
DropsPerLevel:
- GOLD_NUGGET 1 0.5
LevelModifiers:
Health: 5
Damage: 0.5
- 每级提升掉落详见DropsPerLevel
- 下面可改的数据会根据当前级别增加到原来的基础之上
- 若是生物配置下没有设定其基本的几项属性可能会不能正常使用
| 项 | 中文 |
|---|---|
| Health: [number] | 血量 |
| Damage: [number] | 近战伤害 |
| KnockbackResistance: [number] | 击退抗性 |
| Power: [number] | 威力用于几个适用技能的伤害计算单位 |
| Armor: [number] | 防御 |
| MovementSpeed: [number] | 移动速度 |
| AttackSpeed: [number] | 攻击速度 |
- "MovmentSpeed"和"AttackSpeed"于2.3.2添加
世界范围(World Scaling)
<spoiler>
- 随机生成的MM生物的等级可以被插件或config.yml下定义的世界的范围所配予。设置办法为打开config.yml,如下
Scaling:
Default:
Enabled: false
PerBlocksFromSpawn: 250
world2:
Enabled: false
PerBlocksFromSpawn: 250
world2_nether:
Enabled: false
PerBlocksFromSpawn: 100
- 首先,设置世界的名字。如果没改动过的话默认地图名字一般为world。然后,Enabled设置为true
- 接下来,设置PerBlocksFromSpawn: [blocks]。根据这个设置的数值,MM生物会根据自己的等级生成于Spawn(游戏出生点?)往外的级别范围。
- 若我们设置为PerBlocksFromSpawn: 250
- 0级的生物会生成于Spawn点范围0~249半径方块范围—白色区域
- 1级—250~499方块—肤色区域
- 2级—500~749方块—黄色区域
- 3级—750~999方块—橙色区域
- 4级—1000~1249方块—红色区域
- 5级—1250~1499方块...
- 此修改只会影响到随机生成的MM配置生物,不会也不能影响到VanillaMobs.yml下生物的生成
</spoiler>
伪装(Disguise)
- 使生物看着像另一种生物,物品,方块或其他实体
- 需要LibsDisguises和ProtocolLib插件
还有某些版本能完美运行,有些却很差强人意...自行体验
<spoiler>
| 英文 | 中文 |
|---|---|
| arrow | 箭 |
| babyzombievillager | 小僵尸村民 |
| bat | 蝙蝠 |
| blaze | 烈焰人 |
| block | 方块。见下 |
| boat | 船 |
| cave_spider | 洞穴蜘蛛 |
| chicken | 鸡 |
| cow | 牛 |
| creeper | 爬行者 |
| donkey | 驴子 |
| dropped_item | 掉落物。见下 |
| egg | 蛋 |
| ender_crystal | 末影水晶 |
| ender_dragon | 末影龙 |
| ender_pearl | 末影珍珠 |
| ender_signal | 末影之眼丢出时的粒子效果 |
| enderman | 末影人 |
| experience_orb | 经验球 |
| fireball | 火焰弹 |
| firework | 火箭 |
| fishing_hook | 鱼钩 |
| ghast | 恶魂 |
| giant | 巨人 |
| horse | 马 |
| iron_golem | 铁傀儡 |
| item_frame | 物品展示框 |
| leash_hitch | 绑出去的拴绳 |
| magma_cube | 岩浆怪 |
| minecart | 矿车 |
| minecart_chest | 箱子矿车 |
| minecart_furnace | 熔炉矿车 |
| minecart_hopper | 漏斗矿车 |
| minecart_mob_spawner | 刷怪笼矿车 |
| minecart_tnt | TNT矿车 |
| mule | 骡子 |
| mushroom_cow | 蘑菇牛 |
| ocelot | 豹猫 |
| painting | 挂画 |
| pig | 猪 |
| pig_zombie | 僵尸猪人 |
| player | 玩家。见下 |
| polar_bear | 北极熊 |
| primed_tnt | 点燃的TNT |
| sheep | 羊 |
| silverfish | 蠹虫 |
| skeleton | 骷髅 |
| skeleton_horse | 骷髅马 |
| slime | 史莱姆 |
| small_fireball | 小型火焰弹 |
| snowball | 雪球 |
| snowman | 雪傀儡 |
| spider | 蜘蛛 |
| splash_potion | 投掷型药水 |
| squid | 鱿鱼 |
| thrown_exp_bottle | 经验瓶 |
| undead_horse | 僵尸马 |
| villager | 村民 |
| witch | 女巫 |
| wither | 凋灵 |
| wither_skeleton | 凋灵骷髅 |
| wither_skull | 凋灵之首 |
| wolf | 狼 |
| zombie | 僵尸 |
| zombievillager | 僵尸村民 |
</spoiler>
| 伪装可修改项 | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
示例 SneakyDisguisingMob:
Type: wither_skeleton
Display: 'meh'
CustomKillMessages:
- '<target.name> was sneaked upon! (to death)'
Health: 128
Disguise:
Type: player
Skin: 'meeeh'
Player: Steve
Burning: true
Blocking: true
Invisible: false
ShowName: false
Sneaking: true
Sprinting: true
ModifyBoundingBox: false
|
| 例子 |
|---|
LivingIron:
Type: Skeleton
Disguise:
Type: BLOCK
Block: IRON_BLOCK
BlockData: 0
ShowName: true
PossessedSword:
Type: Skeleton
Disguise:
Type: ITEM
Item: IRON_SWORD
ItemData: 0
GuardMob:
Type: IRON_GOLEM
Disguise:
Type: Player
Player: Guard
Skin: Notch
|
技能(Skills)&变量
- 一列可用的MythicMobs技能详细列表
- 技能为MM插件的一大特点。所有生物都可以根据不同情况发动技能。技能的编写十分简单且灵活,很容易就能编辑出一个Minecraft下的MMORPGs类型的BOSS
- 一个完整的技能由以下几个构成
基本类技能Mechanics
特效类技能Effects
技能目标对象Targeters
简易的技能触发要求Triggers
更高级的触发条件Conditions
| 技能编辑教学 |
|---|
一个技能的顺序格式如下
FieryZombie: Type: ZOMBIE Display: 'Fiery Zombie' Health: 50 Skills: - 技能1 - 技能2 - 等... 大概就是这样,那一个实际的例子是怎样的呢? FieryZombie:
Type: ZOMBIE
Display: 'Fiery Zombie'
Health: 50
Skills:
- ignite{ticks=100} @target ~onAttack <50% 0.5
就是这样,现在我们来详细看下一个技能的格式 Skills:
- 技能名字{技能修改项=数值} @[技能对象] ~on[激活条件] [血量要求] [几率]
技能(Mechanics)
Skills:
- 技能名字{技能修改项=数值;技能修改项=数值;技能修改项=数值}
Skills:
- 技能名字{
技能修改项=数值;
技能修改项=数值;
技能修改项=数值;
}
Skills:
- ignite{ticks=100}
技能目标(Targeters)
Skills:
- 技能名字{技能修改项=数值} @技能目标{目标修改项=数值}
Skills:
- ignite{ticks=100} @target
Skills:
- ignite{ticks=100} @PlayersInRadius{r=5}
触发条件(Triggers)
Skills:
- 技能名字{技能修改项=数值} @技能目标{目标修改项=数值} ~on激活时
Skills:
- ignite{ticks=100} @target ~onAttack
血量要求(Health Modifiers)
=90% - 血量到达90%时触发 <50% - 血量小于50%时触发 =30%-50% - 当血量为30%到50%之间时触发 <2000 - 血量小于2000点时触发 >500 - 血量大于500点时触发 >10,=5,<3% - 血量大于10点,等于5,或小于3%时都可触发
Skills:
- ignite{ticks=100} @target ~onAttack <50%
几率(Chance)
Skills:
- ignite{ticks=100} @target ~onAttack <50% 0.5
|
变量(Variables)
- 变量用于决定返还一个特定的数值并用于技能之上,也可单纯用于显示颜色或特殊符号
例子:显示被干掉的生物名字 被骑士 显示使用技能的玩家的名字 使用技能斩杀了
Skills:
- message{m="&b<mob.name>&r 被骑士 &a<trigger.name>&r 使用技能斩杀了"} @PIR{r=20} ~onDeath
技能变量
| 生物变量 | 描述 | |
|---|---|---|
| 若没有标明生物名字,以下变量或许会不能运行 | ||
| <mob.uuid> | 返还生物的UUID | |
| <mob.level> | 返还生物的等级 | |
| <mob.name> | 返还生物的名字 | |
| <mob.hp> | 返还生物的当前血量值 | |
| <mob.mhp> | 返还生物的最大(max)血量值 | |
| <mob.php> | 返还生物的当前血量值并以百分比形式 | |
| <mob.thp> | 返还生物的最大(full number)血量值 | |
| <mob.tt.top> | 返还对生物威胁度最高的伤害源名字 | |
| <mob.l.w> | 返还生物现在所在世界的名字 | |
| <mob.l.x> | 返还生物现在的x轴坐标 | |
| <mob.l.y> | 返还生物现在的y轴坐标 | |
| <mob.l.z> | 返还生物现在的z轴坐标 | |
| <mob.stance> | 返还生物当前的状态(2.2) | |
| <mob.owner.name> | 返还狼的主人的名字(2.3) | |
| <mob.owner.uuid> | 返还狼的主人的UUID(2.3) | |
| 目标变量 | 描述 | |
|---|---|---|
| 以下变量返还目标选择器下的相关数值 <target.name>+@NearstPlayer就会返还离使用此技能的生物的最近玩家的名字 | ||
| <target.uuid> | 返还目标的UUID | |
| <target.name> | 返还目标的名字 | |
| <target.hp> | 返还目标的当前血量值 | |
| <target.threat> | 返还目标的威胁度 | |
| <target.l.w> | 返还目标现在所在世界的名字 | |
| <target.l.x> | 返还目标现在的x轴坐标 | |
| <target.l.y> | 返还目标现在的y轴坐标 | |
| <target.l.z> | 返还目标现在的z轴坐标 | |
| 触发变量 | 描述 |
|---|---|
| <trigger.uuid> | 返还技能触发者的UUID |
| <trigger..name> | 返还技能触发者的名字 |
| <trigger.hp> | 返还技能触发者的当前血量值 |
| <trigger.threat> | 返还技能触发者的威胁度 |
| <trigger.l.w> | 返还技能触发者现在所在世界的名字 |
| <trigger.l.x> | 返还技能触发者现在的x轴坐标 |
| <trigger.l.y> | 返还技能触发者现在的y轴坐标 |
| <trigger.l.z> | 返还技能触发者现在的z轴坐标 |
其他变量
| 变量 | 描述 |
|---|---|
| <drops.xp> | 返还Heroes或SkillAPI插件的经验掉落值 |
| <drops.money> | 返还Vault插件的金钱掉落值 |
特殊变量
| 变量 | 描述 |
|---|---|
| <random.min-max> | 返还一个定义的最小和最大数之间的随机数值(2.2.1) |
| <mob.score.objective> | 返还生物记分板objective下的分数(2.3) |
| <target.score.objective> | 返还目标记分板objective下的分数(2.3) |
| <trigger.score.objective> | 返还技能触发者记分板objective下的分数(2.3) |
| <global.score.objective> | 返还记分板objective下的总分(2.3) |
| <score.objective.dummyname> | 返还记分板objective下dummyname的分数(2.3) |
特殊符号
| 变量 | 描述 |
|---|---|
| <&co> | 返还冒号 : |
| <&sq> | 返还撇号 ' |
| <&da> | 返还减号 - |
| <&bs> | 返还反斜杠 \ |
| <&fs> | 返还斜杠 / |
| <&sp> | 返还空格 |
| <&cm> | 返还逗号 , |
| <&sc> | 返还分号 ; |
| <&eq> | 返还等号 = |
| <&ss> | 返还分节符 § |
| <&dq> | 返还双引号 " |
| <&rb> | 返还右方括号 ] |
| <&lb> | 返还左方括号 [ |
| <&rc> | 返还右大括号 } |
| <&lc> | 返还左大括号 { |
| <&nl> | 另起新的一行 |
| <&heart> | 返还一个爱心符号(2.1.7) |
| <&skull> | 返还一个骷髅骨头符号(2.1.7) |
颜色代码
可使用于生物或技能下,也能用于tellraw命令下
| 变量 | 描述 |
|---|---|
| &0 | 黑色 |
| &1 | 深蓝色 |
| &2 | 深绿色 |
| &3 | 深水蓝色 |
| &4 | 深红色 |
| &5 | 深紫色 |
| &6 | 金色 |
| &7 | 灰色 |
| &8 | 深灰色 |
| &9 | 蓝色 |
| &a | 绿色 |
| &b | 水蓝色 |
| &c | 红色 |
| &d | 浅紫 |
| &e | 黄色 |
| &f | 白色 |
| &K | 乱码 |
| &L | 加粗 |
| &M | 删除线 |
| &N | 下划线 |
| &O | 斜体 |
| &R | 颜色代码重置/清空 |
条件要求(Conditions)
一些旧版(2.5.11)的条件。只要把Conditions改为LegacyConditions就仍然可在MM4.0.0+使用 <spoiler>
- biome [biome_name]
- 若在此地形
- 地形种类
- 允许使用/进行分隔
- 地形名字应为全大写
- biome FOREST
- distancefromspawn [number](2.4)
- 若在生成点特定的范围内
- 可以特定范围 10-405,也可以是范围值 >10 或 <77 等...
- distancefromspawn >100
- globalscore [objective];[score](2.3)
- 若玩家的分数...时
- globalscore playerkills;>10
- height [number_range]
- 若在某y轴高度时
- 可以是范围 20-40, >10 或 <5 等...
- 按F3可查看高度/Y轴
- height 0-20
- heightabove/heightbelow [number]
- 若在以上/以下高度时
- 按F3可查看高度/Y轴
- heightabove 0
- holding [itemname]
- 当技能使用者手持制定物品时
- 必须是Bukkit定义的物品名字。不能是MM物品名字
- 方块/物品名字列表
- 由于特殊漏洞原因,此条件不能检测带有损伤值的物品(2.2.1或之前)
- holding STICK
- inblock [material_type]
- 若使用者在特定的方块时
- 用于检测是否在水中、空中、岩浆里时十分有效
- 方块名字列表
- 允许使用/进行分隔
- 注意若想使用者在水方块中而非仅仅是在水面请使用STATIONARY_WATER替代WATER
- inblock WATER
- incombat
- 若处于战斗状态(拥有目标)时
- incombat
- inregion/notinregion [region]
- 若处于/不处于WorldGuard插件定义的区域时
- inregion castle
- lastsignal [signal](2.2.1)
- 若接受的最后一个信号为此指定的信号 详见signal技能
- 不同于stance条件,signal会检测完全匹配的数据
- lastsignal ping
- level [number_range]
- 若在指定的等级范围内
- 可以是范围 20-40, >10 或 <5 等...
- level >3
- lightlevel [number_range]
- 若处于指定的亮度范围内
- 选值范围必须为0~15之间
- lightlevel 0-3
- lightlevelabove/lightlevelbelow [number]
- 若处于以上/以下亮度范围内
- lightlevelabove 6
- lunarphase [phase]
- 若在游戏内的某一天时
- 可用逗号,分隔指定的游戏天数
- lunarphase 0,2,4
- mobscore [objective];[score](2.3)
- 若其记分板的分数为某个值时
- mobscore timeshit;=3
- mobinchunk [number_range]
- 若所在区块有指定量的生物时
- 可以是范围 20-40, >10 或 <5 等...
- mobinchunk <20
- mobinworld [number_range]
- 若所在世界有指定量的生物时
- 可以是范围 20-40, >10 或 <5 等...
- mobsinworld >100
- mobtype [mobname]
- 若生物的名字匹配时生成此生物
- 只用于随机生成配置下
- mobtype COW
- offgcd
- 若技能的整体冷却时间global cooldown为0时
- global cooldown为用于决定生物所不能使用技能的时间段/技能延时
- 使用gcd技能设置技能延时的时间,默认无冷却时间
- 用于减慢或防止某些拥有多个技能的生物同时使用不同技能的几率
- offfgcd
- onblock [material_type]
- 若站在某方块上时
- 方块名字列表
- 允许使用/进行分隔
- onblock grass
- outside/inside [true/false]
- 若在室外/室内时
- 室外的定义为对天空有清晰的视野时,室内的定义则相反
- outside true
- playerkills [number]
- 若玩家斩杀数为指定值时
- playerkills 7
- playernotwithin/targetnotwithin [distance]
- 若玩家/目标不在范围内时
- 输入单个数值。若想使用范围值,使用targetdistance条件
- playernotwithin 5
- targetnotwithin 2
- playerwithin/targetwithin [distance]
- 若玩家/目标在范围内时
- 输入单个数值。若想使用范围值,使用targetdistance条件
- 通过连续配合targetinlineofsight条件使用来使生物即使见不到玩家或距离太远时也能使用技能
- playerwithin 15
- targetwithin 7
- raining [true/false]
- 若正在/没有下雨时
- raining false
- score(2.3)
- 用于检测虚拟玩家记分板下的分数
- score <objective>;<entry>;<numberrange>
- score kills;dummyplayer;10-14
- stance [string]
- 若生物处于某一状态时
- 状态由setstance技能给予
- 使复杂的检测系统成为可能。若当前的状态被设置为AGGRO,而stance条件检测GG时,此次检测成立
- stance defensive
- sunny [true/false]
- 若处于/不为晴天时
- sunny true
- targetscore [objective];[score](2.3)
- 若目标记分板的分数为某数值时
- targetscore mobkills;>99
- targetdistance [number_range]
- 若目标处于范围值内时
- 识别使用范围,如 10-20
- targetdistance 10-20
- targetinlineofsight/targetnotinlineofsight [true/false]
- 若目标在/不在可视范围内时
- targetinlineofsight true
- thundering [true/false]
- 若有/没有打雷时
- thundering false
- world [worldname]
- 若当前世界为指定的世界时
- 可以指定单个世界,也可以使用逗号列表
- 允许使用/进行分隔
- world snowyworld, lavaworld, islandworld
- worldtime [number_range]
- 若当前世界时间为指定范围内时
- 取值范围为0~24000
可使用/time显示当前世界的时间 - 0-12000为游戏内的白天,12001-13800为黄昏,13801-22200为晚上,22201-24000为黎明
- worldtime 0-12000
例子
FlameShock:
Cooldown: 1
Conditions:
- targetwithin 15
- targetinlineofsight true
- incombat
- stance aggressive
- onblock GRASS
- offgcd
Skills:
- gcd{t=60}
- message{m="<mob.name> begins casting a spell"}
- potion{t=SLOW;d=60;l=7}
- delay 60
- message{m="<target.name> &ecombusts"}
- effect:particles{p=flame;a=20;hS=3;vS=1;s=0;y=2}
- potion{t=HARM;d=1;l=1}
</spoiler>
条件Conditions用于判定当处于/不处于某个情况时执行某项事件。条件的填写方法见例子
条件可用于以下位置 非所有条件适用于所有地方
当Conditions下有多个条件时,必须按顺序满足所有条件才可执行。那些允许使用/的条件只要满足其定义中的其中一个即视为匹配此条件
条件是如何运作的
条件的种类:
条件可分为三种
- 条件(Conditions) - 以技能的使用者为目标
- 目标条件(TargetConditions) - 以技能的对象为目标
- 触发条件(TriggerConditions) - 以触发技能的对象为目标
要注意的是,并不是所有条件要求都适用于这三种类型的条件。比如,
Conditions:
- globalscore{objective=Test;v=>10}
globalscore并没有任何特殊的目标,所以只能在Conditions下运作
TargetConditions: - lineofsight false
而这个并不能填写在Conditions下,因为lineofsight需要目标对象才能执行,所以只能填写在TargetConditions或TriggerConditions下
格式:
从4.0.0起,所有条件的新格式大致如下
Conditions:
- 条件 [变量]
- 条件 [变量] [条件动作]
- 条件 [变量] [条件动作] [条件动作的变量]
- 条件{变量1=数值;变量2=数值} [条件动作] [条件动作的变量]
这个新的条件动作可用于在满足/不满足条件的情况下,是否使用技能。例子如下
Conditions:
- day required
- stance defensive power 0.5
- stance{stance=defensive} power 0.5
- score{objective=test;value=>20} cancel
- haspotioneffect{type=POISON;level=>0;duration=0 to 100} true
条件动作
新增的条件动作使我们能在条件上有更多的修改空间。
比如,新版允许在满足/不满足条件的情况下执行...而旧版的条件要求只会在满足条件的情况下执行
- 以下为一列条件动作
- reqiured/true(默认) - 满足条件时,执行技能
- cancel/false - 满足条件时,不执行技能
- power [数值] - 满足条件时,调整技能的伤害 (power 2.0 会使技能的威力翻倍)
- cast [技能] - 未实现 满足条件时,使用额外的指定技能
- castinstead [技能] - 未实现 满足条件时,使用指定技能替代原定技能
不选取目标类条件
- globalscore{objective=[objective];value=[vaule]}
- 检测名为"__GLOBAL__"玩家的分数
- 你可以以此用作记录服务器某项东西的分数
- globalscore{objective=Test;value⇒10}
- mobsinworld{a=[amount]}
- 检测当前世界的生物数量
- 可输入单个数值,或使用数值范围
- mobsinworld{a⇒10}
目标/触发类条件
- distance{d=[value]}
- 当目标在指定范围内时
- 可输入单个数值,或使用数值范围 20-40 >10 <5 等
- distance{d=<2}
- lineofsight
- 当使用者(生物)在/不在玩家视野范围内时
- targetinlineofsight true
- owner
- 当目标是/不是某生物的主人时
- 主人必须通过setowner技能设置
- owner true
- targetwithin/targetnotwithin{d=[value]}
- 当目标在/不在指定范围内时
- targetwithin{d=2}
基本类条件
- altitude{a=[number]}
- 当使用者/目标离地面的高度满足指定数值时
- 可输入单个数值,或使用数值范围 20-40 >10 <5 等
- altitude{a⇒1}
- biome{b=[biome]}
- 当使用者/目标处于指定群系时
- 默认为Plains群系
- biome{b=DESERT} true
- crouching
- 当目标(玩家)潜行(shift键)时
- 应该只适用于玩家
- crouching false
- distancefromspawn [number]
- 检测离世界出生点的距离
- 可输入单个数值,或使用数值范围 20-40 >10 <5 等
- distancefromspawn >100
- entitytype [entity]
- 检测实体的种类
- entitytype player
- fallspeed{speed=[number/number range]}
- 可输入单个数值,或使用数值范围 20-40 >10 <5 等
也可以是负数(用于跳跃时) - 一般掉落的速度为0.785
- fallspeed{speed⇒0.7845}
- 可输入单个数值,或使用数值范围 20-40 >10 <5 等
- gliding
- 检测生物/实体是否佩带滑翔翼并滑翔
- 可用setgliding技能使生物滑翔
- gliding true
- haspotioneffect{type=[potion type];level=[level];duration=[duration start] to [duration end]}
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
| 例子 |
|---|
FlameShock: ●组合技配置名 FlameShock,详见skill技能。配置保存于/MythicMobs/Skills下
Cooldown: 1 ●组合技的冷却时间 1秒
Conditions: ◎条件列表
- targetwithin 15 ●当目标在15格半径范围内时
- targetinlineofsight true ●当目标在可视范围内时
- incombat ●当技能使用者处于战斗状态(拥有目标对象)时
- stance aggressive ●当状态被定义为aggressive时
- onblock GRASS ●当战在草方块上时
- offgcd ●当整体技能冷却时间为0时
Skills: ◎技能列表,使用顺序从上往下进行
- gcd{t=60} ●设置整体技能冷却时间为60刻/3秒。此时段内任何带有offgcd条件的技能不可用
- message{m="<mob.name> 发动了一个技能"} ●发送信息 "此生物"发动了一个技能
- potion{t=SLOW;d=60;l=7} ●缓慢药水效果,时长60刻/3秒,7级药水
- delay 60 ●60刻/3秒之后
- message{m="<target.name> &e燃烧起来了"} ●发送信息 "此生物""黄字显示"燃烧起来了
- effect:particles{p=flame;a=20;hS=3;vS=1;s=0;y=2} ●粒子flame效果,粒子量20,扩展左右3格上下1格的范围,粒子速度0,以激活点偏移y轴2格为粒子中心
- potion{t=HARM;d=1;l=1} ●伤害药水效果,时长1刻/0.05秒,1级药水
●●技能的目标于使用此技能组时定义,如下
FlameSprite:
Type: ZOMBIE
Display: 'Flame Sprite'
Health: 20
Skills:
- skill{s=FlameShick}
|
物品(Items)
概览
在 MythicMobs 里制作自定义物品是相当简单的。不像生物和技能,这个插件的物品没有特殊或独一无二的选项。任何通过 MythicMobs 制作的物品都可以使用原版命令制造出来,不过使用 MythicMobs 制作物品来的更加舒服一些。 以下的这些选项里,只有 internal_itemname 和 Id 是必需的。所有其他的选项都是完全可选的。
iternal_itemname: Id: Data: Display: Attributes: Amount: Options: Enchantments: Lore: PotionEffects: BannerLayers:
拆开所有的选项来看
- internal_itemname:
- 用于给 MythicMobs 参考,想叫什么叫什么
- 必须为字母数字,并且大小写敏感
- Id:
- 设置物品的种类
- 可以是 Bukkit 材料名称或是物品 ID
- 见常用物品 ID
- Data:
- 设置物品数据
- 用于物品的耐久和方块种类
- Display: '[名称]'
- 设置物品名称
- 可以使用技能|变量
- 必须使用单引号包围
- Attributes:
- 设置物品的属性,见下物品属性
- Amount:
- 设置物品的数量
- Options:
- 这是一个特殊的子选项,提供了大量的附加属性
- 见物品选项
- Hide: 在 2.4 中添加
- 允许隐藏特定的属性
- “ATTRIBUTES”, “ENCHANTS”, “DESTROYS”, “PLACED_ON”, “POTION_EFFECTS” 和 “UNBREAKABLE”.
药水
- needtext
常用物品 ID
掉落(Drops)
- 给生物添加自定义掉落项
- 可以是原版物品,MM定义的物品,经验球,能读取的其他插件物品,或者其自定义的掉落表(DropsTables)配合条件使用
掉落设置(Drops)
- needtext
每级掉落(DropsPerLevel)
- needtext
掉落表(DropsTables)
- needtext
例子
- needtext
生成点(Spawners)
- needtext
版本更新日志
- needtext
待补充∅
∅needtext∅
∅好像有人在bbs弄的很不错的样子,那我就不继续弄了...∅
相关链接
MythicMobs技能分页:http://mineplugin.org/MythicMobs%E6%8A%80%E8%83%BD
MythicMobs官网:http://www.mythicmobs.net/index.php
MythicMobsManual:http://www.mythicmobs.net/manual/doku.php
MythicMobsForum:http://www.mythicmobs.net/index.php?forums/
授权声明
本页内容翻译/搬运自MythicMobs插件手册
授权方式为GNU Free Documentation License 1.3
