ported from perforce

This commit is contained in:
2026-04-19 00:43:27 +02:00
commit 6c0c33f5d4
700 changed files with 19735 additions and 0 deletions

View File

@@ -0,0 +1,122 @@
namespace RobotAndDonkey.Game.Data;
public class Balancing
{
public static Balancing Instance { get; } = new();
// Robots
public int RobotEasyEnergy => 50;
public int RobotMediumEnergy => 40;
public int RobotHardEnergy => 30;
public int EasyMaxCarry => 10;
public int MediumMaxCarry => 8;
public int HardMaxCarry => 6;
public int EasyHandSize => 9;
public int MediumHandSize => 8;
public int HardHandSize => 7;
public int EasyTapeLength => 6;
public int MediumTapeLength => 5;
public int HardTapeLength => 4;
public int CourierEnergyReplenishOnDelivery => 5;
public int RangerFertileRestEnergyDelta => 1;
public int AnalysisHandSizeDelta => 1;
public int AnalysisEnergyDelta => -1;
// Gameplay
public int DiscardEnergyCost => 1;
public int LegendaryWeight => 1;
public int RareWeight => 3;
public int UncommonWeight => 12;
public int MagicWeight => 36;
public int CommonWeight => 108;
public int GetDeferGlitchEnergyCost(int deferCount)
{
deferCount += 1;
return deferCount * (deferCount + 1) / 2;
}
// Shop
public float ShopBuffChance => 0.25f;
public float ShopDebuffChance => 0.25f;
public int GambleBoosterSize => 6;
public int GambleEnergyCost => 5;
public int BufferOverflowEnergyCost => 10;
public int ShopSize => 5;
public int GetRerollEnergyCost(int rerollCount)
{
return rerollCount + 1;
}
// Modifiers
public float EffectiveChance => 0.25f;
public float UnreliableChance => 0.25f;
public float RaceConditionChance => 0.25f;
public int GravityMaxCarryPenalty => 2;
public int GravityExtraMoveCost => 1;
// Board
public int DefaultShedRequest => 10;
public float CrateShedRandomness => 0.5f;
public float CrateOfferBonus => 1.0f;
public int CrateAmount => 10;
public float DryAmount => 0.25f;
public float DrySpread => 0.75f;
public float FertileAmount => 0.5f;
public float FertileSpread => 0.75f;
public float MudAmount => 0.375f;
public float MudSpread => 0.5f;
public float BlockedAmount => 0.25f;
public float BlockedSpread => 0.5f;
public float CorruptedAmount => 0.375f;
public float CorruptedSpread => 0.5f;
public float RockyAmount => 0.2f;
public float RockySpread => 0.9f;
public float DonkeySprinkle => 0.05f;
public float ShedSprinkle => 0.1f;
public float CrateSprinkle => 0.2f;
public float TowerSprinkle => 0.05f;
public float RainTransformProbability => 0.5f;
public float DroughtTransformProbability => 0.5f;
// Cards
public int CardPlayEnergyCost => 1;
public int CardNoOpEnergyReplenish => 5;
public int CardRestEnergyReplenish => 20;
public int DonkeyMaxCarryBonus => 10;
public int HeatWaveEnergyPenalty => 10;
public float PestDeliveryMultiplier => 0.5f;
public int MoveCost => 1;
public int TurnLeftCost => 1;
public int TurnRightCost => 1;
public int InteractCost => 1;
public int PotentiateCost => 3;
public int OptimizeCost => 3;
public int StreamlineCost => 3;
public int PersistCost => 3;
public int RememberCost => 3;
public int ReasonCost => 3;
public int DetoxiumPrimeCost => 5;
public int FlyingDiskCost => 5;
public int AluminumHatCost => 5;
public int EMFieldCost => 5;
public int AtomicClockCost => 5;
public int JumpCost => 8;
public int RepeatCost => 8;
public int RestCost => 8;
public int StabilizeCost => 8;
public int MudMoveEnergyCost => 1;
public int FertileRestEnergyReplenish => 1;
public int DryRestEnergyMalus => 1;
public int DryInteractEnergyMalus => 1;
public int EndOfProgramEnergyReplenish => 10;
}