Staredit Network > Forums > SC1 UMS Mapmaking Assistance > Topic: Best way for naval units not to go on land?
Best way for naval units not to go on land?
Sep 3 2008, 10:14 pm
By: Craftstar2  

Sep 3 2008, 10:14 pm Craftstar2 Post #1



What's the best way for naval units to not be able to go on land, other than making a ton of locations on the edges of the land and moving them back to the water when they get near? I want only a selected few air units to be unable to go on land, because there are also airplanes (meaning i will need specific conditions for the type of unit rather than having a location checked only to air). There will also be multiples of the same unit (centerview and move land unit to the spot beneath the air unit will not work). Is there a simple way to do this?



None.

Sep 3 2008, 10:32 pm Roy Post #2

An artist's depiction of an Extended Unit Death

Uh, I know what you're getting at, but I don't see a simple solution. A friend and I were working on box triggers, if you want to look at that. It uses quite a bit of locations, though, and won't be a reasonable solution...

You can place burrowed units around the edges of land, and run a detection system of bringing a unit to a location running through the burrowed units.

Conditions:
Player 7 brings at least 1 burrowed unit to anywhere
Actions:
Move location labelled locationX on burrowed unit owned by player 7
Give 1 burrowed unit owned by player 7 at anywhere to player 8
Preserve Trigger

Conditions:
Player 7 brings at most 0 burrowed unit to anywhere
Actions:
Give all burrowed unit owned by player 8 at anywhere to player 7
Preserve Trigger

Conditions:
Current Player brings at least 1 "naval ship unit" to locationX
OR
Always
Actions:
Kill all "naval ship unit" for current player at locationX
Preserve Trigger


Note: I used "kill" because it's the easiest and the one that makes the most sense. Naval units would be destroyed if they crashed upon land.

Edit: Nude's post (below) wouldn't work (or would be very complex/have a delay) if you have a lot of units of the same type.

Post has been edited 1 time(s), last time on Sep 3 2008, 10:40 pm by Roy.




Sep 3 2008, 10:32 pm NudeRaider Post #3

We can't explain the universe, just describe it; and we don't know whether our theories are true, we just know they're not wrong. >Harald Lesch

Constantly move a burrowed unit under the naval unit.
Now if you detect the burrowed unit underneath you know its illegally on land.

You might want to kill the unit, or use some kind of mobile grid (also using burrowed and air units) to order it back in the direction of water.




Sep 3 2008, 11:56 pm FooFighters Post #4



