Author Topic: Seamless servers  (Read 9755 times)

0 Members and 1 Guest are viewing this topic.

Offline Michal Marcinkowski

  • Creator of Soldat
  • Flagrunner
  • ******
  • Posts: 808
  • I ain't got time to bleed.
    • Soldat home page
Seamless servers
« on: August 12, 2007, 01:07:41 pm »
In version 1.4.2 there is an ability to switch a player in the game to another server. When you use this function the client will disconnect and will have a message box appear to agree or not to go to another server. This idea has been discussed by me on my blog here.

Script function:

Code: [Select]
procedure ForwardClient(SrcIP: String;SrcPort: Integer; TargetIP: String;TargetPort: Integer);
I think that explains everything. You can use it however you want to.

Offline Leo

  • Soldat Beta Team
  • Veteran
  • ******
  • Posts: 1011
Re: Seamless servers
« Reply #1 on: August 12, 2007, 01:22:58 pm »
This fucking rocks! Thanks Michal :)

Offline mar77a

  • Global Moderator
  • Veteran
  • *****
  • Posts: 1295
  • mad
    • random stuffs
Re: Seamless servers
« Reply #2 on: August 12, 2007, 01:24:39 pm »
Now hexer can turn into the first soldat MMPFOMRFRMTG (<- yeah) called Soldatscape!

Offline Ride

  • Soldier
  • **
  • Posts: 199
    • NA Soldat Clan Website
Re: Seamless servers
« Reply #3 on: August 12, 2007, 01:49:26 pm »
Cool Idea, Are there any servers now running something like this yet?
Ingame Name: TC ~ Ryde.Lf ~
Past Clans: ^Re/ ~ -eO:

Offline Leo

  • Soldat Beta Team
  • Veteran
  • ******
  • Posts: 1011
Re: Seamless servers
« Reply #4 on: August 12, 2007, 01:50:04 pm »
The only "down point", if you can call it like this, is that it needs special maps with "exits" to other servers.  :-\

Offline blackdevil0742

  • Veteran
  • *****
  • Posts: 1061
  • Don't Panic
Re: Seamless servers
« Reply #5 on: August 12, 2007, 02:24:10 pm »
This sounds incredible and awsome. Now someone needs to use :)

OBEY!!!

