Register for your free account! | Forgot your password?

You last visited: Today at 06:44

  • Please register to post and access all features, it's quick, easy and FREE!


Need Fix Problem..

Discussion on Need Fix Problem.. within the SRO PServer Ask the Experts forum part of the SRO PServer - Discussions / Questions category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Oct 2015
Posts: 194
Received Thanks: 66
Need Fix Problem..

When i Delete Char at Server After 7 Day no need Delete any one know how To Fix it ?



gmroske is offline  
Old 05/07/2016, 03:34   #2
 
elite*gold: 0
Join Date: May 2016
Posts: 103
Received Thanks: 6
hmm , this is weird check when put at delete 1 char check in datebas in SRO_VT_SHARD _Char Where say Delete and when you put the Char in Delete need to show 1 if no put show 0 . check it if it's ok we will see.


EQuiNoXsro is offline  
Old 05/08/2016, 03:35   #3
 
elite*gold: 0
Join Date: Oct 2015
Posts: 194
Received Thanks: 66
Quote:
Originally Posted by EQuiNoXsro View Post
hmm , this is weird check when put at delete 1 char check in datebas in SRO_VT_SHARD _Char Where say Delete and when you put the Char in Delete need to show 1 if no put show 0 . check it if it's ok we will see.
After 7 Day no need Delete ! Do You Know Why ?!
gmroske is offline  
Old 05/08/2016, 03:48   #4
 
elite*gold: 0
Join Date: May 2016
Posts: 103
Received Thanks: 6
check in SRO_VT_SHAR IN Stored Procedures at _DeleteCharPermanently you have like this?

PHP Code:
USE [SRO_VT_SHARD]
GO
/****** Object:  StoredProcedure [dbo].[_DeleteCharPermanently]    Script Date: 5/8/2016 3:47:28 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO


--!!!CHECK!!!
ALTER              PROCEDURE [dbo].[_DeleteCharPermanently]
@
CharID    as int
as
    ------------------------------------
    -- &
#51068;단 삭제된 캐릭인지 부터 검사!
    
------------------------------------
    if (
not exists(select charid from _deletedchar where charid = @CharID))
    
begin
        
return -1
    end
    
------------------------------------
    -- &
#49325;제후 경과된 시간이 대략 7일이 맞는가 확인 (샤드에 혹시 버그가 있을지 모르니깐...)
    
------------------------------------
    declare [
MENTION=560038]deleted[/MENTION]_date datetime
    
declare @cur_date       datetime
    
declare [MENTION=1536325]elapse[/MENTION]d_min int
    
declare [MENTION=292919]user[/MENTION]JID         int
--    declare [MENTION=560038]deleted[/MENTION]_slot  int
    set 
@cur_date getdate()
    
select [MENTION=292919]user[/MENTION]JID UserJID, / [MENTION=560038]deleted[/MENTION]_slot CharSlot,*/ [MENTION=560038]deleted[/MENTION]_date deleteddate  from _deletedchar with (nolockwhere charid = @CharID
    
    
-- 삭제시킨지 6일 + 23시간 이상이 지난 캐릭인가? (1시간 정도의 오차라면 인정해 준다 냐하~)
    
set [MENTION=1536325]elapse[/MENTION]d_min datediff(minute, [MENTION=560038]deleted[/MENTION]_date, @cur_date)
    if  [
MENTION=1536325]elapse[/MENTION]d_min < ((60 24 6) + (60 23))) 
    
begin
        
return -2
    end
    
------------------------------------
    -- &
#49325;제된 캐릭이 맞는지 다시한번 확인
    
------------------------------------
    declare [
MENTION=5807866]IS_[/MENTION]deleted tinyint
    select 
[MENTION=5807866]IS_[/MENTION]deleted deleted from _Char where CharID = @CharID
    
if  [MENTION=5807866]IS_[/MENTION]deleted <> 1)
    
begin
        
return -3
    end

    
------------------------------------
    -- &
