奇迹MU服务端IGC架设流程

您所在的位置:网站首页 奇迹mu服务端设置 奇迹MU服务端IGC架设流程

奇迹MU服务端IGC架设流程

2024-07-10 12:24| 来源: 网络整理| 查看: 265

奇迹MU服务端IGC架设流程

大家好我是艾西,今天跟大家简单聊下奇迹IGC服务端。IGC端是国外的东西全英文大家感兴趣的话也可以自己研究研究,整体的东西还是非常完整。扩展以及端的稳定性还是非常不错的就是有点费脑子........(此教程为个人娱乐搭建测试)

对于很多奇迹老玩家来说,从开始玩奇迹到现在应该都有十年以上,十年,太多的人、太多的事变化了,快到找不到影子,但值得庆幸的是,依然有那么一些人和事,留在我们心中不变,奇迹就是这其中一个。今天各种游戏纷至沓来、各种抢眼,但奇迹依然是我们最爱的网络游戏之一,再过10年是否还有它一席之地,没有人知道,但此刻,你和我心意相通!愿每一个奇迹爱好者明天更好、万事胜意!

学新通

准备:服务端、服务器、一台有网的电脑

以s12为例子,奇迹端对外开放的对服务器还是有一定的要求。游戏类的追求稳定以及安全,所有的程序以及软件都是搭建在服务器里的,服务器配置够性能强防护高才能给玩家带来更好的体验!

服务器操作系统要求:win 2008 64位系统

在搭建奇迹的服务端时,经常有朋友遇到数据库不会还原的问题,今天有时间就分享一下还原数据库的具体操作方法。

本教程使用绿色版sql2008自带的还原工具,其他的数据库管理工具的还原方法基本上是大同小异。大家实际操作完之后自己也可以多试试

数据库的还原方式:

第一种:备份文件是.bak时的还原方法,这种备份文件的得来,是采用了一般的备份方式得来的如:MuOnline这个数据库的bak备份文件,一般叫MuOnline.bak

具体还原步骤:

1、建立一个数据库,记下这个数据库储存的路径:D:\Tools\GSQL2008R2\userdata\MuOnline.mdf

这个工具要记,其他的工具可能不需要记

2、导入备份文件进行数据库还原:

碰到导入不进来的情况,提示“无法处理的介质”之类的,是因为这个备份文件,原来使用的数据库版本较高,比我们现在使用的sql2008版本要高,所以无法导入进来,这种情况是没办法处理的,要不就换备份文件,要不就是装高版本的数据库.

我们采用换备份文件的方法创建一个新路径,与我们建数据库时的路径不一样再次导入试试

第二种:备份文件是.sql时的还原方法,这种备份文件得是备份时采用了导出sql数据方式备份的

如:MuOnline这个数据库的sql备份文件,一般叫MuOnline.sql

我们先把这个数据库删了,使用sql方式,还原一次

还原的步骤也是:

1、建立数据库

2、导入sql文件

导入sql备份文件,要用到sql查询工具,sql查询里选择我们刚才建的数据库MuOnline

打开sql文件,执行sql语句,数据比较多,执行会有点久

执行完了那么就OK了

第三种:备份文件是.mdf,一般还会同时带对应的log文件,log文件是同名但以_log.ldf为结尾,这种备份文件的得是直接复制数据库的数据文件得来的

(注:log文件,是数据库的日志,还原时可以不用log文件的,不用的话系统会自动生成一个新的log文件)

如:MuOnline这个数据库,对应的备份文件是MuOnline.mdf和MuOnline_log.ldf

先把原来的删掉还原步骤:把数据库备份文件,复制到你的数据库放数据文件的目录下,sql2008他是把数据文件放在 D:\Tools\GSQL2008R2\userdata\ 这个目录下的。附加数据库,到上面那个目录选择备份文件,填写数据库名,可以按默认的名字

这样就又还原成功了

(这个是题外话,下面正式进入我们今天的主题)

学新通

开始架设:

服务器win 2008系统

数据库MySql server 2008

