Jump to content

Patcher: Ergo Patcher


Recommended Posts


  • Group:  Members
  • Topic Count:  13
  • Topics Per Day:  0.00
  • Content Count:  60
  • Reputation:   33
  • Joined:  02/17/15
  • Last Seen:  

Ergo Patcher


Ergo Patcher Guide

Setup the Patcher

Extract the patcher.

Open the Config File (/ErgoPatcher/System/Config/PatcherConfig.XML) with Notepad++ or any other text Editor.

PatcherConfig.thumb.PNG.f8809da198dbebaaf96bc056ce160297.PNG

Edit the Black parts. (Value Settings)

 

Required are:

<HTTPLink_Patcher_List> - The PatchList.XML file should be directly reachable. (On your website/server). It requires the complete patch to this file. "http:" is also required.

<HTTPLink_Patches_Directory> - The remote folder where your patches will be downloadable.

<RagnarokEXEName> Is required for the "Start" Button. Your client belongs into the /RO/ Folder.

<MetroColor> The Patcher uses MahAppsMetro for thr window design. Possible colors without any further changes in this application are: “Red”, “Green”, “Blue”, “Purple”, “Orange”, “Lime”, “Emerald”, “Teal”, “Cyan”, “Cobalt”, “Indigo”, “Violet”, “Pink”, “Magenta”, “Crimson”, “Amber”, “Yellow”, “Brown”, “Olive”, “Steel”, “Mauve”, “Taupe”, “Sienna”.

A tip: Keep the standard config around. So that you know where a number, a string or an bool (true/false) is requested.

 

The rest is self explaining I guess.

If there is a problem setting up the patcher feel free to ask. (PM me or ask for me in discord)

 

Here is a Video for Starters:

ErgoPatcher_Starter_Guide.mp4

 

Currently Working on:

Crypted-Config:

[IIIIIIIIII] ~ 0% Done.

Hash-Checking Files:

[IIIIIIIIII] ~ 0% Done.


 

  • Upvote 4
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  8
  • Topics Per Day:  0.00
  • Content Count:  1137
  • Reputation:   290
  • Joined:  04/29/13
  • Last Seen:  

Suggestion

Adding rss news feed and online player count make this patcher complete And Instead of login,map,char servers status just servers status makes it look better 

+1

  • Upvote 1
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  13
  • Topics Per Day:  0.00
  • Content Count:  60
  • Reputation:   33
  • Joined:  02/17/15
  • Last Seen:  

As soon as I find some spare time I will make your suggetions happen.

On 7/10/2017 at 1:50 AM, Cyro said:

Suggestion

Adding rss news feed and online player count make this patcher complete And Instead of login,map,char servers status just servers status makes it look better 

+1

There is a small Bug in the Patch Generator. The PatchList.XML created contains a /OUTPUT/ in all Filenames. Bevore using your PatchList.XML delete the /OUTPUT/ part in your Filenames. This will be fixed soon.

  • Upvote 2
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  6
  • Topics Per Day:  0.00
  • Content Count:  118
  • Reputation:   57
  • Joined:  11/24/16
  • Last Seen:  

keep update it :D thank for your work +1

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  13
  • Topics Per Day:  0.00
  • Content Count:  60
  • Reputation:   33
  • Joined:  02/17/15
  • Last Seen:  

 

Would you want a function to check individual files for hashes?

Example:

data.grft - Hash: 123456789

Now a user manipulated the grf file: Hash would be a new one (4123456789).

 

The patcher would inform the server owner about the manipulation (account name of the manipulative) by e-mail or directly into an log file.

  • Upvote 3
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  6
  • Topics Per Day:  0.00
  • Content Count:  118
  • Reputation:   57
  • Joined:  11/24/16
  • Last Seen:  

pretty nice idea! +1

On 7/11/2017 at 2:43 PM, Vincentore said:

 

Would you want a function to check individual files for hashes?

Example:

data.grft - Hash: 123456789

Now a user manipulated the grf file: Hash would be a new one (4123456789).

 

The patcher would inform the server owner about the manipulation (account name of the manipulative) by e-mail or directly into an log file.

 

  • Upvote 1
Link to comment
Share on other sites

  • 1 year later...

  • Group:  Members
  • Topic Count:  76
  • Topics Per Day:  0.02
  • Content Count:  455
  • Reputation:   57
  • Joined:  08/28/12
  • Last Seen:  

Is it still working?

Link to comment
Share on other sites

  • 1 year later...

  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  3
  • Reputation:   1
  • Joined:  12/01/18
  • Last Seen:  

@VincentoreHelp Resultado de imagem para Patcher SSO Login rathena

System.InvalidOperationException: Erro no documento XML (0, 0). ---> System.Xml.XmlException: Elemento raiz inexistente.
   em System.Xml.XmlTextReaderImpl.Throw(Exception e)
   em System.Xml.XmlTextReaderImpl.ParseDocumentContent()
   em System.Xml.XmlTextReaderImpl.Read()
   em System.Xml.XmlTextReader.Read()
   em System.Xml.XmlReader.MoveToContent()
   em Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderPatchList.Read4_PatchList()
   --- Fim do rastreamento de pilha de exceções internas ---
   em System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)
   em System.Xml.Serialization.XmlSerializer.Deserialize(TextReader textReader)
   em Patcher.Services.PatchesReader.ReadConfigXML()
   em Patcher.ViewModels.PatchProzessViewModel.client_DownloadFileCompleted(Object sender, AsyncCompletedEventArgs e)
   em System.Net.WebClient.OnDownloadFileCompleted(AsyncCompletedEventArgs e)
   em System.Net.WebClient.DownloadFileOperationCompleted(Object arg)
   em System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   em System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   em System.Windows.Threading.DispatcherOperation.InvokeImpl()
   em System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
   em MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj)
   em System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   em System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   em System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   em MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   em System.Windows.Threading.DispatcherOperation.Invoke()
   em System.Windows.Threading.Dispatcher.ProcessQueue()
   em System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   em MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   em MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   em System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   em System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   em System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   em MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   em MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   em System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   em System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   em System.Windows.Application.RunDispatcher(Object ignore)
   em System.Windows.Application.RunInternal(Window window)
   em System.Windows.Application.Run(Window window)
   em System.Windows.Application.Run()
   em Patcher.App.Main()

Link to comment
Share on other sites

  • 7 months later...

  • Group:  Members
  • Topic Count:  15
  • Topics Per Day:  0.01
  • Content Count:  69
  • Reputation:   79
  • Joined:  02/20/20
  • Last Seen:  

Hi !

Is it possible to have a version that works with 20180620 exe ? The game appears when I click on Start but then shuts down right away

Link to comment
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.   Paste as plain text instead

  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.

×
×
  • Create New...