Questions about the architecture of TA:Spring

Questions about the architecture of TA:Spring

Discuss the source code and development of Spring Engine in general from a technical point of view. Patches go here too.

Moderator: Moderators

Post Reply
snide
Posts: 18
Joined: 15 Jul 2005, 11:55

Questions about the architecture of TA:Spring

Post by snide »

1. Sync vs UnSync

The developpement guidelines assert that Spring runs synchronized on all computers.

The common idiom in online gaming seems to have a server that does all the calculations, and then sending it to all the clients with a timestamp (like Quake).

However since I'm from the IT side of computing, and therefore I don't know the gaming side of it, I wondered what were the advantages to do it in sync on all computers ? [ less network traffic, less CPU usage on the server, ... ]

2. Server-Side AI vs Client-Side AI

Since I think that AIs that are currently working on are on the server side, would it possible to have a "bot" player that connects like a another client ?

3. Dedicated Server

Would it be possible to create a dedicated server for TA:Spring ? It would certainly enhance the experience of firewalled users :wink:

4. Others Docs & Helping

Is there a mailing-list, IRC, or is this the best way to keep in touch with the TA:Spring team ? [ anyway, i first have to manage to get TA:Spring compile :roll: ]
SJ
Posts: 618
Joined: 13 Aug 2004, 17:13

Post by SJ »

1: Well in games like quake you usually have <64 objects moving around with a subset of those visible while in spring you might have to keep 1000s of objects + deforming terrain etc in sync. While this might be possible I dont want to try it over potentially slow connections etc.

2: All AI is already client side.

3: Wouldnt probably be that hard to create a dedicated server by removing the few dependencies in cgameserver on cgame and some other stuff + creating some other ways for network clients to control the server. But who would run the dedicated servers ?

4: This forum is a good way to communicate otherwise you can also find us idling at #sy on quakenet
snide
Posts: 18
Joined: 15 Jul 2005, 11:55

Post by snide »

First, thx for the fast & accurate reply :-)

1. Ok, I see. Yeah, the 1000+ objets is actually a whole new world of gaming 8)

but that triggers another question : how do you recover of a sync offset ? Can use the hardware accelerated float operation ? [ Since i always thought them as a non-IEEE implementation, and it could then go out of sync even with the same code ]. Same for different compilers (there's a port of TA:Spring on Linux, so they have to use GCC)

2. You mean it would be like in OTA where the AI is spawned on a gamer's computer.

3. You mean by removing the GFX/SFX stuff and replace it by a something like a console ?. For who, i didn't think about dedicated servers sitting idle somewhere on the net, but if i want to host, i just spawn one and everyone can connect to it, and it is responsible for the routing of the NATed dudes.
[ And this way the LAN problem fades away ]

4. Ok, thx :oops:
SJ
Posts: 618
Joined: 13 Aug 2004, 17:13

Post by SJ »

Amd and Intel x86 floating point math doesnt seem to cause any sync problems but it would probably be hard to keep different cpu architectures synced. Different compilers might also lead to problems I suppose although im not sure, might be able to use gcc for all platforms or something.

Yes each AI is bound to one computer

Yes you can basically remove everything from the server except what is in CGameServer and CNet and then add some sort of console interface to it.
snide
Posts: 18
Joined: 15 Jul 2005, 11:55

Post by snide »

Ok. Thx a lot for all your answers !

Now, time to :

1. Get TA:Spring to compile
2. Understand how CGameServer and CNet works :idea:
3. Ask more questions :oops:
User avatar
PauloMorfeo
Posts: 2004
Joined: 15 Dec 2004, 20:53

Post by PauloMorfeo »

snide wrote:... I'm from the IT side of computing, ...
Hello, mate. Another one here!
SJ wrote:... But who would run the dedicated servers ?
...
I'm pretty much sure that that would be arranged. There has been actual offerings in these forums, as far as i remember...

The question would be if there would be enough offerings to compensate the work required. I supose you can give a go for the users lurking around these forums to go scan availability for that and you could then decide if it would be worth the trouble.
Post Reply

Return to “Engine”