Jump to content

Fix my corrupted file?


adamcreator

Recommended Posts

https://www.dropbox.com/s/06wy4cqclroszzo/EO.scml?dl=0

It's gotten to the point that I'm lucky to get a few minutes with it before it crashes again with a Spriter or Runtime error. Can you "clean" the file ; fix the corrupted section of the data and get me back on track? It's currently the end of my work day so I'm giving up for now and posting this, but I'd appreciate it if someone could get to it before my next work day begins again tomorrow, as this file is what I'm working on. It's just the scml, no images or audio, which I assume is enough for fixing the corruption. I have many other older saves of the file as well as restore-able previous versions in Dropbox, but they crash Spriter too, regardless, so it's too hard to find out how deep/old the corruption in the save history goes, not to mention what the source is, making avoiding it again in the future too difficult. Let me know if it's possible for an included image or audio to be the corruption instead somehow, in the case in which the scml itself is fine but an included image or audio must be replaced for any reason. I'm just an artist/animator, not a software or file bug fixer. I'm using Spriter Pro version 5, though had this corruption with the version before that too, and Windows 10.

Thank you

Link to comment
Share on other sites

Hi Adamcreator,

I've brought your issue the attention of Edgar (Spriter's creator) and we'll look into it as soon as possible. In the meantime, please do what you can to pay attention to what specific feature or step you are taking before any crash. Does the crash occur if you load Spriter and do nothing, always when you are moving a kyframe on the timeline, always when manipulating a bone etc?

I'll report back as soon a we've had a look.

Sorry for the delay in getting back to you.

Cheers.
-Mike at BrashMonkey

Link to comment
Share on other sites

Thanks Mike! It crashes upon opening it or shortly after. Another way to cause the crash is to have the audio scrubbing option set and then click and drag in timeline.

My plan so far on my end is to split the scml file into separate scml files with animations that can work on their own, such as separating scenes/cutscenes, and perhaps including one 'Characters' animation to include all complicated character rigs in every scml, just in case the scml file simply got too cumbersome to be stable, if that's a possible cause of crashes? (The downside with many different scml files is that the very same image resources seem to be duplicated in Construct2 despite being the exact same files, but a larger download size is better than no game/app at all.)

Link to comment
Share on other sites

This really makes me wonder the size of the images you're using, the number of them, and the size of the audio files. Maybe you're running out of graphics memory? This causes crashes when people try to export GIF animations at a large resolution/FPS combination... this same limitation might be effecting you.

Any chance you can email me a zip or dropbox link of the entire project, with all image/sound files? ( mike@brashmonkey.com ). of course I'll share it with no one, I only want to see if it causes a crash on my system and what the general memory usage is etc.

cheers.

-Mike at BrashMonkey

Link to comment
Share on other sites

