Ok,
I have spend the last few hours messing around with custom actor references and beams and I'm too tired to keep trying things. So I made a small map with the core problem.
The map includes zeratul with a healing ability which is just the medivac heal duplicated. It all works, only the beam actor doesn't show. Please take a look and tell me how to fix this...
I am NOT looking for alternative solutions. I would like to know wth ist wrong with the custom references.
After a bit of testing I've come up with a theory. It seems to me that the site actors are being created after the beam, and thus the beam cannot find the sites it is supposed to attach itself to. Both the sites and the beam are created at Channel Start, which could cause a problem if you're unlucky with the order these actors are being created.
Simple fix: (Tested and working in the attached map)
In the launch site, change the first event from SourceChannelStart to SourceCastStart.
In the impact site, change the first event from TargetChannelStart to TargetCastStart.
This way, the sites will always be created before the beam.
According to "other people here" (can't remember who, but they knew what they were talking about) the problem is that the editor writes an xml file containing a list of actors in alphabetical order. This order also determines which actor is created first, if they trigger on the same event. Editing this file, which is possible with an mpq editor, should solve the problem, so if Blizzard made sure the HealBeam actor is listed before the Launch/ImpactSites the bug wouldn't occur.
The solution suggested by the one who posted this info in an earlier thread was to create a new beam actor with a "z" at the end of its name (e.g. MedivacHealBeamz), and copying all fields from your old actor. The "copy from..." option in the create dialog window should also work, but apparently renaming the existing actor doesn't.
This also is important if you have an ability with multiple timed stages, as then the Cast and Channel references won't be equal. (e.g. first "prepare" like Thors adjusting their cannons, then "charge" like Yamato Cannon, then channel the main effect, then "unmorph" like Thors retracting the cannons)
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
Ok, I have spend the last few hours messing around with custom actor references and beams and I'm too tired to keep trying things. So I made a small map with the core problem.
The map includes zeratul with a healing ability which is just the medivac heal duplicated. It all works, only the beam actor doesn't show. Please take a look and tell me how to fix this...
I am NOT looking for alternative solutions. I would like to know wth ist wrong with the custom references.
Thanks Obatztrara
After a bit of testing I've come up with a theory. It seems to me that the site actors are being created after the beam, and thus the beam cannot find the sites it is supposed to attach itself to. Both the sites and the beam are created at Channel Start, which could cause a problem if you're unlucky with the order these actors are being created.
Simple fix: (Tested and working in the attached map)
In the launch site, change the first event from SourceChannelStart to SourceCastStart.
In the impact site, change the first event from TargetChannelStart to TargetCastStart.
This way, the sites will always be created before the beam.
I'm actually glad it's a technical solution. I feared that I missed some small field somewhere hidden..
Sir, I owe you one, thanks a lot!
Now for the bonus question. This is pretty much solved then, but I'll post the bonus question anyways: Why does it work for the medivac heal ability?
According to "other people here" (can't remember who, but they knew what they were talking about) the problem is that the editor writes an xml file containing a list of actors in alphabetical order. This order also determines which actor is created first, if they trigger on the same event. Editing this file, which is possible with an mpq editor, should solve the problem, so if Blizzard made sure the HealBeam actor is listed before the Launch/ImpactSites the bug wouldn't occur.
The solution suggested by the one who posted this info in an earlier thread was to create a new beam actor with a "z" at the end of its name (e.g. MedivacHealBeamz), and copying all fields from your old actor. The "copy from..." option in the create dialog window should also work, but apparently renaming the existing actor doesn't.
This also is important if you have an ability with multiple timed stages, as then the Cast and Channel references won't be equal. (e.g. first "prepare" like Thors adjusting their cannons, then "charge" like Yamato Cannon, then channel the main effect, then "unmorph" like Thors retracting the cannons)