Santi Posted March 25, 2020 Share Posted March 25, 2020 A dúvida é bem simples. Quais cuidados eu devo tomar para preveni meu script em relação a bugs, desempenho ou até mesmo falhas que o player possa abusar. Por exemplo qual função devo evitar usar e coisas do tipo. Link to comment
Other Languages Moderators androksi Posted March 25, 2020 Other Languages Moderators Share Posted March 25, 2020 Nenhuma função deve ser evitada de usar, muito pelo contrário - use-as. Todas as funções irão depender da sua lógica de programação, você não pode realizar uma tarefa, na maioria das vezes, sem uma condição. Realizar verificações antes de uma execução de código pode evitar vários bugs e falhas de segurança. Um código limpo e legível, com funções e variáveis nomeadas corretamente, estruturação, organização de pastas e nomeação de arquivos, tudo isso deve conter dentro de um projeto. Não é simplesmente sair colocando qualquer nome que venha à cabeça. Pensar e raciocinar antes de escrever um código é extremamente importante na área da programação. Também, para não ocorrer bugs ou falha de segurança, tente criar possibilidades de "como isso poderia bugar?" ou "como alguém poderia burlar o sistema?". Seja criativo e veja o funcionamento do seu sistema de diferentes perspectivas, isso é muito importante. Sobre desempenho, evite ao máximo repetir linhas de código para executar uma tarefa. Crie funções para isso! Dessa forma, o seu código terá rotinas que, sempre que quiser uma parte do código, ela estará dentro de uma função, sendo assim você irá criar um ciclo e não uma bagunça. Por exemplo, ao invés de criar vários comandos para executar a mesma tarefa (exemplo abaixo): Spoiler addCommandHandler("infernus", function(player) local x, y, z = getElementPosition(player) local veh = createVehicle(411, x, y, z + 1) if veh then setVehicleColor(veh, 0, 255, 0) warpPedIntoVehicle(player, veh) end end ) addCommandHandler("jester", function(player) local x, y, z = getElementPosition(player) local veh = createVehicle(559, x, y, z + 1) if veh then setVehicleColor(veh, 0, 255, 0) warpPedIntoVehicle(player, veh) end end ) addCommandHandler("turismo", function(player) local x, y, z = getElementPosition(player) local veh = createVehicle(451, x, y, z + 1) if veh then setVehicleColor(veh, 0, 255, 0) warpPedIntoVehicle(player, veh) end end ) Por que não criar apenas um comando para executar a função? (exemplo abaixo) Spoiler function createCustomVehicle(player, id) local x, y, z = getElementPosition(player) local veh = createVehicle(id, x, y, z + 1) if veh then setVehicleColor(veh, 0, 255, 0) warpPedIntoVehicle(player, veh) return veh else return false end end addCommandHandler("veh", function(player, command, id) if tonumber(id) then createCustomVehicle(player, id) else outputChatBox("O ID deve ser um número!", player, 255, 0, 0) end end ) Tudo irá depender da sua criatividade, perspectiva, manutenção do código, organização e condições. Recomendo você assistir esta playlist para clarear mais as idéias e escrever um código bom e legível. 1 Link to comment
Santi Posted March 25, 2020 Author Share Posted March 25, 2020 Obrigado pela resposta. Fico grato. Eu tinha noção disso, porém em muitos códigos que vi, todos usam algo como uma proteção a mais. Uns para proteger seus resources e outros com outros métodos para meio que barrar alguns programas ilegais. Link to comment
Other Languages Moderators Lord Henry Posted March 26, 2020 Other Languages Moderators Share Posted March 26, 2020 (edited) O que você busca então é um sistema de proteção de resource. Cada desenvolvedor faz seu próprio sistema. Edited March 26, 2020 by Lord Henry Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now