这个端要恢复的数据库有四个,分别如下:

MuOnline

Ranking

BattleCore

Events

请对应备份文件一个一个地进行恢复。

2. 修改几个文件,主要是设置对应的IP和数据库方面的,最终打通服务端和客户端的联系

2.1 服务端要修改的文件

(1) 修改文件: 1._DataServer\DataServer.ini下面是这个文件要修改的地方,对应注释修改,没列出的选项请保持默认

//你的服务器IP,本次搭建用的103.219.xxx.xxx

WanIP = 103.219.xxx.xxx

// -------------------------------------------

// -- DATABASE & Access SETUP

//数据库设置

// -------------------------------------------

MuOnlineDB = MuOnline

MeMuOnlineDB = MuOnline

EventDB = Events

RankingDB = Ranking

//记得修改这两项,数据库用户名和密码

User = sa

Pass = 123456(可按自己喜欢的设置)

// --------------------------------------------------------------------------

// --数据库服务器IP或者名字或计算机名

// --默认实例用(local),不行换127.0.0.1 试试

// --------------------------------------------------------------------------

SQLServerName = (local)

(2) 修改文件: 2._DataServer_BattleCore\DataServer.ini下面是这个文件要修改的地方,对应注释修改,没列出的选项请保持默认

//你的服务器IP,本次搭建用的103.219.xxx.xxx

WanIP = 103.219.xxx.xxx

// -------------------------------------------

// -- DATABASE & Access SETUP

//数据库设置

// -------------------------------------------

MuOnlineDB = BattleCore

MeMuOnlineDB = MuOnline

EventDB = BattleCore

RankingDB = BattleCore

//记得修改这两项,数据库用户名和密码

User = sa

Pass = 123456

// --------------------------------------------------------------------------

// --数据库服务器的ip或者名字或计算机名

// --默认实例用(local),不行换127.0.0.1 试试

// --------------------------------------------------------------------------

SQLServerName = (local)

(3) 修改文件: 3._ConnectServer\IGC_ServerList.xml下面是这个文件要修改的地方,对应注释修改,没列出的选项请保持默认

(4) 修改文件: IGCData\IGC_MapServerInfo.xml下面是这个文件要修改的地方,对应注释修改,没列出的选项请保持默认

2.2 修改客户端提供了生成ServerInfo.bmd的工具,按下面操作就行了(1)编辑文件:zTools\Client.Editor\ServerInfo.xml按下面注释编辑这个文件,没列出的选项请保持默认

(2)打开:zTools\Client.Editor\ServerInfo.exe点击:Encode

(3)把生成的文件:zTools\Client.Editor\ServerInfo.bmd复制到你的客户端:Data\Local\ 目录下覆盖原来的

3. 启动服务端

做好上面的修改,就可以启动服务端了。第一次启动,最好一个个手动启动,这样如果有错误可以方便察看提示信息。里面带有一个一键启动工具:_ServerStartUp.exe,以后可以使用它一键启动,编辑:ServerStartUp\ServerStartUp.xml,就可以定义启动的项目

学新通

4. 客户端登陆

这个端有内置的账号:admin 密码:admin

可以用来测试登陆

5. GM工具

提供了一个英文的GM工具:IGC.EssentialTool,可以用来建立账号、封号、发装备等开始使用前要设置一下GM工具的数据库连接配置,编辑:zTools\IGC.EssentialTool\config.ini,主要是下面几项要修改

Username = sa ; 数据库用户名

Password = 123456 ; 数据库密码

Address = 127.0.0.1 ; 数据库服务器地址

Port = 1433 ; 数据库端口

搭建游戏后的修改以及设置(大家这里参考下即可更多的详情大家自己研究研究)

IGCData下所有配置文件功能说明

