El post que buscas se encuentra eliminado, pero este también te puede interesar

Tutorial Entidad 3D

1º- Introducción al tutorial de 'Entidad 3D'


Este es un tutorial sobre el funcionamiento de 'Entidad 3D'. Programa que nos permitirá hacer realidad nuestro juego como tal. En realidad este programa, cuyo ejecutable es 'entidad3d.exe' ya es nuestro juego, sólo que tendremos que pasarle una serie de parámetros para indicarle el escenario a cargar, y dentro de este escenario especificaremos el resto de elementos que formarán nuestro juego, como personajes, objetos y desarrollo del mismo.

En este tutorial no se incluye ninguna información referente a como diseñar objetos o personajes 3D, texturas, sonidos o músicas. 'Entidad 3D' no hace eso (para eso ya hay herramientas específicas), 'Entidad 3D' es sólo una herramienta más de todo el proceso de desarrollo de un juego y es la que gestionará todos los recursos gráficos y sonoros para formar un juego, es básicamente el programa del juego ... así que eso que te ahorrarás de programar.
Si no quieres o no sabes crear objetos 3D, gráficos o sonidos, entonces tendrás que utilizar todo lo que encuentres por Internet o lo que te pueda servir de esta distribución de 'Entidad 3D', por lo demás con 'Entidad 3D' ya tienes todo lo necesario para poder crear un juego 3D con desarrollo y distribuible en un solo fichero de forma independiente.

Es imprescindible antes de comenzar este tutorial que te hayas leído previamente el tutorial de 'World Editor' para entender muchos conceptos de este tutorial, ya que básicamente seguiremos utilizando 'World Editor' pero con las nuevas entidades particulares de 'Entidad 3D' para desarrollar toda la interactividad de nuestro juego.

Es recomendable que comiences con los pasos numerados de la sección 'Pasos del tutorial' y en ese orden, ya que se trata de un proceso de aprendizaje progresivo.


2º- Nombres de ficheros


Con la finalidad de que puedan coexistir varios juegos distintos al mismo tiempo en Entidad 3D, pero utilizando las mismas carpetas, se ha establecido una serie de nombres de ficheros para que Entidad 3D los cargue en función del nivel que se está jugando, de esta forma podremos diferenciar diversos ficheros de audio, imágenes y personajes para cada juego o nivel en concreto.

Por este motivo es importante que establezcas los nombres de ficheros que se indican en este manual para que Entidad 3D sea capaz de encontrarlos y establecerlos para el juego o nivel correspondiente.

Por ejemplo: Tenemos un juego que consta de tres niveles que se cargarán por este orden a medida que el jugador avance en su desarrollo:

puente.bsp
carretera.bsp
escape.bsp

Cuando este manual se refiera a ficheros que afectan a todo el juego, te indicará que pongas delante del fichero el nombre del primer nivel de tu juego. Se indicará de esta forma:

PrimerNivel_intro.mp3

Con lo que para nuestro ejemplo el nombre real del fichero tendría que ser:

puente_intro.mp3

Y cuando se refiera a crear ficheros particulares para cada nivel, lo encontrarás indicado de esta forma:

Nivel_portada.bmp

Con lo que por ejemplo para el nivel 'carretera' el nombre real sería :

carretera_portada.bmp

De todas formas si creas los niveles sin estos nombres particulares, Entidad 3D utilizará unos ficheros por defecto o simplemente si no los encuentra no los utilizará, el caso es que el programa no producirá ningún error y podrás probar tu nivel sin problemas.


Tabla de ejemplo:
Para que tengas una visión general de este sistema de ficheros, a continuación se muestra una tabla de los ficheros que existirían para el juego del ejemplo anterior que recordemos consta de tres niveles llamados 'puente' 'carretera' y 'escape':

Tutorial Entidad 3D




diseño Indica que es un fichero de imagen. Sólo se permiten en formato .BMP

creacion Indica que es un fichero de sonido en cualquiera de los siguientes formatos: mp3, wav, mod, s3m, xm, it, mtm, mo3, mp1, mp2, ogg.

tutorial Indica que es un fichero de personaje en formato .ACT.

juegos Indica que es un fichero de nivel en formato .BSP de World Editor.

