Jump to content

Which DLL files arent needed? And how to compile


Go to solution Solved by Vanilla,

Recommended Posts

hi

 

I am trying to figure out which dll files in my client arent needed to start the client.

 

spacer.png

 

I am not sure which dll files are needed and also doesnt know how to compile/upgrade them. Also I am not sure if its required to upgrade/recompile the files. Some of those dll files are from 2014 etc. Some informations would be nice!

 

thanks

Edited by Metin2 Dev
Core X - External 2 Internal
Link to comment
Share on other sites

There are many ways on how to find that one out - one simple way to do it is just use tasklist /m

It will print out your running programs and what dlls they've loaded.

 

To upgrade a dll you'd do it both in compilation (update includes etc.) and then obviously the dll. Sometimes it does work to upgrade a dll just by replacing it though you'd be careful with it since it'd lead to unexpected behavior. Of course you can't upgrade major revisions, so don't even try to upgrade the python2 dll to python3 without changing the source - but if you do, you can delete the old python27.dll and use a more recent version instead.

  • Love 1

We are the tortured.
We're not your friends.
As long as we're not visible.
We are unfixable.

Link to comment
Share on other sites

I already noticed your topic about python3 and it seems to be a mess and too much work. Also I noticed that e.g. devil make some issue with the guild icons so I will not update it. But what about the other files? Do I or the players have any disadvantage if I do not update the dll files? To be honest I dont have the knowledge to upgrade those stuff by myself but I would pay a developer to help me out if its necessary.

Link to comment
Share on other sites

  • Solution
7 minutes ago, Shenzo said:

I already noticed your topic about python3 and it seems to be a mess and too much work. Also I noticed that e.g. devil make some issue with the guild icons so I will not update it. But what about the other files? Do I or the players have any disadvantage if I do not update the dll files? To be honest I dont have the knowledge to upgrade those stuff by myself but I would pay a developer to help me out if its necessary.

devIL is open source so you can just download the source, compile it and use it in your client. You should not just replace the dll without proper source adjustments. But you can easily replace devIL includes and compile your own dll. Just use that instead, it'd work without breaking guild mark display.

And no, you do not have any disadvantages. But you can compile the dlls with more recent toolsets and thus benefit from faster dlls and also more recent versions often allow you to use more tools from the library or even have some bugfixes.

  • Love 1

We are the tortured.
We're not your friends.
As long as we're not visible.
We are unfixable.

Link to comment
Share on other sites

  • Forum Moderator

One thing I think that's important to mention is that the client doesn't need a lot of dll to run, and this number can be reduced if the libs and game are compiled and linked as static. However, your client executable will be heavier in size.

 

The second thing worth mentionning is that you will often see clients with d3d9, or d3dx8 or whatever dll regarding DirectX. Some players doesn't have the proper dll from DirectX redistribuable in their computer and the game won't start because of this, so most owners prefers to unpack the dll directly at the root of their client to avoid problems with some players that doesn't always know what's up with it, even though they are not needed for the most part of the player base.

 

  • Love 1

Gurgarath
coming soon

Link to comment
Share on other sites

7 minutes ago, Gurgarath said:

One thing I think that's important to mention is that the client doesn't need a lot of dll to run, and this number can be reduced if the libs and game are compiled and linked as static. However, your client executable will be heavier in size.

 

The second thing worth mentionning is that you will often see clients with d3d9, or d3dx8 or whatever dll regarding DirectX. Some players doesn't have the proper dll from DirectX redistribuable in their computer and the game won't start because of this, so most owners prefers to unpack the dll directly at the root of their client to avoid problems with some players that doesn't always know what's up with it, even though they are not needed for the most part of the player base.

 

 

Isn't there a similar problem with the different types of windows OS? Ive seen some private servers which added some dll files to their client which helps to run the client on older systems.

Link to comment
Share on other sites

You can pack almost any dll the client needs. It makes sure that the environment the players run your binary is the same. For example there's visual studio redistributable which depends on the vs version installed - and even then there are multiple minor versions. If you use vc 140 compiler for example players will need the 140 redistributable, otherwise they can't run your binary. To make sure the players have exactly the same dlls as you, you'd just bundle them with the client - which of course leads into more dlls located inside the client directory. But this way you can distribute your dlls and make sure the players have the same version of them thus reducing possible bugs.

As @Gurgarathsaid tho, it's always possible to link statically which means you don't have to include those dlls anymore.

  • Love 2

We are the tortured.
We're not your friends.
As long as we're not visible.
We are unfixable.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

Announcements



×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.