I wouldn't mind adding my two cents about your map, Karawasa. I believe I've beaten it perhaps once or twice, the first time with loads of pure water towers. I actually enjoyed it quite much even though I usually played it with random elements.
You've also got to think about the demographics you're targeting. Most people on Bnet are more interested in combat, and your OP doesn't really cover much about combat.
Your RPG sounds like it might be fun to the kind of player that likes to go around doing stuff like crafting, explore, and such. Personally, I feel such things tend to be a drag, so you'll want to give some players more of a hook. What would set your map apart from other RPGs? Would I get the experience of playing a character that truly feels like he gets really powerful later on (there's a great incentive in some RPGs)?
However, I see you're aiming more at the simulation aspect, so I guess your target demographic is a bit different, but I think you're onto something there. I wish you good luck, sir!
So why does it work when we make the Bunkers variable a simple unit variable?
EDIT: And like I said in my previous post here, it's definitely behaving like events are registered by reference rather than value.
Also, I should point out that if you made the initial value of gv_bunkers (still an array variable in this experiment) point to the nydus network building, it still screws up.
May also be useful to run this trigger whenever a specific unit from your desired unit group enters the region. Keeps the number of trigger calls down.
Not quite. As he said, and as I tested it, it works fine if you use a simple unit variable. It's when you turn it into an array (and register the event with a valid slot in the array) that things go awry. While I understand that it's a coding practice carried over from WC3 to avoid using variables in events, since WC3 binds events by value, these experiments have shown that the event responds as if it binds by reference.
EDIT: Experimented with it again, I made a trigger that changes the Bunker variable (not an array anymore) to the Nydus Network building upon typing "-test". I first had the marines attack the Bunker - trigger fired. Then I typed "-test" and it started reporting the Nydus Network building's decay damage.
Further evidence that this event appears to function by reference.
EDIT 2: "Unit is Attacked" behaves the exact same way as reported above in every post in this thread.
Also, while it's true that using the condition solves the problem, it is inefficient. You now have the trigger firing every time any unit takes damage (and it checks the condition). If we could get it so array variables are ok with events, then you can dramatically reduce the number of trigger calls.
It's not game breaking or anything, I'm just pointing out that it is more inefficient than it should be.
I'll take a crack at this. I'll edit this post when I've come to a conclusion. :)
EDIT: Okay, looked at it. Apparently, it also fires if the marines shoot at each other. So it's not just zerg building decay. I'd love to know the reason behind this (what's going on with the memory stack), but it does appear that the event is unstable with unit arrays.
Congrats sir, you deserve at least a month of premium Curse.
0
Add a condition to that trigger to check if the first 5 characters of the entered chat string equals "-name".
0
@Kanaru: Go
Oh, that's why it was unplayable! I hit every key on my keyboard trying to figure out the "Insert Credit" key. :P
0
I wouldn't mind adding my two cents about your map, Karawasa. I believe I've beaten it perhaps once or twice, the first time with loads of pure water towers. I actually enjoyed it quite much even though I usually played it with random elements.
0
You've also got to think about the demographics you're targeting. Most people on Bnet are more interested in combat, and your OP doesn't really cover much about combat.
Your RPG sounds like it might be fun to the kind of player that likes to go around doing stuff like crafting, explore, and such. Personally, I feel such things tend to be a drag, so you'll want to give some players more of a hook. What would set your map apart from other RPGs? Would I get the experience of playing a character that truly feels like he gets really powerful later on (there's a great incentive in some RPGs)?
However, I see you're aiming more at the simulation aspect, so I guess your target demographic is a bit different, but I think you're onto something there. I wish you good luck, sir!
0
Assuming that's true, then shouldn't Blizzard make UnitRefFromVariable capable of parsing array brackets?
That's probably a 2 minutes fix.
0
Check Target Filters.
0
@MotiveMe: Go
So why does it work when we make the Bunkers variable a simple unit variable?
EDIT: And like I said in my previous post here, it's definitely behaving like events are registered by reference rather than value.
Also, I should point out that if you made the initial value of gv_bunkers (still an array variable in this experiment) point to the nydus network building, it still screws up.
So no, sorry, it's not working as intended.
0
May also be useful to run this trigger whenever a specific unit from your desired unit group enters the region. Keeps the number of trigger calls down.
0
Use "Triggering Unit" in your actions to do stuff to the unit being selected.
0
@RileyStarcraft: Go
Oh, my bad. Guess they changed that from the way WC3 did it. My apologies.
0
Also, are you sure 10 is really a noticeable height change? I mean, 10 in height is way, way, way smaller than 10 in attack range.
0
EDIT: I was able to do it with a Corruptor on a bare map. Are you sure your unit has all flying flags enabled? What unit did you base it on?
0
@progammer: Go
Not quite. As he said, and as I tested it, it works fine if you use a simple unit variable. It's when you turn it into an array (and register the event with a valid slot in the array) that things go awry. While I understand that it's a coding practice carried over from WC3 to avoid using variables in events, since WC3 binds events by value, these experiments have shown that the event responds as if it binds by reference.
EDIT: Experimented with it again, I made a trigger that changes the Bunker variable (not an array anymore) to the Nydus Network building upon typing "-test". I first had the marines attack the Bunker - trigger fired. Then I typed "-test" and it started reporting the Nydus Network building's decay damage.
Further evidence that this event appears to function by reference.
EDIT 2: "Unit is Attacked" behaves the exact same way as reported above in every post in this thread.
Also, while it's true that using the condition solves the problem, it is inefficient. You now have the trigger firing every time any unit takes damage (and it checks the condition). If we could get it so array variables are ok with events, then you can dramatically reduce the number of trigger calls.
It's not game breaking or anything, I'm just pointing out that it is more inefficient than it should be.
0
@rymonator: Go
Check your map's dependencies. "File" -> "Dependencies..."
0
@KelvCM: Go
I'll take a crack at this. I'll edit this post when I've come to a conclusion. :)
EDIT: Okay, looked at it. Apparently, it also fires if the marines shoot at each other. So it's not just zerg building decay. I'd love to know the reason behind this (what's going on with the memory stack), but it does appear that the event is unstable with unit arrays.
Congrats sir, you deserve at least a month of premium Curse.