I agree with Roy, but instead, just use a centered location on your navel units and then when it detects the unit, it stops the location and you move back... like Ğrant did on his Labyrinthos map, but you cant use the high dirt and stuff for them :(

edit: you cant use more then 1 navel unit unless you make other locations and share with other players...



None.

Sep 4 2008, 12:52 am Falkoner Post #5



Quote
You might want to kill the unit, or use some kind of mobile grid (also using burrowed and air units) to order it back in the direction of water.

You could use the mobile grid, then try and move the zergling to all directions, if you hit a direction that the zergling cannot be moved to, order the wraith there, of course, that would cause problems if you can unplaceable terrain next to the shore, such as cliffs.



None.

Sep 4 2008, 9:30 pm Craftstar2 Post #6



Yeah but i might use more than 1 of the same unit, and then that means i can't use mobile grids or center a location on the naval unit.



None.

Sep 5 2008, 12:52 am Falkoner Post #7



More than 1 for each player, or 1 per player? If it's more than 1 per player, you're going to have to use massive amounts of locations, or run through a bunch of zerglings, checking for air units, which would cause lag depending on how large your coasts are..



None.

Sep 6 2008, 2:11 am Roy Post #8

An artist's depiction of an Extended Unit Death

Quote from name:
Yeah but i might use more than 1 of the same unit, and then that means i can't use mobile grids or center a location on the naval unit.
Uh, I didn't mention either of those two ideas. So... My idea would work?

And what's with these moving back ideas? If you're going for realism, ships would be completely destroyed if they try to keep a course straight through land. :P




Sep 6 2008, 2:12 am Echo Post #9



The Great Yam had a concept going. You should PM/Contact him.



None.

Sep 6 2008, 3:37 am Vi3t-X Post #10



Quote from NudeRaider
Constantly move a burrowed unit under the naval unit.
Now if you detect the burrowed unit underneath you know its illegally on land.

You might want to kill the unit, or use some kind of mobile grid (also using burrowed and air units) to order it back in the direction of water.
This.



None.

Sep 6 2008, 4:28 am Ultraviolet Post #11



You could make it so all the coastlines are high ground then make a location over the entire map and kill the specified units when they go to that location. That of course limits your coast choices, but should be a simple solution.




Sep 6 2008, 4:35 am Echo Post #12



Quote from Vi3t-X
Quote from NudeRaider
Constantly move a burrowed unit under the naval unit.
Now if you detect the burrowed unit underneath you know its illegally on land.

You might want to kill the unit, or use some kind of mobile grid (also using burrowed and air units) to order it back in the direction of water.
This.
That isn't going to work on multi units, unless you put locations on all land terrain so when the air unit goes on it and it detects a burrowed unit, it kills it.



None.

Sep 6 2008, 4:37 am BiOAtK Post #13



Actually, you could implement Nude's idea very easily. Just have the location that the burrowed unit moves to recycle.



None.

Sep 6 2008, 4:38 am PCFredZ Post #14



The most seamless ship crash system can be implemented on the Snow tileset, which has two different Water elevations. Simply make a river using Water in the low elevation and then use a map editor that can edit by tile to use the shore tiles from the High Water elevation to replace the shore tiles near the regular Water. Create a location that covers the whole river that only applies to "High Air" and always kill any units in that location. If you would like this to also apply to a river in the High Water level, simply repeat the whole thing with Low and High reversed.



None.

Sep 6 2008, 5:24 am Ultraviolet Post #15



Quote from name:
The most seamless ship crash system can be implemented on the Snow tileset, which has two different Water elevations. Simply make a river using Water in the low elevation and then use a map editor that can edit by tile to use the shore tiles from the High Water elevation to replace the shore tiles near the regular Water. Create a location that covers the whole river that only applies to "High Air" and always kill any units in that location. If you would like this to also apply to a river in the High Water level, simply repeat the whole thing with Low and High reversed.

This is what I suggested, but my way works on all tilesets; while it is not quite so seamless, it does work :P




Sep 6 2008, 11:34 am The Great Yam Post #16



If you are willing to spend some time on it, you can use a coordinate grid to program in the tiles that the unit is not supposed to go to and move them back. IE, tile 56, 56 is part of the cliff wall, so you move it back to a water tile such as 55,56 or kill it.



None.

Sep 6 2008, 12:03 pm Vi3t-X Post #17



Using NudeRaider's idea:

Locations are centered on the various "ships".
Triggers involve moving a burrowed zergling to the location in which the "ship" is located.
Normally, this is impossible, as zerglings cannot be on water (normally...)
Zergling gets detected in location, kill ship.

However, this may backfire, I haven't tested it myself, but it is possible that with usage of multiple ships:

Via hyper triggers, the location moves too quickly and either
A: Misses the ship death target
B: Kills some random ship



None.

Sep 6 2008, 6:00 pm NudeRaider Post #18

We can't explain the universe, just describe it; and we don't know whether our theories are true, we just know they're not wrong. >Harald Lesch

Following my method, when he has multiple ships of the same type per player then he needs some cycling system which constantly causes deselect. So this is really only an option for a computer player.

I have no idea how it may miss the target or kill random ships. It won't do it if you set it up properly.


If it just so happens that human players can control multiple shps of the same type then you will need to use the high/low elevation trick mentioned. If you have no other high elevation (like temple terrain) then this would be the method of choice, because you'd only need a single location.




Sep 6 2008, 6:02 pm Falkoner Post #19



Quote
The most seamless ship crash system can be implemented on the Snow tileset, which has two different Water elevations. Simply make a river using Water in the low elevation and then use a map editor that can edit by tile to use the shore tiles from the High Water elevation to replace the shore tiles near the regular Water. Create a location that covers the whole river that only applies to "High Air" and always kill any units in that location. If you would like this to also apply to a river in the High Water level, simply repeat the whole thing with Low and High reversed.

I'm still not certain this would work on multiple units, if you center a location on a unit inside a high-air only location, and there's other units not on high ground, will it center on them?



None.

Sep 6 2008, 6:04 pm NudeRaider Post #20

We can't explain the universe, just describe it; and we don't know whether our theories are true, we just know they're not wrong. >Harald Lesch

Quote from Falkoner
Quote
The most seamless ship crash system can be implemented on the Snow tileset, which has two different Water elevations. Simply make a river using Water in the low elevation and then use a map editor that can edit by tile to use the shore tiles from the High Water elevation to replace the shore tiles near the regular Water. Create a location that covers the whole river that only applies to "High Air" and always kill any units in that location. If you would like this to also apply to a river in the High Water level, simply repeat the whole thing with Low and High reversed.

I'm still not certain this would work on multiple units, if you center a location on a unit inside a high-air only location, and there's other units not on high ground, will it center on them?
No, it will only center on the units inside the location. Units with the wrong elevation are not inside the location.




Options
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[10:09 pm]
Ultraviolet -- let's fucking go on a madmen rage bruh
[10:01 pm]
Vrael -- Alright fucks its time for cake and violence
[2024-5-07. : 7:47 pm]
Ultraviolet -- Yeah, I suppose there's something to that
[2024-5-06. : 5:02 am]
Oh_Man -- whereas just "press X to get 50 health back" is pretty mindless
[2024-5-06. : 5:02 am]
Oh_Man -- because it adds anotherr level of player decision-making where u dont wanna walk too far away from the medic or u lose healing value
[2024-5-06. : 5:01 am]
Oh_Man -- initially I thought it was weird why is he still using the basic pre-EUD medic healing system, but it's actually genius
[2024-5-06. : 3:04 am]
Ultraviolet -- Vrael
Vrael shouted: I almost had a heart attack just thinking about calculating all the offsets it would take to do that kind of stuff
With the modern EUD editors, I don't think they're calculating nearly as many offsets as you might imagine. Still some fancy ass work that I'm sure took a ton of effort
[2024-5-06. : 12:51 am]
Oh_Man -- definitely EUD
[2024-5-05. : 9:35 pm]
Vrael -- I almost had a heart attack just thinking about calculating all the offsets it would take to do that kind of stuff
[2024-5-05. : 9:35 pm]
Vrael -- that is insane
Please log in to shout.


Members Online: jun3hong, DiearAnother