12 febrero 2009

Doom 3 en Linux


Esto es ya bastante antiguo, pero quizá no lo recordéis, no lo encontréis por ahí o simplemente hasta ahora no os había apetecido hacerlo, pero, como en la entrada anterior os he comentado un mod para Doom 3 en linux ahora os voy a decir como instalar y jugar a Doom 3 en Linux.

Ojo, necesitamos aceleración 3D total, si no es así, olvidad este tutorial.


Para instalar el juego en linux necesitamos tener la versión original en CD o en imagen ISO de la versión windows, luego vamos a la ftp de ID nos descargamos este archivo:
Ahora en consola y habiendole dado permisos de ejecución (chmod +x doom3-linux-1.3.1.1304.x86.run) tecleamos:
  • sh doom3-linux-1.3.1.1304.x86.run
Le damos permisos como root, le damos un par de veces a siguiente durante la instalación y ya tenemos la primera parte.

Ahora copiamos unos archivo del CD a la siguiente ruta:
  • usr/local/games/doom3/base

Los archivo son:
  • PAK000.pk4, PAK001.pk4, PAK002.pk4, PAK003.pk4
Como es una carpeta que está fuera de nuestro usuario, recomiendo abrir una consola, ir al cd y copiarlos con: sudo cp PAK000.PK4 /usr/local/games/doom3/base, así con todos.

Para arrancer el juego, desde consola también, teclead doom3.

Es problable que juego esté en inglés y puede que el sonido se escuche entrecortado. No pasa nada.

Para ponerlo en castellano copiamos el archivo zpak000.pk4 a /usr/local/games/doom3/base.

Ahora modificamos la configuración para ponerlo en español, el archivo de configuración se llama doomConfig.cfg y está en nuestro home, oculto, dentro de la carpeta .doom3 (tenéis que poder ver archivos ocultos, ctrl+h en nautilus). Editamos el archivo.

Buscamos la esta linea:
  • seta sys_lang “english”
y la sustituimos por:
  • seta sys_lang “spanish”
Guardamos y cerramos.

Si el sonido falla, desde consola, teclead:
  • doom3 +set s_driver oss
(No se si ahora con PulseAudio esto será valido o si incluso el sonido fallará).

Si usamos un procesador de 64 bits, tendremos que instalar ia32-libs desde los repositorios oficiales de Ubuntu, para poder ejecutar programas de 32 bits.

Imágenes: DeviatArt, 1 y 2.

