Jump to content

Part balancing standards the IKAO and you!


DYJ

Recommended Posts

I propose a standardized part balancing system using equations to determine certain aspects of component characteristics, this would make it easier and most importantly faster for modders to make new parts as well as allow for challenge creators to allow a wider selection of parts for their challenges.

For example:

A liquid fuel engines fuel consumption/efficiency could be determined by it\'s weight and thrust:

Fuel consumption = Thrust / (Weight x multiplier chosen by the community)

In a similar manner fuel tanks can be balanced using standard values for fuel mass and so on.

Basing these variables on the vanilla parts as far as possible would likely be a good idea.

This is of coarse something that require some initial work as well updating when new modules are released and so on, but I believe there are plenty of highly active forum participants who could spend some of their time forming the IKAO International Kerbal Aviation Organization responsible for maintaining these standards.

Link to comment
Share on other sites

i propose we create a table of sorts, based on the default parts and a few 'classic' addons (which seem to have a certain degree of accordance between eachother) and try to zero in on a 'balanced' set of ratios for each value....

let me give it a shot - hold on, i\'ll be back shortly :thumbup:

Link to comment
Share on other sites

got it down for liquid fuel tanks:



Fuel Capacity from tank height and radius - based on default tank

Rated volume (from a calculated 1.51 height based on the distance between top and bottom nodes)
3.701m³

fuel capacity to tank height ratio (volume/fuel) =
135 (for 1m radius tanks -- multiply by radius for others)

tank weight to fuel capacity ratio
.0044

dry mass to tank capacity ratio
.0006

explosive potential to fuel capacity
full 0.0016
empty 0.0002

edit:

got LFE\'s as well now:



Liquid Fuel Engine parameters - based on stock LV-T30 model


Thrust to engine weight ratio
0.01

Thrust to heat generation ratio
2.5

Thrust to fuel consumption ratio (fuel units)
0.04

Thrust to fuel mass ratio (mass units)
0.000176

Link to comment
Share on other sites

it was tricky... i had to calculate the volume for the tank based on the difference between the top and bottom nodes - then from that i figured out the volume of the tank as a cylinder with 1m diameter

which i then divided 500 from, yielding a measure conversion between volume and capacity

noting that this is for a 1m part, then all you need to do for larger/smaller diameters is multiply

i might have screwed up the math... it happens with an alarming frequency for me, but i have some confidence (hope) that this is somewhat correct

Link to comment
Share on other sites

The parts are 1 meter in diameter not radius.

So the actual calc is;

Pi*.52*1.51, which comes out as

...1.186.

Thinking about it, a standard fuel tank fits in a 1*1*1.51 space, so it can\'t possibly be more than 1.5m2

Link to comment
Share on other sites

OK, I\'ve done the fuel tank tab. It\'s ugly and crappy all around. Your thoughts? I\'ll get to work on engines now.

http://dl.dropbox.com/u/13481289/IKAO%20Specs%20Calculator.zip

http://dl.dropbox.com/u/13481289/IKAO%20Src.zip (In case you\'re wary of viruses)

EDIT: I\'m not comfortable with Java GUI, I\'m doing this Qt

Link to comment
Share on other sites

Finally back home. If you ever visit Sweden, stay the fuck away from commuter trains.

You guys have managed to get surprisingly much done, the java thing seems to check out but the radius input should be changed for a diameter one and an option to manually input the area of non cylindrical objects would be great.

I\'ll update the first post with stuff as we go.

Link to comment
Share on other sites

OK, as I said, I\'m doing a proper cross-platform (win/mac/lin) application. Also, check out the about box for a logo made out of stolen images on the Internet.

I will add the features you mention. Just don\'t post that crappy Java preview anywhere :P

Link to comment
Share on other sites

We can probably get one of the artsy people on the forum to make an original pic. And your java stuff stays in your post until we have properly decided on something, so don\'t worry about that.

Link to comment
Share on other sites

