** ATENCIÓN **

1.- Es recomendable que no actualices directamente ninguna versión anterior de Entidad 3D que tengas instalada actualmente en tu PC. Lo más correcto es que primero renombres la carpeta actual de Entidad 3D ( carpeta C:\entidad_3d\ ) para tener una copia de seguridad de tus juegos y recursos. Posteriormente elimina o renombra la carpeta de Entidad 3D de tu escritorio y finalmente instala esta nueva versión ( v4.5a ).

Cuando esté instalada la nueva versión debes ir copiando todos tus juegos y recursos desde la copia de seguridad hacia las nuevas carpetas de Entidad 3D.


2.- Debido al uso de ficheros .VBS de Visual Basic Script que descargan texturas de Internet y usan un conversor externo, algunos sistemas antivirus alertan falsamente de la presencia del troyano 'TrojanDownloader:HTML/Adodb.gen!A' en este tipo de archivos en el momento de instalar Entidad 3D.

Si tu antivirus elimina estos ficheros .VBS, no se verá alterado el correcto funcionamiento de Entidad 3D, aunque no podrás usar el nivel de ejemplo 'Webcam'.


Nuevas características de Entidad 3D v4.5a

Parámetros de entidades:
En las entidades con parámetro Sombra se puede seleccionar un nuevo tipo de sombra octogonal. Tipo de sombra número 8.

En la entidad ItemObject el fichero de comandos indicado en el parámetro CommandsFile se puede usar para permitir o no la recogida del objeto.

En la entidad ItemObject nuevo parámetro Fisica_objeto para aplicar la fuerza de gravedad a los objetos.

En la entidad DynamicLight nuevo parámetro SombraNivel para poder seleccionar si queremos o no que esta luz produzca sombras según la arquitectura del nivel

En la entidad ConfigPersonaje nuevo parámetro Sombra.

En la entidad DeathMatchStart nuevos parámetros Anim_nadar, Se_hunde_en_agua y Salud_jugador.

En la entidad BotActorStart nuevos parámetros Anim_nadar, Se_hunde_en_agua, Altura_subir_bloque, Altura_bajar_bloque, Nivel_armadura, Vidas, Buscar_salud, Buscar_municion, Recargar_armas y HUD_salud.

En la entidad BotActorStart el parámetro ExplosionMorir ahora reproduce un nuevo efecto de explosión.

En la entidad Command nuevos parámetros Zona_influencia, Activa, Reaparece y Tiempo_reaparicion.

En la entidad Configuracion nuevos parámetros para cámaras: Camara_RPG_dist, Camara_RPG_angulo, Camara_3PER_alt y Camara_3PER_dist.

En las entidades Door y MovingPlat nuevo parámetro Evento_con_movimiento para detectar eventos en puertas y plataformas en movimiento.

En la entidad SpecificActor nuevos parámetros Bloqueo_Proyectiles, Bloqueo_Bots y CommandsFile2.


Nuevos comandos:
EXEC_PROCESO para lanzar programas o procesos externos en paralelo.

BUSCAR_CADENA para buscar una cadena de texto dentro de una variable.

COPIAR_SUB_CADENA para copiar parte del contenido de una variable en otra variable.

BUSCAR_CADENA_FICHERO para buscar una cadena de texto dentro de un fichero del disco.

FICHERO_A_VARIABLE para copiar el contenido de un fichero en una variable.

VARIABLE_A_FICHERO para copiar el contenido de una variable en un fichero.

DAME_LONGITUD_FICHERO Para averiguar el tamaño de un fichero del disco.

ELIMINAR_FICHERO para eliminar un fichero del disco.

CREAR_PROCFICH para crear un proceso que comprueba continuamente la existencia de un fichero en el disco.

DESACTIVAR_PROCFICH para desactivar un proceso que comprueba continuamente la existencia de un fichero en el disco.

FX_EXPLOSION para producir explosiones en cualquier posición del nivel.


Actualización de comandos:
MSJ1 soporta nuevos tipos de letra.

MSJ1 tiene nuevos parámetros para soportar transparencia, redimensionado y coloreado.

