Shop  •   Avatar  •   FAQ  •   Search  •   Memberlist  •   Usergroups  •   Profile  •   Log in to check private messages  •   Log in  •  Register 

Landmarks on the diagonal...
Post new topic   Reply to topic     Forum Index -> Orienteering
View previous topic :: View next topic  
Author Message
jlangsdo
Cutthroat
Posts: 363



8880 Gold -

PostPosted: Thu May 17, 2012 4:52 am    Post subject: Landmarks on the diagonal... Reply with quote

So, I've been messing with savegames, trying to find out what every bit means. I found the bytes that create pirate landmarks, and found something surprising - setting the byte to 0x10 creates a landmark, but the name on the landmark seems to be set solely by the location.

That's right folks, it is not true that the landmark names are random, it's just that the locations that have landmarks are random! And, of course, the landmark names themselves repeat....

Furthermore, the names seem to be in strings that trend SW-NE. Note the highlighted set of "Knife *" landmarks. This suggests that it should be possible to create a world map that has the landmarks drawn in as diagonal lines...

Observe:
[/img]
Back to top
View user's profile Send private message
Roland
Boatswain
Posts: 2956



9014 Gold -

PostPosted: Thu May 17, 2012 7:42 am    Post subject: Reply with quote

Interesting find! I wonder if settlements are named in a similar fashion. I know their names can repeat.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
jlangsdo
Cutthroat
Posts: 363



8880 Gold -

PostPosted: Thu May 17, 2012 10:55 am    Post subject: Reply with quote

I don't fully understand all of the details of settlements, but their names are stored in plain text right at the top of the savegame file. So it's easy enough to change the name of any settlement - or city, for that matter.
Back to top
View user's profile Send private message
jlangsdo
Cutthroat
Posts: 363



8880 Gold -

PostPosted: Sat May 19, 2012 3:30 pm    Post subject: Reply with quote

There are 20 adjectives that define the landmark diagonals; that's not quite far enough apart to prevent you from seeing matching landmark names on the upper left and lower right sections of the screen. To calibrate that to the world map, there are about 40 landmarks horizontally from Santo Domingo to San Juan - so they are not on adjacent stripes, but the next stripe over.

There are 7 nouns. They have a standard order going up the diagonals, but they stutter sometimes (Rock, Reef, Rock, Reef). I don't understand the stuttering pattern yet.
Back to top
View user's profile Send private message
sparticus
Helmsman
Posts: 5796



44177 Gold -

PostPosted: Thu May 24, 2012 3:08 am    Post subject: Reply with quote

jlangsdo wrote:
There are 20 adjectives that define the landmark diagonals; that's not quite far enough apart to prevent you from seeing matching landmark names on the upper left and lower right sections of the screen. To calibrate that to the world map, there are about 40 landmarks horizontally from Santo Domingo to San Juan - so they are not on adjacent stripes, but the next stripe over.

There are 7 nouns. They have a standard order going up the diagonals, but they stutter sometimes (Rock, Reef, Rock, Reef). I don't understand the stuttering pattern yet.


So there must be a finite - though large total possibilities of the numbers of maps - until you get one the same again.

In the Millions ??
Back to top
View user's profile Send private message
jlangsdo
Cutthroat
Posts: 363



8880 Gold -

PostPosted: Sat Oct 12, 2013 12:05 pm    Post subject: Reply with quote

Hey, dogcigar - could you look into the code and try to figure this out?

The variable names in text.ini are TREASURE and ROCK.
(TREASURE is the adjective, ROCK is the noun.)

They are related to coordinates.

TREASURE is set to something like (x-y)%20

ROCK I can't figure out.

Over short ranges it repeats every 3 Y and every (7 X offsetting the Y by 1), but then occasionally it slips by 1.
Back to top
View user's profile Send private message
dogcigar
Swabbie
Posts: 82



542 Gold -

PostPosted: Wed Oct 16, 2013 6:35 pm    Post subject: Reply with quote

I'll have a look in. Doing my head in looking for a pattern on the image you displayed. I think I'll looked for a stored text string after a game is loaded come across a landmark and see how it accesses it. Hopefully it will calculate the name from the coordinates in real time.

