Swinkscalibur
Prince
This module is strictly in the planning phase but a lot of the details and problems have been worked out. I am releasing the plan to enlist feedback and to hopefully convince Valkrionn to add the few code mechanics necessary (some workarounds could still be possible if he stubbornly declines )
Without further ado, the details:
Purpose, Lore and Availability:
Implementation:
Future Possibilities:
Required Code Changes:
Without further ado, the details:
Purpose, Lore and Availability:
Spoiler :
- Purpose: To add a new "layer" of "depth" to the strategy of RifE, by incorperating the ability to develop an underground network of tunnels and improvements. Units will be given the capability of moving within these tunnels unhindered by the world above.
- Lore: During the ages past, including the Age of Ice, the dwarves made their homes in the heart of the earth. They were experts at mining and built networks of tunnels the world over. Since then some of these tunnels have gone into disrepair or have been lost to history. Who knows? They may yet be rediscovered.
- Availability:
- This mechanic will be available to all units with the Dwarven racial promotion.
- The Archos as a civ have a lot of experience underground as well. They will be able to enter tunnels in their capital and crawl out wherever they want.
- The Mechanos as a civ have gain access to the underground with the tech Engineering.
- Any unit with the promotion "Tunnel Expert" can gain access to the underground.
- Units with the ability to enter the underground may do so through a mine or a dwarven improvement.
Implementation:
Spoiler :
- Tunnels - will be represented as tile features. They will not replace roads and do not connect resources. They cannot be built directly but rather spread passively from existing tunnels or as they are "discovered".
- Spells and Abilities
- Enter Tunnels - Requires one of the above availabilities to be true. Adds "Underground" promotion. Transforms the unit type to UNDERGROUND_UNIT, preserves name and art of the original unit (using sdToolKit).
- Exit Tunnels - Requires being underground and on a mine or dwarven improvement. Removes "Underground" promotion returns the unit type to the type before going underground (again using stored data from the sdToolKit)
- Divine Tunnels - (spell) replaces Earth's Boosom (which has art issues). Just like Bloom, but "discovers" (creates) tunnels on the tile (same non-improved requirement). (2 turn delay)
- Discover Tunnels - same as Divine Tunnels, but its an ability, requires the "Tunnel Expert" promotion, costs 100 gold and takes 5 turns.
- Connect Tunnels - same as Discover Tunnels, but only requires no tunnels or destroyed tunnels and a mine or dwarven improvement on the tile. Costs 20 gold.
- Tremor - Earth II/Fire II spell, requires the tech Elementalism and does small AoE damage (flying units immune) and destroys all tunnels (creates a destroyed tunnel feature, so tunnels can't be re-spread) in a range of 1, with the exception that it does more damage with a volcano in range (including to flying units).
- Repair Tunnels - Requires "Tunnel Expert" repairs destroyed tunnels. Costs 120 gold and takes 6 turns.
- Promotions
- Underground - autoacquired by "Underground" unit. Disables casting while underground.
- Underground Worker - requires a Dwarven worker to go underground. Allows building the "Underhome" improvement.
- Lost in Tunnel - gained randomly by units underground. 33% chance to wear off each turn, unit is held.
- Tunnel Expert (Dwarven) - requires the Dwarven racial, the tech Construction and a unit of level 3. Decreases negative effects underground, +20 to workrate, available to all units.
- Tunnel Expert (general) - requires the tech Engineering and a unit of level 4. Decreases negative effects underground, +20 to workrate.
- Ground Shifter - Autoaquired with Fire II and Earth II, requires tech Elementalism. Allows the spell "Tremor"
- Improvements
- A new line of upgrading improvement buildable by Dwarven workers in peaks (can build underhomes).
- Underhomes grant +1 and upgrade to Under-villages (30 turns)
- Under-villages provide +2 and upgrade to Under-towns (30 turns)
- Under-towns provide +2 and +1
- Underground Units - will be invisible to all players but the owner, through a new invisibility, "INVISIBLE_UNDERGROUND." (The units will even be invisible to each other, representing the maze-like nature of tunnels). Units underground will also be prevented from attacking and must move only on tiles with tunnels (through FeatureNative).
- Balancing Effects - to balance the strength and safety of the underground, being underground will carry a small chance per turn for negative effects:
- Getting lost (temporarily held)
- Being caught in a collapse (unit damaged by physical damage)
- Getting lost forever or dying from a collapse (death).
- Art - since all of the above is representing things under the surface, no art is added. This should help allow the tunnel feature to co-exist on tiles which already have surface features.
- Modularity - given a few small base code changes (outlined later) this should be completely modular.
Future Possibilities:
Spoiler :
- Inability to See Surface Units - depending on feedback I may also make underground units unable to see surface units (by adding another invisibility "INVISIBLE_SURFACE", which can only be seen by units not underground). This would be done in order to prevent scouting in perfect safety as the underground unit wouldn't be able to see things surface units can't.
- Events - a set of events that are the direct effect of tunnels or affect tunnels. Could modify some existing events as well.
- Mapscripts - depending on the reception of this module, perhaps the base map scripts of Erebus Continent and World of Erebus could be modified to include a few base tunnels as well as an un-owned ancient dwarven mine or two.
- New Civ - a new civ (likely dwarven/but not necessarily) which is given the synergy with this mechanic (instead of Khazad).
Required Code Changes:
Spoiler :
- From Xienwolf: "Ideally you would have a <bOverlap> tag in the XML or similar to restrict which features can share location with others (ie - don't have a graphic). This same tag would be used to ignore the graphic lines for that entry."