OVERLAY1 tiene nuevos parámetros para soportar transparencia, redimensionado y coloreado.

ITEMOBJECT_POS ahora hace reaparecer el objeto asociado a la entidad ItemObject en caso de que este objeto haya desaparecido al haber sido recogido.

Se anulan los comandos IMG1 y IMG0 en favor de los comandos OVERLAY1 y OVERLAY0.

POSICION_JUGADOR ahora soporta reposicionamiento absoluto o relativo.

Soporte de variables entre símbolos %% en la sintaxis de los comandos MSJ0, MOV0, CARGAR_NIVEL, VELOCIDAD, SALTO, BARRAVALOR, OVERLAY1 y OVERLAY0.

CAMBIAR_PARAMETRO ahora también soporta los parámetros Altura_subir_bloque, Altura_bajar_bloque, Vidas, Nivel_armadura y HealthLevel.


Nuevas variables del sistema:
PROYECTIL_IMPACTA_MODEL para determinar qué tipo de proyectil impacta sobre bloques 'model' del nivel. Para usar en ficheros de comandos lanzados desde las entidades Door, MovingPlat o CommandModel.

PROYECTIL_IMPACTA_SPECIF para determinar qué tipo de proyectil impacta sobre una entidad 'SpecificActor' del nivel. Para usar en ficheros de comandos lanzados desde la propia entidad 'SpecificActor'.


Cambios en el HUD:
Se optimiza el sistema de HUD para conseguir mayor velocidad y mejor calidad gráfica. Se ha programado completamente desde cero.

Soporte de transparencia real (alpha blending) para todos los elementos del HUD.


Consola de sistema:
Nuevos colores y tipos de letra en la consola de sistema.

Ahora la consola también soporta la entrada de caracteres usando las teclas SHIFT o ALT en combinación con otras teclas.

Nuevo comando de consola llamado CLS para borrar todo el contenido de la consola de sistema.

El comando MEM ahora también muestra la cantidad de elementos que contiene el nivel cargado.


Nuevas características:
Soporte de procesos en segundo plano usando el comando EXEC_PROCESO. Esto incluye la posibilidad de lanzar 'scripts' de Visual Basic Script desde Entidad 3D.
Estos 'scripts' pueden:

- Realizar peticiones a Internet para descargar ficheros de cualquier tipo.

- Redimensionar / convertir imágenes descargadas de Internet antes de usarlas en Entidad 3D.

- Enviar a servidores de Internet contenidos de variables de Entidad 3D.

- ... o cualquier proceso que se te ocurra con Visual Basic Script.

Existe un ejemplo llamado 'Webcam' en la carpeta de Entidad 3D que usa el comando 'EXEC_PROCESO' en combinación con este tipo de 'scripts' que descargan imágenes de cámaras Webcam de Internet y las muestra en las paredes del nivel 3D.


Texturas animadas con soporte para transparencia.

Cada icono de cada objeto se representa a partir de ficheros gráficos independientes.

Cada objeto del inventario del jugador puede tener una imagen que se mostrará cuando el jugador seleccione el objeto en su inventario de objetos.

La captura de pantalla ahora emite un sonido.

Ahora es opcional el uso de la imagen de final de juego 'final_juego.bmp', pero debe ser siempre en formato .BMP

Ahora los impactos de los proyectiles de las cuatro armas pueden abrir puertas, accionar ascensores o activar eventos de la entidad CommandModel.

Se incorpora, dentro de la carpeta VBS, la utilidad gratuita ImageMagick de ImageMagick Studio LLC. que usa Entidad 3D para convertir y redimensionar las imágenes descargadas de Internet.

El archivo '.log' de seguimiento de procesos de Entidad 3D, ahora muestra más información sobre la Unidad Central de Procesamiento (CPU).


Nuevas características en modo online:
Nuevo modo de juego online llamado 'Libre'.
Es un modo de funcionamiento similar al modo 'Pelea a muerte' pero en el nuevo modo sólo finaliza la partida cuando todos los jugadores han muerto.

