These forums have been archived and are now read-only.

The new forums are live and can be found at https://forums.eveonline.com/

Player Features and Ideas Discussion

 
  • Topic is locked indefinitely.
12Next page
 

CCP: Check your engine for inefficient distance/trig conditions

Author
Saladinae
Pandemic Horde Inc.
Pandemic Horde
#1 - 2015-04-14 07:02:22 UTC  |  Edited by: Saladinae
(My own feauture/idea concerning your code for Drones is at end)

I've noticed that TIDI and lag are pretty extreme in this game. In my own gaming codes (WC3/Starcrafft 2 custom maps for instance) I've often managed to eliminate hoards of useless code lagging up the system, code that intuitively does NOT seem useless.

I'm going to give you two real-life examples from my own programming.


Example 1:
"If Object A and Object B are more than K distance apart then..."

"distance" is calculated conventionally in 3 dimensions by the formula SQRT{ (x2 - x1)^2 + (y2 - y1)^2 + (z2 - z1)^2}

The problem here is the Square Root function, which runs an analytic (calculus-based) Newton–Raphson algorithm. Not only does this algorithm burn tons of computing power, but it's also UNNECESSARY.

We don't need to know the actual distance between these objects by executing the SQRT function, we only need to compare the sum of the squares against K^2. The boolean value (truth value) of the condition can be ascertained (for exponential less computing power!) by this code instead:

If K^2 > (x2 - x1)^2 + (y2 - y1)^2 + (z2 - z1)^2 is true, then [insert purpose of code].

All distances between objects on grid should be saved in their unresolved form (x2 - x1)^2 + (y2 - y1)^2 + (z2 - z1)^2 in the array holding those values. Even if an element of the array must be accessed to return the actual distance, just write your own function that estimates the square root to a single decimal place, this alone will save tons of more computing power! I very much doubt that EvE Online requires an accuracy 10-50 decimal places.


Example 2: Is the Distance Array full of redundant values?

There are n = 5 ships on grid: A, B, C, D , E

Is your array storing the distances between these ships a square matrix (the most inefficient matrix imaginable for this task?)

x A B C D E
A d1 d2 d3 d4 d5

B d6 d7 d8 d9 d10

C d11 12 13 d14 d15

D d16 17 18 19 d20

E d21 22 23 24 d25

Aside from the obvious that the distance from any ship to itself is zero (redundant and useless information), take note that the distance from A to C, d3, is also equal to d11, the distance from C to A. In fact, more than half of these values are redundant.

The above matrix requires n^2 calculations (5^2 = 25 calculations in this case), whereas only 4 + 3 + 2 + 1 = 10 calculations are needed, which is triangular number in the form of (n^2 + n)/2, for (n-1) it's (n^2 - n)/2 calculations. Therefore the number of calculations per game tick has been reduced by more than a half.



The moral of the story here is that any time there is a native function that uses a partial taylor series (trig functions for instance) or analytic function (pretty much any function that yields an irrational number) CHECK to ensure whether or not you actually need that irrational number output from the function to determine the truth value of the condition.

Make sure you don't have redundant entries in your array. A struct referencing a series of linear arrays of decreasing size is better suited than a square array in the above example. Check for redundancies!


I felt the need to write this thread because it is GLARINGLY obvious that your code (on grid) needs some serious efficiency overhauls. Simply using the lowest (tolerable) floating point alone can have tremendous results.




My own feauture/idea concerning your code for Drones: Drone Clouds.

Suppose there are N drones deployed by a ship. Instead of treating them as 5 individual objects, they should be treated as a single cloud. The Health/DPS of the cloud is scaled by N. Every time the health decreases by (1/N), the dps also decreases by (1/N) and a drone is permanently destroyed (N decreases by 1).

1: The center of the cloud is the reference point for determining distances and direction.

2: When the drones are idle about the master ship, the master ship is the reference point.

3: When the drones reach a target, if the speed of their target does not exceed their own speed, their position is ANCHORED to the target, and thus the target becomes the reference point for these drones.

4: If the target's speed suddenly exceeds the drone cloud's speed, the cloud unanchors regaining its own reference point.

