大家都知道,奇迹私服复制过程需要,交易`NPC`仓库`3个重要的步骤才能进行复制。
那么我们可以借住网上已经有的小窍门解决复制。
1.一线开放全部NPC 只允许在某个无NPC的地图进行交易。如:沙漠等地图
也可以将所有的NPC放到勇者大陆 禁止在勇者大陆交易。这样就杜绝了NPC复制问题。这个方法是以前是老套方法了。这样的杜绝不了复制。因为只要有交易,和仓库就能够复制这点已经测试过了。这个方法没什么用,但如果在补充一点不足的地方就会很成功的防止复制!下面就是接上面的步骤补充的不足!
2.一线将仓库的NPC删除 不要仓库 将仓库放到2线
2线不刷任何怪物,只刷仓库NPC这样也节约了2线GS占用资源大的问题。
GS在不刷怪的情况下CPU占用几乎为零,所以你不用为资源问题感到烦恼!
这样做就杜绝了 交易和仓库的复制问题。
相信讲到这里大家都知道是怎么防止复制了把。 下面给大家提供
2线CPU占用%100和任意地图禁止交易的方法!
3.任意地图禁止交易的方法
用UE打开GameServer 查找8A 91 51 E8 CE 04
83 FA 09 75 24 6A 01 8B 45 0C
将75改为74,那么除了上面的地图以外,其他的任何地图都不允许交易
将09改为你要改的地图编号的16进制就行了,为防止复制,建议只允许沙漠交易,则将09改为08即可。
4.一机二线CPU占用%100的解决方法
用UE打开GameServer 查找 6866EA 修改成 68E5ED
只需要改二线的GS一线的不需要修改,如果你一线和二线改成一样的
那么还是会CPU占用%100
5.服务器数据库完全优化指南,提速提速再提速
使用下面优化方式,可以大幅提高服务器相应能力,对低配置服务器最显著,对高性能服务器在巨量接入负载时也会有显著性能提升
1:登陆连接用
CREATE PROCEDURE WZ_CONNECT_MEMB
@uid varchar(20),
@server varchar(20),
@uip varchar(20)
AS
Begin
BEGIN TRANSACTION
SET NOCOUNT ON
IF EXISTS ( SELECT memb___id FROM
MEMB_STAT WITH (READUNCOMMITTED)
WHERE memb___id = @uid )
Begin
UPDATE MEMB_STAT
SET ip = @uip , connectstat = 1 ,
servername = @server , ConnectTM = (getdate())
WHERE memb___id = @uid
End
ELSE
Begin
INSERT INTO MEMB_STAT (
memb___id,ip,connectstat,servername)
valueS (
@uid,
@uip,
1,
@server
)
End
IF(@@Error <> 0 )
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
SET NOCOUNT OFF
End
GO
2:注销登陆用
CREATE PROCEDURE WZ_DISCONNECT_MEMB
@uid varchar(20)
AS
Begin
BEGIN TRANSACTION
SET NOCOUNT ON
IF EXISTS ( SELECT memb___id FROM
MEMB_STAT WITH (READUNCOMMITTED)
WHERE memb___id = @uid )
Begin
UPDATE MEMB_STAT
SET DisConnectTM = (getdate()),
connectstat = 0 WHERE memb___id = @uid
End
ELSE
Begin
INSERT INTO MEMB_STAT (
memb___id,DisConnectTM,connectstat)
valueS (
@uid,
(getdate()),
0
)
End
IF(@@Error <> 0 )
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
SET NOCOUNT OFF
End
GO
建立索引
1:仓库索引
CREATE
INDEX [warehouse_accountid_index] ON
[dbo].[warehouse] ([AccountID])
WITH
DROP_EXISTING
ON [PRIMARY]
2:角色选择画面索引
CREATE
INDEX [accountcharactet_id_index] ON
[dbo].[AccountCharacter] ([Id])
WITH
DROP_EXISTING
ON [PRIMARY]
3:角色索引
CREATE UNIQUE
INDEX [pk_character_index_wy] ON [dbo].[Character]
([AccountID] desc , [Name] desc ,
[Money])
WITH
DROP_EXISTING
ON [PRIMARY]
4:角色登陆索引
CREATE
INDEX [pk_membpwd_index] ON [dbo].[MEMB_INFO]
([memb__pwd])
WITH
DROP_EXISTING
ON [PRIMARY]
以上代码分别在查询分析器里执行,执行后登陆看看,打开仓库看看,速度如何:)
5:在我们的表上建一些索引
我们的表有web2_Card,WEB_开头的都是我们新建的!你建一些索引就行了
注意
下列命令是如果系统中存在则删除已存在的索引
WITH
DROP_EXISTING
ON [PRIMARY]
如果没有,删除自然出错并返回
服务器: 消息 7999,级别 16,状态 9,行 1
未能找到任何名为 warehouse_accountid_index
的索引(属于表 warehouse)
删除建立索引命令内的
WITH
DROP_EXISTING
ON [PRIMARY]
这部分再运行就可以了。
另外建立索引可以加快服务器数据库查询速度,应该可以在解决由于延迟导致的复制问题
阅读本文的人还阅读:
全职业靠墙方向移位漏洞
解决很多XP系统玩奇迹私服很卡的问题
战士1级学霹雳回旋斩和弓手1级学穿透方法
作者:补丁 2009-01-16
找奇迹私服,中国最好的奇迹私服发布站
本文haomusf版权所有,未经批准转载必究。
|