Dwarves need to dig tunnels and burst into the enemy's base unnoticed
(Nydus canals anyone?)
Thanks for the idea!
My first thought on this was "Impossible" with the current engines available. But on second thought, it might actually be quite possible!
You see, the Glest (GAE and MG engines too) maps are one-layer only.
You have two "fields" on classic Glest and MG, plus three water-related fields on GAE.
The two classic fields are "land" (called "surface" on GAE) an "air".
Now, air units defined as such on their respective XMLs have the ability to "walk" past unwalkable zones (like big rocks, water and such).
Now an important side-note: there is a somewhat little known limmitation: the <height value="<number>" /> tag in the unit's parameters. Classic Magitech's Magic faction's Archmage Tower has this number set to 11. Thus you can easily see the Magic dragons circling around the tower, not going through it! Now, on the same techtree, Tech's Defense Twer has a height value of only 6 and you might see the Airship's bottom gun going through the said tower at times - the airship, like the dragon go "through" the Defense Tower but not the Archmage tower... I did some testing a while back (but forgot what is the actual "too high to fly over" value) and indeed, if you give the Defense Tower a height value of 11 (in its XML), the air units will circle around it as they do with the Archmage Tower!Now, the air units themselves also have a <height value> but this seemingly serves yet another game mechanics purpose: defining the unit's center, where it will take in a projectile fired at it - test e.g. with the Magic Behemoth.
It does not affect how high they fly, just their height from bottom to top... The height at which an air unit "flies" is defined by its 3D model! (I initiially had my yet unreleased Skyship "fly" at ground zero
). There is, at least in Blender, a kind of ground zero line; move your unit's 3D model object above it (in the modeller software. e.g. Blender) and it will appear "flying" ingame, even if it doesn't actually is defined as an "air" unit.
Another side-note: Now I think about it, there was a bug a good while back (maybe as far as in the classic Glest engine, before its final version, but not sure) that made ground units appear over the groundline... Seems there are several things to consider here...Anyhow... back to tunnels:
1. I can morph this kind of special dwarven unit to one I modelled
bellow ground zero;
2. I send it walking to wherever I want to pop it out of the ground - it will still be bound by the
unwalkable parts of the map but ... it's a start...
;
3. I then morph it out at where I want it.
Problem 1: It will still be seen and attackable (and able to attack) by enemy units - in classic Glest, MG and current GAE - though "cloaking" is in current development on the later. So... GAE could fix it .
(this current version is being developpend all three engines compatible, i.e. using only the classic Glest capabilities. But John.D.H. toghether with Wciow (Dwarves original author) and kind of myself, is developping a GAE specific Dwarves faction, in the context of his Project Red mod. Check it out! )Problem 2: Specific paths, independent of the actual surface-map would require a different map. Though some enhancements in GAE might, eventually, serve as a ground to go around that issue. Stuff in development such as Walls (on which the units might be able to walk on and which (the walls) might be attacked from ground zero (
a different ground level), ...).
Possible alternate sollution or not? : GAE's teleport ability might be used to make them disappear from somewhere to somewhere else, but I think that would be instant - unless there is some kind of timer that can be added to it...? Maybe some sort of "casting time" - I'm not familiar with the Teleport functionality.
Well... long rant just to get my thoughts on these "recorded" for future reference.
And to let you know: not any time soon, I'm afraid. At least on this release. Will give the heads up to John.D.H., maybe he can sort it out sooner than later...?
Thanks again and cheers!