Staredit Network > Forums > SC1 UMS Theory and Ideas > Topic: Location Identification (LID)
Location Identification (LID)
Jun 13 2010, 4:41 am
By: Sacrieur
Pages: 1 2 3 >
 

Jun 13 2010, 4:41 am Sacrieur Post #1

Still Napping

A LID is a location, usually 1 px, that permanently marks a unit. This takes advantage of collision boxes to help identify and track non-unique units.

Trigger
Players
Any
Conditions
  • Always
  • Actions
  • Center location labeled '<LID location>' on <unit> owned by <player> at '<LID location>'.
  • Preserve trigger.


  • The unit's collision box prevents other units from ever entering the LID location, permanently tagging the unit. If the unit becomes stacked with other similar units, the LID may become unattached. Units that can ignore collision boxes in specific circumstances, such as Zerg units that burrow and workers, are restricted by this limitation.

    Although the use of locations greater in size than 1 px can be used, it is not suggested. Larger locations risk becoming unattached from the tagged unit. Because triggers run at 11.9 Hz, faster units with smaller collision frames such as Zerglings can become unattached from their LID. Below is a list of units that work with a 1 px location.




    Units That Work

    • Civilian
    • Goliath
    • Marine (no stim)
    • Medic
    • SCV*
    • Siege Tank
    • Vulture (no speed)

    • Drone*
    • Lurker*
    • Ultralisk (no speed)

    • Archon
    • Dark Archon
    • Dragoon
    • High Templar
    • Probe*
    • Reaver


    Hero Units That Work

    • Jim Raynor (marine, no stim)
    • Gui Montag (no stim)
    • Edmund Duke

    • Unclean One*

    • Aldaris
    • Tassadar
    • Tassadar/Zeratul
    • Warbringer


    Units That Don't Work

    • Firebat
    • Ghost
    • Marine (stim)
    • Vulture (speed)

    • Infested Terran
    • Broodling
    • Hydralisk
    • Ultralisk (speed)
    • Zergling

    • Dark Templar
    • Zealot


    Hero Units That Don't Work

    • Alexei Stukov
    • Gui Montag (stim)
    • Sarah Kerrigan
    • Jim Raynor (vulture)

    • Infested Kerrigan
    • Samir Duran
    • Infested Duran
    • Hunter Killer
    • Devouring One
    • Torrasque

    • Dark Templar
    • Fenix (dragoon)
    • Fenix (zealot)
    • Zeratul


    * These units can become stacked in normal gameplay.

    There are units included on this list that partially work. For example, a ghost's LID will remain attached if he moves vertically, but any horizontal movement will detach the location.


    Use of Inverted LIDs

    An inverted LID (xLID) does not carry any advantages over traditional LIDs; in fact, they are slightly disadvantageous. Because a xLID requires that a unit to remain outside of the location at all times, a unit may be able to escape a xLID that cannot escape a LID. If the xLID and LID were put on the very edge of a unit's collision frame, the unit would be in the LID, but not in the xLID.


    Examples

    I am attaching two proof-of-concept maps. LID Test was made by me. You can place any unit in the center of the dark square and test it. The triggers will work with anything; though, there are still the restrictions above.

    Civilian Tracker is Azrael's proof-of-concept. The damaged civilian will roam around with junk yard dog AI among other civilians for five minutes. At the end the unit within the LID will be removed. It should be the damaged civilian.


    Hopefully this will help you all in creating maps ^^

    Attachments:
    LID Test.scx
    Hits: 13 Size: 39.23kb
    Civilian Tracker.scx
    Hits: 15 Size: 43.27kb

    Post has been edited 5 time(s), last time on Apr 18 2012, 5:50 am by Sacrieur.



    None.

    Jun 13 2010, 4:52 am Azrael Post #2



    This is something that didn't used to work and I'm glad it does now. That exact map, Civilian Tracker, used to fail at tracking the right civilian 100% of the time, and now it works 100% of the time. I am grateful you made me try it again :)

    Major props and some karma for an excellent posting, and for going to the trouble of figuring out which units work and which don't.

    Post has been edited 3 time(s), last time on Aug 14 2012, 3:44 am by Azrael.




    Jun 13 2010, 5:10 am Lanthanide Post #3



    I don't really see how this is anything new, other than being a nice list of units all together in one place.

    Also, it is possible to get regular units to temporarily stack over each other, such as when you have several units in a confined place and you somehow add an extra one, causing all units to jostle around trying to find new stable positions - zerg egg morphing, or SCV repairing being easy ways to get this to happen. I once had a group of 2 tanks and 3 goliaths running around each other for a solid 3 minutes when I sent an SCV in to repair them, in the end I had to manually order them all to stop and stand in specific spots to stop them.



    None.

    Jun 13 2010, 5:13 am Sacrieur Post #4

    Still Napping

    Quote from Lanthanide
    I don't really see how this is anything new, other than being a nice list of units all together in one place.

    Also, it is possible to get regular units to temporarily stack over each other, such as when you have several units in a confined place and you somehow add an extra one, causing all units to jostle around trying to find new stable positions - zerg egg morphing, or SCV repairing being easy ways to get this to happen. I once had a group of 2 tanks and 3 goliaths running around each other for a solid 3 minutes when I sent an SCV in to repair them, in the end I had to manually order them all to stop and stand in specific spots to stop them.

    Isn't really new, but it is a concept that wasn't documented, or even well studied.

    And yes, I did mention overlap glitching as something that could ruin the effect.

    Post has been edited 1 time(s), last time on Jun 14 2010, 6:49 am by Sacrieur.



    None.

    Jun 14 2010, 12:24 am Azrael Post #5



    Well, it certainly didn't work at the time Brood War was released. Not sure what changed between then and now.

    Post has been edited 2 time(s), last time on Oct 12 2010, 12:13 pm by DevliN. Reason: Mineral abuse.




    Jun 14 2010, 4:12 am Sacrieur Post #6

    Still Napping

    Quote from name:Azrael.Wrath
    Well, it certainly didn't work at the time Brood War was released. Not sure what changed between then and now.

    Hyper Trigs? I dunno how long they have been used.



    None.

    Jun 14 2010, 6:47 am Lanthanide Post #7



    Hyper triggers wouldn't have been known about, and you need 1x1 pixel locations to do this properly, and the smallest location Staredit will let you make is 32x32 (1 tile).



    None.

    Jun 14 2010, 5:08 pm Azrael Post #8



    It sucks it doesn't work on Infested Terran though, I love those little buggers :(

    Post has been edited 5 time(s), last time on Aug 14 2012, 3:45 am by Azrael.




    Jun 14 2010, 5:43 pm JaFF Post #9



    This has been documented before. It's just that you guys probably weren't around at the time. I clearly remember there being some thread I took part in, where lists of units that could/couldn't escape a 1x1 location were posted. Falkoner was also somehow involved. I don't know whether that thread was made before SEN went down or not, but finding that topic is worth a try.



    None.

    Jun 14 2010, 6:18 pm CecilSunkure Post #10



    Quote from JaFF
    This has been documented before. It's just that you guys probably weren't around at the time. I clearly remember there being some thread I took part in, where lists of units that could/couldn't escape a 1x1 location were posted. Falkoner was also somehow involved. I don't know whether that thread was made before SEN went down or not, but finding that topic is worth a try.
    Yeah it definitely was. Ideas implementing this have already been thought up, and back in the day when I actually had spare time I planned to create a nice vHP concept map with it. Too late now.

    This is all old news and many a map have used it. Although, I'm sure a new list of units able escape a 1x1 location would be nice. Those are the units that are able to move more than the distance from where the location centers to their collision box in any direction within two game frames (triggers fire every 2 frames, right? Hence dcs lasting 1/12 a second and the framerate of 24?). Zerglings with speed and zealots with speed are able to escape.



    None.

    Jun 14 2010, 7:18 pm Azrael Post #11



    Quote from JaFF
    This has been documented before. It's just that you guys probably weren't around at the time.
    I was inactive here for a few years before 2009, so that's a possibility.

    Regardless, "being documented before" isn't helpful when said documentation no longer exists.

    Post has been edited 5 time(s), last time on Dec 12 2014, 8:21 pm by Azrael.




    Jul 2 2010, 10:38 pm Malar Post #12



    im new to map making, so im not sure about this, but if i have 2 triggers both say: condition: always action: center location on X unit. if i have 2 units, will 1 trigger set to each unit?



    None.

    Jul 2 2010, 10:43 pm Aristocrat Post #13



    They will both center on the same unit, unless you placed the 1x1 locations accordlingly and are moving the locations to themselves. Two locations being moved to the same type of unit in a large location covering both of them will both bind to the same one.



    None.

    Jul 2 2010, 10:48 pm Malar Post #14



    so the locations need to already be set where each unit is?



    None.

    Jul 3 2010, 12:09 am JaFF Post #15



    Yes. Also don't forget the preserve trigger actions.



    None.

    Jul 3 2010, 1:06 am The Starport Post #16



    Can't you use slightly inverted locations to better effect? Or do they escape those too?


    I did some stuff with these ages ago. Kinda stupid that I never recorded anything.



    None.

    May 5 2011, 9:37 am Sacrieur Post #17

    Still Napping

    Quote from name:Tuxedo-Templar
    Can't you use slightly inverted locations to better effect? Or do they escape those too?


    I did some stuff with these ages ago. Kinda stupid that I never recorded anything.

    ---
    Yes, I'm reviving this thread to answer this question. I still need to test heroes anyway >_>.
    ---

    Inverted locations have no effect. Since locations are 1x1 pixel and pixels are the most minimal of detection, a 1x1 location is all-or-nothing sort of thing. Either the location is completely on a unit, or the unit is not in the location at all. Units do not move half-way into a pixel =P



    None.

    May 5 2011, 9:41 am Jack Post #18

    >be faceless void >mfw I have no face

    I forget; does this work with infested kerris or not?



    Red classic.

    "In short, their absurdities are so extreme that it is painful even to quote them."

    May 5 2011, 9:49 am Sacrieur Post #19

    Still Napping

    Quote from Jack
    I forget; does this work with infested kerris or not?

    Nope (vertical works, horizontal does not). Curiously enough, Kerri's hitbox and movement speed is the exact same as a ghost.



    None.

    May 5 2011, 10:01 am Jack Post #20

    >be faceless void >mfw I have no face

    Quote from Sacrieur
    Quote from Jack
    I forget; does this work with infested kerris or not?

    Nope (vertical works, horizontal does not). Curiously enough, Kerri's hitbox and movement speed is the exact same as a ghost.
    Meh. Not sure what to use as zombies in my map now. Maybe drones, but that's meh.

    Have you tested with unit slowing? I would assume that a while lot more units become viable when slowed down.



    Red classic.

    "In short, their absurdities are so extreme that it is painful even to quote them."

    Options
    Pages: 1 2 3 >
      Back to forum
    Please log in to reply to this topic or to report it.
    Members in this topic: None.
    [05:57 am]
    Suicidal Insanity -- Pretty sure if you look at the trigger struct definition in the EUD talk you will see the real count :P
    [03:53 am]
    jjf28 -- so at least 22 bytes are definitely owners**
    [03:17 am]
    jjf28 -- rest of trigger owners are essentially 3rd party inventions
    [03:16 am]
    jjf28 -- p1-8, force1-4, all players
    [03:16 am]
    jjf28 -- o u rite
    [03:07 am]
    O)FaRTy1billion[MM] -- triggers can be owned by more than just the first 8 though
    [02:41 am]
    jjf28 -- in the list of groups I just call it "Id27" https://puu.sh/DV0sl/9ffe6a8612.png
    [02:39 am]
    jjf28 -- Suicidal Insanity
    Suicidal Insanity shouted: I think its 27 and padding
    Wormer
    Wormer shouted: or the guide (http://www.starcraftai.com/wiki/CHK_Format#.22UNIT.22_-_Placed_Units) is wrong there and it should be u8[27] ?
    you may as well say it's 8bytes + padding
    [02:38 am]
    jjf28 -- these flags? https://puu.sh/DV0q6/2adbd2e63e.png
    [09:32 pm]
    O)FaRTy1billion[MM] -- iirc the last byte in the TRIG is for more flags or something
    Please log in to shout.


    Members Online: Roy, mattaandrews, Doodan