[D]Bots_机器人[D]CashShop_X商店[D]ChaosCards_宝箱配置[D]Custom_自定义配置[D]Events_事件控制[D]ItemBags_掉落设置(事件、boss等)[D]Items_物品装备[D]Langs_语言讯息[D]MapTerrains_地图地形[D]Monsters_怪物属性刷新[D]MuunSystem_宠物系统[D]PentagramSystem_元素卷轴系统[D]Plugins_插件[D]Scripts_脚本[D]Shops_NPC商店[D]Skills_技能[D]SocketSystem_镶嵌系统[D]Warps_移动CheckSum.datIGC_AddMonsterStats_新增怪物属性.xmlIGC_AntiHack_反黑客系统.iniIGC_AntiHack_VIEJO_旧版反黑客系统.iniIGC_AppointItemDrop_指定物品爆率.xmlIGC_BattleCore_强者之战配置.iniIGC_BonusMapData_扩展地图配置.iniIGC_BotList_假人BUFF系统.xmlIGC_BuffEffectManager_BUFF特效设置.xmlIGC_CalcCharacter_角色数据配置.iniIGC_CashShop_X商店.iniIGC_ChaosBox_玛雅合成.iniIGC_ClassQuest_转职任务所需物品.xmlIGC_Common_服务器配置.iniIGC_CommonServer.cfgIGC_Commands_游戏命令设置.iniIGC_DropManager_自定义物品掉落设置.xmlIGC_EvolutionMonster.xmlIGC_ExpSystem_经验系统配置.xmlIGC_FormulaData.xmlGC_GeneralDrop_一般物品掉落.xmlIGC_GensSystem_家族系统.xmlIGC_HarmonySystem_提炼系统.iniIGC_ItemOptionRate.txtIGC_ItemUpgradeJewel_物品升级宝石设置.xmlIGC_ItemValue_物品价格.iniIGC_LangBase_基本语言信息.xmlIGC_MapAttribute_地图属性.xmlIGC_MapList_地图列表.xmlIGC_MapNonPK_不能PK的地图.xmlIGC_MapServerInfo_服务器线路对应地图设置.xmlIGC_MarriageSystem_结婚系统.xmlIGC_MasterSkillTree_大师技能树.xmlIGC_MiniMap_Tab小地图.xmlIGC_MiningSystem_潘多拉挖kuang系统.xmlIGC_MonsterGroupRegen_美社莎怪物刷新.xmlIGC_MonsterItemDropRate_怪物掉落设置.xmlIGC_MonsterKillCount_怪物击杀配置.xmlIGC_MuHelper_内置助手设置.iniIGC_MuRummy_卡牌游戏活动.iniIGC_NewsSystem_新闻公告.xmlIGC_OffTrade_离线交易.xmlIGC_PartyBonus_角色赏金.xmlIGC_PetSettings_宠物配置.iniIGC_PlayerInfo_角色升级配置.xmlIGC_PlayerKillSystem_红名系统.xmlIGC_PriceSettings_NPC商店价格.iniIGC_ProhibitedSymbols_过滤系统配置.xmlIGC_ProhibitedWords_禁止输入的文字.xmlIGC_PVPZone_PVP地图设置.xmlIGC_ResetCommand_转生命令.iniIGC_RuudShop.xmlIGC_SetItemDropManager.xmlIGC_ShieldGageSystem.iniIGC_ShopList_商店NPC相关.xmlIGC_StatSpecialize_各职业特殊能力设置.xmlIGC_ZenDrop_金币掉落.xml

学新通

NPC(包括怪物)的属性、刷新时间、出现地图位置等信息的定义与修改

除玩家外,其他所有有生命的物体都是NPC,包括商店NPC、一般的NPC和怪物NPC,还有一些特殊的NPC

NPC属性的定义

在文件:zMu902\IGCData\Monsters\IGC_MonsterList.xml此文件对每个NPC的属性作了定义,如果你要修改某个怪物的血量、刷新时间等属性时,只要找到对应的怪物进行对应的修改就可以

NPC在地图中位置的定义和修改

1. 商店NPC控制商店NPC所处地图位置的文件是:zMuServer\IGCData\IGC_ShopList.xml

NPCIndex:NPC编号

MapNumber:地图编号

PosX:X轴坐标

PosY:Y轴坐标