4 comentarios:

  1. Buenas!

    Se me ocurren otras dos formas para llevar a cabo el paso de copiar los cuatro archivos.

    1. Desde consola (más rápido):
    $ sudo cp PAK00*.PK4 /usr/local/games/doom3/base

    2. O bien por modo gráfico, que es más lento pero habrá quien lo prefiera:
    $ sudo nautilus
    o en KDE:
    $ sudo dolphin
    y a partir de ahí copy/paste.

    Muy bueno el tutorial, btw.

    Un saúdo!

    ResponderEliminar
  2. Gracias por el tip, seguro que ayudará a muchos.

    ResponderEliminar
  3. Anónimo21:25

    Lo he instalado, pero me va muy lento...
    el mouse tarda mucho en cambiar de posision...... en fin.... sin poderse jugar ni a lo minimo

    mi pc es:
    Intel dual-core 1.8
    1Gb RAM
    128 intel 945gm
    Ubuntu 8.10

    me sale lo siguiente

    panta@Desconocido:~$ /usr/local/games/doom3/doom3
    DOOM 1.3.1302 linux-x86 May 12 2005 14:56:44
    found interface lo - loopback
    found interface wlan0 - 192.168.1.66/255.255.255.0
    ------ Initializing File System ------
    Loaded pk4 /usr/local/games/doom3/base/game00.pk4 with checksum 0xf07eb555
    Loaded pk4 /usr/local/games/doom3/base/game01.pk4 with checksum 0xe9d5adcf
    Loaded pk4 /usr/local/games/doom3/base/game02.pk4 with checksum 0x80401dd2
    Loaded pk4 /usr/local/games/doom3/base/game03.pk4 with checksum 0x351c23e8
    Loaded pk4 /usr/local/games/doom3/base/pak000.pk4 with checksum 0x28d208f1
    Loaded pk4 /usr/local/games/doom3/base/pak001.pk4 with checksum 0x40244be0
    Loaded pk4 /usr/local/games/doom3/base/pak002.pk4 with checksum 0xc51ecdcd
    Loaded pk4 /usr/local/games/doom3/base/pak003.pk4 with checksum 0xcd79d028
    Loaded pk4 /usr/local/games/doom3/base/pak004.pk4 with checksum 0x765e4f8b
    Loaded pk4 /usr/local/games/doom3/base/pak005.pk4 with checksum 0x8ffc3621
    Loaded pk4 /usr/local/games/doom3/base/pak006.pk4 with checksum 0x95b65ab
    Loaded pk4 /usr/local/games/doom3/base/pak007.pk4 with checksum 0x666bdb3c
    Loaded pk4 /usr/local/games/doom3/base/zpak000.pk4 with checksum 0xfaa41155
    Current search path:
    /home/panta/.doom3/base
    /usr/local/games/doom3/base
    /usr/local/games/doom3/base/zpak000.pk4 (830 files)
    /usr/local/games/doom3/base/pak007.pk4 (38 files)
    /usr/local/games/doom3/base/pak006.pk4 (48 files)
    /usr/local/games/doom3/base/pak005.pk4 (63 files)
    /usr/local/games/doom3/base/pak004.pk4 (5137 files)
    /usr/local/games/doom3/base/pak003.pk4 (4676 files)
    /usr/local/games/doom3/base/pak002.pk4 (6120 files)
    /usr/local/games/doom3/base/pak001.pk4 (8972 files)
    /usr/local/games/doom3/base/pak000.pk4 (2698 files)
    /usr/local/games/doom3/base/game03.pk4 (2 files)
    /usr/local/games/doom3/base/game02.pk4 (2 files)
    /usr/local/games/doom3/base/game01.pk4 (2 files)
    /usr/local/games/doom3/base/game00.pk4 (2 files)
    game DLL: 0x0 in pak: 0x0
    Addon pk4s:
    file system initialized.
    --------------------------------------
    ----- Initializing Decls -----
    ------------------------------
    ------- Initializing renderSystem --------
    using ARB renderSystem
    renderSystem initialized.
    --------------------------------------
    5206 strings read from strings/english.lang
    Couldn't open journal files
    execing editor.cfg
    execing default.cfg
    execing DoomConfig.cfg
    couldn't exec autoexec.cfg
    5206 strings read from strings/english.lang
    ----- Initializing Sound System ------
    sound system initialized.
    --------------------------------------
    ----- R_InitOpenGL -----
    Setup X display connection
    dlopen(libGL.so.1)
    Initializing OpenGL display
    Using XFree86-VidModeExtension Version 2.2
    DGA DirectVideo Mouse (Version 2.0) initialized
    Free86-VidModeExtension Activated at 640x480
    Using 8/8/8 Color bits, 8 Alpha bits, 24 depth, 8 stencil display.
    GL_RENDERER: Software Rasterizer
    GL_EXTENSIONS: GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_half_float_pixel GL_ARB_imaging GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_shadow GL_ARB_shadow_ambient GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_mirrored_repeat GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_transpose_matrix GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_logic_op GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_clip_volume_hint GL_EXT_compiled_vertex_array GL_EXT_convolution GL_EXT_copy_texture GL_EXT_depth_bounds_test GL_EXT_draw_range_elements GL_EXT_framebuffer_object GL_EXT_framebuffer_blit GL_EXT_fog_coord GL_EXT_gpu_program_parameters GL_EXT_histogram GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_pixels GL_EXT_paletted_texture GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_polygon_offset GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_shared_texture_palette GL_EXT_stencil_wrap GL_EXT_subtexture GL_EXT_texture GL_EXT_texture3D GL_EXT_texture_edge_clamp GL_EXT_texture_env_add GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_rectangle GL_EXT_texture_sRGB GL_EXT_vertex_array GL_APPLE_packed_pixels GL_APPLE_vertex_array_object GL_ATI_blend_equation_separate GL_ATI_texture_env_combine3 GL_ATI_texture_mirror_once GL_ATI_fragment_shader GL_ATI_separate_stencil GL_IBM_multimode_draw_arrays GL_IBM_rasterpos_clip GL_IBM_texture_mirrored_repeat GL_INGR_blend_func_separate GL_MESA_pack_invert GL_MESA_program_debug GL_MESA_resize_buffers GL_MESA_texture_array GL_MESA_ycbcr_texture GL_MESA_window_pos GL_NV_blend_square GL_NV_fragment_program GL_NV_light_max_exponent GL_NV_point_sprite GL_NV_texture_rectangle GL_NV_texgen_reflection GL_NV_vertex_program GL_NV_vertex_program1_1 GL_OES_read_format GL_SGI_color_matrix GL_SGI_color_table GL_SGI_texture_color_table GL_SGIS_generate_mipmap GL_SGIS_texture_border_clamp GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_SGIX_depth_texture GL_SGIX_shadow GL_SGIX_shadow_ambient GL_SUN_multi_draw_arrays

    ------- Input Initialization -------
    XKB extension: compile time 0x1:0x0, runtime 0x1:0x0: OK
    XKB extension present on server ( 0x1:0x0 )
    ------------------------------------
    dlopen(libasound.so.2)
    asoundlib version: 1.0.17a
    Alsa is available
    ------ Alsa Sound Initialization -----
    opened Alsa PCM device default for playback
    device buffer size: 5461 frames ( 65532 bytes )
    allocated a mix buffer of 49152 bytes
    --------------------------------------
    ...using GL_ARB_multitexture
    ...using GL_ARB_texture_env_combine
    ...using GL_ARB_texture_cube_map
    ...using GL_ARB_texture_env_dot3
    ...using GL_ARB_texture_env_add
    ...using GL_ARB_texture_non_power_of_two
    ...using GL_ARB_texture_compression
    X..GL_EXT_texture_compression_s3tc not found
    X..GL_EXT_texture_filter_anisotropic not found
    ...using GL_1.4_texture_lod_bias
    ...using GL_EXT_shared_texture_palette
    ...using GL_EXT_texture3D
    ...using GL_EXT_stencil_wrap
    X..GL_NV_register_combiners not found
    X..GL_EXT_stencil_two_side not found
    ...using GL_ATI_separate_stencil
    ...using GL_ATI_fragment_shader
    ...using GL_ARB_vertex_buffer_object
    ...using GL_ARB_vertex_program
    ...using GL_ARB_fragment_program
    ...using EXT_depth_bounds_test
    ---------- R_NV20_Init ----------
    Not available.
    ----------- R200_Init -----------
    GL_NUM_FRAGMENT_REGISTERS_ATI: 6
    GL_NUM_FRAGMENT_CONSTANTS_ATI: 8
    GL_NUM_PASSES_ATI: 2
    GL_NUM_INSTRUCTIONS_PER_PASS_ATI: 8
    GL_NUM_INSTRUCTIONS_TOTAL_ATI: 16
    GL_COLOR_ALPHA_PAIRING_ATI: 1
    GL_NUM_LOOPBACK_COMPONENTS_ATI: 3
    GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI: 3
    FPROG_FAST_PATH
    ---------------------
    ---------- R_ARB2_Init ----------
    Available.
    ---------------------------------
    ----- R_ReloadARBPrograms -----
    glprogs/test.vfp
    glprogs/test.vfp
    glprogs/interaction.vfp
    glprogs/interaction.vfp
    glprogs/bumpyEnvironment.vfp
    glprogs/bumpyEnvironment.vfp
    glprogs/ambientLight.vfp
    glprogs/ambientLight.vfp
    glprogs/shadow.vp
    glprogs/R200_interaction.vp
    glprogs/nv20_bumpAndLight.vp
    glprogs/nv20_diffuseColor.vp
    glprogs/nv20_specularColor.vp
    glprogs/nv20_diffuseAndSpecularColor.vp
    glprogs/environment.vfp
    glprogs/environment.vfp
    glprogs/arbVP_glasswarp.txt: File not found
    glprogs/arbFP_glasswarp.txt: File not found
    -------------------------------
    using ARB_vertex_buffer_object memory
    using ARB2 renderSystem
    found DLL in pak file: /usr/local/games/doom3/base/game01.pk4/gamex86.so
    copy gamex86.so to /home/panta/.doom3/base/gamex86.so
    --------- Initializing Game ----------
    gamename: baseDOOM-1
    gamedate: May 10 2005
    Initializing event system
    ...472 event definitions
    Initializing class hierarchy
    ...142 classes, 381376 bytes for event callbacks
    Initializing scripts
    /proc/cpuinfo CPU frequency: 1733 MHz
    Compiled 'removeInitialSplineAngles': 2392.3 ms
    ---------- Compile stats ----------

    Memory usage:
    Strings: 79, 12592 bytes
    Statements: 67866, 1357320 bytes
    Functions: 2108, 250452 bytes
    Variables: 147244 bytes
    Mem used: 2478772 bytes
    Static data: 2277552 bytes
    Allocated: 3284208 bytes
    Thread size: 7068 bytes

    ...6 aas types
    game initialized.
    --------------------------------------
    -------- Initializing Session --------
    session initialized
    --------------------------------------
    --- Common Initialization Complete ---
    terminal support enabled ( use +set in_tty 0 to disabled )
    pid: 7878
    992 MB System Memory
    guessing video ram ( use +set sys_videoRam to force ) ..
    guess failed, return default low-end VRAM setting ( 64MB VRAM )
    64 MB Video Memory
    Async thread started

    ResponderEliminar
  4. Creo que:

    GL_RENDERER: Software Rasterizer

    Eso puede ser el problema, parece que la aceleración 3D la está haciendo por software.

    Verifica que tienes activada la aceleración por hardware.

    ResponderEliminar