Page MenuHomeWildfire Games

allows Healers to be ejectedOnDestroy from ships
ClosedPublic

Authored by mimo on Dec 12 2017, 9:30 PM.

Details

Summary

I think healers were forgotten when EjectClassesOnDestroy was introduced.

Test Plan

Check if you agree with the change.

Diff Detail

Repository
rP 0 A.D. Public Repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

mimo created this revision.Dec 12 2017, 9:30 PM
bb added a subscriber: bb.Dec 12 2017, 9:35 PM
bb added inline comments.
binaries/data/mods/public/simulation/templates/template_unit_mechanical_ship_bireme.xml
40 ↗(On Diff #4753)

and why aren't traders then added? maybe "support" (or support+Unit whatever) is more what we want

(Actually have no idea what we actually want, simple yelling)

IMO ships should eject everything on destroy. To only eject some unit types is a hidden mechanic that's not intuitive or easy for the player to figure out, which has little effect on gameplay except when the player expected things to be ejected but they weren't.

mimo added a comment.Dec 12 2017, 9:46 PM

The original goal was to allow units which could have swimmed to be rescued. So for me, not siege, nor elephant
cav is a bit special, the horse should be lost while the man could escape -> by choice it was not rescued
trader is the same: it could be able to swim, but its goods should be lost -> by choice it was not rescued
but healers were forgotten (i'm pretty confident because i wrote that code some years ago), but i don't see any reason to not rescue them.

Of course, other choices would be possible.

Horses can swim. Anyway it only ejects the units if the ship is already at the shore, i.e. when any unit including siege could have just ungarrisoned normally, so it's hard to make a case that they would have to swim.

mimo added a comment.Dec 12 2017, 9:50 PM

IMO ships should eject everything on destroy. To only eject some unit types is a hidden mechanic that's not intuitive or easy for the player to figure out, which has little effect on gameplay except when the player expected things to be ejected but they weren't.

A recurrent discussion, in plenty of tickets. IMO it's to the player to not force its chance and try to transport valuable things under enemy fire when it is already damaged, or he has to pay the price if he fails. So the choices are rather between destroying everything, or as done now rescueing only part of them.

mimo added a comment.Dec 12 2017, 9:52 PM

Horses can swim. Anyway it only ejects the units if the ship is already at the shore, i.e. when any unit including siege could have just ungarrisoned normally, so it's hard to make a case that they would have to swim.

No it eject units if he can find a place at ejection distance in shallow water, even if the ship is in deep water.

But you could also manually ungarrison siege into shallow water in that situation, right? Also, it's questionable how many people at the time could actually swim. Particularly, a hoplite in armor would have probably drowned even if he knew how to swim. The more important point is that no unspoiled player is going to expect this behavior or have any idea what happened when some of his units disappeared. If there's a ship with a mix of infantry and cavalry, and he's used to infantry automatically ungarrisoning when ships sink, he's more likely to assume there wasn't enough space to ungarrison or the ship wasn't close enough to shore, than to assume there is some special rule that cavalry can't swim.

temple added a subscriber: temple.Dec 12 2017, 10:20 PM

I've said my piece before, e.g. at D1039, that if units can ungarrison then they should be able to eject too, so we should get rid of EjectClassesOnDestroy and PickSpawnPointBothPass. Adding healers is a tiny step in the right direction.

In D1147#45986, @mimo wrote:

No it eject units if he can find a place at ejection distance in shallow water, even if the ship is in deep water.

On most maps there's no overlap in passability classes so all the units die.

Vulcan added a subscriber: Vulcan.Dec 12 2017, 11:18 PM

Build failure - The Moirai have given mortals hearts that can endure.

Executing section Default...
Executing section Source...
Executing section JS...
elexis added a subscriber: elexis.Dec 24 2017, 8:58 PM

I guess there is no reason to not commit or abandon this, as the discussion above is only relevant for the removal patch.
And I guess of these two options noone is against the commit.

bb accepted this revision.Dec 25 2017, 6:06 PM
This revision is now accepted and ready to land.Dec 25 2017, 6:06 PM
This revision was automatically updated to reflect the committed changes.