v2.9.0 Release
主要更新
-
物品选择器现在支持背包物品中的左手内物品及附魔了。

-
Notify,ZipData/UnZipData,ConvertUnicodeDictToUtf8现在不再会强行将tuple类型转化为list了,将会正确保留其原有类型。
-
灵免以太底层架构革新,新增插件化架构,可以将一些已经集成好的模组功能直接插件化置入灵免以太前置中以减少前置过多的问题。
-
LAGun更新至2.2.0,大幅优化了切枪卡顿问题及相关BUG。
-
修复了GameHighTickList中的函数绑定问题,优化了函数绑定效果。
-
所有的界面适配F1、屏幕动画、透明度。
次要更新
-
同步了新版本背景盒。

-
SetPlayerRender的存储数据LARenderId(只存储JsonId数据)现在新增了更全面的数据LARenderData,可以获取全面填参信息(dict),用于重渲染。
-
优化了CameraLerpDeltaRotationRun,使其ResultRoll在SetCameraLerpRotation时便敲定,从而避免影响相机Roll角度。
-
优化了渲染背景盒时渲染恢复逻辑。
-
优化了枪械UI异常的问题。
-
修复了枪械射击模式切换枪械带来的异常问题。
-
修复了枪械射击声音的异常传播距离问题。
-
修复了枪械因左手坐标系带来的错误摆动的问题。
-
优化了切枪卡顿问题,采用UUID方案进行数据存储实现。
-
枪械现在将不再会破坏掉落物实体。
-
优化了枪械刚进入游戏的时候会丢失数据的问题。
-
优化了枪械切换枪械带来的数据异常覆盖的问题。
-
优化了枪械换弹时切枪会出现错误换弹的问题。
-
优化了枪械取消渲染的时候连环切枪就会重复播放取消枪械的动作的问题。
新增接口
- 新增BezierInterpolation(客户端),用于贝塞尔曲线插值。
- 新增TernaryArrayBezierInterpolation(客户端),用于三元数组贝塞尔曲线插值。
- 新增GetKeyPressList(客户端),用于获取最近连续输入的字母按键列表(聊天框状态下除外)。
- 新增ClearKeyPressList(客户端),用于清除最近连续输入的字母按键列表。
- 新增LeftHandToNormalAngle(双端),用于将左手坐标系角度转换为正常角度。
- 新增SyncToClientModRenderAttrByKey(服务端),用于手动同步缓存数据至客户端,以防客户端GetModRenderAttrByKey获取为空。
- 新增BindGameHighTickFunctionByUUID(客户端),用于根据UUID绑定高刷Tick函数。
- 新增OpenProgressTips(客户端),用于打开进度条提示。
调整接口
- 调整了GetAllItemDict(双端),Type新增类型
4,用于获取背包、副手、盔甲蓝所有内容。 - 调整了CameraLerpDeltaRotationRun(客户端),新增参数IsLockRoll,默认为False,用于指定是否锁定相机滚动角度,以防止原生相机滚动带来的错误结果。
- 调整了CameraLerpRotationRun(客户端),新增参数IsLockRoll,默认为False,用于指定是否锁定相机滚动角度,以防止原生相机滚动带来的错误结果。
- 调整了BindKeyPress(客户端),新增参数UUID,用于指定绑定按键命名以防止冲突,UUID默认为None将会返回系统自带的随机UUID,BindKeyPress IsAdd为True的时候,返回绑定的UUID。删除时不填写UUID,将会删除该按键所有绑定的函数。
修复接口
- 修复了SetModRenderAttrByKey(双端),同步逻辑问题带来的首个数据丢失的情况。
v2.8.2 Release
主要更新
-
新增集成功能
军械库核心面向对象。
-
新增LAStudio,MTMLan插件架构。

次要更新
- 配置组件更新至
format_version为2.8.2:
- 优化了玩家渲染配置组件
dafeimian:entity,新增了动画控制器和渲染控制器能够填写数据驱动条件样式dict
新增接口
- 新增SetTimerCameraLerpDeltaRotation(客户端),设置计时器的摄像机动画运行配置。
- 新增GetTimerCameraLerpDeltaRotationData(客户端),获取计时器的摄像机动画运行数据。
- 新增TimerCameraLerpDeltaRotationRun(客户端),运行计时器的摄像机动画。
- 新增OpenCustomGunScreen(客户端),打开自定义枪械操作界面。
- 新增OpenModifyGunScreen(客户端),打开枪械改装界面。
- 新增GetGunConfigData(客户端),根据模型名称获取枪械配置数据。
- 新增RegisterGunConfig(服务端),注册枪械配置。
- 新增RegisterModifyConfig(服务端),注册枪械改装配置。
- 新增BindPlayerCtrlChangeFunction(客户端),绑定玩家控制改变后事件触发函数。
调整接口
- 调整了CameraLerpDeltaRotationRun(客户端),会返回每一帧的DeltaRotation。
- 调整了SetPlayerRender(客户端),新增了IsFliterSelf参数,用于指定是否过滤自己。
- 调整了ResetPlayerRender(客户端),新增了IsFliterSelf参数和IsKeep参数,用于指定是否过滤自己和是否保持当前渲染。
v2.8.1 Release
主要更新
- 重构了灵免以太底层通信架构,左下角通信包不再仅限于Mod通信数据。
- 流式接口OneEntity新增Family, AI, RiderId, BeRiderIdList, Rotation。
- 面向对象新增Vehicle(客户端)。
- 灵免以太开发平台内嵌灵免以太AI。
次要更新
- 配置组件更新至
format_version为2.8.1:
- 优化了玩家渲染配置组件
dafeimian:entity,如果填写了render_controllers字段,将不再会强制要求填写material_by_render_controller,geometry_by_render_controller,texture_by_render_controller。
- 长按
alt键位现在可以呼出鼠标用于快速点击一些UI。 - 修复了模组异常的弹窗问题。
- 修复了进入游戏后的音乐播放异常问题。
- SetPlayerRender的联机状态下的自动重渲染。
新增接口
- 新增EndSprinting(双端),用于结束玩家疾跑状态。
- 新增RegisterRiderSeat(客户端),用于注册协同骑乘座位。
- 新增RunEntityJsonEvent(服务端),用于执行实体Json事件。
- 新增QuerySetByData(双端),根据字典数据来设置自定义Molang值。
- 新增SetSeatBroadcastInterval(客户端),用于设置协同骑乘座位广播频率。
- 新增SetPlayerVehicleRotation(客户端),用于设置玩家当前协同座位的载具旋转角度。需要RegisterRiderSeat注册后的载具才能使用此接口设置。
- 新增GetPlayerVehicleRotation(客户端),用于获取玩家当前协同座位的载具旋转角度。需要RegisterRiderSeat注册后的载具才能使用此接口获取。
- 新增GetPlayerVehicleSeatIndex(客户端),用于获取玩家当前坐骑的协同骑乘座位的次序。需要RegisterRiderSeat注册后的载具才能使用此接口获取。
调整接口
- 调整了QueryGet(客户端),新增参数EntityId,默认为playerId,用于指定查询的实体Id。
- 调整了SetPlayerRender(客户端),新增参数IsBroadcast,默认为True,用于指定是否广播至所有玩家。默认广播至所有玩家。
- 调整了ResetPlayerRender(客户端),新增参数IsBroadcast,默认为True,用于指定是否广播至所有玩家。默认广播至所有玩家。
v2.8.0 Release
主要更新
- 灵免以太开发平台通过验证后才能够下载测试环境。
次要更新
- 优化了任务系统界面显示效果。
- 优化了玩家延迟算法。
新增接口
- 新增GetLASystemVersion(双端),用于获取灵免以太系统版本。
- 新增RegisterOptimizeCustomFeatureRule(服务端),用于注册优化自定义大型特征规则(用于网易多结构特征生成失败检测的问题)。