entidad3d Indica que es un fichero genérico para todo el juego.

Tutorial Entidad 3D Indica que es un fichero particular para un nivel en concreto.




# Los ficheros .BMP tienen que estar en la carpeta 'bmp' del entorno de desarrollo de EntidaD 3D, por defecto en 'C:entidad_3dbmp', menos el fichero 'PrimerNivel_creditos.bmp' que ha de estar en 'C:entidad_3dmenubmp'.

# Los ficheros de sonido tienen que estar en la carpeta 'wav' del entorno de desarrollo de EntidaD 3D, por defecto en 'C:entidad_3dwav'.

# Los ficheros .ACT tienen que estar en la carpeta 'actors' del entorno de desarrollo de EntidaD 3D, por defecto en 'C:entidad_3dactors'.


3º- Ficheros 3D .act:

Voy a comenzar explicando el formato de los ficheros de modelos 3D que utiliza 'Entidad 3D', ya que son la base fundamental para definir objetos y personajes en nuestro juego.

Para representar los objetos 3D en nuestro juego, 'Entidad 3D' utiliza los ficheros con extensión .act tanto para objetos como para personajes o enemigos. Este tipo de formato de modelos 3D no es un formato muy extendido y se usa particularmente en programas basados en el motor 3D 'Genesis3D', como es el caso de 'Entidad 3D' o del programa 'Reality Factory'.
Existe un conversor de varios formatos 3D al formato .act llamado 'MilkShape 3D', pero es un programa Shareware que no se incluye en 'Entidad 3D'. Esta utilidad puede trabajar con modelos de juegos como Half-Life, Quake 2, Quake III, Unreal, Serious Sam, Max Payne, The Sims, etc...
Utilizando el tutorial para convertir personajes de Half-Life a personajes de Entidad 3D que podrás encontrar en la página de 'Entidad 3D', podrás convertir diversos personajes gratuitos del formato Half-Life (ficheros .mdl) al formato .act con excelentes resultados.

Pero si no quieres utilizar 'MilkShape 3D', tendrás que utilizar los ficheros .act que puedas encontrar en Internet o los del propio 'Entidad 3D'. De todas formas, en la web de 'Entidad 3D' podrás encontrar periódicamente diversos modelos .act que yo mismo iré convirtiendo de modelos de 'Half-Life'.

En 'Entidad 3D' estos ficheros .act los podrás encontrar en dos lugares: en la carpeta 'Actors' y en la carpeta 'Objects'. Puedes visualizarlos con la utilidad 'Actor Viewer' que se te instaló en tu sistema cuando instalaste 'Entidad 3D'.


Los ficheros .act contienen básicamente el objeto o personaje 3D junto con una serie de animaciones predefinidas. Cada animación tiene su propio nombre, nombres que pueden variar entre un fichero .act y otro. Cada archivo .act puede tener un número variable de animaciones, incluso ninguna en el caso de un objeto estático. Así pues nos podemos encontrar con un fichero 'player1.act' con las siguientes animaciones:


diseño
Animación 'Idle'


creacion
Animación 'Shoot'


tutorial
Animación 'Run'



En el caso de los .act utilizados para personajes en el juego de ejemplo 'Secta', la mayoría constan de 40 animaciones distintas, aunque eso no quiere decir que se utilicen todas en el juego.
El nombre de las animaciones puede ser distinto en función del autor de los ficheros .act, para saber los nombres de las animaciones tendremos que utilizar 'Actor Viewer'.
Una cosa MUY IMPORTANTE en 'Entidad 3D' es que al menos 9 de esos nombres de animaciones han de tener un nombre exacto, ya que 'Entidad 3D' los busca de forma automática para animar al personaje protagonista y a los enemigos. Si 'Entidad 3D' no encuentra estos nombres exactos, el programa se interrumpirá de forma brusca.
Estos nombres y su función han de ser los siguientes:

# 'Idle' para una posición estática del personaje.
# 'Shoot' el personaje disparando.
# 'Walk' el personaje andando.
# 'Run' el personaje corriendo.
# 'Die' el personaje muriendo.
# 'Die_de_frente' el personaje muriendo de otra forma.
# 'Die_rodilla' el personaje muriendo de otra forma.
# 'Die_vueltas' el personaje muriendo de otra forma.
# 'Hit' el personaje recibe un impacto.

