Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Silkroad Online > SRO Coding Corner
You last visited: Today at 04:02

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[WIP] Silkroad's GFXFileManager API

Discussion on [WIP] Silkroad's GFXFileManager API within the SRO Coding Corner forum part of the Silkroad Online category.

Reply
 
Old 06/25/2012, 00:05   #16
Chat Killer In Duty


 
PortalDark's Avatar
 
elite*gold: 5
Join Date: May 2008
Posts: 16,397
Received Thanks: 6,509
Quote:
Originally Posted by Nezekan View Post
Everything is possible, but I wonder why you would want to do that. The files need to be loaded in as quickly as possible, and compression algorithms are certainly not built for speed, the client isn't that big anyway, the only reason you might want it to be smaller is for distribution but you'd not need this project for that
lets say for smaller distribution
yes, you got a point there: speed issues
PortalDark is online now  
Old 06/25/2012, 11:26   #17
 
kevin_owner's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 1,484
Received Thanks: 809
Quote:
Originally Posted by PortalDark View Post
lets say for smaller distribution
yes, you got a point there: speed issues
if you want to make the size of the client smaller you could remove all the unused stuff in the client. There is actually A LOT of data which can be removed without consequences.

Someone told me that about 30% of the .nvm files are old or probably never even used. These navmesh files doesn't have a related minimap image and are completely empty if you spawn in those ingame. But still they are 100 mb in size of not more.

And then there are all these ingame 3d objects who knows how many aren't even used.

Also for distribution it doesn't matter if you compress the pk2 files or not. If you pack to a .rar archive it'll be arround 1.5 gb. So if you compress the pk2 files you won't gain much once you create the final archive for distribution.

Owh and if you want to make the .pk2 files smaller once installed you could use the defrag tool in drew's 5 in 1 pk tools bundle
kevin_owner is offline  
Old 06/25/2012, 17:03   #18
Chat Killer In Duty


 
PortalDark's Avatar
 
elite*gold: 5
Join Date: May 2008
Posts: 16,397
Received Thanks: 6,509
Quote:
Originally Posted by kevin_owner View Post
if you want to make the size of the client smaller you could remove all the unused stuff in the client. There is actually A LOT of data which can be removed without consequences.

Someone told me that about 30% of the .nvm files are old or probably never even used. These navmesh files doesn't have a related minimap image and are completely empty if you spawn in those ingame. But still they are 100 mb in size of not more.

And then there are all these ingame 3d objects who knows how many aren't even used.

Also for distribution it doesn't matter if you compress the pk2 files or not. If you pack to a .rar archive it'll be arround 1.5 gb. So if you compress the pk2 files you won't gain much once you create the final archive for distribution.

Owh and if you want to make the .pk2 files smaller once installed you could use the defrag tool in drew's 5 in 1 pk tools bundle

kgb packer can compress 1gb into 10-15mb of data(i tested with other MMO client, it takes around of 10h to compress it but to unpack, its pretty fast)
nut thats not the point
to clean the client of unused stuff, you need patience, time and lots of reading hours
PortalDark is online now  
Old 06/26/2012, 01:13   #19

 
elite*gold: 260
Join Date: Aug 2008
Posts: 560
Received Thanks: 3,780
Sorry about the delay in my replying in this thread. I was going to make another post soon with something different for this forum, as I did post something on RZ already, but I have been really busy lately.

Quote:
Originally Posted by kevin_owner View Post
About the new formats instead of using the .pk2 files. Can't you just call the GFXFileManager's method's to get the files you want? and if they decide to change the file format you just copy the new GFXFilemanager?
If you implement a new format and don't account for that, then yes, someone could just use the new DLL's API to easily obtain the files.

Making a new file format to try and protect files to prevent people from getting access to them is really complex, as you need to change GFXFileManager.dll, sro_client.exe, Silkroad.exe, as well as implement another custom security DLL to enforce the changes.

There's a lot of possibilities though, but it'd be another tl;dr post to talk about that in depth.

Quote:
Originally Posted by PortalDark View Post
pushedx
with this kind of API, could it be used to compress even more the client?(lets say using a compressing method like 7z)
Yes, you can implement LZMA compression for the data files, but you have to take into account the extra processing overhead required at runtime. There are trade-offs for everything, but it is certainly doable. As part of another post I'll do, I'll cover this a little more. For as many files as there are on Silkroad, zlib would probably be better as a persistent file format if you intended on leaving the files compressed due to a lot less processing overhead.