Offline .::Blaze::.

  • Camper
  • ***
  • Posts: 430
  • `LMS|Blaze^
Re: Seamless servers
« Reply #6 on: August 12, 2007, 02:39:53 pm »
yea pretty tight [: it will help out
hey little kid you want some candy, "yes". GET IN THE VAN!

Offline Michal Marcinkowski

  • Creator of Soldat
  • Flagrunner
  • ******
  • Posts: 808
  • I ain't got time to bleed.
    • Soldat home page
Re: Seamless servers
« Reply #7 on: August 12, 2007, 05:23:41 pm »
The only "down point", if you can call it like this, is that it needs special maps with "exits" to other servers.  :-\

Isn't there an event fired if a player goes out of bounds?
But this can be triggered by really anything. It's up to you when the player is transferred, he doesn't have to enter an "exit".
In Hexer mod you can be transferred to another server if you reach a certain level for example.
...shit I forgot to add a password to the forward function. Hmm ll think about it later.
« Last Edit: August 12, 2007, 05:25:58 pm by Michal Marcinkowski »

Offline DePhille

  • Flagrunner
  • ****
  • Posts: 623
  • SoldatPage Webmaster
    • SoldatPage
Re: Seamless servers
« Reply #8 on: August 12, 2007, 05:26:42 pm »
Yes but then the player respawns in another map.
That means he has to pick his weapon again, build up speed etc, so he'll notice the change. You could try to take some of these effects away by building a socket connection between the two servers using the Scripting features for the Dedicated Server however.
I'm very curious to see the first server using this!

Grtz, DePhille
This signature was broken. Feel free to fix it.

Offline mikembm

  • Soldier
  • **
  • Posts: 210
Re: Seamless servers
« Reply #9 on: August 12, 2007, 06:45:42 pm »
This could be cool for maps with buildings - have a separate sever running a map with the inside of that building.
Just an idea :D

Offline Avarax

  • Veteran
  • *****
  • Posts: 1529
    • Official Hexer & MMod site
Re: Seamless servers
« Reply #10 on: August 12, 2007, 06:47:32 pm »
well i might use it for servers with different level maxima and minima, like michal said
I like to have one Martini
Two at the very most
Three I'm under the table
Four I'm under the host

Offline mikembm

  • Soldier
  • **
  • Posts: 210
Re: Seamless servers
« Reply #11 on: August 12, 2007, 06:59:06 pm »
I am curious as to whether the new server knows that the client has been forwarded to it. Maybe that's why source IP and port are needed?
And if that's the case then how? Seems like there should of been a new procedure called onClientForward(SrcIP: String; SrcPort: Integer);

Offline xReaperx

  • Major(1)
  • Posts: 45
Re: Seamless servers
« Reply #12 on: August 13, 2007, 05:13:27 am »
Can someone post a quick example, i'm real crappy at this stuff :(.

Offline DorkeyDear

  • Veteran
  • *****
  • Posts: 1507
  • I also go by Curt or menturi
Re: Seamless servers
« Reply #13 on: August 13, 2007, 01:36:53 pm »
This can be used for soo many different ways! Thx MM :)

Offline xmRipper

  • Soldat Beta Team
  • Flagrunner
  • ******
  • Posts: 742
    • Personal
Re: Seamless servers
« Reply #14 on: August 13, 2007, 02:30:25 pm »
Quote
procedure ForwardClient(SrcIP: String;SrcPort: Integer; TargetIP: String;TargetPort: Integer);

Wtf?
Co-Founder / CTO @ Macellan
Founder Turkish Soldat Community

Offline mikembm

  • Soldier
  • **
  • Posts: 210
Re: Seamless servers
« Reply #15 on: August 13, 2007, 02:37:12 pm »
Quote
procedure ForwardClient(SrcIP: String;SrcPort: Integer; TargetIP: String;TargetPort: Integer);

Wtf?

It's the port on which they connected - you can see it in arsse when they join the game.
Although I see no way of getting it through scripting...
« Last Edit: August 13, 2007, 02:49:58 pm by mikembm »

Offline urraka

  • Soldat Developer
  • Flagrunner
  • ******
  • Posts: 703
Re: Seamless servers
« Reply #16 on: August 13, 2007, 08:13:01 pm »
Quote
procedure ForwardClient(SrcIP: String;SrcPort: Integer; TargetIP: String;TargetPort: Integer);

Wtf?

It's the port on which they connected - you can see it in arsse when they join the game.
Although I see no way of getting it through scripting...

That would make sense... but you can't tell the source port anyway. It really should be
Code: [Select]
procedure ForwardClient(ID: Byte; TargetIP: String; TargetPort: Integer; Password: String);
urraka

Offline DorkeyDear

  • Veteran
  • *****
  • Posts: 1507
  • I also go by Curt or menturi
Re: Seamless servers
« Reply #17 on: August 13, 2007, 08:32:46 pm »
Ohhh password! Definitely needed!
Also, in Soldat.ini...
[NETWORK]
JoinPort=23073

so THIS is the port the player joins on? is this client-side?

Offline mikembm

  • Soldier
  • **
  • Posts: 210
Re: Seamless servers
« Reply #18 on: August 13, 2007, 08:35:34 pm »
Is it possible to have the confirm box appear BEFORE it removes them from the current server?

Offline Michal Marcinkowski

  • Creator of Soldat
  • Flagrunner
  • ******
  • Posts: 808
  • I ain't got time to bleed.
    • Soldat home page
Re: Seamless servers
« Reply #19 on: August 14, 2007, 05:11:45 am »
I don't know why EnEsCe put the port in and how to get it. I guess he'll tell you when he gets back from vacation.