Estos nueve nombres de animaciones sólo son obligatorios para personajes protagonistas y para enemigos.

Para el caso de los personajes secundarios sólo es obligatoria la animación 'Idle'.

Para los objetos no es necesario ni siquiera que tenga alguna animación.


4º- Objetos:

Vamos a continuar este tutorial volviendo a retomar nuestro editor de niveles 'World Editor'.

Seguro que con el tutorial de 'World editor' habrás creado un nivel con todos los ejemplos de ese tutorial, y lo más seguro es que te haya quedado una especie de escenario muy raro y pequeño, pero aún te resultará muy útil en este tutorial de 'Entidad 3D' para seguir experimentando toda clase de cosas antes de pasarlas a un escenario más grande que podría ser el del juego que quieras crear.
Vamos entonces a darle un poco más de vida a ese escenario.

Colocando objetos recogibles:
En 'Entidad 3D' podremos colocar en nuestro escenario una serie de objetos que podrán ser recogidos por el jugador para engrosar un inventario de objetos que nosotros (como creadores del juego) podremos decidir su utilidad en el transcurso del juego.
Estos objetos no tienen el mismo tratamiento que los que representan las armas, munición, energía y escudo, sino que son otros objetos independientes y de utilidad configurable. Cada objeto es en realidad un fichero .act igual que los que hemos utilizado para personajes o también para armas, munición, etc..., pero estos ficheros .act en lugar de estar en la carpeta 'Actors' tienen que estar en la carpeta 'Objects' y tienen que tener un nombre particular para su posterior control.

Para cada objeto distinto debemos tener un .act preparado que será el objeto en 3D que represente ese objeto, en este caso no es necesario que el .act contenga animaciones. También debemos de ir pensando en asociarle un número a cada objeto distinto. Finalmente tenemos que tener preparada una imagen 2D de un tamaño de 32x32 que representará el objeto en el inventario del jugador.
Como podrás ver dentro de la carpeta 'Objects', ya hay unos cuantos objetos que utiliza el juego de ejemplo, si quieres puedes copiarlos con otros nombres para utilizarlos en tus juegos, pero si cambias directamente los nombres de los ficheros, el juego de ejemplo dejará de funcionar. Si haces esto al menos deja el fichero '1_caja.act' ya que siempre lo necesita 'Entidad 3D'. Si borras '1_caja.act', tu juego ni siquiera comenzará.

Vamos a ver como definir uno de estos objetos y donde colocamos la imagen 2D del mismo:
Supongamos que queremos añadir el objeto 'Tarjeta' a nuestra aventura. Ya tenemos un fichero .act que es una tarjeta y también hemos dibujado una imagen de 32x32 de nuestra tarjeta:


juegos
Imagen de 32x32


entidad3d
tarjeta.act


Ahora vamos a darle un número a este objeto, por ejemplo el 2, ya que el número 1 ya está ocupado por la caja (por eso se llama '1_caja.act') y que no podemos borrar. Renombramos el archivo .act de la tarjeta al nombre '2_tarjeta.act' y lo copiamos en la carpeta 'Objects' de 'Entidad 3D'.


Tutorial Entidad 3D
Fichero '2_tarjeta.act' en la carpeta 'Objects'



Seguidamente utilizamos nuestro editor de imágenes preferido (tipo Gimp, Adobe Photoshop o parecido) y abrimos el fichero 'objetos_distintos.bmp' que encontraremos en la carpeta 'Bmp' de 'Entidad 3D'.

Lo que contiene este fichero son todas las representaciones 2D de un tamaño de 32x32 de todos los objetos distintos que tengamos. A medida que los vayamos diseñando los tenemos que ir 'pegando' en esta imagen BMP de arriba a abajo, pegados a la izquierda y sin separación entre ellos.

Por lo tanto el primer cuadro de 32x32 en la parte superior izquierda pertenecerá al objeto número 1, que es precisamente la caja (1_caja.act) y para el objeto número 2, que es el objeto que estamos preparando, pondríamos nuestra imagen de 32x32 justo debajo.

