> GameLib介绍
GameLib属于公众使用类
包括以下功能
系统消息广播、读取服务端基本信息、读取全局变量、克隆一个指定玩家对象、获取一个指定玩家对象、获取一个指定行会对象、获取一个指定城堡对象、行会操作相关功能、地图操作相关功能、副本地图操作相关功能、商人\\NPC操作相关功能
> Gamelib函数
| **GameLib** | |
| --- | --- |
| **名称** | **功能** |
| property ServerName: String | 服务器名称 |
| property ServerID: String | 服务器ID |
| property StartTime: TDateTime | M2启动时间 |
| property Path: String | M2路径 |
| property EnvirPath: String | M2 Envir文件夹路径 |
| property G\[index: Integer \]: Integer | 服务器整型变量(index:1-500) 保存 |
| property A\[index: Integer \]: String | 服务器字符串变量(index:1-500) 保存 |
| property I\[index: Integer \]: Integer | 服务器整型变量(index:1-500) |
| property U\[index: Integer \]: String | 服务器字符串变量(index:1-500) |
| property PlayCount: Integer | 在线玩家总数 |
| property Player\[Index: Integer \]: TPlayObject | 取一个在线玩家 |
| property DBEngine: TDBEngine | 数据库管理对象 |
| property Toptenz: TToptenz | 排行榜 |
| property ClientSpeed: Integer | 客户端速度 |
| property ReloadScriptEngine | 重载脚本引擎 |
| procedure Lock; | 引擎互斥处理 |
| procedure UnLock; | 引擎互斥处理 |
| function TryGetResource(const AName: String ): TStrings ; | 尝试获取一个版本中的资源数据,如果不存在则返回nil,返回的资源不可释放 |
| function Varstring(const AVarName: String ): TVarValue; | 定义或读取服务器变量,该变量从Envir\\Vars\\Server.ini中存取 |
| function Varinteger(const AVarName: String ): TVarValue; | 定义或读取服务器变量,该变量从Envir\\Vars\\Server.ini中存取 |
| function VarDateTime(const AVarName: String ): TVarValue; | 定义或读取服务器变量,该变量从Envir\\Vars\\Server.ini中存取 |
| function VarFloat(const AVarName: String ): TVarValue; | 定义或读取服务器变量,该变量从Envir\\Vars\\Server.ini中存取 |
| function VarBoolean(const AVarName: String ): TVarValue; | 定义或读取服务器变量,该变量从Envir\\Vars\\Server.ini中存取 |
| function FindPlayer(const AName: String ): TPlayObject; | 查找一个玩家对象 |
| function FindPlayerEx(const AAccount, AName: String ): TPlayObject; | 根据账号和角色名查找一个玩家对象 |
| function CreateGuild(const AName, AChief: String ): TGuild; | 创建一个行会(Name为行会名,Chief为创建人) |
| function FindGuild(const sGuildName: string): TGuild; | 查找一个行会 |
| function DeleteGuild(const sGuildName: string): Boolean; | 删除一个行会 |
| function AddGuildWar(const SourceGuild, DestGuild: String ): Boolean; | 添加一个行会战 |
| function FindCastle(const Name: String ): TUserCastle; | 查找城堡,比如Gamelib.FindCastle('沙巴克') |
| Procedure Kick(const APlayName: String ); | 将一个玩家踢下线 |
| Procedure KickAll; | 将全部玩家踢下线 |
| procedure ClearMapMon(const AMapName: String ; ANoDrop: Boolean=True; const AMonName: String =''); | 清除地图怪物,NoDrop指定是否不爆出物品 |
| procedure Broadcast(const Msg: String ); | 广播消息 |
| procedure BroadcastSay(const Msg: String ; FontColor: Byte; Backgound: Byte); | 广播消息 |
| procedure BroadcastTopMessage(const Message: String ); | 广播消息 |
| procedure BroadcastCenterMessage(const Message: String ; DuraTick:Integer = 2000); | 广播消息 |
| procedure BroadcastCountDownMessage(const Message: String ); | 广播消息 |
| procedure StartQuest(const AQManagerMethod: String ); | 开始提问(即在线玩家执行相同的函数,比如弹窗让玩家选择是否传送到某地) |
| function FindStdItem(ItemIndex: Integer ): TStdItem; | 查找物品定义 |
| function FindItemIndex(const Name: String ): Integer ; | 查找物品序号 |
| function FindMap(const AMap: String ): TEnvirnoment; | 查找一个地图 |
| function AddMapRoute(const Flag, Source: String ; SourceX, SourceY: Integer ; const Dest: string; DestX, DestY: Integer ; UsefulLife: Integer =0; Looks: Integer =-1; ShowName: Boolean=False): Boolean; | 增加一个地图入口。Flag为入口唯一标记,Source为入口,Dest为出口。UsefulLife为入口存在时长(秒),Looks为在地图上显示的效果,-1不显示,该效果可从UI特效中加载。ShowName指定是否在客户端显示入口名称(Flag) |
| function DeleteMapRoute(const Name: String ): Boolean; | 删除一个通过AddMapRoute增加的地图入口 |
| function CreateDuplicateMap(const Name: String ; UsefulLife: Integer ): TEnvirnoment; | 创建一个副本地图,Name为副本地图名称,UsefulLife为副本时长(秒) |
| function CloseDuplicateMap(const MapName: String ): Boolean; | 关闭(删除)一个指定名称的副本地图 |
| function AddNpc(const Name: String ; const Map: String ; MapX, MapY, Appr: Integer ; const AUnitName: String =''): TNormNpc; | 增加一个NPC。UnitName为NPC要调用的入口函数所在的单元 |
| function RemoveNpc(const Name: String ; const Map: String ; MapX, MapY: Integer ): Boolean; | 移除一个指定位置的NPC |
| procedure ShowEffect(const Map: String ; const MapX, MapY, Effect, IntervalTime: Integer ); | 在地图上显示一个特效(可从UI特效中加载) |
| procedure RecallMap(const ASourceMap, ADestMap: String ); | 将地图上的玩家全部移到另外一个地图 |
| function MonGen(const Amap, AMonName: String; AMonCount, AMapX, AMapY, ARange: Integer; ACamp: Byte=0; ANation: Byte=0; ATag: Integer = 0; ARevivalEvent: Boolean = 0; ADieEvent: Boolean = 0; AKillerEvent: Boolean = 0; ADamageEvent: Boolean = 0):TActorList | 在指定的地图上刷怪。AMap 所在地图ID;AMonName 怪物名称;AMonCount, 刷怪数量; AMapX, AMapY, ARange 刷怪的坐标X ,坐标Y, 刷怪范围; ACamp 阵营ID;ANation 国家ID; ATag 怪物标记;ARevivalEvent 是否 刷新触发;ADieEvent 是否 死亡触发; AKillerEvent 是否 杀人触发; ADamageEvent 是否 受到伤害触发; |
| function MonGenEX(const AEnvir :TEnvirnoment;const AMonName: String; AMonCount, AMapX, AMapY, ARange: Integer; ACamp: Byte=0; ANation: Byte=0; ATag: Integer = 0; ARevivalEvent: Boolean = 0; ADieEvent: Boolean = 0; AKillerEvent: Boolean = 0; ADamageEvent: Boolean = 0):TActorList | 在指定的地图上刷怪。AEnvir 所在地图对象: TEnvirnoment; AMonName 怪物名称;AMonCount, 刷怪数量; AMapX, AMapY, ARange 刷怪的坐标X ,坐标Y, 刷怪范围;ACamp 阵营ID;ANation 国家ID ;ATag 怪物标记;ARevivalEvent 是否 刷新触发; ADieEvent 是否 死亡触发;AKillerEvent 是否 杀人触发;ADamageEvent 是否 受到伤害触发; |
| function MobPlace(const AMissionMap: String; AMissionX, AMissionY: Integer; const AMonName: String; AX, AY: Integer; ACount: Integer=1; ARange: Integer=0; ACamp: Byte = 0; ANation: Byte = 0; ATag: Integer = 0; ARevivalEvent: Boolean = 0; ADieEvent: Boolean = 0; AKillerEvent: Boolean = 0; ADamageEvent: Boolean = 0):TList | 在指定的地图上刷怪,并且向AMissionX、AMissionY坐标集中,AMissionX刷新后自动前往集中坐标X;AMissionY 刷新后自动前往集中坐标Y;AX,AY 刷新坐标X,Y;其他参数与Mongen一样 |
| function MobPlaceEX(const AEnvir : TEnvirnoment; AMissionX, AMissionY: Integer; const AMonName: String; AX, AY: Integer; ACount: Integer=1; ARange: Integer= 0; ACamp: Byte= 0; ANation: Byte = 0; ATag: Integer = 0; ARevivalEvent: Boolean = 0; ADieEvent: Boolean = 0; AKillerEvent: Boolean = 0; ADamageEvent: Boolean = 0):TList | 在指定的地图上刷怪,AEnvir所在地图对象:TEnvirnoment;并且向AMissionX、AMissionY坐标集中, AMissionX刷新后自动前往集中坐标X;AMissionY刷新后自动前往集中坐标Y;AX, AY 刷新坐标X,Y;其他参数与Mongen一样 |
| function FindNpc(const NpcName: String ): TNormNpc; | 查找NPC |
| function FindMerchant(const MapName, MerchantName: String ): TNormNpc; | 查找一个商人 |
| function FindMerchantByTag(ATag: Integer ): TNormNpc; | 根据唯一ID查找一个商人 |
| procedure SavePlayerToFile(Source: TPlayObject; const AFileName: String ); | 将玩家信息保存到文件 |
| function AddClonePlayer(Source: TPlayObject; const AName: String ; Envir: TEnvirnoment; MapX, MapY: Integer ): TActor; | 克隆一个玩家 |
| function AddClonePlayerFromFile(const AFileName, AName: String ; Envir: TEnvirnoment; MapX, MapY: Integer ): TActor; | 从玩家文件信息中克隆一个玩家 |
| function DelayGoto(ID, AIntervalTime: Integer ; Once: Boolean=False): Boolean; | 给服务器增加一个时钟事件,触发TimeManageNpc中的GlobalEventExecute函数 |
| procedure ClearDelayGoto(ID: Integer ); | 清除一个服务器的时钟 |
| function ThrowItem(const MapName, ItemName: String ; MapX, MapY, Range, Count: Integer ; Owner: TActor): Boolean; | 在地图上爆出指定数量的物品。Owner表示可以拾取物品的角色,默认为nil,即都可拾取 查看范例 |
| function ThrowItemEx(Map: TEnvirnoment;const ItemName: String ; MapX, MapY, Range, Count: Integer ; Owner: TActor): Boolean; | 在地图上爆出指定数量的物品。Owner表示可以拾取物品的角色,默认为nil,即都可拾取 查看范例 |
| function RandomUpgrade(UserItem: TUserItem): Boolean ; | 随机升级物品属性 |
| function RandomUpgradePoint(UserItem: TUserItem): Boolean ; | 随机升级物品附加属性 |
| procedure RandomUpgradeLevel(UserItem: TUserItem); | 随机升级强化等级属性 |
| procedure SendMail(const AFrom, ATo, ASubject, AContent: String ); | 发送一封邮件 |
| procedure AddRobot(ExecTime: TDateTime; const AMethod: String ); | 添加一个指定时间执行的机器人,执行一次后删除 |
| procedure WriteLog(const LogKind: Byte; const Log: String ); | 写入Log(LogKind为自己能识别的值) |
| procedure ReNamePlayer(PlayObject: TPlayObject; const NewName: String ); | 修改人物名称 |
| function GetLastThrowItemList:TList | 用于获取 GameLib.ThrowItem 和 GameLib.ThrowItemEx 丢出在地上的物品对象 |
| function SaveItemToStore(Item: TUserItem; const ChrName: String;EventType:Integer;Param:String=''); | 将物品保存本地物品库,并返回保存后的物品存储序号,EventType 表示物品存储进去的途径 可自定义 |
| function GetStoreItems(const ChrName: String): TStoreItemList; | 根据角色名获取其存储的所有物品 |
| function GetStoreItemsWithType(const ChrName: String;EventType:Integer): TStoreItemList; | 根据角色名和 存储的途径类型 获取角色对应途径的所有物品 |
| function GetStoreItemsOnlyType(EventType:Integer): TStoreItemList; | 根据存储途径类型 获取所有人存储的物品 |
| function CopyUserItem(Item: TUserItem): TUserItem; | 拷贝物品(当从公共物品库取出物品 要添加到背包 或者需要放置到其他位置 需要拷贝一份。否则会内存错乱) |
| function GetItemEventType(const Index: String): Integer; | 根据保存编号 得到其存储数据类型 |
| function DeleteStoreItems(IndexList: TStringList): Integer; | 批量删除存储的物品 。返回删除的数量 |
| function GetGuildCount; Integer; | 获取服务器上总共的行会数量量 |
| function GetGuildByIndex(Index: Integer): Guild; | 获取具体的行会对象 |
| function QueryPerformanceFrequency:int64; | 获取CPU每秒震荡次数 |
| function QueryPerformanceCounter:int64; | 获取获取当前震荡总数(两次震荡总数相减,就是两次间隔的CPU震荡次数) 用于获取超高精度的时间计算。可用于精确到纳秒的计时器 可以用于脚本中做性能测试分析。 |
| procedure AsyncHttpPostJson(Ident:String;URL:String;Json:String;TimeOut:Cardinal = 5000); | 用于支持http提交json功能。 参数说明: ident:请求标志 自定义数据 这个当httpost 完成或者错误的时候 此数据会原封不动传递到下文的OnAsyncHttpPostResult 中 URL:远程服务器URL Json : 要提交的json字符串内容。 TimeOut: 超时时间 单位秒。 |
| Procedure AsyncHttpGet(Ident:String;URL:String;TimeOut:Cardinal = 5000); | 用于支持httpget功能 参数说明: ident:请求标志 自定义数据 这个当httpost 完成或者错误的时候 此数据会原封不动传递到下文的OnAsyncHttpGetResult 中 URL:远程服务器URL TimeOut: 超时时间 单位秒。 |
| procedure RandomRange(const Min,Max:Int64):Int64; | 用于获取一个指定范围内的随机数 和random()不一样是 random 返回的是 integer类型 这个返回的是int64。 例: A := GameLib.RandomRange(1000000000000,200000000000); 意思就是从 随机 从 1000000000000 - 200000000000中间取一个数 包含 1000000000000,200000000000 |
| procedure GetIPLocal(const IP:String):String; | 用于查询IP地址信息 |
| function AddMonNpc(const MonName: UnicodeString; const NpcName: UnicodeString; const MapName: UnicodeString; MapX, MapY: Integer; const AUnitName: String; Camp, Nation: Byte; AttackDiffCamp, AttackDiffNation, AttackRed, AttackMon: Boolean): TActor; | 添加一个怪物NPC (MonName: 怪物名称;NpcName: NPC名称;MapName: 目标地图名称;MapX, MapY: 刷新位置;AUnitName: 和怪物NPC关联的脚本单元名;Camp: 阵营;Nation: 国别;AttackDiffCamp: 是否攻击不同阵营对象;AttackDiffNation: 是否攻击不同国别对象;AttackRed: 是否攻击红名;AttackMon: 是否攻击怪物) |
| function RemoveMonNpc(const NpcName: UnicodeString; const MapName: UnicodeString; MapX, MapY: Integer): Boolean; | 删除一个怪物NPC(NpcName: NPC名称;MapName: 目标地图名称;MapX, MapY: 刷新位置) |
| function AddMonNpcEX(const MonName: UnicodeString; const NpcName: UnicodeString;map:TEnvirnoment; MapX, MapY: Integer; const AUnitName: String; Camp, Nation: Byte; AttackDiffCamp, AttackDiffNation, AttackRed, AttackMon: Boolean): TActor; | 添加一个怪物NPC(同addmonnpc,区别在于mapname改为地图对象map) |
| function RemoveMonNpEX(const NpcName: UnicodeString; map:TEnvirnoment; MapX, MapY: Integer): Boolean; | 删除一个怪物NPC(RemoveMonNp,区别在于mapname改为地图对象map) |
| function GameLib.SaveUserItemToString(UserItem:TUserItem):String; | 将一个物品对象转化为字符串 |
| function GameLib.LoadUserItemFromString(Str:String):TUserItem; | 将一个字符串转化为物品对象 |
- 更新日志
- 2021年更新日志
- 2020年更新日志
- 2019年更新日志
- 2017年更新日志
- 2016年更新日志
- 2015年更新日志
- 2014年更新日志
- 2013年更新日志
- 游戏对象
- GameLib
- TActor
- TActorList
- TAddedAbility
- TAddLevelItem
- TAddPointItem
- TArgs
- TAttatckMode
- TDBEngine
- TEnvirnoment
- TFunctionFlag
- TGuild
- TItemState
- TItemWhere
- TMissionItem
- TMissionLinkItem
- TMissions
- TNormNpc
- TPlayMonster
- TPlayMonsterNPC
- TPlayObject
- TStdItem
- TStoreItemList
- TToptenz
- TUserCastle
- TUserItem
- TUserMagic
- TVarValue
- Tbuff
- TBuffCategory
- TBuffAbilityType
- TBuffStatusType
- TBuffIntervalType
- 固定NPC
- AINpc
- ExternalNPC
- MagicNpc
- ManagerNPC
- MapEventNPC
- MissionsNpc
- QFunctionNPC
- RobotManagerNPC
- TimeManagerNPC
- 自定义功能
- 自定义客户端UI
- Buffer效果自定义设计
- UI管理界面预览
- 如何实现物品放入或取下时的函数触发
- 自定义窗口
- 自定义界面中编辑框参数发送方式
- 自定义客户端装备提示效果
- 自定义特效
- 自定义装备提示样式
- Buff系统说明
- 自定义技能编辑器
- 技能扩展自定义
- 自定义技能初识
- 被动技能属性定义
- 技能模式定义
- 客户端效果定义
- 主动技能动作定义
- 新自定义技能编辑器
- 初始编辑器
- 自定义编辑器使用说明
- 如何实现自定义怪物
- 脚本实例
- NPC对话编辑
- 宝宝叛变的启动和停止
- 创建脚本单元
- 创建一个藏匿于地图上的攻击事件
- 地图传送
- 获取服务器名称
- 获取玩家任务信息
- 检测是否为沙城成员
- 角色称号、头顶花翎、头顶特效设置
- 判断PK值
- 判断队伍信息
- 判断角色对面是一个什么对象
- 判断角色金币、元宝及礼金等数量
- 判断角色所在的地图信息
- 判断角色性别
- 判断角色职业
- 判断两个角色之间的距离
- 判断是否为队长
- 判断是否为行会掌门
- 判断是否为沙巴克城主
- 判断有某一物品的数量
- 判断转生等级及等级
- 让目标移动到指定的坐标
- 让玩家回城
- 如何播放一个声音文件
- 如何操作Check状态检查
- 如何操作数据库
- 如何查看玩家IP来源
- 如何查看装备是否可被穿戴或取下
- 如何查找一个行会
- 如何充值角色的属性点
- 如何初始化全局变量
- 如何穿戴或取下一件装备
- 如何创建一个副本地图
- 如何创建一个行会
- 如何打开一个宝箱
- 如何打开指定的URL
- 如何弹出对话框让玩家选择执行
- 如何读写个人变量、行会变量及全局变量
- 如何读写文本文件
- 如何发送各种文字信息
- 如何访问其他角色
- 如何复活
- 如何给客户端发送一个标题栏闪动
- 如何给玩家发放物品
- 如何更新自定义窗口上的内容
- 如何关闭进度条
- 如何关闭一个打开的自定义窗口
- 如何过滤字符串中的文字
- 如何获得地图上全部玩家的信息
- 如何获得地图上指定范围内的怪物数量
- 如何获取丢在地上物品对象
- 如何获取角色当前使用的称号
- 如何获取角色负重
- 如何获取角色在线时长
- 如何获取排行榜信息
- 如何获取人物当前获得的称号信息
- 如何获取坐标上指定范围内的全部怪物
- 如何加入或离开队伍
- 如何加入一个指定的行会
- 如何加载和保存自定义的配置文件(INI文件读写
- 如何监控攻击模式的更改
- 如何监控玩家扔物品
- 如何检查目标是否处于某种状态
- 如何将NPC设置为当前玩家的雕像
- 如何将地图上的角色全部随机传送到另外一个地图上
- 如何将指定玩家传送到身边
- 如何将装备显示在NPC对话框上
- 如何脚本封速
- 如何脚本刷怪
- 如何脚本增加和删除一个NPC
- 如何脚本增加和删除一个怪物NPC
- 如何禁止玩家聊天
- 如何开启及停止自动增加经验值
- 如何克隆玩家为人形怪
- 如何判断当前等级的经验值上限
- 如何判断队伍中是否为不同职业的角色
- 如何判断角色是否为新人
- 如何判断玩家曾经是否接过某任务
- 如何清除地图上的怪物
- 如何请求一个URL
- 如何取得地图上的怪物数量
- 如何取得行会全部称号及全部成员信息
- 如何取得全部在线用户信息
- 如何取得玩当前机器的机器码
- 如何取得物品的数据库单价和销售价格
- 如何取得邮件的数量信息
- 如何取得自定义界面里面玩家放入的物品信息
- 如何让打开客户端的背包、商城及市场
- 如何让他人执行指定的脚本
- 如何删除或修改行会称号
- 如何删除玩家的物品
- 如何删除一个称号
- 如何删除一个副本地图
- 如何删除一个扩展按钮
- 如何删除一个延时调用函数
- 如何设置当前称号
- 如何设置角色死亡不爆出
- 如何实现充值平台对接
- 如何实现骰子
- 如何实现无敌隐身
- 如何实现物品属性转移(物品复制)
- 如何实现一个带参数的输入框
- 如何实现一个机器人
- 如何实现自定义装备爆出提示
- 如何使用JSON对象
- 如何使用角色S、P及N变量
- 如何使用静态数组和动态数组
- 如何使用升级加属性点
- 如何收取城堡金币
- 如何随机刷新物品属性
- 如何踢出在线人物
- 如何添加一个称号
- 如何调整角色的HP、MP值
- 如何调整角色声望值
- 如何调整人物攻击模式
- 如何调整人物转生等级
- 如何调整限时杀怪经验倍率
- 如何调整装备属性上限
- 如何完全控制他人
- 如何显示一个进度条
- 如何修改怪物名称
- 如何修改行会帮主
- 如何修改人物技能属性
- 如何修改一个物品的属性
- 如何延时调用一个函数
- 如何以爆物的方式将一个怪物的爆率给玩家
- 如何用脚本存取物品
- 如何在地图上爆出一个指定的物品
- 如何在行会指定的称号里面添加成员
- 如何在脚本中引用外部DLL
- 如何在客户端显示一个特效
- 如何增加和移除一个个人时钟事件
- 如何增加或减少角色经验值
- 如何增加一个地图连接点
- 如何增加一个行会的称号
- 如何增加一个扩展按钮
- 如何召唤下属
- 如何指定删除角色身上的装备
- 如何重新计算排行榜
- 如何转职
- 如何自动增加或减少元宝
- 如何做一个感叹号提示
- 实现自定义的客户端命令集
- 推开指定的目标
- 修改怪物的爆率为一个指定的爆率文件
- 循环自身全部技能
- 如何设置装备掉落触发脚本处理
- 如何设置装备掉落提示
- 给玩家添加一个未接任务
- 给玩家添加一个已接任务
- 补丁规则
- NPC补丁设置
- Prguse.data文件编辑的注意事项
- 引擎补丁规则
- 地图补丁规则
- 盾牌补丁
- 怪物补丁设置
- 头发补丁设置
- 武器及衣服补丁设置方法
- 坐骑补丁设置
- 操作相关
- 数据库设置
- 版本数据库管理
- 锄头设置方法
- 攻速及幸运设置
- 技能特殊设置
- 扩展数据管理
- 魔法数据设置要点
- 人形怪穿戴及技能设置
- 人形怪攻击速度设置
- 人形怪数据库设置
- 如何配置宝箱及钥匙
- 如何设置解包物品
- 如何设置一个固定位置的传送道具
- 设计采集类怪物
- 设置自定义物品种类名称
- 数据库报错问题
- 特殊物品属性设置说明
- 添加宝石物品
- 添加可穿戴宝石、气血石及魔血石物品
- 物品数据库设置说明
- 游戏数据库的导入导出
- 服务端操作
- [M2]开启物品属性下限功能
- 摆摊相关
- 备份与恢复
- 防外挂设置
- 服务端部署
- 合区
- 角色成长属性调整
- 配置排行榜系统
- 如何查看M2Server所在机器的机器码
- 如何实现多机负载
- 网关防攻击配置
- 游戏网关性能设置
- 任务系统
- 脚本混编说明
- Call命令说明
- 参数Args的读取
- 存在的意义
- 让他人执行脚本
- 如何定义常量
- 如何读写变量
- 如何实现混编
- 特殊标志段说明
- 特殊的CHECK和SET
- 调整杀怪倍率
- 支持编译时错误提示
- 地图配置
- 地图NPC配置
- 地图安全区编辑
- 地图创建及属性说明
- 地图杀怪任务触发
- 地图事件编辑
- 地图刷怪配置
- 地图挖矿设置
- 附属地图配置
- 关联到盛大新格式地图
- 检查地图文件使用情况
- 卫士配置
- 登陆器操作
- 登陆器自我更新
- 登录器界面组件介绍
- 登录器设计界面初识
- 管理登陆器列表
- 将登陆器列表部署到服务器
- 客户端控制
- 客户端样式选择
- 列表设计界面初识
- 如何创建登陆器皮肤
- 如何生成登陆器文件
- 玩家登陆器选项
- 微端控制
- 版本管理器
- NPC对话内容编辑
- 版本文件二次注册使用方法
- 查看程序是否更新
- 创建新的版本文件
- 单个脚本加密方法
- 额外数据库信息配置
- 给版本设置一个唯一ID
- 怪物爆率配置
- 将版本运行所需的配置文件植入版本文件中
- 角色登陆提示信息
- 脚本分类说明
- 脚本机器人配置
- 配置宝箱
- 配置怪物说话
- 如何开启技能自动追踪目标的功能
- 如何实现登陆器图标及客户端Logo的替换
- 如何下载最新版本
- 商城(元宝、礼金)管理
- 商贩贩卖物品配置
- 设置版本工具环境变量
- 套装配置
- 添加一个盾牌物品
- 系统提示信息配置
- 一键导入其他引擎的版本
- 远程管理
- 资源数据管理
- 如何添加一个任务模板中的任务
- 其他辅助说明
- [重要]脚本编写注意项
- 256颜色值
- IP库
- Mir200_Envir下的列表文件详解
- 各种时间控制方法
- 怪物DB数据
- 怪物Race设置
- 键盘码对应数值表
- 脚本系统与系统安全说明
- Pascal基础说明
- Pascal变量类型
- Pascal数据类型
- 基础函数及单元
- 客户端标签变量
- 疑问/建议/反馈/留言
- 在线教程
- 引擎下载