Registre-se E fique Por Dentro Das Novidades Do Site e Seja Mais Um Membro Seja Um Membro e Ajude Nois A Crese

Participe do fórum, é rápido e fácil

Registre-se E fique Por Dentro Das Novidades Do Site e Seja Mais Um Membro Seja Um Membro e Ajude Nois A Crese

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

    AULA PRA COLOCA AUTO RESET

    Breno_Arthur
    Breno_Arthur
    Admin
    Admin


    Mensagens : 87
    Pontos : 26243
    Data de inscrição : 05/12/2010
    Idade : 29
    Localização : Aracaju-se

    AULA PRA COLOCA AUTO RESET Empty AULA PRA COLOCA AUTO RESET

    Mensagem por Breno_Arthur Ter Dez 28, 2010 6:29 am

    1º Va em SLQ Server Enterprise Manager.
    2º Va em Databases, Muonline e Tables, na tabela Character Click com botão direito, Design Table.
    3º Va até o ultimo campo (collun name) escrito e crie um chamado Reset,
    Colunname = Reset
    DataType = int
    Default value = 1

    4º Agora em Management, va em SQL Server Agent., va em Jobs, e click com botão direito e NewJob.
    5º Va em General coloque um nome como AutoReset. depois vai em Steps, New em Steps em "name" coloque AutoReset tambem, va em Type deixe Transact-SQL Script (TSQL).
    6º Em Database selecione MUOnline, no Command coloque o seguinte codigo :
    ---------------------------------------------------------------------------------------------------------------------------------------------
    [[ [ Auto Reset Para Vip na table MEMB_INFO ]


    -- =============================================
    -- Reset não acumulativo (Pontos x Resets) + VIP
    --=============================================
    --
    -- Definindo as variaveis (Não mexer)
    declare
    @MaxLevel int,
    @PontosReset int,
    @ZenReq int,
    @Forca int,
    @Agilidade int,
    @Vitalidade int,
    @Energia int,
    @MaxLevelVIP int,
    @PontosResetVIP int,
    @ZenReqVIP int,
    @ForcaVIP int,
    @AgilidadeVIP int,
    @VitalidadeVIP int,
    @EnergiaVIP int

    -- Definindo valor das variaveis (Configure conforme necessário)
    --
    -- Contas não VIP
    set @MaxLevel = 349 -- Level ao qual poderá resetar
    set @PontosReset = 300 -- Pontos que ganhará por reset (Pontos vezes Resets)
    set @ZenReq = 50000000 -- Zen requerido para resetar
    set @Forca = 30 -- Ponto padrão de força que ira retornar após resetar
    set @Agilidade = 30 -- Ponto padrão de agilidade que ira retornar após resetar
    set @Vitalidade = 30 -- Ponto padrão de vitalidade que ira retornar após resetar
    set @Energia = 30 -- Ponto padrão de energia que ira retornar após resetar

    -- Contas VIP
    set @MaxLevelVIP = 299 -- Level ao qual poderá resetar
    set @PontosResetVIP = 400 -- Pontos que ganhará por reset (Pontos vezes Resets)
    set @ZenReqVIP = 20000000 -- Zen requerido para resetar
    set @ForcaVIP = 100 -- Ponto padrão de força que ira retornar após resetar
    set @AgilidadeVIP = 100 -- Ponto padrão de agilidade que ira retornar após resetar
    set @VitalidadeVIP = 100 -- Ponto padrão de vitalidade que ira retornar após resetar
    set @EnergiaVIP = 100 -- Ponto padrão de energia que ira retornar após resetar

    -- Execução do comando SQL (Não mexer)
    --
    -- Contas não VIP
    UPDATE Character

    SET cLevel = 1,
    Experience = 0,
    LevelUpPoint = @PontosReset * (Resets + 1),
    Strength = @Forca,
    Dexterity = @Agilidade,
    Vitality = @Vitalidade,
    Energy = @Energia,
    Money = Money - @ZenReq,
    Resets = Resets + 1

    FROM Character
    JOIN MEMB_STAT ON Character.AccountID=MEMB_STAT.memb___id COLLATE Latin1_General_CS_AS
    JOIN MEMB_INFO ON Character.AccountID=MEMB_INFO.memb___id COLLATE Latin1_General_CS_AS

    WHERE cLevel > (@MaxLevel - 1)
    AND Money > (@ZenReq - 1)
    AND MEMB_STAT.ConnectStat = 0
    AND MEMB_INFO.vip = 0
    AND Resets <= 150

    -- Contas VIP
    UPDATE Character

    SET cLevel = 1,
    Experience = 0,
    LevelUpPoint = @PontosResetVIP * (Resets + 1),
    Strength = @ForcaVIP,
    Dexterity = @AgilidadeVIP,
    Vitality = @VitalidadeVIP,
    Energy = @EnergiaVIP,
    Money = Money - @ZenReqVIP,
    Resets = Resets + 1

    FROM Character
    JOIN MEMB_STAT ON Character.AccountID=MEMB_STAT.memb___id COLLATE Latin1_General_CS_AS
    JOIN MEMB_INFO ON Character.AccountID=MEMB_INFO.memb___id COLLATE Latin1_General_CS_AS

    WHERE cLevel > (@MaxLevelVIP - 1)
    AND Money > (@ZenReqVIP - 1)
    AND MEMB_STAT.ConnectStat = 0
    AND MEMB_INFO.vip = 1
    AND Resets <= 1000

    ---------------------------------------------------------------------------------------------------------------------------------------------
    Mudando o Código:

    ---------------------------------------------------------------------------------------------------------------------------------------------
    LevelUpPoint= 300*Reset
    Significa que os pontos por reset vão ser definidos assim:
    300 multiplicado pelo numero de resets atuais.

    Strength= ('20') , Dexterity= ('20') , Vitality= ('20') , Energy= ('20')
    Isso são os atributos que o char recomeça, ou seja, esse char recomeçaria com 20 pontos em todos os atributos (skills).

    WHERE clevel>349
    Lvl de Reset ( deixe -1 do lvl desejado ), nesse ele resetaria no 350.

    [[ [ Auto Reset Para Vip na table Character ]

    Auto Reset para GM's

    UPDATE Character
    SET clevel=('50'), Experience=('0'),Money=Money-('0'), Reset=Reset+1, Strength=('32500'), Dexterity=('26000'), Vitality=('32500'), Energy=('32500')
    FROM Character join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
    collate Latin1_general_CI_AS
    WHERE clevel>349 AND Vip = 8 AND Memb_Stat.ConnectStat = 0

    Auto Reset para Usuários Normais ( and Vip = 0 ) :Ganhando 350 pontos, Resetando lvl 350

    UPDATE Character
    SET clevel=('1'), Experience=('0'),Money=Money-('0'),LevelUpPoint=350+350*Reset, Reset=Reset+1,Strength=('30'), Dexterity=('30'), Vitality=('30'),Energy=('30')
    FROM Character join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
    collate Latin1_general_CI_AS
    WHERE clevel>349 AND Memb_Stat.ConnectStat = 0 and Vip = 0 and Money>('0')


    Auto Reset para Users Normais ( and Vip = 0 ) :Ganhando 350 pontos, Resetando lvl 350, Resetando Itens

    UPDATE Character
    SET clevel=('1'), Experience=('0'),Money=Money-('0'),LevelUpPoint=350+350*Reset, Reset=Reset+1,
    Strength=('30'), Dexterity=('30'), Vitality=('30'),Energy=('30'), Inventory=null, MagicList=null
    FROM Character join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
    collate Latin1_general_CI_AS
    WHERE clevel>349 AND Memb_Stat.ConnectStat = 0 and Vip = 0 and Money>('0')

    Auto Reset para Usuários Vips ( and Vip = 1 ) : Ganhando 400 pontos, Resetando lvl 350

    UPDATE Character
    SET clevel=('1'), Experience=('0'),Money=Money-('0'),LevelUpPoint = 400+400*Reset, Reset=Reset+1, Strength=('50'), Dexterity=('50'), Vitality=('50'), Energy=('50')
    FROM Character join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
    collate Latin1_general_CI_AS
    WHERE clevel>349 AND Vip = 1 AND Memb_Stat.ConnectStat = 0

    Auto Reset para Qualquer Usuário Acumulativo : Resetando lvl 350 Acumulativo

    UPDATE Character
    SET clevel= ('1') , experience= ('0')
    WHERE clevel>349

    -----------------------------------------------------------------------------------------------------------------------------------------------
    7º Depois clique em Parse e de OK, va para Schedules.

    8º Em New Sechedule coloque tambem la AutoReset, depois clique em Change, na primeira parte selecione Daily e deixe em Every 1 day(s).

    9º Depois selecione em baixo Occurs every e troque Hour(s) por Minute(s), Duration selecione a data atual do dia e de ok.

    10º Agora e so finalizar dando Aplicar e OK.

    11º Sempre de Start no SQL Server Agent, e deixe como auto start para facilitar.

      Data/hora atual: Sex Abr 19, 2024 2:09 am