Psionics | Replacement | |||||
1 | Discharge Cell | Discharges magazine in currently carried weapon | If there is a weapon in hand | set ammo count to 0 | ||
2 | Fire Weapon | Forces weapon to fire multiple times randomly | If there is a weapon in hand | "Fire three snap shots | or two autoshots randomly as if CQB happened." | |
3 | Shut Down Electronics | "For robotic enemies or enemies with robotic prosthetics | shut them down" | "If the unit is a cyberdisk | Sectopod or Floater" | "255 stun damage" |
4 | Overload Explosives | Set off carried explosives on enemy | "If the enemy has a grenade | stun bomb or blaster bomb" | "Explode explosive" | |
5 | Open Door | "Alien door" | "If it's an alien door" | Open it | ||
6 | Overload Electronics | "Explode Alien consoles and power sources" | If it's a alien navigation or power source | explode it immediately |
I've actually toyed around with a similar idea while implementing the EU2012 skills.
Some of the things you describe (set ammo count to 0, check for weapon in hand, check for unit type, apply stun damage) can already be done via ModScripts.
Most of the other things you describe would require changes to the codebase. When it comes to changing the source code, I am most of the time in favour of not implementing a specific feature, but enabling modders to implement such a feature by creating the needed parts.
Hmm Yankes & Meridian will know in detail but my guess would be the following things would require code changes and could not be done via ModScript today:
- Force a unit to fire
- Force explosions (at position, of items)
- With the exception of grenades which already exist in the BattleScape, which can be detonated by manipulating the fuse (via Script).
- Open a door without the player opening it manually
- Check the complete inventory for an item (AFAIK we can only check left and right hand, right now)
If done in a generalized way and integrating with the ModScripts & RuleSets? Sure.
You might want to talk to Meridian and Yankes though, before doing any major work on the OXCE code base.