5: If two or more drones clouds are anchored to an object (regardless of type of drones) they are adjoined to a Super-Cloud, greatly reducing the amount of reference points on grid.

6: Drone Clouds move at the speed of the slowest drone in the cloud --- this would be a balancing problem, but it's necessary to implement this idea. The drones need serious re balancing anyway, so when you get to them, this is a good time to include this change. It may also be possible to use the "average" speed and "average dps" of the drones. Consider this carefully if you elect to use the Drone Cloud idea.

Winmatar > Everything else

Saladinae
Pandemic Horde Inc.
Pandemic Horde
#2 - 2015-04-14 07:59:01 UTC  |  Edited by: Saladinae
So, what do each of these Drone Cloud parameters accomplish?

Parameter 1 will reduce the amount of added references by more than 92-94% assuming a standard Supercarrier: Carrier: Subcap ratio in a large sov battle. The difference between 92% and 94% may not sound like much, but consider this:

1/13 = 92%, 1/17 = 94%, 13/17 ~=~ 3/4, that's an additional 1/4 reduction in reference points.

Parameter 2 ensures that there isn't mass lag when ships initially deploy their drones (or aren't using them). The clouds are created in an object container for the grid, but the distances are not yet being crunched into the array since any reference to their position is redirected to their master ship's reference.

