One Hour One Life Forums

a multiplayer game of parenting and civilization building

You are not logged in.

#1 2019-09-28 17:50:38

sliderule
Member
Registered: 2018-04-02
Posts: 41

Building local server/client on OSX - Version Mismatch

I've been trying to get a matched server and client running on OSX.

I used the Linux instructions, modifying the configure to build for OSX instead.

After the build, I started the server and tried to connect with the client.  I got an error, saying that the server version was 265 and the client version was 262.

I tried to get this fixed by going into the OneLife and OneLifeData7 folders and checking out a matching tag for release.  The problem was that there are no correlating tags in these folders, i.e.: there is no OneLife_v262 in the data repo, and there is no OneLife_v265 in the game repo.

I tried building the server with a LOWER version number than the client, and the client will connect, but all the objects are wrong.

What is the expected relation between the version numbers in these two repos?

Offline

#2 2019-09-28 18:07:46

wondible
Member
Registered: 2018-04-19
Posts: 855

Re: Building local server/client on OSX - Version Mismatch

As far as I can tell the protocol only talks in one version number, with the expectation that if we get a higher number when we try to connect to the server, we need to go ping the update server.

I think the server will report the higher of it's version or the data version, and the client will use the higher it's code or data version.

When Jason updates the data, it's expected the client will go update the data, but may still be an older code version. Jason often seems to update the server *without* changing the version number when it doesn't require client code changes.

I think this means: pick a data version number and make sure they both have that data. Pick a code version and make that match.


https://onemap.wondible.com/ -- https://wondible.com/ohol-family-trees/ -- https://wondible.com/ohol-name-picker/
Custom client with  autorun, name completion, emotion keys, interaction keys, location slips, object search, camera pan, and more

Offline

#3 2019-09-28 18:28:36

sliderule
Member
Registered: 2018-04-02
Posts: 41

Re: Building local server/client on OSX - Version Mismatch

Just did a completely clean pullAndBuildTestServer.

Upon connecting: VERSION MISMATCH: CLIENT 266  -- SERVER 267

They were both built from the same git checkouts.

serverCodeVersionNumber.txt = 266

It's like the server is ignoring this text file?

Offline

#4 2019-09-28 18:36:55

sliderule
Member
Registered: 2018-04-02
Posts: 41

Re: Building local server/client on OSX - Version Mismatch

Getting closer here.

The client says binV=266, dataV=162

But the dataVersionNumber.txt in that folder (symlink) is 267

Why is the client ignoring the txt file?

Offline

#5 2019-09-28 19:03:04

sliderule
Member
Registered: 2018-04-02
Posts: 41

Re: Building local server/client on OSX - Version Mismatch

Not only do I not understand where 162 is coming from, if I hack gameSource/game.cpp to have dataVersionNumber = versionNumber = 267, the objects do not match.

I connect to the tutorial, pick the berry bush and it turns into a german shepard puppy, suggesting that the server and the client data models are still not in sync!

make clean && make in every location does not solve the problem.

Offline

#6 2019-09-28 19:53:48

sliderule
Member
Registered: 2018-04-02
Posts: 41

Re: Building local server/client on OSX - Version Mismatch

Jesus H Christ, WTF is wrong with OSX.

After hacking the game file to figure out where it was pulling dataVersionNumber.txt from, I found it was pulling it from a completely different directory that I once upon a time built from.

Deleting the old folder gave me some dialog boxes to specify the game source directory once I relaunched the client.

FFS, that was ridiculous.

Last edited by sliderule (2019-09-28 22:16:48)

Offline

Board footer

Powered by FluxBB