1. 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
  2. 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
  3. 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
  4. The 4th SFX Contest has started. Be sure to participate and have a fun factor in it.
    Dismiss Notice
  5. The poll for the 21st Terraining Contest is LIVE. Be sure to check out the entries and vote for one.
    Dismiss Notice
  6. The results are out! Check them out.
    Dismiss Notice
  7. Don’t forget to sign up for the Hive Cup. There’s a 555 EUR prize pool. Sign up now!
    Dismiss Notice
  8. The Hive Workshop Cup contest results have been announced! See the maps that'll be featured in the Hive Workshop Cup tournament!
    Dismiss Notice
  9. 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.

LUA - Accessing Object Editor Fields

Discussion in 'Triggers & Scripts' started by Wadjet, Aug 28, 2019.

  1. Wadjet

    Wadjet

    Joined:
    Sep 14, 2009
    Messages:
    243
    Resources:
    6
    Skins:
    1
    Template:
    5
    Resources:
    6
    Im trying to access different fields of units in the Object Editor using Lua. But I'm having problems finding the currect raw values.

    For example 'ulum' is supposed to be the value of lumber cost for a unit, but when using the following function:

    Code (Text):
    print(BlzGetUnitIntegerField(udg_StatInfoUnit, ConvertUnitIntegerField(FourCC("ulum"))))
    it does not work. The function is correct, since it works for 'ustc', which is the raw value for Strength:

    Code (Text):
    constant unitintegerfield UNIT_IF_STRENGTH = ConvertUnitIntegerField('ustc')
    However, the value for Strength in the Object Editor is 'ustr', which does not work in the above function. My guess is that the lumber cost (along with a bunch of other fields) have different raw values than appears in the Object Editor. Does anyone know where to find these?

    And no, they are not in common.j, just a very few of them are.
     
  2. Dr Super Good

    Dr Super Good

    Spell Reviewer

    Joined:
    Jan 18, 2005
    Messages:
    25,547
    Resources:
    3
    Maps:
    1
    Spells:
    2
    Resources:
    3
    Unless they are in common.j then chances are access to the field is not supported.

    The field names appear unrelated to the slk field names which is what WC3 would use for storing the data. As such one can only assume the integer codes are internal codes used by the game engine data management system and not directly related to the object editor.

    One can expect more fields and more natives to be added in future Warcraft III updates.
     
  3. TriggerHappy

    TriggerHappy

    Code Moderator

    Joined:
    Jun 23, 2007
    Messages:
    3,667
    Resources:
    22
    Spells:
    11
    Tutorials:
    2
    JASS:
    9
    Resources:
    22
    You can find the field values by pressing CNTRL + D in the object editor. Whether or not any of the undefined ones work, I don't know.

    fields.jpg