Jump to content
Aeomin

Thor Patcher

Recommended Posts

File Name: Thor Patcher

File Submitter: Aeomin

File Submitted: 05 Apr 2014

File Category: Client Resources

 

2009q.png

btn_donate_LG.gif

Please do not send me private message as my response would be in lowest priority.

 

2.6.4.0 UPDATE IMPORTANT NOTICE: Not only this release is beta, there are few important changes need to note of: You now may modify the icon, code sign after pack configuration data. Some configuration entries are deprecated. Additionally, as you can tell, script support is coming...

 

System Requirement: Windows 2000 or higher.

 

Features

  • Pack into single/multi grf file(s) [0x200]
  • Automatically generates GRF if not exist
  • RGZ support
  • Customizable skin & language entries
  • Background music
  • No extra dll, not even config file is needed when distribute.
  • Embed config file and resource data (images for background/buttons)
  • Custom Button
  • Remote config file
  • Self update and client update [supports multi client exe update(Up to 255)]

Tools

 

ConfigGenerator - Packs configuration and resources into the patcher or generate as a binary config pack.

ThorMaker - make patch files into thor file, there two options file & grf, when choose file, the patcher will extract file into disk, and grf simply put in GRF. [Please do not pack GRF, instead you should pack the actual data.]

CheckSum - Simply a crc32 tool, used to make sure patcher & client/game exe is up to date

========================

 

Internal Config and Remote Config:

Internal config is simply the one embed inside patcher, store basic information required to run

Remote config, is on web server (of course), it used configure extended features.

 

Click here to download this file

Share this post


Link to post
Share on other sites

Very buggy at new skins

new skins? can you elaborate on that? I'm hardening on stability for next release, but mostly on its core.

Share this post


Link to post
Share on other sites

 

Very buggy at new skins

new skins? can you elaborate on that? I'm hardening on stability for next release, but mostly on its core.

 

Check by yourself, it doesnt show Vote4points botton and it is good located in confi.ini file.

 

PD: it is not my first round, i have made a lot of thor skin.

 

PD2: I have finished using Thor_Patcher[2.6.1.66] http://herc.ws/board/files/file/123-celestial-thor-patcher-skin/

Configuration.rar

Edited by Alexandria

Share this post


Link to post
Share on other sites

Check by yourself, it doesnt show Vote4points botton and it is good located in confi.ini file.

 

PD: it is not my first round, i have made a lot of thor skin.

 

PD2: I have finished using Thor_Patcher[2.6.1.66] http://herc.ws/board/files/file/123-celestial-thor-patcher-skin/

Interesting, it shows for me. Which OS version are you using?

Edited by Aeomin

Share this post


Link to post
Share on other sites

 

Check by yourself, it doesnt show Vote4points botton and it is good located in confi.ini file.

 

PD: it is not my first round, i have made a lot of thor skin.

 

PD2: I have finished using Thor_Patcher[2.6.1.66] http://herc.ws/board/files/file/123-celestial-thor-patcher-skin/

Interesting, it shows for me. Which OS version are you using?

 

I tried to do it again and yeah, it is working good the "Vote4Points" right now.

 

But it doesnt show "Set Up Botton".

[Button:Setup]Default='images/setup1.png'OnHover='images/setup1.png'OnDown='images/setup1.png'Left=33Top=360

Can you confirm this please?

 

W7 ultimate 64bits SP1

lol

Share this post


Link to post
Share on other sites

 

 

Check by yourself, it doesnt show Vote4points botton and it is good located in confi.ini file.

 

PD: it is not my first round, i have made a lot of thor skin.

 

PD2: I have finished using Thor_Patcher[2.6.1.66] http://herc.ws/board/files/file/123-celestial-thor-patcher-skin/

Interesting, it shows for me. Which OS version are you using?

 

I tried to do it again and yeah, it is working good the "Vote4Points" right now.

 

But it doesnt show "Set Up Botton".

[Button:Setup]Default='images/setup1.png'OnHover='images/setup1.png'OnDown='images/setup1.png'Left=33Top=360

Can you confirm this please?

 

W7 ultimate 64bits SP1

lol

odd, I can still see. Can you try 2.6.4.1 and .2?

Share this post


Link to post
Share on other sites

I have noticed that I was using an old version (2.6.4.1 published in thor.aeomin.net).

The errors related about missing bottons are fixed in the version 2.6.4.5 published in rAthena.

 

I'd like to suggest some stuff:

 

1. Backgrounds.

 

It doesn't matter what kind of extension is (bmp, jpg or even png), it always loses quality in colours when thor patcher is patched.

 

2. Hexadecimal colours to RBG colours in Thor patcher.

 