What about heat, if you have a high heat from a quicker burning engine can we lower weight? Or to decrease heat production we increase weight, or lower thrust and similar fuel consumption, or more fuel consumption in place of higher heat, there are more then just weight to the equation

Link to comment
Share on other sites

OK, I\'ve laid a code base for the app. I don\'t think I\'ll be able to make many Mac builds in the future, but I\'ll setup a Github page and make the thing open source.

What I have so far (Windows)

IKAO Specs Calculator v0.0.1 (4 Mb)

Solid fuel booster calculations are wild guesses and derivations from the other two, so I\'ll need the board to make some official formulas for those ;) Also, the GUI design will improve, don\'t panic.

I think it would be nice to have some kind of 'Recommended Deviation Index' that represents how 'unbalanced' a part is and of course add more elements into the formulas, like Herpderpsslerps said. I\'ll leave that to you rocket scientists.

EDIT

Github repository added

Github project

Link to comment
Share on other sites

The 'Recommended Deviation Index' could later be used to determine the cost of modules when that gets implemented, a part with an RDI of 2 would be significantly more expensive than stock module while being twice as good. Cheat modules would get an RDI of over 9000 and would therefor be be impossibly expensive in campaign modes but still readily available in sandbox modes. This would need some kind of (exponential maybe?) multiplier to prevent ships using a single small but high quality fueltank to get to orbit.

Module cost = stock module cost * RDI2

The main challenge we have with the formulas is that there are a lot of different variables that need to be considered some of them very hard to quantify, one example of this would be the physical awkwardness of the module.

A Hall effect thruster unit with a lot of large solar panels would need a greatly increased fuel economy compared to standard liquid fuel engine to make it a viable option, but how do we quantify the physical awkwardness of it\'s solar panel clad model?

Other complications comes from air resistance, if it played a part in the LFE equation, a space-launched craft could be equipped with an engine with an infinite air resistance and infinite fuel efficiency and still be within the given parameters.

This is why we need to get a proper discussion going and get the community involved in coming to conclusion we all can agree with.

Link to comment
Share on other sites

There is a link to this thread in the post I made in Moach\'s thread.

I\'ll look at your updated java thing when I get back from work.

But we do need more people to look at this to give it some legitimacy.

Link to comment
Share on other sites

I thought that much, but I must be doing something very wrong.

V = PI * r2 * h right?

PI * 12 * 1.51 = ~4.7

What is happening to me?

there seems to be a problem doing this when the radius is below 1... and since the pod has 1m diameter, its radius is .5, - which squared yields .25 (half of one half)....

i worked around that by using a different order of operations, and multiplying radius by PI before squaring everything.... dunno if that could lead to any mistakes - for which i must 'thank' my 'wonderful' childhood math teachers and the 'glorious education' they gave me (read the quoted parts as intense sarcasm)

i hate how much i suck at math... i really should be better at it by now.... i mean, i can do the logic, but this gradeschool stuff always has me fumbling in the most shameful ways...

well, given the importance of this, i think it should be stickied.... if it were on the projects board, i could go ahead and do it myself... but since some forum weirdness took my global mod superpowers away, i cant do it here

Link to comment
Share on other sites

I think you are circumventing the truth by using unmath atm, the volume of a cylinder is V=r2h and always will be. And according to the rules of math squares and routs of stuff has to be done first followed by multiplication/division and then addition subtraction last.

The reason the difference between a radius of .5 and 1 is so large is since it\'s an exponential growth thing. Hope that made sense, don\'t think I ever tried to teach anyone math before.

http://www.wolframalpha.com/input/?i=volume+of+a+cylinder

Great site for doing math your brain can\'t handle.

Link to comment
Share on other sites

This is really helpful, I for one never know what to put in my part cfgs and am terrible at math.

If you use the software I\'m writing keep in mind that specs for the liquid fuel engines are terribly unbalanced at the moment. I hope if people get interested in this we can establish proper formulas.

Link to comment
Share on other sites

I\'m very interested in this project, as I\'ve done a lot of fuel energy density calculations (see my fuel pack) as well as cylinder volume calculations.