diseño
Fichero 'objetos_distintos.bmp' en la carpeta 'Bmp'


Si queremos que este fichero de objetos sea particular de un juego, tendremos que crear un fichero igual que el anterior pero con el nombre PrimerNivel_objetos_distintos.bmp, siendo 'PrimerNivel' en nombre del primer nivel de nuestro juego. Si hacemos esto siempre tendremos que trabajar sobre este fichero para que los imágenes de los objetos aparezcan en ese juego en concreto.

De esta forma, mediante el nombre del fichero .act y el orden de imágenes en el fichero 'objetos_distintos.bmp', 'Entidad 3D' es capaz de relacionar un objeto .act con su imagen para el inventario, de manera que nosotros no tengamos que hacer nada más.

Ahora vamos a ver como situamos, en nuestro escenario, uno de estos objetos que hemos definido para que el jugador pueda recogerlo con sólo acercarse a él:

Vamos a nuestro escenario en 'World Editor' y añadimos una entidad 'ItemObject' en la posición que queremos que aparezca nuestra tarjeta. Una vez colocada, edita las propiedades de esta entidad y rellena el parámetro 'ActorFile' con '2_tarjeta.act' (sin las comillas). También puedes rellenar el parámetro 'ObjectName' con un nombre para este objeto, que podría ser 'Tarjeta' o 'La llave' o lo que quieras, este nombre sólo lo utiliza 'Entidad 3D' de forma automática para ponerlo en pantalla cuando estemos recogiendo el objeto.

creacion


Sólo nos queda compilar el nivel, ver si nuestra tarjeta aparece y probar a ver si nuestro personaje recoge el objeto.

tutorial
La tarjeta en el escenario


juegos
Una vez recogida, la tarjeta aparece en el inventario del jugador


Si queremos podemos añadir en nuestro escenario múltiples objetos iguales, procediendo de la misma forma: añadir entidad 'ItemObject' con 'ActorFile'= 2_tarjeta.act (en el caso de nuestra tarjeta). Al añadir un segundo objeto igual, no es necesario volver a rellenar el parámetro 'ObjectName'.


Pues supongo que ya te podrás imaginar como definir un tercer objeto para nuestro sistema ......


Colocando objetos no recogibles:

En ocasiones nos puede interesar colocar un objeto representado también por un fichero .act, pero que simplemente esté ahí y que no sea un objeto que el jugador lo pueda recoger. Pues esto es tan simple como añadir una entidad 'ItemObject' con su 'ActorFile' con el nombre del fichero .act que lo representa, sin números delante ni nada, el nombre tal cual. Este fichero .act también ha de estar en la carpeta 'Objects'.

entidad3d

Tutorial Entidad 3D



5º- Abriendo puertas:


Tocando resortes:
Sin abandonar el editor 'World Editor' vamos a ver como podemos hacer para que una de las puertas que hayamos creado (porque se supone que ya sabemos crear puertas) sólo se abra en ciertas condiciones y no como hasta ahora hemos visto en el tutorial de 'World Editor' que se abrían siempre que alguien se acercaba a ellas, incluido los enemigos.

Para comenzar con algo sencillo vamos a hacer que la puerta se abra siempre y cuando el personaje haya tocado cierto punto del escenario previamente, punto que no tenemos porque poner al lado de la puerta, sino que puede estar en la otra punta del escenario, de la habitación o donde quieras.
El objetivo no es que se abra la puerta al tocar este punto, sino que una vez tocado este punto, cuando el jugador se acerque a la puerta, esta se abrirá siempre.
Para comenzar podemos crear alguna especie de resorte que representará nuestro punto, si quieres puedes hacer un pequeño cubo que sobresalga de una pared sin animación y sin más complicaciones.

diseño


Ahora vamos a crear nuestro primer sistema de comandos de 'Entidad 3D' para controlar si el jugador ha tocado o no el resorte y en función de eso, que la puerta se abra o no. Para ello añadimos la entidad 'Command' y la colocaremos en la posición donde hemos colocado el resorte. Si editas las propiedades de esta entidad 'Command' (seguramente se llamará 'Command1') verás un parámetro llamado 'CommandsFile' que rellenaremos con un nombre cualquiera, pero que tenga algún sentido con lo que estamos haciendo, por ejemplo 'tocaresorte.ini' (sin las comillas). Este nombre hará referencia a un fichero llamado 'tocaresorte.ini' que construiremos nosotros mismos con algún editor de textos ANSI tipo Notepad o similar.


