Register for your free account! | Forgot your password?

You last visited: Today at 07:14

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

Advertisement



[Release] OptLevel "Limit"

Discussion on [Release] OptLevel "Limit" within the SRO PServer Guides & Releases forum part of the SRO Private Server category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Dec 2011
Posts: 498
Received Thanks: 190
[Release] OptLevel "Limit"

because there are still some guys they dont know how to write simple querys iīll release one

PHP Code:
IF (@Operation 90 AND @strDesc like '%Opt: +13%')
BEGIN
UPDATE SRO_VT_SHARD
.dbo._Items SET OptLevel 12 WHERE Serial64 = @ItemSerial
END 
Bonus:

Remove OptLevel limit from SMC:

PHP Code:
USE [SRO_VT_SHARD]
GO
/****** Object:  StoredProcedure [dbo].[_SMC_ADD_ITEM]    Script Date: 04/17/2014 18:50:37 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO
-----------------------------------------------------------------------
ALTER PROCEDURE [dbo].[_SMC_ADD_ITEM]
----------------------------------------------------- 
params to find target item
    
@TargetStorage    int,        /* 0 = inventory, 1 = chest , 2 = guild chest, 3 = Avatar Inventory */
    
@OwnerName    varchar(128),
    ----------------------------------------------------- 
params to modify the item
    
@RefItemID    int,
    @
OptLvl        tinyint,
    @
Variance    bigint,
    @
Data        int,
    @
szCreater    varchar(32),
    @
MagParamNum    int,
    @
MagParam1    bigint,
    @
MagParam2    bigint,
    @
MagParam3    bigint,
    @
MagParam4    bigint,
    @
MagParam5    bigint,
    @
MagParam6    bigint,
    @
MagParam7    bigint,
    @
MagParam8    bigint,
    @
MagParam9    bigint,
    @
MagParam10    bigint,
    @
MagParam11    bigint,
    @
MagParam12    bigint
as
    ----------------------------------------------------
    -- 
step 1. check validity of parameters
    
----------------------------------------------------
    if (@
TargetStorage <> and @TargetStorage <> and @TargetStorage <> and @TargetStorage <> 3)
    
begin
        select 
-1cast(as bigint), cast(as bigint)    -- invalid target storage
        
return
    
end
    
declare @ownerid int
    
declare @ItemID bigint
    set 
@ownerid 0
    set 
@ItemID 0
    
declare @empty_slot int
    set 
@empty_slot = -1
    
if (@TargetStorage 0)
    
begin
        select 
@ownerid charid from _char where charname16 = @OwnerName
        
if (@@rowcount or @ownerid or @ownerid is null)
        
begin
            select 
-2cast(as bigint), cast(as bigint)-- can't find owner
            return
        end

        select top 1 @empty_slot = slot from _inventory 
        where charid = @ownerid and slot >= 13 
            and itemid = 0 
            and slot < (select top 1 InventorySize from _Char where CharID = @ownerid)
        order by slot asc

        if (@@rowcount = 0)
        begin
            select -3, cast(0 as bigint), cast(0 as bigint)    -- inventory full
            return
        end
    end
    else if (@TargetStorage = 1)
    begin
        select @ownerid = JID from _AccountJID where AccountID = @ownername
        if (@@rowcount = 0 or @ownerid = 0 or @ownerid is null)
        begin
            select -2, cast(0 as bigint), cast(0 as bigint)    -- can'
t find owner
            
return
        
end
        select top 1 