I can definitely do that if it becomes necessary, but I don't mind working off of the fact that, yes, there are many high-res PNG images. There are many audio files too but I keep the MB low, as well as the correct wav format for Construct2. There's also the recent scene I've been working on that's now 150k frames including many key frames, that I considered chopping into 2 or more animations and simply putting them together in Co2 events. If the images are too large, or too many, or the audio files too large, then it seems that would suggest that I either batch decrease all PNG images to about 75%, (and later in Co2 simply resize Spriter object/animations up accordingly to still become 1920x1080) or, as I mentioned, to just limit how much I do in just one scml file, which is what I plan to do so far when I get back into the work again shortly. For now it's enough for me to simply gain knowledge on what's actually capable of causing crashes, and so far from what you said, Spriter does indeed currently have a limit on how much it can take all in one scml file. (I assume it's a Spriter issue--that could possibly be improved in a future update?--as opposed to computer memory since neither Photoshop, 3dsmax, nor After Effects/Premiere crash on my computer, when dealing with much greater amounts of high-sized files, but my knowledge of these technical issues is limited.)

Link to comment
Share on other sites

I have an update to report: I've been working with that scml file in Spriter Essentials Edition 5 and so far it has NOT crashed yet. As opposed to the Steam version of Spriter Pro 5 I usually use, in which it crashes after loading the file or shortly after. If this is just a fluke and SEE5 does crash, I'll update this post. But, as of now, is it possible that some SP5 feature in my scml is causing the crash? Such as something to do with the inverse kinematics or whatever feature for bones that I don't use but sometimes activate by accident that results in a little red circle? More importantly what might the fix be? I already tried re-saving the file in SEE5 and then opening that one in SP5, but it sill crashes, so that doesn't seem to 'delete' any involved SP5 features in the scml file. As of now I'll use SEE5 and attempt to temporarily switch to SP5 when I next need to load a Papagayo data file or flip a character horizontally. Also, even though Steam's Verifying the Integrity of the Application Cache found 3 errors, SP5 still crashes with my file. However, I ran the Verify more than once and it always claims 3 errors that will be fixed, so when does it actually fix them?

Link to comment
Share on other sites

UPDATE: I hope I don't jinx myself by being too happy too early, but so far so good: Here's what I did to fix my jam, in case it ever helps anybody else. It's a bit complicated but bear with me: Since I discovered that my file doesn't crash when using Essentials version, except when dealing with cumbersome tasks (but still a huge difference between how much more Essentials can actually take compared to Pro, at least in these experiences of mine), what I did was save the scml file in a sub-directory in order to purposely cause images to be missing, causing it to load super-fast and be very easy to work with, then I one by one deleted each scene/animation except for one and then re-saved that scene out as its own scml (in order to lessen the load on Pro version later on) and after splitting the scml into four total files, dividing the original 17MB into files of at most 7MB each, as well as saving--in-program, not simply in Windows Explorer--the scml's back into the main directory, no longer the sub-directory I created earlier, thereby linking the images and Project folder palette back into the scml's, I was then able to again open up the latest scene I was working with in Pro version, not just Essentials, with no crash thus far. It's all about lightening the load by having separate scml files, and using the merge-project feature seen here...

http://www.brashmonkey.com/spriter_manual/importing%20one%20spriter%20project%20into%20another.htm

...if ever needed to once again combine animations from different scml's in the future. I assume that the download size will later, unfortunately, take a hit as a result of having so many scml's that contain the same reused and duplicated characters and images, but this way Spriter doesn't crash when using many high-res PNGs for character rigs. Again, I hope Pro version plays nice with me from now on, since I'd rather not make a new scml for every 5MB or anything that often. Unless this lightweight aspect of Spriter is improved in a later update, I don't see how something like, as an example, a complicated scml containing many customize-able character pieces, as well as animations and everything else those pieces could be used for, would ever be a realistic project to work on, due to crashes. Maybe only if all images are about 25% HD instead of full HD.

Again, all this stuff may just be my own experiences.

Link to comment
Share on other sites

Hi adamcreator,

I'm glad to hear you've found a solution.  From the sounds of it, the cause is simply you are running out of memory in Spriter (most likely graphical memory). Sprite was made for animating individual characters, effects etc more so than long cinematic etc.

If you're worried about download size and performance, I think reducing the resolution of the images used will be better for both than having one very large Spriter file for everything...especially if you can split up the Spriter file so that each branching file uses mostly separate images from the rest.

The free version and full version of Spriter are the exact same code (with very minor changes for the Steam version... the pro features code is still in the free version, just locked) so your having loaded the file without the images and sound was almost certainly the key factor, and not using Free VS Pro. , but I could be wrong, so if you verify trying the same tactic with Pro would still crash (loading with no sound or images) then please let us know and we'll look into it further.

I'll keep an eye on this thread in case there are any new developments.  Out of curiosity, can you tell me the average image size in pixel dimensions and how many overall were being used in the project?

cheers,

-Mike at BrashMonkey

 

Link to comment
Share on other sites

Thanks again Mike! Yes it looks like it was that graphical memory issue. I'm also going to be careful in deciding what's in each scml file according to which characters will be repeated in which scenes.

For whatever reason, at the time, the Free version of Spriter didn't crash when opening the same scml file that the Pro version (but also Steam version) would always crash, but even now opening that original big scml crashed both the non-Steam Pro version, as a test, but also this time did also crash the Free version that I installed in its own directory for testing purposes, so I guess the crashes with that big scml can be tricky/fickle.

But the trick that really saved the day for me, where I temporarily changed the scml's file location to not load images or sounds, would likely have worked in the Pro version too, since the file becomes so fast and easy to work with when all images are temporarily shown as missing, so that edits can safely be made without crashes.

There were many images being used where characters appear from about hips-up in a 1980x1080 screen for cutscenes in which they fill most of the screen, with one PNG per body part, a usual skeleton (I count 17 parts in total when the torso is given 3 sections total for bending, legs included as well since the camera will sometimes truck down to the ground, as well as the chance for gameplay in which characters will be seen full-body walking) with a bit more layers for facial expressions and hair, and 9 such characters in all in that original scml file. To be careful with file size, I usually have the images be as close as possible to the exact res size needed on-screen instead of more.

But so far so good! The split-up versions of the scenes haven't crashed on me yet, even in the Pro 5 version with all images and sounds loaded.

Link to comment
Share on other sites

https://www.dropbox.com/s/zlqf3fe0mq9ec43/scene9.scml?dl=0

Unfortunately nothing I've done in the past couple hours straight has succeeded in making my scml, url above, run in Construct2, and I have tons of experience successfully running Spriter scenes in Construct2, so I'm finally going to have to ask what's wrong with my scml, such as if there's a bug or corruption you can find in it and fix/clean it. It doesn't run at all in Construct2. I even tried splitting the 150k-frame scene into two halves, tested it, failed, and then even further broke those two halves into yet two more halves, for four total parts of ~40k frames, and still failed. Also got rid of any audio files that run for longer than 10sec, and still failed. Also tried making a fresh new Construct2 project of just this scml, and still didn't run. I'm out of ideas for now. Any help would be appreciated.

Link to comment
Share on other sites

Hi adamcreator,

We won't be able to try to help without having access to your capx and the entire Spriter project (scml and all image and sound files it uses, in the proper folder structure, as a zip file). We won' share it with anyone, will delete it when we're finished testing and would be happy to sign an NDA first if you'd like.

We looked at your file and saw no obvious corruption in the first place, your loading it without images and it then not crashing showed with almost complete certainty that the issue in Spriter was that Sprite was running out of graphics memory.  Have you imported and tested one of your now separated Spriter files at something like 50 percent scale, or without sounds? Perhaps C2 is hitting similar limits to what was happening in Spriter? 

I'm coming down with a bad Flu that's had my wife in bed for 4 days straight (and counting), so my apologies in advance if my replies become slow.

 

cheers.

-Mike at BrashMonkey

 

Link to comment
Share on other sites

Ouch, sucks about the flu! If it's the same strain over here that I'm still getting over the last coughing stage of, it's about a 7 day flu followed by 18 days of coughing. I saw a doctor for it, and that's what she said. I'll try to get my flu shot from now on. Might be a good idea. No worries about slow responses. I always try to figure everything out myself anyway and only make a post when I get desperate or have new info about an existing issue.

Knowing there's no corruption in the actual scml file is useful. I did try the scml file at 50% image-resize, but a theory is that since the Construct2 Spriter plugin appears to load all Spriter assets at one time (evidenced by the fact that there's only ever once load screen and no pauses between layouts nor different Spriter objects), maybe the entire project simply got too cumbersome, so my next step will be to start over fresh with an entirely new Construct2 project and reloading all Spriter objects again, but all at 50% resolution/image size. I was probably going to need to do that eventually anyway since my download size was in the hundreds of MBs, so that'll be my next step. I'll update with any solutions or new problems as they come.

