TribesNext

Welcome, Guest. Please login or register.
Did you miss your activation email?


TribesNext >  TribesNext.com Forums >  Support >  The Linux Thread « previous next »
Pages: 1 [2] 3 4 ... 6 Print
Author Topic: The Linux Thread
admax88
Nugget
Posts: 13

View Profile
15: January 23, 2009, 05:26:52 PM »
I did some digging and I'm not sure its a problem with WINE's implementation of winsock2.  First of all I did a packet log when starting Tribes in online mode.  Both starting on windows and on linux under wine had the exact same internet traffic as viewed by the ethernet device.  They both managed to fetch the auth servers from tirbesnext.com and determine my internet ip address.

Doing a program trace of system calls on linux I found that the program got trapped in some sort of infinite loop.  It kept calling the recv() function winsock over and over again with the exact same parameters.  This may indicate that its a problem with WINE's winsock code, but I'm hesitant to jump to that conclusion that when all sorts of other network programs I use on WINE function just fine.  Including network intensive programs like firefox, uTorrent and other multiplayer games.

I'll keep digging and see what I can find out.
Debianeer
Nugget
Posts: 3

View Profile
16: February 05, 2009, 12:55:27 AM »
All the more reason to make a patch for the old Loki version..

imho, but i'm putting in another vote for this, since; yay, native, known good, working, client. =)

-m
Thyth
Apotheosis Incarnate

Posts: 809

View Profile
17: February 05, 2009, 09:38:30 AM »
I won't be porting to the Loki version any time soon. I don't have the time, or inclination to maintain two branches of code. Wine will be supported with release candidate 3, as discussed in the development roadmap.

Sarcastic, narcissistic, genius, resurrecting the game with brilliant strokes of wizardry.
terracon
Nugget
Posts: 20

View Profile
18: February 05, 2009, 11:02:53 AM »
I won't be porting to the Loki version any time soon. I don't have the time, or inclination to maintain two branches of code. Wine will be supported with release candidate 3, as discussed in the development roadmap.

It's great the client will work at least under wine. Not that desireable but I guess it's better than nothing. How are you supposed to run a dedicated server like this?
ccfreak2k
Nugget³

Posts: 80

View Profile
19: February 05, 2009, 01:33:50 PM »
I won't be porting to the Loki version any time soon. I don't have the time, or inclination to maintain two branches of code. Wine will be supported with release candidate 3, as discussed in the development roadmap.
It's great the client will work at least under wine. Not that desireable but I guess it's better than nothing. How are you supposed to run a dedicated server like this?
Use Wine again, like I do on my shell server (Glasnost :: Tribes 2).

Speaking of which, with some tinkering, I got the client to work in Wine. Unfortunately, the client tends to lock up my box occasionally while playing, so I can't test it extensively. What I DID test, however, was server listing and in-game IRC, both of which work.
« Last Edit: February 05, 2009, 01:45:35 PM by ccfreak2k »

I keep my spinfusor on a gun rack in my truck.
altpersona
Nugget
Posts: 2

View Profile
20: February 10, 2009, 11:51:15 AM »
any updates on this front?
Turkeh
nil

Posts: 458

View Profile
21: February 10, 2009, 12:56:36 PM »
at current, you can (manually) nerf the T2CSRI scripts that use any TCP/HTTP objects and that should fix most instabilities... You'll have to use another means of viewing the server list though (i.e. MaxOGC web list) and manually set $IPv4::InetAddress to your external IP (via game console, or script).

Otherwise, see The Development Roadmap

Read the FAQs!

Search before posting support requests.
laeknishendr
Nugget
Posts: 7

View Profile
22: February 13, 2009, 09:05:57 AM »
I've tried what Turkeh has said above hoping to get a temporary solution to stop
me having to reboot all the time, and found that now I've got past the freezing
intro screen, the local account details are not being found.
The log in screen doesn't recognise that any local accounts exist: in the
dropdown thing where my account should be it's just "retrieve account" greyed
out. If I enter my details manually it prompts me to download the account
details from the server (which obviously we're trying to avoid as Wine doesn't
like it)

I tried hard coding my account name into the return value of
certstore_listAccounts in t2csri/certstore.rb, which had no effect at all. That
function seems to be called from LoginEditMenu::populate (in loginScreen.cs), so
I tried setting the $accountList variable manually in that function to my
accountname, and that *did* make it show up. But it wouldn't let me log in
presumably as it hadn't loaded in the keys and certificates.
My guess is the Ruby interpretor isn't being invoked correctly, but I'm not
receiving any errors about it.

