#87Midgard:pero ahora ya es todo bastante recochineo por cómo te respondí a la hora de hackear, mis disculpas por cierto.
Gracias por las disculpas. Nosotros sólo te pretendíamos ayudar, y no fue nada acertado amenazarnos con denunciarnos.
Como bien te han dicho arriba, NUNCA te fíes del usuario. los inputs se deben de escapar SIEMPRE, porque SIEMPRE habrá alguien que te la intente colar por ahí. Por cierto, has escapado los nicks de blastarena?
Speedhack. Podrías comprobar las posiciones del avión, que no exista una variación de X distancia, no se, algo...
this.lerpedMouse.lerp(this.lerpedMouse, this.mouseIndicator.getPosition(), .03), this.entity.lookAt(this.lerpedMouse, this.entity.up), this.velocity.copy(this.entity.forward).scale(140 * t).add(this.entity.getPosition()), this.entity.setLocalPosition(this.velocity), this.isThrottleBttnDown === !0 ? (this.throttle -= 25 * t, this.throttle < 5 && (this.throttle = 5)) : (this.throttle += 5 * t, this.throttle > 10 && (this.throttle = 10)), C.socket.emit("planeUpdate", {
Algo que no sea simplemente enviar la posición al servidor y que este se la trague con patatas.
Instantkill: esto no lo he probado porque no he tenido tiempo, pero creo que puedes spawnear tus disparos en la cara del enemigo y que impacten al instante. O incluso mandar el paquete de que les has matado. Y me la juego a que cuela.
Obfuscar: por supuesto que esto no es la opción definitiva, ni mucho menos. Pero ya haces que se le quiten las ganas a mucha gente de andar ojeando el código fuente. Te dije: mira las opciones avanzadas. Y seguro que ni lo intentaste. https://developers.google.com/closure/compiler/docs/api-tutorial3
How to Declare Externs with the Closure Compiler Applicationjava -jar compiler.jar --compilation_level ADVANCED_OPTIMIZATIONS \ --js makeallnotes.js --externs extern1.js --externs extern2.js
Donde externs son las librerias externas que usas (playcanvas, socket.io, y cualquier otra que uses. Las versiones normales, no las minificadas).
Limita conexiones... Puedes usar un hashmap/diccionario para ello.
from socketIO_client import SocketIO, LoggingNamespace from time import sleep import string import random import threading def id_generator(size=6, chars=string.ascii_uppercase + string.digits): return ''.join(random.choice(chars) for _ in range(size)) def on_bbb_response(*args): print('on_bbb_response', args) def worker(): while 1: with SocketIO('8.26.94.106', 5859, LoggingNamespace) as socketIO: socketIO.emit('requestSpawn', {'username': id_generator()}, on_bbb_response) threads = list() for i in range(20): t = threading.Thread(target=worker) threads.append(t) t.start()
Aprende a usar TypeScript, no uses JS a pelo. Te ayudará a mantener organizado tu código fuente.
Coge un buen libro de programación (ya que sabes c#, lo cogería sobre ello) y estudiatelo. Te faltan conocimientos, que te ayudarán y mucho a mejorar como programador.
Por mi parte, fin. Suerte con tus videojuegos.