Link to comment
Share on other sites

I seem to have done everything right, as I have many times before, in importing my scml's into Construct2, and even reviewed

just in case, but now it won't run my scenes anymore, in the fresh new Construct2 project I made, in which all scenes are 50% resized thru Spriter.

'Spriter' is my initialization sheet seen in this screenshot, and it looks like I've done everything right, yet the scenes won't run anymore in Chrome or any browser I try: Also have the latest of all programs and plugins involved.

co2.jpg.48505dc7c89e678dd02f171b2933d118

Link to comment
Share on other sites

Update: So far, one piece of knowledge I seem to have gained is that, sometimes, if you manually duplicate/copy the layout in Construct2 that won’t work when you test it, then the new one WILL work. As if some kind of Chrome cache error or something, despite that it’s a 100% duplicate of the layout/sheet that didn’t test correctly. Being a fresh new layout/sheet with nothing different but the name seems to result in a successful test. Except for some sprites/images being replaced by others, as if because of some naming similarities, such as one character's eyes becoming their hand because of similar names of the image files.

Link to comment
Share on other sites

A few thoughts,

1) Hundreds of megs is a massive download size.. keep in mind, this is compressed! The amount of RAM and graphics memory needed must be through the roof once its done unpacking. This alone might explain why frames sometimes work and sometimes don't. Depending on whatever else you have running at the time, you might be running out of memory.

