1. Choose your means of doom in the 17th Mini Mapping Contest Poll.
    Dismiss Notice
  2. A slave to two rhythms, the 22nd Terraining Contest is here.
    Dismiss Notice
  3. The heavens smile on the old faithful. The 16th Techtree Contest has begun.
    Dismiss Notice
  4. The die is cast - the 6th Melee Mapping Contest results have been announced. Onward to the Hive Cup!
    Dismiss Notice
  5. The glory of the 20th Icon Contest is yours for the taking!
    Dismiss Notice
  6. Shoot to thrill, play to kill. Sate your hunger with the 33rd Modeling Contest!
    Dismiss Notice
  7. 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.

Map vs Mod

Discussion in 'World Editor Help Zone' started by SadisticLeprechaun, Nov 23, 2018.

  1. SadisticLeprechaun

    SadisticLeprechaun

    Joined:
    Dec 17, 2010
    Messages:
    111
    Resources:
    0
    Resources:
    0
    For a while now I have been taking my simple map modifications (extra units, a few changes to old units, additional merc stores, a few new upgrades, slight different items in some stores like Ancient of Wonders, etc) and putting them into each map, and then if I update the changes I have to update the map...

    I was looking at a mod today, somehow Heaven's Fall somehow can apply stuff to each map? This is really what I wanted to do, to have my changes just appear on any map I load.

    I would love to figure this out. Updating a bunch of maps to play with the new orc death priest gets old if I want to play a dozen maps.

    Anyone know about how to make a mod for all maps?
     
  2. Daffa

    Daffa

    Joined:
    Jan 30, 2013
    Messages:
    8,206
    Resources:
    31
    Packs:
    1
    Maps:
    9
    Spells:
    18
    Tutorials:
    3
    Resources:
    31
    I suggest that you ask @Retera who currently runs it.
     
  3. Tasyen

    Tasyen

    Joined:
    Jul 18, 2010
    Messages:
    1,656
    Resources:
    36
    Tools:
    2
    Maps:
    3
    Spells:
    11
    Tutorials:
    19
    JASS:
    1
    Resources:
    36
    Which version of warcraft 3 are you using?
     
  4. SadisticLeprechaun

    SadisticLeprechaun

    Joined:
    Dec 17, 2010
    Messages:
    111
    Resources:
    0
    Resources:
    0
    Latest version, 1.30 something?
     
  5. Tasyen

    Tasyen

    Joined:
    Jul 18, 2010
    Messages:
    1,656
    Resources:
    36
    Tools:
    2
    Maps:
    3
    Spells:
    11
    Tutorials:
    19
    JASS:
    1
    Resources:
    36
    Before starting that, the requierment to be able to mod data is using the 4 digit objectId system ('hfoo') of warcraft.

    Replace melee gamedata:


    one needs to overlap alot of files.
    First one needs subfolders in warcraft 3:
    • "war3.mpq/melee_v1/units" (melee tft)
    • "war3.mpq/custom_v1/units" (custom tft)
    • "war3.mpq/melee_v0/units" (melee roc)
    • "war3.mpq/custom_v0/units" (custom roc)
    pick all you want to mod.


    Inside this units folder are alot of files:


    Best is using cascview and export the whole custom_v1/units folder and base your modification from it.

    Ignore all files which contain the word "meta", they only define the type (interpretation) and limits of datafields.
    You could delete them in your mod folder.​

    SLK-format explanition from W3M and W3X Files Format.
    abilitybuffdata.slk
    abilitydata.slk

    itemdata.slk
    destructabledata.slk

    unit data is splitted in multiple slk files, unlike one is used from object Editor.
    unitabilities.slk, references to abilities
    unitbalance.slk, gold, lumber, bounty, armor, food, hp, mp, ...
    unitdata.slk,
    unitui.slk, visual stuff: used models, shadows...
    unitweapons.slk, attacks

    upgradedata.slk

    do not forget .txt - files, they contain important stuff.

    this 2 are much of the gameconstants
    miscgame.txt
    miscdata.txt

    for some strange reasons some fiels in gameconstants of world editor are fragmented over multiple txt files.

    <race>unitfunc.txt, important file; train/requierments for units, also unit Missile
    <race>upgradefunc.txt, define buttonImg and requierments of techs/upgrades
    <race>abilityfunc.txt, Ability-Button, missile, requierments, effect art
    neutralunitfunc.txt, one can setup here also the types beeing consider as hero for gameconstants.

    Add custom code:


    I do know more about that.
    One can overlap "war3.mpq/scripts/blizzard.j"
    blizzard.j, only accepts plain jass
    -> Requiers beeing able to read/modificate plain jass to some extend.

    inject your globals into the blizzard.j
    inject your code into blizzard.j
    inject starting your inits into blizzardInit, else your stuff won't do anything.


    If you want to use vjass/GUI: create your code/trigger place it in a map. then convert it into jass with the export map script.
    the map script is the maps code in jass, but it also contains stuff which is not important.
    Preplaced Units, trees, Sound, player settings... can be skipped for obivous reasons.​

    Before doing something fancy and overdo yourself try something easy.
    Example add all workers to human townhall.



    One could also use "war3mod.mpq" instead of "war3.mpq" (folder) most times. But I am not sure what the advantages disadvantages of both are.

    Edit: Warcraft 3 has built in validation checks, so one can not enter a lobby using different gamestate data/code. This is also the case for loadng a game.
     
    Last edited: Nov 24, 2018
  6. SadisticLeprechaun

    SadisticLeprechaun

    Joined:
    Dec 17, 2010
    Messages:
    111
    Resources:
    0
    Resources:
    0
    OK, so I checked this out. Crazy. Is there any way to take the files already done out of the object editor or map to place into these folders? I must admit there were so many it was a bit daunting.
     
  7. Tasyen

    Tasyen

    Joined:
    Jul 18, 2010
    Messages:
    1,656
    Resources:
    36
    Tools:
    2
    Maps:
    3
    Spells:
    11
    Tutorials:
    19
    JASS:
    1
    Resources:
    36
    using that tool. It allows to convert maps between 3 formats `Lni`, `Obj` and `Slk`. Convert your map either in Lni or slk than you have data in a format which is more easy to handle/transfer.

    But I forgot about tooltips. Not sure how to do that maybe one can add text in one of the txt files. Or one would have to overLap the localized folders as seen in the casc by using casview.

    they are named like that <Lcid-String>-war3local.mpq, google Lcid String or look at warcraft 3 with cascview
    example local german: "dede-war3local.mpq".

    If you don't care about multi language,
    You can add text directly in the txt-Files.
    Inside humanunitfunc.txt:
    Tip="Custom Hero"

    Tip, raw field name in editor/head of file
     
    Last edited: Nov 24, 2018
  8. Retera

    Retera

    Tool Reviewer

    Joined:
    Apr 19, 2008
    Messages:
    1,028
    Resources:
    27
    Models:
    18
    Tools:
    2
    Maps:
    6
    Reforged HD Models:
    1
    Resources:
    27
    When you ask about Heavens Fall, are you looking at the old one or the new one? For years Heaven's Fall was an EXE that was like a second expansion. When you played it, you could join LAN games and choose any of 6 races in the out-of-game drop-down and play on any melee map. This system stopped working after patch 1.28, because it requires the Nirvana MultiRace Template and I have not seen an update for Nirvana's system online for me to use.

    If you're looking at the maps that I recently uploaded, these were all generated in an afternoon. I have WEX 1.29 to use for batch file import. So I type the command in Trigger Editor to run the preprocessor script to import my 700 model files and textures and whatever from a folder. Then I go to Object Editor and do "Import All Object Data". All of my custom Triggers are included with the model files in an override for "Scripts\Blizzard.j". So then it basically just works
     
  9. SadisticLeprechaun

    SadisticLeprechaun

    Joined:
    Dec 17, 2010
    Messages:
    111
    Resources:
    0
    Resources:
    0
    You all rock the house, thanks for the answers!