[ALL]Aprendendo Sadscript [APROVADO]
+8
lemooca
lukasfkt
Yamito Sensei
Fenix
kakaroto
Lendário
Zeus
boasfesta
12 participantes
MMORPG Brasil :: OPEN SOURCE ENGINES :: Outras Engines :: Elysium :: Tutoriais
Página 1 de 1
[ALL]Aprendendo Sadscript [APROVADO]
Olá,
Trago o primeiro tutorial de script aqui da MMORPG Br
Eu fiz este tutorial, ele é para voce aprender sobre Sadscript, e tambem já aprende bastante sobre Hardcode do Visual Basic
Começando:
Obrigado, Bom aprendizado
[By: P-]
Trago o primeiro tutorial de script aqui da MMORPG Br
Eu fiz este tutorial, ele é para voce aprender sobre Sadscript, e tambem já aprende bastante sobre Hardcode do Visual Basic
Começando:
//:|Sadscript||::\\
..::Introdução::..
Sadscript é o baluarte de um Elysium jogo. É um simples mas poderoso recurso que pode controlar apenas sobre cada aspecto de seu jogo. Sim, é melhor HARDCODE o jogo, mas softcoding suas características facilita a edição e para não falar que nem todos têm Visual Basic.
Primeiro de tudo, gostaria de afirmar que é Sadscript infact VBSript. Tem todas as capabilties de VBscripting e com ele vem uma lista de comandos básicos para editar o seu leitor de caracteres. Vou listar os comandos para você em breve.
Mesmo Sadscript é uma ferramenta simples, as pessoas têm sido conhecidos para criar algumas coisas poderosas. Alguns exemplos de scripts são aqueles, como um sistema de Fora e Voltar para aqueles usuários que sempre precisam de sair da sala. E depois há o mais avançado scripts e alguns, como um sistema para seu tradeskill entediante trabalhadores ou mesmo um sistema de busca para os viajantes aventureiros.
..scriptando::..
(:GetPlayerInfos:)
As Player Info são as mais faceis, porem Tambem é muito Util para mostrar ao player quantas coisas ele tem, tanto para pegar e fazer uma conta, ou até para ver se ele passou de alguma regra.
No Sadscript, é muito usado o GetPlayerInfo, pois ele tem mais GetPlayerInfo do que no Visual Basic, porem se tivesse seria muito mais facil, pois o Sadscript seria ativado um código atravez de Textsay.
As GetPlayerInfo Existem diversas como:
=|>GetPlayerName (Pega o nome do jogador)
=|>GetPlayerAccount (Pega a account do Player)
=|>GetPlayerLevel (Pega o Level do Player)
=|>GetPlayerSprite (Pega a Sprite do Player)
=|>GetPlayerAccess (Pega o Access do player, Admin, GM, VIP, Player Free, Etc...)
=|>GetPlayerHelmetSlot (Pega o Item usado no Capacete do player)
=|>GetPlayerArmorSlot (Pega o Item Usado na Armadura do Player)
=|>GetPlayerWeaponSlot (Pega o Item Usado na Arma do Player)
=|>GetPlayerShieldSlot (Pega o Item Usado no Escudo do Player)
=|>GetPlayerSTR (Pega os Pontos de força do Player)
=|>GetPlayerDEF (Pega os Pontos de Defesa do Player)
=|>GetPlayerMAGI (Pega os Pontos de Inteligencia do Player)
=|>GetPlayerSPEED (Pega os Pontos de Velocidade do Player)
=|>GetPlayerPOINTS (Pega os pontos reservados para gastar)
=|>GetPlayerExp (Pega os Pontos de Experiencia do Player)
=|>GetPlayerMapX (Pega a cordenada X do mapa em que o player esta)
=|>GetPlayerMapY (Pega a Cordenada Y Do mapa em que o player esta)
=|>GetPlayerClass (Pega a Classe do Player)
=|>GetPlayerMap (Pega o mapa em que o player está)
=|>GetPlayerInvItemNum (Pega o numero do slot que tal item está)
=|>GetPlayerGuild (Pega a guild do player Se ele tiver)
=|>GetPlayerResets (Pega os resets do player, se voce tiver o comando de reset)
(:SetPlayerInfo:)
O Comando de Setar o player é como um Adicionar, Ele Ao invés de Ver a informação como o GetPlayerInfo, ele Adiciona
O Comando de SetPlayerInfo na verdade são os mesmo comandos que GetPlayerInfo, mas aon invés de Get é Set.
Aqui um Exemplo de SetPlayerInfo:
SetPlayerPOINTS (index, GetPlayerPOINTS + 1)
Explicando, ele adiciona 1 ponto nos pontos para adicionar
e para que serve o GetPlayerPOINTS?
Ou Seja, se colocassemos SetPlayerPOINTS(index, + 1) Ele retiraria o + e ficaria 1, Resultado:
Se o player tivesse 200 pontos, ele ficaria com 1
Por isso o GetPlayerPOINTS seria substituido pelos pontos que o player ja tem, Resultado:
Se ele tivesse 200 pontos, o Resultado seria assim:
SetPlayerPOINTS(Index, 200 + 1)
E Nenhum besta não seria burro o suficiente para não saber quanto é 200 + 1 --'
Mas e se não fosse 200?
O GetPlayerPOINTS como todo GetPlayerInfo , é um Variavel, Se não fosse Variavel, ele seria um numero só.
Por isso que serve o GetPlayerInfo, por que se ele não tiver aquilo, sairia outra coisa, Mas como ele é variavel, ele pega oque o Player Tem.
Isto é lógica, muito usada na programação de Visual Basic, E para aqueles que a cabeça entrou em parafuso tem mais uma explicação de lógica:
Alfredinho Falou para Maria Que Joãozinho tinha comprado 4 laranjas.
Mas ele não sabe se Joãozinho comprou apenas 1.
Então se o Alfredinho tivesse perguntado a Joãozinho, ele saberia.
E o GetPlayerInfo é a mesma coisa, ele eprgunta ao player quanto ele tem e conta ao código.
Os SetPlayerInfo tem diversos comandos:
=|>SetPlayerName (Muda o nome do jogador)
=|>SetPlayerAccount (Muda a account do Player)
=|>SetPlayerLevel (Muda o Level do Player)
=|>SetPlayerSprite (Muda a Sprite do Player)
=|>SetPlayerAccess (Muda o Access do player, Admin, GM, VIP, Player Free, Etc...)
=|>SetPlayerHelmetSlot (Muda o Item usado no Capacete do player)
=|>SetPlayerArmorSlot (Muda o Item Usado na Armadura do Player)
=|>SetPlayerWeaponSlot (Muda o Item Usado na Arma do Player)
=|>SetPlayerShieldSlot (Muda o Item Usado no Escudo do Player)
=|>SetPlayerSTR (Muda os Pontos de força do Player)
=|>SetPlayerDEF (Muda os Pontos de Defesa do Player)
=|>SetPlayerMAGI (Muda os Pontos de Inteligencia do Player)
=|>SetPlayerSPEED (Muda os Pontos de Velocidade do Player)
=|>SetPlayerPOINTS (Muda os pontos reservados para gastar)
=|>SetPlayerExp (Muda os Pontos de Experiencia do Player)
=|>SetPlayerMapX (Muda a cordenada X do mapa em que o player esta)
=|>SetPlayerMapY (Muda a Cordenada Y Do mapa em que o player esta)
=|>SetPlayerClass (Muda a Classe do Player)
=|>SetPlayerMap (Muda o mapa em que o player está)
=|>SetPlayerInvItemNum (Muda o numero do slot que tal item está)
=|>SetPlayerGuild (Muda a guild do player Se ele tiver)
=|>SetPlayerResets (Muda os resets do player, se voce tiver o comando de reset)
(:Dims:)
Uma Dim é usada como se fosse interpretado
Para voce fazer um código Dim voce deve escrever
Dim (Letra de interpretação, Exemplo : i)
Dim i
Após isso voce presisa mostrar oque ele interpretara
Exemplo
i = "Eu"
O "Eu" é uma String ou seja, não é um código pois esta entre aspas
Mas voce pode entrepetar por algo como por exemplo o código GetPlayerName(index)
Dim i
i = GetPlayerName(index)
A dim serve para muitas coisas, tanto para abreviar um código grande quanto para fazer códigos presisos.
Um código presiso que eu usei foi no sub UsingStatPoint
Ele tinha o comando PointQuant que é a quantidade de pontos
Tive que fazer os pontos quando usados, perder 10 veses a quantidade de pontos usados.
Então usei a Dim
Dim p
p = PointQuant * 10
o * significa no Vb, Multiplicação.
Então eu coloquei quando adiciona pontos eu colocquei no lugar de pointQuant, coloquei a dim P
Isto é sobre as Dims
(:Subs:)
O Principal é dividido em partes onde voce usara codigos
Tanto como voce pode criar novas subs, quando voce faz um código que é no lugar errado, ele não funciona, mas tambem depende se o sub tem algo como (TextSay etc...)
Então vou mostrar as Subs que ja vem no Principal
=|> Sub JoinGame(index)
*Quando voce entra no server quando fala o nome do jogo e MOTD
=|> Sub LeftGame(index)
*Quando entra no server falar boas vindas !
=|> Sub PlayerLevelUp(index)
*Quando o player Passa de level !
=|> Sub UsingStatPoints(index, PointType, PointQuant)
*Quando usa os pontos de status, PointType = Pontos, PointQuant = Quantidade de pontos usados
=|> Sub scriptedTile(index, script)
*Nessessário ter um script Sub feito.
=|> Sub PlayerPrompt(index, Prompt, Value)
*Perguntas ao player
=|> Sub Commands(index)
*Comandos, Que voce escreve no Text do chat e ele roda o comando
=|> Sub DropItems(index)
*Quando morrer dropar itens
=|> Sub OnDeath(index)
*Quando ele morrer o mapa que sera teleportado
(:Cor:)
Abrindo o Principal.txt voce ve os códigos de Cor de texto
Está cor de texto é usada em Msgs ou Etc...
Para usar uma cor é apenas ver o numero dela e colocar este numero.
(:Msg:)
As Mensagens do Principal são mandadas no Chat
Com elas pode se fazer muitas coisas
De informações a Alertas.
Existem 3 formas de Msgs:
=|> PlayerMsg
=|> GlobalMsg
=|> BattleMsg
A PlayerMsg é aquela que apenas o player pode ver, e ela aparece no chat
A GlobalMsg é aquela que todos os players podem ver e ela aparece no chat
A BattleMsg é aquela que aparece no canto do jogo, como Voce tirou tanto de danos no tal Monstro.
>Usando Msgs<
Para usar uma Msg Existe o comando
Call (MsgBox)
E então o resto dos códigos
Usando PlayerMsg
Call PlayerMsg(index, (Conteudo), Cor)
Usando GlobalMsg
Call GlobalMsg((Conteudo), Cor)
Usando BattleMsg
Call BattleMsg(index, (Conteudo), Cor, Local)
| 1 = Direita
Local => |
| 0 = Esquerda
(:GetVar e PutVar:)
A função GetVar é para pegar um arquivo do servidor, Voce a usa o seguinte.
GetVar( Arquivo, Seção do arquivo, Pergunta do arquivo)
A Função GetVar é para ler e PutVar para escrever
Esta função é usada por Arquivos .Ini, para quem sabe sobre isso, na Elysium O comando de ler e escrever INI é assim.
Obrigado, Bom aprendizado
[By: P-]
boasfesta- Membro Sênior
- Mensagens : 292
Re: [ALL]Aprendendo Sadscript [APROVADO]
Muito Bom Cara Parabéns pelo post ;]
Zeus- Membro Vitalicio
- Mensagens : 711
Re: [ALL]Aprendendo Sadscript [APROVADO]
Valeu ae Hehe
foi aprovado lá na MMODEV
Voce devia colocar uma seção de aprovados por aqui tambem
foi aprovado lá na MMODEV
Voce devia colocar uma seção de aprovados por aqui tambem
boasfesta- Membro Sênior
- Mensagens : 292
Re: [ALL]Aprendendo Sadscript [APROVADO]
o loko cara você num merece 1 de credito t umerece é mais de 100 mil pena que eu to com preguiça de clicar no + mas eu cliko mas serio adorei seu senso de humor "E para aqueles que a cabeça entrou em parafuso tem mais uma explicação de lógica:" muito bom uto mesmooooo vlw
Re: [ALL]Aprendendo Sadscript [APROVADO]
Muitooo otimo cara vlw estou estudando aki
+2 de cred!
+2 de cred!
lukasfkt- Membro
- Mensagens : 121
Re: [ALL]Aprendendo Sadscript [APROVADO]
muito bom msm, para quem nao sabe, basta vim aki estudar e aprender ^^
+1 cred
+1 cred
Re: [ALL]Aprendendo Sadscript [APROVADO]
Opa BoasFesta voltei e volteu com um tuturial muito ultil
Bem vindo cara
e otimo Tuturial
+1 CRED
Bem vindo cara
e otimo Tuturial
+1 CRED
Tópicos semelhantes
» Arquivo .TXT de Sadscript
» "Sistema" de casa por sadscript
» [ALL]Sistema de VIP (APROVADO)
» [ALL]Escolher raça (APROVADO)
» [C#] Aprendendo a declarar
» "Sistema" de casa por sadscript
» [ALL]Sistema de VIP (APROVADO)
» [ALL]Escolher raça (APROVADO)
» [C#] Aprendendo a declarar
MMORPG Brasil :: OPEN SOURCE ENGINES :: Outras Engines :: Elysium :: Tutoriais
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
Dom 08 Abr 2018, 18:40 por JorgeZinhoo002
» Ojkjeeeee
Seg 10 Out 2016, 23:19 por Frozen
» Naruto Great Ninja Batle
Dom 09 Out 2016, 14:29 por GuiinhoLP
» Recrutamento de um Designer para jogo de CDZ.
Sex 23 Set 2016, 18:37 por newbie123
» Serviços de suporte maker( Programação , Design , PixelArt ) E Vendas de Jogos
Qui 22 Set 2016, 20:11 por Eduardo
» Serviços de suporte maker( Programação , Design , PixelArt ) E Vendas de Jogos
Qui 22 Set 2016, 20:11 por Eduardo
» Serviços de suporte maker( Programação , Design , PixelArt ) E Vendas de Jogos
Qui 22 Set 2016, 20:09 por Eduardo
» Projeto Dbz
Qua 31 Ago 2016, 23:46 por 157
» Avaliação - Sprites Naruto
Qua 31 Ago 2016, 17:09 por 157
» [Sprites] DBZ (Plix)
Qua 31 Ago 2016, 14:13 por 157
» Super Pack - Bleach V.2
Qua 31 Ago 2016, 13:02 por 157
» [PEDIDO][PROJETO][RECRUTAMENTO] DYNISTYGAMES
Ter 30 Ago 2016, 10:04 por 157
» [PEDIDO][PROJETO][RECRUTAMENTO] DYNISTYGAMES
Ter 30 Ago 2016, 10:03 por 157
» [PEDIDO][PROJETO][RECRUTAMENTO] DYNISTYGAMES
Ter 30 Ago 2016, 10:02 por 157
» [Pedido] Contador de resets na FrmMain
Sáb 13 Ago 2016, 17:45 por killers97
» [Recrutamento]
Qua 10 Ago 2016, 23:09 por Monsters
» Ajuda erro no Cliente e Servidor do EEB 2.6!
Qua 20 Jul 2016, 19:53 por Binholx
» Como criar tilesets para Eclipse Origins 3.0 (POKÉMON)
Qua 29 Jun 2016, 19:46 por Sir Aaron
» Recursos Pokemons
Qua 29 Jun 2016, 19:34 por Sir Aaron
» erro frm flash
Qua 25 maio 2016, 13:51 por vava123
» Pedido - Pack de star wars
Qui 19 maio 2016, 05:06 por edsonpet
» [Ajuda] Sobre como por o servidor on por ip fixo
Ter 17 maio 2016, 16:14 por vava123
» Illusion Dimension - O Misterio do ID: BETA TESTE ONLINE
Sex 06 maio 2016, 20:02 por LksFlorencio
» [NSME] Naruto Shinobi Maker Engine
Qua 23 Mar 2016, 15:11 por luana1457
» Script /base,/casa Igual DBZ Forces
Dom 21 Fev 2016, 07:34 por JorgeZinhoo002
» [Pedido]Colar Tsunade item sprite eclipse origin
Qui 21 Jan 2016, 07:38 por lawllietbr
» [Pedido] Elysium
Sáb 19 Dez 2015, 11:31 por luana1457
» Naruto - Recruta
Ter 15 Dez 2015, 18:40 por Uchiha ~
» [Avaliação] - Kirito from Sword Art Online; Red and Pikachu from Pokemon.
Qua 25 Nov 2015, 13:43 por Thanakii
» [Avaliação] - Kenpachi Zaraki from Bleach; Libra Shiryu From Saint Seiya.
Qua 25 Nov 2015, 12:55 por Thanakii
» Demonstração de Sprites (Á VENDA!)
Qua 25 Nov 2015, 12:40 por Thanakii
» [Sistema de Reset]Para Eclipse .
Ter 24 Nov 2015, 16:51 por VithorUchi
» Cada Guild Nascer em Certo Mapa
Qui 12 Nov 2015, 06:13 por fabiofeijó_HIT
» Dragon Ball z Fusion A Grande Volta
Qui 29 Out 2015, 15:17 por fabiofeijó_HIT
» Ajuda com Ip fixo
Seg 26 Out 2015, 16:07 por GalaxyHells15
» Como Fazer um GUI no Eclipse Origins
Dom 18 Out 2015, 22:10 por Jeanleee
» Shisui Susanoo
Dom 18 Out 2015, 20:23 por Jeanleee
» Fantasy Art Online
Dom 18 Out 2015, 16:41 por daviih123
» Ajuda !!
Seg 05 Out 2015, 12:13 por andersonzika
» como passar o usuário e senha para o MainMenu?
Seg 28 Set 2015, 22:03 por Bëzerk
» Ru time ero 13 Type mismatch
Seg 28 Set 2015, 09:08 por andredarle
» Jarvis 1.3 Download
Qua 23 Set 2015, 18:42 por soares125
» [Avaliação/Disponibilização]Árvore 64x64
Qua 23 Set 2015, 15:15 por Over~
» Mlk's Zikas Signatures
Ter 22 Set 2015, 21:15 por Aikawa Reborn'
» Pedido de Sistemas
Dom 20 Set 2015, 18:05 por cleyton_05
» [AjudaEEB]Gerador de EXP
Qua 16 Set 2015, 14:04 por Over~
» [Avaliar] Base, Humano e Goblin.
Seg 14 Set 2015, 22:51 por .iBlaz3.
» Fabrica do Tio Cronos!
Dom 13 Set 2015, 21:31 por [ADM]Cronos
» [PixelArt] Minion - Meu malvado favorito
Dom 13 Set 2015, 12:51 por [ADM]Cronos
» [Avaliar] Goku Dragon Ball Z
Qua 05 Ago 2015, 21:36 por Setrux