creacion

tutorial


Este fichero con extensión .ini lo crearemos en la carpeta 'Comandos' de 'Entidad 3D'.
juegos


¿ Que hay que poner dentro de este fichero ?... pues todos los comandos y condiciones que queramos que se procesen cuando el jugador alcance la posición donde hemos colocado la entidad 'Command1'. Existen numerosos comandos que se describen con detalle más adelante, pero de momento vamos a centrarnos sólo en los que nos interesan para lo que queremos realizar.
Pues bien, editamos nuestro aún vacío fichero 'tocaresorte.ini' y lo rellenamos con lo siguiente:

ACCI PONE tocoresorte=1

... y salvamos el fichero. Así de simple. En esta ocasión estamos utilizando el comando 'PONE' para establecer la variable 'tocoresorte' (nombre que nos hemos inventado) a 1 ya que en 'Entidad 3D' cualquier variable está 0 al comenzar el juego. El 'ACCI' siempre hay que ponerlo antes de un comando.
De esta forma cuando el jugador alcance la posición de nuestra entidad 'Command1' se procesará el fichero de comandos 'tocaresorte.ini' con lo que llevará siempre a ponerse a 1 la variable 'tocoresorte'.
¿Y ahora cómo hacemos para que la puerta se abra si el jugador se acerca a ella pero siempre y cuando la variable 'tocoresorte' valga 1?. Pues no nos queda más remedio que hacer otro fichero .ini y asociarlo a la entidad 'Door' que tengamos para esta puerta en cuestión. Editamos esta entidad, que en mi ejemplo se llama 'Door2', y en la casilla del parámetro llamado 'CommandsFile' ponemos por ejemplo 'abre_puerta2.ini'.

entidad3d

Tutorial Entidad 3D


Ahora sólo nos queda crear un fichero llamado 'abre_puerta2.ini' en la carpeta 'Comandos' de 'Entidad 3D'. Dentro de este fichero pondremos lo siguiente:

IF COND tocoresorte=1
ACCI TEXT Abriendo puerta
ELSE
ACCI TEXT No has tocado el resorte
ENDIF

Como ves he comenzado estableciendo una condición con 'IF COND tocoresorte=1', por lo que todo lo que vaya detrás de esta linea y hasta el indicativo 'ENDIF' afecta a esta condición. En este caso también he utilizado el indicativo 'ELSE' para presentar un mensaje en el caso de que el jugador no haya tocado el resorte.
O sea, que si se cumple la condición se procesarán los comandos entre el 'IF COND' y el 'ELSE', mientras que si no se cumple la condición se procesarán los comandos entre 'ELSE' y 'ENDIF'.
Los comandos 'TEXT' que he puesto son para poner un mensaje en la parte superior de la pantalla. No te olvides nunca de poner un 'ACCI' delante de cada comando.
En nuestro ejemplo la condición se cumplirá siempre y cuando la variable 'tocoresorte' valga 1, además al ser la primera condición de esta fichero .ini, 'Entidad 3D' también lo tomará para decidir abrir la puerta o no.
En resumen, cuando el jugador se acerque a la puerta y la variable 'tocoresorte' valga 1, se abrirá la puerta al mismo tiempo que se verá el mensaje 'Abriendo puerta'. Pero cuando el jugador se acerque a la puerta y la variable 'tocoresorte' no valga 1, pues se presentará el mensaje 'No has tocado el resorte' y la puerta no se abrirá.

Quizás te asalte una cuestión: ¿ Como afectan estos sistemas de comandos a los enemigos ?, ¿ Podría un enemigo llegar a tocar el resorte y luego dirigirse a la puerta y abrirla ?. Pues no, el caso es que los comandos de 'Entidad 3D' no tienen efecto si un enemigo alcanza la posición de una entidad con comandos asociados.
Ya, pero y si el jugador toca el resorte (por lo tanto la variable 'tocoresorte' ya vale 1) y después un enemigo se acerca a la puerta... ¿ la abriría ? ... pues tampoco. La única forma que tendría un enemigo de abrir una puerta es que esa puerta no tenga ningún fichero de comandos .ini asociado.