2) Is it possible you're using an unsupported Spriter feature like skin mode or sub-entities in the Spriter file?

 

Link to comment
Share on other sites

No, I'm not using any unsupported features that I know of. Right now my Construct2 file is a nice 50MB download after shrinking everything to 50% res (and starting fresh with a new Construct2 project) so I'm just working on fixing the remaining issues such as with that latest scene that still has some issue. Could even be a single image or sound file, for all I know.

I think I found the issue! For whatever reason there was one spot in which a "Missing Image" appeared over a character's face for a brief frame in Spriter. Selecting and deleting that on that frame in Spriter now allows the scml to be used without error! I'll now memorize that when a scml crashes and/or causes errors in Construct2, I'll look for even a brief red "Missing Image" spot anywhere in the animation(s), and delete it. What I had to do to find this out was grueling, but the knowledge is necessary. Continuing to work with it in Construct2 now...

Link to comment
Share on other sites

Okay this time I might really need technical help. Testing in Chrome as normal doesn't run my latest scene/scml, even though there are finally no actual crash or Construct2 errors associated with it anymore, and testing it in Edge actually gets an error message out of it, which is as such:

error8.jpg.87d8d355cf97256e45dbaf9ba0db5

I'm not sure that error is related to my issue, I just know that the issue is that no browser is playing section 1 or 2 of the scene, (that I split up earlier, now into 5 parts) it's just playing section 3 4 and 5. I can't seem to find why it wouldn't like part 1 or 2. Everything about them looks fine to me in Spriter, and I did the same correct process and events with them as I did with parts 3 4 and 5.

Can't wait to be done spending full work days on this. It's all about gaining knowledge I didn't have before, and memorizing it so it can never happen again. Then I'll be free to just be an artist and never have to stretch my patience this far again. I appreciate any ideas. My battle plan for tomorrow will likely begin with deleting all audio in the scml pieces and reimporting them again just to continue narrowing down the culprit.

Link to comment
Share on other sites

I e-mailed the part of the scml that won't run in Construct2, all images and sounds included, to your support e-mail. I also set up the scon and a very simple but complete for testing purposes capx file and included them in the zip file linked to in the e-mail as well. I'd appreciate if anyone there could figure out how to make it run in Construct2 and let me know what the big issue was so that I can take care of it myself in the future. It's a simple scene of just 1 entity with just 1 animation, so that's all I need running successfully. Thank you

Link to comment
Share on other sites

Hi adamcreator.  Sorry, some nasty flu like stuff hit my family and I've been mostly out of service for the last many days.  Can you please re-email the capx file zip etc to mike@brashmonkey.com.. It seems our support email system filters out attachments atm.

 

Thanks.

-Mike at BrashMonkey 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...