I can see where number of blocks might serve as a convenient way to represent having a CPU with lots of sensors and having to manage things like life support, structural damage, and probably a few other things. That said, I don't see that as being a significant draw on a modern computing, much less computing of the future, so I don't see a value to CPU costs for walls in terms of simulation. Now if the game needs some way to cope for performance costs associated with large ships to keep the game playable, then perhaps that approach is reasonable.
It already has that: Eleon's class size (which takes triangles, lights, and devices into account). If limiting ship size is desirable, just turn up the multiplier on triangles (or add in an additional factor for number of blocks). Limiting ship size for performance reasons is a form of technical limit, and shouldn't be attached to actual gameplay mechanics like CPU. CPU ought to be just for balancing major subsystems against each other, and it should allow incremental expansion (not this "you must have this many gizmos to reach this level"). I certainly like the concept of CPU, but I strongly disagree with the goals and implementation of the current system.
While I do largely agree, the performance being managed by triangles and lights seems to be related to rendering/graphics. That does a nice job of describing the performance hit against the game client application for my attempting to build a glass geodesic dome. But if they're trying to cope with performance within the game loop, perhaps server-side, then they may need another approach. Life Support/Oxygen code, for instance, might periodically require testing a ship for hull integrity. Structural Integrity code might similarly face processing challenges. I don't know that's what they face or that's what they're trying to do. I'm just acknowledging the possibility.
I mean, I understand what you're getting at, but it's hard to come up with examples of repeated server-side calculations that scale with the size of the ship. Checks for airtightness only need to be done when a block is added or removed, and, in the case of removal, only if the block was touching an oxygenated region; one might expect a spike in required calculation time when series of connected volumes are first depressurized during combat, but it should have almost no effect afterward. SI is its own whole separate issue that only BAs are subject to, and CPU is much more relevant for ships than for BAs (given the extra devices that ships need); I could believe that the SI calculation is computationally intensive, but I'd be very surprised (and disappointed) if this implementation of CPU was supposed to be a patch for that. Server-side calculations that might scale with ship size (or at least device counts) could be thrust and torque application (if the device effects aren't pooled internally before application), and turret targeting code (if the code has to iterate over all the blocks in a structure). I can't think of any others at present (but maybe I'm missing something important).
I can come up with more possible reasons. That doesn't make them factual. As you say, there can be other algorithmic opportunities to limit such processing, such as only doing so when damage is received. About that, assuming a combat with lots of weapons firing, damage will be inflicted perhaps each second in multiple locations. This makes for a critical time to be performing calculations. Damage could affect things like... Hull integrity for Oxygen Structural integrity Thrust related calculations Power calculations Aerodynamic calculations (new) ... did we just lose the pointy block that lets us go faster? Area of Effect damage ... crawling through adjacent blocks to apply damage. Explosive Blocks ... additional damage from the loss of a fuel block, for instance. ... and some of those involve crawling through surrounding blocks. Again, the game's performance during combat becomes time critical. Its perhaps not a time when you want to be calculating the ever-changing solar panel to sun angles and a good reason for CV's with solar panels to have an auto-protection feature, should we ever get CVs with solar panels. Or, trying to figure out if a CV is hovering between the sun and a BA's panels.
Sure, but with the exception of SI and possibly airtightness (depending on geometry), all of those other calculations are completely local in nature, and won't take 10x the time on a ship that's made of 10x the blocks (unless the explosion radius is similar to the dimensions of the ship, but then you're just asking for trouble, like piling 1000 explosive minecarts on top of each other in Minecraft). Sure, exploding devices will propagate, but those explosions don't necessarily have to be computed during one frame (I could see that being an issue right now, though, if that's how the calculation is being done); in any case, if it's really a problem, then larger fuel tanks are a great solution (simply fewer exploding devices). Anyway, I think @Hummel-o-War has stated somewhere recently that the CPU system is not intended to improve performance anyway . . .
I hate to bring up real-world examples to a fantasy game but I am going to. During the Vietnam war the troops responsible for bringing supplies to the firebases were constantly being ambushed along the roads. Their response was to arm the supply trucks. In all conflict logistics is a key element if you can not get supplies to the fighting, the fighting ends and you lose. What is the point of going to a POI if you can not carry the loot home? If a random ground troop can disable your loot hauler. Still with the notion that there is only one playstyle that is acceptable and only one game played with EGS as the backbone.
On one hand I get it that having a full-on combat cargo hauler would kind of defeat the purpose of the CPU system and the whole idea of specialized vehicles. But on the other hand, I HATE not being able to have a shield generator on most of my designs now. Not for combat, but just for those times when a stray rocket catches you off guard and blows a hole into your ship. I just want a slight buffer to allow me to try to run away without having to lose items and tons of time manually patching the hole blown into the ship. I think the solution is a low tier/low CPU shield generator that isn't for combat but for that slight buffer for non-combat vehicles.
Well the point is, you go into fight with a fighter, take out the POI and on your first trip home you can only carry little amounts of loot, then go back home, get your cargo hauler and carry all the rest home. That's how it should work and I think that adds to gameplay. And on that follow up trip(s) with your hauler you are and should be an easy target for others. In SP there's no danger anyway. You can of course still have minimal defensive weapons, and that still works fine (at the cost of losing a little cargo space with CPU), but you can't simply have a jack-of-all-trades cargo hauler with also massive weaponry and shield protection. /jmc
Sure, but an armored transport is different than a tank. You don't typically assault fortifications (e.g. POIs) with a transport; that's a tank's job. And if a random ground unit is disabling your loot hauler, then either your loot hauler doesn't have enough armor for the conditions it's operating in or you didn't clear the area well enough before bringing in your loot hauler. Other points: You might be able to take on low-level POIs with an armored transport, but high-level POIs are designed to repelled sustained attack from ships specifically designed to do nothing but destroy other structures You don't have to haul every bit of loot that isn't nailed down You can make multiple trips when looting a POI; related to the point above, you have to decide if the loot is worth spending multiple trips hauling away
It's ok, because, overall, the goals of the CPU system have not been well-explained (and neither has any explanation been offered for why the CPU system has the goals that it has, and why other systems wouldn't do a better job accomplishing some of those goals).
Please remember this started out because it was suggested that the transport could do without a shield that allows the transport some degree of protection without it needing to be covered in armored blocks.
Thought: How about a T1 shield that gives 2500-5000 points and move the big one to tier 2. That would let non combat vessels absorb a couple hits while they exit stage left.
Oh! Now I understand why the New (your) TITAN lays broken apart on the Starter Planets! You didn't care about the CPU Limit!
Oh, to be clear, I'm not claiming that any of the device CPU values make any kind of sense. Nor do I think that armor should consume CPU. As for the transport, you could always armor it in half- or quarter-blocks to keep down the mass while providing some protection to the cargo containers inside. This whole situation nicely illustrates the problem with one-and-done subsystems; if the shield system were modular, none of this would be a problem (armored transports would simply have far weaker shields than dedicated combat ships).
Yeah, and really you might as well go ahead and do multiple tiers (T1, T2, T3 for light, medium, and heavy shields.) Really I just want something that can eat a couple of rockets to give me an early warning to get the heck out of dodge, not something to allow me to assault bases. I just don't want to lose items / or a fourth of my vehicle to a couple of stray rockets.
Random question, perhaps it's just me, but what's with the EULA changes with 10.6? I downloaded the update yesterday and went to play it today offline and I can't, without signing back in to Steam and agreeing to the new EULA. Luckily I can go online at the moment, but if I'd not been able to, I'd be a little frustrated now. Wondering if anyone else had this pop up when they tried to launch the 10.6 version for the first time? I'll hopefully get on-line on my gaming PC in a bit, so I can see what's going on. Edit: Great...a "Steam sale" pop-up appeared and totally blocked my access...had to restart Steam..again*sigh* Scoob.
Oh, ok. I've never had it before other than when first installing a game. It was telling me I had to go online to proceed as no actual EULA was being shown...I guess it couldn't download it. It's taking me quite a while to get into the game this evening! Scoob.