Jump to content

[1.4.x] TweakScale v2.3.12(Apr-16)


pellinor

Recommended Posts

1 hour ago, pellinor said:

KSPApiExtensions was stockified in 1.2, so if you have it some of your mods are badly out of date. If either TweakScale refuses to load properly or the scaling modules are not applied by MM, the nyour log will probably tell why. I can have a look if you upload it somewhere (first thing I would do is search for 'exception').

Hmm, nothing should be out of date as i just reinstalled everything in the last 2 days. This is actually one of the first problems i have had that i couldn't solve. What LOG file is it that would tell me this? and where is it located?

Link to comment
Share on other sites

42 minutes ago, Selrinn said:

Hmm, nothing should be out of date as i just reinstalled everything in the last 2 days. This is actually one of the first problems i have had that i couldn't solve. What LOG file is it that would tell me this? and where is it located?

 

The location of the log file depends on your operating system, see here for details:

To keep the size of the log file manageable, I would

* start the game, go directly to the VAB
* place a part that should be scaleable
* open the right click menu (where the scale slider is missing)
* exit the game
* and grab the log file (it always contains the data since the last start of the game)

Link to comment
Share on other sites

12 minutes ago, pellinor said:

 

To keep the size of the log file manageable, I would

* start the game, go directly to the VAB
* place a part that should be scaleable
* open the right click menu (where the scale slider is missing)
* exit the game
* and grab the log file (it always contains the data since the last start of the game)

Okay, hope this works. First time using dropbox.

https://www.dropbox.com/s/xesn0yw2e93803v/output_log.txt?dl=0

If you need a list of mods i have installed let me know.

 

Thanks

Link to comment
Share on other sites

20 hours ago, Selrinn said:

Okay, hope this works. First time using dropbox.

https://www.dropbox.com/s/xesn0yw2e93803v/output_log.txt?dl=0

If you need a list of mods i have installed let me know.

You have loads of exceptions in that log, some of them suggesting that you might be missing a working copy of ModuleManager. And indeed I don't find any traces of it in the log. This would explain why there are no TweakScale modules, and maybe also the other havoc that is happening in that log.

1 hour ago, TheDragonGamer said:

is there any way i can get a 1.1.3 version of this mod as i find so much more enjoyment out of mods and most of them are not compatable currently with 1.2

see here: https://github.com/pellinor0/TweakScale/releases

The last version for 1.1.3 should be v2.2.13

Link to comment
Share on other sites

On 11/9/2016 at 3:55 PM, pellinor said:

You have loads of exceptions in that log, some of them suggesting that you might be missing a working copy of ModuleManager. And indeed I don't find any traces of it in the log. This would explain why there are no TweakScale modules, and maybe also the other havoc that is happening in that log.

 

So sorry for wasting your time pellinor. I can't believe i missed that crucial problem lol. I use CKAN but i was duplicating my builds for my home and on the road PC. Somehow i didn't copy the dll file for MM but CKAN was reporting it was still there fully updated.

I dropped the newest DLL in my gamedata and viola! tweakscale works perfectly again :)

Thanks again for all your help and for making such an awesome mod! I couldn't play without it.

Link to comment
Share on other sites

On 09/11/2016 at 8:55 PM, pellinor said:

You have loads of exceptions in that log, some of them suggesting that you might be missing a working copy of ModuleManager. And indeed I don't find any traces of it in the log. This would explain why there are no TweakScale modules, and maybe also the other havoc that is happening in that log.

see here: https://github.com/pellinor0/TweakScale/releases

The last version for 1.1.3 should be v2.2.13

thanks man!

Link to comment
Share on other sites

Hello everyone :)

Not sure if it's known bug, but the attachment nodes on scaled items sometimes are getting misplaced. Simplest way on my 1,2 install to reproduce this is:

1. Place probobobodyne
2. Place modular girder segment on top
3. Make the girder 200% size
4. Clone the girder. The cloned one has attachment nodes misplaced like in the screenshot: http://imgur.com/a/Jc5Tw

This also happens if you clone subassembly which contains scaled part. At first it's positioned properly. But when you deattach and try to reattach, nodes will be in wrong places.