The radius squared thing is correct -- the r^2 for a normal fuel tank is 0.25. That\'s why, in the other thread, I maintain that 3 meter tanks are terribly underfueled and underweighted for their size. Assume you make a fuel tank in proportion to the stock tank, but scaled up to 3 meters diameter. This is roughly equivalent to a stack of three tanks, with an eight tank symmatried ring of tanks around it, which gives 13,500 fuel units at a weight of around 67 tons.

That\'s why my tanks, which use stats for real fuels (which are both less dense and less energy dense than kerbal fuels) weigh over 30 tons and provide over four thousand units of fuel. The volume of a three meter tank is HYOOGE.

Link to comment
Share on other sites

I\'m very interested in this project, as I\'ve done a lot of fuel energy density calculations (see my fuel pack) as well as cylinder volume calculations.

The radius squared thing is correct -- the r^2 for a normal fuel tank is 0.25. That\'s why, in the other thread, I maintain that 3 meter tanks are terribly underfueled and underweighted for their size. Assume you make a fuel tank in proportion to the stock tank, but scaled up to 3 meters diameter. This is roughly equivalent to a stack of three tanks, with an eight tank symmatried ring of tanks around it, which gives 13,500 fuel units at a weight of around 67 tons.

That\'s why my tanks, which use stats for real fuels (which are both less dense and less energy dense than kerbal fuels) weigh over 30 tons and provide over four thousand units of fuel. The volume of a three meter tank is HYOOGE.

I also feel 3 meter tanks are usually underweighted. I think your expertise is going to be very useful here :D Would you mind sharing your formulas?

Also, if you know a bit of C++ programming you could take a look at the calculator utility and see if you feel like contributing. But in any case, we are in need of equations to discuss, lots of them.

Link to comment
Share on other sites

I also feel 3 meter tanks are usually underweighted. I think your expertise is going to be very useful here :D Would you mind sharing your formulas?

Also, if you know a bit of C++ programming you could take a look at the calculator utility and see if you feel like contributing. But in any case, we are in need of equations to discuss, lots of them.

I\'m pretty good with C++; my day job is a robot programming grad assistant. I\'ll take a look-see.

As for formulas:

---

Given:


  • [li]that the stock engine is 100% efficient at 68.05 atmospheres of pressure[/li]
    [li]the propellant chart given on
http://en.wikipedia.org/wiki/Liquid_rocket_propellants#Propellant_table[/li]
[li]that the unit of thrust is the kilonewton[/li]
[li]that the unit of weight is the metric ton[/li]
[li]That gravity at Kerbin\'s surface is 9.81 m/s[/li]
[li]The measure of one unit of fuel is 25 kilonewton-seconds of impulse (found by dividing 2000 units of thrust by 8 units of fuel consumed per second)[/li]

It can be shown that:

For any cylinder C of height h and diameter d in meters; and for a given propellant P where P has the relevant traits density Prho measured in g/cm3 (conversion factor: 1 g/cm3 = 1 metric ton/m3) and exhaust velocity Pv measured in meters per second (equivalent to newton-seconds or per kilogram, or kilonewton-seconds per metric ton):

The propellant mass of C can be found:

Cpropellant-mass = (0.5d)2 * pi * h * Prho

The fuel figure of C can be found:

Cfuel = (Cpropellant-mass * Pv) / 25

---

And that\'s pretty much it. This allows you to, for any propellant and any cylindrical tank, figure out the appropriate mass and fuel numbers for that tank.

For reference, the P values for stock Kerbonium (or whatever) fuel are:

500 = 2.2 metric tons * Kerboniumv / 25

Kerboniumv = 5681.(81 repeating) m/s

Given Moach\'s value for h = 1.51 m:

2.2 metric tons = (0.5 m)2 * pi * 1.51 m * Kerboniumrho

2.2 metric tons / (0.25 m2 * pi * 1.51 m) = Kerboniumrho

2.2 metric tons / 1.186 m3 = Kerboniumrho

Kerboniumrho = 1.855 metric tons / m3

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...