调整接口
- 调整了SetModRenderAttrByKey(服务端),新增参数OnlyServer,用于指定是否仅在服务端存储,反之则自动同步至客户端。
- 调整了GetCustomFeatureRulesPos(服务端),新增参数OriginPos,用于指定原始搜索位置,默认为None,从随机玩家位置开始搜索。
- 调整了GetAndAttackRadiusEntities(服务端),新增参数FilterEntityFamilyName,用于过滤实体家族类型,默认为[]。
v2.7.2 Release
主要更新
- 灵免以太开发平台现在支持手机号登录。

次要更新
- 修复了OreUIForm的Toggle类型控件显示异常的问题。
- 修复了ItemSelector指定物品选择器异常的问题,注意:ItemSelector将会占用OreUIForm的IsGrand层级。
调整接口
- OreUIForm新增了IsGrand参数,表示第三级的表单。IsGrand的优先级高于IsChild。
v2.7.1 Release
主要更新
- 新增了新版多功能表单控件类型:按钮型输入控件、信息型按钮列表控件、提示控件、下拉菜单框。

次要更新
- OpenTips的按钮事件绑定现在可以直接填写
function类型。 - 新增了
dafeimian:hand_item_visible组件,用于控制实体是否显示手持物品。 - 新版多功能表单新增了左侧按钮类型:
button_red。 - 新版多功能表单新增了右侧按钮类型:
locked。 - 调整选择按钮的点击事件处理逻辑,增加触摸位置校验防止滚动时误触发,修改UI面板尺寸和偏移量以优化布局。
新增接口
- 新增GetOreUIFormData(客户端),用于获取新版多功能表单数据。
- 新增GetOreUIFormConfig(客户端),用于获取新版多功能表单配置。
- 新增OreUIFormRightContentRefresh(客户端),用于刷新新版多功能表单右侧内容。
- 新增UnRegisterMission(客户端),用于动态删除任务。
调整接口
- 调整了GetOreUIFormData、GetOreUIFormConfig、OreUIFormRightContentRefresh的表单优先级,现在会先检查是否有子表单,如果有则优先使用子表单。而不是优先使用大表单。
v2.7.0 Release
主要更新
- 新增了新版多功能表单工具。传统表单工具需在json中设置format_version为1.1.5。

- 新增了物品选择器,用于选择物品。

次要更新
- 优化了LocalConfigData的提示信息,新增了保存失败的提示。
- 修复了OpenTips按钮无法正常交互的问题。
新增接口
- 新增OreUIForm(客户端),用于创建多功能表单。
- 新增ItemSelector(客户端),用于选择物品以输出数据。
- 新增接口SetModRenderAttrByKey(客户端),仅客户端缓存数据,不存档!
调整接口
- 调整UseServerApi(客户端),新增了OnlyClient参数,是否仅在客户端调用缓存数据,默认为False,在获取大量数据的时候推荐开启。
- 调整SetItemRender(客户端),新增了IsEnchant和UserData参数,用于设置物品是否为附魔物品和物品用户数据。
- 调整GetModRenderAttrByKey(客户端),新增了OnlyClient参数,用于获取仅客户端缓存的数据。
修复接口
- 修复SetNewbieTipsWindow(客户端),在基类画布中异常的问题。
v2.6.2 Release
主要更新
- 版本号升级为2.6.2,取消了1.x的版本号形式。
- 新增了下拉菜单按钮用于快捷打开任务界面。
- 新增了新的背景图片,替换了旧版的图片。
- 优化了包体大小,包体体积减小至2.6MB。

