Histórico de Curtidas
-
Kyosen deu reputação a rogylennon em Programando em C!!Primeiramente eu gostaria de falar um pouco mais de mim.
Faço faculdade de sistemas para internet, então sei html, css
C, tanto algoritmo em c, quanto Estrutura de Dados em C (é chato bagaraiii :X )
como eu tenho experiencia em C, gostaria de criar um tutorial de C, eu poderia
até mesmo fazer vídeo aulas se preferirem.
Bom....
Vamos começar do básico...
oque é a linguagem C, e de onde ela veio ????
C é uma linguagem de programação compilada de propósito geral, estruturada, imperativa,
procedural, padronizada pela ISO, criada em 1972, por Dennis Ritchie, no AT&T Bell Labs,
para desenvolver o sistema operacional Unix (que foi originalmente escrito em Assembly).
C é uma das linguagens de programação mais populares e existem poucas arquiteturas
para as quais não existem compiladores para C. C tem influenciado muitas outras linguagens de programação,
mais notavelmente C++, que originalmente começou como uma extensão para C.
C é uma linguagem imperativa e procedural, para implementação de sistemas. Seus pontos de design foram para ele ser compilado, fornecendo acesso de baixo nível àmemória e baixos requerimentos do hardware.
^
l
l FONTE : Wikipedia
l
Font : Wikipedia
Mas porque aprender C ?
Bem, primeiramente C é uma linguagem de baixo nivel, alem fazer você aprender
a lógica de programação de maneira eficiente e poderosa, ela também é uma
linguem de baixo nível, ou seja... ela pode ser aplicada em mecatrônica,
eletrônica, micro robôs e etc. Alem disso a Linguem C funciona para compilar TFS
e alterar algumas coisas ou criar algumas funções na mesma, sobre compilar
e mexer com o TFS, eu não posso dizer com total liberdade, pois não tenho experiencia
no assunto, mas é importante para abrir seu OTS!
Oque preciso para programar em C ?
Para programa em C você precisa de um compilador, dentre eles posso sugerir o Code BLocks,
o Visual Studio, ou o Dev C ++!!!
eu só não vou colocar os links aqui, porque estou com preguiça de colocar no verificador de virus
mas e só colocar no google "download Dev c ++" e da tudo certo
Meus objetivos:
Meus objetivos em si, é atualizar esse tutorial
trazendo conteúdo pelo menos a cada 1 semana e meia
se for da vontade de vocês posso criar um tuturial de HTML
ou CSS ai fica a escolha, se comentarem eu poderei saber oque fazer!
#AULA 1
Diz uma lenda que todo programador para ter sorte, seu primeiro programa deve ser o
Hello World! se a lenda é verdadeira ou não, não importa, vamos fazer esse programinha!
1- abra o seu compilador, no meu caso uso o DEV C ++
Va em "File" canto superior esquerdo, em seguida "new"
e depois "project".
Ira abrir uma janela, clique em "Console Aplication"
(desenho do computador) e circule o Radio Buttom escrito
"C Project", ira aparecer uma caixa pedindo que você salve
o projeto em alguma pasta de seu computador, selecione e vamos
programar!
2- bibliotecas
A linguagem C é subentendida como o próprio Assembler, ela
se converte em assembler e executa as funçoes, Assembler
é uma linguagem de programação de uso binario, ela indica onde
a energia do computador vai, e é a Linguagem de mais baixo nível
que eu conheço!
bom, a linguagem C possuí essas tais de bibliotecas, imagine que
para você fazer um programa simples, sem biblioteca, você ira fazer
na unha, como assimbler, utilizando 0 e 1, tudo no binário,
só que essas bibliotecas são como funções prontas, se você estiver utilizando elas
uma palavra que tem uma função, fica bem mais fácil de executar oque você quer ao invés
de você ter que digitar centenas de números para dar a mesma função, essas
bibliotecas ja vem com essas palavras prontas, e funções prontas para facilitar
a vida dos programadores, dessa forma ele só necessita saber oque aquela palavra
faz e sua sintaxe. Eu não sei exatamente se sem as bibliotecas você teria de escrever tudo
em assembler, talvez de erro e você nao consiga fazer nada, mas algumas funções você só
consegue implementando determinada função, pois aquela função fica em uma
biblioteca especifica!
Vamos incluir as blibliotecas em nosso programa então!!
#Include <stdio.h> ( o # é uma sintaxe, toda vez que for incluir bibliotecas devera usá-lo, STDI é o nome da biblioteca,
provavelmente deve ter algum significado porem eu não conheço, I O, vem de in e out, entrada e saída, ligado desligado
o H de header, ou cabeçalho, cabeçalho de códigos, e ligado desligado, de eletricidade básica, ou números binários, sim e não,
faz, ou não faz, comandos básicos de programação, que são, voce faz isso, ou voce nao faz isso! falso ou verdadeiro)
escreva também #Include<conio.h>
É interessante colocar uma biblioteca em cada linha, existe uma coisa entre os programadores chamado
identação, que é uma maneira de visualizar o código mais fácil, darei exemplos mais a frente...
3- Função Main!
Basicamente C é inglês, se você tiver um bom inglês, ajuda bastante
escreva abaixo da inclusão de bibliotecas pule duas linhas e escreva
void main(void){
o void significa que você esta dando um retorno vazio para a função, o main é a função principal, main do inglês significa principal,
é a parte principal do seu programa, a função principal, o (void) é o parâmetro vazio que você esta dando para a função.
a abertura de chaves, é para você poder colocar os códigos dentro da função ou seja, tudo que estiver dentro da abertura
e fechamento das chaves ira acontecer ( nao sei se o nome desse trem é chaves {} )
esse negocio de retorno vazio e parâmetro vazio, irei explicar mais a frente, pois é algo mais complexo, entao os primeiros programas
irão seguir esse padrao de void main () { se preferirem podem deixar () vazio que também funciona no DEV.
em seguida digite na linha de baixo
printf("HELLO WORLD"); -----> printf vem de print formated , que sinifica impressão formatada
esse comando o printf, serve para aparecer um texto em seu programa e formatá-lo, tudo nesse unico
comando!, a abertura e fechamento de parenteses é a sintaxe do codigo, la você poder chamar variaveis
e editar seu texto (explicarei melhor sobre variavel no proximo tutorial se vocês gostarem desse).
Aspas indica que tudo que você escreveu dentro das Aspas aparecera em seu programa!.
Ponto e virgula indica que o comando terminou, para ir para o próximo comando, nem sempre é usado
em todos comandos, explicarei com detalhe as asseçoes do ponto e virgula quando eu explicar
laços de repetição..
feito isso pule uma linha e escreva
getch(); ----> o getch significa get character ou pegue o caracter, ele vai esperar voce digitar algo para fazer oque estiver dentro do parenteses,
no caso eu coloquei parenteses vazio e utilizei o getch porque o programa vai ler o codigo, colocar na tela oque você escreveu
e sair do programa muito rapido, pois ele ja fez oque tinha que fazer, então ele automaticamente fecha o cmd.
como utilizei o getch, ele vai esperar você digitar algo, ele nao vai fazer nada com o caracter que capturar, porem só
depois de capturar o caracter ele vai sair desse comando, finalizar o programa e fechar o cmd, ou seja...
utilizei ele para eu poder ver oque digitei, e o programa só sai assim que eu apertar um caracter do meu teclado...
em seguida feche o programa utilizando as chaves de fechamento } (se ja tiver com as chaves aberta e fexado uma vez, nao precisa de outras chaves}
o programa devera ficar assim
l
l
v
#include <stdio.h>
#include <conio.h>
void main(void){
printf("HELLO WORLD!!");
getch();
}
após fazer isso clique em compilar, que no Dev que eu uso fica canto superior esquerdo, é um quadrado
de quatro quadrados, com cada um de uma cor, se você deixar o mouse em cima sem clicar, vai aparecer
o nome da aba, e é para estar escrito compile, outra maneira é apertando o ctrl + f9, em seguida
abrira uma janela que ira procurar os erros do programa em compilar. salve, espere comiplar e clique em close
em seguida aperte a aba que fica ao lado da aba compile, escrito run, ou clique ctrl + f10, e veja o reultado!!
bom pessoal por hoje é isso, espero que tenham gostado, e se tiverem duvidas ou sujestões me perguntem!!
peço por favor para quem gostou deiche um curtir, e se for utilizar meu tutorial em outro lugar, coloque meu nome
nos créditos pois deu um trabalhão escrever e editar isso, e o conteúdo é 100 % meu exceto a explicação
do que é C, que eu mesmo coloquei la referencia do wikipedia, mas é um trecho minusculo do meu texto hahahah
-
Kyosen deu reputação a Markin em Tutorial Básico CreaturescriptsVim trazer hoje um tutorial bem útil para quem esta aprendendo a linguagem lua.
Com a autorização do grande Jhon vou postar aqui um tópico desenvolvido por ele.
Tutorial Básico sobre CreatureScripts
CreatureScripts = São scripts que serão ativados após uma determinada ação criada pelo monstro ou personagem. Essas ações são determinadas como funções. Existem varias funções utilizadas para a criação de creaturescripts e estas são:
onDeath(cid, corpse, killer)-- que é executada ao morrer. onPrepareDeath(cid, lastHitKiller, mostDamageKiller) -- semelhante a onDeath. onAttack(cid, target) -- executa ao atacar. onCombat(cid, target) -- semelhante ao onAttack. onLogin(cid) -- executa ao logar. onLook(cid, thing, position, lookDistance) -- executa ao dar look. onAdvance(cid, skill, oldLevel, newLevel) -- executa ao upar skills/levels. onStatsChange(cid, attacker, type, combat, value) -- executa ao perder ou ganhar life/mana/condições. onLogout(cid) -- executa ao deslogar. onKill(cid, target, lastHit) -- executa ao matar. onThink(cid, interval) -- executa em determinado tempo. onJoinChannel(cid, channelId, users) -- executa ao entrar em um chat. onReceiveMail(cid, sender, item, openBox) -- executa ao receber um parcel/carta. onReportBug(cid, comment) -- executa ao reportar bug. Para criar esse tipo de script, primeiramente vai na pasta data/creaturescripts/scripts e duplica um arquivo e salve com "nomedesejado"; Agora você vai determinar que função você vai precisar para criação do seu script. Para exemplo vou usar a função "onAdvance"(ao upar). Neste exemplo, quando o player upar level 100 ele irá ganhar 1kk: 1 function onAdvance(cid, skill, oldLevel, newLevel) 2 if (getPlayerLevel(cid) == 100) then 3 doPlayerAddItem(cid, 2160, 100) 4 doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Parabéns, você ganhou 1kk por atingir level 100!") 5 doSendMagicEffect(getCreaturePosition(cid), 30) 6 end 7 return true 8 end Numerei as linhas para melhor entendimento, nos seus scripts vocês não devem numerar. linha 1 = Inicio da função onAdvance, essa linha recebe algumas informações do player que upou, como seu cid, seus skills o velho level e o novo level. Obs: cid = creature id, numero de identificação do player/monstro. linha 2 = Inicia-se um if onde verifica se o level do player é igual a 100. Se for verdadeiro, o script executa as linhas 3,4 e 5, senão pula direto a linha 6. linha 3 = Adiciona 100 itens com o id 2160 ao player. linha 4 = Manda uma mensagem parabenizando o player. linha 5 = Solta o efeito de numero 30, na posição em que o player esta. linha 6 = Finaliza a verificação do if. linha 7 = Retorna verdadeiro. Obs: sempre é necessario ela linha no final de seu código. linha 8 = Finaliza a função onAdvance. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Por fim para funcionamento do seu script é necessario adicionar 2 tags: 1º- No "data/creaturescripts/creaturescripts.xml" 2º- No arquivo "data/creaturescripts/scripts/login.lua", Obs: se o script que você for fazer for de função onLogin, não precisa adicionar a segunda tag. 1º Tag: Vai em data/creaturescripts/creaturescripts.xml e cole a tag: <event type="advance" name="QualquerNome" event="script" value="nomedesejado.lua"/> O type="" , será o nome da função de seu script após a palavra "on" e sempre tudo em minusculo. O name="", use qualquer nome porem esse nome vai ser usado para registrar no script onLogin na tag2. O value="", é o nome com qual você salvou seu script. Agora em data/creaturescripts/scripts/login.lua, sempre antes do último return true: registerCreatureEvent(cid, "QualquerNome")
QualquerNome é o name que você adicionou na tag1 do creaturescripts.xml.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Acho que é isso aew, espero ter ajudado a galera que esta iniciando.
Dica para criação de scripts:
Para melhor edição e organização use Notepad++: http://www.baixaki.c...ad/notepad-.htm
Sempre usar uma lista de funções como apoio: http://tibiaking.com...funcoes-em-lua/
E sempre pesquise por scripts prontos e tutoriais para ter uma base.
CREDITOS:
JHON pelo tutorial completo!
Anne por trazer ao TK.
-
Kyosen deu reputação a Drazyn1291 em Faço Scripts Para TodosAssim que eu estiver em meu pc eu faço pra ver!!!
-
Kyosen deu reputação a Fabianoll em [AJUDA] Como colocar uma nova Ball no poketibiaPara fazer uma ball para se capturada...
actions/scripts/catch
1 - Adicione a ball no cliente
2 - Configure no item xml e otb a ball
3 - Adicione o id da ball na função isPokeBall (arquivo data/lib/somefunctions.lua)
4 - Adicione o id do ball no actions.xml na parte de goback.
5 - Adicione o id da ball no movements.xml na parte do portrait
6 - Adicione no data/lib/configuration.lua na tabela "pokeballs', e em baixo ira aparecer isso:
7- Adicione o id do ball no actions.xml na parte de catch.
8 - Adiciona tbm no npc/scripts/heal.lua.
Exemplo no configuration.lua: Mesmo com heal.lua (npc/scripts/heal.lua)
["normal"] = {effect = 188, on = 11826, use = 11827, off = 11828, all = {11826, 11827, 11828}},
Onde está em vermelho vc coloca o efeito de goback da pokeball
Onde está em amarelo vc coloca a id da ball
Onde está em verde vc coloca a ball usada
Onde está em azul vc coloca a ball com o pokemon morto
Onde está em marrom vc altera ali na tabela dentro, colocando os ids da ball on,off e use
Não esquecendo é claro de trocar aonde tem escrito ["normal] pelo nome da sua ball.
npc/scripts/heal.lua
pesquise for balls = 1, 9
1, 9 - significa
[1] = {effect = 188, on = 11826, use = 11827, off = 11828, all = {11826, 11827, 11828}},
[2] = {effect = 191, on = 11829, use = 11830, off = 11831, all = {11829, 11830, 11831}},
[3] = {effect = 190, on = 11835, use = 11836, off = 11837, all = {11835, 11836, 11837}},
[4] = {effect = 189, on = 11832, use = 11833, off = 11834, all = {11832, 11833, 11834}},
[5] = {effect = 188, on = 11737, use = 11738, off = 11739, all = {11737, 11738, 11739}},
[6] = {effect = 189, on = 11740, use = 11741, off = 11742, all = {11740, 11741, 11742}},
[7] = {effect = 190, on = 11743, use = 11744, off = 11745, all = {11743, 11744, 11745}},
[8] = {effect = 191, on = 11746, use = 11747, off = 11748, all = {11746, 11747, 11748}},
[9] = {effect = 195, on = 12575, use = 12576, off = 12574, all = {12575, 12576, 12574}},
[10] = {effect = xxx, on = xxxxxx, use = xxxxxxx, off = xxxxxx, all = {xxxxx, xxxxx, xxxxx}},
serve para cura todas pokeball dentro da bag, se adc nova ball muda para for balls = 1, 10
3 - Adicione o id da ball na função isPokeBall (arquivo data/lib/somefunctions.lua)
essa parte:
function isPokeball(item)
if not item then return false end
if item >= 11826 and item <= 11837 then
return true
end
if item >= 11737 and item <= 11748 then
return true
end
add nova assim: EXEMPLO:
if item >= 12574 and item <= 12576 then estão adicionada 3 ball aqui 12574, 12575, 12576!
return true
end
Lembrando que quando for adicionar a ball no items.xml, coloque essa tag:
<attribute key="ispokeball" value="1"/>
ficando assim:
<item id="10974" article="a" name="Bulbasaur's pokeball">
<attribute key="ispokeball" value="1"/>
<attribute key="weight" value="100" />
<attribute key="slotType" value="feet" />
</item>
Não testei
-
Kyosen deu reputação a Orochi Elf em Catch Window v1.3[MOD] Catch Window v1.3
Bom.. todos conhecem a nova janela, que quando algum jogador captura um pokemon, que nunca capturou antes, abre na tela informando quantas pokebolas (PokeBalls, GreatBalls, SuperBalls e UltraBalls), o jogador gastou para capturar aquele pokemon, e mostra também quanto de experiencia o jogador ganhou por capturar aquele pokemon.
Instalação.
Por enquanto o PDA, é o único servidor que está adaptada no tópico, se alguém adaptar para outros servidores, e quiser compartilhar, será muito bem vindo. Obrigado
Pokemon Dash Advanced
Vá na pasta Lib / Catch System.lua, e procure por:
doAddPokemonInCatchList(cid, poke) E abaixo adicione:
CW_Count(cid, poke, typeee) CW_Caught(cid, poke) Agora procure por:
doIncreaseStatistics(poke, true, false) E abaixo adicione:
CW_Count(cid, poke, typeee) Agora, vá na pasta Lib / Crie um arquivo chamado "CatchWindow_lib.lua".
E dentro adicione -> Link Direto (PasteBin) <- Atualizado v1.3 !
Agora baixe o arquivo"CatcherWindow.rar", e extrai-a os arquivos dentro da pasta MODS da pasta do OTClient.
Editando...
No arquivo que voce colocou na LIB, tem uma tabela chamada "CW_Pokes", lá voce adiciona os pokemons e os configura.
["bulbasaur"] = {DB_Balls = 500001, DB_PK = 900001, ID_Portrait = 11989, P_Experience = 5000}, Legenda:
[NomeDoPokemon] = {DB_Balls = Numero da storage, que irá ficar salvo as balls usadas.
DB_Pk, Numero da storage, que irá ficar salvo se o pokemon foi capturado ou não.
ID_Portrait = Item ID do Portrait de cada pokemon
P_Experience = A quantidade de experiencia que o jogador irá ganhar ao capturar este pokemon.}
Vídeo:
https://www.youtube.com/watch?v=9ERSelYANFY&feature=youtu.be
Galera, eu estou com uma meta de conseguir 30 rep+ neste tópico, GO!
Créditos: Tony Araújo (OrochiElf) 100%
catcherWindow.rar
-
Kyosen deu reputação a Wuva em [PokeTibia] DarkBotBoa @Darkeyren !
Se precisar de ajuda pra mais alguma coisa no bot é só falar!
(Sim, eu criei conta nesse fórum só pra responder isso KKK)
Enjoy~
-
Kyosen deu reputação a Thayam em [TUTORIAL] Adicionando novos Pokémons em seu PDA com e sem Icon SystemBoa noite meus amigos do TK!
Hoje venho trazer uma vídeo aula que muitos me pediram sobre como adicionar novos pokémons no PDA que possui Icon System! (Funciona nos que não possuem Icon System tbm)
É um esquema bem simples, porém detalhista.
Basta seguir o passo a passo que você não terá problemas
http://youtu.be/AUlpi33gsgk
OBS: Desculpem, o vídeo ficou muito longo, mas acredito que para aqueles que estiverem com dúvidas, esse vídeo responderá quase tudo!
Edit:
Item Editor by EdMignari
Edit 2.0:
Esse é um vídeo do membro Dyego que será muito útil sobre como adicionar as sprites novas no seu Object Builder!Não deixem de conferir:
https://www.youtube.com/watch?v=WInmtmNFjTQ
Créditos:
xandeloko (pyrus OT)
Thayam (tutorial)
Skytew (há algum tempo atrás me deu umas dicas de como fazer algumas dessas coisas)
EdMignari (Item Editor usado no vídeo)
Dyego (Vídeo sobre como Adicionar Sprites)
-
Kyosen deu reputação a Skyforever em Desenterrando MortosOtimo script mais como o vodkart disse se colocasse um exhausted e uma chance de error ficaria melhor ainda
@EDIT
fiz um com chance e exhaust se alguem quiser
-
Kyosen deu reputação a Wakon em Erro ao Player upar de levelO tópico foi movido para a área correta, preste mais atenção da próxima vez!
Leia as regras do fórum: http://tibiaking.com/forum/topic/1281-regras-gerais/?p=7680
Este tópico foi movido:
De: "OTServ → Aprovação de Tópicos de Conteúdos"
Para: "OTServ → Suporte OTServ → Suporte de Servidores Derivados"
-
Kyosen deu reputação a kranzix em [Modern Acc] WebSite Otpokemon.com (2014) versão 1.0Iae pessoal blz?
*Sempre procurei um website igualzinho ao do otpokemon.com mas como nunca encontrei então tive a
iniciativa de montar um do "0" deu um trabalhozinho mas valeu a pena!!
+Aqui estão algumas imagens:
___________________________________________________________________________________________________________
Obs: No Otpokemon WebSite 1.0 as configuração do config.lua do seu servidor de poketibia so serão suportadas na versão criptografada Sha1 (Então altere para Sha1 e mysql) Não esqueça tambem de remover as linhas "----" do config.lua do seu servidor para evitar problemas futuros!. Desative o account manager do config.lua também pois se ele permanecer os irá bugar os char's e não vão poder logar no servidor.
A instalação é simples não precisa de senha de administrador, terão que mudar o acesso de pagina direto do banco de dados qualquer duvida comentem! Aconcelhado usar Xampp 1.7.7 pois não tive nenhum problema com ele! ___________________________________________________________________________________________________________
*Bom essa é a versão 1.0 então não está 100% igual ao website do otpokemon.com mas irei fazer o maximo
para que fique 100% igual.
- O WebSite é 100% Editavel so é preciso ter os conhecimentos necessarios.
...É isso ae galera espero que curtam o website!
(Em breve na versão 2.0 mas novidades aguardam)
$-Obs:Caso forem compartilhar esse post, não esqueçam de deixar os creditos-$
Ahh.... Lembrando não esqueça de dar REP+ até
porque deu um trabalhaço!
___________________________________________________________________________________________________________
Download:http://www.mediafire.com/download/cvttts1ae47usrb/WebSite+OTPokemon+1.0+%282014%29.rar
Scan:https://www.virustotal.com/pt/file/3b20e20c6f103fd508de6693abea5e2e16c36aaff139d605124e9db183260edc/analysis/1392469897/
Aviso: A senha para descompactar o WebSite OTPokemon 1.0 (2014).Rar é: (otpokemon!) sem os parenteses.
......................................................................................................................................................................................................................
*- Creditos -*
Modern Acc e (Kranzix).
-
Kyosen recebeu reputação de VladKnight em Sprites em PoketibiaCara você só precisa do fly do salamence?
Se for isso me add no skype que eu te mando.
Se não for isso, esclareça melhor o topico.
-
Kyosen recebeu reputação de deivaoo em (Duvida) Drop Stonecara kkkkk esse sistema é no login.lua
poste ele ai fazendo o favor
-
Kyosen deu reputação a NighteyeTV em [ACTION] Stone BoxEae galera eu tava com insonia e nn conseguia dormir nesse tempo tive ideias para servidores de Poketibia ( Pq nn criar uma box diferente que nn venha poke e sim Stone??)..
entao ta ae criei para instalalo va em data/action/stonebox.lua <<(crie este arquivo com este nome).
Dentro coloque a seguinte tag:
e pronto salve e em actions.xml adicione a seguinte tag:
pronto sistema adicionado..
Explicação:
e pronto agr é so jogar xD..
-
Kyosen recebeu reputação de Miquelangelo em Como mudar a imagem do client poketibia 2015A mensagem é na pasta do seu server, em Config.lua.
Chegando lá procure por "motd = "edite a mensage do dia aqui""
-
Kyosen deu reputação a Meganick em Server Pokemon Lunus OriginalPessoal todos servers lunus que tem por ai é client então resolvi postar o original
Change Log:
Imagens: Cp Saffron:
Respawn de Poke Fantasmas (Lavender):
Respawn Pokes Lutadores:
Downloads: Server: http://www.4shared.com/rar/b1cUiDojba/Pokmon_Lunus_-_Meganick.html
Client: http://www.4shared.com/rar/mhqCjdAPba/Client_Lunus_Pokemon_-_Meganic.html
O 4shared já tem scan mais caso cobrem fiz um do client e do server com avast :
Scan do Server:
Scan Client:
Creditos:
-
Kyosen deu reputação a Gaant em Erro ao abrir o DX9tenta pegar outro client e por as sprites '--
-
Kyosen deu reputação a Wolven em Erro ao abrir o DX9Atualize os drivers da sua placa de vídeo. É muito provável que o driver esteja desatualizado ou seja uma versão genérica instalada pelo windows.
Para ter certeza que o problema não é no seu OtClient, teste em outro computador.
-
Kyosen deu reputação a Snowsz em Bug da partyIsso deve ser experience stages, mude para false no config.lua.
-
Kyosen deu reputação a Wolf Admin em [Atualizado] Quest que da pokémon como recompensaOlá :v como o titulo ja diz, irei disponibilizar a vcs um script de um bau que ao clicar, venha um pokemon que vc determinar..
1º - Abra a pasta Servidor/data/actions/scripts, crie um arquivo em .lua, e coloque isso:
Para Servidores PDA sem level System:
Para Servidores Com Level System:
2º - Abra o arquivo actions.xml e adicione isso:
Coloque o actionid no bau que vc quer q dê o pokemon pelo mapa. Em baupokemon.lua é o nome do arquivo q vc criou.. Espero ter ajudado, se ajudei, clique em gostei pf. Até a Próxima -
Kyosen deu reputação a D i M i T r E s C u em !EsconderGalera tava fazendo uma script pra mim usar no meu server só que falta algumas coisas mais testei aqui já da pra usar
Testado em: 8.6
Finalidade: Se esconder de pessoas
No meu caso coloquei pra transformar em arvores ou pedras
Pode ser qualquer coisa que queiram.
ele se transformar e fica nos items desejados aleatórios e você fica imóvel por 7 segundos, se quiserem mudar é so mudar essas linhas
doSetItemOutfit(cid, math.random(2701, 2704), 7000) --tempo 7 segundos
addEvent(doCreatureSetNoMove, 7000, cid, false)
obs2: Deixe no mesmo tempo para ficar bom
vamos lá:
1º va na pasta data/talkactions/script copie qualquer arquivo e coloque um nome desejado
e coloque isso:
function onSay(cid, words, param) if getPlayerLevel(cid) >= 1 then doCreatureSetHideHealth(cid, true) addEvent(doCreatureSetHideHealth, 7000, cid, false) doSetItemOutfit(cid, math.random(2701, 2704), 7000)--tempo 7 segundos doSendMagicEffect(getCreaturePosition(cid),13) doCreatureSay(cid, "Voce se Escondeu", TALKTYPE_ORANGE_1) -- mensagem doCreatureSetNoMove(cid, true) addEvent(doCreatureSetNoMove, 7000, cid, false) end return true end Tag:
<talkaction words="!esconder" event="script" value="arquivo.lua"/> Obs: essa parte math.random(2701, 2704) -- sao os items que irao se transformar
se já existe um assim não sei , só sei que eu que fiz esse
Bom uso
erros comentem aqui pff
(ARRUMADO) 100%
credito também ao Xwhitewolf
-
Kyosen deu reputação a lucasjua em Sprite Shiny Mega Charizard XE ai gente, vim disponibilizar Sprite do Shiny Mega Zard X.
Link 1: 4Shared
Imagem da Sprite:
Imagem do Portrait:
Rep+ se gostou .
Creditos:
-
Kyosen deu reputação a Calisto em Sprite Shiny Mega Charizard XEu gostei pois você deu uma nova ideia e não é obrigado com a cor no anime por em seu poketibia !
-
Kyosen deu reputação a lucasjua em Sprite Shiny Mega Charizard XExato. Quando fui editar sabia que não era a mesma cor pq eu queria fazer algo novo.
No post não ta dizendo que é obrigado a gostar, não gostou? Problema seu.
-
Kyosen deu reputação a Cazuza em [Creaturescripts] Experiencia para Guild (por nº de Jogadores Online)Nome: Experiencia para Guild Função: A pedidos de um membro do forum (TioSlash). Aqui está um script que ira adicionar uma porcentagem de Experiência por jogadores online. Exemplo: Ao alcançar 5 jogadores da Guild Online, todos que estiverem online recebem 2% de xp adicional por jogador. Ou seja, um total de +10% de xp. Bom para servidores com bastante RPG, incentivando a cooperação.
Atualizações: Dia 17/08/2014
Versão: Testada somente na "10.31". (OTX Server - Galaxy) Créditos: Kazuza - (eu) Por ter criado.
TioSlash - Pela Ideia.
Vodkart - Por ter achado a função dele que retorna os jogadores da Guild ( sem ela com meu nivel de script não teria conseguido).
xWhiteWolf - Por uma ajudinha.
"Pasta Servidor > Data > Creaturescripts > Scripts" crie "ExpGuild.lua".
function getGuildMembersOnline(GuildId) local players,query = {},db.getResult("SELECT `name` FROM `players` WHERE `rank_id` IN (SELECT `id` FROM `guild_ranks` WHERE `guild_id` = " .. GuildId .. ");") if (query:getID() ~= -1) then repeat table.insert(players,query:getDataString("name")) until not query:next() query:free() end return #players > 0 and players or false end function onLogin(cid) local guild_id = getPlayerGuildId(cid) local minimo = 2 local max = 2 local porcentagem = 2 ----------------------------------------- doPlayerSetExperienceRate(cid, 1) if guild_id == 0 then addEvent(doPlayerSendTextMessage, 200,cid, MESSAGE_STATUS_CONSOLE_RED,"[GUILD] Entre em uma guild para ter bonus de experiencia.") return true end if guild_id > 0 then local membros_online = table.maxn(getGuildMembersOnline(guild_id)) local tabela_membros = getGuildMembersOnline(guild_id) --if #getPlayersByIp(getPlayerIp(cid)) >= max then --doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED,"[GUILD] Players com Multi-Cliente nao contam para ganhar o bonus de experiencia.") --return true --end if membros_online <= minimo then addEvent(doPlayerSendTextMessage, 2000, cid, MESSAGE_STATUS_CONSOLE_RED,"[GUILD] Para ter bonus de experiencia precisa ter mais de "..minimo.." jogadores da guild online.\n Jogadores da Guild Online ["..membros_online.."]") return true end if membros_online > minimo then for var = 1, #tabela_membros do local nomes = getCreatureByName(tabela_membros[var]) local XP = ((membros_online*porcentagem) / 100) + 1.00 doPlayerSetExperienceRate(nomes, XP) addEvent(doPlayerSendTextMessage,1000,nomes, MESSAGE_STATUS_CONSOLE_RED, "[GUILD] A experiencia dos membros da guilda foi aumentada para +"..membros_online*porcentagem.."% - Membro "..getCreatureName(cid).." logou.") end return true end end end "Pasta Servidor > Data > Creaturescripts > Scripts" crie "ExpGuild_out.lua".
function getGuildMembersOnline(GuildId) local players = {} for _, pid in pairs(getPlayersOnline()) do if getPlayerGuildId(pid) == tonumber(GuildId) then table.insert(players, getPlayerName(pid)) end end return #players > 0 and players or false end function onLogout(cid) if getPlayerGuildId(cid) == 0 then return true else local guild_id = getPlayerGuildId(cid) local membros_online = table.maxn(getGuildMembersOnline(guild_id)) local tabela_membros = getGuildMembersOnline(guild_id) local porcentagem = 2 local minimo = 2 ----------------------------------------- for var = 1, #tabela_membros do local nomes = getCreatureByName(tabela_membros[var]) local membros_online = membros_online - 1 if membros_online <= minimo then doPlayerSetExperienceRate(nomes, 1.0) doPlayerSendTextMessage(nomes, MESSAGE_STATUS_CONSOLE_RED,"[GUILD] Nao tem mais o numero de players necessarios para ganhar o bonus de experiencia - Membro "..getCreatureName(cid).." deslogou.") end if membros_online > minimo then local XP = ((membros_online*porcentagem) / 100) + 1.00 doPlayerSetExperienceRate(nomes, XP) doPlayerSendTextMessage(nomes, MESSAGE_STATUS_CONSOLE_RED, "[GUILD] A experiencia dos membros da guilda foi ajustada para "..membros_online*porcentagem.."% - Membro "..getCreatureName(cid).." deslogou.") end end return true end end "Pasta Servidor > Data > Creaturescripts" em creaturescripts.xml adicione:
<event type="login" name="ExpGuild" event="script" value="exp_guild.lua"/> <event type="logout" name="ExpGuild_out" event="script" value="exp_guild_out.lua"/> "Pasta Servidor > Data > Creaturescripts > Scripts" em login.lua adicione:
Lá em baixo, onde tem registerCreatureEvent ponha esses dois:
registerCreatureEvent(cid, "ExpGuild") registerCreatureEvent(cid, "ExpGuild_out")
PS: Qualquer erro, postem. É muito importante. Como este é meu segundo script na vida. Pode ser que aconteça de dar erros. Eu testei pouco.
-
Kyosen deu reputação a Emersonssss em [MultipleExp System]Fala Galerinha nessa madrugada eu modifiquei meu script e resolvi posta-lo para ajudar os OT-Admin iniciantes e ter algo diferente no server.
O Sistem Funciona assim, sabe quando vem um noob e fala " ADM Ponhe Double XP!!", com esse sistema vc resolve esse problema, ele se resumi quanto mais Players Online + XP é Adc para quem estiver online, simples, simples, sem mais delongas.
Em /data/creaturescripts/
Adicione a seguinte tag:
<event type="login" name="MultipleExp" event="script" value="MultipleExpLogin.lua"/> Em /data/creaturescripts/scripts/
Crie um arquivo.lua chamado MultipleExpLogin.lua e adicione :
local config = getBooleanFromString(getConfigInfo('experienceStages')) function onLogin(cid) registerCreatureEvent(cid, "MultipleExp") if(config) then exp = getExperienceStage(getPlayerLevel(cid), getVocationInfo(getPlayerVocation(cid)).experienceMultiplier) end local players = getPlayersOnline() if(#players >= 1 and #players <= 49) then for _, pid in ipairs(players) do if isPremium(pid) then doPlayerSetRate(pid, SKILL__LEVEL, 1.5) else doPlayerSetRate(pid, SKILL__LEVEL, 1.0) end end if isPremium(cid) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--[MultipleExp System]--\nPlayers Online : "..#players.."\nSeu Exp Foi Atualizado Para : ("..exp.."x + 0.5x)") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--[MultipleExp System]--\nPlayers Online : "..#players.."\nSeu Exp Foi Atualizado Para : ("..exp.."x)") end elseif(#players >= 50 and #players <= 99) then for _, pid in ipairs(players) do if isPremium(pid) then doPlayerSetRate(pid, SKILL__LEVEL, 1.6) else doPlayerSetRate(pid, SKILL__LEVEL, 1.1) end end if isPremium(cid) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--[MultipleExp System]--\nPlayers Online : "..#players.."\nSeu Exp Foi Atualizado Para : ("..exp.."x + 0.5x + 0.1x)") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--[MultipleExp System]--\nPlayers Online : "..#players.."\nSeu Exp Foi Atualizado Para : ("..exp.."x + 0.1x)") end elseif(#players >= 100 and #players <= 149) then for _, pid in ipairs(players) do if isPremium(pid) then doPlayerSetRate(pid, SKILL__LEVEL, 1.7) else doPlayerSetRate(pid, SKILL__LEVEL, 1.2) end end if isPremium(cid) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--[MultipleExp System]--\nPlayers Online : "..#players.."\nSeu Exp Foi Atualizado Para : ("..exp.."x + 0.5x + 0.2x)") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--[MultipleExp System]--\nPlayers Online : "..#players.."\nSeu Exp Foi Atualizado Para : ("..exp.."x + 0.2x)") end elseif(#players >= 150 and #players <= 199) then for _, pid in ipairs(players) do if isPremium(pid) then doPlayerSetRate(pid, SKILL__LEVEL, 1.8) else doPlayerSetRate(pid, SKILL__LEVEL, 1.3) end end if isPremium(cid) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--[MultipleExp System]--\nPlayers Online : "..#players.."\nSeu Exp Foi Atualizado Para : ("..exp.."x + 0.5x + 0.3x)") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--[MultipleExp System]--\nPlayers Online : "..#players.."\nSeu Exp Foi Atualizado Para : ("..exp.."x + 0.3x)") end elseif(#players >= 200 and #players <= 249) then for _, pid in ipairs(players) do if isPremium(pid) then doPlayerSetRate(pid, SKILL__LEVEL, 1.9) else doPlayerSetRate(pid, SKILL__LEVEL, 1.4) end end if isPremium(cid) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--[MultipleExp System]--\nPlayers Online : "..#players.."\nSeu Exp Foi Atualizado Para : ("..exp.."x + 0.5x + 0.4x)") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--[MultipleExp System]--\nPlayers Online : "..#players.."\nSeu Exp Foi Atualizado Para : ("..exp.."x + 0.4x)") end elseif(#players >= 250) then for _, pid in ipairs(players) do if isPremium(pid) then doPlayerSetRate(pid, SKILL__LEVEL, 2.0) else doPlayerSetRate(pid, SKILL__LEVEL, 1.5) end end if isPremium(cid) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--[MultipleExp System]--\nPlayers Online : "..#players.."\nSeu Exp Foi Atualizado Para : ("..exp.."x + 0.5x + 0.5x)") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--[MultipleExp System]--\nPlayers Online : "..#players.."\nSeu Exp Foi Atualizado Para : ("..exp.."x + 0.5x)") end end return true end Creditos?
Emerson Henrique
E quero ver algum filho de uma pessoa vim falar que eu copie esse script -.-"