@empty_slot slot from _chest where userjid = @ownerid and (itemid or ItemID is nullorder by slot asc
        
if (@@rowcount 0)
        
begin
            select 
-3cast(as bigint), cast(as bigint)    -- chest full
            
return
        
end
    end
    
else if (@TargetStorage 2)
    
begin
        select 
@ownerid = [IDfrom _guild where [name] = @ownername
        
if (@@rowcount or @ownerid or @ownerid is null)
        
begin
            select 
-2cast(as bigint), cast(as bigint)    -- can't find owner
            return
        end    
        select top 1 @empty_slot = slot from _guildchest where guildid = @ownerid and (itemid = 0 or ItemID is null) order by slot asc
        if (@@rowcount = 0)
        begin
            select -3, cast(0 as bigint), cast(0 as bigint)    -- chest full
            return
        end    
        
        -- 길드 레벨에 따른 길드 슬롯수 제한을 확인하자.
        declare @lvl tinyint
        declare @max_slot tinyint
        select @lvl = Lvl from _guild where [id] = @ownerid
        set @max_slot = 30 * (@lvl - 1) - 1

        if @empty_slot > @max_slot 
        begin
            select -3, cast(0 as bigint), cast(0 as bigint)    -- chest full
            return
        end                
    end
    else
    begin
        select @ownerid = charid from _char where charname16 = @OwnerName
        if (@@rowcount = 0 or @ownerid = 0 or @ownerid is null)
        begin
            select -2, cast(0 as bigint), cast(0 as bigint)-- can'
t find owner
            
return
        
end

        select top 1 
@empty_slot slot from _InventoryForAvatar
        where charid 
= @ownerid
            
and itemid 
            
and slot 4                    -- &#54532;로시져 하드코딩(아바타 슬롯은 0, 1, 2, 3이다.)
        
order by slot asc

        
if (@@rowcount 0)
        
begin
            select 
-3cast(as bigint), cast(as bigint)    -- inventory full
            
return
        
end
    end
    

    
if (@empty_slot or @empty_slot is null)
    
begin 
        select 
-4cast(as bigint), cast(as bigint)        -- unknown error ???
        return
    
end
    
    
declare @tid1 int
    
declare @tid2 int
    
declare @tid3 int
     
declare @tid4 int
    
    select 
@tid1 TypeID1, @tid2 TypeID2, @tid3 TypeID3, @tid4 TypeID4 from _RefObjCommon where ID = @RefItemID
    
if (@tid1 <> 3)
    
begin
        select 
-5cast(as bigint), cast(as bigint)    -- about to assign non-item object
        
return
    
end
    
if (@tid2 <> 1)        -- is not equipment
    begin
        
-- can't assign magic param or optlevel to non-equip item
        if (@MagParamNum > 0 or @OptLvl > 0)
        begin
            select -6, cast(0 as bigint), cast(0 as bigint)
            return
        end
    end
    
    ----------------------------------------------------
    -- step 2. correct some non-critical parameters
    ----------------------------------------------------
    if (@tid2 = 3 and @Data = 0)    -- can'
t assign overlap count 0 to expendable item
    begin
        set 
@Data 1
    end

        
-- clamp optlevel to 12(Equip &#50500;이템에만 적용)

    
if (LEN(@szCreater) = 0)
        
set @szCreater NULL

    
----------------------------------------------------
    -- 
step addequip and pet @data setting
    
----------------------------------------------------
    declare @
IS_EQUIP int
    
declare @IS_PET int

    set 
@IS_EQUIP 0
    set 
@IS_PET 0

    
if (@tid1 and @tid2 1)
        
set @IS_EQUIP 1
    
else if (@tid1 and @tid2 and @tid3 and (@tid4 or @tid4 2))
        
set @IS_PET 1

    
if (@IS_EQUIP 1)
    
begin
        
-- SMC_SR_UserEdit_Char_Item_or_Guild_Item PATCH READY&#50640;서 @RefItemID를 참조하는 쿼리 수정이 빠져 있었다. by zone0000(2008.05.30)
        
select @Data Dur_L from _RefObjItem as Roi with(nolockjoin _RefObjCommon as Roc with(nolockon Roi.id Roc.link 
        where Roc
.ID = @RefItemID
    
            
-- clamp optlevel to 12&#45716; 장비 아이템에만 적용한다.            
          
if (@OptLvl 0)
              
set @OptLvl 0
    end
    
else
    
begin

        
if( @IS_PET )
            
set @Data 0
        
else
        
begin
            
declare @MaxCount int

            
-- 2007. 10. 30 &#49437;민우 -> 단순히 _RefObjItem 의 id와 @RefItemID를 비교하여 질의가 이상한 결과를 반환했다.
            
-- _RefObjCommon &#51032; 정보와 _RefObjItem의 정보를 조인해야 제대로된 질의가 완성된다.
            
select @MaxCount MaxStack from _RefObjItem as Roi with(nolockjoin _RefObjCommon as Roc with(nolockon Roi.id Roc.link 
            where Roc
.ID = @RefItemID
    
            
if (@Data <= or @Data > @MaxCount)  
                
set @Data = @MaxCount  
        end

        set 
@OptLvl 0
    end


    
----------------------------------------------------------
    -- 
Step3create item and set to associated storage
    
----------------------------------------------------------
    
set xact_abort on
begin transaction
    
    
declare @NewItemID     bigint
    
declare @Serial64    bigint
    set 
@NewItemID     0
    set 
@Serial64    0
    exec 
@NewItemID _STRG_ALLOC_ITEM_NoTX @Serial64 OUTPUT
    
if (@NewItemID 0)
    
begin
        rollback transaction
        select 
-7cast(as bigint), cast(as bigint)
        return
    
end
    
if (@MagParamNum 0)
    
begin
        update _Items set RefItemID 
= @RefItemIDOptLevel = @OptLvlVariance = @VarianceData = @DataMagParamNum 0Serial64 = @Serial64 
        where ID64 
= @NewItemID
    end
    
else
    
begin
        update _Items set RefItemID 
= @RefItemIDOptLevel = @OptLvlVariance = @VarianceData = @DataMagParamNum = @MagParamNum
                
MagParam1 = @MagParam1MagParam2 = @MagParam2MagParam3 = @MagParam3MagParam4 = @MagParam4,
                
MagParam5 = @MagParam5MagParam6 = @MagParam6MagParam7 = @MagParam7MagParam8 = @MagParam8,
                
MagParam9 = @MagParam9MagParam10= @MagParam10MagParam11 = @MagParam11MagParam12 = @MagParam12Serial64 = @Serial64
        where ID64 
= @NewItemID
    end
    
if (@@error <> 0)
    
begin
        rollback transaction
        select 
-8cast(as bigint), cast(as bigint)
        return
    
end
    
if (@TargetStorage 0)
        
update _Inventory set ItemID = @NewItemID where CharID = @OwnerID and Slot = @empty_slot
    
else if (@TargetStorage 1)
        
update _chest set ItemID = @NewItemID where UserJID = @OwnerID and slot = @empty_slot
    
else if (@TargetStorage 2)
        
update _guildchest set ItemID = @NewItemID where guildid = @OwnerID and slot = @empty_slot
    
else
        
update _InventoryForAvatar set ItemID = @NewItemID where CharID = @OwnerID and Slot = @empty_slot
    
    
if (@@rowcount or @@error <> 0)
    
begin
        rollback transaction
        select 
-9cast(as bigint), cast(as bigint)
        return
    
end
    
    commit transaction
    select 
@empty_slot, @NewItemID, @Serial64
    
return 
PHP Code:
USE [SRO_VT_SHARD]
GO
/****** Object:  StoredProcedure [dbo].[_SMC_EDIT_ITEM]    Script Date: 04/17/2014 18:51:30 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE 
[dbo].[_SMC_EDIT_ITEM]  
----------------------------------------------------- 
params to find target item  
 
@TargetStorage int,   /* 0 = inventory, 1 = chest, 2 = guild chest, 3 = Avatar Inventory */  
 
@OwnerName varchar(128),  /* account id or char id */  
 
@Slot  int,  
 @
ItemIDToEdit bigint,   /* just for check validity */  
 
----------------------------------------------------- params to modify the item  
 
@RefItemID int,  
 @
OptLvl  tinyint,  
 @
Variance bigint,  
 @
Data  int,  
 @
szCreater varchar(32),  
 @
MagParamNum int,  
 @
MagParam1 bigint,  
 @
MagParam2 bigint,  
 @
MagParam3 bigint,  
 @
MagParam4 bigint,  
 @
MagParam5 bigint,  
 @
MagParam6 bigint,  
 @
MagParam7 bigint,  
 @
MagParam8 bigint,  
 @
MagParam9 bigint,  
 @
MagParam10 bigint,  
 @
MagParam11 bigint,  
 @
MagParam12 bigint  
as  
 ----------------------------------------------------  
 -- 
step 1. check validity of parameters  
 
----------------------------------------------------  
 if (@
TargetStorage <> and @TargetStorage <> and @TargetStorage <> and @TargetStorage <> 3)  
 
begin  
  select 
--- invalid target storage  
  
return  
 
end  
 
declare @ownerid int  
 
declare @ItemID bigint  
 set 
@ownerid 0  
 set 
@ItemID 0  
 
if (@TargetStorage 0)  
 
begin  
  select 
@ownerid charid from _char where charname16 = @OwnerName  
  
if (@@rowcount or @ownerid or @ownerid is null)  
  
begin  
   select 
--- can't find owner  
   return  
  end  
  select @ItemID = ItemID from _inventory where charid = @ownerid and slot = @slot  
 end  
 else if (@TargetStorage = 1)  
 begin  
  select @ownerid = JID from _AccountJID where AccountID = @ownername  
  if (@@rowcount = 0 or @ownerid = 0 or @ownerid is null)  
  begin  
   select -2 -- can'
t find owner  
   
return  
  
end  
  select 
@ItemID itemid from _chest where userjid = @ownerid and slot = @slot  
 end  
 
else if (@TargetStorage 2)  
 
begin  
  select 
@ownerid = [idfrom _guild where [name] = @ownername  
  
if (@@rowcount or @ownerid or @ownerid is null)  
  
begin  
   select 
--- can't find owner  
   return  
  end  
  select @ItemID = itemid from _guildchest where guildid = @ownerid and slot = @slot  
 end  
 else  
 begin  
  select @ownerid = charid from _char where charname16 = @OwnerName  
  if (@@rowcount = 0 or @ownerid = 0 or @ownerid is null)  
  begin  
   select -2 -- can'
t find owner  
   
return  
  
end  
  select 
@ItemID ItemID from _InventoryForAvatar where charid = @ownerid and slot = @slot  
 end  
  
 
if (@itemID or @itemid is null)  
 
begin  
  select 
--- can't find the item  
  return  
 end  
 if (@itemid <> @ItemIDToEdit)  
 begin  
  select -4 -- it'
s not the one that you wanna edit  
  
return   
 
end  
 
declare @tid1 int  
 
declare @tid2 int  
 select 
@tid1 TypeID1, @tid2 TypeID2 from _RefObjCommon with(nolockwhere ID = @RefItemID  
 
if (@tid1 <> 3)  
 
begin  
  select 
--- about to assign non-item object  
  
return  
 
end  
 
if (@tid2 <> 1)  -- is equipment  
 begin  
  
-- can't assign magic param or optlevel to non-equip item  
  if (@MagParamNum > 0 or @OptLvl > 0)  
  begin  
   select -6  
   return  
  end  
 end  
   
 ----------------------------------------------------  
 -- step 2. correct some non-critical parameters  
 ----------------------------------------------------  
 if (LEN(@szCreater) = 0)  
  set @szCreater = NULL  
   
 ----------------------------------------------------  
 -- step 3. modify target item to desired values  
 ----------------------------------------------------  
 if (@MagParamNum = 0)  
 begin  
  update _Items   
  set RefItemID = @RefItemID, OptLevel = @OptLvl, Variance = @Variance, Data = @Data, CreaterName = @szCreater, MagParamNum = 0   
  where id64 = @ItemID  
 end  
 else  
 begin  
  update _Items   
  set  RefItemID = @RefItemID, OptLevel = @OptLvl, Variance = @Variance, Data = @Data, CreaterName = @szCreater, MagParamNum = @MagParamNum,  
   MagParam1 = @MagParam1, MagParam2 = @MagParam2, MagParam3 = @MagParam3, MagParam4 = @MagParam4,  
   MagParam5 = @MagParam5, MagParam6 = @MagParam6, MagParam7 = @MagParam7, MagParam8 = @MagParam8,  
   MagParam9 = @MagParam9, MagParam10 = @MagParam10, MagParam11 = @MagParam11, MagParam12 = @MagParam12  
  where id64 = @ItemID  
 end  
    
 if (@@error <> 0 or @@rowcount = 0)  
 begin  
  select -7  
  return  
 end  
 select 1  
 return 
Certus is offline  
Thanks
8 Users
Old 04/20/2014, 19:02   #2
Chat Killer In Duty


 
PortalDark's Avatar
 
elite*gold: 5
Join Date: May 2008
Posts: 16,397
Received Thanks: 6,509
#Approved
PortalDark is offline  
Old 04/20/2014, 23:44   #3
 
elite*gold: 41
Join Date: Oct 2012
Posts: 2,216
Received Thanks: 1,196
good job
thanks
Crue* is offline  
Old 04/21/2014, 18:44   #4
 
lepitismak's Avatar
 
elite*gold: 0
Join Date: Oct 2007
Posts: 479
Received Thanks: 63
this is for max plus?
lepitismak is offline  
Old 04/21/2014, 19:01   #5
 
Justin1337*'s Avatar
 
elite*gold: 480
Join Date: Jan 2012
Posts: 655
Received Thanks: 579
Thankes.
Justin1337* is offline  
Thanks
1 User
Old 04/21/2014, 19:06   #6
 
elite*gold: 0
Join Date: Dec 2011
Posts: 498
Received Thanks: 190
Quote:
Originally Posted by lepitismak View Post
this is for max plus?
yes if u success a item +12 > +13 u get dc and ur item optlevel is changed back to +12

if u wanna change the max + edit the red numbers

Quote:
IF (@Operation = 90 AND @strDesc like '%Opt: +13%')
BEGIN
UPDATE SRO_VT_SHARD.dbo._Items SET OptLevel = 12 WHERE Serial64 = @ItemSerial
END
Certus is offline  
Old 04/21/2014, 20:55   #7
 
bestprem's Avatar
 
elite*gold: 0
Join Date: Nov 2011
Posts: 353
Received Thanks: 199
Old but keep it up xD
bestprem is offline  
Old 04/22/2014, 00:27   #8
 
Mr.gotsha's Avatar
 
elite*gold: 0
Join Date: Feb 2013
Posts: 84
Received Thanks: 15
Good Job
Mr.gotsha is offline  
Old 04/22/2014, 03:20   #9
 
lepitismak's Avatar
 
elite*gold: 0
Join Date: Oct 2007
Posts: 479
Received Thanks: 63
even with adv elixir?
and only takes into account the real optlevel item?
+12 plus this is the only item without adv or the final value?

Example 1:
Normal +10 +2 +12 = adv, its ok!

Example 2:
Normal +12 +2 +14 = adv, get dc?


how i can active this?
give me skype
lepitismak is offline  
Old 04/22/2014, 04:26   #10
 
elite*gold: 0
Join Date: Dec 2011
Posts: 498
Received Thanks: 190
Quote:
Originally Posted by lepitismak View Post
even with adv elixir?
and only takes into account the real optlevel item?
+12 plus this is the only item without adv or the final value?

Example 1:
Normal +10 +2 +12 = adv, its ok!

Example 2:
Normal +12 +2 +14 = adv, get dc?


how i can active this?
give me skype
ADV is not an optlevel so Example 2


Quote:
Originally Posted by bestprem View Post
Old but keep it up xD
jup incomprehensible that guys still have a program wich exec. UPDATE _Items SET OptLevel = 12
every 60 secs
Certus is offline  
Old 04/23/2014, 06:58   #11
 
elite*gold: 0
Join Date: May 2013
Posts: 1,447
Received Thanks: 1,046
Code:
if (@Operation = 90)  
   begin  
   set @len_desc1 = CHARINDEX (']',@strDesc) 
  if(@len_desc1 = 9)  
     begin
     set @strDesc = SUBSTRING(@strDesc,0,9)
     set @strDesc_separado = SUBSTRING(@strDesc, 8, 1)
    end
   else if(@len_desc1 = 10)
        begin
        set @strDesc = SUBSTRING(@strDesc,0,1.)
        set @strDesc_separado = SUBSTRING(@strDesc, 8, 2)
        end
        if(@strDesc_separado > 12)
        begin
        UPDATE SRO_VT_SHARD.dbo._Items SET OptLevel = 12 WHERE Serial64 = @ItemSerial
return -3
END

I don't know how you will get disconnected without the return -3 but anyway this will work too.. if(@strDesc_separado > 12) if plus of item is above 12..
Anonymous-6723 is offline  
Old 04/23/2014, 19:18   #12
 
elite*gold: 0
Join Date: Dec 2011
Posts: 498
Received Thanks: 190
Quote:
Originally Posted by Zed* View Post
Code:
if (@Operation = 90)  
   begin  
   set @len_desc1 = CHARINDEX (']',@strDesc) 
  if(@len_desc1 = 9)  
     begin
     set @strDesc = SUBSTRING(@strDesc,0,9)
     set @strDesc_separado = SUBSTRING(@strDesc, 8, 1)
    end
   else if(@len_desc1 = 10)
        begin
        set @strDesc = SUBSTRING(@strDesc,0,1.)
        set @strDesc_separado = SUBSTRING(@strDesc, 8, 2)
        end
        if(@strDesc_separado > 12)
        begin
        UPDATE SRO_VT_SHARD.dbo._Items SET OptLevel = 12 WHERE Serial64 = @ItemSerial
return -3
END

I don't know how you will get disconnected without the return -3 but anyway this will work too.. if(@strDesc_separado > 12) if plus of item is above 12..
RETURN -3 isnt working for _AddLogItem and till now i dont know why, i try to find a force dc.

and btw ur query wont work cuz there are so many dif. Descīs



the best and fastest way to update a >12 Optlevel is this

Code:
IF (@Operation = 90)
BEGIN
DECLARE @OptLevel INT = (SELECT OptLevel from SRO_CH_SHARD.dbo._Items WHERE Serial64 = @ItemSerial)
	IF (@OptLevel > 12)
	BEGIN
	UPDATE SRO_CH_SHARD.dbo._Items SET OptLevel = 12 WHERE Serial64 = @ItemSerial)
	END
END
Certus is offline  
Old 05/21/2014, 07:26   #13
 
elite*gold: 0
Join Date: Jul 2009
Posts: 32
Received Thanks: 0
sory but where procedured to add this ?
jambovt05 is offline  
Old 05/21/2014, 07:35   #14
 
Royalblade*'s Avatar
 
elite*gold: 85
Join Date: Feb 2014
Posts: 1,056
Received Thanks: 1,644
Quote:
Originally Posted by Zed* View Post
Code:
if (@Operation = 90)  
   begin  
   set @len_desc1 = CHARINDEX (']',@strDesc) 
  if(@len_desc1 = 9)  
     begin
     set @strDesc = SUBSTRING(@strDesc,0,9)
     set @strDesc_separado = SUBSTRING(@strDesc, 8, 1)
    end
   else if(@len_desc1 = 10)
        begin
        set @strDesc = SUBSTRING(@strDesc,0,1.)
        set @strDesc_separado = SUBSTRING(@strDesc, 8, 2)
        end
        if(@strDesc_separado > 12)
        begin
        UPDATE SRO_VT_SHARD.dbo._Items SET OptLevel = 12 WHERE Serial64 = @ItemSerial
return -3
END

I don't know how you will get disconnected without the return -3 but anyway this will work too.. if(@strDesc_separado > 12) if plus of item is above 12..
Return -3 wont DC the char. _AddLogXXX are asynchronous queries, there is a callback at the end, however, they don't matter.

To limit plusing:
Code:
	IF @Operation = 90 AND @dwData >= 655369 -- Change here depending on whats required.
		UPDATE SRO_VT_SHARD.dbo._Items SET OptLevel = 9 WHERE Serial64 = @ItemSerial64
That's all you have to add in _addLogItem.
It will limit the fusing to +9 max. For a +10 limit put this number: 720906, +11 = 786443, +12 = 851980, +13 = 917517, +14 = 983054


also change the @ItemSerial64 variable name.. its different than that. @RefSerial64 or shit like that probably. dont remember.

Anyways, why do you fuckers write 20 lines when only 2 lines are needed... Don't just go and drain performance whenever you can.
Royalblade* is offline  
Old 05/21/2014, 19:52   #15
 
Lisias's Avatar
 
elite*gold: 20
Join Date: Mar 2014
Posts: 68
Received Thanks: 14
Quote:
Anyways, why do you ******* write 20 lines when only 2 lines are needed...
HAHAHHAHA I can not stop laughing
Lisias is offline  
Reply




All times are GMT +1. The time now is 07:14.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.