Siga-nos em...
Follow us on Twitter Follow us on Facebook Watch us on YouTube
Registro

Alpha Servers
Resultados 1 a 1 de 1
  1. #1

    Avatar de SrNooB
    Data de Ingresso
    Oct 2010
    Localização
    BackTrack Linux
    Idade
    34
    Posts
    66
    Agradecido
    6
    Agradeceu
    4
    Peso da Avaliação
    16

    Padrão Cabal Sistema de Resets Por Query Automatico

    Bom galera antes de tudo olá a todos.

    Bom vamos começa primeiro vo ensinar a configurar o sistema de resetes

    Observe o codigo abaixo :

    Código PHP:
    ALTER TABLE [dbo].[cabal_character_table]
    ADD
    [Reset] [int] NULL DEFAULT (0)
    GO

    /****** Object: Stored Procedure dbo.cabal_sp_newchar Script Date: 2008-4-14 5:52:37 ******/
    if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[get_cabal_character_ex]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
    drop procedure [dbo].[get_cabal_character_ex]
    GO


    /****** Object: Stored Procedure dbo.get_cabal_character_ex Script Date: 2008-4-14 5:52:47 ******/
    CREATE PROCEDURE [dbo].[get_cabal_character_ex](@CHARACTERIDX int, @CHANNELIDX int, @USERIP char(16)) AS
    BEGIN
    SET NOCOUNT ON
    BEGIN TRAN
    -- CHARACTER
    DECLARE @logout_time datetime, @login_time datetime, @OldRestTime AS int, @RestTime AS int
    DECLARE
    @
    CH_WORLDIDX INT,
    @
    CH_POSITION INT,
    @
    CH_LEV INT,
    @
    CH_EXP BIGINT,
    @
    CH_STR INT,
    @
    CH_DEX INT,
    @
    CH_INT INT,
    @
    CH_PNT INT,
    @
    CH_RANK INT,
    @
    CH_ALZ BIGINT,
    --@
    CH_ALZ_XORED BIGINT,
    @
    CH_STYLE INT,
    @
    CH_FLAGS INT,
    @
    CH_HP INT,
    @
    CH_MP INT,
    @
    CH_SP INT,
    @
    CH_SWDPNT INT,
    @
    CH_MAGPNT INT,
    @
    CH_RANKEXP INT,
    @
    CH_PENALTYEXP INT,
    @
    CH_WARPBFIELD INT,
    @
    CH_MAPSBFIELD INT,
    @
    CH_NAME VARCHAR(50),
    @
    CH_RP INT,
    @
    CH_REPUTATION INT,
    @
    CH_PKPENALTY INT,
    @
    CH_NATION TINYINT,
    @
    CRAFTLEVEL0 INT,
    @
    CRAFTLEVEL1 INT,
    @
    CRAFTLEVEL2 INT,
    @
    CRAFTLEVEL3 INT,
    @
    CRAFTLEVEL4 INT,
    @
    CRAFTEXP0 INT,
    @
    CRAFTEXP1 INT,
    @
    CRAFTEXP2 INT,
    @
    CRAFTEXP3 INT,
    @
    CRAFTEXP4 INT,
    @
    CRAFTFLAGS VARBINARY(16),
    @
    RESERVED1 BIGINT



    SELECT
    @CH_WORLDIDX = WORLDIDX,
    @
    CH_POSITION = POSITION,
    @
    CH_LEV = LEV,
    @
    CH_EXP = EXP,
    @
    CH_STR = STR,
    @
    CH_DEX = DEX,
    @
    CH_INT = INT,
    @
    CH_PNT = PNT,
    @
    CH_RANK = RANK,
    @
    CH_ALZ = ALZ,
    --@
    CH_ALZ_XORED = RESERVED1,
    @
    CH_STYLE = STYLE,
    @
    CH_FLAGS = FLAGS,
    @
    CH_HP = HP,
    @
    CH_MP = MP,
    @
    CH_SP = SP,
    @
    CH_SWDPNT = SWDPNT,
    @
    CH_MAGPNT = MAGPNT,
    @
    CH_RANKEXP = RANKEXP,
    @
    CH_PENALTYEXP = PENALTYEXP,
    @
    CH_WARPBFIELD = WARPBFIELD,
    @
    CH_MAPSBFIELD = MAPSBFIELD,
    @
    CH_NAME = NAME,
    @
    CH_RP = isnull(RP, 0),
    @
    CH_REPUTATION = REPUTATION,
    @
    CH_PKPENALTY = PKPENALTY,
    @
    CH_NATION = NATION,
    @
    logout_time = LOGOUTTIME,
    @
    RESERVED1 = RESERVED1
    FROM CABAL_CHARACTER_TABLE with
    (nolock)
    WHERE CHARACTERIDX = @CHARACTERIDX

    --------------------------------------------------------------------------------------------------------------------------------------------
    --
    -- 
    Reset System
    -- Author: SrNooB
    -- MSite: ---------
    --
    --------------------------------------------------------------------------------------------------------------------------------------------
    DECLARE
    @
    MaxLevel int,
    @
    ResetPoint int,
    @
    AlzReq bigint,
    @
    STR_ int,
    @
    DEX_ int,
    @
    INT_ int,
    @
    HP_ int,
    @
    MP_ int,
    @
    WorldIdx_ int,
    @
    Position_ int,
    @
    ClassReset_ int,
    @
    SPPoint int,
    @
    resetlimit int,
    @
    reset int

    -- Basic Config
    --------------------------------------------------------------------------------------------------------------------------------------------
    SET @MaxLevel = 185 -- Level for reset
    SET 
    @resetlimit = 310 -- Level for reset
    SET 
    @ResetPoint = 120 -- Point for add after reset
    SET 
    @SPPoint = 25000 -- Point for add after reset
    SET 
    @AlzReq = 2000000 -- Alz required for reset
    -- this jedi trick get the class from the colum. Based on
    SET 
    @ClassReset_ = (select ((((@CH_STYLE % 67108864) % 131072) % 8192) % 256) - (( convert(int, round(convert(float, ((((@CH_STYLE % 67108864) % 131072) % 8192) % 256)) / convert(float, 8), 0)) - 1) * 8))
    -- 
    getting the reset number
    set 
    @reset= (select reset from cabal_character_table where CharacterIdx=@CHARACTERIDX)


    IF(@
    reset<=@resetlimit)
    BEGIN
    -- Class Config
    --------------------------------------------------------------------------------------------------------------------------------------------
    --
    Warrior

    IF(@ClassReset_=9)
    BEGIN
    SET 
    @STR_ = 300 -- STR after you reset
    SET 
    @DEX_ = 100 -- DEX after you reset
    SET 
    @INT_ = 100 -- INT after you reset
    SET 
    @HP_ = 3276850 -- HP after you reset
    SET 
    @MP_ = 1310740 -- MP after you reset
    SET 
    @WorldIdx_ = 1 -- You will born in this world
    SET 
    @Position_ = 1376293 -- Coordenate ???
    END

    --wizard

    ELSE IF(@ClassReset_=11)
    BEGIN
    SET 
    @STR_ = 3 -- STR after you reset
    SET 
    @DEX_ = 6 -- DEX after you reset
    SET 
    @INT_ = 200 -- INT after you reset
    SET 
    @HP_ = 135647 -- HP after you reset
    SET 
    @MP_ = 22937921 -- MP after you reset
    SET 
    @WorldIdx_ = 2 -- You will born in this world
    SET 
    @Position_ = 4915405 -- Coordenate ???
    END

    --blader

    ELSE IF(@ClassReset_=10)
    BEGIN
    SET 
    @STR_ = 200 -- STR after you reset
    SET 
    @DEX_ = 200 -- DEX after you reset
    SET 
    @INT_ = 3 -- INT after you reset
    SET 
    @HP_ = 3276851 -- HP after you reset
    SET 
    @MP_ = 13107 -- MP after you reset
    SET 
    @WorldIdx_ = 2 -- You will born in this world
    SET 
    @Position_ = 4915405 -- Coordenate ???
    END

    --forcer archer

    ELSE IF(@ClassReset_=4 OR @ClassReset_=12)
    BEGIN
    SET 
    @STR_ = 6 -- STR after you reset
    SET 
    @DEX_ = 12 -- DEX after you reset
    SET 
    @INT_ = 200 -- INT after you reset
    SET 
    @HP_ = 2621480 -- HP after you reset
    SET 
    @MP_ = 2293795 -- MP after you reset
    SET 
    @WorldIdx_ = 3 -- You will born in this world
    SET 
    @Position_ = 10485821 -- Coordenate ???
    END

    --forcer shielder

    ELSE IF(@ClassReset_=5 OR @ClassReset_=13)
    BEGIN
    SET 
    @STR_ = 200 -- STR after you reset
    SET 
    @DEX_ = 9 -- DEX after you reset
    SET 
    @INT_ = 150 -- INT after you reset
    SET 
    @HP_ = 2949165 -- HP after you reset
    SET 
    @MP_ = 1966110 -- MP after you reset
    SET 
    @WorldIdx_ = 1 -- You will born in this world
    SET 
    @Position_ = 1376293 -- Coordenate ???
    END

    --forcer blader

    ELSE IF(@ClassReset_=6 OR @ClassReset_=14)
    BEGIN
    SET 
    @STR_ = 120 -- STR after you reset
    SET 
    @DEX_ = 11 -- DEX after you reset
    SET 
    @INT_ = 120 -- INT after you reset
    SET 
    @HP_ = 2949165 -- HP after you reset
    SET 
    @MP_ = 1966110 -- MP after you reset
    SET 
    @WorldIdx_ = 3 -- You will born in this world
    SET 
    @Position_ = 10485821 -- Coordenate ???
    END



    IF (@CH_LEV = @MaxLevel)
    BEGIN
    UPDATE cabal_character_table
    SET LEV 
    = 1, EXP = 0, STR = @STR_, DEX = @DEX_, INT = @INT_, SP= @SPPoint * (@reset + 1), PNT = @ResetPoint * (@reset + 1),
    HP = @HP_, MP = @MP_, Alz = Alz - @AlzReq, WorldIdx = @WorldIdx_,
    Position = @Position_, Reset = @reset + 1
    WHERE LEV 
    = @MaxLevel AND Alz >= @AlzReq AND Login = 0 AND CharacterIdx=@CHARACTERIDX
    END
    END

    ---------------------------------------------------------------------------------------------------------
    -- 
    End reset system
    ---------------------------------------------------------------------------------------------------------

    SELECT
    @CH_WORLDIDX = WORLDIDX,
    @
    CH_POSITION = POSITION,
    @
    CH_LEV = LEV,
    @
    CH_EXP = EXP,
    @
    CH_STR = STR,
    @
    CH_DEX = DEX,
    @
    CH_INT = INT,
    @
    CH_PNT = PNT,
    @
    CH_RANK = RANK,
    @
    CH_ALZ = ALZ,
    --@
    CH_ALZ_XORED = RESERVED1,
    @
    CH_STYLE = STYLE,
    @
    CH_FLAGS = FLAGS,
    @
    CH_HP = HP,
    @
    CH_MP = MP,
    @
    CH_SP = SP,
    @
    CH_SWDPNT = SWDPNT,
    @
    CH_MAGPNT = MAGPNT,
    @
    CH_RANKEXP = RANKEXP,
    @
    CH_PENALTYEXP = PENALTYEXP,
    @
    CH_WARPBFIELD = WARPBFIELD,
    @
    CH_MAPSBFIELD = MAPSBFIELD,
    @
    CH_NAME = NAME,
    @
    CH_RP = isnull(RP, 0),
    @
    CH_REPUTATION = REPUTATION,
    @
    CH_PKPENALTY = PKPENALTY,
    @
    CH_NATION = NATION,
    @
    logout_time = LOGOUTTIME,
    @
    RESERVED1 = RESERVED1
    FROM CABAL_CHARACTER_TABLE with
    (nolock)
    WHERE CHARACTERIDX = @CHARACTERIDX
    IF @@ROWCOUNT = 0
    BEGIN
    SELECT 
    -1
    COMMIT TRAN
    RETURN
    END
    IF @logout_time is NULL
    BEGIN
    SET 
    @logout_time = getdate()
    END
    SET 
    @login_time = getdate()
    SET @RestTime = DATEDIFF( minute, @logout_time, @login_time)
    SET @CH_RP = @CH_RP + @RestTime
    IF(@CH_RP > 10080)
    BEGIN
    SET 
    @CH_RP = 10080
    END
    UPDATE CABAL_CHARACTER_TABLE SET
    RP 
    =@CH_RP,
    LOGINTIME=@login_time,
    LOGOUTTIME=@login_time,
    CHANNELIDX=@CHANNELIDX
    WHERE CHARACTERIDX 
    = @CHARACTERIDX

    -- EQUIPMENT
    DECLARE
    @
    EQ_DATA VARBINARY(512)

    SELECT
    @EQ_DATA = DATA
    FROM CABAL_EQUIPMENT_TABLE
    WHERE CHARACTERIDX 
    = @CHARACTERIDX

    IF @@ROWCOUNT = 0
    BEGIN
    INSERT INTO CABAL_EQUIPMENT_TABLE
    VALUES
    (@CHARACTERIDX, 0X)
    SET @EQ_DATA = 0X
    END
    -- INVENTORY
    DECLARE
    @
    IV_DATA VARBINARY(4096)

    SELECT
    @IV_DATA = DATA
    FROM CABAL_INVENTORY_TABLE
    WHERE CHARACTERIDX 
    = @CHARACTERIDX

    IF @@ROWCOUNT = 0
    BEGIN
    INSERT INTO CABAL_INVENTORY_TABLE
    VALUES
    (@CHARACTERIDX, 0X)
    SET @IV_DATA = 0X
    END
    -- SKILLLIST
    DECLARE
    @
    SK_DATA VARBINARY(512)

    SELECT
    @SK_DATA = DATA
    FROM CABAL_SKILLLIST_TABLE
    WHERE CHARACTERIDX 
    = @CHARACTERIDX

    IF @@ROWCOUNT = 0
    BEGIN
    INSERT INTO CABAL_SKILLLIST_TABLE
    VALUES
    (@CHARACTERIDX, 0X)
    SET @SK_DATA = 0X
    END
    -- QUICKSLOT
    DECLARE
    @
    QK_DATA VARBINARY(256)

    SELECT
    @QK_DATA = DATA
    FROM CABAL_QUICKSLOT_TABLE
    WHERE CHARACTERIDX 
    = @CHARACTERIDX

    IF @@ROWCOUNT = 0
    BEGIN
    INSERT INTO CABAL_QUICKSLOT_TABLE
    VALUES
    (@CHARACTERIDX, 0X)
    SET @QK_DATA = 0X
    END

    -- Blessing Bead
    DECLARE
    @
    BBEAD_DATA VARBINARY(512)

    SELECT
    @BBEAD_DATA = DATA
    FROM CABAL_BBEAD_TABLE
    WHERE CHARACTERIDX 
    = @CHARACTERIDX

    IF @@ROWCOUNT = 0
    BEGIN
    INSERT INTO CABAL_BBEAD_TABLE
    VALUES
    (@CHARACTERIDX, 0X)
    SET @BBEAD_DATA = 0X
    END

    -- QUESTDATA
    DECLARE
    @
    QE_DATA VARBINARY(128),
    @
    QE_FLAGS VARBINARY(128)

    SELECT
    @QE_DATA = DATA,
    @
    QE_FLAGS = FLAGS
    FROM CABAL_QUESTDATA_TABLE
    WHERE CHARACTERIDX 
    = @CHARACTERIDX

    IF @@ROWCOUNT = 0
    BEGIN
    INSERT INTO CABAL_QUESTDATA_TABLE
    VALUES
    (@CHARACTERIDX, 0X, CONVERT(BINARY(64), 0))
    SET @QE_DATA = 0X
    SET 
    @QE_FLAGS = CONVERT(BINARY(64),0)
    END
    -- QDDATA
    DECLARE
    @
    QD_FLAGS VARBINARY(128)

    SELECT
    @QD_FLAGS = FLAGS
    FROM CABAL_QDDATA_TABLE
    WHERE CHARACTERIDX 
    = @CHARACTERIDX

    IF @@ROWCOUNT = 0
    BEGIN
    INSERT INTO CABAL_QDDATA_TABLE
    VALUES
    (@CHARACTERIDX,CONVERT(BINARY(32),0))


    SET @QD_FLAGS = CONVERT(BINARY(32),0)
    END

    SELECT 
    @CRAFTLEVEL0 = LEVEL0,
    @
    CRAFTLEVEL1 = LEVEL1,
    @
    CRAFTLEVEL2 = LEVEL2,
    @
    CRAFTLEVEL3 = LEVEL3,
    @
    CRAFTLEVEL4 = LEVEL4,
    @
    CRAFTEXP0 = EXP0,
    @
    CRAFTEXP1 = EXP1,
    @
    CRAFTEXP2 = EXP2,
    @
    CRAFTEXP3 = EXP3,
    @
    CRAFTEXP4 = EXP4,
    @
    CRAFTFLAGS = FLAGS
    FROM CABAL_CRAFT_TABLE
    WHERE CHARACTERIDX 
    = @CHARACTERIDX

    IF @@ROWCOUNT = 0
    BEGIN
    INSERT INTO CABAL_CRAFT_TABLE 
    ( CHARACTERIDX ) VALUES ( @CHARACTERIDX )

    SELECT @CRAFTLEVEL0 = LEVEL0,
    @
    CRAFTLEVEL1 = LEVEL1,
    @
    CRAFTLEVEL2 = LEVEL2,
    @
    CRAFTLEVEL3 = LEVEL3,
    @
    CRAFTLEVEL4 = LEVEL4,
    @
    CRAFTEXP0 = EXP0,
    @
    CRAFTEXP1 = EXP1,
    @
    CRAFTEXP2 = EXP2,
    @
    CRAFTEXP3 = EXP3,
    @
    CRAFTEXP4 = EXP4,
    @
    CRAFTFLAGS = FLAGS
    FROM CABAL_CRAFT_TABLE
    WHERE CHARACTERIDX 
    = @CHARACTERIDX
    END

    SELECT
    @CH_WORLDIDX,
    @
    CH_POSITION,
    @
    CH_LEV ,
    @
    CH_EXP,
    @
    CH_STR,
    @
    CH_DEX,
    @
    CH_INT,
    @
    CH_PNT,
    @
    CH_RANK,
    @
    CH_ALZ,
    --@
    CH_ALZ_XORED,
    @
    CH_STYLE,
    @
    CH_FLAGS,
    @
    CH_HP,
    @
    CH_MP,
    @
    CH_SP,
    @
    CH_SWDPNT,
    @
    CH_MAGPNT,
    @
    CH_RANKEXP,
    @
    CH_PENALTYEXP,
    @
    CH_WARPBFIELD,
    @
    CH_MAPSBFIELD,
    @
    CH_NAME,
    @
    CH_RP,
    @
    CH_REPUTATION,
    @
    CH_PKPENALTY,
    @
    CH_NATION,
    @
    EQ_DATA,
    @
    IV_DATA,
    @
    SK_DATA,
    @
    QK_DATA,
    @
    BBEAD_DATA,
    @
    QE_DATA,
    @
    QE_FLAGS,
    @
    QD_FLAGS,
    @
    CRAFTLEVEL0,
    @
    CRAFTLEVEL1,
    @
    CRAFTLEVEL2,
    @
    CRAFTLEVEL3,
    @
    CRAFTLEVEL4,
    @
    CRAFTEXP0,
    @
    CRAFTEXP1,
    @
    CRAFTEXP2,
    @
    CRAFTEXP3,
    @
    CRAFTEXP4,
    @
    CRAFTFLAGS,
    @
    RESERVED1
    COMMIT TRAN
    SET NOCOUNT OFF
    END
    GO 
    Nessa parte do sistema de reset

    Informação
    -- Basic Config
    --------------------------------------------------------------------------------------------------------------------------------------------
    SET @MaxLevel = 185 -- Level for reset << AKI É ONDE VC CONFIGURA O LVL DE RESETAR
    SET @resetlimit = 310 -- Level for reset<< AKI É ONDE VC CONFIGURA O MAXIMO DE RESETES
    SET @ResetPoint = 120 -- Point for add after reset << AKI VC CONFIGURA OS PTS POR RESET
    SET @SPPoint = 25000 -- Point for add after reset<< AKI É ONDE VC CONFIGURA SP APÓS RESET
    SET @AlzReq = 2000000 -- Alz required for reset<< AKI CONFIGURA TANTO DE ALZ PARA RESETA


    Configure como qiser.

    Após configurar como desejado abra o query e cole o codigo do sistema de resetes inteiro na database --Gamedb.
    [Obs: Após modificado ao seu gosto claro]

    Depois aperte F5, claro para o char resetar vocÊ vai ter que mudar o lvl maximo do server para o mesmo level que o char irá resetar o lvl maximo do server fica dentro do 'common.ini' modifique os 2 common os 'COMMON.INI' é encontrado no WinSCP
    'etc/cabal/data/'
    Após configurar os common e salvalos de restart no server ou reboot pronto vocÊ tera um sistema de resetes .

    Para o char resetar você precisa sair da conta por 1 minuto.

    Link de download do codigo de resetes : [Somente usuários registrados podem vem os links. ]


    Bom espero que tenhao entendido certinho tudo

    Creditos Pelo Sistema de resetes: SrNooB e SrPoWeR
    Última edição por SrNooB; 31-10-2010 às 01:40 AM.
    [CENTER]
    Informação
    **O Mundo e um Sistema de Informações** *Mas O Prego que se destaca e sempre martelado !* Hidden Content

    Mensagem de moderação:
    Somente usuários VIPs podem ter links direcionados para seus sites. Por favor, leia as regras do fórum... by chris05

 

 

Informações de Tópico

Usuários Navegando neste Tópico

Há 1 usuários navegando neste tópico. (0 registrados e 1 visitantes)

Tópicos Similares

  1. |Pedido| Query de Adicionar resets a todas as contas
    Por KaKaRoToX no fórum Jobs e Querys
    Respostas: 3
    Último Post: 30-11-2013, 02:21 AM
  2. |Resolvido| Query Resets
    Por Zard no fórum Tópicos Resolvidos
    Respostas: 0
    Último Post: 24-11-2012, 01:13 AM
  3. |Pedido| Query/Trigger/JOB de Resets / Horas online
    Por Poower_Mix no fórum Pedidos
    Respostas: 3
    Último Post: 15-08-2012, 05:05 PM
  4. |Pedido| Query desban automatico p/ painel FusionTeam.
    Por Victor_ScB no fórum Arquivos MuOnline
    Respostas: 5
    Último Post: 11-07-2010, 11:48 PM

Marcadores

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • Você não pode enviar respostas
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •