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

Techtree vs Techweb

Discussion in 'Miscellaneous Tutorials' started by Xonok, Jun 6, 2013.

  1. Xonok

    Xonok

    Joined:
    Mar 27, 2012
    Messages:
    3,039
    Resources:
    8
    Spells:
    3
    Tutorials:
    5
    Resources:
    8
    When making one of my projects in the past I came across a problem.

    I had 4 kinds of walls:
    Basic Wall(Horisontal)
    Basic Wall(Vertical)
    Basic Wall(Diagonal1)
    Basic Wall(Diagonal2)

    I needed to make a techtree requirement, that tells you to build a wall - any wall of the ones mentioned above.
    After a bit of thinking I came across a solution. (Click picture to enlarge)
    Wall Equivalent.JPG
    I created a new unit named "Basic Wall" and used used all the other Basic Wall types as the dependency equivalent. Then I made the techtree requirement take the "Basic Wall" unit, instead of any of the others. The "Basic Wall" unit would never be placed anywhere.

    Later on I realized, that I could use similar ways to create a sort of a techweb.
    Normally things are placed in a sort of a tree-shaped thing.
    [​IMG]

    However, through dependency equivalents you can make something like this(Click picture to enlarge):
    Techweb Example.JPG
    You can make E require O and (A or D).
    Or you can make O require ABCDEFGH, while A requires H or B, B requires C or A, C requires D or B, etc.
    You can literally go nuts with this possibility.
    Now comes the important question: How?

    It's actually quite simple. You make a unit that will never be trainable. Then you put all the Equivalent units in its dependency equivalents and use this unit for any dependencies you might need.
    Like this(Click picture to enlarge):
    Wall Equivalent.JPG
    The reason this works is that now whenever a game checks for your equivalent unit it also considers everything you've set as equivalents. Thus, you've effectively made a techtree requirement that contains a group of unit types.
     
    Last edited by a moderator: Jun 22, 2013
  2. PurgeandFire

    PurgeandFire

    Code Moderator

    Joined:
    Nov 11, 2006
    Messages:
    7,429
    Resources:
    18
    Icons:
    1
    Spells:
    4
    Tutorials:
    9
    JASS:
    4
    Resources:
    18
    Seems like an interesting tutorial to consider when planning an altered melee/RTS-style game. I like the theme.

    However, I feel that this area isn't really explained well:
    You should explain the problem you are trying to address a bit more, and then say how that modification addresses that problem completely. You state the problem and give a solution, but I wasn't able to understand what that solution actually did. It just seems a bit brief in that area. Fix that and I think it will be pretty much approvable.
     
  3. Xonok

    Xonok

    Joined:
    Mar 27, 2012
    Messages:
    3,039
    Resources:
    8
    Spells:
    3
    Tutorials:
    5
    Resources:
    8
    How about now?
     
  4. PurgeandFire

    PurgeandFire

    Code Moderator

    Joined:
    Nov 11, 2006
    Messages:
    7,429
    Resources:
    18
    Icons:
    1
    Spells:
    4
    Tutorials:
    9
    JASS:
    4
    Resources:
    18
    Thank you. Approved. :)
     
  5. Orcnet

    Orcnet

    Joined:
    Jul 31, 2010
    Messages:
    3,855
    Resources:
    4
    Maps:
    3
    Tutorials:
    1
    Resources:
    4
    Very useful, I'm actually configuring a Boss or Titan(based from AoM) unit to be on this type of access. So I might use this someday.