So after not really finding a BV bug, but still working on all the code for calculating BV, there are some serious issues with it, more than I had ever realized. For example:
Take a 75 ton Clan Mech
4/6 movement, standard engine/structure/armor
10(20) heat sinks
That unit is 1027 BV.
Now add 3 ERPPCs, it goes to 2181 BV, a bit over double for a unit that went from 0 damage over range 1, to 15-45 damage out to range 23.
Now something interesting. 10(20) HS = 2181 BV2, however, the unit has the exact same BV for 11, 12, or even 13 double double heat sinks. Well that just *can't* be right, those additional HS make a big difference in the a game However, adding 1 more heat sink, so 14(28), the unit BV jumps to 2412 BV2, or a 231 BV increase for a single heat sink. 10(20) HS allows the unit to generate 27 heat in a turn, 14(28) allows 19 heat. I blame this issue on the fact that the game designers were trying to work with people, when computers would have allowed a much more granular change in BV without the spikes. I don't fault anybody for that, but a computer could come up with much more realistic changes.
Another example. A 20 ton clan mech, 8/12 move, XL, max armor, standard everything else, 10 double HS. Armed with a single clan ERLL it is a great sniper mech, and is only 814 BV. However, fight in heavy woods. The 25 hex range of that ERLL becomes 3, the movement goes from 8/12 to 2/3, and it is probably worth at most about 300 BV (change move to 2/3, 5xER Micro Laser instead of 1xERLL). Terrain reduces the effectiveness of that mech by nearly 2/3rds. Now the really wacky thing, lets give that same mech 8 jumping movement, its BV with the 5xER Micro Lasers jumps to 442. The mech is no more effective than one with a single ERLL in this scenario, but is HALF the BV. Again, I can't fault anybody for this. A sniper is obviously not very good at room clearing, and bob with 2xColt 1911's sucks at killing the baddies at 200 yards.
Another example. An inner sphere 75 tonner, 4/6 move, XL engine, max armor, and 2xLRM 20 w/24 shots. The BV is 1433, however, make it 3 LRM20s, or a 50% increase in firepower, and the BV only jumps up to 1687, or about 15%.
Lets get nuts. 75 tons, Clan, XL, 4/6, max armor/std structure, 10(20) HS. 40xMachine Guns with 500 rounds. The BV is 1203. Replace the MG's with Flamers and the BV drops to 1137. So these 2 designs are roughly identical in capabilities, damage output, and range. However, the MG armed unit can fire all 40 MGs with 0 heat, while the Flamer version can only fire about 6, and if it fires all 40 it shuts down immediately. Yet they are essentially the same BV. Change the heat sinks to single and the flamer version drops all of 10 BV, to 1127. Loose the ability to fire 3 flamers for a unit barely able to fire 3 flamers and move, or about a 50% loss in firepower, and the BV loss is only 10. The MG variant would chew up lots of the flamer variants, doing 80 damage with ranged weapons vs 6.
Another out of the ordinary comparison. 100 ton IS mech, moves 4/5 (7), XXL fusion, 10 compact HS, hatchet in both arms, TSM, 307 points of hardened armor, reinforced structure, standard gyro, torso cockpit, Null-Signature System. This mech is 2829 BV without a single ranged weapon, wowza! It is *extremely* hard to kill, but yet can move 7 hexes in a turn while wildly swinging hatchets at you, doing 40 points for a hit. This mech could easily wipe out anybody else in melee combat. This mech just rocks. Now compare that to a Spider SDR-7Kr, a 30 ton mech with 8/12/8 movement and a single medium pulse laser. Regardless of the terrain, given enough time, the spider will *always* win (jump away when init is lost, close when its won). That awesome 100 ton melee monster will simply never get an attack roll, as its chewed up by 6 point pulse hits all day long. The Spider is 775 BV, if you really wanted to be nasty, you could take 3 of those spiders, and something else, against that one awesome mech.
FYI, I used heavy metal pro for all these designs.
I know these are all extremes, and hardly the rule. A typical 1800 BV mech is roughly equivalent to another 1800 BV mech, in most situations, and in most environments. However, if there is a patch of woods on your table, it could make one of those mechs 20% less effective in some circumstances, or another 20% *more* effective.
If your games used *only* random tables, this may not ever be very pronounced, but if you let people pick and choose, well, it will make a difference, assuming things like die/init rolls are the same.
So, I'll finish up the code to calculate BV on everything (mechs are now done, minus a few bugs that are sure to creep up), but will not use it for any purposes whatsoever. I think I'll optimize a few of the formulas (like figure the OBV per range band), and divide by 250 or so, meaning mechs would have a "point cost" of about 2 to 12 instead of 400 to 3200, and those costs will be generated based on the terrain, gravity, temperature, environment, etc, so any "extreme" issues like I mentioned above would be extremely rare.
In conclusion, I'm not complaining about BV in any way, but instead just saying don't rely on it to be balanced in any games. Instead, use scenarios, be creative, and have fun.
Personally, I think all BT games should simply be based on victory points. You get VP equal to BV for each unit you kill. However, you then multiply that VP by the ratio of BV's. If you have 500 BV, and your enemy 750 BV, you get 150% of any BV you kill, while your opponent would only get 67% of any BV he killed (half BV for crippled units). Tally those up at the end of game to determine a winner. Divide winners BV at end by the losers BV, and each 25% or so is a victory level (draw, marginal, victory, decisive, heroic, etc). This way games don't need to be balanced, and if you win at 3:1 odds, you really know you won... if you won at 1:1 odds, you could have just been lucky with dice.
Time to go be productive now :)