Package: xqf
Version: 1.0.4-directhex3
Severity: normal
Tags: patch
*** Please type your report below this line ***
Years back, Valve replaced the networking infrastructure in
their games with Steam. In the process, the method for running
different game types changed - previously, one would run
"wine hl.exe -game cstrike" to run CounterStrike.
The new method is:
"wine steam.exe -applaunch 10", where each game has a unique
numeric ID, and the old "-game XXXX" options can no longer
be used.
XQF already includes functionality to handle this kind of
issue, in the "Custom Args" tab. However, Custom Args are
ignored for all games except UT2003, UT2004 and Quake 3.
The attached patch replaces the old hl.exe behaviour with
the new steam.exe behaviour, and adds some default Custom
Args to the appropriate place.
-- System Information:
Debian Release: testing/unstable
APT prefers testing
APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.15-1-amd64-k8
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Versions of packages xqf depends on:
ii libc6 2.3.5-13 GNU C Library: Shared
libraries an
ii libgdk-pixbuf2 0.22.0-11 The GdkPixBuf image
library, gtk+
ii libgeoip1 1.3.14-2 A non-DNS IP-to-country
resolver l
ii libglib1.2 1.2.10-10.1 The GLib library of C routines
ii libgtk1.2 1.2.10-18 The GIMP Toolkit set of
widgets fo
ii libx11-6 6.9.0.dfsg.1-4 X Window System protocol
client li
ii libxext6 6.9.0.dfsg.1-4 X Window System
miscellaneous exte
ii libxi6 6.9.0.dfsg.1-4 X Window System Input
extension li
ii qstat 2.10-1 Command-line tool for
querying qua
ii zlib1g 1:1.2.3-9 compression library - runtime
xqf recommends no packages.
-- no debconf information
--- ../../xqf-1.0.4/src/game.c 2005-10-18 20:26:35.000000000 +0100
+++ game.c 2006-03-02 22:46:49.000000000 +0000
@@ -2507,8 +2507,10 @@
char *argv[32];
int argi = 0;
char *cmd;
+ char** additional_args = NULL;
struct game *g = &games[con->s->type];
int retval;
+ int i;
cmd = strdup_strip (g->cmd);
@@ -2516,14 +2518,14 @@
while ((argv[argi] = strtok (NULL, delim)) != NULL)
argi++;
- if(con->s->type == HL2_SERVER) // XXX
- {
- argv[argi++] = "-steam";
- }
+ // Append additional args if needed
+ i = 0;
+ additional_args = get_custom_arguments(g->type, con->s->game);
- if (con->gamedir) {
- argv[argi++] = "-game";
- argv[argi++] = con->gamedir;
+ while(additional_args && additional_args[i] )
+ {
+ argv[argi++] = additional_args[i];
+ i++;
}
if (con->server) {
--- ../../xqf-1.0.4/src/pref.c 2005-10-17 11:17:58.000000000 +0100
+++ pref.c 2006-03-02 22:55:55.000000000 +0000
@@ -2361,6 +2361,23 @@
add_custom_args_defaults2("AoCampaignLobbyGame", "-mod=AlienSwarm -log=AlienSwarm.log",UT2004_SERVER, data);
break;
+ case HL2_SERVER:
+ add_custom_args_defaults2("cstrike", "-applaunch 240",HL2_SERVER, data);
+ add_custom_args_defaults2("dod", "-applaunch 300",HL2_SERVER, data);
+ add_custom_args_defaults2("hl2mp", "-applaunch 320",HL2_SERVER, data);
+ break;
+
+ case HL_SERVER:
+ add_custom_args_defaults2("cstrike", "-applaunch 10",HL_SERVER, data);
+ add_custom_args_defaults2("tfc", "-applaunch 20",HL_SERVER, data);
+ add_custom_args_defaults2("dod", "-applaunch 30",HL_SERVER, data);
+ add_custom_args_defaults2("dmc", "-applaunch 40",HL_SERVER, data);
+ add_custom_args_defaults2("op4", "-applaunch 50",HL_SERVER, data);
+ add_custom_args_defaults2("ricochet", "-applaunch 60",HL_SERVER, data);
+ add_custom_args_defaults2("valve", "-applaunch 70",HL_SERVER, data);
+ add_custom_args_defaults2("czero", "-applaunch 80",HL_SERVER, data);
+ break;
+
default:
dialog_ok (NULL, _("There are no defaults for this game"));
break;