El funcionamiento de los ascensores o plataformas móviles (entidades 'MovigPlat') es exactamente igual que el de las puertas, sólo que toman el resultado de la primera condición del fichero .ini asociado para mover la plataforma o no.


diseño



Utilizando llaves:
Ahora vamos a ver como podemos hacer para que una puerta sólo se abra si el jugador posee la llave correcta.

Para ello vamos a utilizar el objeto tarjeta, que hemos definido en el anterior capítulo de este tutorial, como llave de acceso a una puerta.
También vamos a utilizar la misma puerta que hemos utilizado con el ejemplo del resorte, ya que lo que vamos a hacer es simplemente cambiar los comandos que tenemos en el fichero 'abre_puerta2.ini' que como recordarás esta asociado a la entidad 'Door' de esta puerta.
Abrimos el fichero 'abre_puerta2.ini' con un editor, borramos todo lo que hay e introducimos lo siguiente:

IF COND 2_tarjeta.act=1
ACCI TEXT Abriendo puerta
ELSE
ACCI TEXT No tienes la tarjeta
ENDIF

Con la condición '2_tarjeta.act=1' lo que estamos preguntando es si el jugador lleva en su inventario de objetos un objeto llamado '2_tarjeta.act', si lleva uno, pues la condición se cumple, si no, pues no se cumple.
Pero piensa una cosa, si el jugador lleva más de una de estas tarjetas, la condición no se cumplirá y la puerta no se abrirá, para solucionar esto tendrías que cambiar la linea del 'IF' anterior por esta:

IF COND 2_tarjeta.act>0


Diversas variaciones:
A continuación vamos a ver diferentes variaciones de lo que hemos visto en este capítulo para que te hagas una idea de la cantidad de combinaciones que puedes realizar con 'Entidad 3D' si utilizas de forma correcta e ingeniosa diversos comandos y condiciones.

# La puerta sólo se abre con la llave pero si previamente se ha tocado el resorte:
IF COND tocoresorte=1 COND 2_tarjeta.act=1
ACCI TEXT Abriendo puerta
ELSE
ACCI TEXT Acceso denegado
ENDIF

# Igual a lo anterior pero además quiero hacer sonar un fichero de audio .MP3 cuando no se abra la puerta:
IF COND tocoresorte=1 COND 2_tarjeta.act=1
ACCI TEXT Abriendo puerta
ELSE
ACCI TEXT Acceso denegado
ACCI SONI alarma
ENDIF
Para este ejemplo has de tener en la carpeta 'Wav' de 'Entidad 3D' un fichero de sonido llamado 'alarma.mp3'.
De hecho si tienes un fichero llamado 'alarma.wav' también funcionará, o si es 'alarma.mod' también, ya que si te has fijado el comando 'SONI' no necesita la extensión del fichero de sonido, 'Entidad 3D' busca cualquier fichero de sonido 'alarma.' en la carpeta 'Wav' y lo hace sonar.

# La puerta sólo se abre con una llave de un solo uso, cuando se abra la puerta, la llave ha de desaparecer del inventario del jugador:
IF COND 5_llave.act=1
ACCI TEXT Llave correcta
ACCI QINV 5_llave.act
ELSE
ACCI TEXT No llevas la llave
ENDIF
Si el jugador lleva por ejemplo 5 llaves, sólo le desaparecerá una cada vez que abra la puerta.

# Un ascensor sólo se mueve si el jugador lleva tres bolas de energía, bolas que han de desaparecer del inventario del jugador al utilizar el ascensor:
IF COND 4_bola.act=3
ACCI TEXT Subiendo planta
ACCI QTIN 4_bola.act
ELSE
ACCI TEXT No tienes las 3 bolas
ENDIF
Si se abre la puerta, al jugador le desaparecen todas las bolas que pueda llevar en el inventario.

