bluem2引擎登录器官网 > 传奇学院 > 常见问题 > BLUE引擎远程脚本插件使用说明案例

BLUE引擎远程脚本插件使用说明案例

添加远程脚本功能
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1) 引擎成功加载RemoteScript.dll,可以使用远程脚本功能,(将RemoteScript.dll放置于MIR200下和M2放置在一起即可)
RemoteScript.ini添加用户名参数UserName,配合用户访问控制,格式:
      Host=127.0.0.1
      Port=8800
      # 默认用户名default,拥有最大权限,示意请设置比较复杂的密码
      UserName=default
      # 默认密码bluem2
      Password=bluem2
      # 远程读取的版本
      ServerVersion=热血传奇_V1.0
   要加载远程NPC脚本:勾选 引擎主菜单-管理-使用远程脚本,勾选后,重新加载NPC或开启引擎会加载远程服务器的NPC脚本数据
   最好要保证远程脚本服务器能和引擎服务器通讯够顺畅,否则远程加载NPC脚本速度会变慢。
   启用远程加载脚本后,本地脚本文件的内容可以清空
 
2) 远程脚本服务器参见附件:RemoteScriptServer.7z
   修改参数文件config.conf,以达到自己的要求,主要修改其中的端口和连接密码,参考压缩包中的“说明.txt”
   修改完,运行:启动.bat 即可
 
3) 引擎成功加载RemoteScript.dll,适当修改脚本之后,可以点击 引擎主菜单-管理-上传脚本数据,
   可以使用专门的测试服务器修改、上传脚本,其他连接同一远程脚本服务器的引擎,只需要重新加载所有NPC即是最新状态。
 
4) 涉及文件在压缩包目录:通用-远程NPC脚本 中,注意连接设置正确性,否则将导致引擎卡顿
 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
查询当前标题下的脚本内容和数量
 
进入插件目录 shift+鼠标右键 选在此处打开命令窗口
首先输入:
client --raw -h 127.0.0.1 -p 8800 --user default --pass bluem2 // 注意地址、端口、用户名和密码是否对应
 
输入(blue脚本是RemoteScript.ini里的ServerVersion标题)可查看上传数量
hlen blue脚本
 
输入(blue脚本是RemoteScript.ini里的ServerVersion标题)可查看上传的具体内容
hkeys blue脚本
 
 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2021/1/10
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
上传远程脚本时,需要验证密码,避免捣乱,此功能需要一个正确的授权码,需要请联系工作人员免费获取(提供M2的机器码、和自己随便自定义一个密码.作为上传密码)
 
上传授权码写在!setup.txt文件server字段下,格式如下:
[server]
UploadAuthCode=383132593b40b2f582d3738ff4c375e9af9e121ffd131b84fbc73e192478366e
 
 
2021/1/13
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
添加脚本上传过滤列表RemoteScriptFilters.txt,修改此文本后重新加载所有NPC即可,用法:在RemoteScript.ini中的
      BlacklistMode=true // 黑名单模式(默认) 列表中的NPC将使用【本地】方式加载,非列表中的NPC使用【远程】方式加载。
      BlacklistMode=false // 白名单模式 列表中的NPC将使用【远程】方式加载,非列表中的NPC使用【本地】方式加载。
      列表条目的格式:NPC基本目录_NPC名称-地图号,默认会生成几个例子,请打开列表参考。
 
 
RemoteScriptFilters.txt内容如下:
#RemoteScript.ini中的BlacklistMode=true时,黑名单模式(默认),列表中的NPC将使用【本地】方式加载,非列表中的NPC使用【远程】方式加载。
#RemoteScript.ini中的BlacklistMode=false时,白名单模式,列表中的NPC将使用【远程】方式加载,非列表中的NPC使用【本地】方式加载,例如:
#Market_Def_QFunction-0
#Market_Def_QMapEvent-0
#Market_Def_QChatMission-0
#Robot_def_RobotManage-0
#Market_Def_卧龙山庄_红色卧龙古书-HERO1
 
 

1、参数设置文件为目录下的config.conf,其中主要要修改的参数有:
   修改服务端口:port,默认8800
   默认用户名称:default,此用户设计版本用,拥有最高权限,建议设置较为复杂的密码(可以是某字符串的MD5值),防止爆破,其他授权访问用户详见第6条
   默认用户密码:requirepass 你的密码,默认bluem2,如果你修改了连接密码,记得同时也修改“关闭.bat”中的对应密码
 
2、修改完参数后双击:启动.bat,开启服务器
 
3、关闭服务器运行:关闭.bat,即可
 
4、data.db是数据库文件,NPC脚本数据会保存在该文件中
 
5、可以结合防火墙或者策略以限制连接的IP地址
 
6、用户访问控制列表,在文件users.conf中配置,其中
   1) 默认条目:user default on #a088ce60472df0748370aeb1895a97f23190602629e5c54ce41863ec4d9cfe9f ~* +@all
      解释
      default 默认用户名
      on/off 表示此用户启用或禁用
      #... 密码的SHA256字符串,可以通过在线网站计算出来,比如:https://coding.tools/tw/sha256
      ~* 表示可以访问的Key(正则匹配),即是某某版本,~*表示所有
      +@all 表示用户的权限,“+”表示授权权限,有权限操作或访问,“-”表示还是没有权限; 
      @为权限分类,可以通过ACL CAT命令查询支持的分类。
      +@all 表示所有权限,nocommands 表示不给与任何命令的操作权限
 
   2) 添加新用户授权,编辑users.conf,比如内容为:
      user 新用户 on #9c614fccd8fc1db8e3240f7d2a4596323d35ea0a0542a25c6305e0cd72c4e7ad ~某版本_V01 -@all +@read
      解释
      #xxxxxxxx 密码是通过在线网站 https://coding.tools/tw/sha256 计算字符串“新用户的密码”得到的SHA256字符串
      ~某版本_V01 表示此用户可以访问“某版本_V01”这个版本的远程NPC数据,~为标识符,不包含在版本名称内
      -@all +@read 表示只读
 
      编辑完成后,登录服务器,重新加载users.conf,步骤为:
      打开CMD,cd到本目录下,运行client --raw -h 127.0.0.1 -p 8800 --user default --pass bluem2 // 注意地址、端口、用户名和密码是否对应
      成功登录服务器,运行 acl load 命令对users.conf重新加载(确保users.conf格式的正确性)
      运行 acl list 可以查看当前用户访问控制列表的详细信息。
BLUE引擎远程脚本插件使用说明案例