Turret Effects: I don‘t always miss, but when I do...I do it with style. | EVE Online

Turret Effects: I don‘t always miss, but when I do...I do it with style.

2011-11-18 - 发布者 CCP Choloepus

Greetings, denizens of New Eden!

I'm CCP Choloepus, one of the code monkeys in the Core Graphics team, and I'd like to talk about the turrets which adorn your wonderful space vessels. As some of you may have noticed on Singularity, the effects from these turrets will soon visibly fail to hit your target when the server decides that the shot went astray.

Click to enlarge

This feature has been a long time coming. It provides immediate and easily digested feedback on how combat is going, especially in larger fights when your combat log is scrolling at a furious pace, and I hope you find that it looks both exciting and visually interesting whilst doing so.

That said, we're keeping the scope of this feature small for now. Here's the rundown on what it doesn't do:

  • The first shot when you start your turrets cycling will always appear to hit. We're aware that this is a silly exception to the behaviour, but it makes the feature more robust in the face of latency and there are some oddities in turret effect timing I bumped into whilst attempting a fix. We'll definitely be working on improving this.
  • Shots which miss are picking a point to aim at based on the bounding sphere of the target, which means misses might look a little too regular and vary quite a lot in how widely they miss the model. Again, this is a case where we are working towards better solutions and we hope for relatively simple but effective improvements.
  • Missiles aren't affected. The mechanics of (and code for) missile combat is very much a different kettle of squamous betentacled beasties.
  • Only shots fired by or at your ship will get this treatment. The larger fleet battle around you will look like the current situation on TQ.

Click to enlarge

That last one is a biggy, and unfortunately we won't have a better solution in place for the Winter expansion. The reason for it is pretty simple: we're only using information that the server is already sending to your client to adjust the turret effects. This problem is hard to solve in a manner we're really happy with.

We could make any shots which do not involve your ship miss or hit on the flip of a coin, but if it's completely random this conveys no information. Worse, it pretends to be useful whilst actually providing misinformation, so we're not keen on that.

We could send information about every shot to everyone in a fleet battle, but this would be a huge increase to server load and communication bandwidth to the point where Team Gridlock would (quite rightly) fire me into the sun for even suggesting it.

We could do some rough simulation of approximate miss chance client-side, but there are so many factors that could affect how your turrets perform: skills, relative velocity, hull bonuses, signature radius/resolution, turret type, ammunition/lenses, tracking enhancers/computers, tracking links, tracking scripts, rigs, implants, boosters, target painters, wormhole environmental effects... you get the idea. Some of these are known to your client, others are not and should not be available. This is probably the best avenue for continued development of the feature, but it will involve a lot more investigation to make sure we're doing something that is reasonable, useful, and light on the client.

With these constraints in mind, this winter we aim to deliver a solid lack-of-hits for your own ship and targets, and we hope that you enjoy this.

Click to enlarge

An early version is live on the test server at the moment if you'd like to see for yourselves, or you can wait for the expansion to bring this to TQ. But in either case please leave any feedback, suggestions, and lamentation about the state of missiles in the comment thread!

May your targets always aim poorly,

-CCP Choloepus

New to EVE? Start your 14-day free trial today.
Returning pilot? Visit Account Management for the latest offers and promotions.