Thomas changed the topic of #kspmodding to: Welcome to #kspmodding - the channel for discussing, and learning about, modding Kerbal Space Program. Code of Conduct: https://git.io/vSQh6 | Always provide logs (do !support for help). | *** PSA: https://kerbalspaceprogram.com/api/index.html | <Red5> Guy was asked for a log file, he gave this link: http://pastebin.com/wfVarZPf
<SilverFox>
yeah that gives me G's, not the acceleration in m/s^2
<SilverFox>
id have to multiply by a constant
<Sigma88>
just multiply by 9.81
<SilverFox>
like 9.80whatever
<SilverFox>
I already got it sorted it out, it's fine, thanks though
<Sigma88>
geeASL is defined as ((6.67408e-11 * CelestialBody.mass) / (CelestialBody.radius ^2)) / 9.81
<Sigma88>
;)
<Sigma88>
np
<Sigma88>
just make sure you use the right constants, I've seen mods use different approximation of the real life G
<Sigma88>
which on big numbers can make the difference
<SilverFox>
if I find one that is more accurate, I will use it
<Sigma88>
ksp uses 6.67408e-11
<Sigma88>
so that's the "most accurate" in the context of ksp
<SilverFox>
e+11 yeah?
<SilverFox>
I saw it was big, rather than small
<Sigma88>
e-11 means "multiply by 10^-11"
<Sigma88>
!c 6.674e-11
<Qboid>
6.674E-11
<Sigma88>
!c 1e
<Qboid>
<dbb16e0bacdc4a0f87478e401bc29b6c>:0 at System.Double.Parse (System.String s, System.Globalization.NumberStyles style, System.IFormatProvider provider) [0x0000e] in <dbb16e0bacdc4a0f87478e401bc29b6c>:0 at Mono.CSharp.Tokenizer.adjust_real (System.TypeCode t, Mono.CSharp.Location loc) [0x000fc] in <a81adb37139f4f2ea6ce1da80d3be432>:0 at Mono.CSharp.Tokenizer.is_number (System.Int32 c, Syst
<Qboid>
System.FormatException: Input string was not in a correct format. at System.Number.ParseDouble (System.String value, System.Globalization.NumberStyles options, System.Globalization.NumberFormatInfo numfmt) [0x0009f] in <dbb16e0bacdc4a0f87478e401bc29b6c>:0 at System.Double.Parse (System.String s, System.Globalization.NumberStyles style, System.Globalization.NumberFormatInfo info) [0x00000] in
<Qboid>
em.Boolean dotLead) [0x00203] in <a81adb37139f4f2ea6ce1da80d3be432>:0 at Mono.CSharp.Tokenizer.xtoken () [0x00bba] in <a81adb37139f4f2ea6ce1da80d3be432>:0 at Mono.CSharp.Tokenizer.token () [0x00000] in <a81adb37139f4f2ea6ce1da80d3be432>:0 at Mono.CSharp.Evaluator.ToplevelOrStatement (Mono.CSharp.SeekableStreamReader seekable) [0x0002b] in <a81adb37139f4f2ea6ce1da80d3be432>:0 at Mono.CS
<Sigma88>
!c 1e3
<Qboid>
1000
<Sigma88>
sorry
<Sigma88>
if you use a constant that is more accurate to the real life constant, your result ingame will deviate from the behaviour of the universe
<Sigma88>
which I suppose is something you want to avoid
<SilverFox>
I dont care how KSP behaves, I replace it most of the time
<SilverFox>
KSP doesn't support what Im trying to do
<SilverFox>
my mod is basically a standalone weather sim with KSP on the side
<Sigma88>
ok so you probably are safest do all the calculations yourself
<SilverFox>
if I can replace it, I will, like temps, pressures, densities
<SilverFox>
and that is what I am doing
<Sigma88>
?
<SilverFox>
I dont know what that is
<Sigma88>
thumbs up
<SilverFox>
also CelestialBody.GeeASL returns a number higher than 1
<SilverFox>
it's like, 1.001 something
<Sigma88>
where?
<SilverFox>
kerbin
<Sigma88>
did you change anything to kerbin?
<SilverFox>
nope, shouldn't have anyways
<Sigma88>
ah yes
<SilverFox>
install is pretty fresh minus KWS
<SilverFox>
and I dont alter the planets at all
<Sigma88>
kerbin used to have be 1 g when G was 6.674e-11
<Sigma88>
then SQUAD changed G to 6.67408e-11
<Sigma88>
so that's the difference you are seeing
<SilverFox>
mmmmgreat
<SilverFox>
love it
<Sigma88>
!c 6.67408/6.674
<Qboid>
1.0000119868145
<Sigma88>
that's what kerbin's G should be
<SilverFox>
and that's what it was
<Sigma88>
s/G/g
<Qboid>
Sigma88 meant to say: that's what kerbin's g should be
<Sigma88>
;)
<SilverFox>
is it at least more accurate now?
<Sigma88>
what do you mean by more accurate?
<Sigma88>
G is closer to the real life G
<Sigma88>
according to wiki G measured value is 6.67408(31)×10−11 m3⋅kg−1⋅s−2
<Sigma88>
I'm not sure what that (31) means
<SilverFox>
if we said gravAcc was 9m/s^2 that'd be about right, but a more accurate answer is 9.8, and a more accurate answer is like 9.801 something
<Sigma88>
the value of G is 0.00008 closer to the real one now
<Sigma88>
kerbin is still 1/10th the size of what it should be :D
<Sigma88>
unless you changed it
<SilverFox>
I dont know how to
<SilverFox>
for all I know that value is read only
<Sigma88>
if you are open to use kopernicus, you can use that
<Sigma88>
otherwise I think you could get away with changing the radius when the mainmenu loads
<Sigma88>
you don't even need to bother resizing the terrain, since kerbin's terrain is already pretty much earthlike
riocrokite has joined #kspmodding
ferram4 has quit [Ping timeout: 204 seconds]
<Sigma88>
I have a c# question
<Sigma88>
let's say I have a mod with a class that does stuff
<Sigma88>
and let's say I make another mod that wants to change that
<Sigma88>
can I create a new class in my new mod and use it to replace the other class?
<Sigma88>
so that at runtime only the new class is used?
ferram4 has joined #kspmodding
<Sigma88>
anyone?
<riocrokite>
override class?
<riocrokite>
i mean override method
<riocrokite>
simulating 1mm to 10m regolith layer with simple exponential function ftw
<Sigma88>
hmmm
<riocrokite>
did the answer help you Sigma88 or was it something else you were looking for?
<Sigma88>
I'm not sure
<Sigma88>
I'm trying
<Sigma88>
riocrokite: I used an interface
<Sigma88>
is that bad?
<riocrokite>
I guess not, my knowledge is limited lol
<Sigma88>
yup
<Sigma88>
worked like a charm
<riocrokite>
nice
oeuf has joined #kspmodding
Technicalfool_ has joined #kspmodding
<Sigma88>
riocrokite: thanks anyway :D
Technicalfool has quit [Ping timeout: 186 seconds]
<riocrokite>
is there a way to concat float as opposed to round?
<riocrokite>
in c#
<riocrokite>
also if yes would it be more expensive function than round?
<xShadowx>
oncat? you mean truncate?o.O
<SigmaTrain>
Riocrokite
<riocrokite>
yah truncate
<SigmaTrain>
What do you mean?
<SigmaTrain>
Ah
<riocrokite>
that's the word I was looking for
<SigmaTrain>
I use (int) but that's not idea
<xShadowx>
(int)myfloat
<SigmaTrain>
I am told
<SigmaTrain>
Ideal*
<SigmaTrain>
It's best to use the function
<SigmaTrain>
For some reason
<riocrokite>
k
<riocrokite>
need this function for precision driving lol
<riocrokite>
GPS coordinates to harvest stuff like on the field or mine
* xShadowx
has always used (int) and would like to know beyond heresay if a better way
<riocrokite>
I cannot use int
<xShadowx>
(int) chops of all after decimal
<riocrokite>
to be more precise i need to truncate coordinates to 0.000
<riocrokite>
so 3 places after .
<xShadowx>
if you need some decimal points only have round()
<riocrokite>
k rgr that, I can round 0.0000 and then show 0.000
<riocrokite>
that would solve my problem, woudln't it?
<xShadowx>
why round to 4, show 3?
<riocrokite>
to achieve an effect of truncating to 3
<xShadowx>
uh i forget if floor/ceiling round off all decimals
<VanDisaster>
*1000 ->toint() -> / 1000
<xShadowx>
and i think round has an option to round up/down
<riocrokite>
really? that would be interesting
<riocrokite>
midpoint rounding mode, looks awesome, gonna test it, thx
<SigmaTrain>
Yes you can round "away from zero"
<SigmaTrain>
Or "toward zero"
<SigmaTrain>
Something like that
<riocrokite>
eh only two options, awayFromZero and ToEven
<riocrokite>
ah well I might get away with away from zero :P
<riocrokite>
erm meh two of those options is not what I'm looking for lol since they only affect haves
<riocrokite>
halves
<riocrokite>
so 4.5 is 5 in awayfromzero and 4 in toeven
<xShadowx>
yep
<xShadowx>
anything not at midpoint (.5) would round to nearest int
Pap|Lunch is now known as Pap
<riocrokite>
I guess the only solution is to go with VanDisaster method
<xShadowx>
thres also math.truncate()
<xShadowx>
never saw that o.O
<xShadowx>
but that leaves no decimals
<riocrokite>
only leaves a number without fraction
<riocrokite>
i'll just write a short function for that I guess
<xShadowx>
return (int)(myfloat * 1000) * 0.001;
<xShadowx>
>:)
<xShadowx>
wait doesnt (int) round?
<riocrokite>
you see I have to be more sneaky than that since I have to show changing latitude when transfering to new depletion node
<xShadowx>
!c (int)1.6f;
<Qboid>
1
<xShadowx>
nope :D
<riocrokite>
so something like float + 0.005 maybe?
<riocrokite>
to get fake but exact transition position when driving into new depletion node
<xShadowx>
random future thought - maybe also a debug/graphical bit to show what node you drive on/in, say just rendering a square slightly above the ground, corners being at corners of the node
<riocrokite>
that's far future thing
<riocrokite>
I'll let other make it
<riocrokite>
along with auto-speed keeper for that ultraslow driving
stratochief is now known as stratochief|away
oeuf is now known as egg
SigmaTrain is now known as Sigma88
stratochief has joined #kspmodding
stratochief|away has quit [Ping timeout: 201 seconds]
<Sigma88>
if I have an array... how can I generate a new array with the same elements?
<Sigma88>
so that if I then edit the old array, and at a certain point I want to restore the original elements, I can do that by using the "backup" I copied at the start
regex has quit [Remote host closed the connection]
Pap is now known as Pap|Doctor
<Sigma88>
nevermind, I did it the other way around :D
<riocrokite>
Sigma88: with resized planets I can still obtain easily radius of a given planet using FlightGlobals.currentMainBody.Radius, can't I?