In my extension mod LettersOnly's StarCraft II Edit (just small random modifications that make the games better in my opinion), I want to change the pathing of Ultralisks. I want Zerglings, Banelings (maybe not), and Broodlings to be able to move through Ultralisks. This is because those units are just about small enough to fit under an Ultralisk without much noticeable clipping, and also because Ultralisks have a miserable time getting to the front lines when Zerglings are amok.
However I have no idea how to do this. I looked up the Colossus, and what I can gather is that it is able to move over most units because of its "(Basic) Movement: Collide +" values: Flying, Structure, and Colossus. So...is this how I would modify Ultralisks to be able to path through Zerglings, Banelings and Broodlings? I can't find any way to create new collision values, so I'm lost. Is there another way around this?
In fact, would it be more efficient to change Zerglings, Banelings, and Broodlings in some way so that they do path through Ultralisks?
Look at the HotS campaign Aberration, which iirc already does this (not sure if Banelings are included)
For unit-to-unit collision it's those Collide/Plane fields you already found, but they're hardcoded. Everything in one group collides with other members of that group, but I don't know if there are other hardcoded interactions such as multiple "burrower" groups intrinsically colliding with each other.
I figured out that I can just use one of the unused collision values, e.g. "Unused (Land 10)".
So what I could do is uncheck "Ground" for the Ultralisk, and then check "Unused (Land 10). But then I would have to check "Unused (Land 10)" for every unit besides flying units, ground units I don't want colliding with Ultralisks, and units that have "Colossus" or "Structure" checked. That would take forever!
I've been trying to problem solve how I could change the collision values for only the Ultralisks and the units I want to path through them (which in terms of melee games are Zerglings, Banelings, Broodlings, Changelings, and Locusts). I'm trying to problem solve this so that I don't have to modify almost every ground unit in the game files, and only have to modify just the units that are actually being affected by this change gameplay-wise. However I can't solve this problem. I think it's impossible to get this to work without modifying all of the ground units I don't want to path through Ultralisks,
but do you guys think? Is it possible?
I figured out that I can just use one of the unused collision values, e.g. "Unused (Land 10)". So what I could do is uncheck "Ground" for the Ultralisk, and then check "Unused (Land 10). But then I would have to check "Unused (Land 10)" for every unit besides flying units, ground units I don't want colliding with Ultralisks, and units that have "Colossus" or "Structure" checked. That would take forever!
I've been trying to problem solve how I could change the collision values for only the Ultralisks and the units I want to path through them (which in terms of melee games are Zerglings, Banelings, Broodlings, Changelings, and Locusts). I'm trying to problem solve this so that I don't have to modify almost every ground unit in the game files, and only have to modify just the units that are actually being affected by this change gameplay-wise. However I can't solve this problem. I think it's impossible to get this to work without modifying all of the ground units I don't want to path through Ultralisks, but do you guys think? Is it possible?
Nope, you just have to do it the hard way. It's only 25 units at max, so just do it. XD
The problem with Ultralisk pathing is quite tricky, since one option is to make Ultras move "over" minor units, while the other is to make Ultras "push" (push priority) away other units. While the second one is far more elegant, it's quite problematic since it means that you have to make a custom movement priority for all units or simply let ultras push away every other unit, which is something very badass. I experimented with that in a Dynamic Movement mod.
Try both solutions and choose the one you like, but the way you have proposed it is right, even if boring.
Well Ultralisks are so big that Zerglings, Banelings, Broodlings and Locusts can fit under them (especially if we consider it all to lore scale instead of game scale), so I thought simply allowing them to path under was perfectly acceptable and credible. Pushing away units would be nifty, but it would only truly be bad-ass if the Ultralisk knocked over units, including enemy units.
Is there no way to change the names of the unused collision values? It would just look nicer if I used a value that said "Ultralisk" instead of "Unused (Land 10)".
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
Hello.
In my extension mod LettersOnly's StarCraft II Edit (just small random modifications that make the games better in my opinion), I want to change the pathing of Ultralisks. I want Zerglings, Banelings (maybe not), and Broodlings to be able to move through Ultralisks. This is because those units are just about small enough to fit under an Ultralisk without much noticeable clipping, and also because Ultralisks have a miserable time getting to the front lines when Zerglings are amok.
However I have no idea how to do this. I looked up the Colossus, and what I can gather is that it is able to move over most units because of its "(Basic) Movement: Collide +" values: Flying, Structure, and Colossus. So...is this how I would modify Ultralisks to be able to path through Zerglings, Banelings and Broodlings? I can't find any way to create new collision values, so I'm lost. Is there another way around this? In fact, would it be more efficient to change Zerglings, Banelings, and Broodlings in some way so that they do path through Ultralisks?
you have to change the collision flags of the units. if they share a certain flag they block each other.
Look at the HotS campaign Aberration, which iirc already does this (not sure if Banelings are included)
For unit-to-unit collision it's those Collide/Plane fields you already found, but they're hardcoded. Everything in one group collides with other members of that group, but I don't know if there are other hardcoded interactions such as multiple "burrower" groups intrinsically colliding with each other.
The colossus also does this to some extent from what I can recall seeing it in many arcade maps.
Thanks for the replies.
I figured out that I can just use one of the unused collision values, e.g. "Unused (Land 10)". So what I could do is uncheck "Ground" for the Ultralisk, and then check "Unused (Land 10). But then I would have to check "Unused (Land 10)" for every unit besides flying units, ground units I don't want colliding with Ultralisks, and units that have "Colossus" or "Structure" checked. That would take forever!
I've been trying to problem solve how I could change the collision values for only the Ultralisks and the units I want to path through them (which in terms of melee games are Zerglings, Banelings, Broodlings, Changelings, and Locusts). I'm trying to problem solve this so that I don't have to modify almost every ground unit in the game files, and only have to modify just the units that are actually being affected by this change gameplay-wise. However I can't solve this problem. I think it's impossible to get this to work without modifying all of the ground units I don't want to path through Ultralisks, but do you guys think? Is it possible?
Nope, you just have to do it the hard way. It's only 25 units at max, so just do it. XD
The problem with Ultralisk pathing is quite tricky, since one option is to make Ultras move "over" minor units, while the other is to make Ultras "push" (push priority) away other units. While the second one is far more elegant, it's quite problematic since it means that you have to make a custom movement priority for all units or simply let ultras push away every other unit, which is something very badass. I experimented with that in a Dynamic Movement mod.
Try both solutions and choose the one you like, but the way you have proposed it is right, even if boring.
@JCoto: Go
Well Ultralisks are so big that Zerglings, Banelings, Broodlings and Locusts can fit under them (especially if we consider it all to lore scale instead of game scale), so I thought simply allowing them to path under was perfectly acceptable and credible. Pushing away units would be nifty, but it would only truly be bad-ass if the Ultralisk knocked over units, including enemy units.
Is there no way to change the names of the unused collision values? It would just look nicer if I used a value that said "Ultralisk" instead of "Unused (Land 10)".