Jump to content


Photo

{Md} - Automatic Updater


  • Please log in to reply
99 replies to this topic

#1 mme

mme

    MME

  • GMC Member
  • 1007 posts

Posted 10 December 2010 - 10:21 PM

gmc_header.png


What does this do?
Well this is an auto updater for your game/app. It allows to automatically update your games/apps. You can use this even if you don't have Gamemaker Registered.
After seeing how people where having trouble with uploading their own 'ini' files I have decided to re-write the updater and tightly integrate the new updater with the '{md} cloud' service.

mdu_download.png


How to use:
 

  • Import the 'scr_mdu.gml' into your gamemaker game and follow instructions in the script
  • Generate your API key using the {md} cloud service.
  • Place mdu.exe in the same directory as the game
  • Done

shot1.png

So how do I update my game?
Just login to your own personal account on the {md} cloud service and manage your game files.

get_api.png

Customizing the look of the updater
Just in case you want to change the look of the updater you can create your own PNG (164x72) image and place them in the same directory as mdu.exe (see script for more information)

Examples
For those users out there with older versions of Gamemaker examples can be found here:
Gamemaker 5: Example+MDU
Gamemaker 7: Example+MDU

Why is this one different to the other updaters out there?
This 'updater' uses the '{md} cloud services' to allow you to manage your own game and files easily instead of using complicated version numbers and all those other things you need to keep track off. By using 'the cloud' upgrades can be done and new features added easily without you having to re-integrate it into your game after you have released it.

The {md} cloud service also allows you to upload your files directly into the {md} cloud service or you can host them yourself.

Improvement for the {md} Updater
We are always looking at ways to improve the {md} updater. Should you have any ideas please reply or PM we are happy to have a look what can be improved.

News

29/03/13 - Moved to a new CDN provider, speeds increased for {md} cloud downloads
09/06/12 - Minor code fixes
02/01/12 - You can now rename packages
30/12/11 - Upgraded servers to increase speed. Fixed a small issue with a server configuration
13/12/10 - Added Basic Stats, fixed some date/time bugs
12/12/10 - Added support for direct file uploads and fixed some bugs
10/12/10 - Release

Known Bugs
- None

FAQ (Frequently Asked Questions)

Q: Can this be used for commercial products / games / apps?
A: Yes feel free to use this in any commercial projects, however please sent me a link from the finished game.

Q: When I open the game maker file it says its not a game maker file.
A: Thats because its a script, you need to import the script.

Q: Does this work with Gamemaker 5.x & 6.x is well?
A: Yes it doesn't matter what version you have, Lite or PRO, you can also download some examples.

Q: I get an Error 21
A: Make sure you execute the script from your game, running mdu.exe by itself wont work.

Q: Does this work with FTP?
A: No it doesn't work with FTP

Q: How do I put updated files into another folder
A: in the "Local File" field add "yourdirectory/yourfile.ext"

Q: How do I log in to the {md} cloud service
A: After signing up, you can log in using your email and password right here

Q: Can I use this with Gamemaker for MAC?
A: The script should work however the updater uses some DLL's which wont work on MAC

 

Q: I am using GM:Studio and getting some errors / bugs

A: Gamemaker Studio is not currently fully supported, however here are a few tips.

 

 

MDU crashes in Game Maker: Studio are related to a bug that crashes the runner if parameter_string(0) is used. This should be fixed pretty soon, hopefully.

 

In the meantime, if you want to use MDU in Game Maker: Studio again, open the scr_mdu script and replace all instances of parameter_string(0) with parameter_string(1) and all instances of parameter_string(1) with parameter_string(2).

 



Keywords:
game,update,updater,updating,automatic,easy,md,mme,unregistered,free,simple,patcher,patch,mdu,user friendly,web interface,stats,statistics,ftp,cloud,commercial,ini


Edited by mme, 05 May 2013 - 05:06 AM.

  • 8

#2 jon sploder

jon sploder

    GMC Member

  • GMC Member
  • 859 posts

Posted 10 December 2010 - 11:56 PM

Great to see this up again MME!


ERROR in
action number 1
of Alarm Event for alarm 0
for object obj_upd:

Cannot execute C:\DOCUME~1\*\LOCALS~1\Temp\gm_ttt_75558\example.exe

In the error log. Is that meant to happen?

EDIT: Very professional website, but it has a few bugs. For instance the green scroll select bar went out of alignment for me.

