FAForever / fa

Lua code for FAF
221 stars 228 forks source link

Feature: Allow intel rings to be seen by everyone of a team #2654

Open shalkya opened 5 years ago

shalkya commented 5 years ago

http://forums.faforever.com/viewtopic.php?f=41&t=13350

would enhance teamplay possibilities.

at very least making it for SMD, would be already nice. Also maybe give the option, so people that can't run it for the whole team, can choose to see only his intel rings.

Garanas commented 1 year ago

This requires an engine patch and was previously considered to be almost impossible to do. @KionX can you confirm that?

KionX commented 1 year ago

Or an engine patch or https://forums.faforever.com/viewtopic.php?f=41&t=13350.html#p169487

Garanas commented 1 year ago

What if we spawn dummy entities for units with 'reasonable worthy intel', such as radars, sonars, cruisers and command units, for each ally?

Garanas commented 1 year ago

Same for SMDs, use a dummy unit that each player owns but can't select and doesn't render a mesh or anything?

KionX commented 1 year ago

I have some developments. I'll try to patch the engine.

Garanas commented 1 year ago

👍 , that works too. If that doesn't seem feasible, we can try my approach too - it won't work when you select them, because they'd be unselectable. But it will work when you always render intel rings.

HUSSAR-mtrela commented 11 months ago

@Garanas this forum post looks like a good way to implement sharing of intel rings and defense rings. Do you agree?

I suggest we limit sharing those rings only to allied structures (radar, omni, SMD, TMD, SAM) and skip mobile units due to slower performance of computing rings on moving units.

Garanas commented 11 months ago

I disagree - there's no need to sync anything with the UI. Alliance changes are managed in the sim. The units are managed in the sim. We can keep this in the sim.

We can create an initial experiment with just the SMD - it is usually the most valuable to know. To me the approach with the dummy units is a great start, include a hook to when alliances are changed and you're good for a prototype.

Performance wise this is all fine - Cybran build drones are dummy units too for example and when approached as a dummy unit they have a little to no cost to the simulation. It would have a similar setup to [mobile factories]() where we just 'bluntly' attach the dummy units to the SMD. But instead of you owning the dummy unit, you create one for each ally. And those dummy units in turn generate the overlays.