1. Are you planning to upload your awesome tool to Hive? Please review the rules here.
    July 9, 2018: The rules for the Tool Section have been revised. Please be sure to read the revisions.
    Dismiss Notice
  2. Updated Resource Submission Rules: All model & skin resource submissions must now include an in-game screenshot. This is to help speed up the moderation process and to show how the model and/or texture looks like from the in-game camera.
    Dismiss Notice
  3. DID YOU KNOW - That you can unlock new rank icons by posting on the forums or winning contests? Click here to customize your rank or read our User Rank Policy to see a list of ranks that you can unlock. Have you won a contest and still havn't received your rank award? Then please contact the administration.
    Dismiss Notice
  4. The Lich King demands your service! We've reached the 19th edition of the Icon Contest. Come along and make some chilling servants for the one true king.
    Dismiss Notice
  5. The 4th SFX Contest has started. Be sure to participate and have a fun factor in it.
    Dismiss Notice
  6. The poll for the 21st Terraining Contest is LIVE. Be sure to check out the entries and vote for one.
    Dismiss Notice
  7. The results are out! Check them out.
    Dismiss Notice
  8. Don’t forget to sign up for the Hive Cup. There’s a 555 EUR prize pool. Sign up now!
    Dismiss Notice
  9. The Hive Workshop Cup contest results have been announced! See the maps that'll be featured in the Hive Workshop Cup tournament!
    Dismiss Notice
  10. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

W3x2Lni v2.5.3

Submitted by actboy168
This bundle is marked as approved. It works and satisfies the submission rules.
W3x2Lni is a wc3 map management tool. It helps you to manage your maps when developing or publishing.We defined 3 formats for a wc3 map, and w3x2Lni allows you to convert your maps amongst these 3 formats which are `Lni`, `Obj` and `Slk`.

> Lni
`Lni` is a VCS (like git, svn) friendly format. It looks like a directory. Most binary files in w3x will be converted into plain text files (yes! human-readable) by w3x2Lni which will also organize and categorize these text files.

> Obj
`Obj` is a wc3-readable and WE-readable format. If you want to open your map with WE, convert your map into this format.

> Slk
`Slk` is only readable by wc3 and should be used for final distribution. W3x2Lni enables multiple optimization for this format, including:

* Objects converted to slk
* Removed unreferenced objects
* Removed WE-only files
* Inlined WTS strings
* Compressed mdx
* Removed comments and unncessary white spaces in the script
* obfuscated variable and function name

W3x2Lni comes with war3 1.27.1 English data files. But it may not meet everyone's needs, you can use `w2l mpq <war3_path>` to extract data files.


For more information see the documentation.


W3x2Lni is a open source project.We welcome any pull request, e.g. improving the English text or writing English documents.
Contents

W3x2Lni v2.5.3 (Binary)

