Auto Reset - CENTRAL MEGA
Image and video hosting by TinyPic

Image and video hosting by TinyPic

30 de abr. de 2010

Auto Reset

Fazendo Auto Reset

1º Va em SLQ Server Enterprise Manager.
2º Va em Databases, Muonline e Tables.
3º Na tabela Character Click com botão direito, Design Table.
4º Va até o ultimo campo (collun name) escrito e crie um chamado Reset ou Resets.
5º Colunname = Reset ou Reset, DataType = int , Default value = 4 , e desmarque a ultima opção, em Default Value digite (0), salve e feche.
6º Agora em Management.
7º Va em SQL Server Agent.
8º Va em Jobs, e click com botão direito e NewJob.
9º Va em General coloque um nome como AutoReset.
10º Depois vai em Steps.
11º New em Steps em "name" coloque AutoReset tambem.
12º Va em Type deixe Transact-SQL Script (TSQL).
13º Em Database selecione MuOnline.
14º No Command coloque o seguinte codigo :

Baixe os Codigos em um Documento de Texto:
[Download]

[ 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

E aqui estão alguns comandos de QUERY:

CODE
-- Tornar uma conta VIP
UPDATE MEMB_INFO SET vip=1 WHERE memb___id='nome_da_conta'
-- Tornar uma conta Não VIP
UPDATE MEMB_INFO SET vip=0 WHERE memb___id='nome_da_conta'
-- Listar todas a contas VIP
SELECT memb___id FROM MEMB_INFO WHERE vip=1
-- Listar todas a contas Não VIP
SELECT memb___id FROM MEMB_INFO WHERE vip=0

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

15º Depois clique em Parse e de OK.
16º Va para Schedules.
17º Em New Sechedule coloque tambem la AutoReset.
18º Depois clique em Change.
19º Na primeira parte selecione Daily e deixe em Every 1 day(s).
20º Depois selecione em baixo Occurs every e troque Hour(s) por Minute(s).
21º Duration selecione a data atual do dia e de ok.

22º Agora e so finalizar dando Aplicar e OK.
23º Pronto está feito AUTORESET.

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


Nenhum comentário:

Postar um comentário