Edited by kostrubaty
Link to comment
Share on other sites

1 hour ago, linuxgurugamer said:

I'm looking at adding tweakscale to a part mod I'm maintaining.  is there a manual or description, I havent found it yet , could be because I'm on a phone right now

Better documentation is one of the things I keep procrastinating. The best advice I can give at the moment is to take a look at the TweakScale/patches/Squad folder and copy the patch from some similar part (with :NEEDS[TweakScale] if distributed with your mod).

If you want I can also make the patches. Which mod is it? You have grown quite a collection by now :-)

Link to comment
Share on other sites

1 hour ago, pellinor said:

Better documentation is one of the things I keep procrastinating. The best advice I can give at the moment is to take a look at the TweakScale/patches/Squad folder and copy the patch from some similar part (with :NEEDS[TweakScale] if distributed with your mod).

If you want I can also make the patches. Which mod is it? You have grown quite a collection by now :-)

Turned out that the mod already had it.

So, I decided to take a quick dive into the code, and came up with the following for some documentation:

Tweakscale Documentation

Table of Contents

1. TWEAKSCALEEXPONENTS
2. SCALETYPE
3. Modules
4. Field Definitions


==================================================

1.  TWEAKSCALEEXPONENTS

TWEAKSCALEEXPONENTS is used to define how much each value will be increased at each
increase in the scale.  The standard values are defined in the file ScaleExponents.cfg
The TWEAKSCALEEXPONENTS section looks like the following:

    TWEAKSCALEEXPONENTS
    {
        name = Part
        breakingForce = 2
        breakingTorque = 2
        buoyancy = 3
        explosionPotential = 3
        mass = 3
        CrewCapacity = 2
    
        Resources
        {
            !amount = 3
            !maxAmount = 3
            -ignore = ModuleFuelTanks
        }
    
        attachNodes
        {
            breakingForce = 2
            breakingTorque = 2
        }
    }

The name references the section name, in the above it's referencing a part, but any
module can be specified.  The lines reference the same fields in the parts files.

If the TWEAKSCALEEXPONENTS is inside a TweakScale node, then the name isn't needed

If a field begins with an Exclamation Point (!), then the value is used for 
relative scaling.  If it doesn't, then it is an absolute scale (needs more explanation)
the "-ignore" means to ignore that module, not do any scaling of it (???)

==================================================

2.  SCALETYPE

SCALETYPE is used to define a group of standard values which can be referenced 
in a module definition with a "type" value.  A typical example looks like
this:

    SCALETYPE
    {
        defaultScale = 
        freeScale = (true/false)
        suffix = 
        scaleFactors = 
        scaleNames =  
        minScale =
        maxScale = 
    
        incrementSlide = 
        TWEAKSCALEEXPONEdNTS { mass = 2 }
    }

==================================================

3. Modules

Tweakscale needs a module added to the part.  The module will look like, and need, 
the following:

    MODULE
    {
        name = TweakScale
        type = (scaletype)
        defaultScale = 
        freeScale = (true/false)
        suffix = 
        scaleFactors = 
        scaleNames =  
        minScale =
        maxScale = 
    
        incrementSlide = 
        incrementLarge =
        incrementSmall = 
        TWEAKSCALEEXPONENTS { mass = 2 }
    }

All of these values (except for the name and type) can appear in a SCALETYPE entry.


So, rather than having to specify all the parameters for each entry, you can define
 a global SCALETYPE, and simply reference that scaletype as follows, using ModuleManager 
syntax to insert the module into the part.  Note that any field in the SCALETYPE can be
overridden when defining the module;  the SCALETYPE defines the base values which can
then be replaced on a per-part basis as needed:

    SCALETYPE
    {
        name = stack
        freeScale = true
        defaultScale = 1.25
        suffix = m
        scaleFactors   = 0.1,  0.3,   0.625, 1.25,  2.5,  3.75, 5.0, 7.5, 10, 20
        incrementSlide = 0.01, 0.025, 0.025, 0.025, 0.05, 0.05, 0.1, 0.1, 0.2
    }
    @PART[nuclearEngineLANTR] // LANTERN Engine
    {
        %MODULE[TweakScale]
        {
            type = stack
        }
    }