#51648;울 캐릭이 _User 에 있는 CharID와 일치하는가 검사
    
------------------------------------
    declare @
char_id_to_check         int
    set 
@char_id_to_check 0

/*    -- commented by novice. for server integration.
    if  [MENTION=560038]deleted[/MENTION]_slot = 0)
        begin    select @char_id_to_check = CharID1 from _User where UserJID = [MENTION=292919]user[/MENTION]JID end
    else if  [MENTION=560038]deleted[/MENTION]_slot = 1)
        begin    select @char_id_to_check = CharID2 from _User where UserJID = [MENTION=292919]user[/MENTION]JID end
    else if  [MENTION=560038]deleted[/MENTION]_slot = 2)
        begin    select @char_id_to_check = CharID3 from _User where UserJID = [MENTION=292919]user[/MENTION]JID end
    else
        begin
            return -4
        end
    -- 켁! 어떻게 된거야?  이상한 넘이 자리를 차지하고 있다!
    if (@char_id_to_check <> @CharID)
    begin
        return -5
    end
*/
    
-- start by novice.
    
select @char_id_to_check CharID from _User where UserJID = [MENTION=292919]user[/MENTION]JID and CharID = @CharID
    
    
if (@char_id_to_check 0)
    
begin
        
-- &#51648;울 캐릭터가 _User 에 없어?
        
return -5
    end
    
-- finish by novice.
    
begin transaction
    
    
declare [MENTION=4796157]Guildi[/MENTION]D int
    exec 
[MENTION=4796157]Guildi[/MENTION]_DeleteCharPermanently_NoTX  [MENTION=292919]user[/MENTION]JID, @CharID --, [MENTION=560038]deleted[/MENTION]_slot
    
if  [MENTION=4796157]Guildi[/MENTION]D is null)
        
set [MENTION=4796157]Guildi[/MENTION]= -10000    
    
if  [MENTION=4796157]Guildi[/MENTION]0)
    
begin
        rollback transaction
        
return [MENTION=4796157]Guildi[/MENTION]D
    end    
commit transaction
    
    
return [MENTION=4796157]Guildi[/MENTION]


EQuiNoXsro is offline  
Old 05/09/2016, 00:56   #5
 
elite*gold: 0
Join Date: Oct 2015
Posts: 194
Received Thanks: 66
Quote:
Originally Posted by EQuiNoXsro View Post
check in SRO_VT_SHAR IN Stored Procedures at _DeleteCharPermanently you have like this?

PHP Code:
USE [SRO_VT_SHARD]
GO
/****** Object:  StoredProcedure [dbo].[_DeleteCharPermanently]    Script Date: 5/8/2016 3:47:28 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO


--!!!CHECK!!!
ALTER              PROCEDURE [dbo].[_DeleteCharPermanently]
@
CharID    as int
as
    ------------------------------------
    -- &
#51068;단 삭제된 캐릭인지 부터 검사!
    
------------------------------------
    if (
not exists(select charid from _deletedchar where charid = @CharID))
    
begin
        
return -1
    end
    
------------------------------------
    -- &
#49325;제후 경과된 시간이 대략 7일이 맞는가 확인 (샤드에 혹시 버그가 있을지 모르니깐...)
    
------------------------------------
    declare  [
MENTION=560038]deleted[/MENTION]_date datetime
    
declare @cur_date       datetime
    
declare  [MENTION=1536325]elapse[/MENTION]d_min int
    
declare  [MENTION=292919]user[/MENTION]JID         int
--    declare  [MENTION=560038]deleted[/MENTION]_slot  int
    set 
@cur_date getdate()
    
select  [MENTION=292919]user[/MENTION]JID UserJID, /  [MENTION=560038]deleted[/MENTION]_slot CharSlot,*/  [MENTION=560038]deleted[/MENTION]_date deleteddate  from _deletedchar with (nolockwhere charid = @CharID
    
    
-- &#49325;제시킨지 6일 + 23시간 이상이 지난 캐릭인가? (1시간 정도의 오차라면 인정해 준다 냐하~)
    
set  [MENTION=1536325]elapse[/MENTION]d_min datediff(minute,  [MENTION=560038]deleted[/MENTION]_date, @cur_date)
    if   [
MENTION=1536325]elapse[/MENTION]d_min < ((60 24 6) + (60 23))) 
    
