YSE - Patch System

Dr.Yami

。◕‿◕。
Developer
Joined
Mar 5, 2012
Messages
1,004
Reaction score
758
First Language
Vietnamese
Primarily Uses
Other
Yami Engine Ace - Patch System




Last Update: 2012.03.17





Introduction

This script will help you make patches for your games in order to fix bugs for Encrypted games. Patch file is a single small file, players can copy it to game's folder.

Features

- Patch Maps and Database.

- Security Method for anti fake patches.

How to Use

- Copy this script and YSE - Basic Module into your project.

- To call Patch Maker, use custom script: YSE.patch_start

Script

- Requirement: YSE - Basic Module

- Core Script: YSE - Patch System

Credit and Thanks

Yami World - Terms of Use
 
Last edited by a moderator:

AstoXx

Subconscious Punmaster
Member
Joined
Mar 14, 2012
Messages
468
Reaction score
76
First Language
Logic
Primarily Uses
Ah! Great to see you've brought the Patch System over here, Yami. One of the best and most useful scripts I've ever seen. I'd wholeheartedly recommend this as a "staple" utility script to use, seeing as so many projects go through updates and revisions, and this will make the entire process so much smoother. I really hope you manage to get to allowing the database patching, too.
 

Dr.Yami

。◕‿◕。
Developer
Joined
Mar 5, 2012
Messages
1,004
Reaction score
758
First Language
Vietnamese
Primarily Uses
Other
Update 2012.03.17:

- Released Full version.

- Have Database patching.

- Have a button Patch All.

- Have a hash checking.

Remember to download Basic Module again (Last update: 2012.03.17)
 

Angius

Villager
Member
Joined
Apr 3, 2012
Messages
19
Reaction score
2
First Language
Polish
Primarily Uses
Little problem... I've changed everything properly, I've changed also "rgss2a" to my own format "add", and... Well... If I make a installer, and unpack my project on desktop, it works fine with every patch. But if I send my project, and then a patch to anyone, it will always show Fake Patch Alert... I think it can be because of compressing installer into *.rar, but...

I've tried also unpacking compressed game on my desktop, and then making an installator in install maker. And it doesn't work even on my computer...
 

Dr.Yami

。◕‿◕。
Developer
Joined
Mar 5, 2012
Messages
1,004
Reaction score
758
First Language
Vietnamese
Primarily Uses
Other
Little problem... I've changed everything properly, I've changed also "rgss2a" to my own format "add", and... Well... If I make a installer, and unpack my project on desktop, it works fine with every patch. But if I send my project, and then a patch to anyone, it will always show Fake Patch Alert... I think it can be because of compressing installer into *.rar, but...

I've tried also unpacking compressed game on my desktop, and then making an installator in install maker. And it doesn't work even on my computer...
I have just changed a little in fake-patch detection. You can turn off this function too. Sorry about that inconvenient.
 

Angius

Villager
Member
Joined
Apr 3, 2012
Messages
19
Reaction score
2
First Language
Polish
Primarily Uses
Ok, thanks, I'll try :)
 

Oriceles

Veteran
Veteran
Joined
Apr 4, 2012
Messages
384
Reaction score
71
First Language
English
Primarily Uses
N/A
can I use this to make game expansions?
 
Last edited by a moderator:

Ras101

Veteran
Veteran
Joined
Jan 6, 2014
Messages
44
Reaction score
6
First Language
English
I'm sorry for reviving old threads or anything -- but I was wondering if this works with old save files? I want players to be able to start from where they left off but still see the changes.
 

Engr. Adiktuzmiko

Chemical Engineer, Game Developer, Using BlinkBoy'
Veteran
Joined
May 15, 2012
Messages
14,682
Reaction score
3,004
First Language
Tagalog
Primarily Uses
RMVXA
That I think is based on how you set-up the save files... plus this script should have been inside the game already, else your players will need to redownload the whole game which has this script before they can do patches, and if you changed anything on save files during that, then most probably it won't...
 

Ras101

Veteran
Veteran
Joined
Jan 6, 2014
Messages
44
Reaction score
6
First Language
English
Oh, what do you mean by "how I set-up my save files"? >.> I haven't really changed anything with the saves except using Yanfly's save engine, which to my very poor programming knowledge, only changes the interface ...
 

Engr. Adiktuzmiko

Chemical Engineer, Game Developer, Using BlinkBoy'
Veteran
Joined
May 15, 2012
Messages
14,682
Reaction score
3,004
First Language
Tagalog
Primarily Uses
RMVXA
Then I guess almost everything will work fine, but maybe actors already in your party won't... since actor data is saved in the save file, while the others are not...


basically, normally:


When loading a saved file:


Actor Data -> loaded from the save file


Other database data -> loaded from the database


from what I've seen, the script redirects the reading from the database so it should work on other database entries but probably not on actors...
 
Last edited by a moderator:

deathsia

Pegisister
Veteran
Joined
Feb 26, 2014
Messages
651
Reaction score
55
First Language
English
Primarily Uses
Dumb question: If my patch includes any new physical files such as new custom tileset(not in stock RTP), a new music track, sound, or anything of that nature, would I need to simply include that file in the patch folder and it would "auto-import" it?
 