==================================================

4. Field Definitions

The individual fields are:
    name = TweakScale         Module name
    type =                    References a defined SCALETYPE
    defaultScale =            The default scale, i.e. the number by which to divide 
                              tweakScale and currentScale to get the relative size 
                              difference from when the part is used without TweakScale.
    freeScale = (true/false)  Whether the part should be freely scalable or limited to 
                              destination list of allowed values.
    suffix =                  Suffix to the scale
    scaleFactors =            The scale exponentValue array. If freeScale is false, the 
                              part may only be one of these scales.
    scaleNodes =              The node scale array. If node scales are defined the nodes 
                              will be resized to these values.
    scaleNames =              The names of each scale
    minScale =                depreciated, the minimum scale for the part
    maxScale =                depreciated, the maximum scale for the part

    incrementSlide =          Increment to be used at each level (????)
    incrementLarge =          depreciated, not used
    incrementSmall =          depreciated, not used

 

Feel free to add it to the mod documentation

Link to comment
Share on other sites

6 hours ago, Benji13 said:

Can anyone please help me with a config for my mod that would allow the part to be scaled from 3.75m (or whatever kerbodyne is) to 5m, 7m, 10m, and 20m? Thanks,

Benji13. 

In what way?  Do you have something that isn't working?

We need a little more information to help you

Link to comment
Share on other sites

5 hours ago, linuxgurugamer said:

In what way?  Do you have something that isn't working?

We need a little more information to help you

Pretty much all of it. I don't really know how tweakscale works but I want to add support for it in my mod. 

Link to comment
Share on other sites

3 hours ago, Benji13 said:

Pretty much all of it. I don't really know how tweakscale works but I want to add support for it in my mod. 

What mod?

I'm not the author or maintainer for this, but, first, look at the existing configs, and second, read the post I did above in which I documented TweakScale (to the best of my ability).

Beyond that, I suppose that knowing what mod you are talking about would be helpful

Link to comment
Share on other sites

On 19.11.2016 at 2:22 AM, linuxgurugamer said:

So, I decided to take a quick dive into the code, and came up with the following for some documentation:

This is a very good start, thanks a lot! I'll see what I can correct or expand and include it for the next version.

16 hours ago, Benji13 said:

Can anyone please help me with a config for my mod that would allow the part to be scaled from 3.75m (or whatever kerbodyne is) to 5m, 7m, 10m, and 20m? Thanks,

Benji13. 

That would be something like (taken from TweakScale/patches/Squad/Squad_Tanks.cfg):

@PART[nameOfYourPart]
{
    %MODULE[TweakScale]
    {
        type = stack
        defaultScale = 3.75
    }
}

 

Link to comment
Share on other sites

2 hours ago, iSilver said:

Tweakscale and Modular Fuel Tanks are the best mods ever, so much flexibility. These should be made stock.

Most people who say this phrase have no idea what it actually means. First and foremost, scaling would be optional and support would need to be done by the authors of the part mods (today most patches are supported by me). Which means that many mod parts would just not be scaleable anymore. Stock support would be reduced to the smallest common denominator (like tanks, aero and structural). Any functionality that has its quirks (like scaling crew capacity) would be cut out. Last but not least, no updates between KSP versions. Is this really what you want?

The upside would be one folder less in your GameData.

Link to comment
Share on other sites

31 minutes ago, pellinor said:

Most people who say this phrase have no idea what it actually means. First and foremost, scaling would be optional and support would need to be done by the authors of the part mods (today most patches are supported by me). Which means that many mod parts would just not be scaleable anymore. Stock support would be reduced to the smallest common denominator (like tanks, aero and structural). Any functionality that has its quirks (like scaling crew capacity) would be cut out. Last but not least, no updates between KSP versions. Is this really what you want?

The upside would be one folder less in your GameData.

i wasn't aware of this. Of course I don't want this but are you saying that you made all of these mods scaled parts by yourself? I thought it was all parameters scaling only. I'm not sure about how visual parts scaling works, custom made textures or just... zoom-like scaling