begin
        
return -2
    end
    
------------------------------------
    -- &
#49325;제된 캐릭이 맞는지 다시한번 확인
    
------------------------------------
    declare  [
MENTION=5807866]IS_[/MENTION]deleted tinyint
    select  
[MENTION=5807866]IS_[/MENTION]deleted deleted from _Char where CharID = @CharID
    
if   [MENTION=5807866]IS_[/MENTION]deleted <> 1)
    
begin
        
return -3
    end

    
------------------------------------
    -- &
#51648;울 캐릭이 _User 에 있는 CharID와 일치하는가 검사
    
------------------------------------
    declare @
char_id_to_check         int
    set 
@char_id_to_check 0

/*    -- commented by novice. for server integration.
    if   [MENTION=560038]deleted[/MENTION]_slot = 0)
        begin    select @char_id_to_check = CharID1 from _User where UserJID =  [MENTION=292919]user[/MENTION]JID end
    else if   [MENTION=560038]deleted[/MENTION]_slot = 1)
        begin    select @char_id_to_check = CharID2 from _User where UserJID =  [MENTION=292919]user[/MENTION]JID end
    else if   [MENTION=560038]deleted[/MENTION]_slot = 2)
        begin    select @char_id_to_check = CharID3 from _User where UserJID =  [MENTION=292919]user[/MENTION]JID end
    else
        begin
            return -4
        end
    -- 켁! 어떻게 된거야?  이상한 넘이 자리를 차지하고 있다!
    if (@char_id_to_check <> @CharID)
    begin
        return -5
    end
*/
    
-- start by novice.
    
select @char_id_to_check CharID from _User where UserJID =  [MENTION=292919]user[/MENTION]JID and CharID = @CharID
    
    
if (@char_id_to_check 0)
    
begin
        
-- &#51648;울 캐릭터가 _User 에 없어?
        
return -5
    end
    
-- finish by novice.
    
begin transaction
    
    
declare  [MENTION=4796157]Guildi[/MENTION]D int
    exec  
[MENTION=4796157]Guildi[/MENTION]_DeleteCharPermanently_NoTX   [MENTION=292919]user[/MENTION]JID, @CharID --,  [MENTION=560038]deleted[/MENTION]_slot
    
if   [MENTION=4796157]Guildi[/MENTION]D is null)
        
set  [MENTION=4796157]Guildi[/MENTION]= -10000    
    
if   [MENTION=4796157]Guildi[/MENTION]0)
    
begin
        rollback transaction
        
return  [MENTION=4796157]Guildi[/MENTION]D
    end    
commit transaction
    
    
return  [MENTION=4796157]Guildi[/MENTION]
NO See it

PHP Code:
USE [SRO_VT_SHARD]
GO
/****** Object:  StoredProcedure [dbo].[_DeleteCharPermanently]    Script Date: 5/9/2016 1:46:27 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO


--!!!CHECK!!!
ALTER              PROCEDURE [dbo].[_DeleteCharPermanently]
@
CharID    as int
as
    ------------------------------------
    -- ?? ??? ???? ?? ??!
    ------------------------------------
    if (
not exists(select charid from _deletedchar where charid = @CharID))
    
begin
        
return -1
    end
    
------------------------------------
    -- ??? ??? ??? ?? 
7?? ??? ?? (??? ?? ??? ??? ????...)
    ------------------------------------
    declare [
MENTION=560038]deleted[/MENTION]_date datetime
    
declare @cur_date       datetime
    
declare [MENTION=1536325]elapse[/MENTION]d_min int
    
declare [MENTION=292919]user[/MENTION]JID         int
--    declare [MENTION=560038]deleted[/MENTION]_slot  int
    set 
@cur_date getdate()
    
select [MENTION=292919]user[/MENTION]JID UserJID, / [MENTION=560038]deleted[/MENTION]_slot CharSlot,*/ [MENTION=560038]deleted[/MENTION]_date deleteddate  from _deletedchar with (nolockwhere charid = @CharID
    
    
-- ????? 6? + 23?? ??? ?? ????? (1?? ??? ???? ??? ?? ??~)
    
set [MENTION=1536325]elapse[/MENTION]d_min datediff(minute, [MENTION=560038]deleted[/MENTION]_date, @cur_date)
    if  [
MENTION=1536325]elapse[/MENTION]d_min < ((60 24 6) + (60 23))) 
    
