Tethealla Server Setup Instructions

Ryangosling

Member
Gender
Male
What errors exactly?
Could this just be xcopy command failing?

Not sure about xcopy, while I don't know if it comes with all versions of windows, that all it does is copy the output executables to the ./bin/x folder.


Well, if you don't plan to serve more than a handful of players, a 1vCPU and half a gig of ram should get you by.
If you host the db (if using sql) and other stuff in the same machine, would be another story.
Xcopy isn't giving the errors vs 2022 gives errors when trying to compile the patch server as a release build debug works fine.

The issue I see with xcopy is the addaccount won't open due to the dll it uses being copied over using it. If I manually drag the dll file to the folder with add account and replace the one xcopy placed there it works so it's weird.

Hypothetically a 10th to 12th gen i9 and 64 gig of ram with sql running local to that machine would host a decent amount of players then. I don't plan on running any servers this is all hypothetical as I am just curious about the optimization. Although I think running a sql server externally would be a better idea for security.
 

Soly

Member
Gender
Male
The issue I see with xcopy is the addaccount won't open due to the dll it uses being copied over using it. If I manually drag the dll file to the folder with add account and replace the one xcopy placed there it works so it's weird.
What dll tho?

I'll see if I can look into the release build errors.

Hypothetically a 10th to 12th gen i9 and 64 gig of ram with sql running local to that machine would host a decent amount of players then. I don't plan on running any servers this is all hypothetical as I am just curious about the optimization. Although I think running a sql server externally would be a better idea for security.
That'd probably be overkill yeah...
 

Ryangosling

Member
Gender
Male
What dll tho?

I'll see if I can look into the release build errors.


That'd probably be overkill yeah...
libmysql.dll is the DLL I believe it is required by the account_add.exe.

The issue I have is when xcopy copies it over (the xcopy script from your repo in the build folder) I open account_add.exe and it opens quickly and closes but if I manually drag libmysql.dll from \src\mysql\lib\ to the location where I have account_add.exe it opens and works as it should.

It seems this guy was on to something with the patch server https://github.com/CaptainPeabutt/Tethealla
 
Last edited:

dont

Member
Guildcard
0
For anyone else, took a lot of hunting.... still coudn't figure out the sql approach but this works


- Extract spsos_login_v.048_nosql into "Server" folder (create new) in FullClient
- Extract ship v.143 into same "Server" folder, overwrite whats needed
- Copy contents of folder located in "Server/ini" files into "Server"
- execute make_key.exe
- run account_add
- Open login_server.exe in hxd hex, edit TethVer12510 to TethVer12513 via find replace
- open login, patch, ship server
- open game, download patch
- open game
 

ragar

Member
Guildcard
301512
Hello, someone can help me?
when i lauch the Psobb.exe and when i go to "Start Game" I get the following error message:


(No903)
Patch server connection failed.
The server may be under maintenance.
Please check the current news updates on the Official Site.
 

thom2305

Member
Hello, someone can help me?
when i lauch the Psobb.exe and when i go to "Start Game" I get the following error message:


(No903)
Patch server connection failed.
The server may be under maintenance.
Please check the current news updates on the Official Site.
I Have The Same Problem And I hex Edited everything right And My Ship Server Wont Connect to the login server
 
Last edited:

jiyo

Member
Guildcard
0
I Have The Same Problem And I hex Edited everything right And My Ship Server Wont Connect to the login server

Have you already opened all the right ports on your firewall? (i.e. Router, Windows Firewall)

What are the error codes on your end, if any?

Have you messed around with the server code?

Is your router also NAT loopback enabled or compatible (this allows you to connect to your own server from within your own network-- think of it as your server accepting internal connections rather than just outside)?
 

Onii-Sama

Member
Setup instructions for Tethealla PSOBB server:

Login Server (SQL version) @ https://files.pioneer2.net/spsos_login_v.047.zip
Login Server (.DAT version) @ https://files.pioneer2.net/spsos_login_v.048_nosql.zip
Ship Server @ https://files.pioneer2.net/spsos_ship_v.143.zip
Source Code for everything @ https://files.pioneer2.net/tethealla_source_032111.zip

See the individual notes inside of each archive for details.

For those who need instructions on how to set up the login server, you basically do this:

1. If using the .DAT version, skip to step 6.