Reviews
eejin
The tool works as one would expect. The UI is nice and to the point. Only thing I am missing is a back button wen you have chosen a conversion mode. You also cannot scroll horizontally when viewing the log when converting to Lni. [ATTACH] I am...
  1. Unryze

    Unryze

    Joined:
    Apr 14, 2016
    Messages:
    68
    Resources:
    0
    Resources:
    0
    Sent you link in PM.
     
  2. juvian

    juvian

    Joined:
    Sep 25, 2017
    Messages:
    47
    Resources:
    0
    Resources:
    0
    So if I don't want to convert to slk because some abilities have over 4 levels deep, the only optimization available is inlining wts file? The only option I see is read slk, but I guess it does wts inlining
     
  3. Unryze

    Unryze

    Joined:
    Apr 14, 2016
    Messages:
    68
    Resources:
    0
    Resources:
    0
    You can have spells that have 50+ levels and slk optimization will still work as it does. Only initial level is actually the reason for lag, the rest are used solely as pointers.

    It does WTS inlining only if any string exceed normal length.

    All in all, just use slk optimization, it works as it should :)
     
  4. juvian

    juvian

    Joined:
    Sep 25, 2017
    Messages:
    47
    Resources:
    0
    Resources:
    0
    Well, even when I dont check any optimization on slk, map crashes on load when trying it. Would a warning cause it? Have 0 errors but have this warning:
    Id [BUst] is conflicted between different objects - [Ability]HP증가 800 --> [Buff]Sleep (Stun)
     
  5. Unryze

    Unryze

    Joined:
    Apr 14, 2016
    Messages:
    68
    Resources:
    0
    Resources:
    0
    Yes, it can. Also this is a very strange type of warning, it is the first time I see something like this. Basically it does not like that one buff is used for different purposes or just because two different spells use same buff, which is kinda strange.
     
  6. juvian

    juvian

    Joined:
    Sep 25, 2017
    Messages:
    47
    Resources:
    0
    Resources:
    0
    Well, I converted to lni and checked all .ini files in table directory and can only see BUst mentioned once in ability.ini and once in item.ini (as one of the item abilities). Also, when trying to go from lni to either object or slk, throws error, attached log.

    On another note, just clicking directly on generate obj map, it does optimize quite a bit but when I then try to use that map on 5.0wc3mapoptimizer it gives me map script file not found error. Also can't use on Wc3SLKOpt either.
     

    Attached Files:

  7. sumneko

    sumneko

    Joined:
    May 31, 2018
    Messages:
    77
    Resources:
    0
    Resources:
    0
    It means `[Ability]HP증가 800` and `[Buff]Sleep (Stun)` use the same Id [BUst]. But I don't think it cause your map crashes, please show me your map, thank you.
     
  8. juvian

    juvian

    Joined:
    Sep 25, 2017
    Messages:
    47
    Resources:
    0
    Resources:
    0
    Sent in pm
     
  9. sumneko

    sumneko

    Joined:
    May 31, 2018
    Messages:
    77
    Resources:
    0
    Resources:
    0
    It seems your map has many special usage, I'll try to support them.
     
  10. actboy168

    actboy168

    Joined:
    May 1, 2012
    Messages:
    95
    Resources:
    1
    Tools:
    1
    Resources:
    1
    Lni will only contain the objects of your map, does not contain Warcraft 3 built-in objects. It's exactly that BUst is a Warcraft 3 built-in object.
     
  11. sumneko

    sumneko

    Joined:
    May 31, 2018
    Messages:
    77
    Resources:
    0
    Resources:
    0
    We will fix it in next version. For now, you could change or delete the problematic ids (maybe by Lni) to avoid crashes. Problematic ids are `.A0O`, `.B02`, `.e06`, and `.n02`. As you see, the first char of them is `.`.
     
  12. Unryze

    Unryze

    Joined:
    Apr 14, 2016
    Messages:
    68
    Resources:
    0
    Resources:
    0
    Oh, that actually makes more sense, than what I've thought and suggested, sorry for assuming wrong. It would be real nice to support any types of ids, although I don't think IDs like this are good, but to each his own. Thank you for paying attention! :)
     
  13. juvian

    juvian

    Joined:
    Sep 25, 2017
    Messages:
    47
    Resources:
    0
    Resources:
    0
    I see, thanks for checking. Looking forward to next version ^^
     
  14. juvian

    juvian

    Joined:
    Sep 25, 2017
    Messages:
    47
    Resources:
    0
    Resources:
    0
    I am just the translator of the map, so not much I can do about them D:
     
  15. sumneko

    sumneko

    Joined:
    May 31, 2018
    Messages:
    77
    Resources:
    0
    Resources:
    0
    Version 2.4.0 has released. It has fixed your problem.
     
  16. sumneko

    sumneko

    Joined:
    May 31, 2018
    Messages:
    77
    Resources:
    0
    Resources:
    0
    Version 2.4.0 has released. It has fixed your problem.
     
  17. sumneko

    sumneko

    Joined:
    May 31, 2018
    Messages:
    77
    Resources:
    0
    Resources:
    0
    Version 2.4.0 has released. It has fixed your problem.
     
  18. juvian

    juvian

    Joined:
    Sep 25, 2017
    Messages:
    47
    Resources:
    0
    Resources:
    0
    Impressive, map loading has gone from 40s with using 2 optimizers together to just 25s using yours ^^. Will require more testing, but everything seems to be working fine
     
  19. WaterKnight

    WaterKnight

    Joined:
    Aug 18, 2009
    Messages:
    4,033
    Resources:
    5
    Maps:
    1
    Tutorials:
    4
    Resources:
    5
    Seeing that the Doodads.slk causes problems, another optimization would be to just kick game-non-relevant attributes like name, pathing map, rotation, casts shadow. The static and intangible nature of doodads makes them possess a lot of those. They should not cause a spike ingame either, as each of them is placed at map init. If you are funny, you could even try to simulate doodads with some other wc3 entity.
     
    Last edited: Jul 17, 2018
  20. actboy168

    actboy168

    Joined:
    May 1, 2012
    Messages:
    95
    Resources:
    1
    Tools:
    1
    Resources:
    1
    The attributes that are not needed in the game have been deleted in slk mode. If you find out what w2l is missing, please let me know.