yingshuxiaozhi 发表于 2009-1-6 22:01:33

1299单机架好就是用户只上了一次就...

人物已在线,是否T下线,就出现了这么个问题.新在表里加的用户,一下线就再也上不去了,老提示人物已在线,是否T下线,可T又没反应.
哪位大哥指点下.

njsun 发表于 2009-1-6 22:08:58

清空CURRENTUSER表!

hhbwzh 发表于 2009-1-6 22:37:48

1:人物连接中断
warehose表 在设计表中要加入一个字段strWarehousePW char 10
2:人物无法进入
以下3个表删除Account_char TB_USERUserData
,然后在查询器里复制运行下就好了,运行按F5看下下面的
http://www.kofans.cn/bbs/thread-7218-1-1.html

刀浪 发表于 2009-1-6 23:16:31

我告诉你吧,这个问题,大多出现在AU上,
你去找个,好用的AU,小牛改版的那个AU不错,去找找吧,应该可以搜到

yingshuxiaozhi 发表于 2009-1-7 07:56:49

清空CURRENTUSER表!
njsun 发表于 2009-1-6 22:08 http://www.kofans.cn/bbs/static/image/common/back.gif
用这个方法可以再次进入游戏,可出来后再进就又进不了,有什么好方法不用每次都去删表里的值吗.

熊猫 发表于 2009-1-7 08:12:22

AU 要和存储 对应哦.. 换个存储 或则换个AU

yingshuxiaozhi 发表于 2009-1-7 13:06:06


用这个方法可以再次进入游戏,可出来后再进就又进不了,有什么好方法不用每次都去删表里的值吗.
yingshuxiaozhi 发表于 2009-1-7 07:56 http://www.kofans.cn/bbs/static/image/common/back.gif
要如何对应呢.能说明下吗.我用的是GB123的服务端,用的源是论坛上的,说是老外用的论坛里的修改过的源.
用过小牛的AU还是一样.

hhbwzh 发表于 2009-1-7 13:34:54

换下

CREATE PROCEDURE ACCOUNT_LOGIN
@AccountID        varchar(21),
@Password        varchar(13),
@nRet                smallint        OUTPUT

AS


DECLARE @Nation tinyint, @CharNum smallint
SET @Nation = 0
SET @CharNum = 0

DECLARE @pwd varchar(13)

SET @pwd = null

SELECT @pwd = strPasswd FROM . WHERE strAccountID = @AccountID and idays=6
IF @pwd IS null
BEGIN
        SET @nRet = 0
             --SET @nRet = 4
        RETURN
END

ELSE IF @pwd <> @Password
BEGIN
        SET @nRet = 0
             --SET @nRet = 3
        RETURN
END

DECLARE @gokhantasci varchar(21)
select @gokhantasci = count(straccountid)FROM premium_service WHERE strAccountID = @AccountID

if @gokhantasci = 0
begin
insert into PREMIUM_SERVICE (strAccountID, strType, nDays) VALUES (@AccountID, 1, 3)
end

SELECT @Nation = bNation, @CharNum = bCharNum FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID
IF @@ROWCOUNT = 0
BEGIN
        SET @nRet = 1
        RETURN
END
IF @CharNum = 0
BEGIN
        SET @nRet = 1
        RETURN
END
ELSE
BEGIN
        SET @nRet = @Nation+1
             --SET @nRet = 1
        RETURN
END
GO
还有下面这个
CREATE PROCEDURE MYST_LOGIN
@AccountID varchar(21),
@Password varchar(13),
@nRetsmallint OUTPUT
AS
--CurrentUserdan Silelim
delete from currentuser where straccountid = @AccountID
-- Oto &Uuml;yelik
select @nRet = count(straccountid) from tb_user where straccountid = @AccountID
if @nRet = 0
begin
insert into tb_user (straccountid, strpasswd, strSocNo, idays) values (@AccountID, @password, 1, '6')
end

DECLARE @Nation tinyint, @CharNum smallint
SET @Nation = 0
SET @CharNum = 0
DECLARE @pwd varchar(13)
SET @pwd = null
SELECT @pwd = strPasswd FROM . WHERE strAccountID = @AccountID
IF @pwd IS null
BEGIN
SET @nRet = 0
RETURN
END
ELSE IF @pwd <> @Password
BEGIN
SET @nRet = 0
RETURN
END
DECLARE @PremiumServiceDEC varchar(21)
select @PremiumServiceDEC = count(straccountid)FROM premium_service WHERE strAccountID = @AccountID
if @PremiumServiceDEC = 0
begin
insert into PREMIUM_SERVICE (strAccountID, strType, nDays) VALUES (@AccountID, 1, 3)
end
SELECT @Nation = bNation, @CharNum = bCharNum FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID
IF @@ROWCOUNT = 0
BEGIN
SET @nRet = 1
RETURN
END
IF @CharNum >= 0
BEGIN
SET @nRet = 1
RETURN
END
ELSE
BEGIN
SET @nRet = @Nation+1
RETURN
END
GO

hhbwzh 发表于 2009-1-7 13:35:21

都是储存过程

yingshuxiaozhi 发表于 2009-1-7 13:38:05

8# hhbwzh


又换了个AU问题解决了,谢谢楼上这么辛苦发这么大段数据上来.{:2_226:}
页: [1] 2
查看完整版本: 1299单机架好就是用户只上了一次就...