Auto Reset
Autor: NewVicio | Publicado: 2011-10-25T07:12:00-07:00

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   :[ 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 VIPset @MaxLevel = 349 -- Level ao qual poderá resetarset   @PontosReset = 300 -- Pontos que ganhará por reset (Pontos vezes Resets)set   @ZenReq = 50000000 -- Zen requerido para resetarset @Forca = 30 -- Ponto   padrão de força que ira retornar após resetarset @Agilidade = 30 -- Ponto   padrão de agilidade que ira retornar após resetarset @Vitalidade = 30 --   Ponto padrão de vitalidade que ira retornar após resetarset @Energia = 30 --   Ponto padrão de energia que ira retornar após resetar--   Contas VIPset @MaxLevelVIP = 299 -- Level ao qual poderá resetarset   @PontosResetVIP = 400 -- Pontos que ganhará por reset (Pontos vezes   Resets)set @ZenReqVIP = 20000000 -- Zen requerido para resetarset   @ForcaVIP = 100 -- Ponto padrão de força que ira retornar após resetarset   @AgilidadeVIP = 100 -- Ponto padrão de agilidade que ira retornar após   resetarset @VitalidadeVIP = 100 -- Ponto padrão de vitalidade que ira   retornar após resetarset @EnergiaVIP = 100 -- Ponto padrão de energia que   ira retornar após resetar--   Execução do comando SQL (Não mexer)---- Contas não VIPUPDATE   CharacterSET   cLevel = 1,Experience = 0,LevelUpPoint = @PontosReset * (Resets +   1),Strength = @Forca,Dexterity = @Agilidade,Vitality =   @Vitalidade,Energy = @Energia,Money = Money - @ZenReq,Resets =   Resets + 1FROM   CharacterJOIN MEMB_STAT ON Character.AccountID=MEMB_STAT.memb___id COLLATE   Latin1_General_CS_ASJOIN MEMB_INFO ON   Character.AccountID=MEMB_INFO.memb___id COLLATE Latin1_General_CS_ASWHERE   cLevel &gt; (@MaxLevel - 1)AND Money &gt; (@ZenReq - 1)AND   MEMB_STAT.ConnectStat = 0AND MEMB_INFO.vip = 0AND Resets &lt;=   150--   Contas VIPUPDATE CharacterSET   cLevel = 1,Experience = 0,LevelUpPoint = @PontosResetVIP * (Resets +   1),Strength = @ForcaVIP,Dexterity = @AgilidadeVIP,Vitality =   @VitalidadeVIP,Energy = @EnergiaVIP,Money = Money -   @ZenReqVIP,Resets = Resets + 1FROM   CharacterJOIN MEMB_STAT ON Character.AccountID=MEMB_STAT.memb___id COLLATE   Latin1_General_CS_ASJOIN MEMB_INFO ON   Character.AccountID=MEMB_INFO.memb___id COLLATE Latin1_General_CS_ASWHERE   cLevel &gt; (@MaxLevelVIP - 1)AND Money &gt; (@ZenReqVIP - 1)AND   MEMB_STAT.ConnectStat = 0AND MEMB_INFO.vip = 1AND Resets &lt;=   1000
E aqui estão alguns comandos de QUERY:-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&gt;349Lvl 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 CharacterSET
 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___idcollate Latin1_general_CI_ASWHERE   clevel&gt;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 CharacterSET
 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___idcollate Latin1_general_CI_ASWHERE   clevel&gt;349 AND Memb_Stat.ConnectStat = 0 and Vip = 0 and   Money&gt;('0')
Auto Reset para Users Normais ( and Vip = 0 )   :Ganhando 350 pontos, Resetando lvl 350, Resetando   Itens                   
UPDATE CharacterSET   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=nullFROM Character   join Memb_Stat on Character.Accountid=Memb_Stat.memb___idcollate   Latin1_general_CI_ASWHERE clevel&gt;349 AND Memb_Stat.ConnectStat = 0 and   Vip = 0 and Money&gt;('0') 
Auto Reset para Usuários Vips ( and Vip = 1   ) : Ganhando 400 pontos, Resetando lvl 350
UPDATE CharacterSET
 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___idcollate Latin1_general_CI_ASWHERE   clevel&gt;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&gt;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.