次要更新
- 优化了提示界面触发效果,不再会被原生界面所意外覆盖。
- 优化了进入主界面的加载速度,防止因瞬时延迟过高而导致加载效率过低的问题。
- 优化了原生界面加载后的关闭逻辑。
调整接口
- 调整了OpenOriginalUI(客户端),新增了IsESC参数,用于控制是否需要绑定ESC键关闭UI。
- 调整了OpenTips(客户端),新增了UIData参数,用于自定义数据传递。
- 调整了OpenTips(客户端),新增了IsOriginal参数,用于控制是否为原版弹窗。
v1.2.6 Release
主要更新
- 灵免以太开发平台更新至2.2.4版本。
新增接口
在线文档暂未做出编写,详情请查阅补全库。
- 新增SetCameraLerpDeltaRotation(客户端),设置相机旋转增量值。
- 新增CameraLerpDeltaRotationRun(客户端),对相机的差值旋转进行线性插值。适用于枪械发射后的枪口上抬及回正。
- 新增CameraLerpRotationRun(客户端),对相机旋转进行线性插值。适用于直接指向旋转以及实现类似于三角洲行动的巡飞弹的平滑镜头旋转
- 新增SetCameraLerpRotation(客户端),设置相机旋转目标值。
- 新增PlayCGToScreen(客户端),全屏播放视频。适用于直接播放剧情动画。
- 新增PlayCGToUIControl(客户端),播放视频到UI控件。适用于播放模组教学视频。
v1.2.5 Release
主要更新
- 同步国际基岩版1.21.92背景盒
- 界面UI优化为OreUI外观,可直接导入
ui/LA_custom_control.json来获得相应的自定义控件控件,或直接使用该路径下的textures/ui/LA/oreui贴图 - 新增服务端对象
Secret,用于数据加密为String,包含解密功能 - 灵免以太开发平台更新2.2.0版本,推出插件化更新,集成热更功能,更加方便的编写专项自动化功能插件
次要更新
1.2.5.2 任务系统完善相关指引。1.2.5.2 调整设置界面说明提示的空格操作为按键F1.2.5.2 优化兼容不规范通信数据,减少卡顿情况1.2.5.2 修复设置界面说明提示在原生界面下的异常问题1.2.5.2 修复了维度切换PlayerStart事件失效而产生UI创建问题1.2.5.3 修复了任务系统变量CompleteFunctionInstance的拼写错误(旧有修复了任务系统变量CompeleteFunctionInstance的拼写错误)1.2.5.3 对话系统的PC端操作兼容及优化1.2.5.3 修复任务系统完成任务的列表显示问题1.2.5.3 OneEntity新增Step变量
新增接口
- 新增SetNewbieTipsWindow(客户端),设置界面说明提示
- 新增OpenMisstionPanel(客户端),打开任务界面
- 新增RegisterPackButton(客户端),注册PC背包代理界面的按钮
- 新增EntityMovePath(服务端),实体寻路至目标坐标
- 新增GetMissionDictListByParentName(客户端),根据任务父名称获取任务数据列表
- 新增GetMissionIsAutoRewardByMissionId(客户端),根据任务Id获取任务是否自动发放奖励
- 新增GetMissionDictById(客户端),根据任务Id获取任务数据
- 新增RegisterMission(客户端),动态注册任务
- 新增UnLockMission(服务端),强行解锁任务
- 新增CompleteMission(服务端),完成任务
1.2.5.2 新增EncryptDict(服务端),加密数据为字符串1.2.5.2 新增DecryptDict(服务端),解密数据1.2.5.3 新增BindMouseWheelFunction(客户端),绑定鼠标滚轮事件
调整接口
- 调整OpenTips(客户端),新增参数
UIData用于修改提示弹窗的按钮样式 - 调整BindPlayerStartFunction(客户端),现在切换维度也会触发PlayerStart事件,并且会携带参数True以表示切换维度而触发的(可选接收这一个Bool参数)。
修复接口
1.2.5.2 修复SetNewbieTipsWindow(客户端),在基类画布中异常表现的问题
v1.2.4 Release
主要更新
- 新增了原生方式创建UI,而不是使用网易方式。原生方式可以节省对操作方面的检测及屏幕适配问题,但这并不代表不适用网易方式,而是各有所长
1.2.4.2 新增了自定义设置中的Tips按钮1.2.4.3 兼容 牺牲联机网络性能来解决网易脚本逻辑+线程内存的问题,极大的降低了SetAttr的双端延迟!1.2.4.3 破坏 使用了SetModRenderAttr,GetModRenderAttr相关接口后,如与网易接口ModAttr混用,将会报废!
次要更新
1.2.4.2 dafeimian:chat_group返回函数时新增参数类型接收,仍然对旧版本参数方式兼容1.2.4.2 新增了客户端LASystem.OriginPath来获取基类画布的根路径1.2.4.4 优化了GetModRenderAttr的编码,将unicode修改为utf-8
新增接口
- 新增AutoRegisterOriginalUI(客户端),自动注册原生方式UI,画布需要为基类画布
- 新增OpenOriginalUI(客户端),用原生方式打开UI,这种方式不再需要考虑键鼠模式
- 新增CloseOriginalUI(客户端),用原生方式关闭UI,这种方式不再需要考虑键鼠模式
1.2.4.4 新增QuerySet(服务端),设置自定义Molang函数的值1.2.4.4 新增ConvertUnicodeDictToUtf8(双端),将字典中的unicode编码转换为utf-8编码
调整接口
1.2.4.4 调整QuerySet(客户端),新增参数EntityId挂载实体Id,默认为None则为玩家Id,增加了适用范围。
v1.2.3 Release
主要更新
- PC用户会在左下角显示UID信息
- 左下角新增服务端、客户端收发包状态,其中服务端状态仅有房主可见
1.2.3.3 新增灵免以太实验性功能,用于测试新功能如存档玩家数据迁移等
次要更新
- 修复了当玩家安装此组件并进入游戏,随后退出卸载模组再次进入时无敌状态和无法交互的问题
- 优化了游戏启动时界面显示效果
- 优化了灵免以太加载速度,提升了灵免以太的稳定性
1.2.3.3 修复了Entity对象的缺少SetAttrValue接口的问题1.2.3.3 调试工具键鼠按键现在可以通过按键设置进行修改1.2.3.3 修复了强制渲染产生的头部异常问题(需加载灵免以太-屏蔽工具或模组设置内修改即可)1.2.3.4 联机大厅购买商品进行发货逻辑错误时,将会进行弹窗提示及日志输出,并退回玩家款项1.2.3.5 修复了自定义设置无法保存的异常情况问题
新增接口
- 新增GetHostPlayerId(服务端),获取房主的玩家id
- 新增Notify(双端),通信接口,节省自定义事件通信后还需要通过
Event装饰器进行监听,同时统一优化灵免以太模组收发包
调整接口
- 调整SetPlayerRender(双端),现在将会将RenderId存储至Key为
LARenderId的ModRenderAttr中,可通过GetModRenderAttr获取 1.2.3.2 调整Notify(双端),现在DataDict将支持更多格式,且不再因Unicode编码问题导致无法正常传输1.2.3.4 调整Notify(服务端),新增DelayTime参数,如果此时客户端没有创建完毕,将延迟发送事件,不填写默认将会在下一帧重新发送事件1.2.3.5 调整GetModConfigValue(客户端),调整Key参数,如果Key参数为None,则返回该模组设置的所有数据
v1.2.2 Release
主要更新
- 新增了BindFunction装饰器,现在将更加方便的使用一些接口
LASystem = ClientLingmienAether().GetLASys(config.Key)
BindClassFunction, BindFunction = LASystem.BindFunction(config.ModName, config.ClientSystemName), LASystem.BindFunction()
class DebugClientSystem(ClientSystem, ClientLingmienAether):
def __init__(self, namespace, systemName):
pass
@BindClassFunction.PlayerStart()
@BindClassFunction.KeyPress('16')
def PlayerStart(self, *args):
print 123123
LASystem.Msg('游戏启动')
@Event.ClientEvent('OnScriptTickClient')
def ClientTick(self):
pass
次要更新
- 修复了触控端未屏蔽用户操作而导致的按钮失效问题
- 修复了手柄模式下原生操作无法使用的问题
1.2.2.2 修复了联机大厅模式激活失败的问题1.2.2.2 修复了模组配置时点击过快造成的界面紊乱的问题1.2.2.2 修复了原版下拉菜单中模组配置兼容性问题1.2.2.2 修复了联机大厅Slider控件的报错刷屏问题
新增接口
1.2.2.4 新增了BindFunction(客户端)中的HighTick,对应BindGameHighTickFunction功能,用于绑定高帧率的函数1.2.2.4 新增了BindNextTickFunction(双端),绑定下一帧执行函数,可以携带该函数所需的参数1.2.2.4 新增了BindFunction(双端)中的NextTick,对应BindNextTickFunction功能,用于绑定下一帧执行函数
from ClientLingmienAether import ClientLingmienAether
import SantsueDemoScripts.SantsueCommon.config as config
import datetime, logging
LASystem = ClientLingmienAether().GetLASys('此处填写你的密钥')
BindClassFunction, BindFunction = LASystem.BindFunction(config.ModName, config.ClientSystemName), LASystem.BindFunction()
class ModClientSystem(ClientSystem, ClientLingmienAether):
def __init__(self, namespace, systemName):
super(ModClientSystem, self).__init__(namespace, systemName)
# 省略部分自动生成的代码
@BindClassFunction.PlayerStart()
def PlayerStart(self, *args):
logging.info("PlayerStart1: {0}".format(datetime.datetime.now()))
LASystem.BindNextTickFunction(self.PlayerStartNextTick, 'Time')
logging.info("PlayerStart2: {0}".format(datetime.datetime.now()))
def PlayerStartNextTick(self, args):
logging.info("PlayerStartNextTick{1}: {0}".format(datetime.datetime.now(), args))
@BindFunction.NextTick('ABC2')
def NextTickFunc(args):
"""相当于2Tick,在ABC1后面"""
logging.info("NextTickFunc{1}: {0}".format(datetime.datetime.now(), args))
LASystem.BindNextTickFunction(NextTickFunc, 'ABC1')
@BindClassFunction.NextTick('First')
def NextTickFunc(self, args):
"""可以当ClientInit使用。由于是在下一帧,相较于直接在客户端初始化执行中可以节省一些性能"""
logging.error("NextTickFunc{1}: {0}".format(datetime.datetime.now(), args))
调整接口
- 调整了SetLobbyMenuVisible(客户端),修改了该接口的使用时间帧,现在可以在任何时间帧使用
修复接口
1.2.2.4 修复了BindFunction的子函数使用报错问题
v1.2.1 Release
主要更新
- 新增了
Entity实体对象、Block方块对象、Item物品对象、OneItem物品对象+流式接口 - 新增了自定义依赖组件
dafeimian:require_mod,可以方便快捷提示玩家需要安装前置组件
1.2.1.2 更新主界面背景盒
次要更新
- OneEntity新增了
KnockBackResistance,JumpStrength,Armor,Name,DimensionId,OwnerId,TargetId 1.2.1.2 优化了启动界面的手持物品显示1.2.1.2 修复了OneItem空物品时ExtraId报错的问题1.2.1.3 修复了主界面1像素偏差问题1.2.1.3 同步了Java新版主界面按钮悬浮贴图1.2.1.3 自定义玩家渲染dafeimian:entity中的自定义渲染控制器支持条件格式
{
"format_version": "1.2.1",
"dafeimian:render": {
"components": {
"dafeimian:entity": {
"animations": [
"idle",
"none"
],
"animation_controllers": [
"controller.animation.bgbox.idle"
],
"render_controllers": [
{
"controller.render.la": "!query.mod.la"
},
{
"controller.render.is_la": "query.mod.la"
}
],
"material_by_render_controller": {
"la": "dfm_nolight"
},
"geometry_by_render_controller": {
"la": "geometry.bgbox"
},
"texture_by_render_controller": {
"la": "textures/entity/bgbox",
"is_la": "textures/entity/bgbox_mohu"
}
}
}
}
}
1.2.1.4 原版下拉菜单新增模组配置按钮,点击可直接打开灵免以太界面1.2.1.6 修复了吞掉报错提示的问题1.2.1.6 修复了点击代理界面无法隐藏手部物品的问题
新增接口
1.2.1.2 新增了WorldPlaySfx(客户端),真正的在世界中特效播放,不广播则只能自己看到1.2.1.2 新增了WorldSfxToEveryBody(客户端),在世界中播放特效(自动广播)1.2.1.2 新增了GetRadiusEntities(双端),获取实体Id的周围的实体列表1.2.1.3 新增了RegisterModSettingConfig(客户端)注册模组设置配置1.2.1.3 新增了GetModConfigValue(客户端)获取模组设置的值,没有则返回None
调整接口
1.2.1.1 对旧代码无影响 OneEntity,新增IsLogging参数用于调整是否输出常规日志,默认为False1.2.1.2 对旧代码无影响 调整了PlaySfxToEveryBody(客户端),新增可选参数SfxTimer用来调整特效的播放延迟
修复接口
1.2.1.2 修复了RealPlaySfx(客户端),播放中国版粒子特效的绑定错误的问题1.2.1.2 修复了PlaySfxToEveryBody(客户端),播放中国版粒子特效的绑定错误的问题1.2.1.2 修复了PlaySfxToEveryBody(客户端),参数FaceCamara拼写错误,调整为FaceCamera,对旧有拼写仍然保证兼容。1.2.1.5 修复l GetModConfigValue(客户端),使用环境报错的问题
v1.2.0 Release
主要更新
- 接口动态化注册激活,游戏加载速度提升25%,新增接口使用率指标和指令
/lastates 1.2.0.3 新增面向对象接口系统用法,以及实例化用法,且实现了实例化接口全动态化添加销毁,与旧版本写法仍然保持兼容!点我查看
@Event.ServerEvent('ServerChatEvent')
def ServerChat(self, args):
PlayerId = args['playerId']
PlayerPos = LASystem.Entity(PlayerId).GetEntityPos() # 当只需要一个数据时,使用Entity更好
PlayerEntity = LASystem.OneEntity(PlayerId) # 当需要多个属性或者调整多个属性时,使用OneEntity更好
PlayerEntity.IsFire = True
PlayerPos = PlayerEntity.Position
PlayerEntity.Scale = random.uniform(0.25, 3.0) # 不仅能获取,也可以实时修改它
次要更新
- 修复了聊天系统优化后触控模式一场的问题
- 优化了自定义方块交互PC操作卡顿
- 优化了联机大厅商店的交互逻辑
1.1.2.4 修复了非交互CD无法交互的问题
调整接口
1.1.2.3 对旧代码无影响 调整BindCustomBlockInteractFunction(服务端),新增IsCoolDown参数用于调整交互是否有微小延迟,防止PC端交互Tick通信造成卡顿
v1.1.6 Release
主要更新
- 自定义实体对话新增
image图片显示功能 - 新增编译版本,为后续多版本编写做好铺垫
新增接口
1.1.6.2 新增SetEntityScale(服务端),设置实体大小倍率
v1.1.4 Release
主要更新
- 新增配置组件
dafeimian:building用于建筑数据的存储 - 新增调试工具,使用
tab键呼出调试工具,附带配套指令/debugsetting
次要更新
- 新增右下角信息平均值、ServerTick
- 修复灵免以太界面再次打开的bug
新增接口
- 新增SetLobbyMenuVisible(客户端),设置联机大厅菜单是否显示
修复接口
- 修复BindKeyPress(客户端),参数ScreenName失效的问题
- 修复GetPlayerDimension(双端),因初始化而玩家维度id不刷新的问题
v1.1.3 Release
主要更新
次要更新
-
优化了实体配置组件Json的
dafeimian:combo_attack的音效参数类型,填写float 0.25将默认等效为[0.25],而不是报错 -
1.1.3.2 实体配置组件Json的dafeimian:spawn_entity新增刷新实体数量的可选参数 -
1.1.3.2 修复实体配置组件Json的dafeimian:spawn_entity的offset参数异常的问题。旧有offset的参数为[x, z, y],新的offset的参数为[x, y, z],需要声明Json的format_version为1.1.3,旧有的1.1.2仍然为[x, z, y],不受影响。 -
1.1.3.3 修复dafeimian:spawn_entity玩家退出游戏重进后会重复刷新的问题 -
1.1.3.5 优化了灵免以太的一些功能逻辑。 -
联机大厅新增玩家UID头显UI
-
联机大厅新增玩家举报系统,全民评审
-
联机大厅新增封禁指令,依旧使用玩家名称,防止滥用UID封禁
-
整合联机大厅控制中心,优化
v1.1.2 Release
主要更新
- 实体配置组件Json、接口合并,并新增了连招配置功能
- 新增背包槽位介绍
次要更新
1.1.2.2 优化了组件dafeimian:spawn_entity的参数dimension_id,可以自动兼容int类型1.1.2.3 优化了组件dafeimian:combo_attack的参数attack_data未达到三个时实体逻辑异常1.1.2.4 修复了组件dafeimian:combo_attack的参数attack_data中的sound_list异常的问题
新增接口
- 新增RegisterEntityAbility(服务端),注册自定义功能实体
1.1.2.3 新增SetPlayerItemByInvPos(服务端),根据背包槽位设置玩家物品,会覆盖原有位置物品1.1.2.3 新增RemovePlayerItemByInvPos(服务端),根据背包槽位删除玩家物品1.1.2.3 新增SetItemLayer(服务端),设置物品层级贴图,仍需要手动将物品数据生成给玩家,因此使用该接口前需要清除传入的ItemDict物品
调整接口
1.1.2.4 对旧代码无影响 调整SetItemLayer(服务端),新增ExtraData参数用于自定义物品数据信息extraId,且调用该接口时,会自动给物品添加存储信息extraId ,key为Level,Value为TextureKey
v1.1.1 Release
主要更新
-
主界面更换为最新背景盒
-
1.1.1.2 实体自定义聊天功能
次要更新
- 大幅优化了灵免以太的启动速度,逻辑优化
1.1.1.3 优化了会话系统,现在可以进行加速跳过对话和关闭对话,而不是延迟2秒对话结束
新增接口
1.1.1.2 新增RegisterEntityChat(服务端),注册实体自定义聊天
调整接口
对旧代码有影响 调整BindPlayerOnHandItemFunction(服务端),新增ButtonText参数:默认为'',则绑定的函数在玩家切换成该物品时会立刻出发;若不为'',则会根据参数显示一个按钮,当玩家手动按下的时候才会触发函数
删除接口
对旧代码有影响 删除PlayerUseLA(双端),模拟玩家使用灵免以太控制中心物品对旧代码有影响 删除StopPlayerUseLA(双端),模拟玩家停止使用灵免以太控制中心物品
v1.1.0 Release
:::error{title=废弃警告}
- 原有灵免以太接口系统获取将于2024年12月22日废弃 :::
主要更新
- 灵免以太接口系统获取修改为密钥方式 :::code-group
import ...
from ClientLingmienAether import ClientLingmienAether
class ***ClientSystem(ClientSystem, ClientLingmienAether): # 继承补全库,方便接口补全编写代码
def __init__(self, namespace, systemName):
...
# 调用接口系统
self.LA = self.GetLASys('密钥')
# 使用接口CreateDefaultUI注册并创建UI
print self.LA.CreateDefaultUI(config.ModName, GlobalConfig.UIStartName, config.ScriptsName, True)
import ...
from ServerLingmienAether import ServerLingmienAether
class ***ServerSystem(ClientSystem, ServerLingmienAether): # 继承补全库,方便接口补全编写代码
def __init__(self, namespace, systemName):
...
# 调用接口系统
self.LA = self.GetLASys('密钥')
# 使用接口ServerMsg给所有玩家发送消息
for PlayerId in serverApi.GetPlayerList():
self.LA.ServerMsg(PlayerId, '这是一条自定义消息')
:::
- 灵免以太接口补全不再需要注释
self.LA一行,而是可以直接补全
次要更新
1.1.0.2 修复了联机大厅房间数据刷新导致玩家背包物品回档的问题1.1.0.2 新增了联机大厅玩家等级跨存档存储1.1.0.2 联机大厅反作弊升级规避微软漏洞1.1.0.2 联机大厅更新封禁系统1.1.0.2 联机大厅将会直接封禁命令方块类、经验瓶物品及相关实体,如需使用,须解除相关封禁1.1.0.2 联机大厅新房间默认世界时间为01.1.0.3 修复联机大厅排行榜异常、商品批量购买货币扣除异常等恶性问题1.1.0.4 修复了联机大厅房主为管理员时,退出游戏后退出房间后其他玩家权限将变为管理员的问题
新增接口
- 新增RegisterCustomLobbyRank(服务端),注册联机大厅排行榜,使用GetModRenderAttrByKey接口Key为RankListBy{BindDataKey}获取排行榜list数据
- 新增RegisterOPPlayerUIDInLobby(服务端),注册联机大厅管理员UID
调整接口
对旧代码无影响 调整SetIsDisable(服务端),新增设置项IsLobbyKick,是否限制玩家二次进入本房间/存档1.1.0.3 对旧代码有影响 调整RegisterCustomLobbyStore(服务端),返回参数新增key BuyNumTimes,表示批量购买数量1.1.0.5 对旧代码有影响 调整GetPlayerDimension(服务端),玩家维度数据加载策略
v1.0.9 Release
主要更新
-
新增联机大厅相关功能,包括:商店、抽奖、签到、会员、公告、排行榜、QQ、帮助等内容
测试时需要使用self.LA.SetIsDisable('IsLobby', True)才会显示 -
新增更多事件日志提示
新增接口
- 新增SetIsDisable(服务端),服务端设置,需要在服务端初始化后直接调用
- 新增GetPlatForm(服务端),获取服务端运行环境
- 新增GetServerIsDisable(客户端,)获取服务端设置信息
1.0.9.2 新增SetPlayerDataInLobby(服务端),设置联机大厅玩家/服务器存储数据(对应Key进行覆盖)1.0.9.2 新增GetPlayerDataInLobby(服务端),获取联机大厅玩家/服务器存储数据(可部分获取),如果返回值为空,可以GetModRenderAttrByKey获取Key为'LobbyData'1.0.9.2 新增GetPlayerLobbyUID(服务端),获取玩家联机大厅UID1.0.9.2 新增BindPlayerBuyItemFunction(服务端),绑定联机大厅玩家购买商品事件函数,为防止作弊无法解绑1.0.9.2 新增GetCustomFeatureRulesPos(服务端),获取特征规则坐标1.0.9.2 新增GetCustomFeatureRulesByPos(服务端),根据当前坐标获取离自己最近的多结构自定义特征Id1.0.9.2 新增GetDictExtremeValueKey(双端),获取Dict中指定Key的极值对应的键
调整接口
1.0.9.3 对旧代码无影响 调整GetPlayerDataInLobby(服务端),新增参数指定返回值Key、Function
修复接口
对旧代码有影响 修复SortDictByNumberMagnitude(双端),参数异常
v1.0.8Release
主要更新
1.0.8.2 新增网络环境检测,对恶意弱网行为进行惩罚
新增接口
- 新增GetAllItemDict(双端),获取类型所有物品数据
- 新增SetItemRender(客户端),设置物品渲染控件显示的物品内容
- 新增SetImageAndTextColor(客户端),设置图像控件或文本控件的颜色
- 新增GetScrollViewChildPath(客户端),获取滚动列表控件的子控件路径(无法通过绝对路径获取,只能使用该接口,然后使用相对路径获取其绑定的子控件内容)
- 新增GetCloneListByDemoPath(客户端),根据复制的UI路径获取该Demo复制后的结果列表
- 新增CloneUIControl(客户端),复制并粘贴UI到指定路径并指定名字
- 新增DeleteUIControl(客户端),删除UI控件
- 新增SetEditText(客户端),获取或设置输入框控件文字
1.0.8.2 新增BindPlayerStartFunction(客户端),绑定玩家点击灵免以太主界面进入游戏后的函数
调整接口
对旧代码无影响 调整GetItemDictByInv(服务端),现在支持客户端
v1.0.7 Release
主要更新
- 新增开发指南《三维向量计算》、《四元数计算》、《矩阵计算》3篇文章
1.0.7.2 手持灵免以太物品将会打开主界面面板
次要更新
1.0.7.3 修复了手持灵免以太物品并切换为空物品后仍然显示打开界面按钮的问题
新增接口
- 新增BindPlayerOnHandItemFunction(服务端),绑定玩家手持某物品的事件函数,需要切换物品后才会触发
- 新增GetTwoPosLength(双端),获取目标坐标与第一坐标之间的距离
- 新增GetLingmienAetherMod(服务端),获取已注册的灵免以太模组数据
- 新增GetAllLoadItems(服务端),获取已经加载的物品id
- 新增CreateLootItem(服务端),生成掉落物
- 新增ExchangePlayerInv(服务端),交换玩家背包物品位置
- 新增GetPlayerSelectInv(服务端),获取玩家当前所选择的槽位
- 新增GetItemDictByInv(服务端),根据背包类型、槽位来获取物品数据信息
- 新增GetEntitySize(双端),获取实体碰撞箱大小
- 新增DeltaDateTime(双端),计算日期差值,FirstDate-SecondDate
- 新增SplitListByQuantity(双端),按数量拆分list
- 新增SortListByNumberMagnitude(双端),根据数字排序由Dict元素组成的List--[{}, {}, ...]
- 新增SortDictByNumberMagnitude(双端),据数字排序由Dict元素组成的Dict--{'x':{}, 'y':{}, ...}
1.0.7.2 新增GetPlayerDimension(双端),获取玩家所在维度1.0.7.3 新增OpenLA(客户端),模拟打开灵免以太主界面1.0.7.3 新增PlayerUseLA(双端),模拟玩家使用灵免以太控制中心物品1.0.7.3 新增StopPlayerUseLA(双端),模拟玩家停止使用灵免以太控制中心物品1.0.7.3 新增SetPlayerSelectItem(服务端),设置玩家选中的物品槽位1.0.7.3 新增ClearPlayerOnHandItem(服务端),清除玩家主手物品1.0.7.4 新增GetPlayerPing(双端),获取玩家延迟
调整接口
1.0.7.4 对旧代码无影响 调整UseServerApi(客户端),现在可以接收到返回值,但需要考虑客户端与服务端的延迟问题
v1.0.6 Release
新增接口
- 新增SetEntityOnFire(服务端),获取或设置实体当前着火状态
- 新增SetPlayerGameMode(服务端),获取或设置玩家游戏模式
- 新增GetPlayerName(双端),获取玩家名称
- 新增GetEntityChineseName(双端),获取实体中文名称
- 新增SetLabelText(客户端),获取或设置文本控件文字
- 新增SetProgressBarValue(客户端),设置进度条控件的比例
- 新增SetImagePath(客户端),设置图像控件显示的图片路径
- 新增SetUIVisible(客户端),获取或设置UI控件的显示
- 新增GetPlayerFps(客户端),获取玩家当前FPS
1.0.6.2 新增RegisterUI(客户端)注册UI,不要重复注册损耗性能!
修复接口
1.0.6.2 修复BindOnStandOnBlockFunction(服务端),DimensionId参数Key多一个字母1.0.6.2 修复BindStepOnBlockFunction(服务端),DimensionId参数Key多一个字母1.0.6.2 修复CreateUIByEntity(客户端),不适用传统注册模式1.0.6.3 修复GetAndAttackRadiusEntities(服务端),IsAttack为False时仍然造成伤害
调整接口
对旧代码无影响 调整BindOnStandOnBlockFunction(服务端),新增返回函数参数的一个Key:EntityId;不再局限于玩家范围有效,而是实体对旧代码无影响 调整BindStepOnBlockFunction(服务端),新增返回函数参数的一个Key:EntityId;不再局限于玩家范围有效,而是实体1.0.6.4 对旧代码无影响 调整GetEntityChineseName(双端),将自动兼容原版minecraft:zombie字样,无需修改为zombie传入,但依旧兼容直接传入zombie
v1.0.5 Release
主要更新
- 新增了开发指南2篇文章《客户端脚本突破30Tick》、《UI数据绑定》
- 新增了主页处下载自动化
- 新增了开发文档自动化开发、副包开发(DLC)分类
- 优化了使用说明文档
新增接口
- 新增BindGameHighTickFunction(客户端),绑定游戏高Tick函数
- 新增ComputePitchYaw(客户端),根据两个坐标,计算目标坐标相对于主坐标的俯仰角,偏航角
- 新增CameraLookAtTargetRun(客户端),玩家看向目标坐标视角运动器,使用客户端Tick直接调用
- 新增Lerp(客户端),角度形非线性计算
- 新增SLerp(客户端),常规非线性计算
1.0.5.4 新增BindStepOnBlockFunction(服务端),绑定刚刚踩上方块事件函数,触发后会持续Tick执行
修复接口
- 修复BindOnStandOnBlockFunction原版方块需要手动注册
调整接口
对旧代码无影响 调整BindKeyPress(客户端),新增参数FunctionInstance对旧代码无影响 调整BindGamepadKeyPress(客户端),新增参数FunctionInstanc对旧代码无影响 调整BindGamepadTriggerPress(客户端),新增参数FunctionInstance对旧代码有影响 调整BindCustomBlockInteractFunction(客户端),参数Object, FunctionName合并为FunctionInstance对旧代码有影响 调整BindOnStandOnBlockFunction(服务端),参数Object, FunctionName合并为FunctionInstance
资产注册在调试工具内,方便开发者调试
v1.0.4 Release
主要更新
- 新增了Infinite Amethyst的menubgm
- 优化了Mod列表的加载速度
- 调整了提示窗口对键鼠设备兼容
- 新增了开发指南1篇文章《服务端和客户端之间的通信》
次要更新
- 修复了bgbox渲染控制器异常的问题
新增接口
- 新增BindKeyPress(客户端),绑定或取消绑定键盘按键
- 新增BindGamepadTriggerPress(客户端),绑定手柄扳机,右扳机将会屏蔽原版攻击逻辑
- 新增BindGamepadKeyPress(客户端),绑定手柄按键
- 新增GetPlayerCtrl(客户端),获取玩家的操控模式
- 新增ResetAutoCtrl(客户端),重置到自动控制模式
- 新增GetBlockDictByPos(服务端),根据坐标获取方块数据
- 新增CheckAndSetBlockByPos(服务端),根据坐标放置方块,区块未加载则无法放置方块,因此需要使用SetBlockPosList
- 新增SetChestReward(服务端),设置奖励箱内容
- 新增BindCustomBlockInteractFunction(服务端),绑定自定义方块交互事件函数
- 新增GetEntityNameByEntityId(服务端),根据实体id获取实体名称
- 新增BindOnStandOnBlockFunction(服务端),绑定踩上方块事件函数,触发后会持续Tick执行
- 新增LocalConfigData(客户端),存储或获取本地存储数据
v1.0.3 Release
主要更新
- OpenTips(客户端)新增音效
- 补全库更新为自解压exe程序
次要更新
- 修复了单人游戏后,键鼠显示异常的问题
- 修复了切换维度后,仍然出现开始界面的问题
- 修复了文档示例代码中self.LA异常定义的问题
新增接口
- 新增GetIsStart(客户端), 玩家是否处于进入游戏状态(这里指进入灵免以太主界面后是否点击了"单人游戏")
- 新增UseClientApi(服务端), 使用客户端接口,但无法获得返回值
- 新增CloseTips(客户端), 关闭提示窗口
- 新增GetLingmienAetherUIObject(客户端), 获取灵免以太主界面UI实例
- 新增GetUIObject(客户端), 获取UI实例
- 新增SetButtonUpEvent(客户端), 设置按钮弹起回调事件
- 新增SetButtonDownEvent(客户端), 设置按钮按下回调事件
- 新增CloseVisibleAndOpenVisible(客户端), 关闭一个控件显示和显示另一个控件
- 新增ResetAnimation(客户端), 重制UI动画
- 新增GetOneBlockMaxPos(服务端), 根据XZ来获取顶部方块坐标
- 新增CheckChunkAndSummonEntity(服务端), 检测区块是否加载并生成实体
调整接口
对旧代码无影响 调整SummonEntityByName(服务端),新增生成视角参数和维度参数(默认为0,即主世界),返回实体id对旧代码无影响 调整GetRecentlyTargetId(客户端),获取某实体最近的实体Id,现在支持双端
修复接口
- 修复OpenTips(客户端),object异常而导致无法退出提示界面的问题
v1.0.2 Release
主要更新
- 感谢***MieMie***,修复了netease_require.json的问题,并修改了开发指南说明
- 感谢***lonel***,解决了着色器问题
- 新增完整的使用说明文档
- 测试环境现已开放下载
- 新增了开发指南1篇搬运文章(作者:凉寂蜀黍)
- 优化了开发指南文章显示异常的问题
次要更新
- 修复了测试环境翻译文件异常的问题
新增接口
- 新增OpenTips(客户端), 打开提示弹窗
- 新增SetPerspective(客户端), 获取或设置玩家人称视角
- 新增InitLingmienAetherMod(服务端), [必用]注册灵免以太模组信息
- 新增SetImmuneDamage(服务端), 设置实体无敌
调整接口
对旧代码有影响 调整UseServerApi(客户端), 为防作弊,该接口禁止在联机大厅、网络游戏中执行!对旧代码无影响 调整CreateDefaultUI(客户端), 补全说明文档对旧代码无影响 调整CreateUIByEntity(客户端), 补全说明文档
修复接口
- 修复RealPlaySfx(客户端),播放中国版粒子特效异常参数问题,单词拼写错误问题
- 修复PlaySfxToEveryBody(客户端),播放中国版粒子特效异常参数问题,单词拼写错误问题
v1.0.1 Release
主要更新
- 新增了GetLingmienAetherManifest接口,现在可以结合AddObjectFunction在非灵免以太实例中直接继承相关接口功能
- 新增了UseServerApi接口,现在可以很方便的在客户端调用服务端接口,而不是依赖于复杂的通信事件,减少因监听事件较多而导致的卡顿问题
新增接口
- 新增GetLingmienAetherManifest(客户端), 获取灵免以太函数库清单
- 新增UseServerApi(客户端), 使用服务端接口,但无法获得返回值
- 新增ServerMsg(服务端), 发送消息
- 新增PlaySound(服务端), 播放音效(全局)
- 新增PlayUISound(服务端), 播放音效(个人)
- 新增GetAndAttackRadiusEntities(服务端), 获取实体Id周围的实体列表且是否直接执行攻击
- 新增SummonEntityByName(服务端), 根据实体名生成实体
- 新增SetModRenderAttrByKey(服务端), 设置存储于实体数据新的值(仅限于本存档)
- 新增GetModRenderAttrByKey(双端), 获取存储于实体数据的值
- 新增GetEntityPos(双端), 获取实体三维坐标
- 新增GetAttrMaxValue(双端), 获取实体属性最大值
- 新增GetAttrValue(双端), 获取实体属性当前值
- 新增SetAttrValue(服务端), 修改实体属性当前值或最大值
调整接口
对旧代码无影响 调整AddObjectFunction(客户端), 补充了更详细的说明,废弃了3个参数
修复接口
- 修复RealPlaySfx(客户端), 特效异常丢失的问题
- 修复PlaySfxToEveryBody(客户端), 特效异常丢失的问题
v1.0.0 Release
主要更新
- 新增了3.1架构的相关常用接口27个
- 新增了开发指南16篇文章
- 新增了配置组件3篇
- 新增了启动加载界面
- 首个补全库发布
次要更新
- 对接口的分类重新进行了定义
- 对接口的部分描述进行了调整
- 对接口所需的复杂参数提供了样式参考
新增接口
- 新增AddObjectFunction(客户端), 给实例添加函数库
- 新增QueryGet(客户端), 获取自定义Molang函数的值
- 新增QueryMolangGet(客户端), 获取原版Molang函数的值
- 新增QuerySet(客户端), 设置自定义Molang函数的值
- 新增Msg(客户端), 发送消息
- 新增ModelAnimationControllerInit(客户端), 骨骼模型动画控制器系统初始化
- 新增ModelAnimationControllerTick(客户端), 骨骼模型动画控制器逻辑运行
- 新增ModelAnimationControllerTranslateState(客户端), 骨骼模型动画控制器转化新状态并播放动画等
- 新增GetModelAnimationControllerStateDictByStateName(客户端), 获取骨骼模型动画控制器的状态dict
- 新增PlayModelAnimation(客户端), 播放骨骼模型动画
- 新增GetModelAnimationControllerStateTransitionResult(客户端), 获取骨骼模型动画控制器状态转化结果dict
- 新增EvaluateMolangExpression(客户端), 获取骨骼模型动画控制器状态的条件转化结果
- 新增GetRecentlyTargetId(客户端), 获取最近目标实体id
- 新增CreateDefaultUI(客户端), 常规UI注册并创建
- 新增CreateUIByEntity(客户端), 常规实体UI注册并创建
- 新增QueryInit(客户端), 自定义Molang注册并创建
- 新增CameraMotionRun(客户端), 普通视角摇晃运行
- 新增ResetCameraMotion(客户端), 重置镜头跟随
- 新增HighCameraMotionRun(客户端), 高处视角摇晃运行
- 新增GetDeltaCameraMotion(客户端), 获取玩家摄像机运动单位差值
- 新增GetFrictionAllData(客户端), 获取本接口的所有参数
- 新增SetPlayerFriction(客户端), 设置玩家是否有摩擦力
- 新增FrictionMath(客户端), 摩擦力计算
- 新增FrictionPlay(客户端), 在客户端Tick调用,用于实现摩擦力效果
- 新增ResetFriction(客户端), 重置摩擦力
- 新增RealPlaySfx(客户端), 真正的特效播放,不广播则只能自己看到
- 新增PlaySfxToEveryBody(客户端), 播放特效(自动广播)
调整接口
对旧代码无影响 调整RealPlaySfx(客户端), 现在将支持绑定实体,播放预设特效,自动销毁对旧代码有影响 调整PlaySfxToEveryBody(客户端), 将不再支持单一dict类型参数,而是dictlist