I'm talking about: Progress Bar and Label Status. Most designs for thor patcher are made by graphic designer and not by developer in c++ :P I would like to suggest the way that colours are shown using RGB colours format.

 

Example:

 

BackColorStart=255,0,240

(It would show a pink colour)

 

FontColor=255,255,255

(It would show a white colour)

Share this post


Link to post
Share on other sites

I have noticed that I was using an old version (2.6.4.1 published in thor.aeomin.net).

 

The errors related about missing bottons are fixed in the version 2.6.4.5 published in rAthena.

 

I'd like to suggest some stuff:

 

1. Backgrounds.

 

It doesn't matter what kind of extension is (bmp, jpg or even png), it always loses quality in colours when thor patcher is patched.

 

2. Hexadecimal colours to RBG colours in Thor patcher.

 

I'm talking about: Progress Bar and Label Status. Most designs for thor patcher are made by graphic designer and not by developer in c++ :P I would like to suggest the way that colours are shown using RGB colours format.

 

Example:

 

BackColorStart=255,0,240

(It would show a pink colour)

 

FontColor=255,255,255

(It would show a white colour)

 

I disagree with the hex to rgb thing, hex is so fucking easy lol, just use any tool to get the color code, even photoshop itself can do it :D btw latest version is 2.6.4.6 I suggest you to follow the link file here in hercules board :)

Share this post


Link to post
Share on other sites

 

I have noticed that I was using an old version (2.6.4.1 published in thor.aeomin.net).

 

The errors related about missing bottons are fixed in the version 2.6.4.5 published in rAthena.

 

I'd like to suggest some stuff:

 

1. Backgrounds.

 

It doesn't matter what kind of extension is (bmp, jpg or even png), it always loses quality in colours when thor patcher is patched.

 

2. Hexadecimal colours to RBG colours in Thor patcher.

 

I'm talking about: Progress Bar and Label Status. Most designs for thor patcher are made by graphic designer and not by developer in c++ :P I would like to suggest the way that colours are shown using RGB colours format.

 

Example:

 

BackColorStart=255,0,240

(It would show a pink colour)

 

FontColor=255,255,255

(It would show a white colour)

 

I disagree with the hex to rgb thing, hex is so fucking easy lol, just use any tool to get the color code, even photoshop itself can do it :D btw latest version is 2.6.4.6 I suggest you to follow the link file here in hercules board :)

 

You also can use any tool to get RGB color in an easy way, even Paint of Windows has RGB options :) . It is just the fact that most of things related to web design and graphic design do not use hex color. I'm telling you this because im studying this at university.

 

My third sugestion:

 

3. Transparency.

It happened a lot of times in the version 2.6.1.66, I dont even know if it was fixed already in the newest versions but a lot of colors had transparency when the background was an bmp extention. I would suggest an official and unique transparency to #FF00FF.

Share this post


Link to post
Share on other sites

I disagree with the hex to rgb thing, hex is so fucking easy lol, just use any tool to get the color code, even photoshop itself can do it :D btw latest version is 2.6.4.6 I suggest you to follow the link file here in hercules board :)

 

 The current implementation is a mistake... Hex is fine as css uses it, but I didn't realize it wasn't in RGB.. it was in ABGR.. or was it AGRB? BGRA RBGA...geesh I don't even remember.. 'A'? hell, that's alpha, but it never worked anyways.

 

I'm planning completely change config format due in 2.7. Likely use standard format like json. In combination of script, might as well able to do something like Color:'RGB(random()%256,random()%256,random()%256)'

 

 

 

 

I have noticed that I was using an old version (2.6.4.1 published in thor.aeomin.net).

 

The errors related about missing bottons are fixed in the version 2.6.4.5 published in rAthena.

 

I'd like to suggest some stuff:

 

1. Backgrounds.

 

It doesn't matter what kind of extension is (bmp, jpg or even png), it always loses quality in colours when thor patcher is patched.

 

2. Hexadecimal colours to RBG colours in Thor patcher.

 

I'm talking about: Progress Bar and Label Status. Most designs for thor patcher are made by graphic designer and not by developer in c++ :P I would like to suggest the way that colours are shown using RGB colours format.

 

Example:

 

BackColorStart=255,0,240

(It would show a pink colour)

 

FontColor=255,255,255

(It would show a white colour)

 

I disagree with the hex to rgb thing, hex is so fucking easy lol, just use any tool to get the color code, even photoshop itself can do it :D btw latest version is 2.6.4.6 I suggest you to follow the link file here in hercules board :)

 

 

 

You also can use any tool to get RGB color in an easy way, even Paint of Windows has RGB options :) . It is just the fact that most of things related to web design and graphic design do not use hex color. I'm telling you this because im studying this at university.

 

My third sugestion:

 

