Wishlist:
- Shieldhit callin with the arguments stated in the thread
- A shield type(or ability to do in lua) which has predictable cost/projectile like the destructor shield and the repulsion behaviour of replellers. This would be done by paying a certain initial cost which then lets the projectile be replelled for free for the duration of it's time inside the shield.
- Shields which do not repel shots shot inside them but do repel shots which where shot out and re-entered.
- The ability to disable sections of shield. This would be used for directional shields and the creation of supcomm style shield melding.
- Shield melding.
- The ability to turn off wobbling and deformation.
Most of these wishes could be fullfilled with a shield hit calling. It has arguments (ShieldID, AttackerID, damage, collision position, weaponID) and returns whether the shield is allowed to destroy/repel the projectile. The callin would trigger even if the shield does not have enough charge to normally stop the projectile, like UnitPreDamaged.
Resizing shields and disabling sections of them would be nice but I would preffer a quick addition of shieldHit than a fully fledged new system. If you're going with a new system resizing, disabling segments (maybe defined as intersections of spheres or planes?) and different shapes would be really nifty.
Would the impact deformation and wobble be purely graphical? Like water effects?
I don't think shield linking should be coded into the engine at all. Linking algorithms are bound to be game specific so there is no point hardcoding anything about it into the engine.CA has a functional shield link system that would be vastly improved with a shield hit callin.
Disabling segments with lua would improve the linking options slightly though if it is impractical to expose to lua at least let lua define shields that are 'overlapping'. Overlapping means that projectiles inside a shield would not be affected by shields that are overlapping with the shield they are inside.
The plan is to have a shield which can look like a personal shield
What is a personal shield? Just a really small area shield? If it's a Starcarft style shield don't bother with it as it is very luaable.