• This is a read only backup of the old Emudevs forum. If you want to have anything removed, please message me on Discord: KittyKaev

[C#][Source] Cataclysm Launcher

Tommy

Founder
I am not the creator

That much is obvious. However, you don't have to be the creator to fix crashes or errors.

and why no one can post a finished method...

Well, we're the only ones replying to each other so I doubt OP even comes on ED anymore. I didn't write it either so I'm not sure what the process on that event does (installs patch?...). Did you set the patchDownloadURL? Perhaps something on the lines of that is causing the crash? Either way, I'm not familiar with this download method since I handle mine differently.
 

Tommy

Founder
Alright. I looked through everything and found out exactly what you are supposed to do. I read the OP's first post and it told me exactly what to do to make patch downloading work.

As Mitch describes in his post, you're supposed to download Distribute Patches.exe and use that to input:

  • Load Patches File = The .txt file that the patch details will be saved to, e.g. patches.txt
  • Patch File = The file of the patch that will be downloaded
  • MD5 Hash = Automatically filled in based on "Patch File"
  • Patch Url = Url to the "Patch File"

And then generate the patches.txt (or .txt) file, upload it to your webserver and then upload your patch.MPQ file on your webserver.

Here's what I did:

Edited Launcher.exe.config patchDownloadURL setting and set the value to the patches.txt file:

Code:
            <setting name="patchDownloadURL" serializeAs="String">
                <value>http://emudevs.com/patches.txt</value>
            </setting>

Then I added my patch information into Distribute_Patches.exe and then uploaded everything via FTP.
EKct9iQ.png



And it works just fine:

l0Gx4Ng.png


OCQYY7O.png


No issue at all with the code. This is just a did not read moment. :p
 

Shoxxo

Emulation Addict
ok thank you :)

But not working for me... I use ddos Protected webhosting with Layer 7 Protect Screen like Cloudflare enter screen.

3P8ZjkL.jpg
 
Last edited:

Tommy

Founder
ok thank you :)

But not working for me... I use ddos Protected webhosting with Layer 7 Protect Screen like Cloudflare enter screen.

3P8ZjkL.jpg

Then you still did it wrong if it isn't working. Can you paste the contents of patches.txt? Did you read what I wrote thoroughly? It works just fine for me.
 

Recycle

Enthusiast
While this is quite an old thread, I believe it's the right place to post.

While the launcher works fine, upon downloading(on many users, except me for whatever reason) Microsoft Essentials and/or Chrome blocks it as an "virus". Why is that, and how would I go about of getting rid of it?

Other than that, this is exactly what I've been looking for ;_;
 

Tommy

Founder
While this is quite an old thread, I believe it's the right place to post.

While the launcher works fine, upon downloading(on many users, except me for whatever reason) Microsoft Essentials and/or Chrome blocks it as an "virus". Why is that, and how would I go about of getting rid of it?

Other than that, this is exactly what I've been looking for ;_;

Could be the way the downloader works or is coded. I honestly think there's a much user-friendly way in patch downloading than how he has it in this launcher.
 

Recycle

Enthusiast
Could be the way the downloader works or is coded. I honestly think there's a much user-friendly way in patch downloading than how he has it in this launcher.

Exactly my thoughts. I spent probably 5 hours figuring in-game patching system, but that ended up in a fail. I'm mostly curious as to WHY it's doing it because whenever I plan to distribute it, it's going to be a little annoying. Maybe a .rar will suffice, and let people do a virustotal scan themselves to see if it's infected or not.

Ah well. Thanks regardless, Tommy.
 

Tommy

Founder
Exactly my thoughts. I spent probably 5 hours figuring in-game patching system, but that ended up in a fail. I'm mostly curious as to WHY it's doing it because whenever I plan to distribute it, it's going to be a little annoying. Maybe a .rar will suffice, and let people do a virustotal scan themselves to see if it's infected or not.

Ah well. Thanks regardless, Tommy.

You can use the launcher I made for EmuDevs server if you want. I coded a patch system myself that I think is somewhat decent. I commented important parts of the source code so you know what does what.

I'd hate to take the glory away from the actual launcher in this thread, but it seems a lot of people are having so many issues with the patch system implemented.

Download: http://dl.emudevs.com/EDLauncher.rar

gKheZ4K.png


Enjoy.
 

Byrddawg

Enthusiast
You can use the launcher I made for EmuDevs server if you want. I coded a patch system myself that I think is somewhat decent. I commented important parts of the source code so you know what does what.

I'd hate to take the glory away from the actual launcher in this thread, but it seems a lot of people are having so many issues with the patch system implemented.

Download: http://dl.emudevs.com/EDLauncher.rar

Enjoy.

Cheers mate. Thanks!:clap2:
 
Last edited:

Realmlist

Emulation Addict
Hey Tommy, thank you so much for your launcher code. It helps a lot!

I have one question however; My server requires a custom wow.exe to be used with the patches. How can I make it so that the launcher also downloads the .exe?