Quote:
Originally Posted by PortalDark View Post
kgb packer can compress 1gb into 10-15mb of data(i tested with other MMO client, it takes around of 10h to compress it but to unpack, its pretty fast)
nut thats not the point
to clean the client of unused stuff, you need patience, time and lots of reading hours
On my RZ thread, which I can't link here, jMerlin and myself talked about a cool idea using HTTP processing. The idea would be that you distribute a client with the minimal amount of files, then allow the client to simply download the files it needs as they are loaded. What would result would be a minimal distributed client, strongly compressed files that are sent over HTTP (which allows for cloud hosting / static content caching), and the ability for people to try out new servers without having to download all the extra useless stuff that isn't even used. There would be certain technical issues to overcome, but it is something that would be worth looking into.
pushedx is offline  
Thanks
3 Users
Old 06/29/2012, 18:22   #20
 
elite*gold: 0
Join Date: May 2009
Posts: 18
Received Thanks: 6
nice keep it up

PS: i dont suggest putting every thing in only one cpp file.. it makes everything hard to understand :S
giniyat202 is offline  
Old 07/02/2012, 21:19   #21
 
Tyră's Avatar
 
elite*gold: 0
Join Date: Jul 2012
Posts: 45
Received Thanks: 8
I wish I'm sure that's failing, but nice: D
Tyră is offline  
Old 07/11/2012, 08:38   #22


 
Yo123's Avatar
 
elite*gold: 41
Join Date: Nov 2007
Posts: 3,385
Received Thanks: 2,700
were you able to fix the white textures yet? i remember sro client having extra references for textures.. was doing the same some time ago for satisfaction during the time it lasted.
Yo123 is offline  
Old 07/12/2012, 05:48   #23

 
elite*gold: 260
Join Date: Aug 2008
Posts: 560
Received Thanks: 3,780
Quote:
Originally Posted by Yo123 View Post
were you able to fix the white textures yet? i remember sro client having extra references for textures.. was doing the same some time ago for satisfaction during the time it lasted.
Yes! I haven't updated this thread yet or had the time to implement some of the other stuff I wanted to like a compression examples, but basically it's all done. I have another thread posted on a different forum where I thought I'd get more testers so if you search for "GFXFileManager-0.0.1", you'll find the thread.

The problem was with file path characters. I had to cleanup some of the client requested paths to be compatible with the way I was accessing the files. In addition, I fixed a few other minor bugs in the code, but so far from the testing done, it seems pretty solid.

There are certain performance issues with files that are unpacked like this, depending on your computer specs, but it's not a huge deal for development.

I'm still contemplating if it's "worth it" though. I've been following the current state of sro pservers, and I'm not really inclined to spend a ton of time on this stuff really. Most of the creative ideas I have for Silkroad now rely on web based interactions, which seems pointless at the moment with all of the web attacks going on. Maybe when things settle down some, I'll come up with some more PoC projects.
pushedx is offline  
Thanks
6 Users
Reply


Similar Threads Similar Threads
[REQ]GFXFileManager.dll
10/23/2012 - SRO Private Server - 6 Replies
Hey, someone pls upload the ecsro's "GFXFileManager.dll" why i deleted that :(:p
GFXFileManager.dll
03/03/2012 - SRO Private Server - 1 Replies
I want to play the private server Adult online 80 cap. I download the whole shit, I extract. But when I want to start the it always gives the error GFXFileManager.dll How the fuck do I solve this? I already have downloaded a free registry repair software but it doesn't work in any way. I 'repaired' my whole system by the software. I'm getting tired of this shit. Anybody who knows a solution? o.O
GFXfilemanager.dll for esro
11/15/2011 - SRO Private Server - 0 Replies
pls send the file 4shared.com - free file sharing and storage end give me link
Pk2 Editor - There is a problem accessing the GFXFileManager.dll
06/24/2010 - SRO Private Server - 4 Replies
Hi, I am trying to have a bot and when i turn on pk2 editor there is an error (this which i have written in title). Can someone help me and tell WTF is going on :P ?? I have Windows 7 if someone asks.
My Silkroad's Wallpaper 4 you! Really goods ;)
11/01/2009 - Silkroad Online - 23 Replies
Well sometimes i use the SREmu to take beatifull pictures in HD of Silkroad so i decided to post some pictures that i took and i would like that you guys rate it from 1 to 10 1= SUCK 10= Perfect =) PICTURE #1 http://i354.photobucket.com/albums/r418/MaxiCavs/ CityEntrance.jpg Click here to see it in HD



All times are GMT +1. The time now is 04:03.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.