地方网

搜索

[稀有游戏服务端] 天机魔神争霸服务端全套+架设教程资料+随身商城系统+泡点升级系统

[复制链接]
admin 发表于 2011-7-20 20:15:26 | 显示全部楼层 |阅读模式
软件简介:
架设配置】 MSSQL数据库SQL2005工具:http://www.gougou.com/search?search=sql2005 MSSQL数据库SQL2000工具:http://www.gougou.com/search?search=sql2000 第一步:装SQL2005 不同于SQL2000,配置方面有些麻烦,,, XP系统装:SQL Server x86 版本的我已经装过了,就不装了,方法就直接点下一步。 SQL2005版本 我用的是:SQL_2005_All简体中文开发版DVD 然后是三个数据库的还原,我的数据库解压在D盘 GameAccount.bak Role.bak ServerInfo.bak 新建数据库 名字 用悲愤的数据库名字,,GameAccount 然后是还原数据库 够选第一个 然后确定,我已经还原了,不做演示了,三个数据库都要 这样还原这GameAccount 中的第一个表是 用户帐号密码第二步:配置服务端服务端放在D:\TIANJISEVR 只需要改所有的INI文件 account_server.ini 局域网的话IP改自己的IP 单机的话 都改成127.0.0.1 端口1433 是SQL数据库的默然端口 database_server.ini uid sa 数据库帐号 pwd 123456 密码 db GameAccount 数据库名称 把这个记住 很重要 端口1433 也很重要 --------------------------------- account_server.ini [Main] Name 野人社区 Port 20026 [ACCDBSrv] AccountCache=0 AccountCache 1 testserver 0 ip 127.0.0.1,1433 uid sa pwd 123456 db GameAccount 都是一样改 --------------------------------- database_server.ini [Main] Name moting Port 20007 [ACCDBSrv] ip 127.0.0.1,1433 uid sa pwd 123456 db GameAccount [ROLEDBSrv] testserver 1 canceldel 1 ip 127.0.0.1,1433 uid sa pwd 123456 db Role 一个意思 --------------------------------- game_server.ini //等级上限 LevelLimt=60 FriendMax=100 DBIP=127.0.0.1,1433 szDBName=ServerInfo szDBPWD=123456 szDBUser=sa m_nYear=1 m_nMonth=1 m_nDay=19 m_nHour=21 m_nMinute=0 m_szYearName=魔神 m_nGameWorldTimerRate=4 --------------------------------- gate_server.ini [Default] //对应的serverui 游戏世界的ip GWorldIP=127.0.0.1 GWorldPort=20005 //需要和对应的Game server的名字一样 GameWorldName=野人社区 OnlineMax=2000 //但前机器的对外IP,不能写名字 LocalIP=127.0.0.1 //对应的dcserver的ip DCServerIP=127.0.0.1 DCServerPort=20001 GatePort=30004 CheckTime=10000 --------------------------------- login_server.ini [Default] LocalIP = 127.0.0.1 ListenPort = 20003 GameWorldIP = 127.0.0.1 GameWorldPort = 20010 GameWorldName = 野人社区 MaxClient = 1000 LoginDBIP = 127.0.0.1 LoginDBPort = 20026 AntiPluginOpen=0 CreateImgExe=CreateImgCode/CreateCodeImage.exe TmpImageFolder=d:\tmpimgfolder slk文件夹-需要压缩到客户端一份: --------------------------------------------------------------------- D:\mszb\slk\ActionEx.slk 记录模型动作中要用的模型ID是天方中用的(可以考虑删除) D:\mszb\slk\armour.slk 记录防具的模型ID和属性数值 D:\mszb\slk\buildingType.slk 记录建筑的属性是天方中的(可以考虑删除) D:\mszb\slk\charmodulus.slk 记录各个角色的攻击系数 D:\mszb\slk\city.slk 记录各个城市的名字的 (目前用不到) D:\mszb\slk\cjvisual.slk 记录武器和防具模型的ID (可以考虑删除) D:\mszb\slk\Compound.slk 记录合成公式的 D:\mszb\slk\CreateItemRule.slk 记录合成公式的 D:\mszb\slk\creaturesound.slk 记录音效的 D:\mszb\slk\ExpAndLevel.slk 记录升级要的经验 D:\mszb\slk\Expression.slk 记录人物的表情 D:\mszb\slk\gameaction.slk 记录人物的动作播放信息 D:\mszb\slk\gem.slk 记录铁石的功用 D:\mszb\slk\item.slk 这是个复合表,将好几张别的表里的内容存在这里 D:\mszb\slk\Model.slk 记录人物模型的动作以及对应的文件信息 D:\mszb\slk\ModelProj.slk 记录道具模型以及对应的文件信息 D:\mszb\slk\monster.slk 记录怪物信息-怪物暴率 D:\mszb\slk\OfficialSetting.slk 记录功勋值和官位的信息 D:\mszb\slk\Param_Desc.slk 天方里的 (可以考虑删除) D:\mszb\slk\Param_Formula.slk 天方里的 (可以考虑删除) D:\mszb\slk\Profession.slk 天方里的 (可以考虑删除) D:\mszb\slk\reel.slk 天方里的 (可以考虑删除) D:\mszb\slk\restore.slk 记录恢复性道具的信息 D:\mszb\slk\reputelist.slk ***称号属性代码 D:\mszb\slk\ShopCenter.slk ***商城修改物品 D:\mszb\slk\skill.slk 记录游戏中所有的技能信息 D:\mszb\slk\SkillEffect.slk 记录特殊技能的配置信息 D:\mszb\slk\status.slk 记录所有的状态信息 D:\mszb\slk\stone.slk 记录符石的信息 D:\mszb\slk\String.slk 记录不同的语言提示-以及服务器名字 D:\mszb\slk\weapon.slk 记录武器的信息 D:\mszb\slk\WorldMapCfg.slk 记录游戏世界中所有的地图 --------------------------------------------------------------------- Script文件夹: --------------------------------------------------------------------- D:\mszb\Script\CreatePlayer.s 注册上线送物品 D:\mszb\Script\GMtool.s GM专用物品工具 D:\mszb\Script\NPC.slk 游戏NPC属性 D:\mszb\Script\UseItem.slk 增加新脚本 --------------------------------------------------------------------- ====GameAccount数据库============================================ GameAccount 游戏帐户 ------------------------------------ t_Game_Account t_游戏帐户 |- ga_AccountID 注册用户名 |- ga_Password 注册用户密码MD5 t_Game_LoginLog t_游戏登录记录 ------------------------------------ ====Role数据库=================================================== Role 角色 ------------------------------------ GuildTop 公会顶端 LevelTop 水平顶端 MoneyTop 钱顶端 t_game_character t_游戏角色 |- CharacterId 角色ID号 |- CharName 角色名 |- Lev 角色等级 |- Money 角色XX金 |- DataInfo 角色职业 |- OtherData 角色所在城市坐标,为空的话就认定为从为进过游戏的角色。此时进游戏会按照新手送物品送出新手装备。 |- KillValue 角色荣誉 |- Exp 角色总经验数值 t_game_Friend t_游戏朋友 t_game_GMInfo t_游戏 GM 信息 t_game_Guild t_游戏公会 t_game_GuildMember t_游戏公会成员 t_game_Item t_游戏项目 t_game_ItemTraceLog t_游戏项目痕迹记录 t_game_public_messages t_勇敢的公众信息 t_game_ScriptVar t_游戏手写体变容体 t_game_VisualInfo t_游戏视觉的信息,时装 |- CharacterId 对应t_游戏角色中的CharacterId |- DataInfo 角色已装备在身上的物品 t_game_YuanBao_ToGame t_游戏元对游戏的 Bao t_game_YuanBao_ToWeb t_游戏元对网络的 Bao t_guild_stake_record t_公会赌注记录 UndueWord 不适当的字 ------------------------------------ ====ServerInfo数据库============================================ ServerInfo 伺候器信息 ------------------------------------ t_game_Log t_游戏记录 t_Online_Info t_在线信息 t_server_Info t_伺候器信息 t_User_Info t_使用者信息 ------------------------------------ 脚本指令说明 proc_start,proc_end proc_start n : 脚本开始,n脚本编号0~15 0:是初始化当前的脚本 1:是脚本的入口。 2~15:是脚本的其它过程 proc_end 脚本结束 proc_start与proc_end这两条必须成对出现。例子: proc_start 0 // 初始化脚本 proc_end proc_start 1 // 开始运行脚本入口 // 做一些事 jump 2 proc_end proc_start 2 // 做一些事 proc_end = , += , -= , *= , /= 设置变量 x = n 当x是数字时 0-5999:自定义的变量(3000~5999:任务变量) n是值注:0~5999的玩家变量范围为:-127~+127 全局变量与临时变量范围为:- 2147483647~+2147483647 3000 = 0 // 设置3000号变量为0 2000 += 3 // 把2000号变量加上3 1000 -= 11 // 把1000号变量减去11 100 *= 2 // 把10号变量乘于2 1000 /= 10 // 把1000号变量除于10 当x是字符串时设置的是当前触发脚本的玩家的属性 name = 名称 Name = 织田信长名称不能超过15个汉字或30个英文数字 HeaderName = 队长名称 Dlg 0 你的队长是:%s HeaderName DstPlayerName = 目标玩家名称 Dlg 0 目标玩家是是:%s DstPlayerName Pos = x坐标 y坐标 方向 Pos = 59 128 6 x与y坐标为当前地图坐标方向为0~7(右,右上,上,左上,左,左下,下,右下) map = 地图编号 Map = 2 model = 模型编号 Model = 5017 Level = 等级 Level = 20 Profession = 职业编号 Profession = 1 (职业编号查看附表1) Sex = 性别编号 Sex = 0 (性别编号查看附表1) [key] 操作 数量 [key]为如下: money:金钱 exp:经验 skillexp:技能经验 con:体质 str:力量 dex:敏捷 int:智力 mgc:魔力 lky:运气 hp:生命量 mp:魔法量操作为: +=:加 -=:减 =:相同如: money += 100 hp -= 20 mp += 10 if, else, endif if:条件判断,这三条指令必须匹配出现 else:转折 endif:结束判断。 If [key] 逻辑操作符 数值 [key] 当[key]是数字时为玩家身上的变量(0~4095) 当[key]是字符串时为玩家的属性(同Set [key]的[key]) 逻辑操作符 :大于 =:大于等于 :小于 =:小于等于 ==:等于 !=:不等于 if money  1000 // 条件成立做某事 Else // 条件不成立做某事 endif call n 调用某个编号的脚本,当脚本执行完毕,返回调用的地方,然后继续向下执 n: 脚本编号 call 3 脚本3调用完毕返回 jump n 跳转到某个编号的脚本,当脚本执行完毕,不返回调用的地方。(注意与call的区别) n: 脚本编号 jump 3 脚本3调用完毕不返回 return 返回当前脚本 dlg 0 text $m 显示对话框。参数:第一参数为0表示有下一句、为1表示是最后一句第二参数是对话内容第三个到N个参数为变量 dlg 0 显示下一步按钮 dlg 1 显示关闭按钮 var $x $x = 10 dlg 1 馒头为%s个,我的名字叫%s $x name 注:后面的变量将代替%s显示出来,运行结果为馒头为10个,我的名字叫WitSun Talk time color text 在激活脚本玩家的屏幕显示信息 time: 显示的时间(毫秒,1000毫秒=1秒) color: 字的颜色 text: 信息内容 Talk 10000 0xffff0000 你好呀 TalkAll time color text%s $n 在所有玩家的屏幕显示信息参数的意思同Talk指令 TalkAll 10000 0xffff0000 你有%s个物品 $n TalkArea mapid x y time color text%s $n 在指定区域内玩家的屏幕显示信息 Mapid: 地图ID x,y: 区域坐标参数的意思同TalkAll指令 TalkArea 0 3 4 10000 0xffff0000 你有%s个物品 $n Tell text text: 信息内容向玩家聊天框显示信息 Tell 你好呀 flytomap 立即飞行到指定的地方,后面的参数为地图编号与地图坐标 Flytomap 1 45 47 1:为地图ID 45:为地图x坐标 47:为地图y坐标 ask 多个选择项目的排列 [var] = ask 提示内容 选项0选项1选项3选项n [var]:为系统变量 Var _n _n = Ask 选项测试 上海 北京 深圳 if _n == 0 dlg 你选择了上海 else endif if _n == 1 dlg 你选择了北京 else endif if _n == 2 dlg 你选择了深圳 else endif RemoveAllEquip 卸去所有装备 RemoveAllItem 卸去所有道具 Shop_Item id price mincount maxcount percount x 设定商店卖的物品(与Shop指令配合使用) id: 物品ID price: 物品其本价格(-1时从SLK表读入) mincount: 物品最少数量(库存) maxcount: 物品最大数量(库存) percount: 所卖物品数量 X: 物品活跃度(55~100) Shop_Item 5700 10 60 5 80 表示: 5700: 物品ID 10: 基本价格 60: 库存最大数 5: 每批出售个数 80: 活跃度80% Shop id rate type 交易指令(与Shop_Item指令配合使用) id: 商店ID,每个商店有自己的唯一ID,范围由策划规定(ID不能重复) rate: 物品刷新周期(分钟) type: NPC回收物品的类型(查看附表1, 为-1时表示任意物品) Shop_Item 5700 10 60 5 80 Shop_Item 7715 100 60 5 80 Shop 1 30 -1 表示: 商店出售ID5700物品,与ID7715物品 1: 商店唯一ID 30: 每30分钟刷新商店的物品,如果目前该商品少于30%,就补足数量,否则不补足 -1: 表示此商店回收任意类型物品 HaveThisItem 判断是否有该道具 Var _n _n = HaveThisItem 小刀 _n:为变量,返回数目 RemoveThisItem 从包裹移除道具 RemoveThisItem 盔甲 3 3:移除所有该道具数量 -1移除所有该道具 IsThisItemEquipped 判断该道具是否被装备 Var _n _n = IsThisItemEquipped 盔甲 _n:为变量,返回结果(返回0为没有,返回1是) IsThisSkillActived 判断玩家是否有该技能5 u w l.n e t Var _n _n = IsThisSkillActived 1090 1 1090:技能ID 1:技能级别 _n:为变量,返回结果(返回0为没有,返回1是) BC 苹果数为%s $n 向所有玩家广播内容 BC 大家好呀 SetBornPoint 设置出生点 SetBornPoint 1 30 40 1:地图ID 30,40:地图坐标 TeachSkill 学习技能 TeachSkill 1000 1001 1001 1000,1001,1002:为技能ID 最多为64项 Add_Item 玩家获得某样道具 Add_Item 大刀 1 大刀:道具名 1:数量 Can_get_new_quest 是否可以接新的任务 Var _n _n = Can_get_new_quest _n:为变量,返回值,1为可以,0为不行 Cancel_quest 取消任务 Cancel_quest 3000 3000:为任务变量 Done_quest 完成任务 Done_quest 3000 3000:为任务变量 Set_quest_state 设置任务状态 Set_quest_state 3000 1 3000:为任务变量 1:为任务状态, 为系统变量,返回值 0:未接过任务 -1:已完成任务 1~254:任务过程 Get_quest_state 取得任务状态 Var _n _n = Get_quest_state 3000 3000:为任务变量 _n:为任务状态 Relate_quest id state enter 关连任务 id: 任务ID state: 任务状态 enter: 脚本入口 Relate_quest 3000 1 2 3000:为任务变量 1:为任务状态 2:为脚入入口注: 任务NPC脚本始化时要对自己所感兴趣的任务状态进行关连如: proc_start 0 relate_quest 3000 0 relate_quest 3000 3 proc_end Var $ 变量声明 Var $n Var $g_n $n:为临时变量 $g_n:为系统变量临时变量前面加标识符$ 系统变量以$g_开头如: Var $m $m = 100 if $m == 100 else endif RefreshMonster 刷怪 RefreshMonster n x y m n:地图ID (当n为-1时表示刷新触发脚本的玩家或怪物所在地图上的怪) x,y:小地图编号 m:区块ID 如: RefreshMonster 0 3 4 3 在0号地图3,4编号为3的区块刷怪 (要在MonsterConfig.exe里事先编辑好) PlayMusic 播放音乐 PlayMusic n filename n: 0:播放一次 1:重复播放 -1:停止播放 filename:音乐文件名如: PlayMusic data/music/1.mp3 {#FFFF0000=文字#} 基本格式使用{}大括号 #字符代表16进制在#后面跟8位16进制符号(16进制0~~F),每2位代表一个颜色 00代表全透 FF代表实不透 00~FF之间可按情况任意取值具体说明: 2位 2位 2位 2位     透明通道 红 绿 蓝例子:{#FFFF0000=文字#} 形成效果就是文字 地点:地点名称{#FFFF0000=文字#} 人名:人物名称{#FFFFFF00=文字#} 道具:道具名称{#FF00FF00=文字#} 事件:事件名称{#FFFF9900=文字#} //超链接 {h文字h} 例子: {h村长h} 形成效果: 村长 MakeItem 合成/精炼/强化 MakeItem NeworOld maketype(old) rate equiptype(new) itemtype(new) x1 x2 x3 x4 y a x waste(以上全是new) I d1begin id1end id2begin id2end (以上全是old) NeworOld: 1是新的合成 0是老的 maketype: 制作类型 0:合成 1:精炼 2:强化 rate: NPC附加合成几率 equiptype: 指定是武器还是防具 itemtype: 生成物品具体类型(查看附表1,) x1: 影响材料强度的作用大小系数; x1=50-100 x2: 影响合成物品等级的作用大小系数; x2=20 x3: 影响合成武器攻击强度总体大小的系数 x3=5-6 x4: 影响合成防具防御强度总体大小的系数 x4=5-6 y: 影响合成物品的耐久 y=0 a: 影响合成物品的耐久 a=1 x: 影响物品的耐久 x=1 waste 各类合成物品的消耗度;双手武器消耗度=0.1-0.3 单手武器消耗度=0.5-0.8 衣服消耗度=0.1-0.2 护腿消耗度=0.2-0.3 肩膀消耗度=0.4-0.5 护腕消耗度=0.5-0.8 腰带消耗度=0.3-0.5 头盔消耗度=0.4-0.6 鞋子消耗度=0.3-0.5 盾牌消耗度=0.1-0.4 idnbegin, idnend: 物品ID开始与结束区间 (最多8组) Rand 随机数值提取 Rand X X为可变数值(1~32767)假设 rand 10 取值范围为(0-9) Var $n $n = rand 2 if $n == 0 else endif GetCharCount x 获得x号地图玩家与NPC的数量 GetCharCount n n: 地图ID Var $n $n = GetCharCount 3 // 获得3号地图的玩家数量 if $n == 0 else endif 注:是(玩家+NPC)的数量 ShowQuestDlg 显示任务对话框 $n = ShowQuestDlg请问你有什么事吗? $n:返回值 -1:没有可用的任务 0:用户没选择任务其它:任务ID号 proc_start 0 relate_quest 3000 0 1 relate_quest 3000 1 2 relate_quest 3001 1 1 proc_end proc_start 1 var $n $n = ShowQuestDlg 请问你有什么事吗? If $n == -1 Dlg 1 没任务 Else Endif If $n == 0 Dlg 1 你没选择任务 Else Endif If $n == 3000 Dlg 1 你选择了3000号任务 Else Endif proc_end UseSkill id level 使用技能 Id: 技能ID Level: 技能等级 UseSkill 1024 1 PopNpcList 显示当前地图NPC列表 PopNpcList AddSkill 添加技能 AddSkill 1000 1000:为技能ID GetWorldTime type 获得游戏世界时间(天机时间) type为: Year 年 Month 月 Day 日 Hour 时 Minute 刻 var $n $n = GetWorldTime Day NpcMoveNext 让NPC移动到下一点 NpcMoveNext NpcPlayAnim name count end 让NPC做一个动作(只有触发角本的玩家看得到) Name: 动作名称 Count: 做这个动作的次数 End: 结束动作名称 NpcPlayAnim sayhello 4 idle NpcPlayAnimForAll name count end 让NPC做一个动作(所有可视玩家看得到) Name: 动作名称 Count: 做这个动作的次数 End: 结束动作名称 NpcPlayAnimForAll sayhello 4 idle CanLearnSkill id level 判断能否学习某个技能 id: 技能ID level: 技能等级(从1开始!) Var $n $n = CanLearnSkill 1000 1 ShowBank 获得玩家钱庄信息。 ShowBank DoRide id 乘坐骑 id: 坐骑ID DoRide 1000 SetDialogName name 显示对话框的名字 name: 名字 SetDialogName 天书 SetHotkey index id 设置热键 Index: 所要放置热键的索引 Id: 热键ID SetHotkey 0 1000 SetStorage 玩家存取物品到仓库,NPC的名字请填写当地城市的名字来标志城市 SetStorage LogInfoToDB info 把信息存储到数据库中返回值:0失败,1成功 Var $return $return = LogInfoToDB 打宝活动(%s-%s-%s-%s) $a $b $c $d GetTeamPlayerCount 获得团队里玩家数量返回值最少是1人,也就是自己 Var $count $count = GetTeamPlayerCount GetTeamPlayerLevel x 获得团队里玩家等级 x: 0: 最低的等级 1: 最高的等级 Var $level $level = GetTeamPlayerLevel 0 SetTeamVar key var 设置团队变量 Key: 变量名 Var: 值 SetTeamVar 500 1 GetTeamPlayerID index 获得团队里某成员的ID Index: 成员索引注:如这团队有3个人,那索引就是0,1,2 而且0号索引的是队长 Var $count $count = GetTeamPlayerCount If $count == 2 Var $id $id = GetTeamPlayerID 1 Else endif GetCurPlayerID 获得当前脚本玩家的ID Var $id $id = GetCurPlayerID GetPlayerVar id key 获得玩家的变量 Id: 玩家ID Key: 变量 Var $id $id = GetTeamPlayerID 1 Var $hp $hp = GetPlayerVar $id hp SetDstPlayer id 设置目标玩家 Id: 玩家ID Var $id $id = GetTeamPlayerID 1 SetDstPlayer $id CreateMonster mapid x y r bodysize index num 创建怪物 Mapid: 地图ID x,y: 地图坐标 r: 半径 bodysize: 体形大小 index: 怪物索引 num: 怪物数量 CreateMonster 0 100 100 20 1 100 2 注: 在游戏中查看脚本变量的方法,在聊天框输入/var 变量名 如: /var 1000 /var $n 附表1: 物品类型编号 0 :恢复药品 1 :武器 2 :防具 8 :卷轴 9 :原料 10:勋章 12:工具 13:宝石 职业编号 0:刺客 1:战士 2:猎人 3:方士 4:牧师 性别编号 0:男 1:女 武器编号 0: 拳头,相当于徒手 1: 单手剑 2: 双手剑 3: 长弓 4: 枪,弩 5: 棍棒 6: 匕首 7: 盾牌 8: 拳套 9: 单手斧 10: 双手斧 防具编号 0: 头发 1: 头盔 2: 脸 3: 盔甲 4: 手套 5: 鞋子 6: 左手物品 7: 右手物品 8: 头饰 9: 盾 10: 护肩 11: 护腿 12: 戒指 13: 手镯 14: 项链 15: 腰带 removethisitem 凤翔血刃 1 从你背包中删掉一个物品 add_item 凤翔血刃 1 从你背包中加上一个物品 tell 你失去了一把摩斧镇魂 输出一句话(弹出对话框形式) 【版本说明】修改上线送等级,装备,送随身商城系统物品修改杀野猪爆币自动入包,新手城增加泡点脚本自己体验吧,好久没搞这个了,都不记得改过什么了不过以前就我一个人研究出泡点脚本,哈哈,更多发现自己研究吧! 相关下载:天机魔神争霸客户端下载:http://games.sina.com.cn/z/ms/download.shtml 注册系统需安装以下.NET3.5支持库 Microsoft .NET Framework 3.5下载: http://www.crsky.com/soft/21819.html
014645uita8l6t3eaq6igc.jpg

014642ro32ldd5i585b2zh.jpg

014642svdglgu6vlccrclr.jpg

下载地址:
2011-7-20 20:15 上传
下载权限:
版本vip会员
本地下载 检测资源   提取码: 需要终身vip或更高权限
免费资源区资源无需vip就可以下载!其他资源需要开通vip下载,点击→开通VIP!
回复

使用道具 举报

全部回复0 显示全部楼层

发表回复

您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

联系客服 关注微信 下载APP 返回顶部 返回列表