3. Transparency.

It happened a lot of times in the version 2.6.1.66, I dont even know if it was fixed already in the newest versions but a lot of colors had transparency when the background was an bmp extention. I would suggest an official and unique transparency to #FF00FF.

 

 

I'll take a look at image quality, never noticed anything about it myself.

The transparent color in bmp is the pixel in top-left corner, if you set that to ff00ff, then it shall be the chosen one.

png isn't supported! I have been something with it recently, guess forgot to disable it. A lot more code refactor is needed to even start experiment with this. The performance would be.. well... suck..use opengl? maybe..

Share this post


Link to post
Share on other sites

Hey guys, here is what I have in mind with next major update. I know I have made few incompatible changes in the past, but I hope every change serves its purpose.

 

So let me introduce another incompatible change: the new old configuration file.

It is new as not compatible with old one, it is old as already widely used: JSON.

 

Why? Because I find it to be more flexible than my current proprietary solution, no to mention it.. sucks, filled with bugs that I never bothered to look at, poorly defined value type. It worked though...

Anyways, here is the draft for you all get familiarize and for me to get feedback (probably not).

Note: For those who are wonder where is cancel button go, I would like let it go literally. I mean close is cancel right?.. right??

 

without further ado:

 

{	"General": {		"Title": "Thor Patcher",		"RootURL": "http://127.0.0.1:808/",		"RemoteConfigFile": "main.ini",		"TimeOut": 0,		"StatusFile": "server.dat",		"DefaultGRF": "server.grf",		"ClientEXE": "server.exe",		"ClientParameter": "-1sak1",		"FinishOnConnectionFailure": false,		"HideProgressBarWhenFinish": true,		"BGM": {			"File": "",			"Loop": "",			"Volume": 20,			"Directory": ""		}	},	"GUI": {		"MainWindow": {			"Style": "none",			"Width": "",			"Height": "",			"HandleDrag": true,			"Background": "images/bg.bmp",			"FadeOnDrag": false,			"Components": {				"progressBar": {					"Type": "ProgressBar",					"Width": 342,					"Height": 10,					"Left": 23,					"Top": 486				},				"statusLabel": {					"Type": "Label",					"AutoResize": false,					"Width": 369,					"Height": "",					"Left": 15,					"Top": 498,					"Alignment": "center",					"FontColor": 0,					"FontName": "",					"FontSize": "",					"Text": ""				},				"news": {					"Type": "NoticeBox",					"Width": 347,					"Height": 250,					"Left": 21,					"Top": 217,					"URL": "http://google.com"				},				"startButton": {					"Type": "Button",					"Left": 383,					"Top": 211,					"Images": {						"Default": "images/start1.png",						"Hover": "images/start2.png",						"HoldDown": "images/start3.png"					}				},				"exitButton": {					"Type": "Button",					"Left": 383,					"Top": 244,					"Images": {						"Default": "images/Exit1.png",						"Hover": "images/Exit2.png",						"HoldDown": "images/Exit3.png"					}				}			}		}	}}

Share this post


Link to post
Share on other sites

that is really nice! btw why there is a exit button still? xD or is it mean to be the X?

Well, it doesn't have standard windows title buttons, obviously need something on that. They can make a button look like X if they wish.

Maybe I should rename it to closeButton.. yea that shall do.

 

I haven't decided on declare those events yet though.

Share this post


Link to post
Share on other sites

 

I disagree with the hex to rgb thing, hex is so fucking easy lol, just use any tool to get the color code, even photoshop itself can do it :D btw latest version is 2.6.4.6 I suggest you to follow the link file here in hercules board :)

 

 The current implementation is a mistake... Hex is fine as css uses it, but I didn't realize it wasn't in RGB.. it was in ABGR.. or was it AGRB? BGRA RBGA...geesh I don't even remember.. 'A'? hell, that's alpha, but it never worked anyways.

 

I'm planning completely change config format due in 2.7. Likely use standard format like json. In combination of script, might as well able to do something like Color:'RGB(random()%256,random()%256,random()%256)'

 

I have noticed that I was using an old version (2.6.4.1 published in thor.aeomin.net).

 

The errors related about missing bottons are fixed in the version 2.6.4.5 published in rAthena.

 

I'd like to suggest some stuff:

 

1. Backgrounds.

 

It doesn't matter what kind of extension is (bmp, jpg or even png), it always loses quality in colours when thor patcher is patched.

 

2. Hexadecimal colours to RBG colours in Thor patcher.

 

I'm talking about: Progress Bar and Label Status. Most designs for thor patcher are made by graphic designer and not by developer in c++ :P I would like to suggest the way that colours are shown using RGB colours format.

 

Example:

 

BackColorStart=255,0,240

