[Aportes indexados] HaraldCS - ServerJava

Agushh

MR BROWNSTONE
Hola!, cómo están?. En esta oportunidad vengo a presentarles un servidor que abrí hace algunos años y que no fue muy conocido. Se trata de HaraldAO, tiene un diseño y dinámica de juego copiada de Counter Strike. Si Salvito anda por el foro me va a tener que disculpar, ya que le usé también los mapas de AOCs, jajaja.

La lógica de desarrollo es sencilla, hay un servidor principal hecho en Java que se encarga de escuchar a los distintos subservidores que abren los usuarios para agitar. Los clientes de estos subservers también se conectan al servidor principal para realizar ciertas comprobaciones. De hecho, si no mal recuerdo, el servidor en java hasta se encarga de procesar la creación de personajes para luego organizarlos en un ranking general de servers.

Quisiera comentarles que el código está hecho de una manera bastante precaria, creo que fue mi primer proyecto en Java, por lo que tiene unos años. De todas formas, entiendo que se ejecuta sin problemas. Pero bueno, en ese entonces tenía la sintaxis de vb en la cabeza, y creo que estaba probando el manejo de hilos.

Pero más allá de todo, lo libero porque quizás le sirva a alguien para aprender. Tiene manejo de archivos, conexión con protocolo binario, y algunas otras yerbas. De hecho, si se lo pule bastante y se encarara el proyecto con otra perspectiva, creo que sería posible lograr algo como tiene AO20. Es decir, un servidor alternativo que se encargue de procesar de datos del login, creación de nuevos pjs, desacoplando el server del juego.

Como observaciones críticas a realizar, al juego le falta un cifrado para las passwords. Creo que es algo bastante importante, pero nunca lo implementé porque siempre estuvimos en etapas alpha o beta. Recomiendo utilizar SHA256 y no MD5.

Quisiera agradecer al usuario @Rezniaq ya que me ayudó a testear en su momento, y a @Ruffneck ya que hizo las interfaces. También a @Franco77 que me ayudó con temas del codigo.

Implementaciones principales:

-Posibilidad de crear multiples servers para agitar,
-Ranking general a todos los servers por usuario,
-Ranking específico por server para cada usuario,
-Sistema de trampas,
-Modalidades de juego activables/desactivables desde la creación de cada subservidor,
-Corroboración de posibilidad de host desde el server principal hacia cada subserver creado.

oqMP5HB.jpeg


Link: https://github.com/Ju4nAgust1n/HaraldCS

PD: Uso IntellijIDEA 2020.
 
Última edición:

Gelfor

Dragón Ancestral Lvl 6
Se agradece el aporte, a muchos les va a servir para ver como se maneja un servidor por fuera de Visual basic 6, y ojala alguien pueda continuarlo por que tiene un futuro barbaro esto
 

Alkair

Dragón Ancestral Lvl 4
Ex-Staff
Hey! Me acuerdo de esto. Andaba bastante bien cuando lo probamos (y me ganaste todos los duelos que jugamos).

Deberías subirlo a GitHub, donde es más fácil ver el código sin tener que descargarlo, y menos propenso a desaparecer después de unos años.
 

Agushh

MR BROWNSTONE
Hey! Me acuerdo de esto. Andaba bastante bien cuando lo probamos (y me ganaste todos los duelos que jugamos).

Deberías subirlo a GitHub, donde es más fácil ver el código sin tener que descargarlo, y menos propenso a desaparecer después de unos años.

Jajaja es que estaba chiteando (?. Ya lo subí a git, ahora edito el post principal. Gracias por pasarte!!

Según el autor utilizó "Uso IntellijIDEA 2020" pero vamos, de Java no entiendo.

Hola!! está programado en java, y ese es el IDE que uso para codear. Te lo deberías descargar de la página de netbeans, aunque también podrías probar con eclipse.

Por otro lado hay que tener instalado maven, para compilar el .jar vas a CMD y escribís "mvn package", sin las comillas. Los archivos compilados los vas a encontrar dentro de la carpeta target.
 
Arriba