

Making Ghost Heat Not Suck: Heat Cascade System
#1
Posted 16 November 2015 - 01:30 PM
So currently the majority of players consider there to be a Problem in MWO, and that Problem is, to use the derogatory and oversimplified grognard name, ‘AlphaWarrior Online’. Weapons are not fired singly or in small groups as a general rule, with a handful of exceptions nobody believes exists. ‘Boating’ is considered the lowest of the low insofar as build strategies go, and people are continuously pushing for ever-greater TTK.
((INTERMISSION: ‘TTK’ stands for Time To Kill, and is a measure of how long it takes to fresh-to-dead your target. Decreasing this time means FASTER kills. Increasing it means SLOWER kills. Every time I see a grognard use the phrase ‘decrease TTK’ when they are speaking of ways to lengthen player life, it makes my inner Grammar Sith want to reach across the Internet and Force Choke them. Don’t get Force Choked, boys and girls – use your words the right way!
END INTERMISSION))
Anyways. As stated, people are always looking to increase TTK in the name of Better TT Correctness, Greater Fun, or if nothing else out of Sheer Spite. In large part because of the sheer destructive potential of (pre 11/17/2015) Clan lasers, folks are desperate for ways to splinter weapons fire and force players to engage with multiple shots from smaller weapons groups rather than pushing the Scragitall Button. Many folks are, in fact, willing to do almost anything so long as it might mean less Alpha Strikes in their A BattleTech Game™
The problems are severalfold. How does one identify an ‘Alpha Strike’ in the first place? How do you stop a Banshee from strapping an extra small laser onto the frame somewhere and leaving it ungrouped to work around ‘Alpha’ limits? A Dire Whale firing one arm outputs more damage than most entire medium ‘Mech alphas, and yet it cannot even theoretically be considered an alpha strike by itself. What do you do to control this sort of wild variance?
Most systems I’ve seen try to stop it from happening at all. Massive, complicated, difficult to implement convergence fixes seek to punish people firing alphas by ensuring that weapons not fired singly diverge wildly from the crosshair, going nowhere near where it was aimed. Convoluted pre-heat systems that shut a ‘Mech down before it alphas in an attempt to foresee the future flows of time and stop the offending blast from ever occurring. Other weird and whacky nonsense; some of it meticulously planned out with charts and graphs and Photoshopped example images, some of it spitballed inside a paragraph.
I decided to take a look at the idea using three primary guiding principles, to hopefully arrive at a system which, while not perfect, would be simple and low-impact enough to potentially give Piranha some ideas of their own. Those principles are as follows:
1.) Minimal Dev Time
Piranha is always tasked beyond capacity. Always. They have bitten off more than they can comfortably chew. A big, involved system requiring entirely new tech and a bunch of new assets is entirely out of the question because they do not begin to have the time or resources to create new tech or assets for a simple balance pass. Ideally whatever one desires could be done with XML edits, but unfortunately we’ll have to go beyond this to some extent. Nevertheless…avoid anything that would take a programmer more than an hour to write.
2.) Minimal Server Load
Hitreg is already spotty. Convergence fixes would break hitreg entirely, which would indeed increase TTK but not in the manner in which players want it to happen. Avoid impacting the servers or the netcode any more than necessary, keep communicated variables and U.I. to a minimum in according with Principle 1.
3.) Let It Go
Alphas are going to happen. The system I’ve been working up acknowledges and allows for the fact that the Scragitall Button is there and it will be pushed. The idea is to appropriately leverage penalties for pushing the Button and increase its risk commensurate with its reward. You can punch the Button if you like, but it’s not always going to be the go-to answer anymore. This one is going to be hard to swallow for a forum community devoted to ensuring that permanent chain fire is set for all weapons at all times…but it’s important, especially in relation to 1.) and 2.)
Where does this leave us? Mostly with a rework of ghost heat. Having played with it for considerable time now, ghost heat is the simplest answer to the issue. It’s simply that the current implementation of ghost heat is off; the game applies the penalty at the wrong point. Seven medium lasers? Brutal ghost heat spike. Five mediums and two larges. No ghost heat at all, costs less overall heat than the seven mediums. Ridiculous. The penalty is applied on a per-weapon basis, and not on a per-'Mech basis.
So. How do we fix this? Easy, really.
’Heat Cascade: Fair and Equitable 'Mech-Based Ghost Heat
Heat cascade is what happens when you fire too much, too fast. A cascade replaces the current borked, highly unintuitive, stupidly easily worked around Ghost Heat system, and represents heat that isn’t caught by your maxed-out dissipation systems right away (yes, I know, heat doesn’t work like that. Science it later, game balance now). How does a cascade work? Let’s go through it step by step.
Step 1.) Disable current Ghost Heat values. In fact, disable the current system entirely. We’ll still be suffering extra ‘ghost’ heat for overlarge salvos, but it’ll be cascade heat, which works off of different formulas.
Step 2.) Assign each weapon a ‘cascade’ value, in addition to a heat value, per shot. The weapon’s heat is what it needs to fire; its cascade figure doesn’t affect it in the slightest unless you overdo it. What any given weapon’s cascade value is depends on the weapon itself, though cascade values for Clan gear will generally be higher than cascade values for equivalent Sphere equipment.
Step 3.) Assign each ‘Mech a cascade threshold value. This value represents the maximum amount of weaponry the ‘Mech can fire at once without overloading its heat dissipation systems and triggering a heat cascade. Any weapon the ‘Mech fires adds to its Cascade tally, which is checked against its threshold every time the tally increases. If the tally is greater than the threshold, move to:
Step 4.) when a ‘Mech’s cascade threshold is breached, apply additional cascade heat spike as a percentage of the total heat of all weapons fired, or as an independent value added in addition to weapon heat. The precise mathematical values and formulas for how severe a heat cascade would be are mostly up to Piranha to determine, but in my mind they are also exponential and they are not fun. The intent is that you know, without any doubt, any time you trigger a cascade, and you will not want to do it again.
That’s it. Replace Ghost Heat arbitrary weirdness limits that are incredibly easy to bypass or work around with a system wherein every weapon counts towards a single, unified cascade threshold, which can be different for every machine. Cascade values for weapons are fixed, but thresholds for individual chassis can be adjusted to provide greater or lesser resistance to heat cascades. More on this later.
Cascade value and cascade threshold are basically two variables to keep track of, and with the abolishment of traditional Ghost Heat (that is a phrase I really hate using >_<), it wouldn’t take any much more in the way of bandwidth or server load than Ghost Heat does. It may take some fiddling, and will certainly take a few passes to ensure all the cascade values on weapons and the cascade thresholds for chassis are in the right place, but a two-variable system with a single unified penalty formula is a whole lot less complex to juggle than Ghost Heat, I would think.
Demonstration: Examples Time
A’ight, a’ight…this is MWO GD, and you guys want examples. I don’t have charts or graphs or mad Photoshop skillz, but I can tell stories. Get your reading pants on.
Let’s say you’re piloting a (giant enemy) Crab. The Crab is a medium ‘Mech without any especial ups or downs, and thus has the (theoretical) standard cascade threshold of 25. If this Crab ever does enough crap to exceed that threshold, it suffers additional heat.
Our Crab is being run Super Stock, with two large lasers and three medium lasers. The larges have cascade values of 7, while the mediums have cascade values of 5 (again, strictly by way of demonstration). All told, firing a full alpha would apply 7+7+5+5+5 cascade to this Crab’s tally, for a total of 29. No bueno. Should this Crab FIAH EVERYTHING, it would suffer a penalty of, say…50% additional heat for all weapons whose cascade value was still in the tally at the point the cascade was triggered. 2 extra heat for each ML, 3.5 for each LL, for 13 extra heat. Not crippling, but also not fun – that’s most of an ERPPC’s heat you get to eat without any benefit of having fired the ERPPC.
Someone with a far more devastating alpha, but who is still working on that 25-point cascade threshold, would be hit much, much harder. A Clan version of 2x cLPL and 3x cERML, for example, would not only generate significantly more straight heat, but would also thusly generate a 19-point heat cascade rather than a 13-point Ain’t nobody likes eating 19 heat for doing nothing, and that’s if the heat cascade penalty is a linear 50% of weapon heat. Could easily be +50% of weapon heat for, say…every five points above your cascade threshold you go. For the sake of simplicity, however (in accordance with our K.I.S.S.-oriented guiding principles for this system), let us assume a simple +50% of weapon heat applied for exceeding one’s cascade threshold.
The more you fire, the higher the penalty. You can fire that alpha if you have to, but if you push the Scragitall Button on a Dire Whale, you will be roasting your chestnuts for quite some time.
Practical Applications: What Cascade Does that MWO Currently Doesn’t
1.) It does away with eclectic weird weapon mixes designed to work around Ghost Heat. Now, your AC/10, your SRM-4, your medium lasers, and your flare guns all count towards the same cascade limit. This puts a soft limit on the amount of damage that can be pumped out at any single given instant, which is the end goal for any system I’ve ever seen that attempts to address TTK and The Alpha Problem. You can’t end-run your cascade threshold with funky tie-die armaments. Your cascade limit is your cascade limit is your cascade limit.
2.) It also makes ‘Ghost Heat’, as such, much easier to explain to new guys. While still at risk of being opaque, and still not as intuitive as it properly could be, it would be much easier to explain weapons each having an individual value added up and compared against a single threshold value. After all, the heat bar itself is adding a bunch of decaying independent sources against a shutdown threshold value and making sure you don’t overdo it – the heat cascade system is basically a short-term resource version of the long-term resource that is the heat bar, for those familiar(ish) with MMO parlance.
3.) It allows for extremely easy per-variant balancing. As an example, the Awesome (i.e. the poster child for individualized Ghost Heat and/or SuperMegaUltraQuirks™) could simply be given a cascade threshold of 40 instead of the (theoretical) standard of 25. Boom – with one single variable change, the Awesome is now a fearsome alpha monster that can sustain a volume of fire few other machines can hope to match, returning it to its traditional role of artillery battery with feet without having to fiddle with its silhouette or give it crazy-abusive PPC quirks or anything of the like. It just gets to fire more weapons more often without suffering cascades.
Conversely, particularly troublesome chassis could instead suffer a lower than standard cascade threshold, limiting the single-salvo fire of things like Dire TimberCrowtahs and allowing other machines a bit more breathing room in which to respond to these things. Again, change one single variable and the ‘Mech’s entire performance curve changes. It’s kinda beautifully elegant that way, at least to me.
4.) It allows Piranha to un-suck jump jets. Have jets add 5 (or more/less, depending on how things pan out) points to one’s cascade tally every half-second they’re in use, effectively reducing your overall cascade threshold by 5 while jumping. Poptarts, which rely on firing a single massive alpha whilst airborne, are almost guaranteed to trigger frequent nasty cascades, reducing their overall rate of fire by a significant degree. Or reducing the amount of weapons they can fire while airborne, which is in itself a victory. After this is done, Piranha can make jump jets actually jump again, so our Victors and Highlanders and Executioners can stop being sad.
5.) It lets us save the Flamer! Piranha is (rightly) unwilling to allow Flamer Deathlocks (wherein hosing a shutdown ‘Mech with a flamer prevents it from cooling off, rendering it helpless prey for the flamer guy or his team), but without the ability to actually heat up a ‘Mech to a significant degree…well, Flamers are useless.
But in a world where MWO has a heat cascade system, the Flamer could be reworked to apply a sharp debuff to an enemy’s cascade threshold, turning the Flamer from a sad joke to a powerful controlling weapon that can strip away a pilot’s ability to fire his own weapons for fear of constant cascades while being roasted. The Flamer itself doesn’t shut down the enemy, or prevent a shut-down foe from restarting…but it can severely limit your opponent’s ability to fight back properly while you’re basting them. This would no doubt come at the cost of a steep ‘upkeep’ cascade penalty of its own while the Flamer is running, and would also probably require some new codework on Piranha’s part and would thus not be a priority, but it’s entirely conceivable that in a world with heat cascades, Flamers would have a use.
That’s cool, right?
Summary and TL;DR (for people who are Too Lame and Didn’t Read)
TL;DR: shut up and read the post. I’m not really going to brook discussion from people unwilling to spend ten minutes to get themselves caught up before telling me I’m a useless T4 scrub who has no idea what he’s doing.
Summary: let’s discuss replacing Ghost Heat, which is currently applied on a per-weapon basis and is thusly confusing, opaque, and prone to loophole abuse, with a heat cascade system wherein all weapons and certain non-weapon functions are applied to a ‘Mech-based threshold for determining whether too much stuff has been done in too short a time. This allows for a simpler, more elegant system which also permits individual ‘Mechs to be balanced out by greater or lesser cascade thresholds, and which could allow old bad weapons like Flamers or systems like Jump Jets which have never worked right, or been savagely nerfed, to be brought back into the light.
How's it sound to you guys?
#2
Posted 16 November 2015 - 02:22 PM
Seriously though, this sounds like a great idea. I remember being around just when open beta started and absolutely loving the fact that you actually felt like your armor had any effect whatsoever. The TTK being so high I felt like the centurion was a proper tanking hulking fifty-ton warmachine.. Ah, the good old days
#3
Posted 16 November 2015 - 02:29 PM
+1
#4
Posted 16 November 2015 - 02:30 PM
#5
Posted 16 November 2015 - 02:38 PM
#6
Posted 16 November 2015 - 02:51 PM
#7
Posted 16 November 2015 - 03:00 PM
WarHippy, on 16 November 2015 - 02:51 PM, said:
That's actually the idea. Mixed-weapon builds currently get away with murder (literally), and complicate balance unnecessarily. Piranha has to constantly tweak things and come up with weird systems to account for the fact that while one PPC is fine, three PPCs and a Gauss are not.
Make no mistake - this system, if implemented as intended, would likely be a sharp DPS loss for everyone. All systems designed to increase TTK/defuse AlphaWarrior Online would be sharp DPS losses, as that is sort of the point. You fire less weapons less often, and 'Mechs live longer as a result. My objective is that this way, you get to pick which weapons you want to fire, rather than Ghost Heat arbitrarily limiting you to whatever it feels like you should be able to get away with, and it smooths out the whole wrinkled nasty mess that is Ghost Heat's obscure nonsense.
Think of it like this - the classic XML-change "decrease capacity and increase dissipation!" notion that's been lingering around forever would have a similar overall DPS loss effect, if implemented correctly. If it was implemented incorrectly, where the dissipation increase was big enough to become a net DPS gain, trust me - the forums would explode. Again. I'm mostly searching for a way to avoid further megagigagagglenerfs to Clan equipment, and figured we could solve a few other longstanding MWO issues like Awesome, jump jets, and flamers while we're at it.
#8
Posted 16 November 2015 - 03:20 PM
FupDup, on 16 November 2015 - 02:30 PM, said:
Homeless Bills idea was to add spread and unconverge weapons when too many are fired.
This is basically a more advanced system of Ghost Heat that stops people from getting around linked weapons. It's not very intuitive (you still get heat from no where) and doesn't really solve the issue any more than Ghost Heat does.
Bill's Idea
http://www.qqmercs.c...ence-and-clans/
My Ideas (very similar to Bill's)
http://mwomercs.com/...ce/page__st__20
#9
Posted 16 November 2015 - 03:35 PM
1453 R, on 16 November 2015 - 03:00 PM, said:
Make no mistake - this system, if implemented as intended, would likely be a sharp DPS loss for everyone. All systems designed to increase TTK/defuse AlphaWarrior Online would be sharp DPS losses, as that is sort of the point. You fire less weapons less often, and 'Mechs live longer as a result. My objective is that this way, you get to pick which weapons you want to fire, rather than Ghost Heat arbitrarily limiting you to whatever it feels like you should be able to get away with, and it smooths out the whole wrinkled nasty mess that is Ghost Heat's obscure nonsense.
Think of it like this - the classic XML-change "decrease capacity and increase dissipation!" notion that's been lingering around forever would have a similar overall DPS loss effect, if implemented correctly. If it was implemented incorrectly, where the dissipation increase was big enough to become a net DPS gain, trust me - the forums would explode. Again. I'm mostly searching for a way to avoid further megagigagagglenerfs to Clan equipment, and figured we could solve a few other longstanding MWO issues like Awesome, jump jets, and flamers while we're at it.
Like I said it doesn't appeal. People already complain about boating and lack of variety so I don't see a good reason for another layer of complexity that actively hurts mixed builds. It was good thought I suppose, but it just doesn't work for me.
#10
Posted 16 November 2015 - 03:37 PM
Troutmonkey, on 16 November 2015 - 03:20 PM, said:
This is basically a more advanced system of Ghost Heat that stops people from getting around linked weapons. It's not very intuitive (you still get heat from no where) and doesn't really solve the issue any more than Ghost Heat does.
Bill's Idea
http://www.qqmercs.c...ence-and-clans/
My Ideas (very similar to Bill's)
http://mwomercs.com/...ce/page__st__20
Also a great idea but at this point I think we need to accept that they are not going to change convergence, they simply don't have the ability and it's not going to happen. I like the OPs idea because it addresses the biggest issues and it could realistically be implemented.
#11
Posted 16 November 2015 - 03:42 PM
Tyler Valentine, on 16 November 2015 - 03:37 PM, said:
Also a great idea but at this point I think we need to accept that they are not going to change convergence, they simply don't have the ability and it's not going to happen. I like the OPs idea because it addresses the biggest issues and it could realistically be implemented.
Well even if we don't mess with convergence we already have weapons spread in the JJ code. I'd be happy for something like that to happen if you fire 6 LLs.
#12
Posted 16 November 2015 - 03:42 PM
WarHippy, on 16 November 2015 - 03:35 PM, said:
It seems to hurt LASER boats significantly more than mixed builds, working under the assumption that a ballistic or missile weapon would have lower cascade heat than a LASER weapon.
#13
Posted 16 November 2015 - 03:48 PM
WarHippy, on 16 November 2015 - 03:35 PM, said:
Heh, hey, no big man. I'm simply here to defend the notion in debate and see if folks can poke holes in it. Nobody has to like it. Speaking of which:
Troutmonkey, on 16 November 2015 - 03:20 PM, said:
This is basically a more advanced system of Ghost Heat that stops people from getting around linked weapons. It's not very intuitive (you still get heat from no where) and doesn't really solve the issue any more than Ghost Heat does.
Bill's idea is more fleshed out and likely stronger, but again, he's dealing with convergence rather than heat (which Russ has pretty much openly stated is a no-go) and he wanted new UI elements, which is also generally a no-go. I'd be delighted if Piranha implemented the TCL system, but at this point, over two years past when Bill posted it, I don't think we're going to see it. I was trying for something that could hopefully be done with a minimum of overhead, beyond crunching the raw balance numbers in the first place.
What I'm looking for is a low-hanging fruit option. Nobody likes ghost heat - it's just old enough by now that we've all scabbed over the egregious wounds it's caused and are just resigned to it being an unpleasant fact of life. This way, we could change it to at least make sense within its own system. No, it's not as intuitive as simply having weapons generate what heat they generate, but hex-PPC Stalkers have ruined that for us forever. No, it doesn't stop giant alphas from being fired.
The intent is to hopefully stop them from being fired more than once, or at least more than once within any reasonable stretch of time, and to do so in a way that doesn't tax Piranha's codemonkeys any more than they're already taxed. I know (de)convergence is everyone's pet project, but this is an FPS. You really, really, really need to be able to hit what you aim at, and making that impossible to do with more than one weapon at a time is just not helpful.
Tyler Valentine, on 16 November 2015 - 03:42 PM, said:
It seems to hurt LASER boats significantly more than mixed builds, working under the assumption that a ballistic or missile weapon would have lower cascade heat than a LASER weapon.
That's actually the beauty of it: weapons can get whatever cascade values they need. Certainly lasers would be the weapons most closely looked at by the team, and likely fingered for the most painful cascade values...but who's to say the Gauss rifle can't retain its effectively-zero heat, but be given a cascade value of 15 to go with it? Give it a huge cascade value and it decouples itself from typical high-alpha Gauss Sidekicks, since firing a bunch of extra stuff and a Gauss would result in a cascade. Fire it singly, though? It remains effectively null-heat and you avoid a cascade...but you also don't get massed pinpoint salvos.
It may not be as intuitive as no GH system whatsoever, but it's a whole heckuva lot more versatile.
#14
Posted 16 November 2015 - 03:50 PM
Personally I favor adding an engine power bar and have energy weapons, gauss, movement, and jump jets all drain a portion of that power. The amount of power available and how much power is required for a weapon should be easy to cover in a tutorial.
Then I'd add a CoF mechanic to simulate recoil. It would be displayed as an expanding circle targeting reticule. The CoF increases from movement, firing missiles, and ballistic weapons. Arm mounted weapons on fully articulated arms would not increase CoF as much to partially balance the fact that they're aren't as useful for ridge humping.
#15
Posted 16 November 2015 - 04:03 PM
Narcissistic Martyr, on 16 November 2015 - 03:50 PM, said:
Personally I favor adding an engine power bar and have energy weapons, gauss, movement, and jump jets all drain a portion of that power. The amount of power available and how much power is required for a weapon should be easy to cover in a tutorial.
Then I'd add a CoF mechanic to simulate recoil. It would be displayed as an expanding circle targeting reticule. The CoF increases from movement, firing missiles, and ballistic weapons. Arm mounted weapons on fully articulated arms would not increase CoF as much to partially balance the fact that they're aren't as useful for ridge humping.
Again, that's a very significant change requiring new code, new mechanics, likely new tech, as well as new U.I.. It'd be fantastic, but there's no way in all the ninety-nine Hells Piranha's going to do it.
Remember - these guys are tasked to capacity and beyond with just making Commodity Warfare not horrible. Asking for big, flashy new control mechanics like a power draw or TCL system is a nonstarter, and anyone who's listened to Russ talk about it has to realize he's basically all but outright said "You can have cone of fire/weapon deconvergence, or you can have HSR. Our hitreg code is predicated on a single, universal aimpoint - get rid of that aimpoint and all our hitreg fixes go out the window."
I'll take hitreg over deconvergence, and would do so even if I didn't think that being forever unable to hit what I shot at would be a horrible way to play MWO.
#16
Posted 16 November 2015 - 04:06 PM
1453 R, on 16 November 2015 - 04:03 PM, said:
Remember - these guys are tasked to capacity and beyond with just making Commodity Warfare not horrible. Asking for big, flashy new control mechanics like a power draw or TCL system is a nonstarter, and anyone who's listened to Russ talk about it has to realize he's basically all but outright said "You can have cone of fire/weapon deconvergence, or you can have HSR. Our hitreg code is predicated on a single, universal aimpoint - get rid of that aimpoint and all our hitreg fixes go out the window."
I'll take hitreg over deconvergence, and would do so even if I didn't think that being forever unable to hit what I shot at would be a horrible way to play MWO.
Sigh... I know... damnit PGI really screwed the pooch going with cryengine
#17
Posted 16 November 2015 - 04:49 PM
1453 R, on 16 November 2015 - 04:03 PM, said:
Cone of Fire code already exists in the Jump Jet code. Just trigger that to varying degrees based on how many weapons are fire. Anything that would trigger "cascade" under your simply could simply trigger cone of fire instead. The more heat you would've added, the bigger the cone of fire. Firing normally will have no ill affects and people will be able to hit where they aim.
Ghost Heat doesn't stop high alphas, or solve any issue really - it just spaces out the alpha's while people pop behind cover to cool down. This doesn't help the target who's just had 50+ points of damage applied to 1 pixel on their side torso and died to XL destruction
#18
Posted 16 November 2015 - 04:53 PM
Edited by Prosperity Park, 16 November 2015 - 09:50 PM.
#19
Posted 16 November 2015 - 04:58 PM
Sure, it'll punish somebody firing a bunch of missiles, lasers, and ballistics at once just as much as someone firing off a bunch of lasers, but the benefit is the adjustment of cascade values so that maybe you could have more damage in a mixed alpha for the same "cascade heat" as a lower damage laser alpha. Drawback being the scattering of damage due to different travel times.
I very much like the idea of useful flamers as well. Maybe if they each decreased cascade limit by, say, 1? Or maybe a percent of the remaining cascade to avoid mega flamer nova's ruling the world.
And being able to change this "improved ghost heat mechanic" according to the mech is genius! Something like the Nova and Awesome could be properly compensated for their massive profiles and extremely low weapons. Still be absolute glass cannons, but their cannon-ness would be equivalent to their glass-ness (with proper cascade limits of course).

Edited by Gamuray, 16 November 2015 - 05:01 PM.
#20
Posted 16 November 2015 - 05:03 PM
Gamuray, on 16 November 2015 - 04:58 PM, said:
It's still just as much work as the TCL ideas (sans convergence), because you would still have to fine tune and balance every weapons "cascade" value. If the devs are going to do a bunch of work, I'd prefer it not to be on a stop gap solution that has proven to not really work.
It's poor idea's like this that lead to governments trying to use 50 year old copper for internet instead of upgrading to fibre because "it's already there" even though it doesn't solve the issue, is a waste of time and is far more expensive in the long run. /NBN rant
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users