Pequeno Tutorial BÁSICO de Scripting em Sphere 55i.
Neste primeiro guia, tentarei explicar o BÁSICO para quem
deseja começar a scriptar, e que não tem A MENOR IDÉIA
de como começar.
REGRAS
BÁSICAS:
Para
Entender a maioria dos scripts, você precisa conhecer o seguinte,
não é apenas isto, mas vai dar para você entender
a maioria dos scripts simples.
[xxxxxxxx]
- Inicio de um Script, Todos os itens de sphere devem ter este cabeçalho.
Ele indica ao sphere as informações que terão
após ele.
é
o valor de xxx. Ex.: teste=10 ; teste2= . Isso diz que o teste2
é igual a 10, pois teste = 10.
SRC
- O Source, ou seja, a origem do evento, do jogador que inicia a
função.
TARG - Esse é o Target. Ou seja, o alvo.
ACT - O objeto ativo da função. Pode ser um item que
o SRC clicou etc.
CONT - O container. Muito usado em timers, Por ele ser um item,
o container dele é a pessoa que carrega ele.
LINK - Todos os objetos podem ter um link definido. Objetos linkados
são objetos associados uns aos outros.
Exemplos:
SRC.ACT : O objeto que o source deste evento ativou.
SRC.TARG.ACT: O objeto que foi alvo.
SRC.TART.ACT.LINK: O objeto do target será linkado.
O
último pode parecer meio confuso, apenas leia de novo e de
novo... Após isso, você pode verificar as informações
dos Objetos.
Objetos Podem ser Jogadores, Itens e NPCs. Caso você deseje
retornar o nome de algo que você colocou target, deverá
usar .
Para Setar a cor de um Item que você deu Duplo Click, você
pode usar o SRC.ACT.COLOR=xx, onde xx é o valor da cor.
ON=DCLICK
Isso
é Uma Trigger. Basicamente, As Triggers Definem O que vai
acontecer quando a ação é feita. Neste Caso,
Define-se o que irá acontecer, quando derem Duplo Click no
objeto.
Então Temos:
ON=@DLICK
Src.Message UOBrasil.Net Rlz
Return 1
Nesse
Caso, A Pessoa que Desse Duplo Click No Item, Falaria UOBrasil.Net
Rlz. Explicarei o Return Depois.
Com
Essas Informações, já dá para entender
o script de um item. Vamos ver um Exemplo:
[ITEMDEF
04105] <- Definição Antiga (51a), Inicio de um
Bloco. (ainda pode ser usado em Sphere 55)
DEFNAME=i_SCIMITAR_FORCE <-Nome da Definição.
ID=i_scimitar <-A Imagem do Item No Jogo.
NAME=Scimitar of Force <-Nome do Item No Jogo.
RESOURCES=i_scimitar,3 i_enchant_weapon <- Recursos Para Fazer
Esse Item.
SKILLMAKE= 100.0 Blacksmithing <- Skill Para Fazer Esse Item.
DESCRIPTION=Scimitar
of Force <-Informacao Para o Axis
SUBSECTION=Magic Scimitars <-Informacao Para o Axis
CATEGORY=Provisions - Weapons – Magic <-Informacao Para
o Axis
ON=@Create
<- Trigger. Esta é Ativada Quando O Item é Criado.
COLOR=color_magic_weap <-cor do item (color_magic_weap é
uma definição de uma gama de cores. Olhe no Spheredefs.scp)
HITPOINTS={31 100} <- Durabilidade do Item. Neste caso será
Entre 31 e 100 Hitpoints.
ATTR=attr_magic <-O Atributo do Item. No caso aqui ele é
Mágico.
MOREY=60.0 <-O Morey Dessa Arma é definido 60.0.
Os
Arquivos:
A
melhor Maneira de Iniciar a Aprender, é Sem Dúvida,
Ler os Scripts q já vem com o próprio sphere.
Cada script trata de uma parte diferente, em Geral, Itens, NPCs
e Configurações.
As Alterações feitas neles necessitam de um Resync
(Digite R e Depois R Novamente no Console).
Alguns Casos Necessitam que o Servidor Seja Reiniciado.
Exemplos de Arquivos:
Spheretables:
Carregado Logo Após o sphere.ini, Este Arquivo Contém
Definições de Rates de Skills, Localizações
Iniciais,
Comandos de Players/Staffs, Títulos e Um Skillclass Básico.
Qualquer Alteração Feita nele Necessita Que o Servidor
Seja Reiniciado.
Spheretable_x:
Carregado Após o spheretables, Contém Informações
Sobre Magias e Dos Spawns Groups. Você não pode adicionar
Magias aqui,
mas pode Mudar os Efeitos Dela (Dano, Delay Etc.). Você Também
pode Adicionar Novos Spawns Gropus. Spawns Groups estão na
faixa de bloco 08xxx.
Para criar um Novo, Use o Próximo Numero Disponível,
Tanto faz, se for nesse arquivo ou Qualquer Outro.
Spheredefs:
Serve para definições de várias coisas, já
que o sphere internamente só trabalha com números.
Para Simplificar o Trabalho, Associa-se
Estes Números a Nomes. Definições de Monstros
e Objetos São Feitas Nos seus Próprios Scripts, Todas
as Outras, Estão Neste Arquivo (Cores, Flags, Types, Etc.).
Em Geral, Você não precisa alterar nada neste arquivo,
mas ele é uma ótima fonte de pesquisa, já que
a maioria das respostas para Duvidas Newbies, podem Ser Encontradas
aqui.
Spheremap:
Contém Todas as Áreas do Mapa. Elas podem ser modificadas
usando o AXIS.
Sphereregion:
Contém Eventos e Definições de Recursos (Logs,
Peixes, Etc)
Sphereskill:
Contém Basicamente, Os Menus de Crafting System, Aqueles
q você usa para fazer os itens de cada Skill. Em Outra Ocasião,
Abordaremos Este Arquivo Detalhadamente.
Começando:
Existem
Muitos Comandos Úteis Ingame. Podem Ser Usados Para Extrair
Informações (Debug).
.info
- Informações Sobre Itens Ou Npcs.
.edit/.xedit - Vê informações sobre todos os
itens Naquele Players Ou Npc (Timers, Armaduras, Bank, Tudo)
.show / .xshow -- Mostra uma Variável ou Uma tag.
Sempre
que se Quiser Fazer Um Target do comando (Para Ativá-lo em
Outra pessoa) usa-se o x antes. Exemplo:
.str 100 -- seta sua forca para 100
.xstr 100 -- seta a forca do target para 100 (pode ser você
mesmo também)
O
Comando Show é Muito Poderoso. Embaixo, Seguem Exemplos do
seu uso, Que Não São Apenas Esses, Mas, Dão
Uma Boa Noção de Como Começar.
.show
str -- Mostra Sua Forca
.xshow str -- Mostra a Forca do Target
.xshow tag.uobrasil -- Mostra o Valor da Tag uobrasil Caso Ela Exista.
.xshow link -- Mostra o Link do Objeto Especificado.
.xshow region.flags -- Mostra as Flags da Região em que o
Alvo se Encontra.
.xshow isgm -- Verifica de o Alvo é Gm. Retorna 1 ou 0 Para
Verdadeiro Ou Falso Respectivamente.
A
Partir de Agora, Você deverá Conseguir:
- Entender Scripts Simples
- Entender como o Sphere Categoriza Itens e NPCs
- Dizer em qual Arquivo o Sphere Guarda A Informação
Desejada.
- Obter Informações Básicas Com Comandos.
Dicas:
- Pegue o Axis, (temos ele aqui na parte Emuladores para download).
O Axis é Uma Ferramenta Muito Poderosa Para os Iniciantes.
- Cria um Arquivo .scp E comece a treinar, Use um Script Simples
Como:
[Itemdef
i_meu_robe]
ID=i_robe_gm
WEIGHT=10.0
Nome=Meu Robe de Gm
ON=@Create
ATTR=04
COLOR=0482
[EOF]
CONCLUSÃO:
Bem,
este foi meu Primeiro tutorial, claro, bem básico. Gosto
de começar do zero. Vale lembrar, que o Sphere ainda é
um emulador instável, e infelizmente, possui uma linguagem
de Script pobre em relação as outros emuladores, não
permitindo grandes coisas (amantes do sphere, não reclamem,
se vocês forem olhar o RunUO, verão o que eu digo).
Meu email está disponível para qualquer dúvida
que possa surgir.
Sugestões de próximos tutoriais, sugestões
de scripts para que eu explique, faça ou publique, serão
sempre bem-vindas.
Até
a próxima, espero ter ajudado.
|