Doom Wiki
Advertisement
Doom Wiki

El código fuente de Heretic, los archivos de lenguaje C a partir de los cuales un compilador puede generar el archivo HERETIC.EXE, fueron lanzados el 11 de enero de 1999,[1] por Kenn Hoekstra de Activision, actuando en concierto con Raven Software, poco después del lanzamiento del código fuente de Doom por John Carmack de id Software. Fue lanzado simultáneamente con el código fuente de Hexen.

Licencia[]

El código fuente de Heretic fue lanzado inicialmente bajo un EULA estándar de Activision que limitaba la capacidad legal de muchas portaciones (source ports), particularmente aquellas que habían hecho la transición a la Licencia Pública General GNU a finales de 1999, para usar el código. Esto fue corregido más tarde en un relanzamiento por James Monroe, después de una larga campaña de la comunidad para que se cambiara la licencia.

Aspectos técnicos[]

A diferencia de la versión fuente de Doom, que se basó en las fuentes de Linux para evitar la publicación de cualquiera de las API o el código de la biblioteca de sonidos DMX propietaria, la fuente de Heretic tal como se lanzó es para la versión original del juego para MS-DOS (Heretic en sí no fue portado a ninguna otra plataforma, por lo que había pocas opciones que hacer en este asunto). Como resultado, las fuentes tal como se publicaron no se pueden compilar sin modificaciones sustanciales para eliminar las llamadas colgantes a la API DMX.

Las adiciones tecnológicas significativas realizadas por Raven al motor de Doom para Heretic incluyen la translucidez de los sprites y los parches de pantalla, los sonidos ambientales, la capacidad del jugador para mirar hacia arriba y hacia abajo hasta cierto punto, y un sistema de inventario. Además, muchos módulos se reescribieron por completo con una funcionalidad similar pero diferente, incluida la totalidad de los menús, la barra de estado, el intermedio, el sistema de chat multijugador, el HUD, el código de partida guardada y la actualización de video de bajo nivel.

Es de particular interés que Heretic se ejecuta en un modo gráfico Modo13h de video plano de DOS, a diferencia del Modo Y no planar modificado que fue utilizado por Doom. Ambos modos tienen una resolución efectiva de 320x200 con una relación de aspecto física de 4:3, pero el Modo13h notoriamente no admite el cambio de página, lo que puede causar una velocidad de fotogramas percibida más baja.

En comparación con el código fuente de Doom, hay un encabalgamiento significativo de funcionalidades no relacionadas en módulos individuales, y una grave falta de archivos de encabezado bien separados, lo que resulta en una reconstrucción completa del motor con incluso modificaciones menores en el código. En comparación, se cree que el estado mejorado de la versión original de Doom se debió al trabajo realizado por Bernd Kreimeier para el lanzamiento de su libro planeado, y que, como resultado, la versión fuente de Heretic es una representación mucho mejor de cómo se veía el motor de Doom en su forma más pura.

El código fuente publicado es para la versión final 1.3 de Heretic e incluye soporte para la expansión Shadow of the Serpent Riders que se agregó en esa versión.

Prefijos de archivos y funciones[]

Algunos archivos dentro del código fuente tienen prefijos de una o dos letras para indicar su subsistema. Algunas funciones también tienen prefijos de una, dos o incluso tres letras.

AM_* Código del Automapa.
CT_* Código de chat multijugador.
D_* Inicialización / código general.
F_* Código final (fin del juego).
G_* Bucle / control del juego principal.
I_* Código específico de sistema.
IN_* Código de Pantalla intermedia.
M_* Código misceláneo.
MN_* Código de menú.
P_* Lógica del juego / comportamiento.
R_* Motor de renderizado.
SB_* Barra de estado.
V_* Representación gráfica general.
W_* Carga de archivos WAD.
Z_* Sistema de asignación de zonas de memoria.

Véase también[]

Enlaces externos[]

Referencias[]

  1. Lanzamiento del código fuente de Heretic y Hexen. Sitio web de Raven Software (archivado 🏛).
Advertisement