/Quake2modding

Repo for the "Modding Quake 2" journey: https://www.youtube.com/playlist?list=PLJmGdWOhfM5kjK6O9_eCfIol1S9amzgZD

Primary LanguageCGNU General Public License v2.0GPL-2.0

Quake2modding

Repo for the "Modding Quake 2" journey: https://www.youtube.com/playlist?list=PLJmGdWOhfM5kjK6O9_eCfIol1S9amzgZD

Notes

  • I sometimes work on a two monitor setup. When I start the game and drag the Quake II window over to my other monitor, it will set the values in config.cfg to eg

    set vid_ypos "125"
    set vid_xpos "2405"

    If you then start the game with those settings on single monitor that isn't super high res, then the window is not visible, because it spawns somehere far right (see the xpos) which is no good! So make sure to check those settings in baseq2/config.cfg!

    Here is a sensible config that has worked for me:

    // generated by quake, do not modify
    bind TAB "inven"
    bind ENTER "invuse"
    bind ESCAPE "togglemenu"
    bind SPACE "+moveup"
    bind ' "invdrop"
    bind + "sizeup"
    bind , "+moveleft"
    bind - "sizedown"
    bind . "+moveright"
    bind / "weapnext"
    bind 0 "use BFG10K"
    bind 1 "use Blaster"
    bind 2 "use Shotgun"
    bind 3 "use Super Shotgun"
    bind 4 "use Machinegun"
    bind 5 "use Chaingun"
    bind 6 "use Grenade Launcher"
    bind 7 "use Rocket Launcher"
    bind 8 "use HyperBlaster"
    bind 9 "use Railgun"
    bind = "sizeup"
    bind [ "invprev"
    bind \ "+mlook"
    bind ] "invnext"
    bind ` "toggleconsole"
    bind a "+moveleft"
    bind b "use rebreather"
    bind c "+movedown"
    bind d "+moveright"
    bind e "use environment suit"
    bind f "+use"
    bind g "use grenades"
    bind h "wave 0"
    bind i "use invulnerability"
    bind j "wave 1"
    bind k "wave 2"
    bind l "wave 3"
    bind p "use power shield"
    bind q "use quad damage"
    bind s "+back"
    bind t "messagemode"
    bind u "wave 4"
    bind w "+forward"
    bind x "score"
    bind z "+lookdown"
    bind ~ "toggleconsole"
    bind BACKSPACE "invdrop"
    bind UPARROW "+forward"
    bind DOWNARROW "+back"
    bind LEFTARROW "+left"
    bind RIGHTARROW "+right"
    bind ALT "+strafe"
    bind CTRL "+attack"
    bind SHIFT "+speed"
    bind F1 "cmd help"
    bind F2 "menu_savegame"
    bind F3 "menu_loadgame"
    bind F4 "menu_keys"
    bind F5 "menu_startserver"
    bind F6 "echo Quick Saving...; wait; save quick"
    bind F9 "echo Quick Loading...; wait; load quick"
    bind F10 "menu_quit"
    bind F12 "screenshot"
    bind INS "+klook"
    bind DEL "+lookdown"
    bind PGDN "+lookup"
    bind END "centerview"
    bind MOUSE1 "+attack"
    bind MOUSE2 "+strafe"
    bind MOUSE3 "+forward"
    bind PAUSE "pause"
    set g_select_empty "0"
    set in_joystick "0"
    set in_mouse "1"
    set cl_vwep "1"
    set gender_auto "1"
    set gender "male"
    set fov "90"
    set msg "1"
    set rate "24900"
    set freelook "1"
    set cl_stereo_separation "0.4"
    set adr8 ""
    set adr7 ""
    set adr6 ""
    set adr5 ""
    set adr4 ""
    set adr3 ""
    set adr2 ""
    set adr1 ""
    set adr0 ""
    set cd_nocd "0"
    set s_primary "0"
    set s_mixahead "0.2"
    set s_loadas8bit "0"
    set s_khz "22"
    set s_volume "0.0"
    set sw_stipplealpha "0"
    set vid_gamma "1"
    set vid_ypos "125"
    set vid_xpos "0"
    set vid_ref "gl"
    set sv_reconnect_limit "3"
    set allow_download_maps "1"
    set allow_download_sounds "1"
    set allow_download_models "1"
    set allow_download_players "0"
    set allow_download "1"
    set hostname "noname"
    set gl_driver "opengl32"
    set gl_mode "8"
    set gl_ext_palettedtexture "1"
    set gl_finish "0"
    set gl_particle_min_size "2"
    set gl_particle_max_size "40"
    set gl_particle_size "40"
    set gl_particle_att_a "0.01"
    set gl_particle_att_b "0.0"
    set gl_particle_att_c "0.01"
    set gl_modulate "1"
    set gl_shadows "0"
    set gl_texturemode "GL_LINEAR_MIPMAP_NEAREST"
    set gl_texturealphamode "default"
    set gl_texturesolidmode "default"
    set gl_vertex_arrays "0"
    set gl_ext_swapinterval "1"
    set gl_ext_multitexture "1"
    set gl_ext_pointparameters "1"
    set gl_ext_compiled_vertex_array "1"
    set gl_swapinterval "1"
    set gl_3dlabs_broken "1"
    set skin "male/grunt"
    set name "Player"
    set lookstrafe "0"
    set lookspring "1"
    set m_pitch "0.022"
    set hand "0"
    set cl_run "0"
    set crosshair "1"
    set sensitivity "3"
    set win_noalttab "0"
    set vid_fullscreen "0"
    set viewsize "100"
  • At this point a few modifications were made that require assets that do not come with the Quake 2 shareware or retail version. At the moment this is only: assets/pics/select_item_paletted.pcx. This pic is for drawing the HUD element when the player comes close to a button that has spawnflag 8. So, in order to run, this pcx file must be copied to baseq2/pics/.