begin
        
return -2
    end
    
------------------------------------
    -- ??? ??? ??? ???? ??
    ------------------------------------
    declare [
MENTION=5807866]IS_[/MENTION]deleted tinyint
    select 
[MENTION=5807866]IS_[/MENTION]deleted deleted from _Char where CharID = @CharID
    
if  [MENTION=5807866]IS_[/MENTION]deleted <> 1)
    
begin
        
return -3
    end

    
------------------------------------
    -- ?? ??? 
_User ? ?? CharID? ????? ??
    ------------------------------------
    declare @
char_id_to_check         int
    set 
@char_id_to_check 0

/*    -- commented by novice. for server integration.
    if  [MENTION=560038]deleted[/MENTION]_slot = 0)
        begin    select @char_id_to_check = CharID1 from _User where UserJID = [MENTION=292919]user[/MENTION]JID end
    else if  [MENTION=560038]deleted[/MENTION]_slot = 1)
        begin    select @char_id_to_check = CharID2 from _User where UserJID = [MENTION=292919]user[/MENTION]JID end
    else if  [MENTION=560038]deleted[/MENTION]_slot = 2)
        begin    select @char_id_to_check = CharID3 from _User where UserJID = [MENTION=292919]user[/MENTION]JID end
    else
        begin
            return -4
        end
    -- ?! ??? ????  ??? ?? ??? ???? ??!
    if (@char_id_to_check <> @CharID)
    begin
        return -5
    end
*/
    
-- start by novice.
    
select @char_id_to_check CharID from _User where UserJID = [MENTION=292919]user[/MENTION]JID and CharID = @CharID
    
    
if (@char_id_to_check 0)
    
begin
        
-- ?? ???? _User ? ???
        return -
5
    end
    
-- finish by novice.
    
begin transaction
    
    
declare [MENTION=4796157]Guildi[/MENTION]D int
    exec 
[MENTION=4796157]Guildi[/MENTION]_DeleteCharPermanently_NoTX  [MENTION=292919]user[/MENTION]JID, @CharID --, [MENTION=560038]deleted[/MENTION]_slot
    
if  [MENTION=4796157]Guildi[/MENTION]D is null)
        
set [MENTION=4796157]Guildi[/MENTION]= -10000    
    
if  [MENTION=4796157]Guildi[/MENTION]0)
    
begin
        rollback transaction
        
return [MENTION=4796157]Guildi[/MENTION]D
    end    
commit transaction
    
    
return [MENTION=4796157]Guildi[/MENTION]


gmroske is offline  
Reply



« How to disable start item Hwan level? | Help , How To Change Start Level Pet. »

Similar Threads
[Problem]Habe ein Problem und zwar spinnt mein VPC etwas(ohne Grund)?!
07/28/2011 - Metin2 PServer - Discussions / Questions - 10 Replies
Also wie schon gesagt meins Server spinnt wodurch kiks usw. kommen :( ich lade euch die Screens in den Anhang, mit der Hoffnung, dass ihr mir helfen könnt :) wäre echt sehr nice :)



All times are GMT +1. The time now is 06:44.


Powered by vBulletin®
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Abuse
Copyright ©2019 elitepvpers All Rights Reserved.