Dir:NPC朝向

0:中心

1:西南

2:南方

3:东南

4:东方

5:东北

6:北方

7:西北

8:西部

-1:随机

VipType: Minimum VIP Level to use the shop

// ~ 0: Free and any VIP Type

// ~ 1: Player with Bronze, Silver, Gold, Platinum VIP can use the shop

// ~ 2: Silver, Gold, Platinum

// ~ 3: Gold, Platinum

// ~ 4: Platinum only

// Or other defined VIP Type according to IGC_VipSettings.xml

GMShop:是否是只有GM才能访问, 0/1

FileName:对应的商店物品定义文件,在IGCData\Shops\文件夹下

MossMerchant: defines a Moss Merchant Lottery Shop, only for NPC 492, should always be 1

BattleCore: Defines a shop located on Battle Core server, if so set to 1

-->

2. 怪物NPC和一般NPC

普通线路怪物排位:zMuServer\IGCData\Monsters\IGC_MonsterSpawn.xml

事件怪物排位:vzMuServer\IGCData\Monsters\IGC_MonsterSpawn_Event.xml

攻城线路怪物排位:zMuServer\IGCData\Monsters\IGC_MonsterSpawnCS.xml

其定义的格式如下:

学新通

NPC商店物品的修改和NPC商店编号的查询

奇迹NPC商店物品的修改,各个版本虽然大同小异,但是还是有很多细节不同,同样奇迹s12的NPC商店有他独特的定义,本文会详细介绍手动修改s12 NPC商店,修改时最好不要用win系统自带的记事本,使用Editplus、Notepad 等更专业的文本编辑器会更好更方便。

一、商店文件路径:

奇迹s12的NPC商店文件位于 zMuServer\IGCData\Shops目录下,这里面有很多以.xml为后缀的商店文件,我们可以用文本编辑器打开,每一个文件名对应一个NPC商店。

二、文件对应NPC商店名称与编号(NPC的编号,用于地图调用NPC使用):

文件名以"NPC(编号)_商店英文名称.xml"的形式命名注:后面给出的坐标是参考别人教程给出的有可能不对

文件名 中文名称(地图 坐标)

----------------------------------------------------------------------------------------

NPC(230)_Wandering_Merchant_Alex.xml 流浪商人阿莱斯(勇者大陆)

NPC(231)_Thompson_Kenel.xml

NPC(239)_Arena_Guard.xml 竞技场守卫(竞技场)

NPC(242)_Elf_Lala.xml 精灵安吉拉(仙踪林)

NPC(243)_Eo_the_Craftsman.xml 工匠尤达(仙踪林)

NPC(244)_Caren_the_Barmaid.xml 老板娘莉娜(冰风谷)

NPC(245)_Wizard_Izabel.xml 魔导士露西(冰风谷)

NPC(246)_Weapons_Merchant_Zienna.xml 武器商人苏菲(冰风谷)

NPC(248)_Wandering_Merchant_Martin.xml 流浪商人马丁(狼魂要塞)

NPC(250)_Wandering_Merchant.xml 流浪商人海罗德(勇者大陆183.136)

NPC(251)_Hanzo_the_Blacksmith.xml 铁匠汉斯(勇者大陆116,142)

NPC(253)_Potion_Girl_Amy.xml 少女安娜(勇者大陆114,113)

NPC(254)_Pasi_the_Mage.xml 魔导士帕希(勇者大陆118.112)

NPC(255)_Lumen_the_Barmaid.xml 老板娘莉雅(勇者大陆123,133)

NPC(259)_Oracle_Layla.xml 蕾拉(卡利玛)

NPC(376)_Pamela_the_Supplier.xml 物资管理员帕糜拉(罗兰峡谷)

NPC(377)_Angela the Supplier.xml 物资管理员安吉拉(罗兰峡谷)

NPC(379)_Natasha_Firecracker_Merchant.xml 爆竹商人罗嗒莎(冰风谷)

NPC(415)_Silvia.xml 塞尔维亚(幻术园)