# El tema del ascensor y las bolas quiero complicarlo más diciendo al jugador la cantidad de bolas que le faltan en el caso de que no tenga las tres bolas:
IF COND 4_bola.act=3
ACCI TEXT Subiendo planta
ACCI QTIN 4_bola.act
ELSE
IF COND 4_bola.act=0
ACCI TEXT Te faltan 3 bolas
ENDIF
IF COND 4_bola.act=1
ACCI TEXT Te faltan 2 bolas
ENDIF
IF COND 4_bola.act=2
ACCI TEXT Solo te falta una bola
ENDIF
ENDIF

# Quiero realizar dos condiciones distintas, además de controlar lo de la puerta con la tarjeta, quiero advertir al jugador de la necesidad de un objeto en la habitación que quiere entrar:
IF COND 2_tarjeta.act=1
ACCI TEXT Abriendo puerta
ELSE
ACCI TEXT No tienes la tarjeta roja
ENDIF

IF COND 7_cristal.act=0
ACCI TEXT Sin el cristal no podrás sobrevivir
ENDIF
Estas dos condiciones 'IF COND', y las que quieras, pueden ir en el mismo fichero .ini sin problemas.


6º- Personajes:


Establecer el personaje protagonista:
Se trata del personaje que controla el jugador a lo largo del juego. Para establecer que fichero .act es el que representará al protagonista, sólo es necesario copiar ese fichero .act en la carpeta 'Actors' de 'Entidad 3D' pero cambiándole el nombre a:

PrimerNivel_player1.act.

'PrimerNivel' será el nombre del primer nivel de que consta tu juego.

Para el personaje alternativo el nombre del fichero .act tiene que ser:

PrimerNivel_player2.act.

Estos ficheros de personajes serán los que se utilizarán durante todo el juego, independientemente del nivel que esté cargado.


Personajes secundarios:
Son personajes que podremos añadir a nuestro escenario y cuya función tendremos que definir nosotros según el desarrollo de nuestro juego. Estos personajes no se desplazan por el escenario, aunque en el sitio que estén pueden realizar cualquier animación.
Cada uno de estos personajes también lo define un archivo .act que ha de estar en la carpeta 'Actors' de 'Entidad 3D'.
Vamos a ver como podemos poner uno de estos personajes en nuestro escenario.
Nos dirigimos a nuestro programa 'World Editor' y añadimos a nuestro escenario una entidad llamada 'SpecificActor' posicionándola en el lugar que queremos que aparezca el personaje. Ten en cuenta que la cruz que muevas de esta entidad representa los pies del personaje. En la casilla del parámetro 'ActorFile' ponemos en nombre del fichero .act del personaje que deseamos poner, por ejemplo 'Mayork.act'.

creacion


Compilamos nuestro escenario y comprobamos el resultado.
tutorial

La entidad 'SpecificActor' podemos utilizarla para añadir personajes que le digan algo al jugador (por texto o mediante un fichero de sonido), que le entreguen o le quiten algo al jugador, que estén bloqueando una salida o simplemente para dar ambiente al lugar.


7º- Enemigos:


Añadiendo un enemigo:

En 'Entidad 3D' podemos añadir una serie de personajes (definidos por ficheros .act) que el sistema se encarga de controlar automáticamente y que harán la vida imposible al jugador, al persegirle y dispararle a la mínima oportunidad que tengan al jugador a tiro.

Para añadir uno de estos enemigos lo único que tenemos que hacer es añadir una entidad 'BotActorStart' en la posición que queramos que aparezca este enemigo. Ten en cuenta que la cruz que muevas de esta entidad representa los pies de este enemigo.

juegos


Compilamos y comprobamos si nuestro enemigo se lanza hacia nosotros al vernos.
entidad3d


Aquí, como ves, no hemos especificado el nombre del fichero .act que representa el enemigo. Consulta la sección de la entidad 'BotActorStart' para conocer a fondo todos sus parámetros y ver como se establecen los .act que definen a los enemigos.

5 comentarios - Tutorial Entidad 3D

RICKYMOSCA
la pagina para descargar entidad 3d no funca mas che ,es al pedo el pedo sacando a los que los descargaron antes de 2 años
kevinq13
oye amigo muy bueno tu post me gusto mucho se te agradece aqui estan tus +10