JUEGOS

eLectronic @ magaZine #0



Técnica Bounding box

La técnica básica, pero muy utilizada en los video juegos que se basan en 'BIT MAPS' (imágenes 2d), es la llamada "bounding box technique". Consiste en un rectángulo imaginario que rodea a cada 'sprite' del juego.

Para saber si entre dos de estos 'sprites' existe una colisión, analizamos si sus 'bounding box'se sobreponen.

Entonces... sean dos objetos (sprites), A y B, con sus 'bounding box' de igual o distintos tamaños, probamos si se están chocando mediante el siguiente "pseudo-c":

Supongamos que (x, y) son las coordenadas del 'sprite', que tienen como origen el extremo superior izquierdo del BITMAP.

x_A, y_A coordenadas del 'sprite' A
x_B, y_B coordenadas del 'sprite' B

int xmin_A,
ymin_A,
xmax_A,
ymax_A;

xmin_A = x_A;
xmax_A = x_A + ANCHO_A;
ymin_A = y_A;
ymax_A = y_A + LARGO_A;

xmin_B = x_B;
xmax_B = x_B + ANCHO_B;
ymin_B = y_B;
ymax_B = y_B + LARGO_B;

/* esta el 'sprite' B completamente a la izquierda del A? */
if(xmax_B < xmin_A) return(FALSE); /* no hay colisi¢n */

/* esta el 'sprite' B completamente a la derecha del A? */
if(xmin_B > xmax_A) return(FALSE);
/* esta el 'sprite' B completamente por encima del A? */
if(ymax_B < ymin_A) return(FALSE);

/* esta el 'sprite' B completamente por debajo del A? */
if(ymin_B > ymax_A) return(FALSE);

/* entonces existe colisi¢n!! */
return(TRUE);

Podemos optimizar este código si todos nuestros 'sprites' tienen el mismo tamaño de 'bounding box':

int dx, dy;

dx = abs(x_A - x_B); /* el uso de abs es para obtener un valor sin signo */
dy = abs(y_A - y_B);

if(dx < ANCHO && dy < LARGO)
return(TRUE);
else
return(FALSE);

Bueno... esto es lo básico en lo que se refiere a la técnica "bounding box", espero que sea de utilidad... Cualquier duda o error que encuentren pueden escribirme a:

leocd@adinet.com.uy




QUAKE

Quake es un juego desarrollado por Id Software (sí, los de Doom) que tiene por objeto masacrar todo lo que se mueva en pantalla (¿os suena de algo?). Vale, eso lo hacen el 90% de los juegos del planeta, entonces ¿qué tiene de nuevo Quake?.

Listas de Correo sobre Quake:


Quake Cheat Codes

Los códigos de "ayuda" de Quake deben ser introducidos en modo Consola. Para cambiar a este modo mientras jugamos, debemos teclear " ~ ". Escribir el código que queramos, y pulsar Enter para grabarlo, trás esto volveremos al juego con Escape.

- GOD
Eres Dios, Invencible. 0:-)

- FLY
Podrás volar. Teclea D para subir y C para bajar (Este código es muy bueno para encontrar pasillos secretos, cuando estás perdido)

- IMPULSE 9
Todas las armas, hasta los dientes.

- IMPULSE 255
Arregla todos los daños.

- MAP E1Mx
Saltar a cualquier nivel del episodio 1, donde x es nivel deseado. (En la versión Share, x puede ser un nº entre 1 y 8)

- GIVE arma
Coges el arma que desees. Arma es el número de armamento. Por ejemplo, "GIVE 7" cogerás el lanzador de misiles.

- GIVE item amt
Seleccionas munición o puntos de "salud", item es la letra de la munición y amt es el total que quieres.
Por ejemplo, "GIVE N 125" significa que cogerás 125 clavos.
La máxima munición de cualquier tipo es 255; la máxima salud es 999.
Tipos de munición: S = Shells N = Nails R = Rockets C = Energy Cells

tomworld@poboxes.com


QuakeWorld


