Why does C3 allow you to work on & save a corrupt file, without telling you something is wrong?

0 favourites
  • 15 posts
From the Asset Store
In this template the music plays without looping in your game
  • This morning I opened my latest project (34TheOther.c3p) and I got that 'Are you sure it's a C3 file' error message. Which I'm told means your C3 file is corrupt. Because YES, it's a C3 file.

    I went to Google Drive, found the file and because I hit save obsessively, I have 97 versions of that file. I downloaded version 96. Same error message.

    So I downloaded and attempted to open 34TheOther.c3p version 79 from 1:51pm. Same error message.

    I then downloaded and attempted to open 34TheOther.c3p version 32 from 11:58am. Same error message.

    Then I downloaded and attempted to open 34TheOther.c3p version 1, from 9:51am. Same error message.

    If the file was corrupt at 9:51am, why did C3 allow me to work on that project and repeatedly save that project - the Entire Day - without telling me there was a problem?

    How do I know that file isn't going to open the next time I use it without closing and reopening the file as obsessively as I save it?

    That's an entire day wasted.

  • Hit F12 and check in the console what the error actually says. Often it's possible to fix it. Are you using beta or stable?

  • WackyToaster

    Hit F12 when? The game won't open.

    I only use the stable version, but the file still won't open because it's now corrupt.

    I want to know how to get C3 to tell me the file is corrupt before I spend a day building a game that will never open again.

  • WackyToaster

    This is what I get when I hit F12. Can you tell me what it's supposed to look like, please?

  • What I'm looking for is the developer console, that should open when you hit F12, at least in Chrome. My bad though, I probably shouldn't have gone with the assumption you use Chrome, but any browser has a developer console. Here's an example with an error.

    Just to be sure, the same error occurs if you try to open a file saved in a newer version of Construct. You did not happen to accidentally work in a beta release somehow? Either way, your file is not necessarily corrupted beyond repair. If you post it here via dropbox or something I can take a look at it. Often times the corruption is limited to a few eventblocks and fixing it takes 2 minutes.

    As to why Construct cannot detect faulty saves... I don't know. I doubt there's no measures in place at all, just that there could be cases where it's simply not detectable?

  • WackyToaster

    Thank you for the reply. Someone told me to press F12 before I opened the file, that worked. I should have thought of that, sorry.

    That shows a bunch of problems, but we knew that lol

    The thing is, C3 isn't telling me there is a problem until I go to reopen the file.

    I don't understand why C3 doesn't pop-up message something like 'Hey, I saved this, but there is a huge problem with X that you need to fix now or the file will never open again' instead of allowing us to save the project over and over again.

    Is there a message that pops up and I may have it turned off?

    Or is there a way to know there is a problem before I close it?

    Thanks again.

  • Is there a message that pops up and I may have it turned off?

    Or is there a way to know there is a problem before I close it?

    Not that I'm aware of.

  • a lot of the project examples give the same error in the latest beta

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Have you tried opening in an earlier version?

    Consider not running beta builds for production.

  • I don't understand why C3 doesn't pop-up message something like 'Hey, I saved this, but there is a huge problem with X that you need to fix now or the file will never open again'

    I'm afraid it's basically impossible to do that. It's entirely possible that Construct is saving perfectly valid data, and then it gets corrupted by a disk failure, a networking problem during upload, and so on. There are lots of ways corruption can happen which aren't Construct's fault.

    Construct also can't tell you if your hard drive is about to fail, if Windows is about to fail, if the building is about to burn down, if a flood is about to happen, if you're about to be hit by ransomware, or if your laptop is about to be stolen. So even if it was able to show some kind of warning, it doesn't mean your work is safe. You have to have regular off-site backups for that.

  • Ashley,

    I do have backups. It's saved to Google Drive. Google saves a backup copy every time a project is saved. Google provided me with 97 separate backup copies from about 9am to 3pm - all are corrupt.

    Regardless, without closing and reopening the file every time it's saved, is there any way to know if C3 will consider the project corrupt?

    I save my work obsessively. Closing and reopening a file every few minutes to ensure it's not corrupt isn't ideal.

  • Perhaps construct could display information about filesize of the saved file on each save, in a non-intrusive popup (e.g. appears just below the layout and events tabs). Not a popup that must be clicked (as this would be annoying every save), but something like a floating notification that can be closed, so the user must acknowledge it at some point, but doesn't interrupt their work flow.

    Also, if the save process finishes and reads the file and detects 0MB filesize, then display popup error, since a project should never be 0MB. Wouldn't work with project folders tho, as other files could be manually added in.

    dazedangels , your corrupt backup files, what file size are they?

    I remember back in Construct 2, my C: drive was where my project was, and I had a tiny SSD in, and at one point I saved, it was successful, but little did I know, my C: drive was at 0 free space, and my project actually did not save successfully, it was 0MB in size! Save failed due to disk space, but Construct didn't hint this. Is it down to Construct to help? Not exactly,but I wish it could have just checked that the save file is not 0MB.

    I learned the hard way to backup stuff. Which reminds me, I should check my automated backups are actually working...

  • Jase00,

    Thank you for your reply. I have plenty of space on my GDrive. 10 gigs. The program is much smaller.

    Everything is backed up every few minutes. Google Drive creates a backup every time the file is saved. So you get the saved file and a backup file with every single save.

    In the picture, in my original post, there is an image of the backups. There are 97 backups. Typically, I open one of the backups, but there are 97 corrupt backups.

    There are 97 backups - they are all corrupt.

  • Hello dazed,

    I've had this happen to me about 3 times that I can recall. The latest of which was just a few days ago.

    For me, this issue usually pertains to function parameters, either when I move them around or rename them.

    It would be nice if Construct could automatically perform a check, every now and then, to determine if the project you are saving can be opened.

    However, what you can do as a band-aid approach, is periodically attempt to open the project in another window while you work on it.

    You could for instance do this every time the 2 hour notification pops up.

    This would still mean you'd potentially lose 2 hours of work, but it's better than losing a full day.

  • 1StepCloser,

    That's not a bad idea. I typically open other files to grab bits from one game to put in another. I've never had 2 of the same game open at the same time, but I guess if I just open it and close it again, that would be fine.

    Thanks for the idea.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)