迷你世界UGc3.0脚本Wiki[MOD、组件介绍]

Skip to content

迷你世界UGC3.0脚本Wiki

Menu

On this page

Sidebar Navigation

快速入门

欢迎

MOD、组件介绍

什么是Lua编程

组件介绍

组件说明

组件互相操作

组件函数

组件属性

事件

触发器事件管理

组件事件管理

函数库

服务模块

对象模块管理接口 GameObject

角色模块管理接口 Actor

玩家模块管理接口 Player

生物模块管理接口 Monster

方块模块管理接口 Block

背包模块管理接口 Backpack

界面模块管理接口 CustomUI

图文信息模块管理接口 Graphics

区域模块管理接口 Area

容器模块管理接口 WorldContainer

资源模块管理接口 Mod

计时器模块管理接口 Timer

状态模块管理接口 Buff

消息模块管理接口 Chat

普通变量数据管理接口 Data

数组变量数据管理接口 Array

二维表变量数据管理接口 Table

KV表变量数据管理接口 Map

世界模块管理接口 World

道具模块管理接口 Item

全局函数

全局函数

枚举

枚举库

脚本常见问题

开发者常见问题

进阶指南

全局函数

触发器脚本交互

对象介绍

KV&排行榜介绍

二维表介绍

道具实例

更新日志

更新日志

MOD、组件介绍

1. 什么是MOD

MOD(模组)就像是给游戏准备的 "超级补丁"。想象一下,你有一个自己很喜欢的玩具(游戏),但是玩了一段时间后,觉得它还可以有一些新玩法或者新样子。MOD(模组)就是能帮你实现这个想法的东西。

在迷你世界里面,你可以通过模组给游戏添加各种各样的新东西,比如新的物品、方块、生物、地形等,让你有更多的素材去建造和探索。

你还能改变游戏的玩法规则 ,像把生存模式变得更难或更简单,另外还可以提升游戏的画面效果 ,让游戏里的世界看起来更漂亮、更真实,比如有更好的光影效果、更精美的材质等。甚至还能为你提供一些实用的工具和功能,比如方便的背包整理、地图导航、物品合成提示等。

多个模组还可以整合到一个地图里,融合成一个定制化的冒险世界。

那MOD是如何通过编辑器制作的呢?


2. 编辑器搭建一个"舞台"

游戏世界是一个舞台,可以把编辑器想象成一个搭建舞台(游戏世界)的工具。

首先,这个舞台有一个很大的空间,这个空间可能有各种各样的天气、时间变化、以及不同的灯光效果等,这个称为**"环境"**。

在这个空间里,你可以放置各种各样的东西,比如角色(像游戏里的英雄、怪物)、道具(武器、药品)、建筑(城堡、房屋)等。这些东西都被称为 游戏**"对象"**。例如,你要制作一个简单的冒险游戏,你可以先在这个 "舞台" 上放置一个代表玩家角色的游戏对象,再放置一些代表敌人的游戏对象,以及一些地牢、城堡、灯笼等作为场景装饰。

**"UI界面"**就像是游戏世界里的一个特殊区域,这个区域是专门为玩家和游戏进行交互而设立的。可以把它看作是一个操作控制台,上面有各种按钮、滑块、输入框等,就像我们生活中电器的遥控器一样。

上述所说的环境、对象、UI界面,对应在迷你世界里是这样的。


3. 组件是演员的技能和装备

每个游戏对象就像一个演员,它们有自己的 "技能" 和 "装备",这些被称为 "组件"

比如,对于玩家角色这个游戏对象,它可能有一个物理组件,开启了 "碰撞事件",这就好比演员有了触觉,能够感知自己什么时候碰到了其他东西。如果玩家角色碰到了敌人,就可以通过这个组件来检测到碰撞,然后触发战斗场景。