EDIT: It also doen't seem to display the download progress percentage when downloading the patch for the first time. IT does display the download percentage when I release an update.
 
Last edited:

Tommy

Founder
Hey Tommy, thank you so much for your launcher code. It helps a lot!

I have one question however; My server requires a custom wow.exe to be used with the patches. How can I make it so that the launcher also downloads the .exe?

EDIT: It also doen't seem to display the download progress percentage when downloading the patch for the first time. IT does display the download percentage when I release an update.

Heh, what's funny is the original source code of EDLauncher did exactly that; however, when I edited it for this particular thread I forgot to backup the original source. :angry:
 

Recycle

Enthusiast
Heh, what's funny is the original source code of EDLauncher did exactly that; however, when I edited it for this particular thread I forgot to backup the original source. :angry:
Does it support multi-file downloading just by adding a new line on the xml or do I need to modify the src for that? Installing VS back atm so I can't test :D
 

Tommy

Founder
Does it support multi-file downloading just by adding a new line on the xml or do I need to modify the src for that? Installing VS back atm so I can't test :D

Nope, you'd have to create a new node for that. I guess if I had more than 2 files that players have to download I would've made it more dynamic/better.
 

Realmlist

Emulation Addict
I fixed it.

6Ka4cdT.png


I am now going to try to fix the exe downloading. I'll update here. :)


EDIT: It works now. It's hacky, but it works.

Code:
private const string exeData = @"Wow.exe";
private const string exeDataStr = "Wow.exe";
private const string exePath = "http://example.com/update/Wow.exe";
Code:
WebClient webClient2 = new WebClient();
Uri uri2 = new Uri(exePath);
webClient2.DownloadFile(uri2, Path.GetFileName(uri2.LocalPath));

This is quite a feat for me though. I've never coded in C# before. You did really well documentating the code, Tommy. :)
 
Last edited:

Tommy

Founder
I fixed it.

6Ka4cdT.png


I am now going to try to fix the exe downloading. I'll update here. :)


EDIT: It works now. It's hacky, but it works.

Code:
private const string exeData = @"Wow.exe";
private const string exeDataStr = "Wow.exe";
private const string exePath = "http://example.com/update/Wow.exe";
Code:
WebClient webClient2 = new WebClient();
Uri uri2 = new Uri(exePath);
webClient2.DownloadFile(uri2, Path.GetFileName(uri2.LocalPath));

This is quite a feat for me though. I've never coded in C# before. You did really well documentating the code, Tommy. :)

Thanks and great to hear it is going as planned.
 

CDAGaming

Emulation Addict
Need Assistance

Hi There!

I work for a wow server community, & We've semi-Modified the Launcher mentioned in this thread to suit our needs(Backgrounds,Buttons,etc) but I have an everlasting issue i need help with.

Basiccly, The Online / Offline Status would stay at Offline even when the server is online, This is really inconvienient, & If you can help me out, I'd greatly appreciate it

I've redownloaded the original as the code for the status from that to our modified one is unchanged / the same

Thank you in Advance,
CDAGaming

Skype: live:tonygstack

Edit:pinging Tommy, as he is being very active on this thread
 

Tommy

Founder
Hi There!

I work for a wow server community, & We've semi-Modified the Launcher mentioned in this thread to suit our needs(Backgrounds,Buttons,etc) but I have an everlasting issue i need help with.

Basiccly, The Online / Offline Status would stay at Offline even when the server is online, This is really inconvienient, & If you can help me out, I'd greatly appreciate it

I've redownloaded the original as the code for the status from that to our modified one is unchanged / the same

Thank you in Advance,
CDAGaming

Skype: live:tonygstack

Edit:pinging Tommy, as he is being very active on this thread

Well I looked through Mitch's project again to see why this might not be working for you. As far as I see Mitch basically uses a TCP connection that checks to see if the authserver is up via realmlist (server ip w/e) & auth port. My guess is that you probably didn't set the server ip and port in the Settings.settings file located in "CataLauncher\Properties".

I'm going to bed now so I hope I helped.
 

CDAGaming

Emulation Addict
Reply

Well I looked through Mitch's project again to see why this might not be working for you. As far as I see Mitch basically uses a TCP connection that checks to see if the authserver is up via realmlist (server ip w/e) & auth port. My guess is that you probably didn't set the server ip and port in the Settings.settings file located in "CataLauncher\Properties".

I'm going to bed now so I hope I helped.

Thanks for the Quick Reply!

I saw that the server string said the name of the server & Not the IP, I Fixed it but it still doesn't work

Is there i chance I can send you the modified source code to see if there is anything else you can suggest to me?

Thanks Also in advance, Tommy :D
 

Attachments

  • 2016-07-30 (1).jpg
    2016-07-30 (1).jpg
    19.8 KB · Views: 33
  • 2016-07-30 (2).jpg
    2016-07-30 (2).jpg
    23.5 KB · Views: 33
Last edited:
Top