Link to comment
Share on other sites

@pellinor would it be possible, editing some TweakScale setting, to multiply the size of each part by a certain number?

My understanding of tweakscale is that it is used to basically add different choices of size for each part.

what I want is more like, changing the parts from the stock size, to whatever size I want.

since I'm developing a mod to change the size of planets, it would seem appropriate to be able to change the size of parts as well.

Link to comment
Share on other sites

1 hour ago, Sigma88 said:

@pellinor would it be possible, editing some TweakScale setting, to multiply the size of each part by a certain number?

My understanding of tweakscale is that it is used to basically add different choices of size for each part.

what I want is more like, changing the parts from the stock size, to whatever size I want.

since I'm developing a mod to change the size of planets, it would seem appropriate to be able to change the size of parts as well.

It depends. Changing the size of the meshes is pretty simple (with a few extras like updating drag cubes if the part scale differs from the prefab).

Most of the TweakScale complexity comes from changing the various properties of the partModules to follow the scale in a somewhat reasonable way. Which has its balance issues, so I prefer to scale sparingly and consciously.

Actually it could be pretty straight forward to change the value tweakScale (value of the tweakable) from a MM config to make a part start at something other than 100%. Will have to test because I never thought of doing it that way.

Link to comment
Share on other sites

11 minutes ago, pellinor said:

It depends. Changing the size of the meshes is pretty simple (with a few extras like updating drag cubes if the part scale differs from the prefab).

Most of the TweakScale complexity comes from changing the various properties of the partModules to follow the scale in a somewhat reasonable way. Which has its balance issues, so I prefer to scale sparingly and consciously.

Actually it could be pretty straight forward to change the value tweakScale (value of the tweakable) from a MM config to make a part start at something other than 100%. Will have to test because I never thought of doing it that way.

yes I know what you mean, I still have to think what would be the best approach for this kind of feature.

stupid example, when rescaling fuel tanks I could change the amount of fuel they contain or I could change the density of the fuel itself, making it so that the same units of fuel actually account for less mass.

I'm not experienced enough in parts to understand all the factors that need recalculating, and honestly I am not even sure it will be possible to do what I want

Link to comment
Share on other sites

Hello, 

I have one rather simple question: does tweakscale scale the maxTemp of parts? I'm playing around with BDArmory atm, and even huge parts blow up just as fast as their smaller versions do. If not, is there a way to scale maxTemp as e.g. mass is scaled up (or down) via configs? I don't really want to make all parts more resistant, because that would be kinda silly on a smaller scale.

Thanks for help!

Link to comment
Share on other sites

45 minutes ago, JamesCutter said:

I have one rather simple question: does tweakscale scale the maxTemp of parts? I'm playing around with BDArmory atm, and even huge parts blow up just as fast as their smaller versions do. If not, is there a way to scale maxTemp as e.g. mass is scaled up (or down) via configs? I don't really want to make all parts more resistant, because that would be kinda silly on a smaller scale.

It should be possible via configs like other fields but I don't think it is a good idea. It would mean that small parts might already blow up at room temperature. My understanding is that large parts should resist the same temperatures but need more energy/damage to reach them. So maybe some mass / thermal-mass  related behaviour is not working the way it should? I remember the term "thermal mass" from somewhere but don't see a TWEAKSCALEEXPONENT for such a value, so this might be the property you are looking for.

Link to comment
Share on other sites

13 minutes ago, pellinor said:

It should be possible via configs like other fields but I don't think it is a good idea. It would mean that small parts might already blow up at room temperature. My understanding is that large parts should resist the same temperatures but need more energy/damage to reach them. So maybe some mass / thermal-mass  related behaviour is not working the way it should? I remember the term "thermal mass" from somewhere but don't see a TWEAKSCALEEXPONENT for such a value, so this might be the property you are looking for.

Yea i looked through the tweakscaleexponents already and didnt find anything that would do what i want. Thanks tho, gonna do some research on the thermal mass thing, maybe that'll do the trick. I looked for something related to a documentary for tweakscale, but there doesnt seem to be anything like that does it?

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...