• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Low Priority Saved game incorrectly mixing real life and game time

Tingyun

Corsair
Storm Modder
When saving a game (at least on land), the time shown for the in-game time before you save (when hovering on the "new save" selection) seems correct, but the time shown for already saved games is wrong and seems to be improperly using the real life time mixed with the game date.

For example, I just went to save, and it reported on the "new save" that the time in game would be January 1, 1721 13:59. When I then complete the save, and then reopen to save menu, the saved game says the time is January 1, 1721 17:34. 17:34 is the correct time real world time where I was, but the date is obviously not January 1. January 1 13:59 seems like the correct in game time, but it doesn't actually get recorded as that when you actually save.
 
I think this may be intentional. That way, if you save game again, it doesn't try to generate a second file with exactly the same name. But when you load that savegame, it will set the game time to what it was when you saved the file.
 
I wonder what would make the most sense. Perhaps use the actual date and time everywhere instead?
 
I tend to prefer the game time being used, as I care more about seeing the progression of time in the game than in real life (if only to hide the implications of how addictive this mod is ;) ), but either works. :)
 
Game time doesn't increase very fast and if used for the savegame filename might potentially result in overwriting existing saves.
Maybe?
 
Doesn't gametime go 10x faster than real life on land, 5x faster at sea?

Seems it would be easier to have real life time be the same minute as previous, unless I am missing something.

Plus, overwriting seems ok, if you save twice in the same moment, do you need both saves? ;)
 
PROGRAM\INTERFACES\save_load.c is where I'd start looking for the relevant code.
 
I like it as it is now. Having the game date on the file name makes it easy for me to figure out which savegame I want to upload after I've quit the game in order to report something. Having the real life time on the file means if I've saved a couple of times on the same game day, the second definitely won't overwrite the first. It's also another useful clue in picking the correct file - the one which was saved about five minutes ago is more likely to be the one associated with whatever I'm trying to report than the one saved about an hour ago. :D
 
How it is now doesn't bother me either.
Perhaps not entirely internally consistent, but I'm not sure of the advantage of changing it.... :unsure
 
I don't care much either way, but both the uploading thing and overwriting files are NOT issues, unless I am seriously misunderstanding something.

The file name for the save file does not record the time AT ALL. Seriously, check, the file name is location followed by date, and it adds a 1, 2, 3 and so on after it to avoid overwriting. It does not include the time in the save.

It is easy to find the right file to upload because you have the save folder sorted by date modified. That wouldn't change, obviously. We aren't talking about fooling windows into thinking the file was created at a different time, or something weird like that. ;)

We are just talking about changing it so in the save/load screen it displays the proper time in game, consistent with the display of date.

So I can't see any possible disadvantage to that, no?
 
Since there don't seem to be any continuing objections to making it display game time consistent with the game date, I went looking in the file Pieter mentioned.

Does this part control it? Not sure how any of this really works, or how we can change it to use the in game time, but the last line seems to be what is doing this?. :)

/ KK -->
locationStr = CreateLocDescribe();
pic1 = GetFacePicture(GetCompanionIndex(PChar, 0)); // NK
offic1 = GetMyFormalName(GetCharacter(GetCompanionIndex(PChar, 0))); // PB: Fill in missing firstnames
pic2 = GetFacePicture(GetCompanionIndex(PChar, 1)); // NK
offic2 = GetMyFormalName(GetCharacter(GetCompanionIndex(PChar, 1))); // PB: Fill in missing firstnames
pic3 = GetFacePicture(GetCompanionIndex(PChar,2)); // NK
offic3 = GetMyFormalName(GetCharacter(GetCompanionIndex(PChar, 2))); // PB: Fill in missing firstnames
pic4 = GetFacePicture(GetCompanionIndex(PChar, 3)); // NK
offic4 = GetMyFormalName(GetCharacter(GetCompanionIndex(PChar, 3))); // PB: Fill in missing firstnames
timeStr = GetHumanDate(GetDataYear(),GetDataMonth(),GetDataDay()) + " " + GetStringTime(GetTime());
 
Back
Top