(It would show a pink colour)

 

FontColor=255,255,255

(It would show a white colour)

 

I disagree with the hex to rgb thing, hex is so fucking easy lol, just use any tool to get the color code, even photoshop itself can do it :D btw latest version is 2.6.4.6 I suggest you to follow the link file here in hercules board :)

 

 

You also can use any tool to get RGB color in an easy way, even Paint of Windows has RGB options :) . It is just the fact that most of things related to web design and graphic design do not use hex color. I'm telling you this because im studying this at university.

 

My third sugestion:

 

3. Transparency.

It happened a lot of times in the version 2.6.1.66, I dont even know if it was fixed already in the newest versions but a lot of colors had transparency when the background was an bmp extention. I would suggest an official and unique transparency to #FF00FF.

The transparent color in bmp is the pixel in top-left corner, if you set that to ff00ff, then it shall be the chosen one.

 

 

Well, it explains why I had frustration times with transparency xD

 

Anyway, I would like to recomend you again to have an unique color (#FF00FF), because if you are a noob like me and you make white border in the top corner, you will have many problems with all the white color related in the background and also the #FF00FF is the common transparency in the RO world.

Share this post


Link to post
Share on other sites

Well, it explains why I had frustration times with transparency xD

 

Anyway, I would like to recomend you again to have an unique color (#FF00FF), because if you are a noob like me and you make white border in the top corner, you will have many problems with all the white color related in the background and also the #FF00FF is the common transparency in the RO world.

Didn't RO picks color too? Many spr are using color other than that. I'm planning to support 8-bit png though, that should help with this and reduce file size.

Share this post


Link to post
Share on other sites

After all the headache I went through installing the old Thor Patcher, you suddenly release this?!

Will try this one out. Hopefully this will be much easier to use. :D

Share this post


Link to post
Share on other sites

After all the headache I went through installing the old Thor Patcher, you suddenly release this?!

 

Will try this one out. Hopefully this will be much easier to use. :D

Oh, are you talking about the new configuration format? That's not implemented yet.

Share this post


Link to post
Share on other sites

Any way to make custom button to also recognize parameter?

 

[button:Setup]

Mode=2
Action='Setup.exe'
 
It will launch setup.exe, but I'm looking for Ragnarok Replay button function:

[button:Replay]

Mode=2
Action='patched-ragexe.exe -Replay'

 

If you launch this in command prompt / shortcut, it will work. But Thor patcher seems didn't recognize this parameter format.

 

2nd suggestion, currently we have a way to check a hash of the patcher and game client itself. If it doesn't match, it will redownload from the patch server. Would you mind to add this feature to the target grf as well (if not match, will redownload whole grf in .thor format)? I don't mind the additional cpu processing time in case of a big grf.

Edited by AnyThing

Share this post


Link to post
Share on other sites

Any way to make custom button to also recognize parameter?

 

[button:Setup]

Mode=2
Action='Setup.exe'
 
It will launch setup.exe, but I'm looking for Ragnarok Replay button function:

[button:Replay]

Mode=2
Action='patched-ragexe.exe -Replay'

 

If you launch this in command prompt / shortcut, it will work. But Thor patcher seems didn't recognize this parameter format.

 

2nd suggestion, currently we have a way to check a hash of the patcher and game client itself. If it doesn't match, it will redownload from the patch server. Would you mind to add this feature to the target grf as well (if not match, will redownload whole grf in .thor format)? I don't mind the additional cpu processing time in case of a big grf.

 

Unfortunately if that doesn't work then it's not supported. You might work around by change to open URL mode as the code doesn't really open browser.

Sorry, client hash has been deprecated in last builds, patcher hashing likely after. They are NOT the solution to protect your client! In fact, there won't be any guarantee the GRF would be the same checksum even if you download whole thing in one piece.

Share this post


Link to post
Share on other sites

Executing diffed ragexe.exe with -Replay parameters will make diffed ragexe.exe enter a Replay playing mode. I just now tried Open URL, and it didn't do anything. "File" mode is working, but currently it only supports executing ragexe.exe without any parameters in it.

 

Can you make something like this in config.ini:

ClientEXE='ragexe.exe'
ClientParameter='-1rag1'

ClientParameter2='-Replay'

^

It will make something like this:

Start button: ragexe.exe -1rag1

Replay button: ragexe.exe -Replay

 

Client hash and patcher hashing is a great feature, why would you want to deprecate it? I'm not using it for security. Some people like to use it because it can update the patcher and client to latest version without any patch numbering.

 

For example, if I change something in the ThorPatcher.exe (button design, etc) they may be able to redownload the new patcher without any hassle. The same also for client hash.

 

Thanks for the reply, really appreciate it :)

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.