NPC(416)_Rhea.xml 雷亚(幻术园)

NPC(417)_Marce.xml 摩尔塞(幻术园)

NPC(492)_Moss.xml 摩斯(传承装备NPC勇者大陆131,134)

NPC(545)_Christine_the_Merchant.xml 杂货商人克里斯丁(罗兰市场)

NPC(577)_Leina_the_Merchant.xml 商人蕾娜(卡伦特)

NPC(578)_Weapons_Merchant_Bolo.xml 贝莱 (卡伦特)

NPC(583)_Jin.xml 真(阿卡伦)

NPC(604)_Jin.xml 可能是杰罗(幻术园)

NPC(683)_Marce_B.xml

NPC(684)_Silvia_B.xml

NPC(685)_Izabel_B.xml

NPC(686)_Sophia_(repair)_B.xml

NPC(687)_Bolo_(repair)_B.xml

NPC(688)_Christine_B.xml

三、NPC商店文件参数介绍:

打开其中一个.xml文件,里面的内容如下注意

下面具体介绍一下里面各参数的具体涵义Cat:分类id;Index:物品id;Level:等级;Durability:耐久度(0-255);Skill:技能否;Luck:幸运否;Option:追加(0-7);Exc:卓越属性;SetItem:套装值;SocketCount:镶嵌孔数( 0-5);Elemental:元素;Serial: 生成串行否

分类id和:物品id:可以通过bmd编辑工具,打开客户端的item.bmd来获得

耐久不多说,最多255,装备类默认0就是各装备的最高耐久

等级:0-15等级

技能否:0无技能、1有技能

Luck:幸运否 0无幸运、1有幸运

Option:追加 0(追加0),1(追加4),2(追加8),3(追加12),4(追加16),5(追加20),6(追加24),7(追加28)

Exc:卓越属性没有卓越属性:-1有卓越属性,设置的格式是:a;b;c;d;e;f;g;h;ia~i各代表一个卓越属性,用数字表示,最多可以添加9个,具体用什么数字,文件zMuServer\IGCData\Items\IGC_ExcellentOptions.xml中定义了哪个数字代表哪个卓越属性

如:想添加武器的6个卓越属性:0;1;2;3;4;5添加 7速的这个卓越属性: 3IGC_ExcellentOptions.xml定义的卓越属性具体表示什么意思,后面会作进一步讲解。

SetItem:套装值 0(非套), 5(普通套 5体力), 9(普通套 10体力), 6(强化套 5体力), 10(强化套 10体力)

SocketCount:镶嵌孔数 针对镶嵌的装备 0-5孔

Elemental:元素;0是不带元素;1是火元素;2是水元素;3是土元素;4是风元素;5是暗元素,元素物品:火元素碎片;水元素碎片;土元素碎片;风元素碎片;暗元素碎片;昆顿的封印书;安东尼的剑;阿卡纳预言书;天空古书;帝国守卫军的壁垒;昆顿的上古卷轴;昆顿的陨落之刃;黑龙王的短剑;凶猛的圣水;梅兰的魔法书;

奇迹各地图编号、中文名称和英文名称对照表

奇迹Mu s12地图编号及中英文名称对照表

地图编号 名称(中文) 名称(英文)

////////////////////////////////////////////////////////////////////////////////////////////////////////////

0 勇者大陆 Lorencia

1 地下城(1~3) Dungeon(1~3)

2 冰风谷 Devias(1~4)

3 仙踪林 Noria

4 失落之塔(1~7) LostTower(1~7)

5 流放地 Exile(新版本的MU默认不存在does not exist by default in newer game versions)

6 古战场 Arena

7 亚特兰蒂斯 Atlans(1~3)

8 死亡沙漠 Tarkan (1~2)

9 恶魔广场 DevilSquare(1~4)

10 天空之城 Icarus

11 血色城堡1 BloodCastle1

12 血色城堡2 BloodCastle2

13 血色城堡3 BloodCastle3

14 血色城堡4 BloodCastle4

15 血色城堡5 BloodCastle5