I should also mention that I'm using the copy I installed on Windows and play
through Windows, and on Windows this exact setup does work as expected (ie it
lets me log in but doesn't retrieve the server list).

I'm using wine-1.1.14 on OpenSuse 11.1 x64.

if anyone else wants to test it and see if you have more luck, I've (hopefully)
attached T2csri.vl2 which needs to go under GameData/base  (but make sure to
back up the one already there first ;p)
Attached files
* T2csri.vl2 (150.2 KB - downloaded 365 times.)
Thyth
Apotheosis Incarnate

Posts: 809

View Profile
23: February 13, 2009, 10:58:28 AM »
You can copy the public.store and private.store files from your Windows installation to your Linux install. If you can't download the certificate and key for your account in the Linux install, you'll need to copy that data over via those store files.

Setting the account name won't magically permit login, since the login process just does some processing on the certificates locally.

Sarcastic, narcissistic, genius, resurrecting the game with brilliant strokes of wizardry.
laeknishendr
Nugget
Posts: 7

View Profile
24: February 13, 2009, 11:41:58 AM »
Hi Thyth, thanks for your response but as I said it's exactly the same install.

To make it clearer: I'm just mounting the NTFS drive and Wine-ing the t2 executable. The public.store and private.store are there and are perfectly recognised and parsed and allow login under Windows but when running under Wine, Tribes is oblivious to their existence it seems.

My point about setting account names was that...  well, as far as I can tell, Tribes (the cs login screen script) asks Ruby for the list of accounts. Hard coding an account name within the Ruby has no effect, but hard coding it within the cs script does. That seems pretty significant...



** EDIT: Ah, interestingly I've just tried on a fresh install on a Ubuntu VM and there does not seem to be the same issue Undecided but it does UE right after logging in.
I'll keep investigating.
« Last Edit: February 13, 2009, 12:52:42 PM by laeknishendr »
Thyth
Apotheosis Incarnate

Posts: 809

View Profile
25: February 13, 2009, 12:51:57 PM »
Sounds like the Ruby interpreter is failing for some reason. If you add enableWinConsole(1); to the top of one of the script files (clientSide.cs in the VL2 works fine), that should enable a console window for the game. Check if the Ruby interpreter is working properly.

Try:
Code:
rubyEval("puts 2+2");
It should put out 4.

Oh... and if any advanced Linux C/C++ programmer wants to help me out with a Loki port, I'm sure something could be hacked together for dedicated server support (It just needs SHA1, big integer base conversion, and big integer modular exponentiation). I'm just not sufficiently familiar with shared library injection in Linux.

Sarcastic, narcissistic, genius, resurrecting the game with brilliant strokes of wizardry.
laeknishendr
Nugget
Posts: 7

View Profile
26: February 14, 2009, 03:42:25 AM »
It seems to be a quirk of the Wine version I was using, I went back a few versions (to whatever's in the OpenSUSE repos, can't remember) and Ruby kicked in no problems.

For what it's worth: it looks like the Wine freezing issue is caused by trying to pull the whatismyipaddress.php page. I went back to a clean T2csri.vl2, the only change I made was to set $IPv4::InetAddress = "xxx.xxx.xxx.xxx"; [obviously replaced with my ip address] at the top of the ipv4_getInetAddress function (in t2csri/ipv4.cs)... and the freezing stopped, but there's a bunch of other networking activity which seems to complete fine.

Unfortunately it UEs (twice) right after logging in. Which is probably a Wine thing as it's working under Windows.
Turkeh
nil

Posts: 458

View Profile
27: February 14, 2009, 12:57:33 PM »
If you're getting a UE immediately after login (under Wine), the likely culprit may be the T2 IRC client.
Just do a
Code:
touch /path/to/base/scripts/ChatGui.cs
and remove any ChatGui.cs.dso files

Read the FAQs!

Search before posting support requests.
Beer:30
Nugget
Posts: 3

View Profile
28: February 15, 2009, 01:15:03 PM »
Can't contribute anything technically but I do appreciate the work being done on a linux patch for tribes.  Thanks Grin
laeknishendr
Nugget
Posts: 7

View Profile
29: February 16, 2009, 03:27:23 AM »
Thanks Turkeh, that got the UE sorted.

I did actually get it working but it's not elegant and I did have to disable the server browser. I found that the server fetching/querying did cause the Wine infinite loop thing, but not every time. And something related happens in the background periodically while in game which was causing random looking infinite loop freezes. I just disabled the autoexec/t2csri_list.cs file in the end.

I also ran into a problem with the account certificate being thought to be invalid when I tried joining a server. I didn't test this thoroughly but it looked like when T2 got hold of the cert it had been cut to the first 1000 characters (mine is roughly 1200 or 1300). I just hard coded the line from my public.store in the script, and it was happy with that.

if anyone is interested in exactly what needs doing to get a playable copy running leave a message here and I'll post step by step instructions.
Pages: 1 [2] 3 4 ... 6 Print 
« previous next »
Jump to:  

irc.quakenet.org / #TribesNext Powered by SMF  © Simple Machines
anything