Question about how GS's internal file structure works...
gamesfua
Member Posts: 723
Hey all, I've got a random question for you. I'm someone who backs up and saves their projects often. However i've noticed that some changes you make in your project actually affect all previous save files as well.
Example: If I delete an image from my IMAGES section of GS then that deleted image will not be in any prior version as well. It appears that each save file is still connected to some kind of internal library.
So because i don't understand how this all works, i'm scared to try new things with my game. For instance i want to try and convert my game from legacy to iphone 5 dimensions, but i'm nervous it might screw up the game (due to the above mentioned example).
Can anyone explain why it does this and also how can we make radical changes/experiments to our game with zero concern of affecting all previous versions.
Thank you so much!
Example: If I delete an image from my IMAGES section of GS then that deleted image will not be in any prior version as well. It appears that each save file is still connected to some kind of internal library.
So because i don't understand how this all works, i'm scared to try new things with my game. For instance i want to try and convert my game from legacy to iphone 5 dimensions, but i'm nervous it might screw up the game (due to the above mentioned example).
Can anyone explain why it does this and also how can we make radical changes/experiments to our game with zero concern of affecting all previous versions.
Thank you so much!
Comments
Do you believe in the supernatural ? If not then simply store your back-ups offline / on a USB key / hard drive / dropbox (etc).
Guru Video Channel | Lost Oasis Games | FRYING BACON STUDIOS
Made a GS project - imported 3 images - placed them on actors - placed the actors in the scene - saved it as Project 001.
Made a couple of arbitrary changes - moved the actors around, that kind of thing - saved it as Project 002.
Made another couple of arbitrary changes - saved it as Project 003.
Made another couple of arbitrary changes - then deleted two of the three images - saved it as Project 004.
Quit GameSalad.
Opened Project 004 - only 1 image now remains - as you would expect.
Opened Project 003, 002 and 001 - all of which still have images 1, 2 and 3 - as you would expect.
. . . .
Weird! Because this has not been the case for me. In my game i had decided to get rid of one of the levels. So i deleted the scene, the actors and the images associated with it. A few days later i changed my mind and went back to one of my old versions. Guess what- the level was there but the artwork wasn't. So if you're not experiencing these sam problems than it could mean one of two things...
1) there's something wrong with my system and or something i'm doing
2) that perhaps the original image files were moved from the location the level was referencing. Perhaps?
I'm going to do an experiment and see if i can show off the problem.
In the meantime it appears that you're saying that a saved project file (preferably zipped) should not be affected at all by other versions. I trust you guys over me. I'll get experimenting and thanks!
(I'm talking about on a mac but I'd presume GS on windows would be the same...?)
So even if you delete images from your save made on Tuesday (GameSave2), the file you saved on Monday (GameSave1) will be unaffected.
However, if you open up GameSave1, delete images and *then* save as 'GameSave2' this means the images will be deleted from gameSave2.
I find it better to 'save as' at the start of the day before I make any changes.
I make a new save every day I work on a game. That means I may end up with a few hundred saves by the end of the game. But I think it's worth it. There have been a few times when I'd introduced a bug that seemed to break the game. So I could figure out the origin of the bug by going back to the last bug-less save.
But thats just the thing, i have literally over 100 versions of my game saved. I'm a video editor by day, so i know the importance of saving your work every five minutes (as a "save as" new version)
The odd thing is what i've done on the latest build seems to affect the prior builds. Crazy right?!
I'm going to test some stuff out now. Thanks again!
Once you delete an image from a file it is gone. Whether you save as or not doesn't matter.
So you should 'save as' *before* you make any changes (like deleting files).
"However, if you open up GameSave1, delete images and *then* save as 'GameSave2' this means the images will be deleted from gameSave2."
It made it appear that GameSave2 would naturally have the missing files and not gamesave1. Perhaps you meant to say that the images would be deleted from gamesave1?" This is what's throwing me because I'm thinking of it like a word document.
I write a document called "123". In it I write, "the cat jumped over the moon."
Then I want to make changes so I SAVE AS "123_A" and write "the cat jumped over the candlestick"
When I go back to file 123 it will have the moon line. When I go to 123_A it will have the candlestick line.
I think that's what's throwing me here. And apologies if I'm not getting this.
Didn't I do what you suggested? I saved the project BEFORE making changes. I named it xyz01. Then I made my changes like deleting, and then saved AS xyz20. When I went back to xyz1 it was gone.
Again a zillion apologies if I'm not understanding something that makes sense to everyone else haha. But I just don't understand this?
In Final Cut Pro, if I save a file xyz1 and then delete ALL of the footage from the program, and then save as xyz20, when i go back to xyz1 the footage will be back. What am I missing?
Thanks so much for your patience!
Everything else works like this:
1) Open a file.
2) Play around with its elements, change a few things, delete some images.
3) Then hit save: the software now modifies the file on the hard drive to reflect the file that is open (the file that is currently held in RAM).
GameSalad works like this (specifically when it comes to assets).
1) Open a file.
2) Play around with its elements, change a few things, delete some images - the software now modifies the file on the hard drive to reflect changes made to the assets.
3) Then hit save: the software now modifies the rest of the file on the hard drive to reflect the file that is open (the file that is currently held in RAM).
. . . . .
So . . . you are deleting some images - which modifies the assets folder/s of that file, then hitting Save As and creating a second copy of this file.
All you would have to do is to Save As and then delete the images rather than delete the images and then Save As.
The good news is that anything you do to a currently open project has no effect on already saved projects.
Okay so that kind of brings me back to my original concern that I'm terrified of screwing up my previous saves.
How do I work around this? For instance if my current game has lets say 5 levels, and 20 images, but I want to make a version of the game that only has 1 level and 2 images-
now I'm terrified of saving it because its going to potentially affect the current file, thus negating all of the work i put into it. Again, unless my brain still hasn't caught up to what you guys are saying (which lets be honest- is probably exactly whats going on here).
Is the safe bet just not to ever delete any of the images?
Or perhaps zip things (although I believe tests I've done showed that didn't work for this problem).
Would this work?:
save the file "xyz1" then SAVE AS "xyz2", then close the program. Re-open with "xyz2" and THEN I can delete the files?
Sorry again for not getting this. I'm just utterly confused on how to safely experiment with my game and making new versions.
EDIT: Sorry @socks I just saw the bottom portion of your previous comment. I think I understand. Essentially you must always save as before major changes, then AFFECT THAT particular file. I think I get it now. Hopefully hehe.
At the start of your day open your file from the previous day. (Save1)
As the 1st thing you do, Press 'Save As' and call it whatever you want. (Save2)
Now make whatever changes you want.
If you decide to go back to Save1 it will be as you expected it to be.
To make this easier for my brain to understand, I'm going to kind of treat deleting images as a kind of SAVE in itself. So the minute I delete an image, I'm going to imagine me clicking on SAVE. To avoid problems, BEFORE I DELETE IMAGES, I'm going to SAVE AS. Thereby only affecting the newest file.
Wow is that confusing but I think I'm getting it.
Is it just me or is this a completely bonker-town way of file management?
Now you have a file called "Mr Jabbs Loves Biscuits 0027" which has 5 levels & 20 images.
Now you want to do a smaller version - 1 level & 2 images - open "Mr Jabbs Loves Biscuits 0027" and Save As "Mr Jabbs Loves Biscuits 0027 small version"
You now have a file called "Mr Jabbs Loves Biscuits 0027 small version" - do with it as you please, it will not effect any other saved files.
No, I delete images all the time, never had a problem.
Yes, that would work fine, there's no need to close the program, just Save As xyz2 and carry on working on it. Well strictly speaking this issue is only to do with assets, you can work away to your hearts content, changing your game, moving stuff around, designing levels, writing code, no real need to Save or Save As prior to undertaking major changes or otherwise experimenting with /changing your project . . . (etc etc) . . . and none of this will effect the file on your hard drive until you hit Save . . . except for adding or deleting assets . . . for example as soon as you delete an image it is instantly removed from the images folder within the file on your hard drive - instantly !!
Like I say, strictly speaking, the only 'live' bit is the way assets are handled, everything else works as standard.
But if you want to work worry free simply always work on a version one iteration on from the last version - all gone well with the new hot air balloon animation ? Good, then save HotAirBalloon005 as HotAirBalloon006 and continue working away / experimenting safe in the knowledge that if you accidentally delete all the images and screw up the code you can throw the project in the bin, open up HotAirBalloon005 and Save As HotAirBalloon006 once again. It's pretty weird, I don't know of any other software that behaves like this, but perhaps there's a good reason, hard to say.
As for "Mr. Jabbs loves biscuits"...
You just came up with the sequel. I know how *horses love to sue people
(*this fact has not been confirmed by any study)
So don't even think about suing me! Its mine damn it! MINE!!!!!
Thanks again!
He already has a wife named Joletta Jabbs.
Now, a mistress... hmmm... that could be downton abbey drama right there!
A Mrs Jabbs on the side if you will.
How scandalous!
I'll get my legal team onto this one.
Okay horse you win. You win.
This next Jabbs game is going to really go in a new direction.
Mini games that have Jabbs clearing his cell phone history from his wife
"Jabbs loves biscuits" suddenly has a new meaning
Guru Video Channel | Lost Oasis Games | FRYING BACON STUDIOS
I can see no real advantage in sending your GS files through two additional processes.
I copy the project to another drive and then zip it. I never zip the project i actually work off of. I just think of it as a kind of backup.
I'm just really always cautious and terrified of problems.