danielzinh 150 Posted April 3, 2021 Report Share Posted April 3, 2021 (edited) Baixei uns códigos da internet recentemente, e vi que os skripts de lá costumam ser MUITO lagados, então resolvi dar algumas dicas para vocês. _______________________________________ Introduções e dicas iniciais Eu super recomendo que vocês acompanhem minhas séries sobre Skript laga? pois lá eu descrevo tudo que possa lagar e dou dicas de como evitar isso, nesse momento (da postagem) possuem três capitulos: - Por favor, registre-se ou entre para visualizar isso. - Por favor, registre-se ou entre para visualizar isso. - Por favor, registre-se ou entre para visualizar isso. _______________________________________ Como otimizar qualquer Skript Primeiro passo: Buscamos, antes de tudo, reduzir linhas grandes. Procure pelo seu código, linhas grandes, como por exemplo: Linha grande: set slot 10 of player's current inventory to grass block named "Apenas uma ilha" if name of player's current inventory is "Menu" Linha pequena: send "Apenas um texto grande para enrolar e aumentar o tamanho propositalmente, me ignore e continue lendo o tópico." Porque o send acima não é uma linha grande, já que ele é maior até que o set slot acima? é simples, textos não consideram em uma linha, não importa o tamanho do texto em uma linha, NÃO irá lagar como uma expressão pura ou um efeito, ENTÃO não confundam. Segundo passo: Não abuse das linhas, quanto menos melhor, sempre que apertar ENTER para ir a uma nova linha, pense e reflita nas suas escolhas de vida e veja se é realmente necessário outra linha. Você pode encurtar linhas utilizando uma comparação na mesma linha, como: ANTES: Por favor, registre-se ou entre para visualizar isso. DEPOIS: Por favor, registre-se ou entre para visualizar isso. PORÉM!!! Não se esqueça do nosso primeiro objetivo, reduzir linhas grandes. NUNCA abuse desse método também, já que se usado de forma errada, pode criar uma linha gigantesca. Como já vimos no Por favor, registre-se ou entre para visualizar isso. linhas grandes aumentam ABSURDAMENTE o tempo de recarga do seu código (é sério, por causa de uma linha aumentou mais de um segundo, olha lá) Então, veja o jeito certo de se usar esse método: ERRADO: Por favor, registre-se ou entre para visualizar isso. CERTO: Por favor, registre-se ou entre para visualizar isso. ERRADO: Por favor, registre-se ou entre para visualizar isso. CERTO: Por favor, registre-se ou entre para visualizar isso. ERRADO: Por favor, registre-se ou entre para visualizar isso. CERTO: Por favor, registre-se ou entre para visualizar isso. Terceiro passo: Acredite, o que eu mais uso para otimizar meus códigos é o split at. Como funciona? vou dar um exemplo para ser de melhor entendimento: Por favor, registre-se ou entre para visualizar isso. Não entendi nada! Relaxa, vou explicar: A variável {Text} é "um,dois,três,quatro", é um texto, não da para dar loop nisso. Com o uso da expressão set {_array::*} to split {Text} at "," eu peguei os valores da variável {Text} e dividi elas no "," igual uma pizza! e transformei os resultados em uma Array, no caso, a variável {_array::*}. Legal, como eu usaria isso para otimizar meus códigos? Eis um exemplo, meu jovem gafanhoto: Código sem split: Por favor, registre-se ou entre para visualizar isso. Código com split: Por favor, registre-se ou entre para visualizar isso. código ilustrativo, não foi testado. Pode apresentar erros, mas o conceito de funcionamento é esse. Vocês viram o poder dessa expressão? façam bom uso dela, sua criatividade é o limite. Quarto passo: Evitem a todo o custo, o uso de yaml e yml. imagem retirada do código SrReportes do autor @SrBlecaute O suporte para YAML e YML nas novas versões está MUITO complicado, além de que o uso de YAML e YML causa um aumento muito maior nas linhas, como visto acima. Substituto ideal: Por favor, registre-se ou entre para visualizar isso. Observem que... as opções configuráveis necessitam de um @ para serem invocadas, exemplo: {@Opção1} as opções configuráveis também não necessitam de %%. exemplo: broadcast "{@Opção2}" _______________________________________ No momento é isso, tem mais coisas só que estou com preguiça de colocar aqui, não se esqueçam de curtir esse tópico para me deixar feliz :) Edited April 3, 2021 by danielzinh 2 Quote Link to comment Share on other sites More sharing options...
seck.png 87 Posted April 3, 2021 Report Share Posted April 3, 2021 brabo mano :) 1 Quote Link to comment Share on other sites More sharing options...
thorum 10 Posted April 27, 2021 Report Share Posted April 27, 2021 Top 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.