Soporte de sombras dinámicas para los personaje de los jugadores, usando el parámetro 'Sombra' de la entidad ConfigPersonaje.

Se mejoran los mensajes que se muestran al iniciar los modos de juego online.


'bugs' solucionados en modo de juego online:
Cuando se usaban dos o más ventanas de Entidad 3D al mismo tiempo en la misma máquina (normalmente para pruebas de juegos online sobre una red local), los controles del ratón y del teclado de una ventana interferían al resto de ventanas.

La bandera que se recoge del escenario ahora también se muestra en 3D para jugadores Clientes, no como una textura plana.

El parámetro 'Boton_accion' ahora también funciona con las entidades Door y MovingPlat desde jugadores Clientes.

En jugadores Clientes, en ocasiones se ocultaban algunos elementos 3D del escenario dependiendo del ángulo de la cámara y de bloques delante del jugador.

El jugador Servidor obtenía todos los objetos que los jugadores Clientes intentaban recoger. Sólo el jugador Servidor puede recoger objetos.


Otros 'bugs' solucionados:
Ahora el jugador no podrá cambiar de cámara si está activada una cámara fija.

En ocasiones no funcionaban correctamente las variables que contenían cifras muy altas, incluyendo la variable del dinero del jugador.

Al usar el comando OVERLAY1 con un número de 'overlay' que ya se mostraba en pantalla, se creaba un segundo 'overlay' con la misma imagen. Ahora se redefinen las características del 'overlay' con los datos indicados en el propio comando.

Se han corregido varios 'bugs' en las animaciones del jugador.

Un enemigo reproducía la animación de muerto si había muerto por lava y se le volvía a disparar.

No se reponía la munición del arma número 1 (Blaster) cuando un enemigo reaparecía después de muerto.

Cuando el parámetro Pierde_armas de la entidad DeathMatchStart estaba activado, hacía perder todas las vidas del jugador.

La cámara tipo Plataformas ahora encuadra mejor al jugador.


Documentación:
Actualización de la sección Preguntas y respuestas más frecuentes.

Actualización de la sección 'Proceso de creación de juegos online' con el método para probar juegos online en un sólo PC. Método que ya estaban usando varios usuarios de Entidad 3D en versiones anteriores.

Se añade un tutorial para usar el editor de textos Notepad++ para editar los ficheros de comandos con autocoloreado.


Incompatibilidades con la versión anterior de Entidad 3D:
Se han cambiado los nombres de diversos ficheros gráficos, entre ellos los nombres que deben tener los 'overlays', los iconos de los objetos y los gráficos del sistema de HUD.

Se ha cambiado la ubicación de muchos archivos gráficos dentro de la carpeta 'bmp\'.

Se han modificado los gráficos usados por la entidad MarcadorBarra para adaptarlos al nuevo HUD.

Se han modificado las posiciones y tamaños de algunos elementos del marcador (como el indicador del arma seleccionada). Usa la entidad Marcador en tu juego para resituar estos elementos si es necesario.

No se debe usar el símbolo # en nombres de objetos o descripciones del objeto, ya que Entidad 3D lo usa internamente como separador y podría crear algún conflicto.

Ahora Entidad 3D es incompatible con adaptadores gráficos muy antiguos, excepto si se selecciona OpenGL como 'driver' de pantalla para Entidad 3D. Esta incompatibilidad normalmente se manifiesta en forma de mensajes de error 'BeginFrame' o 'EndFrame'.
También pueden aparecer errores en el fichero 'D3DDrv.Log' del 'driver' de vídeo.
Principalmente se debe a que ahora Entidad 3D usa texturas de cualquier tamaño para el HUD y en gran cantidad. Esto hace que algunas tarjetas gráficas muy antiguas no soporten estos requerimientos.



Recuerda que debes realizar este proceso para poder usar los juegos realizados con la versión anterior.

Para usar tus niveles anteriores también deberás revisar las modificaciones que se han realizado en los comandos en esta actualización de Entidad 3D.

Para más información sobre estas nuevas características, consulta las secciones de los comandos y las entidades correspondientes que encontrarás en este mismo manual.