Page 1 of 1

Linux/OSX Alpha testers needed

Posted: Sun Nov 22, 2009 9:03 pm
by Kevin Bentley
We have an almost fully functional D3 build for Linux and OSX now, and I'd like to get a handful of power users who would like to try it out. If you have a high tolerance for buggy code, the ability to write detailed reports of problems you encounter, and a good understanding of your system, please send an email to kevin.bentley@gmail.com and I'll send you a patch for OSX and i386 Linux (no 64 bit executable yet, but it'll play on a 64 bit machine).

Thanks!

Kevin

Posted: Sun Nov 22, 2009 10:40 pm
by Xamindar
Is it even possible to create a 64 bit Linux version? Wouldn't that require many other changes to other game files? I wonder if it would even improve performance much.

64 bit linux seems pretty good at running both 32 and 64 with a dual lib system anyway. Better than winXP and Vista is able to do in my experience.

Posted: Mon Nov 23, 2009 8:11 am
by Kevin Bentley
Yes, I have everything building under 64 bit, and some stuff working. But when we wrote D3 we didn't make any effort to specify the size of integers (we just used int, instead of making typedefs like int32). So there is a lot of I/O code that is expecting sizeof(int) to be 4. I just go through all the code and change the references to int32.

Also, just to be clear, I only have x86 OSX building/running right now. I actually purchased an old powermac G4 on ebay so I can get it working under ppc though. I doubt I'll even start working on that until mid December (Thanksgiving this week, and I'm out at a conference the following week).

The new OSX/Linux code is working very well though. Jeff has lots of good rendering fixes in there, and the original windows movies work in all platforms (even the main menu background movie works).

Jeff is having some audio issues under Linux, which I can't reproduce. One of the reasons I want to get alpha testers is to find stuff like that.

Posted: Mon Nov 23, 2009 3:49 pm
by Xamindar
What kind of audio issues? Even on the current version of D3 I have had my share of issues in the past. For a while audio had \"tearing\" in it for lack of better word. It was never that bad and it mostly effected the movies. It was like a clicking sound as if there was a buffer running out before the next one was able to start the next part of the sound. But that has all stopped for me, recently I might add. Probably finally an update to the sound system in linux that fixed it.

Posted: Mon Nov 23, 2009 4:11 pm
by snoopy
Maybe I should be doing research before asking these questions:

My linux build (the loki one) has the OGL hud bug. Is that being worked on?