通过模型组件 ,我们可以更改演员的外观以及物品的材质贴图。另外,游戏对象还可以有 触发器组件,这就像是演员的大脑,能够让它按照你编写的规则来行动,比如让玩家角色在按下某个按键时跳跃或者攻击。


4. 触发器、Lua是演员的表演指导

触发器、Lua是工具中非常重要的部分,它就像是给游戏对象(演员)的表演指导 。例如,你写了一个逻辑,告诉玩家角色,当按下键盘上的 "W" 键时,就向前移动。这个逻辑会被附加到玩家角色这个游戏对象的 "自定义组件" 上。

而且逻辑还可以控制游戏对象之间的交互。比如,你可以写一个脚本,当玩家角色碰到一个金币道具(另一个游戏对象)时,就把金币的数量加 1,同时让金币消失。这样,通过逻辑,游戏中的各种游戏对象就能够按照你想要的方式进行互动,让游戏变得更加有趣。


5. 世界编辑

点击玩法,我们可以对世界进行基本设定。包括对时间、天气、天空盒、滤镜、音乐音效、生物生成规则、开局设定、重生规则、界面等等基本设置。

另外在资源背包里,仍有一部分内容也属于这个世界的运转规则和资源,我们导入或编辑之后,可以使用触发器或者组件来调用他们。

其中配方和熔炼属于迷你世界冒险里面的特有规则,配方是工作台或者秘银锅等的合成配方配置,而熔炼则是配置冶炼台的可燃烧材料、冶炼材料和熔炼产出。


6. 组件编辑

进入对象或者世界编辑后,我们可以看到它们身上都挂载了许多组件。这些组件可以控制对象的外观、属性、物理特性、行为逻辑等等,给"舞台"上的"演员"赋予了生命。

官方提供了一些封装好的组件,我们可以通过组件面板直接更改对象的属性。也可以卸载掉一些不需要使用的组件。

如果官方组件不能满足需求,我们也可以通过添加触发器组件/脚本组件 来制作新的组件。(对于高手来说,通过把同类型的逻辑封装成组件,可以让我们的代码更加精简易于管理。)如果不了解触发器可以查看 触发器文档

例如:我们制作一个掉落物组件,来设置不同的生物被击败后,掉落不同的物品。

lua

复制代码
local Script = {}

--属性定义
Script.propertys = {
    varNum = {
    	type = Mini.Number, --定义了一个数值类型的参数
    	default = 2,--默认值
    	displayName = "掉落物数值",
    },
    varItem = {
    	type = Mini.Item,-- --定义了一个道具类型的参数
    	default = 11668,-- 默认值
    	displayName = "掉落物道具",-- 属性别名
    },
}

-- 组件启动时调用
function Script:OnStart()
    -- 监听个体事件 当此对象被击败时触发
    self:AddEvent(ObjectEvent.ObjectDie, self.OnObjectDie)
    -- ObjectEvent.ObjectDie为官方事件,可以在wiki的事件库中查看更多事件
    -- self.OnObjectDie 为下方自定义的一个函数
end

function Script:OnObjectDie(event)
    -- 定义此生物死亡时的动作
    GameObject:CreatePrefab(ObjType.DropItem, self.varItem, event.x,event.y+1,event.z, self.varNum)  
    -- 预制体类型:ObjType.DropItem 为掉落物,可以在wiki中查看其他类型
    -- 掉落物类型:self.varItem从属性面板读取创建的道具类型
    -- 事件中的位置: event.x,event.y+1,event.z, event.y+1让创建的高度必死亡的高一格
    -- 掉落物数量:self.varNum从属性面板读取创建的掉落物数量
end

return Script

完整视频教程

所有自定义的组件,除了在编辑对象时使用之外,还可以在资源背包里统一编辑管理。(此处编辑组件,会影响所有调用了这个组件的对象)

接下来,你可以继续学习Lua语言的基础语法,也可以阅读详细的迷你世界API接口

Last updated: 2025/4/21 18:47

Pager

Previous page欢迎

Next page什么是Lua编程