diff --git a/Content.Server/Ame/AmeNodeGroup.cs b/Content.Server/Ame/AmeNodeGroup.cs index 3c7b4cd134c..dc4962b62fe 100644 --- a/Content.Server/Ame/AmeNodeGroup.cs +++ b/Content.Server/Ame/AmeNodeGroup.cs @@ -181,10 +181,21 @@ public float CalculatePower(int fuel, int cores) { return 0f; } - - // Power generation curve assuming x is the number of cores and the injection scales linearly to always be the twice the number of cores. - // https://www.wolframalpha.com/input?i=200000+*+log10%28%28x*2%29%5E1.9%29+*+%280.4+*+%28%28x*2%29+%2F+x%29%29+for+x+from+1+to+10 - return 200000f * MathF.Log10(MathF.Pow(fuel, 1.9f)) * (0.4f * (fuel / cores)); + + //more parametrized and linear AME power function https://www.desmos.com/calculator/qsdxxvpcq8 + float wattsPerCore = 80000f; + float efficencyPenalty = 2f; + float tailPenaltyFactor = 0.9f; + + float efficency = fuel / (2 * efficencyPenalty * cores); + + if (fuel >= 2 * cores - 1) + efficency += (fuel - (2 * cores - 1)) * (1 - 1 / efficencyPenalty); + + if (fuel >= 2 * cores) + efficency -= (fuel - (2 * cores)) * (1 - 1 / efficencyPenalty) * tailPenaltyFactor; + + return efficency * wattsPerCore * cores; // End of DeltaV code } diff --git a/Resources/Prototypes/Catalog/Cargo/cargo_engines.yml b/Resources/Prototypes/Catalog/Cargo/cargo_engines.yml index 75a1e24cdff..7aaa8dfd160 100644 --- a/Resources/Prototypes/Catalog/Cargo/cargo_engines.yml +++ b/Resources/Prototypes/Catalog/Cargo/cargo_engines.yml @@ -4,7 +4,7 @@ sprite: Objects/Power/AME/ame_jar.rsi state: jar product: CrateEngineeringAMEJar - cost: 2000 + cost: 5000 # DeltaV tweak - was 2000 category: cargoproduct-category-name-engineering group: market diff --git a/Resources/Prototypes/Entities/Objects/Power/antimatter_jar.yml b/Resources/Prototypes/Entities/Objects/Power/antimatter_jar.yml index 22e5b9bb3cf..353cbe6d58c 100644 --- a/Resources/Prototypes/Entities/Objects/Power/antimatter_jar.yml +++ b/Resources/Prototypes/Entities/Objects/Power/antimatter_jar.yml @@ -12,6 +12,6 @@ state: jar - type: AmeFuelContainer - type: StaticPrice - price: 500 + price: 1000 # DeltaV tweak - was 500 - type: GuideHelp guides: [ AME, Power ] diff --git a/Resources/Prototypes/Procedural/salvage_rewards.yml b/Resources/Prototypes/Procedural/salvage_rewards.yml index 33bb3907e0d..fea47b828e5 100644 --- a/Resources/Prototypes/Procedural/salvage_rewards.yml +++ b/Resources/Prototypes/Procedural/salvage_rewards.yml @@ -7,7 +7,7 @@ CrateMaterialPlastic: 1.0 CrateMaterialSteel: 1.0 # things the station might want - CrateEngineeringAMEJar: 0.25 + # CrateEngineeringAMEJar: 0.25 # DeltaV removal CrateFoodPizzaLarge: 0.25 CrateFoodSoftdrinks: 0.25 CrateFunInstrumentsVariety: 0.25