SphereCommunity
[solved] Final touch on Sphere.ini. Server selection problem - Printable Version

+- SphereCommunity (https://forum.spherecommunity.net)
+-- Forum: Sphere 0.56d (/Forum-Sphere-0-56d)
+--- Forum: General Help (/Forum-General-Help)
+--- Thread: [solved] Final touch on Sphere.ini. Server selection problem (/Thread-solved-Final-touch-on-Sphere-ini-Server-selection-problem)



[solved] Final touch on Sphere.ini. Server selection problem - VeTaL - 05-05-2012 09:28 AM

Looking like everything goes nice: i can play on my server, my friends can play there either through Internet. Its time for last (he-he, you also didnt believe me?) cosmetic tough.

While logging-in, and while shard selection, i can see two lines:
[Image: 1336173811-clip-69kb.jpg]

Firs one works fine,i click there and i'm in the game.
But second one stops everything, and in Sphere i see
Quote:WARNING:9:Unknown game packet (0x46) received.

Where they are from? Well, firs one is from the very beginning of sphere.ini, second one is from the end:
Quote:[SPHERE]
// Name of your Sphere shard
ServName=UO Templars
// The IP of your server, this will be 127.0.0.1 almost always
ServIP=127.0.0.1
// The port of your server, this is 2593 by default
ServPort=2593

********

[SERVERS]
Templars Shard
uotemplars.hopto.org
2593

//External
//my.ip.goes.here
//2593

[EOF]

Still didnt tested, but looking like only second one works for my friends to join me.

What are recommendations on this field?


RE: Final touch on Sphere.ini - Shaklaban - 05-05-2012 11:34 AM

Just comment the following lines:

[SERVERS]
//Templars Shard
//uotemplars.hopto.org
//2593

Also for stable sphere use following settings:

// Number of network threads. Clients are distributed evenly amongst each thread. Set to 0 to not
// use a separate networking thread.
NetworkThreads=0

// Use asynchronous data sends (changing this setting at runtime may produce unexpected behaviour)
// 0 = Off
// 1 = On
// 2 = On for 4.0.0+ game clients only
UseAsyncNetwork=0


// Prioritise outgoing packets (provides a smoother experience in crowded areas)
UsePacketPriority=0


RE: Final touch on Sphere.ini - Valios - 05-05-2012 05:44 PM

Use different ports for each one, you can forward the port 2594 for the second


RE: Final touch on Sphere.ini - VeTaL - 05-05-2012 08:04 PM

2 Shaklaban:
I commented [SERVERS] part, so now i have only second option "UO Templars". After trying to login there, i got "WARNING:9:Unknown game packet (0x46) received." on the server side, and endless waiting on the client side.

What about threads: some years ago i found pretty cool article on codeproject.com about server dynamic threads management.. i spent about hour, trying to find it (on the site, and on my HDD, i definitely saved it), but no results right now. I think, it could be usefull, i'll continue my search a little later.

2 Valios:
Hm.. can i make only 1, which would be working for me and for friends?


RE: Final touch on Sphere.ini - admin phoenix - 05-05-2012 08:09 PM

also have the problem with the 2 server.
first one people can connect and the second one they can´t (but I do not need the second one).
when I comment out theline, the second one is showing on the login page (but as I said, I don´t need it Smile )


RE: Final touch on Sphere.ini - Vendetta - 05-05-2012 08:12 PM

the simple way is to on f_onserver_start
serv.ip =<external_ip>

the all will connect to same shard


RE: Final touch on Sphere.ini - VeTaL - 05-05-2012 08:16 PM

Same here. Now i commented [SPHERE] part. (Didnt want to do it, because i thought, it is critical for server).

This time, i see "Templars Shard" and "Sphere". Looking like, second name is default one.

So, is it possible to have only one line for everybody?
2 Vendetta

I found f_onserver_start in sphere_serv_triggers.scp, now its looking like
Code:
// This function is called on server startup
[FUNCTION f_onserver_start]
serv.ip =<external_ip>

Then i changed Sphere.ini to
Code:
[SPHERE]
AGREE=1
// Name of your Sphere shard
ServName=UO Templars
// The IP of your server, this will be 127.0.0.1 almost always
ServIP=uotemplars.hopto.org
// The port of your server, this is 2593 by default
ServPort=2593

****

[SERVERS]
//Templars Shard
//uotemplars.hopto.org
//2593

Sphere doesn't launch.
Now i return back

Code:
[SPHERE]
// Name of your Sphere shard
ServName=UO Templars
// The IP of your server, this will be 127.0.0.1 almost always
ServIP=127.0.0.1
// The port of your server, this is 2593 by default
ServPort=2593

***

[SERVERS]
Templars Shard
uotemplars.hopto.org
2593

And got warning
Code:
13:30:ERROR:(sphere_serv_triggers.scp,64)Can't resolve <external_ip>
13:30:ERROR:(sphere_serv_triggers.scp,64)Undefined keyword 'ip'



RE: Final touch on Sphere.ini - Vendetta - 05-05-2012 11:06 PM

USE SERV.SERVIP=

lol of course external ip is the ip you got when you connect to internet.

the one that is resolved on uotemplars.hopto.org

maybe you can try also with

SERV.SERVIP=uotemplars.hopto.org

don't use <external_ip> but your ip 88.114.89.161 or uotemplars.hopto.org


RE: Final touch on Sphere.ini - VeTaL - 05-05-2012 11:11 PM

Ah xD
I thought, it would be found by itself Smile
Yep, it works

SOLUTION: in sphere_serv_triggers.scp, add
Code:
// This function is called on server startup
[FUNCTION f_onserver_start]
SERV.SERVIP =<put_here_your_external_ip>



RE: [solved] Final touch on Sphere.ini. Server selection problem - VeTaL - 05-06-2012 09:51 AM

Probably, not only that is needed. Also, i found this

So i also added
Code:
[FUNCTION f_onserver_save]
SERV.SERVIP = uotemplars.hopto.org

// This function is called after server has saved correctly (once per stage with background save).
[FUNCTION f_onserver_save_ok]
SERV.SERVIP = uotemplars.hopto.org

// This function is called after server hasn't saved correctly (once per stage with background save).
[FUNCTION f_onserver_save_fail]
SERV.SERVIP = uotemplars.hopto.org

I expected it it solve my world save problem, but it didnt help Sad