2. Install MySQL on a machine. Whether it be Linux/Unix/Windows or whatever, it needs to have MySQL running on it from an accessible port. (For security reasons, you really should have the login server and MySQL server running either on the same machine or AT LEAST on the same network... don't access a MySQL server from the internet...)

3. Add a new MySQL user (don't use root as that'd be noob)

4. Create a new database and import the tables from sql\pso_server.sql into the database.

5. Give the new MySQL user permission to read, write and delete from these tables. Also give the MySQL user access to the MySQL server through whatever host it's going to use.

6. Configure the login_server parameters by editing the tethealla.ini at ini\tethealla.ini Once done with that, copy the tethealla.ini from the ini folders into the same folder as login_server.exe and account_add.exe

7. Run account_add.exe and add the first account. (This account will, by default, be granted global GM as it's the first account on the server...)

8. Run make_key.exe to generate your first ship's key binary file. (This will also import the key into the SQL table with the appropriate index ID...)

9. The ship_key.bin file generated by make_key.exe should be copied into the folder of your first ship's ship_server.exe

10. Edit the welcome.txt in the ini folder then copy it into the same folder as patch_server.exe

11. Run patch_server.exe

12. Run login_server.exe

13. Run ship_server.exe, all should be well. (Provided you already did all the appropriate configuration of ship.ini to connect to the new login_server)

14. Download the unpacked PSOBB executables and hex edit in your IP address.

https://files.pioneer2.net/TethExes010710_PW.zip for the v1.25.10 executables for both Vista and XP. (Password for ZIP is "pioneer2". Had to put a password due to Google flagging it as malware even though it's NOT.)
https://files.pioneer2.net/TethExes12513.zip for the v1.25.13 executable compatible with both Vista/7/8 and XP.
https://files.pioneer2.net/Tethealla_PSO ... Client.rar for complete client including the v1.25.13 executable compatible with both Vista/7/8 and XP

15. Distribute modified EXE to all of your connecting clients.

16. Make sure you've opened up port 11000, 11001, 12000 and 12001 for your login server on your firewall and if you wish players to connect externally configure NAT on your router to point these ports to the IP address hosting the server.**

17. Make sure you've opened ports 5278, 5279, and 5279+the number of blocks you're hosting in succession on your firewall and if you wish players to connect externally configure NAT on your router to point these ports to the IP address hosting the server.**

18. Have clients connect!


.. Hopefully I didn't miss a step.

The .DAT version of the login server has a hardcoded limit of 2,000 accounts. I didn't code any checking but if you attempt to exceed that number of created accounts, the program will crash. (Because I forgot to add in a check for that.. :D)

I'll probably remove the limit later.

If you're serious about setting up any sort of heavy traffic server, you should definitely be using the SQL version (IMHO).

**Your router will need to support loopback NAT for this to work. Check the manufacturer of your router to confirm this.

... Some updates coming soon!!
So, I'm not sure what I'm doing wrong but I believe I followed all the steps verbatim using the .DAT process starting from step 6. I've started the psobb executable but I'm still getting the same message that indicates the server is not online. (Attached picture)
Here's what I've done and some things I've noticed...
- I cannot open option.exe. Literally nothing happens.
- I've extracted the contents of https://files.pioneer2.net/spsos_login_v.048_nosql.zip into a folder on my desktop calle
- I've added my private ipv4 address to the ship.ini and tethealla.ini. I've also added my public address in there as well.
- I left mostly everything default because I didn't want to screw things up (which happened anyway)
- I don't know what you mean on line 14. by "and hex edit in your IP address." I downloaded the hex app from the link you sent me but that's as far as I went. I even asked ChatGPT to simplify it for me but still no luck. So, I downloaded the app, did nothing after that.
- I've unpacked everything into 1 folder aside from the PSOBB files. I unpacked those separately.
- I've created port forwarding on my router and on my firewall for the ports mentioned above.
- I have no idea what 15 means. How and what do I distribute to people? It's only for 4 of us really lol.

I've taken some screenshot for context. Let me know if I need to clarify anything.
 

Attachments

  • PatchServerConnectionFailed.png
    PatchServerConnectionFailed.png
    527.1 KB · Views: 7
  • Servers Running.png
    Servers Running.png
    73.4 KB · Views: 7
  • DIrectory.png
    DIrectory.png
    77.3 KB · Views: 7

Matt

Administrator
Staff member
Gender
Male
Guildcard
42000044
Well the issue is that you're not hex editing in your IP address! It's an extremely crucial step so PSO knows where to connect to.

You need to open psobb.exe with a hex editing tool, then find the IP address that the file is pointing to (it's 127.0.0.1 in the 12513 client) and edit it to the correct IP address.

See below for what you should be looking for, you'll be able to simply just type in your IP address on the right to replace the old one.

1683798835586.png
 

Onii-Sama

Member
Well the issue is that you're not hex editing in your IP address! It's an extremely crucial step so PSO knows where to connect to.

You need to open psobb.exe with a hex editing tool, then find the IP address that the file is pointing to (it's 127.0.0.1 in the 12513 client) and edit it to the correct IP address.

See below for what you should be looking for, you'll be able to simply just type in your IP address on the right to replace the old one.

View attachment 19169
Thank you for that Matt. That helped a ton! Got it work, now it's just telling me my password is incorrect which I have no idea how to change. I see that there is an account.dat file but unsure how to make changes to it. So, 3 more quesitons..

How can I make changes to accounts?

Am I sending the Tethealla_PSOBB_FullClient folder to my buddies so they can connect to my server?

How can I get them to add their own accounts without me being involved in the process?
 

Onii-Sama

Member
I've even attempted to create a new account and was very careful with the username/password
Still saying Username or Password is incorrect.
 
Top