diff --git a/xqf/ChangeLog b/xqf/ChangeLog index eddbb8c..e7d112f 100644 --- a/xqf/ChangeLog +++ b/xqf/ChangeLog @@ -1,3 +1,6 @@ +Jan 25, 2005: Ludwig Nussel +- Halflife2 support (untested) + Jan 21, 2005: Ludwig Nussel - highly experimental: optionally use DT_AUXILIARY stub libraries to not depend on libGeoIP and libgdk_pixbuf at runtime diff --git a/xqf/configure.in b/xqf/configure.in index b9bd66b..73b9a43 100644 --- a/xqf/configure.in +++ b/xqf/configure.in @@ -3,7 +3,7 @@ # Initially written by Markus Fischer # -AC_INIT([XQF],[1.0.2],[xqf-developer@lists.sourceforge.net], [xqf]) +AC_INIT([XQF],[1.0.2.1],[xqf-developer@lists.sourceforge.net], [xqf]) AC_CONFIG_SRCDIR([src/xqf.c]) AC_PREREQ(2.52) diff --git a/xqf/src/game.c b/xqf/src/game.c index 9d97de1..9f983c6 100644 --- a/xqf/src/game.c +++ b/xqf/src/game.c @@ -2570,6 +2570,11 @@ static int hl_exec (const struct condef *con, int forkit) { while ((argv[argi] = strtok (NULL, delim)) != NULL) argi++; + if(con->s->type == HL2_SERVER) // XXX + { + argv[argi++] = "-steam"; + } + if (con->gamedir) { argv[argi++] = "-game"; argv[argi++] = con->gamedir; diff --git a/xqf/src/games.c b/xqf/src/games.c index e90ae95..74e1d12 100644 --- a/xqf/src/games.c +++ b/xqf/src/games.c @@ -331,6 +331,26 @@ struct game games[] = { identify_os : identify_os, pd : &hl_private, }, + { + type : HL2_SERVER, + flags : GAME_CONNECT | GAME_PASSWORD, + name : "Half-Life 2", + default_port : 27015, + default_master_port : 27011, + id : "HL2S", + qstat_str : "HL2S", + qstat_option : "-hl2s", + qstat_master_option : "-stmhl2", + icon : "hl2_xpm", + parse_player : hl_parse_player, + parse_server : quake_parse_server, + analyze_serverinfo : hl_analyze_serverinfo, + config_is_valid : config_is_valid_generic, + exec_client : hl_exec, + save_info : quake_save_info, + arch_identifier : "sv_os", + identify_os : identify_os, + }, { type : KP_SERVER, flags : GAME_CONNECT | GAME_RCON, diff --git a/xqf/src/games.xml b/xqf/src/games.xml index 0676f65..01ab8d2 100644 --- a/xqf/src/games.xml +++ b/xqf/src/games.xml @@ -278,6 +278,23 @@ identify_os hl_private + + HL2_SERVER + Half-Life 2 + GAME_CONNECT | GAME_PASSWORD + 27015 + 27011 + HL2S + HL2S + -hl2s + -stmhl2 + hl2_xpm + hl_parse_player + hl_analyze_serverinfo + hl_exec + sv_os + identify_os + KP_SERVER Kingpin diff --git a/xqf/src/pixmaps.c b/xqf/src/pixmaps.c index f8e50fa..fa5f3fc 100644 --- a/xqf/src/pixmaps.c +++ b/xqf/src/pixmaps.c @@ -53,6 +53,7 @@ #include "xpm/hw.xpm" #include "xpm/sn.xpm" #include "xpm/hl.xpm" +#include "xpm/hl2.xpm" #include "xpm/kp.xpm" #include "xpm/sfs.xpm" #include "xpm/sof2s.xpm" diff --git a/xqf/src/qstat.cfg b/xqf/src/qstat.cfg index 29a40d1..9fad9de 100644 --- a/xqf/src/qstat.cfg +++ b/xqf/src/qstat.cfg @@ -65,3 +65,9 @@ gametype NETPM new extend GSM master for gametype = NETP end +gametype STMHL2 new extend STM + name = Steam Master for HL2 + template var = STEAMMASTERHL2 + master for gametype = HL2S + default port = 27011 +end diff --git a/xqf/src/source.c b/xqf/src/source.c index 87d7571..010f47c 100644 --- a/xqf/src/source.c +++ b/xqf/src/source.c @@ -1068,6 +1068,10 @@ static char *builtin_masters_update_info[] = { "ADD HLS,-stm master://steam1.steampowered.com Steam 1", "ADD HLS,-stm master://steam2.steampowered.com Steam 2", + "ADD HL2S,-stmhl2 master://steam1.steampowered.com:27011 Steam 1", + "ADD HL2S,-stmhl2 master://steam2.steampowered.com:27011 Steam 2", + "ADD HL2S,-stmhl2 master://69.28.151.178:27011 Valve 1", + "ADD Q2S:KP http://www.gameaholic.com/servers/qspy-kingpin Gameaholic.Com", "ADD Q2S:KP http://www.ogn.org:6666 OGN", diff --git a/xqf/src/xpm/hl2.xpm b/xqf/src/xpm/hl2.xpm new file mode 100644 index 0000000..445da8d --- /dev/null +++ b/xqf/src/xpm/hl2.xpm @@ -0,0 +1,22 @@ +/* XPM */ +static char *hl2_xpm[]={ +"17 17 2 1", +". c None", +"# c #000000", +".................", +".....###########.", +"...##....####..##", +"..#........###.##", +".#..###.....##..#", +".#..###.....#####", +"#.....##.....###.", +"#....###.....###.", +"#...##.##....##..", +"#...##.##....##..", +"#..##...###..#...", +".#.##...###.#....", +".#..........#....", +"..#........#.....", +"...##....##......", +".....####........", +"................."}; diff --git a/xqf/src/xqf.h b/xqf/src/xqf.h index 727d026..0f7f34e 100644 --- a/xqf/src/xqf.h +++ b/xqf/src/xqf.h @@ -109,6 +109,7 @@ enum server_type { HW_SERVER, SN_SERVER, HL_SERVER, + HL2_SERVER, KP_SERVER, SFS_SERVER, SOF2S_SERVER,