Joined
Nov 2, 2013
Messages
3
Reaction score
0
First Language
English
Primarily Uses
Would there be any way to add a button to the start screen that runs this script? I feel as though it would make patching my game a lot easier :)
 

??????

Diabolical Codemaster
Veteran
Joined
May 11, 2012
Messages
6,548
Reaction score
3,297
First Language
Binary
Primarily Uses
RMMZ
Was just wondering, is there any real difference between your normal version and the lite version of these scripts? I've had a look over them and cant really notice anything - except a huge difference in the amount of code :p

Edit:

Your script inspired me to see if I could 'patch' scripts... I've literally just started some basic tests, but it would seem that it can be done. :)
Here is some code if you wanna have a peek. :D

script = %Q( module UT def self.method p "Sucessfull" end end ) script1 = Marshal.dump( script ) script2 = Marshal.load( script1 ) args = [ $RGSS_SCRIPTS.size-3 , [rand(999999),"MyNewPatchedScript",script1,script2] ] $RGSS_SCRIPTS.insert(*args) $RGSS_SCRIPTS.compact.each_with_index do |script, index| p "#{index} = #{script.first}, #{script[1]}, #{script.size}" endThen call UT.method from somewhere, I done it after the title screen had processed, which obviously printed 'Successful' to the console. Obviously, it aint much, but its proof that scripts can also be patched. Thats very exciting for me, especially with the online crap im doing right now. :D
So yea... Your script has inspired me :D
 
Last edited by a moderator:

deathsia

Pegisister
Veteran
Joined
Feb 26, 2014
Messages
651
Reaction score
55
First Language
English
Primarily Uses
Was just wondering, is there any real difference between your normal version and the lite version of these scripts? I've had a look over them and cant really notice anything - except a huge difference in the amount of code :p

Edit:

Your script inspired me to see if I could 'patch' scripts... I've literally just started some basic tests, but it would seem that it can be done. :)

Here is some code if you wanna have a peek. :D

script = %Q( module UT def self.method p "Sucessfull" end end ) script1 = Marshal.dump( script ) script2 = Marshal.load( script1 ) args = [ $RGSS_SCRIPTS.size-3 , [rand(999999),"MyNewPatchedScript",script1,script2] ] $RGSS_SCRIPTS.insert(*args) $RGSS_SCRIPTS.compact.each_with_index do |script, index| p "#{index} = #{script.first}, #{script[1]}, #{script.size}" endThen call UT.method from somewhere, I done it after the title screen had processed, which obviously printed 'Successful' to the console. Obviously, it aint much, but its proof that scripts can also be patched. Thats very exciting for me, especially with the online crap im doing right now. :D
So yea... Your script has inspired me :D
Is this script stable? as in does it work as intended?
 

??????

Diabolical Codemaster
Veteran
Joined
May 11, 2012
Messages
6,548
Reaction score
3,297
First Language
Binary
Primarily Uses
RMMZ
Well yea it does, but there are some issues. I am currently looking deeper into it. :)

I have a much ore complex version of it now, which works fully (its used in PiNG and autoupdates and patches the scripts perfectly) but that versino wont be released :D
 

Chaos17

Dreamer
Veteran
Joined
Mar 13, 2012
Messages
1,311
Reaction score
485
First Language
French
Well yea it does, but there are some issues. I am currently looking deeper into it. :)

I have a much ore complex version of it now, which works fully (its used in PiNG and autoupdates and patches the scripts perfectly) but that versino wont be released :D
So you're posting this just to brag about it and let us feel envious ?

Ok, you win.
 

??????

Diabolical Codemaster
Veteran
Joined
May 11, 2012
Messages
6,548
Reaction score
3,297
First Language
Binary
Primarily Uses
RMMZ
Lol yea, a little bit ^_^... Probably best not to derail Yamis thread cause of a little script ;)
 

deathsia

Pegisister
Veteran
Joined
Feb 26, 2014
Messages
651
Reaction score
55
First Language
English
Primarily Uses
Lol yea, a little bit ^_^... Probably best not to derail Yamis thread cause of a little script ;)
well considering I don't know what a UT.method is i'm SOL
 

Latest Threads

Latest Posts

Latest Profile Posts


1st iteration on castle interior in Tiled.
I've started up Pillars of Eternity. It's interesting how the game does a "select choice" cutscene using still image art for dramatic flair. I wonder if that might work for my RPGMaker project.
The self-righteous indignation of family when you expect them to pay back money you've leant to them never ceases to amaze me.
Gamedev for relaxing? yes or no?
I've been having a rough couple of months and as such let down some friends of mine in the RPG Maker community. I still need time to get back to my normal self, but it's nice to be back, to read articles, and to design again (albeit at a slow pace). Hope to give updates on Kid Crescent soon.

Forum statistics

Threads
107,735
Messages
1,031,745
Members
139,871
Latest member
jitomaynez
Top