Jugar a Quake por internet como todos hacemos en el servidor 161.72.161.72 tiene problemas importantes. Todos hemos sufrido dias en los que en lugar de jugar parece que haciamos Break-dance. Este movimiento a saltos es la pesadilla de todos los usuarios de modem, entre los que me encuentro. Para evitar esto, una empresa americana, ayudada por John Carmack, ha desarrollado un sistema para evitar el movimiento a saltos, y a la vez poder organizar un poco el caos que es esto del juego por Internet. Si seguimos a este paso entraremos en un server con la gravedad invertida y en el que se juegue un campeonato de petanca como nos descuidemos!!

Este sistema se basa en una colección de servidores maestros, a los que se conectan todos los demas, y que gestionan la entrada y salida de jugadores de todos los servidores. Asi, los jugadores se conectan al servidor maestro, que es quien conecta a los jugadores con el servidor en el que van a jugar. Al entrar en el servidor, este nos manda todos los ficheros necesarios para jugar que no tengamos en nuestro ordenador, como skins, niveles, sonidos, gráficos de nuevas y peligrosas armas. (¡¡el lanzacucharillas!!)

El sistema de rankings actual se basa en dos cosas: rank, o diferencia entre frags a favor y frags en contra, y skill, calculo que mide la habilidad del jugador segun sus asesinos y sus victimas (o eso es teoricamente) Actualmente son un autentico desastre, y hay gente con ranks de mas de 200 a base de jugar en su propio servidor (eso la maquina no lo mide). Al menos el sistema de identificación de los usuarios funciona bastante bien.

La solucion para el sistema del lag se basa en dos parametros:

-El cliente y el servidor ahora se mandan paquetes de datos sin esperar la respuesta, lo que disminuye el número de "enganchones".

-El cliente, ademas de mandar las ordenes al servidor, "predice" las respuestas a tus ordenes y la trayectoria de los proyectiles en movimiento. Para hacer esto, hay que dar un valor a la variable poshlatency, que debe ser igual al ping para que los resultados sean correctos. Aun asi, las respuestas del entorno se haecn mas lentas, por lo que coges el arma unas decimas de segundo despues de haber pasado sobre ella, los ascensores tardan mas en subir... (no se dan cuenta de que les activaste)

Es decir, que quien tiene buen ping tiene tanta o mas ventaja que antes. Ademas, la mayoria de los servidores tienen inquilinos locales, lo que unido a que la mayoria de los servidores estan en América hace tarea harto dificil matar mas de lo que te matan.

Como instalarlo:

-En Stomped y en IBK puedes encontrar el programa cliente, qwcl11217.zip (mas o menos), bajatelo y descomprimelo en el directorio de Quake.

-Hay un fichero de skins, que te puedes bajar o no. De cualquier modo, si entras en un servidor en el que alguien tiene una skin que tu no tengas se copiara esa skin a tu disco duro automaticamente.

-Viene con la nueva version de Qspy, optimizado para Quakeworld. Deberiamos de usarlo, pero a mi me va tan mal que prefiero escribir la linea de comandos en una sesion de DOS:

qwcl - master 206.86.0.22

-Tras esperar un momento entraras en la consola de Quake, pero con Quakeworld escrito abajo a la derecha. Ahora tienes que registrarte como nuevo usuario, escribiendo newuser <password> No te olvides de el!!

-El master te devolvera un userid, que debes apuntar junto con el password. Ahora ya estas registrado, te llamas player y vas de blanco. Si no quieres parecer un pardillo, hay que aprender el nuevo modo de ponerse el uniforme de batalla!!

-Escribe setinfo. Asi apareceran tus caracteristicas. No puedes cambiar las que llevan un asterisco delante. Cambia las demas, por ejemplo:

setinfo name Ryoga

setinfo topcolor 12

setinfo bottomcolor 1

setinfo clan IBK

tambien puedes poner una skin, utilizando setskin, pero yo no llevo hasta que IBK saque la suya. Puedes proteger las nuevas skin con password, para que nadie te confunda en partidas por equipos.

-escribe servers para recibir la lista de servidores, y connect ***.***.***.*** para conectarte a uno. Ya estas jugando!!!

-Para conectar en futuras ocasiones, escribes username ***** y password **** y luego conectas a un server dice arriba.


montero@jet.es
jvalero@bemarnet.es


©eLectronic @ magaZine - 1997.
32 BITS VISUAL CREATIONS CROUP