Parameter 3 provides a way of reducing the increased points of reference as quick as possible without changing game balance. The drones are anchored until the are recalled or sent to another target (attacker's decision)

Parameter 4: Allows drone clouds to unanchor if a pilot decides to outrun drones (defender's decision). Obviously the drone cloud cannot remained anchored. This would be a good time to use the "max range" of drones. Max drone range should be irrelevant in damage calculations if they are anchored to the target.

Parameter 5: Let's say there are 500 ships, they deploy their drones and send them at a target (the primary target!) such as a titan. That means 500 Drone Clouds are initially created, creating 500 points of reference. Even when they reach their target and become anchored to the target, there are still 500 point references that must be remapped to the Target ship. The Supercloud reduces this to a single point of reference. This Supercloud must be dynamic since individual pilots can recall their drones.


6: Drone Clouds move at the speed of the slowest drone in the cloud OR the average speed of the drones in the cloud.

There is a critical reason for this: If the drones can move independent and act independent of each other (how they game renders them graphically is irrelevant to how the code is written) then they are in fact independent from each other, and thus not a cloud, as each type of drone would need its own cloud (Warrior II drones in one cloud, Webbing Drones in another cloud).

However, there also another reason for this, the reason which truly inspired it:

Without a Supercloud a bunch of should-be-banned-clowns could deploy 5-25 different types of drones to intentionally recreate the lag this new system was designed solve.

Winmatar > Everything else

Cade Windstalker
#3 - 2015-04-14 08:12:19 UTC
Regarding performance, the physical simulation of the game is a relatively tiny portion of the game's processor load, thanks in part to quad trees and the fact that all physics in Eve is run with spheres. Go back and dig into some of the videos released around TiDi's inception along with Brain in a Box for what the main causes of load on the server are, but this isn't one of them.

Regarding Drones, drone clouds would have a major impact on the performance and balance of drones as a whole and as well as any flight that uses a mix of drone types.

The major skill element of drones is micro-managing individual drones that take aggro, which doesn't work with your cloud idea since if you're tracking individual drone HP and other characteristics then the performance increase of condensing drones into a cloud goes out the window. Plus the major source of DPS lost from drones is as a result of the activation of their microwarpdrives and the subsequent drop in applied damage due to tracking. This only works if individual drones are kept track of, since the range and falloff for drones is also small enough that those at the front of a chasing swarm have more chance to hit than those at the back.

Basically while this would likely result in a significant performance increase it also acts as a major buff to drones as a weapon system, while simultaneously removing the micro that characterizes them currently and acts as the only real element of skill involved in their use.
Saladinae
Pandemic Horde Inc.
Pandemic Horde
#4 - 2015-04-14 15:38:28 UTC
Cade Windstalker wrote:
Regarding performance, the physical simulation of the game is a relatively tiny portion of the game's processor load, thanks in part to quad trees and the fact that all physics in Eve is run with spheres. Go back and dig into some of the videos released around TiDi's inception along with Brain in a Box for what the main causes of load on the server are, but this isn't one of them.

Regarding Drones, drone clouds would have a major impact on the performance and balance of drones as a whole and as well as any flight that uses a mix of drone types.

The major skill element of drones is micro-managing individual drones that take aggro, which doesn't work with your cloud idea since if you're tracking individual drone HP and other characteristics then the performance increase of condensing drones into a cloud goes out the window. Plus the major source of DPS lost from drones is as a result of the activation of their microwarpdrives and the subsequent drop in applied damage due to tracking. This only works if individual drones are kept track of, since the range and falloff for drones is also small enough that those at the front of a chasing swarm have more chance to hit than those at the back.

Basically while this would likely result in a significant performance increase it also acts as a major buff to drones as a weapon system, while simultaneously removing the micro that characterizes them currently and acts as the only real element of skill involved in their use.


Like I said, when drones are rebalanced, this is the foundation from which it should be built. We don't mix/split turrets on ships and expect maximum efficiency, therefore we shouldn't mix drones and expect max efficiency.

Winmatar > Everything else

Leto Aramaus
Frog Team Four
Of Essence
#5 - 2015-04-14 16:11:59 UTC
I'm all for checking for any code inefficiencies, always looking for ways to improve. For sure.

But,

-1 to the drone clouds idea.

Sure it may reduce load on servers, but it's at the expense of functionality and gameplay. As stated above, individual drone micro-management is a skill in itself, and being able to split drones to different targets is currently something that can be done. Maybe it rarely is, but it still can be, and removing that ability is a reduction in features.

Definitely -1
Corraidhin Farsaidh
Federal Navy Academy
Gallente Federation
#6 - 2015-04-14 16:22:16 UTC
Leto Aramaus wrote:
... being able to split drones to different targets is currently something that can be done. Maybe it rarely is...
..

I do it all the time, I doubt I'm alone in this
Saladinae
Pandemic Horde Inc.
Pandemic Horde
#7 - 2015-04-14 16:33:48 UTC  |  Edited by: Saladinae
Leto Aramaus wrote:
I'm all for checking for any code inefficiencies, always looking for ways to improve. For sure.

But,

-1 to the drone clouds idea.

Sure it may reduce load on servers, but it's at the expense of functionality and gameplay. As stated above, individual drone micro-management is a skill in itself, and being able to split drones to different targets is currently something that can be done. Maybe it rarely is, but it still can be, and removing that ability is a reduction in features.

Definitely -1


Perhaps it could be a system reserved for Super Nodes. The current drone system remains in effect until the fight is moved to a supernode.

A little icon (like jump fatigue, aggression icons) would signify this. There would also need to be a transition code between the node switch putting already deployed into their respective clouds.

I very much doubt the things you have mentioned would have any significance in a large sov battle.

Winmatar > Everything else

Leto Aramaus
Frog Team Four
Of Essence
#8 - 2015-04-14 16:59:26 UTC
Saladinae wrote:


Perhaps it could be a system reserved for Super Nodes. The current drone system remains in effect until the fight is moved to a supernode.

A little icon (like jump fatigue, aggression icons) would signify this. There would also need to be a transition code between the node switch putting already deployed into their respective clouds.

I very much doubt the things you have mentioned would have any significance in a large sov battle.


I'm sorry but this is just not a good way to reduce server load. This dynamic idea makes it even worse.

Let's say a 0.0 system has a big battle going on, and get's upgraded to a "super node", so then the server says "All drones in this system are now "clouds" and can't be split... Maybe this reduces some load and lag, but

But what if another player is on a different grid, not part of the battle but in the same system? So now his drones are forced to be a cloud as well? When does the "super node" rule stop applying?

No. No. and No.

It's a noble idea, attempting to reduce lag is always a good cause. But this should never be done.
Nariya Kentaya
Ministry of War
Amarr Empire
#9 - 2015-04-14 18:34:09 UTC  |  Edited by: ISD Ezwal
Leto Aramaus wrote:
I'm all for checking for any code inefficiencies, always looking for ways to improve. For sure.

But,

-1 to the drone clouds idea.

Sure it may reduce load on servers, but it's at the expense of functionality and gameplay. As stated above, individual drone micro-management is a skill in itself, and being able to split drones to different targets is currently something that can be done. Maybe it rarely is, but it still can be, and removing that ability is a reduction in features.

Definitely -1

heck, i didnt like them when they reduced the number of drones ships couldd eploy but "buffed the individual drones HP" cause im sorry, if im in pvp in lowsec and my drones are getting popped in 1 shot by a cruiser, they are still getting popped in 1-shot by a cruiser after their "HP upgrade" except now i have less of them out at once so i lose DPS quicker

but whatever, CCP will do what they want, and they prolly like the idea fo drone clouds,
*Snip* Please refrain from personal attacks. ISD Ezwal.
Nevyn Auscent
Broke Sauce
#10 - 2015-04-14 19:34:46 UTC
Actually if you follow CCP development videos from even BEFORE Rise & Fozzie, they have been discussing the idea of drone clouds for server performance for a long time. Also stop using light drones vs a cruiser then wondering why they are getting insti popped, and train your drone skills better. And use a drone ship for more HP's on them. If you are doing all of the above then you are lying about one shotted by a cruiser.
James Baboli
Warp to Pharmacy
#11 - 2015-04-14 21:46:05 UTC
Lets see:

Optimization of code: I really hope they are already doing something like this, as it seems like just common sense, and since CCP is already pushing the edge of what hardware can be bought without exorbitant costs for prototype and pre-production hardware and we still have these issues, it really should have happened before now if it hasn't yet.

Drone cloud: Not so cool, because what happens when one drone dies and you have been kiting away from your cloud and then you drop another, and various other edge cases? That's part of the meta for ishtars right now, and they are used in fights large and small, and using 3 drones on deployment and then dropping 2 more to pull your range closer again would make them OP, similar to MJDs on the drone.

One shotted drones: Possible, but unlikely unless you have bad drone skills and unbonused drones, or they take the radical step of tackling your drones rather than you.

Talking more,

Flying crazier,

And drinking more

Making battleships worth the warp

Cade Windstalker
#12 - 2015-04-14 21:57:15 UTC
Saladinae wrote:
Like I said, when drones are rebalanced, this is the foundation from which it should be built. We don't mix/split turrets on ships and expect maximum efficiency, therefore we shouldn't mix drones and expect max efficiency.


Mixed drones on a ship is rarely optimal either except in cases of 75 bandwidth, and even then only against large targets. Drones aren't just combat modules though, they include utility and support drones as well. Personally I frequently use 4 Lights and a single Large webber drone in missions. It's no where near as effective as a full web but it lets my long range guns track close targets significantly better and allows me to catch fast targets with my short range guns.

You can't simply point to guns and say that drones should follow the same set of rules. They're different systems with different gameplay and balance requirements.

If drones were to be rebalanced and converted into a "cloud" mechanism then there would need to be some kind of replacement for the current micro-intensive system to avoid drones simply becoming an "F1 and forget" setup, as well as allowing small ship pilots to effectively pick off drones attacking them.
Dr Cedric
Science and Trade Institute
Caldari State
#13 - 2015-04-14 22:31:14 UTC
I have absolutely no comprehension of how to write code, but Saladinae makes it much more palatable, so thanks for that.

So, if each single drone has its own set of computer-lag-inducing issues but we can reduce it by making a cloud of them, but we want to be able to manage our lag-inducing drone pets independently because thats the way it is now, why not do a little of each.

For each drone of the same type launched from a single ship, they are considered by the server as one cloud.

If we look at the 500 ships on grid for a super-fight, and each of those ships launches 5 drones each, thats 2500 points of computing for the server (right?). If instead the server counts each ship's same-type drones as a single individual cloud, that drops it back to 500 points of computing. Even if there are multiple types of drones coming out of each ship, that could still be less than 2500 points (am I making sense?)

As far as lag goes, anything less than 2500 (for this example) is good.

So, for the individual, if I launch 5 same-type drones, the server tells me that my "drone swarm" (cloud sounds... weak) does [average drone dps] x 5 damage. When a single drone gets killed, its down to [average dps] x 4, etc, etc.

For the other guy shooting my drones: he targets one of the 5 drones on his overview, and begins to shoot. The server picks which of my 5 drones is getting shot at and once it pops it pops. The swarm is now down to 4 (or 3... or whatever...)

So, is it difficult coding/computing that a group of 5 drones from my ship is behaving like one "swarm," but still maintain the ability to scoop/shoot/disable a single drone?

Cedric

Saladinae
Pandemic Horde Inc.
Pandemic Horde
#14 - 2015-04-14 22:31:15 UTC  |  Edited by: Saladinae
James Baboli wrote:
Lets see:

[b]Drone cloud: Not so cool, because what happens when one drone dies and you have been kiting away from your cloud and then you drop another, and various other edge cases?


Code: Event 1 - Drone in Cloud Dies

Action: Decrease "Number of Deployed Drones" by 1 for "Master Ship"


Event 2 - Master Ship sends "deploy drone" command.

Condition: If "Number of Deploy Drones" > 5, then

Action: Deploy Drone, and increase "Number of Deployed Drones" by 1 for "Master Ship.
Create Cloud for that drone (singleton set).

End of Code.

There problem solved. Try to name another problem.

If you had any coding experience, you'd already know that any "specialized various edge case" for drones can be solved by a logical "book" of generalized codes.

Winmatar > Everything else

Saladinae
Pandemic Horde Inc.
Pandemic Horde
#15 - 2015-04-14 22:35:20 UTC  |  Edited by: Saladinae
Dr Cedric wrote:
I have absolutely no comprehension of how to write code, but Saladinae makes it much more palatable, so thanks for that.

So, if each single drone has its own set of computer-lag-inducing issues but we can reduce it by making a cloud of them, but we want to be able to manage our lag-inducing drone pets independently because thats the way it is now, why not do a little of each.

For each drone of the same type launched from a single ship, they are considered by the server as one cloud.

If we look at the 500 ships on grid for a super-fight, and each of those ships launches 5 drones each, thats 2500 points of computing for the server (right?). If instead the server counts each ship's same-type drones as a single individual cloud, that drops it back to 500 points of computing. Even if there are multiple types of drones coming out of each ship, that could still be less than 2500 points (am I making sense?)

As far as lag goes, anything less than 2500 (for this example) is good.

So, for the individual, if I launch 5 same-type drones, the server tells me that my "drone swarm" (cloud sounds... weak) does [average drone dps] x 5 damage. When a single drone gets killed, its down to [average dps] x 4, etc, etc.

For the other guy shooting my drones: he targets one of the 5 drones on his overview, and begins to shoot. The server picks which of my 5 drones is getting shot at and once it pops it pops. The swarm is now down to 4 (or 3... or whatever...)

So, is it difficult coding/computing that a group of 5 drones from my ship is behaving like one "swarm," but still maintain the ability to scoop/shoot/disable a single drone?



Your interpretation is 100% correct. And yes, the server would random pick a drone to kill, you got that spot on. This also protects your drones from all being alphaed at once, as only one drone can die at a time, no matter how much damage the cloud takes!

And no, it's easy to scoop a single drone. The code looks like this:

Event: Master Ship selects "Scoop Drone 'X' "
Condition: If Drone Cloud is anchored

Action: Return drone 'X' to bay, decrease "drones deployed" by 1, and reevaluate vitals/stats on diminished drone cloud.

Winmatar > Everything else

Dr Cedric
Science and Trade Institute
Caldari State
#16 - 2015-04-14 22:36:12 UTC
How do you see something like this working for sentry drones? Since they maintain a certain position and their relative position to their target has an effect on their damage application?

Cedric

Saladinae
Pandemic Horde Inc.
Pandemic Horde
#17 - 2015-04-14 22:50:18 UTC  |  Edited by: Saladinae
Dr Cedric wrote:
How do you see something like this working for sentry drones? Since they maintain a certain position and their relative position to their target has an effect on their damage application?


Since they are static, all information concerning them (distance to other points of reference) would only have to be resolved upon need. Objects static to the origin of the grid (origin is (x,y,z) = (0,0,0) ) are much easier to deal with in general. They wouldn't need a cloud.

Winmatar > Everything else

Dr Cedric
Science and Trade Institute
Caldari State
#18 - 2015-04-14 23:48:15 UTC
Fun Thought Experiment:


Assumptions:
In the swarm method, the swarm is targeted, rather than individual drones
In the swarm method, excess damage rolls from one drone onto the next in line
In the swarm method, the overview continues to show all 5 drones rather than a single entry of a swarm


Situation - I am in a small fleet with a total of 5 members, each of us able to field 5 drones each, (total 25 drones)

We face off against another fleet of similar composition.

Now, the other guy wants to pop our drones in order to eliminate our DPS. The FC of the other guys has drones on overview and via some fancy standings application has color-coded the drones from each of our ships (red, orange, grey, L-Blue, Blue) to identify which ship has launched which drones (swarm or current)

He then commences to tag the drones launched from a single ship, A through E, and tells his guys to target each drone separately, one guy on one drone, so that each of the drones has a single opponent targeting it

Hypothetical A: Lets say these hypothetical drones have 45 hp each, and each of the opposing ships can create 50 DPS. In this scenario, assuming each pilot targets the appropriate drone, all 5 drones are gone by either the "swarm" mechanic or current

Hypothetical B: Same HP/drone and DPS/ship, but now, one pilot mis-targets. With the "swarm method" all of the drones should still get popped, whereas currently one drone would remain (the double targeted drone still gets blown up, but the mis-targeting ship loses its target)

Hypothetical C: Drones now have 20 HP and DPS is now 25, same targeting scheme as original. Assuming each pilot targets a different drone, all will go pop with either the swarm mechanic or the current.

Hypothetical D: Drones = 20 HP, DPS = 25. Lets throw in the wrong target again. With the current mechanic, one drone will survive. With the swarm mechanic all will die, but in this case, (assuming the damage rolls forward through the "swarm") even if there are only 4 people in the opposing fleet, the cloud of 5 drones would go pop.

So, I'm just thinking through things, but I'm seeing how this could be gamed against drone fleets. Im also seeing how a "drone HP buffer" could somehow be created depending on how the DPS mechanic carries through a single swarm.

Also, what about the times when drones are scooped, then re-deployed. They might have less HP from taking damage (thats why they were scooped) and I might want to target the crippled drone. How can I ensure that the server picks the "weakest" drone. On the other hand, what if I don't want to blow up the drones, instead I want the other guy to keep scooping one at a time. How can I ensure that my damage goes to the healthiest drone? Would fixing these situations return the aforementioned lag to drones?

Cedric

Cade Windstalker
#19 - 2015-04-15 00:15:58 UTC
Saladinae wrote:
James Baboli wrote:
Lets see:

[b]Drone cloud: Not so cool, because what happens when one drone dies and you have been kiting away from your cloud and then you drop another, and various other edge cases?


Code: Event 1 - Drone in Cloud Dies

Action: Decrease "Number of Deployed Drones" by 1 for "Master Ship"


Event 2 - Master Ship sends "deploy drone" command.

Condition: If "Number of Deploy Drones" > 5, then

Action: Deploy Drone, and increase "Number of Deployed Drones" by 1 for "Master Ship.
Create Cloud for that drone (singleton set).

End of Code.

There problem solved. Try to name another problem.

If you had any coding experience, you'd already know that any "specialized various edge case" for drones can be solved by a logical "book" of generalized codes.


That's not solving the original problem though, because you're either still tracking drones as individuals or you're assuming that anyone shooting that drone cloud is targeting the most damaged drone, which greatly simplifies targeting drones and focusing them down, which is not something drone users want.

Plus you need the ability to recall drones individually so you're firing off entity creation and destruction events as the clouds separate and merge, which are actually more expensive than maintaining entities in space, unless you're removing the ability to do this in which case that's an even bigger nerf to drones.

Plus if you're treating the drones in the swarm as individuals then you're tracking them as individual entities, they're just attached to a single in-space entity container, which eliminates a lot of your performance gains, since tracking and updating all of the individual entities is what actually drags down the server, not the drones actually being in space (especially since they're not physics enabled objects).
Saladinae
Pandemic Horde Inc.
Pandemic Horde
#20 - 2015-04-15 00:39:49 UTC  |  Edited by: Saladinae
Dr Cedric wrote:
Fun Thought Experiment:


Assumptions:
In the swarm method, the swarm is targeted, rather than individual drones
In the swarm method, excess damage rolls from one drone onto the next in line
In the swarm method, the overview continues to show all 5 drones rather than a single entry of a swarm


Situation - I am in a small fleet with a total of 5 members, each of us able to field 5 drones each, (total 25 drones)

We face off against another fleet of similar composition.

Now, the other guy wants to pop our drones in order to eliminate our DPS. The FC of the other guys has drones on overview and via some fancy standings application has color-coded the drones from each of our ships (red, orange, grey, L-Blue, Blue) to identify which ship has launched which drones (swarm or current)

He then commences to tag the drones launched from a single ship, A through E, and tells his guys to target each drone separately, one guy on one drone, so that each of the drones has a single opponent targeting it

Hypothetical A: Lets say these hypothetical drones have 45 hp each, and each of the opposing ships can create 50 DPS. In this scenario, assuming each pilot targets the appropriate drone, all 5 drones are gone by either the "swarm" mechanic or current

Hypothetical B: Same HP/drone and DPS/ship, but now, one pilot mis-targets. With the "swarm method" all of the drones should still get popped, whereas currently one drone would remain (the double targeted drone still gets blown up, but the mis-targeting ship loses its target)

Hypothetical C: Drones now have 20 HP and DPS is now 25, same targeting scheme as original. Assuming each pilot targets a different drone, all will go pop with either the swarm mechanic or the current.

Hypothetical D: Drones = 20 HP, DPS = 25. Lets throw in the wrong target again. With the current mechanic, one drone will survive. With the swarm mechanic all will die, but in this case, (assuming the damage rolls forward through the "swarm") even if there are only 4 people in the opposing fleet, the cloud of 5 drones would go pop.

So, I'm just thinking through things, but I'm seeing how this could be gamed against drone fleets. Im also seeing how a "drone HP buffer" could somehow be created depending on how the DPS mechanic carries through a single swarm.

Also, what about the times when drones are scooped, then re-deployed. They might have less HP from taking damage (thats why they were scooped) and I might want to target the crippled drone. How can I ensure that the server picks the "weakest" drone. On the other hand, what if I don't want to blow up the drones, instead I want the other guy to keep scooping one at a time. How can I ensure that my damage goes to the healthiest drone? Would fixing these situations return the aforementioned lag to drones?



All of your hypotheticals involved different types of variables from from the point variables being optimized by the drone clouds via remapping functions.(arrays) through union, difference, subset, intersection, supersets.

You are truly asking about oranges when this proposal is about apples.

There are many types of variables: Real Numbers, Integer Variables, Boolean (true or false) , Points, Regions, Text Strings and Player are common to all video games --- and then different types of objects in EvE have their own variable class: Celestials, Ships, items, graphic skins, etc.

You're naming scenarios and hypotheticals that having NOTHING to do with optimizing point references via remaps. Parameter 6 is the only thing that changes the game as actually perceived by the players, which averages speed and dps in the drone cloud.

Event - Player 1 targets Drone A
Action: Apply Player's damage to Drone A in cloud. Drone has Y health.

Event: Cloud takes X damage from Player 1,
Condition If X exceeds Y, then kill Drone A, If X < Y, then set Y = Y - X


The "kill drone" event already exists in the general book.

All drones retain their individual health and still appear individually on the overview for manual selection. We have not altered the structure of these variables at all.

The random drone death only applies if CCP decides to make drone clouds the object that we target.

The cloud only has two families of collective functions: Damage stats (dps, tracking, etc), and propulsion stats.

Winmatar > Everything else

12Next page