Jump to content

EterPack Archiver - PackMakerLite


Recommended Posts

  • Honorable Member

M2 Download Center

This is the hidden content, please
( Internal 2.9 )

This is the hidden content, please
( Last Release )

This is an archiver I've created, and it looks quite stable so far.

The PackMakerLite (PML) supports type 0-1-2-3-4-5-6.

As a summarize, the metin2 types are handled like this:

  • Type 0 - only storage (no encryption/compression; it can be read fully from the .epk)
  • Type 1 - compressed - lzo(file)
  • Type 2 - compressed and encrypted - xtea(lzo(file))
  • Type 3 - encrypted with Panama - you must save an .iv key server-side in the panama/ folder. (content readable only after auth phase) The official used it only for patch2.
  • Type 4 - encrypted with a mix of ciphers (cshybridcrypt) - you must save a .dat key server-side in the package/ folder. (content readable only after auth phase) Practically all the metin2_patch files.
  • Type 5 - like type 4, but a server-side map/<map_name> is also provided. (content readable only after accessing the <map_name> map as a player) The official used it only for the catacomb data.
  • Type 6 - compressed and encrypted - xtea(snappy(file))

 

Usage:

Spoiler

image.png

 

 

Its settings (xtea keys, extensions, pack types to use) can be changed inside PackMakerLite.json:

Spoiler

085806WrdE6yM.png

updated:

image.png

 

You can actually integrate the tool in the menu context (running the .reg files) for packing folders and unpacking .eix files:

Spoiler

085806BxEU3fl.png085806Z588o1Q.png

 

Remove "--nolog" from the .bat files if you want to see the logs again.

Command-line options get overwritten by JSON config options.

Last but not least: since the client handles all the filenames in lowercase, this tools automatically converts them as well.


Thanks also to:

  • blackdragonx61 / Mali - type4-5 extract code / type 6 compress code
  • metin2team - type6 extract code

By martysama0134
 

Edited by Metin2 Dev International
Core X - External 2 Internal
  • Metin2 Dev 602
  • kekw 6
  • Eyes 15
  • Facepalm 1
  • Dislove 8
  • Angry 8
  • Not Good 1
  • Sad 5
  • Cry 2
  • Smile Tear 4
  • Think 15
  • Confused 6
  • Scream 10
  • Lmao 5
  • Good 281
  • Love 56
  • Love 549
Link to comment
Share on other sites

  • Forum Moderator

Users:

Wmj8gab.jpg

 

 

Edited by Metin2 Dev
Core X - External 2 Internal
  • Metin2 Dev 3
  • Lmao 1
  • Love 13
Link to comment
Share on other sites

  • Silver
2 hours ago, martysama0134 said:

Type 5 - like type 4, but a server-side map/<map_name> is also provided. (content readable only after accessing the <map_name> map as a player) The official used it only for the catacomb data.

 

ahahahahaha, thats really funny. 

 

Thanks for great tool it's so usefull.

  • Metin2 Dev 2
Link to comment
Share on other sites

  • 4 weeks later...
  • Honorable Member

UPDATED

  • v1.3 added install.bat for installing everything (must be runned as admin)
  • v1.4 added "force_filename_lowercase" config field
  • v1.5 fixed packing of non all-lower-named packs
  • v1.6 fixed extraction of 0kb files
  • v1.7 fixed extraction of 2-len packs names
Edited by martysama0134
  • Love 7
Link to comment
Share on other sites

  • Bronze

49315301.jpg

https://metin2.download/picture/D7S5e96o86GP5ufpXoxVy5IEdLjtcoli/.png -> Very nice idea. Congratulations!

So this is useless for people who use FOXFS or people who removed panama & package & hybridcrypt from their source ?

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

  • 3 weeks later...
  • 1 month later...
  • 3 months later...
  • 2 months later...
  • 4 months later...
  • Honorable Member
3 hours ago, shotyourself said:

@martysama0134 last version working perfectly also! thanks a lot buddy! ❤️

 

 

I forgot to mention I updated it:

 

v2.0 added "ignore_full_name" config field, and allowed writing comments inside the .json setting file

kpwTJ9N.png

 

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

  • 2 weeks later...
  • 2 months later...
  • Honorable Member

In the last update, i've implemented the multithreading in the archive. It's currently extremely fast.
For packing, what it took 180s now is done in 5s.

For unpacking, what it took 180s now is done in 30s if the folders are missing, otherwise 6s.

i.e. I also improved the original single-thread algorithm so it's faster than the older versions.

 

I noticed 2 weird things though:

1) On parallel mode, some prints are skipped, so if you need to debug something, disable both --nolog and --parallel.

2) Redirecting the output to file (>.txt) on parallel mode slowers the process as if it were single thread back again.

 

FULL CHANGELOG
v1.3 added install.bat for installing everything (must be runned as admin)
v1.4 added "force_filename_lowercase" config field
v1.5 fixed packing of non all-lower-named packs
v1.6 fixed extraction of 0kb files
v1.7 fixed extraction of 2-len packs names
v1.8 fixed packing/unpacking files/folders with spaces in filenames (issue present only in the .bats)
v1.9 added type6 and header mcsp decryption
v2.0 added "ignore_full_name" config field, and allowed writing comments inside the .json setting file
v2.1 added "eter_magic_mcoz","eter_magic_epkd","eter_magic_mcsp" fields
v2.2 added "parallel" in .json, and --parallel as argument for multithreading packing/unpacking
v2.3 added global .json load from %userprofile% if the local ones are missing
v2.4 fixed type6 unpacking in parallel mode
v2.5 improved parallel speed when packing by 20x
 

  • Metin2 Dev 1
  • Good 2
  • Love 15
Link to comment
Share on other sites

  • 7 months later...
  • 2 weeks later...


×
×
  • 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.