Game Development Community

Status of T3D and Linux?

by Kyrah Abattoir · in Torque 3D Professional · 12/29/2011 (4:32 pm) · 8 replies

I know this is a very bad question, i was told there was some problems in the past and that linux users where pretty much told off or something.

But from a developper standpoint, you can't have a serious dedicated server app without linux.

So is there a plan for this?

#1
12/29/2011 (5:42 pm)
I don't think there was any telling off to Linux development. I think it was a practical thing as the move was to use Direct3D stuff. At the time I was a Linux only user. I found TGE to be ideal for development under Linux. I did not pick up TGEA as it was Windows and Mac only.

I would think that the Linux server could still be compiled. I see #ifdef stuff in the code to suggest that you still can. A server does not use any graphics so that makes sense. So though I have not tried it, I bet it will compile. YMMV :)

I don't think it is a bad question either. It is very valid for deploying to know if you can run the server on Linux. I don't think Windows is a good platform at all for serving. Especially in apps such as an MMPORG that would need to use a cluster of machines. That is one area that Linux really shines.

Now, for a Linux client, I would be all for it. BTW OSX is very close to Linux in that they are both POSIX compliant. I see some real potential for a server/sim app that runs under Linux for some specific applications. Although they would not be mainstream. There is some development by someone on the forums to replace the Direct3D code with OpenGL. If that happens I see the potential for a Linux client. Once you create a Linux client that opens the door for an Android client. In a way computer OS development is coming full circle. We started with Unix pretty much and are coming back to *nix based systems in newer devices.

Another idea is to trick the compile for OSX to occur under Linux. The interfaces are similar enough it might compile, maybe. Might have to create some glue wrappers.

If I could I would +1 your post! Hint, hint, GG. :)
#2
12/29/2011 (6:20 pm)
I had my share of complete PAIN running dedicated server through wine installations because a stubborn modder refused for nearly 4 years to provide the linux library for his source engine mod.

So yeah a linux compilable torque would be awesome, and from a business standpoint it's a win win for garagegames and developpers.

More torque licenses sold, and more games sold because a linux GSP is cheaper and more reliable in general.

As for for linux client binaries... well i do know that i buy nearly every single indie game bundle if they have a linux binary.
#3
12/29/2011 (6:37 pm)
Quote:there was some problems in the past and that linux users where pretty much told off or something

Ah the things hearsay turn into. ;)

GG dropped Linux support back after TGE 1.5 and since then it has been entirely community driven. There were a couple reasons for it as we were told back then in the community (this was back long before I was an employee and just a member of the community), and they're pretty much the same reasons for it today.

The first was due to the market driving the sales. The Linux user base just wasn't that large, I think they said Linux sales accounted for something like 1.5 - 3% of sales. The second was that the expertise for that platform was no longer in-house which made it more difficult to support a platform that wasn't really making up for the effort put into it in sales.
#4
12/29/2011 (6:42 pm)
Funny you just brought up this topic today as just a few moments ago I have successfully compiled a T3D 1.2 dedicated Linux server build, but I'm currently looking into why the client and server never get beyond challenge request/response stage. Most likely a bug or so with the stock scripts not taking a dedicated server build into account as I'm seeing TorqueScript console errors trying to load a few GUI forms and sound errors on dedicated server side.

Sometime later on tonight I'll post an updated patch file in Bank's resource.
#5
12/31/2011 (4:11 am)
I think the goal is not to have a client working on linux side, but just the dedicated server.

Most of the cheap online server are linux based, so if you want to provide online gaming at low cost, Linux is your target.

I think before 1.0, Bank & GG work closely to reach to a point that it remains just a few changes to make this happen. If you looked at the original patch of Bank, it's close to nothing. It could be great that this item is reviewed internally again and maybe worked with your associate to include in 1.x.

Thanks,
#6
12/31/2011 (7:33 am)
@Nathan,
Yep, pretty much as I figured. Sounds like it just needs a little housekeeping on the script side and it may be ready to go. Wasn't somebody working on separating the server and client scripting? That may fix your problem.

@elvince,
I think that is what Kyrah is after is a dedicated server. That line of thinking is spot on.

@Scott,
Any mention of a client is just a wish considering the state of the technology (DirectX). For myself having been running Windows 7 for almost a year now (used to be a Linux only house) would probably not choose Linux for a game client. I would stick with Windows 7 or OSX. Although, I think Android may be a viable future market. Not yet though. Maybe when they get those Nvidia chips in them. Those dang phones are getting so smart!
#7
12/31/2011 (11:10 am)
Since this seems to be an entirely appropriate thread to derail slightly...

[quote]But from a developper standpoint, you can't have a serious dedicated server app without linux.[\quote]
Why?

I mean, ive seen this kind of baseless comment re-iterated parrot fashion by hundreds of people who have no idea why they are even saying it, ive heard an innumerate quotes about server performance. Not once have i ever seen any kind of benchmark regarding server performances, and i'm pretty sure that non even exists as far as torque benchmarking is concerned.

I understand cost is an issue, but i'm not entirely convinced that the cost savings really get passed on to consumers in the end really. I'm also not convinced that most people even get better servers either, linux servers will run on 5+ year old hardware and pretty much based on what ive seen thats what you get, old hardware.

Where are the real gains, if you have to but 2x-5x the hardware to get the same number of concurrent users depending on your usage. are you truly making considerable savings.
#8
12/31/2011 (3:36 pm)
@Bloodknight,
I would guess this comes from the idea that *nix = server. This is a pretty accurate description of the *nix paradigm. The same would be pretty accurate to say:
Quote:But from a user standpoint, you can't have a serious desktop app without Windows.
Which is of course just as ridiculous in a certain sense. In another sense it is completely accurate.

My perspective:
If I am going to deploy a server for gaming I will choose Linux first. The reason is maintenance, duplication (painful in Windows), expansion, and availability as a dedicated server. I don't want to maintain hardware (I will rent the server if cost effective), I don't want to maintain a server that is really designed around a GUI system, I want a completely command line driven environment with a decent packaging system (like RPM or APT), I don't want proprietary software except for the sever application itself. Windows does not have that. They have parts of it, but not all of it.

Now, if I were to serve Windows applications I wouldn't do it like this at all. I would use a hypervisor on a cluster and have the Windows OS running each server app inside its own version of Windows. That way if the OS crashes it will failover to another copy of it so downtime is extremely short or unnoticed by the user. Why? Because interaction between services on Windows is notoriously troublesome. I learned a lot of this from the IT folks I worked with in the past. So you would easily watch the number of Windows licenses get very large if you needed lots of services.

Why avoid proprietary software in a server? Because then I have a larger choice of who I use to provide me the software and server solutions. I have and do change Linux distributions from time to time based upon needs.

Is Windows a bad choice? Not if you are serving an Exchange server. For a game server, I would probably not choose it if I had a choice.

So I think the quote is accurate, but it depends on what you are doing. For an IT network I would say you are best served with a mixture of Windows and Linux servers so the cluster with hypervisor would be most appropriate. For just dedicated game servers, then I would go for a renting some dedicated servers or a cluster with Linux. I don't think that comment has anything to do with the age of the hardware or speed.