Corrupted project

Is there anything that can be done with this corrupt project?

error:
image

i already try to recover: same problem…

(i can download the .xml of the project)

can i see the xml

Manual page 137:

What are some of the last actions you performed? Do you know what caused the project to corrupt?

xml link:
https://snap.berkeley.edu/project/14922451
project page:

I don’t know, I saved the project several times and I think it was already corrupted at that point.

I don’t know if it’s related, but sunday in afternoon, I had a small problem saving (it took a very long time before the “saved” message appeared on the screen). I tried saving again immediately afterward and everything went smoothly.

Did you close or refresh Snap! after saves?

idk

How about I reframe my question: Do you routinely leave Snap! running on your computer all day, or close Snap! once you finish with it?

not all day but for a long period of time

I am not fully sure what was happening, but I discovered a makeshift remedy and got the project to load. Follow these steps:

  1. Download the XML of the card engine project.
  2. Copy the project to another filename. I will refer to this is card engine - Copy.
  3. Edit the XML of card engine - Copy, and delete all custom block definitions. Look for the <blocks> tag that it is not empty. Delete all the contents of the <blocks> tag. Just the contents.
  4. Go to Snap!, open the project menu and load card engine - Copy first. The project loads fine, but all custom blocks are undefined. Ignore what is in card engine - Copy.
  5. Open the project menu again and load the original card engine project. Does it load fine with all the blocks and other data intact?

oops, dev mode has nothing to do with this other than so I can screenshot the IDE easily

it work ! thank you very very very much !

It seems that you redefined a primitive untitled script pic - 2025-12-16T213235.831 to show variables dictionary in the first slot


<block-definition s="%'#1' of %'#2'" 
type="reporter" 
category="sensing" 
selector="reportAttributeOf" 
primitive="reportAttributeOf">

Your primitive definition is not in sync with scripts. Scripts store first parameter as a variadic input.

It should load if you modify the primitive definition (input type to variadic) in XML

<block-definition s="%'#1' of %'#2'" type="reporter" category="sensing" selector="reportAttributeOf" primitive="reportAttributeOf">
<header/>
<code/>
<translations/>
<inputs>
<input type="%mult%s">
$_costume #
<options>§_getVarNamesDict</options>
</input>
<input type="%s" readonly="true">
<options>§_objectsMenu</options>
</input>
</inputs>
<script>
<block s="doPrimitive">
<l>
<bool>true</bool>
</l>
<l>reportAttributeOf</l>
</block>
</script>
</block-definition>

You’re right !
Thank you for your time…