- 欢迎来到Minecraft插件百科!
- 对百科编辑一脸懵逼?帮助:快速入门带您快速熟悉百科编辑!
- 因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289
MythicMobs:修订间差异
1240798440(留言 | 贡献) 小 (→缺点) |
1240798440(留言 | 贡献) 小 (→定点生成) |
||
第696行: | 第696行: | ||
注意,一旦配置文件中的刷怪点被加载,它将只能通过命令编辑。</br> | 注意,一旦配置文件中的刷怪点被加载,它将只能通过命令编辑。</br> | ||
如果你需要编辑一个加载的刷怪点的配置文件,请关闭服务器再进行编辑 | 如果你需要编辑一个加载的刷怪点的配置文件,请关闭服务器再进行编辑 | ||
'''优点''': | |||
*无需开启自然生成 | *无需开启自然生成 | ||
*允许指定详细的生成参数 | *允许指定详细的生成参数 | ||
*支持计时器与其他机制 | *支持计时器与其他机制 | ||
'''缺点''': | |||
*时长有工作一段时间后不再工作的问题 | *时长有工作一段时间后不再工作的问题 | ||
*正常能耗比随机生成高 | *正常能耗比随机生成高 |
2021年7月17日 (六) 07:41的版本
- 官网☞[1],月付/永久付费版购买地址☞[2],登入点击"Purchase"购买
- 鲲鲲:本页面已更新至4.12-Dev-Premium,切忌MM版本过低
- 最近一次编辑日期为 2021.7.4
- 若您刚接触此插件不到一个月,百科没写的一般就是没有,如果有您亲测有效却没写进百科的请指出QAQ
- 内容较多の模块已经独立成了页面,请注意
- 感谢CHuNan帮忙排版与搬运QAQ。
外文名 | MythicMobs |
插件类型 | Spigot / CraftBukkit |
最新版本 | v4.11.0-BETA(免费版)v4.11.2(付费版)v5.0.0-SNAPSHOT/3634(会员版) |
兼容服务端 | 目前为MC1.12-1.17,不兼容:MM4.7.0不支持MC1.7/1.9/1.10,MM4.8.0不支持MC1.8,MM4.9.0不支持1.11 |
源地址 | http://mythicmobs.net/manual/doku.php |
版本/服务器版本须知
请使用纯插件服务端运行此插件,否则后果自负
- Cat服务端最高支持(漏洞百出)4.7.2,向上提版本会有无止境の报错,但仍可加载
- 不同版本类型之间の差异↓
版本类型 | 费用 | 该版本内容 | 可供下载时间 |
---|---|---|---|
免费版 | 免费 | 本百科除付费版内容以外の全部 | 永久 |
付费版 | 4.99$ | 本百科全部内容 | 30天 |
会员版 | 39.99$ | 本百科全部内容 | 永久 |
- 月付到期后只是无法下载付费版,并不会禁止你使用它
插件版本 | 不兼容のMC版本 |
---|---|
4.7.0 | 1.7/1.9/1.10 |
4.8.0 | 1.11 |
4.9.0 | 1.8/1.12(物品方面不支持) |
该页面一切以最新付费版本(4.11.0-BETA)为准
付费版内容
- 在MM Discord频道中展示称号:Premium(会员)
- 允许下载付费版(最新版)以及参与更新投票
- 有权访问开发构建→[3]
- 2个AI行动选择器:fleeConditions(躲避满足条件の实体)与doNothing(满足条件则不做任何事)与1个AI目标选择器:nearestConditionalTarget(以最近の符合条件の实体为目标)
- 更多特殊类技能,如Raytracing与Chain Missile
- 计算与变量适用于技能、掉落、实体属性(生命/伤害等)、物品属性与选项
- 自定义技能修改项变量系统
- 允许使用origin=@targeter在任意技能
- 特殊类技能-命中目标激活的技能允许添加条件
- 自定义伤害类型与伤害修饰符
- 支持自定义AI行动/目标选择器写入条件
- 付费版内容全部支持Crucible, Enchants, MMOItems, MMOCore等
- 未完待续
有关该插件の其他渠道
影响较大的Bug
服务器非正常关闭后,MM怪会全部失效,正常情况下不会失效
技能(带有[[特效并带有[[延迟)释放频率较高的mm怪,碰到MM保存事件高概率失效
技能(带有延迟)释放频率过高会导致mm怪失效
解决方法
保存事件可以拉高[[#.E9.85.8D.E7.BD.AE.E6.96.87.E4.BB.B6.28config.yml.29|config.yml内的SaveInterval默认值为5(分钟)
第三点解决方法: 利用[[记分板与onTimer,来做到类似于delay(延迟)的效果
概览
您能使用本插件做以下事情
- 技能————创造技能(冷却时间/目标选择器/触发器))
- 条件————为技能添加条件
- 属性————修改属性(血量/近战伤害/移速/攻击范围)
- 特效————使用音效与粒子效果令技能更多彩
- 物品————自定义物品与掉落表の掉落几率与数量
- 伤害调整——为生物设置伤害抗性(免疫溺水/受到箭的伤害减半/烧伤伤害抵消...)
- 生成控制——自定义定点/定时刷怪与随机刷怪,并自定义刷怪条件...
- 等级机制——根据等级提升实体各项属性与掉落几率等
- 威胁表———更好の攻击目标选择与一些变量/一些技能
- 自定义AI——自定义实体の行动目标与首要/次要攻击目标
- 派别系统——设置派别,配合自定义AI使生物攻击不同派系,或与玩家统一战线/为技能加上派别条件。
- 伪装————允许实体伪装成任意事物 需要LibsDisguises与ProtocoLib
- 变量————上限极高的数值计算系统需PlaceholderAPI
- BOSS血条—允许实体の血条显示在屏幕上方需要BossBar
- 插件兼容——兼容各种流行的插件(SkillAPI/Heroes/Vault.....)!
更多功能尽情期待~
源码相关(API)
源码页面→[6]
Maven项目
<repository> <id>nexus</id> <name>Lumine Releases</name> <url>https://mvn.lumine.io/repository/maven-public/</url> </repository>,
Dependency项目
<dependency> <groupId>io.lumine.xikage</groupId> <artifactId>MythicMobs</artifactId> <version>4.9.1</version> <scope>provided</scope> </dependency>
栗子
MMのAPI包含许多事件和帮助类
你利用我们的怪物,物品和技能系统,栗子页面→[7]
事件(Event)
事件名称 | 描述 |
---|---|
MythicReloadedEvent | 重载插件后调用此事件 |
MythicMobSpawnEvent | 实体生成后调用此事件 |
MythicMobDeathEvent | 实体死亡后调用此事件 |
MythicMobDespawnEvent | 实体自然消失后调用此事件 |
MythicMobLootDropEvent | 生成掉落表后调用此事件 |
MythicMobConditionLoadEvent | 条件加载后调用此事件 |
MythicMobDropLoadEvent | 掉落物加载后调用此事件 |
MythicMobMechanicLoadEvent | 技能加载后调用此事件 |
MythicMobTargeterLoadEvent | 目标选择器加载后调用此事件 |
以下是一些帮助您入门的示例:
格式注意事项
- 特殊类技能:Skill(技能)有第二种格式:skill:技能名,第一种格式为skill:技能名
- 特效类技能不需要前缀effect,且这个前缀可以缩写为e
- 技能文档内位于一个技能组头一行的技能名不支持部分特殊符号与Yml格式的注释符号"#",如
#鲲鲲: Skills: - damage
若文档内写了此技能,则这个文档内の其他技能都会失效
- 实体文档内'MM实体内部名不支持部分特殊符号与Yml格式的注释符号"#",如
#鲲鲲: Type: Zombie
若文档内写了此实体,则这个文档内の其他实体都会失效
- 技能文档内每个技能组の第二行Skills:必须没有其他字符位于同一行,如
鲲鲲: Skills: ? - damage
若文档内写了此技能,则这个文档内の其他技能都会失效,需要删除"?"
配置文件(config.yml)
编辑文档时,可以使用#符号留言或标记。
# 这是一条留言。
如果yml内含有中文,需要转码为UTF-8。
只要保证配置文件为文档并且此文件为正确可读的文档格式,任何yml配置文件(config.yml除外)都可以被重命名为任意名字。
这样就可以更方便地管理自己的配置文件,比如 鲲鲲.txt,鲨鲨.yml,。
MM4.10+config.yml文本 |
---|
Configuration: Version: 4.9 General: AllowMetrics: true CheckForUpdates: true CompatibilityMode: false DebugLevel: 0 ErrorLogging: true Language: enUS UseVolatileFeatures: true Clock: ClockInterval: 1 SaveInterval: 5 SpawnsInterval: 2 ScannerInterval: 10 CleanupInterval: 600 Components: CustomSpawners: true RandomSpawning: true Mobs: DespawnByDefault: true EnableAIModifiers: true EnableTimerSkills: true EnableThreatTables: true EnablePlayerFactions: true EnableLegacySkills: false KillMessagePrefix: '' PreventOtherDropsByDefault: false Scaling: Default: Enabled: true PerBlocksFromSpawn: 250 world2: Enabled: true PerBlocksFromSpawn: 250 world2_nether: Enabled: false PerBlocksFromSpawn: 100 ScalingEquations: Health: V * ((1.05)^(L-1)) Damage: V * ((1.05)^(L-1)) DefaultLevelModifiers: Health: 0.1 Armor: 0 Damage: 0 KnockbackResistance: 0 Power: 0 RandomSpawning: DisableVanillaSpawns: false GenerateSpawnPoints: false MaxMobsPerChunk: 2 SpawnRadiusPerPlayer: 64 SpawnRadiusPerPlayerY: 32 DespawnLazyRandomMobs: true MaxGenerationTime: 20 PointsPerSecond: Land: 5 Air: 0 Sea: 2 Lava: 0 Ground: 0 Compatibility: Heroes: Enabled: true McMMO: Enabled: true ShowXPMessage: true XPMessageFormat: '&7You receive <drop.amount> experience for slaying <dropper.name>' SkillAPI: Enabled: true ShowXPMessage: true XPMessageFormat: '&7You receive <drop.amount> experience for slaying <dropper.name>' Vault: Enabled: true ShowMoneyMessage: true MoneyMessageFormat: '&7You receive <drop.amount> currency for slaying <dropper.name>' |
配置文件详解
基本项(General)
<spoiler>
项 | 参数 | 描述 |
---|---|---|
AllowMetrics | true/false | 是否发送度量数据给开发者 |
CheckForUpdates | true/false | 是否自动检测插件最新版本 |
CompatibilityMode | true/false | 是否开启插件兼容模式 若和其他插件有冲突的话启用此模式或许能解决插件冲突问题 |
DebugLevel | [数值 | 调试等级,等级越高显示的信息就越多 启用的话会关闭妨碍调试的功能,如随机生成,生物生成,和其他随机的功能 (范围:0 ~ 4) 0:不检测 1:最低级
2:中等级 3:重量级 4:过量信息 |
ErrorLogging | [true/false] | 是否保存插件报错日志 保存路径:\MythicMobs\Error Logs\ |
Language | [enUS之类的] | 语言,没啥用处的选项 |
UseVolatileFeatures | [true/false] | 是否使用易变特性 如果使用的是不支持的Bukkit或奇怪的Spigot版本,可尝试禁用此项 |
</spoiler>
时钟(Clock)
- 并不是所有版本的默认时钟配置都是一致的 By:烙铁
<spoiler>
项 | 参数 | 描述 |
---|---|---|
ClockInterval | 数值 | 设置技能所允许的最低发动间隔,修改此项后必须重启插件,建议数值以5递增 (只适用于“~onTimer:xx”。单位:刻) |
SaveInterval | 数值 | 保存插件数据的时间间隔(单位:分钟) |
SpawnsInterval | 数值 | 生成间隔(单位:秒) |
ScannerInterval | 数值 | 检测区块和清除非加载区块生物的间隔(单位:秒) |
CleanupInterval | 数值 | 清除间隔(单位:秒) |
</spoiler>
分支(Components)
<spoiler>
项 | 参数 | 描述 |
---|---|---|
CustomSpawners | true/false | 是否启用此插件怪物的生成 |
RandomSpawning | true/false | 是否启用此插件怪物的随机生成 |
</spoiler>
生物(Mobs)
- 在4.11+,整体等级调整值的优先度高于独立等级调整值(优先度=优先计算)
<spoiler>
项 | 参数 | 描述 |
---|---|---|
DespawnByDefault | true/false | 清除MM生物的机制是否和原版一样(就是离玩家太远刷没) |
EnableAIModifiers | true/false | 是否启用自定义AI |
EnableTimerSkills | true/false | 是否启用计时技能 |
EnableThreatTables | true/false | 是否启用威胁度 |
EnablePlayerFactions | true/false | 是否启用player为可用派别 |
EnableLegacySkills | true/false | 是否识别旧版MythicMobs(2.0版本之前)插件的技能格式 |
KillMessagePrefix | 文本 | 设置MM生物杀死玩家时显示的信息前缀 |
PreventOtherDropsByDefault | true/false | MM生物死亡时是否掉落原版掉落物 |
ShowHealth Radius(半径) Format(前缀) |
数量 文本 |
血量显示项 发送生物血量信息的半径范围 血量信息的格式,可使用变量 |
DefaultLevelModifiers | 整体等级调整值,默认每提升1级的各项上升数值,在4.11+,整体等级调整值的优先度高于独立等级调整值(优先度=优先计算) |
</spoiler>
随机刷怪项(Random Spawning)
<spoiler>
项 | 参数 | 描述 |
---|---|---|
DisableVanillaSpawns | true/false | 是否禁止刷新原版生物 |
GenerateSpawnPoints | true/false | 是否生成生物刷新点,DisableVanillaSpawns为false的话会刷出原版生物,若随机刷怪模式为ADD请设置为true |
MaxMobsPerChunk | 数值 | 每个区块最多可以存在多少生物,多了就不刷 |
SpawnRadiusPerPlayer | 数值 | 以玩家为中心,"数值"为半径随机刷怪 |
SpawnRadiusPerPlayerY | 数值 | 以玩家为中心,"数值"为半径垂直随机刷怪 |
DespawnLazyRandomMobs | true/false | 清除不积极的由随机刷怪刷出的生物 |
MaxGenerationTime | 数值 | 最大刷新间隔 |
PointsPerSecond | 数值 | 刷怪点不同类型的刷新间隔配置
PointsPerSecond: Land: 5 Air: 0 Sea: 2 Lava: 0 Ground: 0 Land就是陆地,不知道和Ground有啥区别,Air是空中刷,Sea是在海里刷,Lava在熔岩上刷 |
</spoiler>
兼容项(Compatibility)
<spoiler>
项 | 参数 | 描述 |
---|---|---|
Heroes Enabled ShowXPMessage XPMessageFormat |
true/false true/false 文本' |
是否启用 是否显示经验信息 显示经验信息的格式,可使用变量 |
McMMO Enabled ShowXPMessage XPMessageFormat |
true/false true/false 文本 |
是否启用 是否显示经验信息 显示经验信息的格式,可使用变量 |
SkillAPI Enabled ShowXPMessage XPMessageFormat |
true/false true/false 文本 |
是否启用 是否显示经验信息 显示经验信息的格式,可使用变量 |
Vault Enabled ShowMoneyMessage MoneyMessageFormat |
true/false true/false 文本 |
是否启用 是否显示金钱信息。 显示金钱信息的格式,可使用变量 |
</spoiler>
命令与权限(Commands & Premissions)
所有可用的命令与权限见-->可用命令页面
输入/mythicmobs会显示所有可用的命令。每个命令也会提示你如何使用。
名字name和显示名字DisplayName并不是同一个东西。
[ ]内的参数为必填,< >内的参数为选填。
兼容插件
拓展类
MythicSkills |
---|
MythicSkills是一个MythicMobsExtension的附加,允许你给MM怪物添加SkillAPI技能。 下载它!并将 MythicSkills 放进你的服务器,并重启。 |
MythicAnimatorStands |
---|
MythicAnimatorStands是一个MythicMobs的附加,允许你给盔甲架添加动作动画。 下载它!并将 MythicAnimatorStands 放进你的服务器,并重启。 |
MythicMobsExtension |
---|
MythicMobsExtension是一个MythicMobs的附加,允许你做到更多的机制和技能,使用更多的触发条件。 下载它!并将 MythicMobsExtension.jar 放进你的服务器,并重启。 |
Crucible |
---|
Crucible是一个MythicMobs的附加,允许物品使用技能。 下载它!并将 Crucible.jar 放进你的服务器,并重启。 |
Quest |
---|
前置:[11]
安装
使用
已知问题
|
MiniaturePets |
---|
安装
使用 支持很简单: 鲲鲲: Type: MPET MPet: Type: <type> Anchor: <invisible "base" mob type> ShowName: <true/false> 举个例子,你可以创建 鲲鲲 并使用 MPets有的 “Pug” 类型: 鲲鲲: Type: MPET MPet: Type: pug Anchor: SPIDER ShowName: true Display: '鲲鲲' |
- Denizen(城镇)与Skript(脚本)
- 在BossShop(Boss商店)中使用MM物品
- 官方推荐の任务插件:Quests
兼容类
- 使用Advanced Achievements(超级成就)为MM实体定制相关成就
- 任务插件:BetonQuest与BeautyQuest
- 使用EnchantPlus(附魔Plus)为MM物品添加更多附魔
- 使用Graveyards(墓地)在玩家重生后激活技能
- MM实体可以掉落Heroes(英雄)、McMMO、SkillAPI内の经验等
- 使用HologramDisplay(全息字显示)创建全息血条/字
- 使用Lib's Disguise令实体伪装
- 将MiniaturePets(迷你宠物)の模型用于MM实体,见上方
- 使用TerrainControl令实体生成在TC群系
- 部分技能与条件需Vault(经济)作为前置
- 部分条件以及生成在指定区域内需WorldGuard(世界区域)作为前置
(如果您有想写进此列表の插件,请告诉MM作者)
实体概览(Mobs)
更多有关实体的内容,请点击-->实体页面
- MM实体内部ID是区分大小写的,如你的MM怪叫KK,而你使用/mm m s Kk后,MM会提示无法找到该实体
- MythicMobs基于自定义的生物(或实体),有很多选项和属性可以使用。下面是可以添加到自定义生物中的选项和属性的完整列表。
- 其中大多数是可选的,这意味着您不必每次创建新的生物时都配置整个列表。真正必要的只是内部生物名称(internal_mobname)和生物种类(Type)。
- 你可以在Mobs文件夹中创建任意数量的文件,文件名称随意,格式为yml或txt。
一个带有所有选项的示例 |
---|
鲲鲲的主人: #实体内部ID Type: WITHER_SKELETON #怪物类型,这里为凋灵骷髅 Display: '§b鲲鲲' #怪物显示名,这里为蓝色的"鲲鲲" DamageModifiers: #伤害调整 - LIGHTNING 0.1 #减少90%的雷击伤害 - FIRE 2.0 #额外受到一倍火焰伤害 - AIR 1.0 #正常受到窒息伤害 - ICE 0.5 #这个咱不知道是啥 Disguise: #伪装 Type: Player #伪装类型 Skin: Knight #若类型为Player,所用的玩家皮肤 Player: '§d§l鲲鲲大魔王' #若类型为Player,所显示的怪物名称 Invisible: false #可见,true为不可见 ShowName: false #不显示名字,false为显示名字 BossBar: #Boss血条 Enabled: true/false #开启/关闭 Title: '鲲鲲大魔王!' #标题文本为鲲鲲大魔王! Range: 5 #处在5m内的玩家会康到Boss血条 Color: RED #BOSS血条为红色 Style: SOLID #字体样式 Health: 100 #怪物生命 Modules: #额外模块 ThreatTable: true #开启威胁表 ImmunityTable: true #开启伤害硬直,开启后生物选项: NoDamageTicks才可以工作 Mount: 鲲鲲 #怪物会骑着一只内部ID为"鲲鲲"的怪物 Faction: 鲲鲲 #怪物所属派系为鲲鲲 Armor: 100 #实体额外获得500点生命 Damage: 100 #实体伤害为100点 Drops: #怪物掉落配置 - 笨蛋鲲鲲的头 1 1 #必定掉落一个MM物品内部ID为"笨蛋鲲鲲的头" - exp 10 1 #必定掉落10经验 - DIAMOND 1 0.9 #90%掉落1颗钻石 Trades: #村民交易相关 Equipment: #装备配置 - DIAMOND_SWORD:0 #主手拿着钻石剑 - DIAMOND_SWORD:5 #副手拿着钻石剑 - 鲲鲲头盔:4 #戴着"鲲鲲头盔" - 鲲鲲胸甲:3 #穿着"鲲鲲胸甲" - 鲲鲲护腿:2 #穿着"鲲鲲护腿" - 鲲鲲靴子:1 #穿着"鲲鲲靴子" KillMessages: #击杀信息配置 - '<target.name>,你死了,ba————ka。' #没啥好说的,这里的<target.name>就是怪物的目标的名字 Options: #选项 KnockbackResistance: 1 #防击退,1为100% MovementSpeed: 0.2 #移动速度,0.2为普通僵尸移速 AlwaysShowName: true #永远显示怪物名 PreventSunburn: true #防止烧伤,此为4.10新增选项 |
技能概览(Skills)
更多有关技能的内容请点击-->技能页面
- 将写好的技能放在MythicMobs/Skills内
- 技能为MM插件的一大特点。所有MM生物都可以根据不同情况发动技能
- 一个完整的技能由以下几个构成
技能名
特效类技能
技能目标对象Targeters
简易的技能触发要求Triggers
更高级的触发Conditions
变量概览(Varibute)MM4.6.5+
更多有关变量的内容请点击-->变量页面,这包括所有该插件可用变量
- 编辑者:鲲鲲(鲨鲨)、二白(栗Message)中
- 付费版才可以将变量应有到非消息类技能(栗Message)中
- 设置变量时施法者为玩家,或施法者(怪物)读取玩家时,目标玩家必须是生存/冒险模式.(MM部分目标器会过滤创造/观察模式)
- 想将所创变量(栗<caster.damage>)运用到其他地方,需改为这种格式: <caster.var.damage>
- 变量计算(例如damage{a='2 * <caster.var.damage>'} @self),运算符号必须和两个因数(可全为变量名,也可一个变量一个数字)之间隔着一个空格
- 同时,能使用()和[]进行"复杂"的计算,计算只能用在damage/damagepercent、heal/healpercnet、setlevel,其它技能计算均无效.
- 详见底部的"随着怪物剩余血量百分比的减少增加伤害"李子,另外,100%=100,不等于1
- 4.7.2+,若读取生物名称的变量没读取到生物名称,会提示生物种类
- 变量用于决定返还一个特定的数值并用于技能之上,也可单纯用于显示颜色或特殊符号
栗子:显示被干掉的生物名字 被骑士 显示使用技能的玩家的名字 使用技能斩杀了
Skills: - message{m="&b<mob.name>&r 被骑士 &a<trigger.name>&r 使用技能斩杀了"} @PIR{r=20} ~onDeath
物品概览(Items)
更多有关物品的内容,请点击物品页面
那儿包括状态(药水)效果与附魔等,以下的这些选项里,只有 internal_itemname 和 Id 是必需的。所有其他的选项都是完全可选的
- 仅4.9.0这一版本,importの格式无法被MM所读取,要想读取请使用下方格式OwO
- 1.12.2,MM4.9以上的物品Bug挺多的
物品配置栗子 |
---|
鲲鲲(内部ID): Id: Data: Display: Attributes: Amount: Options: Enchantments: Lore: PotionEffects: BannerLayers: |
掉落(Drops)
概览
- 给生物添加自定义掉落项
- 可以是原版物品,MM定义的物品,经验球,能读取的其他插件物品,或者其自定义的掉落表(DropsTables)配合条件使用
掉落标签可以添加到你的自定义生物,允许它们在死亡后掉落特定的物品。在 MythicMobs 里你有三种方式使用自定义掉落。
相关格式
点此展开 |
---|
Drops 是实现自定义掉落的最简单的方法:
鲲鲲: Type: 鲲鲲 Drops: - 物品/exp(经验)/droptable(战利品表) 数量 几率 - 物品/exp(经验)/droptable(战利品表) 数量 几率 - ... <item/exp/droptable>
可以是 MythicMobs 的物品,也可以是原版物品,或者是插件的掉落表。
<数量>: 支持范围,在付费版,您可以使用数学公式和占位符进行计算,两边加上,掉落提示现在可使用占位符 |
特殊掉落↓
掉落类型名 | 描述 | 前置插件 |
---|---|---|
champions-exp | Champions经验 | Champions |
skillapi-exp | 职业经验 | SkillAPI |
heroesexp | 英雄经验 | Heroes |
mcmmo-exp | McMMO经验 | McMMO |
money | 金钱 | Vault |
mythicdrop | 该插件の物品 | MythicDrops |
phatloot | 该插件の物品 | PhatLoot |
mmoitems{type=掉落的物品分类;id=物品ID(mmoitem的);unidentified=掉落后为未鉴定的几率} | 该插件的物品 | MMOItems、MythicMobs V4.7.2+ |
等级调整掉落
每级的掉落跟普通掉落一样,但是会以生物的等级为基础
栗子 |
---|
鲲鲲: Type: ZOMBIE DropsPerLevel: - 物品/exp(经验)/droptable(掉落表) 数量 几率 - ... 每级掉落意味着插件将会尝试掉落更多次,比如你有一个 5 级生物,使用了以下设置: 鲲鲲: Type: shulker DropsPerLevel: - diamond 3 1 - gold_ingot 2 0.5 那么就一定会掉落 15 个钻石,并且有50%掉落最多 10 个铁锭。 查看等级调整值(LevelModifiers) |
战利品表详解 |
---|
战利品表存储于 /MythicMobs/DropTables. 使用掉落表有很多优势 比如你可以配置条件,并让很多个生物共享使用,而不用创建一份副本。 鲲鲲: Type: 生物类型 Drops: - 战利品表名 注意,你在使用战利品表时不能在实体文档内的掉落配置中对战利品掉落使用数量与几率 鲲鲲掉落表: TotalItems: 数量 #默认为totalitems的值 MinItems: 数量 #默认为totalitems的值 MaxItems: 数量 Conditions: - 条件 1 - 条件 2 - ... Drops: - 物品/exp(经验)/droptable(掉落表) 数量 几率 - ... DropsPerLevel: - 物品/exp(经验)/droptable(掉落表) 数量 几率 - ... |
示例
<spoiler> 这个生物总会掉落一大堆的经验,和一些生鱼。
鲲鲲: Type: zombie Health: 100 Equipment: - snowsword:0 Drops: - exp 75-125 1 - 鲲鲲
这将在 ICE_PLAINS 群系里,并且玩家在20格以内时击杀掉落 鲲鲲剑,几率为 5%
鲲鲲: Conditions: - inbiome ICE_PLAINS - playerwithin 20 Drops: - 鲲鲲剑 1 0.05
</spoiler>
生成(Spawners)
- 通过在配置文件内修改选项:DisableVanillaSpawns
定点生成
刷怪点允许你设置世界中你的自定义怪物生成的坐标,其中有很多有用的选项、条件和内置的计时器、冷却和预热系统。
你可以在游戏内直接使用命令来创建一个刷怪点,也可以在配置文件的 /MythicMobs/Spawners 处配置。
注意,一旦配置文件中的刷怪点被加载,它将只能通过命令编辑。
如果你需要编辑一个加载的刷怪点的配置文件,请关闭服务器再进行编辑
优点:
- 无需开启自然生成
- 允许指定详细的生成参数
- 支持计时器与其他机制
缺点:
- 时长有工作一段时间后不再工作的问题
- 正常能耗比随机生成高
定点生成选项详解
选项名 | 值类型 | 默认设置 | 描述 |
---|---|---|---|
Checkforplayers | true/false | false | 是否仅在附近有玩家时工作 |
Cooldown | 数值(秒) | 无 | 再次进行生成の间隔 |
Group | 字符 | 无 | 生成点所属组 |
Healonleash | true/false | 未知 | 所生成实体被传送回生成点后是否恢复所有生命 |
Resetthreatonleash | true/false | false | 所生成实体被传送回生成点后是否清除威胁表(包括忘记目标) |
Leashrange | 数值 | 无 | 所生成实体离生成点多少格方块后会被传送回生成点 |
MaxMobs | 数值 | 无 | 所生成实体最大同时存在数量 |
Moblevel | 数值 | 1 | 所生成实体等级 |
MobSperspawn | 数值 | 1 | 单次生成实体数量 |
Mobtype | 字符 | 无 | 所生成实体类型,支持原版 |
Radius | 数值(格) | 生成范围半径 | |
Showflames | true/false | 否 | 生成后是否生成火焰粒子 |
Warmup | 数值(秒) | 无 | 到达最大生成数量后,所生成生物被杀死后多久重新进行一次生成,权重低于Cooldown |
Conditions | 条件 | 无 | 见下方 |
随机生成
随机生成可控制多个世界的生成,并通过条件精确控制生成。
在4.8.0+(含4.8.0),随机生成需要当前世界拥有生存模式或者冒险模式的玩家
生成模式
模式名 | 描述 |
---|---|
REPLACE | 替换原版实体(需开启原版生成) |
ADD | 新增实体(无需开启原版生成,需在配置文件内开启生成点) |
DENY | 所生成的实体无法繁殖 |
SCALE | 未知 |
随机生成详解
鲲鲲: Action: ADD Type: 鲲鲲 Level: 2 Chance: 0.01 Priority: 10 UseWorldScaling: false Worlds: 鲲鲲世界,鲨鲨世界
所有可用选项 | |||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
- 条件详见[技能|条件]
Conditions: - 条件 - 条件 · …
原因列表
ID | 说明 |
---|---|
BEEHIVE | 当蜜蜂从蜂箱出来时 |
BREEDING | 当生物繁殖出小生物时 |
BUILD_IRONGOLEM | 当铁傀儡被创造 |
BUILD_SNOWMAN | 当雪傀儡被创造 |
BUILD_WITHER | 当凋灵被创造 |
CHUNK_GEN | 已弃用,区块生成时附带的生物 |
CURED | 僵尸村民被治愈后 |
CUSTOM | 自定义 |
DEFAULT | 当实体缺少生成原因时 |
DISPENSE_EGG | 当鸡蛋成功砸出小鸡 |
DROWNED | 当生物溺死后 |
EGG | 当生物由生成蛋生成 |
ENDER_PEARL | 末影珍珠落地成功生成末影螨 |
EXPLOSION | 爬行者爆炸产生药水云 |
INFECTION | 僵尸成功感染村民 |
JOCKEY | 当一个实体作为另一个实体的骑乘者生成时(常见于蜘蛛骑士) |
LIGHTNING | 当实体因雷击而转变为其它实体(村民->女巫) |
MOUNT | 当一个实体作为另一个实体的坐骑生成时(常见于小鸡骑士) |
NATURAL | 当实体自然生成时 |
NETHER_PORTAL | 当实体由下界传送门生成 |
OCELOT_BABY | 当小豹猫和它的父母一起生存 |
PATROL | 当实体随着巡逻站生成时 |
RAID | 当实体在雨天生成时 |
REINFORCEMENTS | 当实体需要增援时(可能是困难模式的僵尸增援) |
SHEARED | 当哞菇被剪下蘑菇变为牛时 |
SHOULDER_ENTITY | 当一个实体作为生成原因且正处于受伤/跳跃状态时 |
SILVERFISH_BLOCK | 当蠹虫从方块内钻出来 |
SLIME_SPLIT | 当史莱姆着地 |
SPAWNER | 当实体由刷怪笼刷出 |
SPAWNER_EGG | 当实体由刷怪蛋刷出 |
TRAP | 当骷髅马(陷阱)刷在玩家附近 |
VILLAGE_DEFENSE | 当铁傀儡在村庄内自然生成时 |
VILLAGE_INVASION | 当僵尸在村庄附近自然生成时 |
仅工作与ADD模式的随机刷怪配置
RandomSpawning: GenerateSpawnPoints: true MaxMobsPerChunk: 100 SpawnRadiusPerPlayer: 64 SpawnRadiusPerPlayerY: 32 DespawnLazyRandomMobs: true PointsPerSecond: Land: 10 Air: 1 Sea: 0 Lava: 0 Ground: 1
}}
教程
入门
使用 MythicMobs 创建自己的生物甚至是Boss是很简单的,这些是你需要了解的:
- 如何配置 YAML 文件
- 你的文件到哪里去了
- MythicMobs 拥有的设置选项
技能教学
前往技能教学
创建随机刷怪点
示例 1:大多数普通生物,俩MM怪
步骤
- 使用随机刷怪应保证游戏规则doMobSpawing(刷怪)为true,不管开没开启,游戏内输入一遍/gamerule domobspawing true(后台则不带/)就是啦
- 接下来就是你要有鲲鲲和鲨鲨的生物配置
- 在/plugins/MythicMobs/RandomSpawners文件夹内创建一个文档(UTF8编码),下方是栗子
鲲鲲: Mobname: '''鲲鲲''' Worlds: '''鲲鲲世界''' Chance: '''0.01''' Priority: '''1''' SpawnMethod: '''replace''' Conditions: - '''outside true'''
鲨鲨: Mobname: '''鲨鲨''' Worlds: '''鲲鲲世界''' Chance: '''0.01''' Priority: '''1''' SpawnMethod: '''replace''' Conditions: - '''outside false'''
分析
- Mobname=Type: 鲲鲲 仅生成鲲鲲,多个生物用,隔开
- Worlds: 鲲鲲世界 鲲鲲只会在鲲鲲世界内刷新
- Chance: 0.01 有1%几率生成鲲鲲
- SpawnMethod=Action: replace 替换原版生物,转而生成鲲鲲,不建议使用replace,耗能较高且功能不如ADD
- outside在室外时满足生成条件
- outside false在室内时满足生成条件
示例 2:密集的冒险区
步骤
- 不使用ADD模式的话,使用随机刷怪应保证游戏规则doMobSpawing(刷怪)为true,不管开没开启,游戏内输入一遍/gamerule domobspawing true(后台则不带/)就是啦
- 接下来就是你要有8小怪和鲲鲲的生物配置
- 在/plugins/MythicMobs/RandomSpawners文件夹内创建一个文档(UTF8编码),下方有栗子
- 使用命令 /region define 鲲鲲 创建一片区名为鲲鲲区域。
- 设置8MM小怪和一个Boss
整个冒险区域 |
---|
鲲鲲: Type: 鲲鲲 Worlds: world Chance: 0.01 Priority: 100 Action: ADD Conditions: - inregion 鲲鲲 |
仅森林区域 |
---|
会长大人: Mobname: 会长大人 Worlds: world Chance: 0.25 Priority: 2 Action: ADD Conditions: - inregion 鲲鲲 - biome forest 麻薯: Mobname: 小麻糬饼 Worlds: world Chance: 0.25 Priority: 2 Action: ADD Conditions: - inregion 鲲鲲 - biome forest 曜星星: Type: 曜星星 Worlds: world Chance: 0.25 Priority: 2 Action: ADD Conditions: - inregion 鲲鲲 - biome forest 小天: Type: 憨憨天 Worlds: world Chance: 1 Priority: 1 Action: ADD Conditions: - inregion 鲲鲲 - biome forest |
仅下雪区域 |
---|
阿云: Mobname: 阿云 Worlds: world Chance: 0.25 Priority: 2 Action: ADD Conditions: - inregion 鲲鲲 - biome snowy 迷你冰雪精灵: Mobname: 冰雪狂暴精灵 Worlds: world Chance: 0.25 Priority: 2 Action: ADD Conditions: - inregion 鲲鲲 - biome snowy 普通冰雪精灵: Mobname: 普通冰雪精灵 Worlds: world Chance: 0.25 Priority: 2 Action: ADD Conditions: - inregion 鲲鲲 - biome snowy 雪狼: Type: 雪狼 Worlds: world Chance: 1 Priority: 2 Action: ADD Conditions: - inregion 鲲鲲 - biome snowy |
分析
这个设置更加复杂了,让我们看看发生了什么:
</spoiler> Priority,优先生成权重较高的生物,反之权重较低则较后生成,通过调整Chance(几率)来平衡占比 条件Biome,群系检测,后面接群系名,forest既森林,snowy则为雪地 条件inregion,区域检测,在这儿全部生物都得在鲲鲲区域内才会生成
自定义实体 AI教程
有关AI行动器与目标器的详细内容,请点击实体页面查阅 自由度较高,甚至可以让僵尸不会近战攻击,不过不会近战攻击会导致生物不会去寻找目标,近战的骷髅,会开门而不是破坏门的僵尸等等
AI 目标 & 派系
- 自定义 AI 通常需要两个配置来工作,即 AIGoals(生物做出何举动)与AITargets(生物如何锁定目标)
- 派系通常用于配合AI目标选择器,将生物分组
- 自定义AI目标选择器与AI行动选择器并不需要clear(清除原版),但那样可能导致一些问题
下面是栗子owo <spoiler>
好鲲鲲: Mobtype: skeleton Display: '&a一只好鲲鲲' Health: 15 Damage: 1 Faction: 好鲲鲲 AIGoalSelectors: - clear - arrowattack AITargetSelectors: - clear - players Options: FollowRange: 10 MovementSpeed: 0.2 PreventOtherDrops: true
- 这个示例展示了 鲲鲲 AI 如何攻击目标。(剪掉了其他没啥用的东西,比如随机的走动)
- AIGoalSelectors 项效果为: 鲲鲲会用弓朝目标射箭。
- AITargetSelectors 项效果为: 鲲鲲应该锁定玩家。
- 不一定要clear,不clear一样会工作,不过会导致影响因素增多
- 如何让鲲鲲与其他怪物打架?
好鲲鲲: Mobtype: skeleton Display: '&a一只好鲲鲲' Health: 15 Damage: 1 Faction: 好鲲鲲 AIGoalSelectors: - clear - meleeattack AITargetSelectors: - clear - hurtbytarget - otherfactionmonsters Equipment: - 鲲鲲剑:0 Options: FollowRange: 10 MovementSpeed: 0.2 PreventOtherDrops: true
- 好鲲鲲 AI 编写为攻击其他派系生物和攻击它的生物,作为附加,它会使用近战攻击而不是远程攻击。
- AIGoalSelectors 项现在将目标设置为近战,装备弓的时候是非近战的。但是这对僵尸是不需要的。
- AITargetSelectors 项现在将玩家移除.所以骷髅不会主动攻击玩家。现在骷髅将会主动攻击其他派系的生物,也就是不在它自己的派系里的生物(比如不在好鲲鲲)。这里也有一个 hurtbytarget 的优先度为1,也就是说如果有生物主动攻击了它(比如玩家),骷髅就会反击。这个属性的优先级一般都很高,这样它们不会被随意利用。如果没有这个,好鲲鲲就会很容易的被击杀,而不会反。
- 在接下来的两个小节里,我会展示经常使用的场景以及它们的 AI 配置,这也是你可能想要在服务器里实现的功能。
好鲲鲲: Mobtype: spider Display: '&a一只好鲲鲲' Health: 15 Damage: 1 Faction: 好鲲鲲 AIGoalSelectors: - clear - meleeattack AITargetSelectors: - clear - nearestConditionalTarget{conditions=[ - entitytype PLAYER - hasaura{aura=标记} ]} Equipment: - 好鲲鲲剑:0 Options: FollowRange: 10 MovementSpeed: 0.2 PreventOtherDrops: true
- 在4.9+,上面所写的nearestConditionalTarget会使此蜘蛛攻击离自己最近的拥有标记光环(aura=标记)的玩家,想要增加新的条件和上一行对仗就行。
好鲲鲲: Mobtype: spider Display: '&a一只好鲲鲲' Health: 15 Damage: 1 Faction: 好鲲鲲 AIGoalSelectors: - clear - meleeattack AITargetSelectors: - clear - fleeConditional{distance=5; speed=2; conditions=[ - inlineofsight - entitytype COW ]} Equipment: - COS_WoodSword:0 Options: FollowRange: 10 MovementSpeed: 0.2 PreventOtherDrops: true
- 在付费版4.8.0+,上面所写的FleeConditional会使好鲲鲲以每秒2m的速度逃离离自己5m的牛(前提是在视野范围内inlineofsight,想要增加新的条件和上一行对仗就行。
</spoiler>
示例 1:鲨鲨攻击附近怪物和鲲鲲
在这个场景里,我们想在城市的入口生成一些鯊鲨,用以清除赶走附近乱晃的太近的鲲鲲,你可以使用一个伪装成村民的铁傀儡,但是它们的 AI 更难控制,而且它们的击退特效对怪物也不是很公平,所以我们要使用 MythicMobs 的自定义 AI 来完成这件事。
首先,我们需要一只生物来守护我们的城镇。让我们创建一个伪装成村民的骷髅,并给它装备剑。
鲨鲨.yml |
---|
鲨鲨: Mobtype: skeleton Display: '&E一只鲨鲨' Health: 500 Damage: 5 Equipment: - 鲨鲨剑:0 Options: Disguise: villager Despawn: true FollowRange: 5 AlwaysShowName: false MovementSpeed: 0.35 PreventOtherDrops: true KnockbackResistance: 1 PreventMobKillDrops: true |
如果我们将这个生物放入刷怪点,它将攻击所有的玩家,所以我们需要调整一下,让它更加友善。
鲨鲨.yml |
---|
鲨鲨: Mobtype: skeleton Display: '&E一只鲨鲨' Health: 500 Damage: 5 Equipment: - 鲨鲨剑:0 Faction: 鲨鲨 AIGoalSelectors: - clear - opendoors - meleeattack AITargetSelectors: - clear - hurtbytarget - otherfactionmonsters Options: Disguise: villager Despawn: true FollowRange: 5 AlwaysShowName: false MovementSpeed: 0.35 PreventOtherDrops: true KnockbackResistance: 1 PreventMobKillDrops: true |
- 现在这个生物会攻击其他生物,也会攻击攻击它的生物,比如一些无良玩家,在攻击的时候也会主动开门。
- 这解决了一半的问题,下一步,我们需要保证城墙外游荡的生物会主动攻击我们的鯊鲨。
- 下面我设置了一个鲲鲲,并且也对他们进行设置
鲲鲲.yml |
---|
鲲鲲: Mobtype: skeleton Display: '&a一只鲲鲲' Health: 15 Damage: 1 Faction: 鲲鲲 AIGoalSelectors: - clear - meleeattack AITargetSelectors: - clear - hurtbytarget - players Equipment: - 鲲鲲头盔:4 - 鲲鲲剑:0 Options: Despawn: true FollowRange: 10 AlwaysShowName: false MovementSpeed: 0.2 PreventOtherDrops: true |
- 我们的 鲲鲲 现在在 鲲鲲 派系(与 鲨鲨 派系不同),这样他就会被鲨鲨主动攻击。并且添加 hurtbytarget 后,他们会反击来自守卫的攻击(然后死掉)。
- 现在在我们生成我们的刷怪点后,它会守卫村庄,忽略玩家(只要玩家们不去主动招惹)。
- 其他更多的设置,比如很短的攻击距离和很短的跟随距离,会保证他们不会乱搞,而是杀死那些可以获得经验和掉落的生物。我们也添加了 PreventMobKillDrops,来防止无良玩家刷东西。
示例 2:好鲲鲲和坏鲲鲲互相攻击
- 在真实世界里,我们有两个派系:好鲲鲲和坏鲲鲲都不是很喜欢对方。我们创建了一个战场,但是它们都是用默认 AI,没有做太多的战斗。
- 我们可以使用 MythicMobs 的自定义 AI 来实现这个功能,这样它们就会主动互相攻击,并且也会攻击晃进战场的玩家。
让我们创建一个好鲲鲲生物和一个坏鲲鲲生物。
<spoiler>
好鲲鲲: Mobtype: villagezombie Display: '&a一只好鲲鲲' Health: 50 Damage: 4 Faction: 好鲲鲲派系 AIGoalSelectors: - clear - opendoors - meleeattack AITargetSelectors: - clear - hurtbytarget - specificfactionmonsters 坏鲲鲲派系 - players Equipment: - 好鲲鲲头盔:4 - 好鲲鲲胸甲:3 - 好鲲鲲护腿:2 - 好鲲鲲靴子:1 - 好鲲鲲剑:0 Options: Despawn: true FollowRange: 10 AlwaysShowName: false MovementSpeed: 0.25 PreventOtherDrops: true PreventItemPickup: true KnockbackResistance: 0.25 PreventMobKillDrops: true 坏鲲鲲: Mobtype: zombie Display: '&a一只坏鲲鲲' Health: 80 Damage: 4 Faction: 坏鲲鲲派系 AIGoalSelectors: - clear - opendoors - meleeattack AITargetSelectors: - clear - hurtbytarget - specificfactionmonsters 好鲲鲲派系 - players Equipment: - 坏鲲鲲头盔:4 - 坏鲲鲲胸甲:3 - 坏鲲鲲护腿:2 - 坏鲲鲲靴子:1 - 坏鲲鲲剑:0 [[MythicMobs/Skills|Skills]]: - [[MythicMobs/Skills|skill]]{[[MythicMobs/Skills|s]]=坏鲲鲲} ~onAttack >0 0.25 Options: Despawn: true FollowRange: 10 AlwaysShowName: false MovementSpeed: 0.25 PreventOtherDrops: true PreventItemPickup: true KnockbackResistance: 0.4 PreventMobKillDrops: true
- 这里是我们的设置里需要注意的一些地方:
- 第一步,我们设置了好鲲鲲生物在好鲲鲲派系,而坏鲲鲲生物在坏鲲鲲派系,这会将两种生物分开。
- 下一步,我们都给每个生物配置了 clear,opendoors(开门),和 meleeattack(近战),这适用于大多数近战生物。
- 最后我们将 AI Targets 清空。
- 第一是 hurtbytarget 选择器,之前也提过,这是一个很好的反击设置,这样这个生物就不会被利用。
- 下一步是 specifictargetfaction 选择器,选择互相的阵营。设置优先度为 2,这样它们没有在战斗的时候,就会主动攻击对方。
- 最后是 players 玩家选择器,如果附近没有坏鲲鲲/好鲲鲲,它们就会攻击玩家。
- 最后记得添加 PreventMobKillDrops 为 true,这样路过的玩家就不会捡到满地的掉落物和经验。
- 如果我们要配置其他的好鲲鲲和坏鲲鲲类型的生物,我们需要复制粘贴他们的 AI 设置,这样它们就会跟好鲲鲲/坏鲲鲲的 AI 相同了。
</spoiler>
制作一个全额反伤的技能
玩家:玩个球
- 注意,这里的ap_combatpower是插件Attribute_Plus的玩家战斗力属性,属性插件的属性只能作用于玩家,作用怪物则显示null
<spoiler> 鲲鲲:
Type: Zombie Skills: - skill:玩家激活反伤 @self ~onDamaged
注释:玩家在攻击时会给自己设置一个变量,并且通过message提示自己这个数值的大小(也可用于制作者检测变量设置是否成功),并对怪物造成该数值翻倍的伤害. 玩家激活反伤:
Skills: - sudoskill{s=激活反伤} @target
激活反伤:
Skills: - setvariable{type=STRING;var=caster.dm;value="ap_combatpower"} @self - message{m="&c你受到了防反核心的反伤伤害,共计: <caster.var.dm> !"} @self - damage{a='<caster.var.dm>'} @self - heal{a='<caster.var.dm>'} @MIR{r=100;t=鲲鲲}
注释:鲲鲲让玩家执行“激活反伤”技能,激活后玩家将给自己设置为一个变量<caster.dm>,接着用message提示这个变量的数值(也可制作者用于检测是否成功),并让玩家受到自己攻击等量的伤害.最后,100半径内的MythicMobs内部名为“鲲鲲”的怪物将会恢复玩家攻击的等量血量.
</spoiler>
制作一个护盾机制,高仿Warframe!
仓鼠:精 甲 狂 喜 护盾
更新日志
相关链接
MythicMobs技能分页:http://mineplugin.org/MythicMobs%E6%8A%80%E8%83%BD
MythicMobs官网:https://mythiccraft.io/index.php?resources/mythicmobs.1/
MythicMobs使用手册:https://git.mythiccraft.io/mythiccraft/MythicMobs/-/wikis/home
MythicMobs论坛:https://mythiccraft.io/index.php?forums/
授权声明
本页内容翻译/搬运自MythicMobs插件手册
授权方式为GNU Free Documentation License 1.3