I made a server list for Linux users
Moderator: Do_Checkor
I made a server list for Linux users
I've made a server list for Linux D3 (in Python) over the past week or so. It's not really that great: it's by no means a replacement for a proper directip option. However, there IS no directip option in Linux D3. So, I kinda made one. Not really, but a time-saver nonetheless. Basically, it just enters the IP address into the Multiplayer screen, so that you just have to hit \"Search for Games at Address\" to get the game.
It sounds really useless, I know. But it does save you a good 20 to 30 seconds of time. And doesn't make you write down IPs.
I guess if anyone wants a screenshot:
Features planned include autodownloading levels and some other stuff that I thought of but can't remember right now.
You can download it here.
PyGTK (version 2 at least, I think) and Python are required.
To install it, do a tar xzvf on the package, cd to it, then su and type make install.
Leave feedback on this thread.
P.S. A couple unrelated questions:
1) Does anyone else notice that others flying the Black Pyro gives you a sig11 randomly?
2) Does anyone have problems with joining Varicose Veins?
EDIT:This is nowhere near as featureful as Vortex, which is the coolest thing since sliced bread.
It sounds really useless, I know. But it does save you a good 20 to 30 seconds of time. And doesn't make you write down IPs.
I guess if anyone wants a screenshot:
Features planned include autodownloading levels and some other stuff that I thought of but can't remember right now.
You can download it here.
PyGTK (version 2 at least, I think) and Python are required.
To install it, do a tar xzvf on the package, cd to it, then su and type make install.
Leave feedback on this thread.
P.S. A couple unrelated questions:
1) Does anyone else notice that others flying the Black Pyro gives you a sig11 randomly?
2) Does anyone have problems with joining Varicose Veins?
EDIT:This is nowhere near as featureful as Vortex, which is the coolest thing since sliced bread.
- WarAdvocat
- DBB Defender
- Posts: 3035
- Joined: Sun Jun 23, 2002 2:01 am
- Location: Fort Lauderdale, FL USA
Well, if this thing works (I just downloaded it), usercount++.
Big thanks for the effort, I've been thinking about something like this myself but haven't got myself into doing it.
Edit:
Yep, count at least two users. I don't really know python but I'm gonna take a glance at the code too, I don't suppose it should be very hard to get for example the game mode displayed?
Big thanks for the effort, I've been thinking about something like this myself but haven't got myself into doing it.
Edit:
Yep, count at least two users. I don't really know python but I'm gonna take a glance at the code too, I don't suppose it should be very hard to get for example the game mode displayed?
No problem, I know what to expect in an untested patch to version 0.1.
I'm almost completely unfamiliar with both Gtk and Python but would it be possible to make it so that double-clicking on a game joins that game?
I took a little look at the code but couldn't understand much of it at a quick glance (I have yet to read how arrays etc. work in Python). When I figure it out, I'll try adding little features like this myself.
I'm almost completely unfamiliar with both Gtk and Python but would it be possible to make it so that double-clicking on a game joins that game?
I took a little look at the code but couldn't understand much of it at a quick glance (I have yet to read how arrays etc. work in Python). When I figure it out, I'll try adding little features like this myself.
Yeah, I think that'd work. I don't know how off the top of my head, though, I'll need to look in the pygtk stuff.
And for help understanding the arrays: the main array is actually a tuple(Python's version of a two-dimensional array). The for row in d3.array stuff makes row a regular array, which pretty much mirrors the rows in d3.descent.cx.
I'm going to try to add ping, etc. too.
And for help understanding the arrays: the main array is actually a tuple(Python's version of a two-dimensional array). The for row in d3.array stuff makes row a regular array, which pretty much mirrors the rows in d3.descent.cx.
I'm going to try to add ping, etc. too.
Pinging has one problem. As far as I know, usually D3 servers are pinged by querying their status and measuring the time it takes for the status response to be received, or something like that -- in any case, it's not done with icmp echo requests.
Thus, some servers may have a firewall blocking those and using icmp ping (which I imagine would be the easy way of doing it in D3launch since it doesn't implement any other direct communication with the game server) may not work very well.
Just a thought.
Thus, some servers may have a firewall blocking those and using icmp ping (which I imagine would be the easy way of doing it in D3launch since it doesn't implement any other direct communication with the game server) may not work very well.
Just a thought.
Thank You
Bro, I want to thank you tremendously! I haven't tried it out yet, but it's so refreshing to know that there is someone that still wants to develop in the community, and develop for Linux users... what a concept..
Cheers, mate!
Cheers, mate!
... and in the end you'll end up implementing a Vortex clone for Linux.
Seriously, though, if it's not very complex, some basic functionality for querying servers themselves might be helpful for pinging and also possibly for getting basic server information.
This is no feature request -- I know that it might not be very easy to implement any of that. I haven't looked at the code of qstat (for example) so I don't really know how complex it is. Even as it is now, the utility is quite a lot of help.
Seriously, though, if it's not very complex, some basic functionality for querying servers themselves might be helpful for pinging and also possibly for getting basic server information.
This is no feature request -- I know that it might not be very easy to implement any of that. I haven't looked at the code of qstat (for example) so I don't really know how complex it is. Even as it is now, the utility is quite a lot of help.
Re: I made a server list for Linux users
1) I always thought it was the logo or sound file the person is using like Skynet said. I noticed that certain people do it to me. I think when they use that dodgy audio taunt it gives linux D3 a sig 11. Very annoyingiten wrote: P.S. A couple unrelated questions:
1) Does anyone else notice that others flying the Black Pyro gives you a sig11 randomly?
2) Does anyone have problems with joining Varicose Veins?
EDIT:This is nowhere near as featureful as Vortex, which is the coolest thing since sliced bread.
2) I have had problems but it does work sometimes (usually when the server is empty).
EDIT: Hey, thanks a lot. You made it a whole lot easier to join games from Linux! No more alt-entering to windowize D3 and copy the ip manually.
By the way, anyone know how to automaticly select my pilot and therfore bypass the pilot selection screen? Or was that only possible in windows?
Actually there is even a graphical client that can read Descent 3 server information, and that's XQF. The problem with it is that it can't read the server list from descent.cx, and I don't know of any other publically usable master server that would have a useful list of D3 servers (Gamespy's master servers aren't publically available, they require an authentication method which is proprietary). It can't start D3 either because D3 lacks the (in)famous --directip option and XQF doesn't have a workaround implemented like D3launch.
The easiest way of having a really good D3 game browser with rudimentary support for "--directip workaround" would probably be to implement reading the raw descent.cx server list and the workaround (configuration file tinkering) in XQF -- or qstat, upon which XQF is based, if it's in the domain of qstat more than in that of XQF (I haven't looked into it much and don't know exactly).
Edit:
Added linkage
Edit2:
I just don't think I know enough C to add those features in qstat/XQF, otherwise I'd probably have looked into it already...
The easiest way of having a really good D3 game browser with rudimentary support for "--directip workaround" would probably be to implement reading the raw descent.cx server list and the workaround (configuration file tinkering) in XQF -- or qstat, upon which XQF is based, if it's in the domain of qstat more than in that of XQF (I haven't looked into it much and don't know exactly).
Edit:
Added linkage
Edit2:
I just don't think I know enough C to add those features in qstat/XQF, otherwise I'd probably have looked into it already...
Funny that you mentioned that actually, I was looking at XQF the other night, and was trying to see how it worked. I'm not sure what it does in terms of ping, but I'll try and look at the source for it.
QStat I don't think would work, because it's not a server launcher, just something to get information from servers.
EDIT: Hmm, that workaround should be pretty easy, don't even have to mess around with the source. d3.descent.cx on the other hand... I'm not sure how that's going to work.
QStat I don't think would work, because it's not a server launcher, just something to get information from servers.
EDIT: Hmm, that workaround should be pretty easy, don't even have to mess around with the source. d3.descent.cx on the other hand... I'm not sure how that's going to work.
- Fusion
- DBB Ace
- Posts: 379
- Joined: Sun Sep 07, 2003 2:01 am
- Location: Valdez System, Underverse; 7 Stars, Azeroth
Re: I made a server list for Linux users
Xamindar wrote: By the way, anyone know how to automaticly select my pilot and therfore bypass the pilot selection screen? Or was that only possible in windows?
Xam,
If it is the same in windows D3 Command Strings, here is your answer:
-pilot [NuB2]Fusion
Obviously change the Pilot name w/yours. I just used mine as an example. Make sure there is a space between the t in pilot and the first letter of your default Pilot Name.
Hope it helps
Fus
Sorry for the noticeable lack of updates, I've been very busy with school and other projects. But I'm keen on getting this thing to be more useful, and implement server queries in it. A buddylist would be awful cool too. I'll see how far I get (Wed. is the last final! Woo!)
(I'm not exactly sure if I'm going to add autodownloading, I forgot that without directip D3 goes ahead and does it anyways )
(I'm not exactly sure if I'm going to add autodownloading, I forgot that without directip D3 goes ahead and does it anyways )
It can't launch D3.
Well, it can, but it can't give it the IP address.
However, even though it doesn't give the game the IP address in any way the latter would understand it, to me it looks like it does pass the IP address to the game without a preceding, corresponding command-line argument (e.g. --directip) so I assume it should be possible to work around it with some kind of a wrapper script without touching the XQF source code. I'll take a look at it but I don't think it'd really be what I call 'a good solution'.
Well, it can, but it can't give it the IP address.
However, even though it doesn't give the game the IP address in any way the latter would understand it, to me it looks like it does pass the IP address to the game without a preceding, corresponding command-line argument (e.g. --directip) so I assume it should be possible to work around it with some kind of a wrapper script without touching the XQF source code. I'll take a look at it but I don't think it'd really be what I call 'a good solution'.
- FunkyStickman
- DBB Ace
- Posts: 309
- Joined: Wed Apr 20, 2005 2:26 pm
- Location: 'Nawlins
Well, I just got the Linux version of D3 (after much searching) and everything is working smoothly. I love the server list, it works fine, now I have to begin the work of seeing which levels will work cross-platform. Is there such a list in existance, or should I begin making one, or should I wait for the 1.5 patch? (from what I hear, D4 would happen sooner!)
I can set up another box and test most of the levels. Are the servers in this list using the most popular ones? Man, I've got to get my trigger finger back in shape...
I can set up another box and test most of the levels. Are the servers in this list using the most popular ones? Man, I've got to get my trigger finger back in shape...