Comments (8)
@Aliencreature thoughts?
from mechengineer.
One idea is to have:
Fusion Core
XL Engine RT
XL Engine CT
XL Engine LT
So they are uniform. One alternative might be XL Casing, but I don't particularly like it. In my opinion the best choice is to deviate as little as possible from the lore names, and make sure the description briefly mentions the difference between the parts.
The Fusion Core is where the magic happens, and where a tiny sun is formed that produces immense heat. But it is not an engine, it is merely a source of heat. The engine is the part that handles the conversion of that heat to useful work. This is also how it is in real life reactors, where the core and the engine/turbine systems are considered separate.
I would actually love it if Fusion Core was left as Fusion Core, because it keeps things open if anyone ever decides to add a Fission Core as a cheap, dirty alternative for when money is running dry.
The part that I am really struggling with is how much of an engine is the core and how much is the engine. It has been a while since I took math, but I've been at it for a few minutes and I can't seem to find a solution.
from mechengineer.
XL Engine CT
Fusion Core was left as Fusion Core
so it shall be.
engine is the core and how much is the engine
so important for everything, weight, cost, properties. we could continue to cheat by having everything in the fusion core.
only cost is left that can't be just part of only the core, but there I could just make the installation cost dynamically calculated.
the current cost formula for a standard engine is 5'000 * chassis max tons * rating / 75. an xl engine just replaces the 5'000 with 20'000.
how much of that cost is:
- installation
- materials (shielding, etc..?)
- fuel
and how does each scale to rating and chassis tonnage?
going to read some of the rule books to get some inspiration
from mechengineer.
Since I can not actually figure out how much of an engine is the core and how much the shielding, I decided to work at it backwards. I imported the engine table into LibreOffice and set up additional columns: one that takes the formula for the tonnage of the core based on rating, and one that subtracts it from the tonnage for each engine type to produce the shielding tonnage. That is to make sure that no nonsensical values are produced. As there are to my knowledge no engines below a rating of 60, I have used that as the floor.
What I Found
First of all, there are some limitations to what is possible.
- Fusion cores have to accept tonnage values below 0.5 in order to not produce a nonsensical 0 tonnage XXL60 engine.
- Because of ^, a linear function for core tonnage will always have to produce low values even at high ratings. This makes the mass of the core almost completely dependent on the shielding.
The first, and simplest solution, is to use a linear function to calculate the core tonnage based on rating.
=MROUND(0.005*A12, 0.25)
After some playing around I found that the above plays well with all ratings.
I am working on other formulas that put more emphasis on the core tonnage at higher ratings, but this might be the way to go. It also makes sense, since in a modern nuclear reactor most of the mass is in shielding, cooling, etc. and not on the core itself.
from mechengineer.
OPTION 2
I used an exponential fit function to reverse-engineer the formula that is used on the engine tables to correlate engine rating to tonnage, and then I sprinkled a few additions on-top.
Fusion Core Tonnage =MROUND(1.00922794448231^RATING/5, 0.25)
The fusion core takes up ~ 20% of the STD engine, but that varies with engine size due to the rounding to the nearest 0.25. It plays nicely with all engine ratings and types EXCEPT:
XXL 70
XXL 75
Which produce a shield rating of 0. This, too, is an unfortunate side-effect of the rounding function, but they are fringe cases and I doubt they will be relevant (or even included if we follow MWO's example of having no engines under 100 except for the 60). For reference, the heaviest core with this system is the Fusion Core 400 at 8 tons, and the STD engine parts for it come out to 44.5 tons.
If, however, that is a problem, an alternative formula is:
=MROUND(1.00922794448231^RATING/5, 0.5)-0.25
This works for all engine ratings and types but is less elegant and produces odd-looking core tonnages.
And since we are on it, it is not an exact calculation for the complete tonnage of the STD engine, but the closest I could get to an exact match was:
STD Tonnage = MROUND(1.00922794448231^RATING, 0.5)
from mechengineer.
based on how much stuff we have to do, I might scrap the idea of making engine components more immersive by distributing properties. right now, except for the space usage and cost, every property should be part of the core.
Costs just have to be calculated on the go. To properly calculate costs, we need to know:
(EngineTypeModifer x Engine Rating x Unit Tonnage) รท 75
On shop buy time, we don't know any of the information at the same time. (we might know rating or engine type but not both are even unit tonnage)
On installation time, theoretically it should be possible to have all 3 values, but practically we dont:
- engine rating is known already
- the unit tonnage is not given to the installation order (requires an easy but ugly patch)
- engine type is another component. this is a bigger issue, since we have race conditions in combination with cancelling an order.
The best one could do right now is to derive 2 formula:
- fusion core installation cost (Engine Rating x Unit Tonnage)
- shielding installation cost (Engine Type x Unit Tonnage)
for 2. I need to split EngineCoreRef from EngineType, probably introducing EngineRef -> ( EngineCoreRef, EngineTypeRef ). thats kinda a big change. see #65
from mechengineer.
the cost issue can be solved with #66 thats alot of work though
from mechengineer.
closing this, not worth an extra issue
from mechengineer.
Related Issues (20)
- Engine Core Issue HOT 2
- NRE caused by specific hardpointdatadef HOT 4
- infinite loading with customised base game mechs HOT 10
- BLR-1Gb LA hardpoint lacking model HOT 4
- SLDF mechs not being migrated to ME modules correctly HOT 6
- Gauss Rifle++ misses out on critical slot adjustment HOT 1
- Better MechLab Vehicle support HOT 2
- Weapon Damage Immunity HOT 3
- Introduce Expanded Critical Damage HOT 1
- CASE not working if CustomUnits loads first HOT 1
- AttackSequence might be null and throwing exceptions
- Ammo Explosions in Head exceptions
- Omni Hardpoint as own icon HOT 1
- Allow per-mech override of prefab mapping HOT 2
- DynamicSlots Moveable slots has no UIName HOT 2
- Engine heatsinks not counting towards heatsink capacity during tutorial HOT 8
- CB/CAC compatibilty issues
- Head destruction -> Cockpit destruction
- Mechengineer creates 2 duplicates of the AC10 HOT 1
- Idea: ComponentExplosion for Armor/External Damage
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mechengineer.