Did some simple x/y substraction on paper of coordinates and could totally see the treasure pattern. This rock value though. Just a thought but seven rock values is a funny number for the computer. I don't know too much about the dividing functions of the computer as I only use SAR and you always end up with an even number of possible outcomes including 0 when you use it. Might have something to do with the value skipping.

Interesting looking at the text.ini the temple,totem and falls values directly after rock all number seven too. I can"t even remembering seeing this stuff in the game
Back to top
View user's profile Send private message
dogcigar
Swabbie
Posts: 82



542 Gold -

PostPosted: Mon Feb 03, 2014 10:22 pm    Post subject: Reply with quote

Sorry to be so late (4 months). been busy paying the bills.

I just searched for the text strings and found the code as it was playing in live time as I was looking at a rock. Couldn`t really make head or tale of it. Tried messing with the code and it crashed immediately. It was jumping in from somewhere else though so I couldn`t see any calculations. Will try backtracking. I think searching for the coordinates will be easier so I`ll do that. Any idea how the information is stored? x and y ofcourse but are there different types and any other info
Back to top
View user's profile Send private message
jlangsdo
Cutthroat
Posts: 363



8880 Gold -

PostPosted: Thu Feb 06, 2014 3:27 pm    Post subject: Reply with quote

The grid is 462 x 293, starting in the lower left (SW). Good luck!
Back to top
View user's profile Send private message
Roland
Boatswain
Posts: 2956



9014 Gold -

PostPosted: Mon Feb 10, 2014 1:52 am    Post subject: Reply with quote

dogcigar wrote:
Any idea how the information is stored? x and y ofcourse but are there different types and any other info

Would it necessarily be stored as x and y? As I recall the pattern, it might lend itself to a single sequence numbered 0 through 135365, running from left to right and then continuing at the left end of the next line up. The first word of each name could then repeat on one modulus, and the second word on a different modulus.

The sample shown above gives us a sequence of 19 words for the first slot of the name, but it might not be comprehensive - it doesn't get to the point where it repeats. So we know the first slot is on a modulus of at least 19. There does not appear to be any variation, so the increment is 1.

The second slot is more complex, but I think I cracked it. There is a sequence of 7 words that repeats horizontally in this cycle:

Shallows, Cape, Rock, Point, Stone, Head, Reef.

That would make a modulus of 7. The complication is that the increment is greater than 1 - it appears to be approximately 1.6. (I would need a bigger sample to estimate it more precisely.) Thus, two or three terms are skipped in each cycle through the list. Thus, we get sequences like these:

Cape-Point-Head-Reef-Cape-Rock-Stone-Reef-Shallows-Rock

Cape-Rock-Stone-Head-Shallows-Rock-Point-Head-Shallows
Back to top
View user's profile Send private message Send e-mail Visit poster's website
jlangsdo
Cutthroat
Posts: 363



8880 Gold -

PostPosted: Mon Feb 10, 2014 2:35 pm    Post subject: Reply with quote

When there is a repeat, it is usually (maybe always) a two-noun stutter, like Reef-Rock-Reef-Rock (see Thunder sites in the picture above).

It may be combining the X and Y as you suggested, but the game holds a lot of things in separate X and Y coordinates, always on the same grid (or with a 1000x scale).

One reason to suppose it is not combining X and Y in a simple linear function n(X,Y) = f(aX+bY) is that if it were doing that, then there would be a reliable way to go from one noun to another site of the same noun, as there is for the adjectives:
n(X-b,Y+a) = f(aX-ab+bY+ab) = f(aX+bY) = n(X,Y)

So I suspect that it is a function that uses X and Y in different ways.
Back to top
View user's profile Send private message
AdamMil
Cutthroat
Posts: 277



4553 Gold -

PostPosted: Tue Mar 18, 2014 10:25 am    Post subject: Reply with quote

I'll copy my post from another thread, since it seems relevant. I think this will work (given $x and $y):
Code:
my @adjectives = qw(
  Skull Blood Devil's Black Knife Cutlass Hangman's Gallows Lookout Dagger Blade
  Powder Captain's Governor Anchor Shark Jellyfish Thunder Rum Cutthroat);
my @nouns = qw(Rock Point Stone Head Reef Shallows Cape);

my $n = ($x*33 + $y*47) % 1000;
my $adjective = $adjectives[$n % 20];
my $noun = $nouns[$n / 20 % 7];
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic     Forum Index -> Orienteering All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group