通过QyMod构建ModSDK脚本项目
本页讲解如何通过QyMod来构建ModSDK的脚本项目
在使用QingYunModLibs之前,请先从GitHub上下载QingYunModLibs源库,并以如下的格式放在您的Mod脚本文件夹中:
/behavior_pack/ModScripts/QingYunModLibs
modMain.py的准备工作
框架本质是基于ModSDK的基础上进行封装和改动的,因此注册仍需要在modMain做文章,但相对于原版冗杂的步骤,QyMod更加简单便捷
导入必须的依赖库以使用其封装后的注册功能
from QingYunModLibs.ModInit.QingYunMod import *实例化QingYunMod类以注册Mod的各种功能
from QingYunModLibs.ModInit.QingYunMod import *
Mod = QingYunMod() # QingYunMod类是QingYunMod模块里的一个类,用于收集mod的信息并注册到框架系统内使用QingYunMod的类方法注册Mod的所有信息
InitMod
from QingYunModLibs.ModInit.QingYunMod import *
Mod = QingYunMod()
Mod.InitMod("ModScripts") # InitMod方法的参数填入ModName,需要注意的是,这里ModName需要与脚本文件夹对齐,例如"behavior_pack/tutoralScripts"就需要输入"tutoralScripts"DANGER
如果ModName未与脚本文件夹对齐,可能导致Mod注册出错.
ServerInit
from QingYunModLibs.ModInit.QingYunMod import *
Mod = QingYunMod()
Mod.ServerInit("ModServer") # ServerInit方法的参数填入脚本文件的名称,不带后缀".py"INFO
如果你有脚本文件分层放置的需求,则这里填入参数的格式如下
文件目录:"behavior_pack/tutoralScripts/Server/ModServer.py"
Mod.ServerInit("Server.ModServer") # 文件层级之间用"."连接ClientInit
from QingYunModLibs.ModInit.QingYunMod import *
Mod = QingYunMod()
Mod.ClientInit("ModClient") # ClientInit方法的参数填入脚本文件的名称,不带后缀".py"INFO
如果你有脚本文件分层放置的需求,则这里填入参数的格式如下
文件目录:"behavior_pack/tutoralScripts/Client/ModClient.py"
Mod.ClientInit("Server.ModClient") # 文件层级之间用"."连接以上工作在modMain.py中完成
接下来将分别在双端脚本中做准备工作
双端脚本代码的准备工作
由于剔除了原生系统类的框架,因此部分基于类实现的功能由框架单独封装进依赖库,并提供给开发者使用
导入服务端脚本初始化需要的依赖库
from QingYunModLibs.ServerMod import *ServerMod模块中存储了所有服务端功能开发可能用到的服务端ModSDK接口以及框架功能
例如mod.extraApi.serverApi,ServerSystem的基类方法等
导入客户端脚本初始化需要的依赖库
from QingYunModLibs.ClientMod import *ClientMod模块中存储了所有服务端功能开发可能用到的客户端ModSDK接口以及框架功能
例如mod.extraApi.clientApi,ClientSystem的基类方法等
到这里基本上Mod注册环节就已经完成了,您可以打开游戏测试Mod是否注册成功
如果日志出现"Successfully import xxx"的信息则代表您的脚本注册成功了