Is the checksum thing being addressed? (and if so, I'll have to make sure that I disable the background process that fixes it)

Posted: Mon Nov 23, 2009 6:45 pm
by Canuck
Thank-you so much for a great game Kevin Bentley and for your time in keeping Descent alive. I'll point some of my Linux friends to your build and hopefully they can help as well. I still see new players making it into the mines to this day.

Posted: Mon Nov 23, 2009 7:03 pm
by Kevin Bentley
Sorry for not knowing this, but what is the background process that fixes the checksum bug? I haven't fixed the root of the problem yet, so if someone knows the exact cause of the bug, that would help me out.

Re:

Posted: Mon Nov 23, 2009 7:19 pm
by Floyd
Kevin Bentley wrote:Sorry for not knowing this, but what is the background process that fixes the checksum bug? I haven't fixed the root of the problem yet, so if someone knows the exact cause of the bug, that would help me out.
it started in this thread: http://www.descentforum.de/forum/viewto ... 0653#40653 and Munk is the author. i'll translate it for you later. you may also contact him directly, as he is fluent in english.

Re:

Posted: Mon Nov 23, 2009 8:14 pm
by Xamindar
Kevin Bentley wrote:Sorry for not knowing this, but what is the background process that fixes the checksum bug? I haven't fixed the root of the problem yet, so if someone knows the exact cause of the bug, that would help me out.
If I remember correctly that tool simply replaced the invalid linux checksum with the correct one so the server saw it as correct. It had to have a list of levels and the correct checksum to go along with them. Sadly, I don't think it would help solve the problem.

Posted: Mon Nov 23, 2009 10:18 pm
by fliptw
I suppose it be a bit much to replace the CRC with an SHA hash.

Posted: Mon Nov 23, 2009 10:50 pm
by Kevin Bentley
CRC vs. SHA isn't really a problem to implement (although the current checksum isn't remotely CRC, it's just some homemade checksum) but I'm not sure there's any real advantage here.

At any rate, I think the problem is fixed in my current build. We are using one source tree now for all platforms, so it's easier to do this sort of thing.

I tried it on several levels, including laserdeath, which I had a note that it didn't work in 1.4. Anyone know of any other levels that didn't work before?

Kevin

Posted: Tue Nov 24, 2009 1:12 am
by fliptw
thats neat.

Do you have a list of whats been fixed?

Re:

Posted: Tue Nov 24, 2009 2:54 am
by Jeff250
Awesome. I will send an email in short order.
Kevin Bentley wrote:Yes, I have everything building under 64 bit, and some stuff working. But when we wrote D3 we didn't make any effort to specify the size of integers (we just used int, instead of making typedefs like int32). So there is a lot of I/O code that is expecting sizeof(int) to be 4. I just go through all the code and change the references to int32.
Hmmm... on x86-64 linux, sizeof(int) is still 4, where only sizeof(long) was bumped up to 8 from 4 when compared to 32-bit. Do the other platforms have a 64-bit int? Of course, if you need portable, guaranteed sizes, then there is always stdint.h.

Posted: Tue Nov 24, 2009 4:24 am
by Tebo
I think I read once the checksum bug is due to the square root function not beeing exactly the same on Linux and Windows.
I'm not sure where I picked this up and whether it's true though.

Posted: Tue Nov 24, 2009 5:49 am
by akula65
Kevin, It may be helpful to consult Suncho's buglist if you haven't already:

http://www.suncho.com/buglist.html

In the case of the checksum bug, it lists Kata as another problematic level.

Posted: Tue Nov 24, 2009 9:39 am
by D.Cent
Cool that you're back - I've always dreamed of the 1.5 patch for Linux!

However, I've got 2 requests for you:

1.) Could you please add the \"-directip\"-commandline option?
2.) Can you add 1920x1080 to the resolutions or instead implement the \"-width\" and \"-height\"-commandline options?

I've already sent an E-Mail to you to test the Linux version - can't wait for it :)

EDIT: Regarding the checksum bug: If you have the latest code for Linux from Icculus, there should be a fix which uses something like md5 instead of sqrt(). I once got that information from Icculus, but I can't find the E-Mail now.

Posted: Tue Nov 24, 2009 9:28 pm
by Kevin Bentley
Jeff250: You are right. The issue is more of a poorly written code issue than the size of int. We've got some pointers being passed around as unsigned ints, and some other issues like that. Nothing we can't fix though.

I'm still having checksum issues with OSX. I've got some strange behavior I'm trying to track down, then I'll be ready to send out some alpha test binaries.

I do have the latest code from Icculus. Years ago we were working with him on the 1.5 patch, and most of that stuff is now in the source tree Jeff and I are working on.

I do know that with the checksum code commented out I can play a game with osx/linux/windows in the same game. That's some progress!

Posted: Wed Nov 25, 2009 3:29 am
by Theftbot
you going to do any graphics upgrades. also that racing mod for d3 didnt work w 1.4

Posted: Wed Nov 25, 2009 3:52 am
by D.Cent
The racing mod will never be working, since its source is not open. I collected some sources of other mods people made, so now I have some working extra-mods for Linux, like Duel, Team Hoard, Team InstaReap, Frag Tag, Assault, BreakOut and Descentrix. Get them here for version 1.4: http://www.odf-online.org/downloads/mods4linux.zip and check the readme-file.

@Kevin: I also remember a simple bug in 1.4 on Linux: If you want to start an in-game server, D3 only shows the missions you saved in the root-mission-folder (e.g. /usr/local/games/Descent3), but it should also display those in $HOME/.loki/descent3/missions. Shouldn't be too hard to fix that.

Posted: Wed Nov 25, 2009 9:30 am
by Duper
common guys, this is an alpha discussion thread. Kevin is working just to get the code functional. Let's save the wish list for later... or another thread. Once 1.5 is out and \"official\", then we as a community can work to improve eyecandy and such.

Let's not pester over non-critical functions.

Re:

Posted: Wed Nov 25, 2009 10:27 am
by Krom
Duper wrote:common guys, this is an alpha discussion thread. Kevin is working just to get the code functional. Let's save the wish list for later... or another thread. Once 1.5 is out and "official", then we as a community can work to improve eyecandy and such.

Let's not pester over non-critical functions.
x2
Lets deal with how it looks after we get it working in the first place. If you want fancy visuals... go play Crysis. :P

Posted: Wed Nov 25, 2009 6:13 pm
by Kevin Bentley
Don't worry guys, I want to get lots of bugs fixed, and I'd love to improve the graphics too. First we want to get things functional, but I don't plan to stop there...

Posted: Wed Nov 25, 2009 7:49 pm
by Aus-RED-5
The hell with D3's bugs fixes, graphics and patches...

Lets make Descent 4! :twisted:

hehe Sorry, just had to say it! :lol:

Thanks Kev (and who ever else is helping) for everything you're doing for us! :)

Posted: Wed Nov 25, 2009 9:46 pm
by xyon
This is looking very promising, Kevin, nice work..

Posted: Thu Nov 26, 2009 12:36 am
by SirWinner
Hope this isn't premature or the wrong time to ask this... but will there be a \"Descent 3\" Open Source release in the near future?

Seeing that the game was originally released in June 1999.

Thanks for the update Kevin.

Bill G.
Long Time Computer Programmer

:oops:

Posted: Thu Nov 26, 2009 1:22 am
by Aus-RED-5
Posted Sat Oct 24, 2009
Kevin Bentley wrote:If/when the owners of D3 code ever agree to release the source I'm going to encourage them to do so under a GPL license so there won't be as much duplication of effort. I'm normally not a fan of GPL, but in this case I can see the benefits.
viewtopic.php?t=16059

Posted: Thu Nov 26, 2009 11:04 am
by Kevin Bentley
I have no idea whether releasing the source will ever happen. I've asked about it, but I haven't received any response yet. Who knows...

But I can tell you that Jeff has put a lot of effort into removing proprietary source code and libraries from the source tree so if we do get permission we can release a complete game.

The patch we're working on is kind of a rogue project. We haven't received any recent permission to do this, but I don't think anyone is going to complain.

BTW, I got an old powermac yesterday so I can test out the PPC OSX D3 build. :)

Posted: Thu Nov 26, 2009 11:12 am
by CDN_Merlin
I never understood why they wouldn't release the code fro D3? It's 10 years old and only a handful of users still play. If the code was released, it could be modified, and patched and maybe would get more attention. Just liek 3d marks new space shooter game. I'm sure it's attracted more users now. A new Descent game would attract new users also since we haven't seen a 6DOF game in 10 years.

Posted: Thu Nov 26, 2009 11:19 am
by D.Cent
I simply think they forgot about D3. I didn't hear anything from Matt Toschlog & co for years now. I saw his new project \"Reactor Zero\" and wrote to his address, but I didn't get any answer for 6 months now.

Posted: Thu Nov 26, 2009 11:27 am
by CDN_Merlin
Unless they plan on doing somethign with it? Anyways, back on topic.

Thanks again Kevin+gang.

Posted: Tue Dec 01, 2009 2:52 am
by SirWinner
Thanks for the update Kevin.

Just thought that since it has been 10 years since Descent 3 came out that perhaps the source code might be releasable since the technology is old by today's gaming standards.

Happy testing!

Bill G.
\"SirWinner\"

Posted: Tue Dec 01, 2009 4:33 am
by Xamindar
Any update on when we can test it?

Posted: Tue Dec 01, 2009 6:09 am
by Kevin Bentley
As soon as I have the checksum issue fixed I'll send out some binaries to test. I've got the MD5 code written and I'm integrating it now.

The old checksum relied on the client to compare the checksum the server sent. I'm making it work like this: The server sends a salt value when the client joins. Then the client computes the md5 on the level using that salt value. Then the client sends the computed value to the server. If the checksum doesn't match the server disconnects the client.

This should help prevent some cheats. The code is nearly done.

Posted: Tue Dec 01, 2009 6:21 am
by D.Cent
Sounds cool - keep up the good work!

If you should need some webspace for uploading then, I can provide some (because e.g. my mail-server only accepts max. 20 MB / mail)