• Hello [name]! Thanks for joining the GMC. Before making any posts in the Tech Support forum, can we suggest you read the forum rules? These are simple guidelines that we ask you to follow so that you can get the best help possible for your issue.

Question - Code Writing a patch & how to check for updates (if on steam)

Owly

Member
So, a bunch of TOTALLY novice queries here!

1) How do you write a patch for your game? Since it's all bundled in one exe... how do you fix a faulty code line? How would you apply a patch?

2) Assuming your game is on steam: how to make the game check for updates whenever you launch it? Would you have to send steam each new version?

3) Assuming you can't write a patch and have to download a more recent version... would it delete your saved game files? Would the old ones still be compatible with the more recent version?

Thanks to anyone who can help!
 
Last edited:

obscene

Member
You will simply be uploading your project to Steam when you update. Their uploader will only upload the files that have changed. You'll set version live and Steam will automatically update your players. Nothing to it.

The only complication with save files is you might want to save anything like object indexes as strings (object names) in case you add new objects and the index values change.
 

Owly

Member
You will simply be uploading your project to Steam when you update. Their uploader will only upload the files that have changed. You'll set version live and Steam will automatically update your players. Nothing to it.

The only complication with save files is you might want to save anything like object indexes as strings (object names) in case you add new objects and the index values change.
Thanks, you're addressing my second point. So basically I upload the newer installer, and steam makes everyone download it and install it, am I correct?
 

obscene

Member
No. There is no installation process. The next time the user logs into Steam, they'll automatically see a loading bar instead of the Play button. As only the new stuff is downloaded, it might be like that for 30 seconds, and then the Play button reappears.

I may not have specified before, but in Steam you won't be uploading an installer. You'll create a package with all your files in it and Steam just copies it onto their computer and runs the executable. It's much more efficient.
 

Owly

Member
Thanks Obcene for your input. Since game maker is 'sandboxed' everything is put in one big file, correct? Meaning that when I "update" my game, I'll have to send Steam the new big file, right?

And as for the first time anyone "installs" the game -- are you sure there is no need to send Steam an installer? Just the exe and the other files Game Maker generates?

Again thanks for your help. Just trying to wrap my head around this.
 

Cpaz

Member
Yes, since game maker bundles everything into a single exe or zip, updates will simply replace those files. This is because ideally, any saved information (save files, config files, ext) are saved elsewhere and overriding any game files shouldn't cause any issues.
 

obscene

Member
Thanks Obcene for your input. Since game maker is 'sandboxed' everything is put in one big file, correct? Meaning that when I "update" my game, I'll have to send Steam the new big file, right?

And as for the first time anyone "installs" the game -- are you sure there is no need to send Steam an installer? Just the exe and the other files Game Maker generates?

Again thanks for your help. Just trying to wrap my head around this.
It's not one big file though. One executable, then all your texture pages, audiogroups, streaming audio files, included files, etc. This here is a screenshot of exactly what is in my Steam SDK folder. This is what Steam uploads from me and what it downloads to the user, nothing less and nothing more. No installer. Steam is the installer. I don't even think they would accept an installer.

Image23.jpg
 

Owly

Member
Yes, since game maker bundles everything into a single exe or zip, updates will simply replace those files. This is because ideally, any saved information (save files, config files, ext) are saved elsewhere and overriding any game files shouldn't cause any issues.
Ok, this inspires confidence in me, cause it sounds painless enough. Thanks!
 

Owly

Member
It's not one big file though. One executable, then all your texture pages, audiogroups, streaming audio files, included files, etc. This here is a screenshot of exactly what is in my Steam SDK folder. This is what Steam uploads from me and what it downloads to the user, nothing less and nothing more. No installer. Steam is the installer. I don't even think they would accept an installer.

View attachment 27468
So I'm obviously doing something wrong. But what? Look at the picture. I created an executable. Only two files, the executable, and .win file. Even though I have sounds and sprites and such... how come you have so many files and I just these 2? I warned you these were novice questions. (also you have a steam.api file... but I'll ask about how to create that another time)
 

Attachments

Last edited:

obscene

Member
Edit...

OK. I think you are using the default audiogroup and nothing else? It appears the default group is part of the executable. All of my ogg files are because those are streaming audio files and not compressed, but you apparently aren't doing that. So what you have there is probably essentially the same thing.
 
Last edited:

Owly

Member
Edit...

OK. I think you are using the default audiogroup and nothing else? It appears the default group is part of the executable. All of my ogg files are because those are streaming audio files and not compressed, but you apparently aren't doing that. So what you have there is probably essentially the same thing.
I have the most recent version of Game Maker, I think it's called Studio 2. Yeah, I'm using the default groups. Is that why it's like that? And if I were to create new audio groups and new texture groups then I'd see multiple files? If that's the case, then I'm guessing I'll just have to create different groups. Hope it's not tricky! Thanks for all your input, much appreciated! I feel like less of a novice now.
 

obscene

Member
Yes. I'm working on a smaller project now and noticed I have 3 audiogroups but only see 2 audiogroup files when I build, so I'm assuming the default is part of the exe since it's loaded at game start anyway. The texture groups actually are part of the exe too, I mispoke when I said they were separate. Everything else you see in my image is streaming audio and included files. So what you have there is 100% ready for Steam.
 
Top