Damn that sounds a lot more complicated than I expected No worries, restarts can work for the time being. I’ll tell the others to do that until you guys are done and thank you so much!
I’m curious about how that would work. The save names would have the version number next to them and when a new update comes out, the readers can check if the old save file is compatible or not?
That’s the general idea, yes. That way, the player knows up front whether that save will work or not (and if it should work but doesn’t, then they can tell me so we can take a look to see why it’s not working).
Right now, there’s no way for a player to know if their save is compatible or not with the latest update, and no way for me to know if it should be (so when someone says a save isn’t working, I have no idea why it isn’t working). The way it should be working, from my testing, is:
As long as the update is done for a chapter after the player’s save and no new variables were added to startup, there’s no problem and the save works.
If a new variable is added, all the saves are going to bomb if that variable comes into play before the player’s save.
If the author updates a chapter that is before the player’s save, there’s a pretty good chance the save will bomb.
If it’s not something anyone but me would actually use, it’s probably not worth the time/money to add it (I can just curse to myself when I can’t pinpoint the issue!). But if it’s something players and authors would find useful, I think it would be a good addition.
I really like the idea because currently I have no clue how the save system works and what it is exactly that breaks saves or not. Is it just changing the code? What if I only fix 2 typos in a file before a save? Will that break it, or does it break only when I add new variables? So I think it would be useful if a system could detect that, but if you want to spare yourself the headache, it could also be nice to just have a manual about the details of the save system so then we would know what to pay attention to when we update. The save feature is nice, but I would totally understand if you don’t want to put a massive amount of effort into it. In the end, the final game won’t have it anyway.
Just changing the code shouldn’t break a save, unless there’s something that is now being tracked that wasn’t there before. Even a temp variable that’s added into a chapter will break a save that is made later in that chapter (because it wasn’t there when the save was made). That’s kind of the check to see if a save will work–was the save made at a point where every variable (temp or otherwise) needed for that chapter was created and tracked? If so, then the save should work. If not, it’s going to break (because something should be there that isn’t there).
I was just testing the new local saves before dinner and it’s really cool. He set it up where you can use local storage to make your named save, then export all of your saves to a different location on your device in one file. It’s an encoded file and basically nonsense, but it works–I deleted all my local saves, then imported my exported save and all of my saves were available. If you’re logged in, you can choose between server and local storage, so if you use up all of your 10 saves, you can switch to local and save scum until you have no more storage space, lol.
I’m going to test a bit more and make sure there are no security issues, then upload it so everyone can start using it.
Also, I meant to address this before:
Yeah, that’s the problem.
The old moody code wasn’t saving updated dates in the game table, so they were all null when I switched to the new code. A lot of games still have a null value for the updated date in the table, so those are being thrown to the end. Once they are updated, it should sort correctly.
I would assume that changing how much a numerical value changes, or setting a flag differently (even when it has technically existed before, but due to a bug was never set from false to true for example) might make the saves to work incorrectly as well. I mean, not-giving-expected-result incorrectly.
The local saves sound super cool and definitely something a lot of people will use I think (including me).
Is the error that people are getting about the new content setting a new variable related to the same issue with the achievements? I put a new variable in the startup file during the last update and people sometimes get the “non-existent variable” error. This error seems to come up randomly as well, because one person said they had played this part before with no error, and then during a second playthrough, it came up. I’m guessing it’s related?
Local saves are now active on cogdemos.ink. They do not require, nor will they work, with the sm plugin enabled in startup.
A quick explanation (and I will probably put up some instructions on this so people don’t get confused):
Local saves save to your temp files. If you clear your cache, you will lose them.
If you want to back up your local saves, you can use the “export” option. This will export all of your saves to a single file. I suggest you include the game name when you save.
Once you have exported saves, you can import them. The “import” option will import the saves you exported. This means all of the saves that were saved in that single file will be imported.
If you’re logged in, and the author has enabled saves, you can choose to save to the server or to save locally. You have the same import/export options as above. This is only for local saves–you can’t export your saves from the server (so if you want one of them, load it and save it locally).
The same rules apply as from before: if the game is changed in a way that invalidates your saves, they’ll bomb.
I would think so. When you added the new variable, any saves that were made before you added it would likely cause errors.
Some people are getting it even when they start from the very beginning. I got one person who gave me a more detailed report, and they said that the game automatically transported them back to the startup page after it failed to load a save, so they started reading from the startup and when they got to the new content, the error came up. Could it be that when the game said it failed to load a save, it still loaded the old startup file? I can’t really explain it otherwise, unless it’s related to the same issue with the achievements.
Haven’t tested the local saves yet but I can see the option and it’s exciting
I have a bit of time today and started playing your game to try to reproduce the error (I’m loving it, by the way, lol). You have the ability to view your code blocked, so I can’t see where I am in the game, so I’m not sure where it will pop up. I made a save (local, as I’m not logged in right now), and will try to load it after a bit. I’m at the point where Qenna got my MC (Neith) out of the party and told about the attack. Not sure if I’m close to where people are getting the error or not, but I’ll keep trying to see if I can trigger it.
I turned on the code sharing just now! The error they get is in chapter2, around line 7224 where you choose your hair texture. (glad you like it but the code has spoilers so be careful if you wanna avoid those, that’s why I have the code sharing turned off usually).
The error usually seems to come up when the save fails to load. And I’m not sure (because I only got ONE person explaining what they did when they got the error), but they said that the game transported them back to the startup page when it couldn’t load the save. From there, they did NOT hit restart, just started reading (from the startup where the game deposited them). Then when they reached the hairtexture thing in ch2, they got the error. After that, they restarted manually, and the error didn’t come up a second time.
Okay, cool. I’ll see if I can get it to trigger. I’m still thinking it’s a bad save. I haven’t had any trouble with two saves and two reloads. But I’m not at chapter 2 yet.
I just keep replaying Neith telling Qenna and the king how to freaking escape the palace. That was priceless!!! “I even said please and everything.”
Based on the number of detailed reports I got (1) it can very well be an old save error, I guess I just hoped maybe this came up before somewhere so you knew what was up with it. But I am very aware how hard it is to figure out anything when I myself am not getting an error, and someone only writes “yo there is an error”, so I go… okay HOW did you get the error, and then no one can give me an answer (except that one person bless their heart).
So no rush, and if you aren’t getting anywhere with it, that’s also understandable since there isn’t much info to begin with. I’m glad at least you’re enjoying the ride with your Neith
Question… I talked to the developer and he asked for some help reproducing it. I still haven’t been able to reproduce it–I’ve played through your game five times now with no errors. I haven’t gotten any achievements either, though.
I do see some weird errors in the log files (“scene doesn’t exist”, for example, which is especially weird, because it should be an actual scene name with a .txt extension that it’s looking for).
The dev is asking permission to use scene files locally that are known to have the issue, along with exact instructions on how to reproduce it. Would you mind if I gave him your scene files to test? He will delete them after he narrows down the issue, but unless we can actually reproduce the error, we can’t fix it. If you aren’t comfortable with that, I understand, so if anyone else doesn’t mind me giving him the scene files, please let me know. He doesn’t have access to the production machine (or the test machine), so he can’t get them unless I log in, download them, and send them to him.
If we can’t give him some game files with the issue and exact instructions, we’re kind of at a standstill, in which case I may just need to shut down the server and forget about the project. I can’t keep throwing money and time (about $4k so far and approximately 200 hours of my own time) into something that doesn’t work and just pisses everyone off (including me).
Sure, you can use the files! I still have the code-access thing turned on. I can also send the files I have on my pc, if that would help narrow down the issue, maybe to check if the two are identical? Some info might be getting bugged or lost during upload? Or something, I have no clue. If that helps, I’m also not uploading the files through CSIDE. I just use the upload files option in the website and put the raw .txt there. I haven’t gotten any errors in the game either, and I checked just now. My spouse tested the game yesterday too on a different PC, with no issue. So I’m completely baffled by this. You can also write me a dm, or email, or anything you need.
Thanks. I’ll shoot you a DM and send you my email address. Comparing the files you have on your PC with what’s on the server would actually help–at least we can narrow down if the files are somehow being altered when they get uploaded. They shouldn’t,because it’s a straight upload, but you never know.
I may go ahead and merge the updated interpreter into master later today. At this point, it couldn’t make things any worse (famous last words?), and if it fixes the issue, that’d be great.
I think that depends on the game. If a game doesn’t have achievements, then the button won’t show. (at least this is how it works in published games). Weeping Gods has achievements, so if you can see the achievement button there, then all is good If not, you can start to worry lol. I just checked now and I can see the button, but not every game has it. I randomly checked a few, and Golden Eyes doesn’t have it, I imagine it’s because the game doesn’t have any achievements.
I can see it now too! For me, it happens when you are not on the startup page of a game, and it disappears after I reload the page. Then if I restart the game, it appears again.