I think that it would be very handy if we could upload files directly to your site - I couldn't find anywhere to do so (only the site links. So we'd have to upload it to another site with a direct download - are there any free ones with direct download support?)
I'm assuming that this downloads the entire package. If so, would it be able to replace the game file which downloaded it?

Keep up the good work.

Edited by jon sploder, 11 December 2010 - 12:21 AM.

  • 0

#3 Artaex Media

Artaex Media

    Artaex Media

  • GMC Member
  • 1528 posts
  • Version:GM8

Posted 11 December 2010 - 12:01 AM

Great Job ;)

Currently testing it out with my new project :D
  • 0

#4 j0nteh

j0nteh

    GMC Member

  • GMC Member
  • 81 posts
  • Version:Unknown

Posted 11 December 2010 - 04:50 AM

This is absolutely fantastic!
Not a problem, and easy to understand.

Oh and i really appreciate that you took the time to PM me after my problems on the old engine :) .
  • 0

#5 mme

mme

    MME

  • GMC Member
  • 1007 posts

Posted 12 December 2010 - 06:08 PM

Great Job ;)

Currently testing it out with my new project :D


Thanks, If you have any questions let me know


This is absolutely fantastic!
Not a problem, and easy to understand.

Oh and i really appreciate that you took the time to PM me after my problems on the old engine :) .


Glad this fixes your problem


I think that it would be very handy if we could upload files directly to your site


When I first started to develop the web interface for the updater I did think about doing this and after reading your post I decided to include it. The reason why i did not include it in the first place was the bandwidth and disk space issue. However I have now added a CDN (Content Distribution Network) into the {md} cloud service which should be able to handle all the files and bandwidth.

- mme

Edited by mme, 12 December 2010 - 06:14 PM.

  • 0

#6 sargunster

sargunster

    GMC Member

  • New Member
  • 449 posts

Posted 14 December 2010 - 10:16 PM

When I try to upload, I get the following message:

Failed to Authenticate the CDN Server
Please contact MDU Support regarding CDN ERROR "-1"

Also, how do I get the API key?

And, is there a way to add files in bulk?

Edited by sargunster, 14 December 2010 - 10:20 PM.

  • 0

#7 mme

mme

    MME

  • GMC Member
  • 1007 posts

Posted 23 December 2010 - 12:41 PM

When I try to upload, I get the following message:

Failed to Authenticate the CDN Server
Please contact MDU Support regarding CDN ERROR "-1"


Sorry we had some problems with the CDN Server Node however it has now been fixed and should work.

Also, how do I get the API key?


Once you add files and publish the package you will see the API key displayed at the bottom of the files page in the package.

And, is there a way to add files in bulk?


No not at this moment sorry, I might add this later when demand for it increases.

Hope that helps ^_^

- MD (mme)
  • 0

#8 jon sploder

jon sploder

    GMC Member

  • GMC Member
  • 859 posts

Posted 24 December 2010 - 07:30 AM

Great, but for the editing, could you please include a 'upload' bar? That'd definitely be handy. Ie, I want to edit a file, but there is no 'upload' box so I can reupload the same named file, but with more changes internally. Or is it designed to delete that upload and then reupload an individual file in that package?
  • 0

#9 mme

mme

    MME

  • GMC Member
  • 1007 posts

Posted 24 December 2010 - 10:16 AM

Great, but for the editing, could you please include a 'upload' bar? That'd definitely be handy. Ie, I want to edit a file, but there is no 'upload' box so I can reupload the same named file, but with more changes internally. Or is it designed to delete that upload and then reupload an individual file in that package?


The package will remain the same after changing the files, just delete the file then make a new one.

Hope that helps ^_^

- MD (mme)
  • 0

#10 Texic

Texic

    GMC Member

  • GMC Member
  • 9 posts
  • Version:GM8

Posted 29 December 2010 - 05:16 AM

It looks really good, but i have a question, does it download the whole file when updating or can it detect the changes to download?? (the second would be like a dream)
  • 0

#11 mme

mme

    MME

  • GMC Member
  • 1007 posts

Posted 29 December 2010 - 09:21 AM

It looks really good, but i have a question, does it download the whole file when updating or can it detect the changes to download?? (the second would be like a dream)


It only detects the changes using hash values and downloads those, however with GM exe's its against the EULA to decompile or disassemble the exe and it has a hash check the it runs so I am unable to just patch the missing parts or replace so it will have to download the whole .exe.

Using external files makes this easier on both you and the user.
  • 0