16 血色城堡6 BloodCastle6

17 血色城堡7 BloodCastle7

18 赤色要塞1 ChaosCastle1

19 赤色要塞2 ChaosCastle2

20 赤色要塞3 ChaosCastle3

21 赤色要塞4 ChaosCastle4

22 赤色要塞5 ChaosCastle5

23 赤色要塞6 ChaosCastle6

24 卡利玛1 Kalima1

25 卡利玛2 Kalima2

26 卡利玛3 Kalima3

27 卡利玛4 Kalima4

28 卡利玛5 Kalima5

29 卡利玛6 Kalima6

30 罗兰峡谷 ValleyOfLoren

31 魔炼之地 LandOfTrials

32 恶魔广场(5~7) DevilSquare(5~7)

33 幽暗森林(1~2) Aida(1~2)

34 狼魂要塞(第一区) Crywolf Fortress (First Zone)

35 狼魂要塞(第二区) Crywolf (Second Zone)

36 卡利玛7 Kalima7(Lost)

37 坎特鲁废墟 Kanturu Ruins

38 坎特鲁遗址 Kanturu 1 (Remain)

39 坎特鲁提炼之塔 Kanturu 2 (Refinery Tower)

40 GM召唤区 Silent Map

41 巴卡斯兵营 Barracks of Balgass

42 巴卡斯休息室 Balgass Refuge

-------------------------------------------------------------------------------------------------------------------

45 幻影寺院1 Illusion Temple (Classic/Renewal) 1

46 幻影寺院2 Illusion Temple (Classic/Renewal) 2

47 幻影寺院3 Illusion Temple (Classic/Renewal) 3

48 幻影寺院4 Illusion Temple (Classic/Renewal) 4

49 幻影寺院5 Illusion Temple (Classic/Renewal) 5

50 幻影寺院6 Illusion Temple (Classic/Renewal) 6

51 幻术园 Elbeland

52 血色城堡8 Blood Castle 8

53 赤色要塞7 Chaos Castle 7

--------------------------------------------------------------------------------------------------------------------

56 安宁池 Swamp of Calmness

57 冰霜之城 Raklion

58 孵化巢 Hatchery (Raklion Boss)(冰霜之城蜘蛛BOSS)

--------------------------------------------------------------------------------------------------------------------

62 圣诞之地 Santa Village

63 囚禁之岛 Vulcanus

64 竞技场 Duel Arena

65 未知 Dopple Ganger Snow

66 未知 Dopple Ganger Volcan

67 未知 Dopple Ganger Sea

68 未知 Dopple Ganger Crystals

69 帝国要塞1 Imperial Fortress 1

70 帝国要塞2 Imperial Fortress 2

71 帝国要塞3 Imperial Fortress 3

72 帝国要塞4 Imperial Fortress 4

79 罗兰市场 Loren Market

80 卡伦特1 Karutan1

81 卡伦特2 Karutan2

82 生魂广场1 Doppel Ganger Renewal 1

83 生魂广场2 Doppel Ganger Renewal 2

84 生魂广场3 Doppel Ganger Renewal 3

85 生魂广场4 Doppel Ganger Renewal 4

86 生魂广场5 Doppel Ganger Renewal 5

87 生魂广场6 Doppel Ganger Renewal 6

88 生魂广场7 Doppel Ganger Renewal 7

89 生魂广场8 Doppel Ganger Renewal 8

90 生魂广场9 Doppel Ganger Renewal 9

-------------------------------------------------------------------------------------------------------------------

91 阿卡伦 Acheron

92 阿卡伦战役 Acheron (Arca Battle)

95 德班泰尔 Debenter

96 德班泰尔(战役) Debenter (ArcaBattle)(阿卡伦战役)

97 未知 ChaosCastleSurvival

98 未知 IllusionTempleLeague

99 未知 IllusionTempleLeague

100 未知 Urk Mountain

101 未知 Urk Mountain Event

102 未知 Tormented Square Battle 1

103 未知 Tormented Square Battle 2

104 未知 Tormented Square Battle 3

