Staredit Network

Staredit Network -> UMS Assistance -> Keeping unit number?
Report, edit, etc...Posted by Kumano on 2005-10-07 at 17:51:23
I'm using EUD conditions to detect unit health for a unit (originally a useless critter at top right of map, yes its unit 1, i've tested with the critter) and I try removing the critter and creating a unit directly afterwards and it should be unit 1, but when I tried it ended up as a different unit. Anything wrong in the way I'm thinking?

Trigger
Conditions:
¤ Player 4 brings at least 1 Zergling to location X.
Actions:
¤ Move Location enemy to zergling at location X
¤ Remove critter at useless units
¤ remove zergling at location x
¤ create 1 zergling at enemy for player 5
¤ Preserve Trigger


If this doesn't work is there any other way to make sure when the enemy comes that it will have to be unit 1? (There are lots of them so just making the zergling unit 1 won't work)
Report, edit, etc...Posted by Oo.Turin.oO on 2005-10-07 at 21:50:27
wtf do you mean by the zergling is unit 1?

ADDITION:
Also i don't see any EUD conditions in there...
Report, edit, etc...Posted by PlayaR on 2005-10-07 at 22:13:37
QUOTE(Veritaserum @ Oct 7 2005, 09:50 PM)
Also i don't see any EUD conditions in there...
[right][snapback]328685[/snapback][/right]


you know hes right thats a normal condition
im not good at all on EUD's but the use conditions have to do with like players deaths and stuff
i think..... pinch.gif
Report, edit, etc...Posted by Oo.Turin.oO on 2005-10-07 at 22:17:01
Yeah i suck to but EUDs have nothing to do with unit at x coordinate...now if you used EUDs to GET that...thats one thing...but there is no trigger that says if they are at coordinate whatever. Unless you mean LOCATION x...then thats not EUD at all.

ADDITION:
Just to let you know its Extended Unit DEATHS (<-----see deaths)
Report, edit, etc...Posted by DT_Battlekruser on 2005-10-08 at 01:09:35
That should work unless a training action manages to slip its way inbetween the Delete and Create.

Unless LocalIDs are assigned up to 1699 and then it searches...
Report, edit, etc...Posted by Kumano on 2005-10-08 at 06:08:16
QUOTE
wtf do you mean by the zergling is unit 1?

ADDITION:
Also i don't see any EUD conditions in there...



I know the EUDs work because it set off when I attacked the critter, so I know it can't be the EUDs that aren't working. It is unit 1 because EUD health detection goes by actual unit number in order that it was placed in. Not unit type or something like that.

QUOTE
Yeah i suck to but EUDs have nothing to do with unit at x coordinate...now if you used EUDs to GET that...thats one thing...but there is no trigger that says if they are at coordinate whatever. Unless you mean LOCATION x...then thats not EUD at all.

ADDITION:
Just to let you know its Extended Unit DEATHS (<-----see deaths)


Once again, I didn't post the EUD conditions since I know that the conditions are working fine, but when i remove the useless critter and create zergling again it doesn't end up as Unit 1 making the EUD conditions do nothing.


QUOTE
That should work unless a training action manages to slip its way inbetween the Delete and Create.

Unless LocalIDs are assigned up to 1699 and then it searches...


Guess it just won't work that way then, since I was just testing at the time and no buildings were placed.
Report, edit, etc...Posted by DT_Battlekruser on 2005-10-08 at 12:32:30
All I can guess then is that whatever assigns LocalIDs goes in order from 0 to 1699, then looks for open slots.
Report, edit, etc...Posted by Oo.Turin.oO on 2005-10-08 at 12:49:14
QUOTE(Kumano @ Oct 8 2005, 02:08 AM)
I know the EUDs work because it set off when I attacked the critter, so I know it can't be the EUDs that aren't working. It is unit 1 because EUD health detection goes by actual unit number in order that it was placed in. Not unit type or something like that.
Once again, I didn't post the EUD conditions since I know that the conditions are working fine, but when i remove the useless critter and create zergling again it doesn't end up as Unit 1 making the EUD conditions do nothing.
Guess it just won't work that way then, since I was just testing at the time and no buildings were placed.
[right][snapback]328989[/snapback][/right]

what do you mean once again you never said that. and you never answered my question at all. i said WHERE are the EUDs not do they work and i also asked WTF IS UNIT 1!
Report, edit, etc...Posted by Kumano on 2005-10-08 at 13:37:33
The EUDs are irrelevant to show since it would be only spam since I know that it works. Why should I post something that I am 100% sure isn't the problem? Also, it would take way too long to post since there are hundreds of them.

I already answered what unit 1 was if you looked at the trigger more carefully, but basically EUD conditions go by exact unit number and unit 1 was supposed to be the critter when the zergling isnt there so the zergling could be unit 1 when you fight it. Theres a critter at top of map in a useless part which is unit 1. Critter gets removed, zergling created and in theory the zergling should be unit 1. Since it isn't, thats why I made this topic. If you still don't get it, Unit 1 would be more then 1 thing.
Report, edit, etc...Posted by Oo.Turin.oO on 2005-10-08 at 15:53:29
whatever if you don't want to be cooperative and let me understand what you want help for then you can get help from someone else.
Report, edit, etc...Posted by in_a_biskit on 2005-10-09 at 04:26:48
Veritaserum: If you can't understand (whilst others can), you don't have to feel obliged to help.

This is how I understand it:

StarCraft and EUDs refer to and keep track of units on the map by "unit ID", which are numbers from 1 to 1699. The first unit you preplace on a map, then, should be "unit 1". The next would be "unit 2" and so on. Units get assigned a number when they come into the game (e.g. when you train them, or they are created via triggers).

In order to use EUDs to detect HP level, you have to refer to the specific unit number of the unit whose HP you want to detect. Kumano has successfully done this with a critter that was "unit 1".

What he wants to do now is to change "unit 1" by killing the critter, and creating a zergling. The hypothesis is that since "unit 1" no longer refers to a unit, it becomes an empty slot - which can be assigned to the zergling. So now you should be able to use EUD conditions on "unit 1" to refer to the zergling.

Kumano found that his zergling didn't seem to set off the EUD conditions when it was supposed to - which suggests, since the EUD conditions should be right (they worked on the critter) - that the zergling isn't "unit 1".

Kumano's posted trigger is the one which tries to change "unit 1" from the critter to the zergling. That's the trigger that he reckons isn't working as he wants it to. He didn't post the EUD triggers themselves because he already knows that they work.

DTBK's alternative hypothesis is that unit IDs are assigned 1 through 1699 in order, even if there are empty slots to fill with lower ID numbers. Only after slot 1699 has been used does SC look back for empty slots to put more units in. As an explanation, I think this is quite a good one, but if it is true, then what Kumano wants is really tricky to do...


Kumano: sorry for making such a long post without being able to help you :S
Report, edit, etc...Posted by Oo.Turin.oO on 2005-10-09 at 13:03:54
QUOTE(in_a_biskit @ Oct 9 2005, 12:26 AM)
Veritaserum: If you can't understand (whilst others can), you don't have to feel obliged to help.[right][snapback]329898[/snapback][/right]

Fine...i just like to help
Report, edit, etc...Posted by DT_Battlekruser on 2005-10-09 at 13:46:19
Pardon me, it's 0 to 1699.
Next Page (1)