#12 Yamm

Yamm

    GMC Member

  • New Member
  • 4 posts

Posted 02 January 2011 - 08:31 AM

First, I apologize for my bad English.

I want to install the Updater to the game once a new version is tested. The test will run automatically after each game starts. Unfortunately, there is now such that it performs the test, it closes the game and the player ends up in the updater, even if there is no update.

If I understand correctly, MDU works only on a button and not an automatic query after the start of GM-file. Can I change this somehow?
  • 0

#13 dhtikna

dhtikna

    GMC Member

  • GMC Member
  • 497 posts

Posted 04 January 2011 - 03:10 PM

I love this app. You guys deserve money! I would not mind ads to help you out.

When I tried to update it gives me an error:

-starting download

ERROR 99

I just changed the API to my own package which had a EXE file uploaded through your cloud server. Yes, right now it is published. I did change the API code.
  • 0

#14 mme

mme

    MME

  • GMC Member
  • 1007 posts

Posted 13 January 2011 - 11:37 PM

First, I apologize for my bad English.

I want to install the Updater to the game once a new version is tested. The test will run automatically after each game starts. Unfortunately, there is now such that it performs the test, it closes the game and the player ends up in the updater, even if there is no update.

If I understand correctly, MDU works only on a button and not an automatic query after the start of GM-file. Can I change this somehow?


Hi Yamm,

'mdu.exe' checks if there are any new updates that's why it has to be launched first. As shown in the example you can either use a button or have it automatically launch the updater.

Hope that helps ^_^


I love this app. You guys deserve money! I would not mind ads to help you out.

When I tried to update it gives me an error:

-starting download

ERROR 99

I just changed the API to my own package which had a EXE file uploaded through your cloud server. Yes, right now it is published. I did change the API code.


Hi,

Please PM me your API Key so I can investigate further.

Thanks,

MD (mme)
  • 0

#15 FireProof Games

FireProof Games

    GMC Member

  • GMC Member
  • 107 posts
  • Version:GM8

Posted 14 January 2011 - 03:21 AM

Hi, Quick question. I just got this:

COMPILATION ERROR in Script: scr_mdu
Error in code at line 1:
   #define scr_mdu
  ^
at position 1: Unexpected symbol.

What is wrong? :(


Nevermind, fixed it. :)

Works Excellently, btw!

Edited by FireProof Games, 14 January 2011 - 03:26 AM.

  • 0

#16 Artaex Media

Artaex Media

    Artaex Media

  • GMC Member
  • 1528 posts
  • Version:GM8

Posted 14 January 2011 - 04:57 PM

#define scr_mdu


#define is used to define the script's name. For example when importing a script. Otherwise, you have to remove that code ;)
  • 0

#17 MudbudGoldfish

MudbudGoldfish

    Indie Game Dev Team

  • New Member
  • 494 posts
  • Version:GM8

Posted 17 January 2011 - 10:14 PM

WOW! Just what I was looking for!!! THANK YOUPosted ImagePosted ImagePosted ImagePosted ImagePosted Image
  • 0

#18 Nikc-Nack

Nikc-Nack

    GMC Member

  • GMC Member
  • 2140 posts

Posted 20 January 2011 - 11:16 PM

I just created an account and I love the site. And I think the program will work well.
I just have one question, when I'm updating my game, will I need to put a file up with the same name as the last?


EDIT:
Nevermind!
I'm using it, and I'm luvin it!

Edited by Nikc-Nack, 21 January 2011 - 12:28 AM.

  • 0

#19 Loaf

Loaf

    Just loafing around

  • GMC Member
  • 1339 posts
  • Version:GM:Studio

Posted 28 January 2011 - 09:50 PM

I have a question.
I am publishing my project with this updater. I created a mock package so I could get the API key. Is the key permanently assigned to that packaged, even if unpublished? Because I find it odd it has to be published for my API key to be available to me.
  • 0

#20 mme

mme

    MME

  • GMC Member
  • 1007 posts

Posted 29 January 2011 - 11:07 PM

I have a question.
I am publishing my project with this updater. I created a mock package so I could get the API key. Is the key permanently assigned to that packaged, even if unpublished? Because I find it odd it has to be published for my API key to be available to me.


Once you create a package the API Key is generated and is permanently assigned to that package even when not published. However when a package is not published the user will get the error 'Invalid API Key' when attempting to update.

Hope that answers your question ^_^

- MD (mme)
  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users