105 未知 Tormented Square Battle 4

106 未知 Tormented Square Battle 5

110 未知 Nars

112 菲利亚 Ferea

113 尼克西斯湖 NixieLake

114 任务区入口 QuestZoneEntrance

115 迷宫 Labyrinth

116 深渊地牢1 DeepDungeon1

117 深渊地牢2 DeepDungeon2

118 深渊地牢3 DeepDungeon3

119 深渊地牢4 DeepDungeon4

120 深渊地牢5 DeepDungeon5

121 第四转任务 4thQuest

122 黑暗沼泽 SwampOfDarkness

角色信息:升级点数等信息的修改

文件路径:“zMuServer\IGCData\IGC_PlayerInfo.xml

;############################################################

;# -- X12 MUONLINE SERVER EMULATOR

;# -- 角色信息设置

;# -- 2018-04-29

#

;############################################################

230

0

420

1

95

35

45

65000

65000

65000

65000

0

65000

65000

65000

65000

0

65000

65000

65000

65000

0

65000

65000

65000

65000

0

65000

65000

65000

65000

65000

65000

65000

65000

65000

0

65000

65000

65000

65000

0

65000

65000

65000

65000

0

学新通

地图移动等级的修改

要修改地图的移动等级,需要服务端和客户端都要进行相应的修改

一、服务端地图移动等级的修改

文件所在地址:GCData\Warps\IGC_MoveLevel.xmlLevel的选项定义了各地图移动所需的等级

客户端地图移动等级的修改

文件所在地址:Data\Local\movereq.bmd

bmd文件要用专用的工具才能修改,下面是用MuEditor打面movereq.bmd的情况,红色圈出的地方就是所需的等级

学新通

触发器:新建人物送点和Mu币等的修改

数据库的触发器,可以帮我们完成很多事情,如人物创建后送点数、送MU币、送x店积分等等,一些保存到数据里初始化的东西,如果文件里没有控制项,是可以通过建立触发器来完成的。触发器太高深的东西,我们小白学起来费劲,下面说一些比较简单并且对我们配置奇迹非常有用的相关知识。

1. 如何知道奇迹数库里有多少个触发器?

这要用到查寻数据库所有触发器的sql语句了,一般我们只要知道MuOnline这个数据库的所有这个数据触发器。就够了,下面用sql语句查询一下MuOnline这个数据库的所有触发器。

select * from sysobjects where xtype='TR';--查询当前数据库所有的触发器

我在一个有触发器的端的MuOnline数据库里,运行上面的语句,得到下面的结果,含有10个触发器

学新通

2. 具体看某条触发器的内容

想看看某条触发器都干了什么事情,就要用到下面的语句

exec sp_helptext 触发器名;

--如查询上面的"法师送点"这个触发器

exec sp_helptext 法师送点;

--得到如下结果:

CREATE TRIGGER 法师送点 ON dbo.[Character]

AFTER INSERT

AS

SET NOCOUNT ON

UPDATE Character SET Character.LevelUpPoint=6000

FROM Inserted

Where Inserted.Class=0

and Character.name=Inserted.name

SET NOCOUNT OFF

从结果我们知道是法师一创建后就送了6000点

3. 删除触发器

drop trigger 触发器名

4. 修改触发器

alter trigger 触发器名

on {table_name | view_name}

{for | After | Instead of }

[ insert, update,delete ]

as

sql语句

例如要把上面的6000点送点,改为1000点,执行下面语句

alter TRIGGER 法师送点 ON dbo.[Character]

AFTER INSERT

AS

SET NOCOUNT ON

UPDATE Character SET Character.LevelUpPoint=1000

FROM Inserted

Where Inserted.Class=0

and Character.name=Inserted.name

SET NOCOUNT OFF

我是艾西,今天的分享就先到这里啦有兴趣的小伙伴们自己可以深入的研究下。

拥有一台服务器可以做很多有趣的事情!

(注:此教程为个人娱乐用途,请勿商用)

这篇好文章是转载于:学新通技术网



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3