Jump to content

OPT Spaceplane Parts - Community Maintennance


stali79

Recommended Posts

Hi folks, if this is posted in the wrong place then please feel free to move it.

 

I am one of the people that @K.Yeon has given the greenlight to maintain his mod and I am hitting a major snag when it comes to incorporating some of his older parts that he has ditched. He made a couple of nice nacelle style engines that I am trying to balance and then roll into my next update, but they are proving to be more of an issue than I expected.

 

With the help of @Nils277 I have been able to make some adjustments to drop them to something more realistic but in the process I have noticed their fuel consumption is off the scale (150LF/s for a 900kn engine that I am TRYING to turn into a dual mode engine). I implemented Nils' suggestions on changing the Atm and Vel curves, but that only partially fixed the issues. I am not a modder by the way and am stumbling my way through adjusting the cfg files so any further help would be appreciated. 

Link to comment
Share on other sites

Hi Stali,

I have a humble request and I hope that you can fulfill it. But I would of course understand if you decline because it is too much trouble (or because you don't feel comfortable modifying the mod in that regard). So I'm just asking nicely and hope for your understanding/sympathy :-)

Background: I am playing with RSS and RealFuels (amongst a lot of other mods) and I understand and completely respect that there cannot be a mm-config for every single mod that is out there - there are simply too many great mods out there. And I think it is neither your job, nor NathanKell's job to provide a mm-config. I often write my own mm configs because of that. In order to support such mm-configs - not just with Real Fuels, but also with other mods, e.g. connected living space (not sure if it supports OPT, just another example where it might be necessary to write your own mm config) - it would be very helpful if you could put something like "opt_" in front of the part names. That would make it really easy to write mod-specific mm-configs. For example FuelTanksPlus always puts "TP" in front of its parts, so addressing those fuselages might be done with something like this:

@PART[TP*]:HAS[@RESOURCE[LiquidFuel],!MODULE[ModuleFuelTanks],!MODULE[ModuleCommand]]:NEEDS[RealFuels]:FINAL

This is just to show you where I'm going with this.

Now for OPT it is a bit more tricky and much more work because the part names don't have such a universal tag. They are something like "a_6m_tanks", "c_6m_cargo", and so on. So you would to address every part seperately (I assume - sorry, I am not that firm with writing mm configs, there are probably simpler ways - but there are also a lot of ..uhm... script kiddies like me who only know a fraction of whats possible).

If you would add "OPT_" in front of it, it would really help and make it much more easier, also for other mods to support compatibility with this mod.

 

Kind regards,

caipi

P.S: sorry for the long text for that simple request. And also apologies if this is the wrong thread for it. I could post it in the original OPT-thread if you prefer.

Edited by caipi
Link to comment
Share on other sites

Here is fine mate. I have written CLS patches for most of the parts that need them but it is worth considering your suggestions. The primary downside to renaming files/parts is that it will break every craft anyone has made to date but it is still worth considering. Thank you for your suggestions. I may implement your suggestions down the line.

Link to comment
Share on other sites

On ‎4‎.‎6‎.‎2016 at 4:11 PM, stali79 said:

I have tried a few variations between 0.9/1 all the way to 0.9/15 (LF/Air) and the lowest I can get it is about 53LF/s

Actually i'm not quite sure what is your problem,but it's mandatory that you keep stock consumption values(LF/0.9,OX/1.1...)
The most important is

atmosphereCurve
{
key = 0 305  //vacuum ISP
key = 1 275  //atmosphere ISP
key = 9 0.001  //below sea level ISP
}

the ISP determinants how much is your fuel consumption(l/s) in given conditions.
If you can't figure the solution yourself,i would recommend you to copy *.cfg from stock engines and adjust "maxThrust" to suit your needs.

Edited by sebi.zzr
ISP = specific impulse
Link to comment
Share on other sites

17 minutes ago, sebi.zzr said:

Actually i'm not quite sure what is your problem,but it's mandatory that you keep stock consumption values(LF/0.9,OX/1.1...)
The most important is


atmosphereCurve
{
key = 0 305  //vacuum ISP
key = 1 275  //atmosphere ISP
key = 9 0.001  //below sea level ISP
}

the ISP determinants how much is your fuel consumption(l/s) in given conditions.
If you can't figure the solution yourself,i would recommend you to copy *.cfg from stock engines and adjust "maxThrust" to suit your needs.

Thanks for the reply, @Nils277 Gave suggested an atm curve to me that I incorporated, and it had a high fuel usage. He suggested the following, it DID drop my fuel usage down a bit but not to something reasonable. Will add a dropbox link to the original model/cfg's for the engine, the spoiler is what I have edited in my attempts to make this engine usable. The model has an intake at the front so I have also unsuccessfully tried to add

atmosphereCurve

{

key = 0 300

key = 1 270

key = 7 0.001

}

Original engine nacelles.

Spoiler

PART
{

// --- general parameters ---
name = KyEngine
module = Part
author = K.Yeon

// --- asset parameters ---
mesh = KyEngine.mu
scale = 1.0

// --- node definitions ---
//node_attach = 0.0, -0.5773602, 0.3156609, 0.0, 0, 1
node_attach = 0.6888561, 0.0965182, 0, 0.0, 0, 1

// --- FX definitions ---
MODEL_MULTI_PARTICLE
{
name=flamethrust
modelName=OPT/FX/flame-yellow
transformName=FXNode
emission=0.0 0 0
emission=0.1 3 4
emission=0.75 4 5
emission=1.0 6
speed=0.0 0.7
speed=0.4 1
}
MODEL_MULTI_PARTICLE
{
name=flamethrust2
modelName=OPT/FX/flame-blue
transformName=FXNode
emission=0.0 0 0
emission=0.1 3 4
emission=0.75 4 5
emission=1.0 6
speed=0.0 0.7
speed=0.4 1
}    
PREFAB_PARTICLE
{
name=flamethrust2_smoke
prefabName=fx_smokeTrail_light
transformName=SmokeTransform
emission=0.0 0.0
emission=0.05 0.0
emission=0.075 0.25
emission=1.0 1.25
emission=1.7 2
speed=0.0 0.25
speed=1.0 1.0
}
//fx_exhaustLight_yellow = 0.0, -0.1, 0.0, 0.0, 0.0, 1.0, power
//fx_smokeTrail_light  = 0.0, -0.1, 0.0, 0.0, 1.0, 0.0, power
//fx_exhaustSparks_flameout = 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, flameout

// --- Sound FX definition ---

sound_vent_medium = engage
sound_jet_low = running
sound_jet_deep = power
sound_vent_soft = disengage
sound_explosion_low = flameout

// --- editor parameters ---
TechRequired = highAltitudeFlight
entryCost = 185000
cost = 30000
category = Propulsion
subcategory = 0
title = TEST J81 Turbo RamJet
manufacturer = OPT
description = 

// attachment rules: stack, srfAttach, allowStack, allowSrfAttach, allowCollision
attachRules = 0,1,0,1,1

// --- standard part parameters ---
mass = 6
dragModelType = default
maximum_drag = 0.2
minimum_drag = 0.2
angularDrag = 2
crashTolerance = 60
breakingForce = 200
breakingTorque = 200
maxTemp = 2600
MODULE
{
    name = ModuleEngines
    thrustVectorTransformName = thrustTransform
    exhaustDamage = True
    ignitionThreshold = 0.1
    minThrust = 0
    maxThrust = 900
    heatProduction = 50
    useEngineResponseTime = True
    engineAccelerationSpeed = 0.05
    engineDecelerationSpeed = 0.15
    useVelocityCurve = True
    PROPELLANT
    {
        name = LiquidFuel
        ratio = 0.9
        resourceFlowMode = STAGE_PRIORITY_FLOW
        DrawGauge = True
        atmChangeFlow = True
        useVelCurve = True
        useAtmCurve = True
        machLimit = 6
        machHeatMult = 3.0
    }
    PROPELLANT
    {
        name = IntakeAir
        ignoreForIsp = True
        ratio = 1.1
        //name = Oxidizer
        //ratio = 1.1
    }
    atmosphereCurve

        {

        key = 0 300
        key = 1 270
        key = 7 0.001
        }
        
    velocityCurve

        {

        key = 0 0.5 0 0
        key = 1000 1 0 0
        key = 2000 0.5 0 0
        key = 2400 0 0 0
        }

MODULE
{
    name = ModuleAnimateHeat
    ThermalAnim = blueengine
}
    MODULE
    {
        name = ModuleResourceIntake
        resourceName = IntakeAir
        checkForOxygen = true
        area = 0.05
    intakeSpeed = 5        
    intakeTransformName = intake_transform
    }
MODULE
{
    name = ModuleGimbal
    gimbalTransformName = thrustTransform
    gimbalRange = 0.6
}

MODULE
{
    name = ModuleAlternator    
    RESOURCE
    {
        name = ElectricCharge
        rate = 5.0
    }
}
RESOURCE
{
    name = ElectricCharge
    amount = 0
    maxAmount = 0
      isTweakable = false
    hideFlow = true
}

//MODULE
//{
//    name = ModuleTestSubject
//    
    // nowhere: 0, srf: 1, ocean: 2, atmo: 4, space: 8
//    environments = 7
//    
//    useStaging = True
//    useEvent = True
//}
MODULE
{
    name = ModuleLiftingSurface
    
    deflectionLiftCoeff = 1
    dragAtMaxAoA = 0.7
    dragAtMinAoA = 0.1
}
RESOURCE
{
 name = IntakeAir
 amount = 1
 maxAmount = 3
}

}
 

 

Link to comment
Share on other sites

@stali79 I took a look at the model, and the .cfg, and there were some mismatched brackets, and syntax errors (ie name=intakeair, vs name = intakeair; IIRC, you need spaces before & after the "="), and the name of your intake transform did not match the object transform in the model. In the model, its just "Intake"... Once I changed it, the intake was sucking an ungodly amount of flow, just sitting on the runway, even with the throttle off... ??
It looks like you used the stock Rapier .cfg for guidance?

Anyway, I had half the EFFECTS working with the new method, but I also couldnt find out why its using up oxidizer so quick...

But maybe this version of the .cfg may help (you had several included in the folder, I just assumed you wanted the J81 version?)... Hopefully someone can take a look at it and see what we're missing...

Also, it looks like the main texture and emissive texture are the same?... Also, some of the emissive effects transform names in the .cfg also do not match those in the model...??

 

Spoiler

//THIS_CFG_HAS_BEEN_AUTO_COMPILED_BY_KYEON_BOT_MK1

//THIS_WORK_IS_LICENSED_UNDER_THE_CREATIVE_COMMONS_ATTRIBUTION
//_NONCOMMERCIAL_SHAREALIKE_4.0_INTERNATIONAL_LICENSE

//MODNAME: ORBIT PORTAL TECHNOLOGY SPACE PLANE PARTS

//VERSION: 1.8.1.2
//DATE_ED: 2016-05-026

PART
{
    name = j81turbojet
    module = Part
    author = K.Yeon - Stali79

    MODEL
    {
        model = OPT/Parts/Test/kyengine/KyEngine
    }
    scale = 1

    node_attach = -0.9, 0, 0, 0, 0, 0, 2

    mass = 6.0
    heatConductivity = 0.06 // half default
    skinInternalConductionMult = 4.0
    emissiveConstant = 0.8 // engine nozzles are good at radiating.
    dragModelType = default
    maximum_drag = 0.2
    minimum_drag = 0.2
    angularDrag = 2
    crashTolerance = 20
    maxTemp = 2600 // = 3600
    TechRequired = aerospaceTech
    entryCost = 35000
    cost = 6000
    category = Engine
    subcategory = 0
    title = OPT J-33 Turbojet Engine Pod
    manufacturer = ...
    attachRules = 0,1,0,1,1
    bulkheadProfiles = pod
    tags = aircraft ascent closed cycle dual fuel hybrid jet liquid main mode plane propuls rapier rocket ssto

    //sound_vent_medium = engage   done
    //sound_jet_low = running    done
    //sound_jet_deep = power   done
    //sound_vent_soft = disengage   done
    //sound_explosion_low = flameout done

    EFFECTS
    {
        running_closed
        {
            AUDIO
            {
                channel = Ship
                clip = sound_rocket_hard
                volume = 0.0 0.0
                volume = 1.0 1.0
                pitch = 0.0 0.2
                pitch = 1.0 1.0
                loop = true
            }
            PREFAB_PARTICLE
            {
                prefabName = fx_smokeTrail_veryLarge
                transformName = thrustTransform
                emission = 0.0 0.0
                emission = 0.05 0.0
                emission = 0.075 0.25
                emission = 1.0 1.25
                speed = 0.0 0.25
                speed = 1.0 1.0
                localOffset = 0, 0, 3
            }
            MODEL_MULTI_PARTICLE
            {
                modelName = Squad/FX/SRB_Large
                transformName = thrustTransform
                emission = 0.0 0.0
                emission = 0.05 0.0
                emission = 0.075 0.25
                emission = 1.0 1.25
                speed = 0.0 0.5
                speed = 1.0 1.2
                localOffset = 0, 0, 2
            }
            MODEL_PARTICLE
            {
                modelName = Squad/FX/SRB_LargeSparks
                transformName = thrustTransform
                emission = 0.0 0.0
                emission = 0.05 0.0
                emission = 0.075 0.25
                emission = 1.0 1.25
                speed = 0.0 0.5
                speed = 1.0 1.2
                localOffset = 0, 0, 3
            }
            
        power_open
        {
            AUDIO
            {
                channel = Ship
                clip = sound_jet_deep
                volume = 0.0 0.0
                volume = 0.05 0.0
                volume = 1.0 1.0
                pitch = 0.0 0.2
                pitch = 1.0 1.0
                loop = true
            }
            MODEL_MULTI_PARTICLE
            {
                modelName = Squad/FX/shockExhaust_blue
                transformName = thrustTransform
                emission = 0.0 0.0
                emission = 0.05 0.0
                emission = 0.075 0.25
                emission = 1.0 1.25
                speed = 0.0 0.5
                speed = 1.0 1.2
            }
        }
        
        running_open
        {
            AUDIO
            {
                channel = Ship
                clip = sound_jet_low
                volume = 0.0 0.0
                volume = 0.05 0.6
                volume = 1.0 1.0
                pitch = 0.0 0.7
                pitch = 1.0 1.4
                loop = true
            }
            PREFAB_PARTICLE
            {
                prefabName = fx_smokeTrail_aeroSpike
                transformName = thrustTransform
                emission = 0.0 0.0
                emission = 0.05 0.0
                emission = 0.075 0.25
                emission = 1.0 1.25
                speed = 0.0 0.25
                speed = 1.0 1.0
                localOffset = 0, 0, 1
            }
        }
        
        engage
        {
            AUDIO
            {
                channel = Ship
                clip = sound_vent_medium
                volume = 1.0
                pitch = 2.0
                loop = false
            }
        }
        
        disengage
        {
            AUDIO
            {
                channel = Ship
                clip = sound_vent_soft
                volume = 1.0
                pitch = 2.0
                loop = false
            }
        }
        
        flameout
        {
            PREFAB_PARTICLE
            {
                prefabName = fx_exhaustSparks_flameout_2
                transformName = thrustTransform
                oneShot = true
            }
            AUDIO
            {
                channel = Ship
                clip = sound_explosion_low
                volume = 1.0
                pitch = 2.0
                loop = false
            }
        }
    }

    MODULE
    {
        name = MultiModeEngine
        primaryEngineID = AirBreathing
        secondaryEngineID = ClosedCycle
    }

    MODULE
    {
        name = ModuleEnginesFX
        engineID = AirBreathing
        powerEffectName = power_open
        runningEffectName = running_open
        thrustVectorTransformName = thrustTransform
        exhaustDamage = True
        ignitionThreshold = 0.33
        minThrust = 0
        maxThrust = 750
        heatProduction = 20
        useEngineResponseTime = True
        engineAccelerationSpeed = 0.2
        engineDecelerationSpeed = 0.35
        useVelocityCurve = False
        spoolEffectName = running_open
        engineSpoolIdle = 0.05
        engineSpoolTime = 2.0
        EngineType = Turbine
        exhaustDamageMultiplier = 50
        exhaustDamageDistanceOffset = 0.19

        PROPELLANT
        {
            name = LiquidFuel
            resourceFlowMode = STAGE_STACK_FLOW_BALANCE
            ratio = 1
            DrawGauge = True
        }
        PROPELLANT
        {
            name = IntakeAir
            ignoreForIsp = True
            ratio = 6
        }

        atmosphereCurve
        {
            key = 0 3200 0 0
        }

        // Jet params
        atmChangeFlow = True
        useVelCurve = True
        useAtmCurve = True
        flowMultCap = 3.0
        // no mach (heat) limit

        velCurve
        {
            key = 0 1 0 0.08333334
            key = 0.2 0.98 0.42074 0.42074
            key = 0.7 1.8 2.290406 2.290406
            key = 1.4 4.00 3.887193 3.887193
            key = 3.75 8.5 0 0
            key = 4.5 7.3 -2.831749 -2.831749
            key = 5.5 3 -5.260566 -5.260566
            key = 6 0 -0.02420209 0
        }

        atmCurve
        {
            // higher thrust at altitude than even TRJ
            key = 0 0 0 0
            key = 0.018 0.09 7.914787 7.914787
            key = 0.08 0.3 1.051923 1.051923
            key = 0.35 0.5 0.3927226 0.3927226
            key = 1 1 1.055097 0
        }
    }

    MODULE
    {
        name = ModuleEnginesFX
        engineID = ClosedCycle
        runningEffectName = running_closed
        thrustVectorTransformName = thrustTransform
        exhaustDamage = True
        ignitionThreshold = 0.1
        minThrust = 0
        maxThrust = 600
        heatProduction = 100
        fxOffset = 0, 0, 1
        EngineType = LiquidFuel
        exhaustDamageDistanceOffset = 0.19

        PROPELLANT
        {
            name = LiquidFuel
            resourceFlowMode = STAGE_STACK_FLOW_BALANCE
            ratio = 0.9
            DrawGauge = True
        }

        PROPELLANT
        {
            name = Oxidizer
            resourceFlowMode = STAGE_STACK_FLOW_BALANCE
            DrawGauge = True
            ratio = 1.1
        }

        atmosphereCurve
        {
            key = 0 305
            key = 1 275
            key = 9 0.001
        }
    }

    MODULE
    {
        name = FXModuleAnimateThrottle
        animationName = HeatAnimationEmissiveRapier
        responseSpeed = 0.001
        dependOnEngineState = True
        dependOnThrottle = True
        preferMultiMode = True // bind to the parent multimode module, not the actual engines.
    }

    MODULE
    {
        name = ModuleGimbal
        gimbalTransformName = obj_gimbal
        gimbalRange = 3
    }

    MODULE
    {
        name = ModuleAnimateHeat
        ThermalAnim = blueengine
    }

    MODULE
    {
        name = ModuleAlternator
        RESOURCE
        {
            name = ElectricCharge
            rate = 5.0
        }
    }

    RESOURCE
    {
        name = ElectricCharge
        amount = 0
        maxAmount = 0
        isTweakable = false
        hideFlow = true
    }

//MODULE
//    {
//    name = ModuleTestSubject

    // nowhere: 0, srf: 1, ocean: 2, atmo: 4, space: 8
//    environments = 7
//    useStaging = True
//    useEvent = True
//    }

    MODULE
    {
        name = ModuleLiftingSurface
        deflectionLiftCoeff = 0.7
        dragAtMaxAoA = 0.3
        dragAtMinAoA = 0.05
    }

    MODULE
    {
        name = ModuleResourceIntake
        Name = IntakeAir
        checkForOxygen = true
        area = 0.10
        intakeSpeed = 17
        intakeTransformName = Intake

        machCurve
        {
            key = 0 0.85 0 0
            key = 1 1 0 0
            key = 2 0.95 -0.08751557 -0.08751557
            key = 4 0.5 -0.4034287 -0.4034287
            key = 8 0.01 0 0
        }
    }

    RESOURCE
    {
        name = IntakeAir
        amount = 1.0
        maxAmount = 1.7
    }

    MODULE
    {
        name = ModuleAlternator

        RESOURCE
        {
            name = ElectricCharge
            rate = 5.0
        }
    }

    RESOURCE
    {
        name = ElectricCharge
        amount = 0
        maxAmount = 0
        isTweakable = false
        hideFlow = true
    }
    
}

 

Edited by Stone Blue
Link to comment
Share on other sites

1 hour ago, Stone Blue said:

@stali79 I took a look at the model, and the .cfg, and there were some mismatched brackets, and syntax errors (ie name=intakeair, vs name = intakeair; IIRC, you need spaces before & after the "="), and the name of your intake transform did not match the object transform in the model. In the model, its just "Intake"... Once I changed it, the intake was sucking an ungodly amount of flow, just sitting on the runway, even with the throttle off... ??
It looks like you used the stock Rapier .cfg for guidance?

Anyway, I had half the EFFECTS working with the new method, but I also couldnt find out why its using up oxidizer so quick...

But maybe this version of the .cfg may help (you had several included in the folder, I just assumed you wanted the J81 version?)... Hopefully someone can take a look at it and see what we're missing...

Also, it looks like the main texture and emissive texture are the same?... Also, some of the emissive effects transform names in the .cfg also do not match those in the model...??

 

  Reveal hidden contents

//THIS_CFG_HAS_BEEN_AUTO_COMPILED_BY_KYEON_BOT_MK1

//THIS_WORK_IS_LICENSED_UNDER_THE_CREATIVE_COMMONS_ATTRIBUTION
//_NONCOMMERCIAL_SHAREALIKE_4.0_INTERNATIONAL_LICENSE

//MODNAME: ORBIT PORTAL TECHNOLOGY SPACE PLANE PARTS

//VERSION: 1.8.1.2
//DATE_ED: 2016-05-026

PART
{
    name = j81turbojet
    module = Part
    author = K.Yeon - Stali79

    MODEL
    {
        model = OPT/Parts/Test/kyengine/KyEngine
    }
    scale = 1

    node_attach = -0.9, 0, 0, 0, 0, 0, 2

    mass = 6.0
    heatConductivity = 0.06 // half default
    skinInternalConductionMult = 4.0
    emissiveConstant = 0.8 // engine nozzles are good at radiating.
    dragModelType = default
    maximum_drag = 0.2
    minimum_drag = 0.2
    angularDrag = 2
    crashTolerance = 20
    maxTemp = 2600 // = 3600
    TechRequired = aerospaceTech
    entryCost = 35000
    cost = 6000
    category = Engine
    subcategory = 0
    title = OPT J-33 Turbojet Engine Pod
    manufacturer = ...
    attachRules = 0,1,0,1,1
    bulkheadProfiles = pod
    tags = aircraft ascent closed cycle dual fuel hybrid jet liquid main mode plane propuls rapier rocket ssto

    //sound_vent_medium = engage   done
    //sound_jet_low = running    done
    //sound_jet_deep = power   done
    //sound_vent_soft = disengage   done
    //sound_explosion_low = flameout done

    EFFECTS
    {
        running_closed
        {
            AUDIO
            {
                channel = Ship
                clip = sound_rocket_hard
                volume = 0.0 0.0
                volume = 1.0 1.0
                pitch = 0.0 0.2
                pitch = 1.0 1.0
                loop = true
            }
            PREFAB_PARTICLE
            {
                prefabName = fx_smokeTrail_veryLarge
                transformName = thrustTransform
                emission = 0.0 0.0
                emission = 0.05 0.0
                emission = 0.075 0.25
                emission = 1.0 1.25
                speed = 0.0 0.25
                speed = 1.0 1.0
                localOffset = 0, 0, 3
            }
            MODEL_MULTI_PARTICLE
            {
                modelName = Squad/FX/SRB_Large
                transformName = thrustTransform
                emission = 0.0 0.0
                emission = 0.05 0.0
                emission = 0.075 0.25
                emission = 1.0 1.25
                speed = 0.0 0.5
                speed = 1.0 1.2
                localOffset = 0, 0, 2
            }
            MODEL_PARTICLE
            {
                modelName = Squad/FX/SRB_LargeSparks
                transformName = thrustTransform
                emission = 0.0 0.0
                emission = 0.05 0.0
                emission = 0.075 0.25
                emission = 1.0 1.25
                speed = 0.0 0.5
                speed = 1.0 1.2
                localOffset = 0, 0, 3
            }
            
        power_open
        {
            AUDIO
            {
                channel = Ship
                clip = sound_jet_deep
                volume = 0.0 0.0
                volume = 0.05 0.0
                volume = 1.0 1.0
                pitch = 0.0 0.2
                pitch = 1.0 1.0
                loop = true
            }
            MODEL_MULTI_PARTICLE
            {
                modelName = Squad/FX/shockExhaust_blue
                transformName = thrustTransform
                emission = 0.0 0.0
                emission = 0.05 0.0
                emission = 0.075 0.25
                emission = 1.0 1.25
                speed = 0.0 0.5
                speed = 1.0 1.2
            }
        }
        
        running_open
        {
            AUDIO
            {
                channel = Ship
                clip = sound_jet_low
                volume = 0.0 0.0
                volume = 0.05 0.6
                volume = 1.0 1.0
                pitch = 0.0 0.7
                pitch = 1.0 1.4
                loop = true
            }
            PREFAB_PARTICLE
            {
                prefabName = fx_smokeTrail_aeroSpike
                transformName = thrustTransform
                emission = 0.0 0.0
                emission = 0.05 0.0
                emission = 0.075 0.25
                emission = 1.0 1.25
                speed = 0.0 0.25
                speed = 1.0 1.0
                localOffset = 0, 0, 1
            }
        }
        
        engage
        {
            AUDIO
            {
                channel = Ship
                clip = sound_vent_medium
                volume = 1.0
                pitch = 2.0
                loop = false
            }
        }
        
        disengage
        {
            AUDIO
            {
                channel = Ship
                clip = sound_vent_soft
                volume = 1.0
                pitch = 2.0
                loop = false
            }
        }
        
        flameout
        {
            PREFAB_PARTICLE
            {
                prefabName = fx_exhaustSparks_flameout_2
                transformName = thrustTransform
                oneShot = true
            }
            AUDIO
            {
                channel = Ship
                clip = sound_explosion_low
                volume = 1.0
                pitch = 2.0
                loop = false
            }
        }
    }

    MODULE
    {
        name = MultiModeEngine
        primaryEngineID = AirBreathing
        secondaryEngineID = ClosedCycle
    }

    MODULE
    {
        name = ModuleEnginesFX
        engineID = AirBreathing
        powerEffectName = power_open
        runningEffectName = running_open
        thrustVectorTransformName = thrustTransform
        exhaustDamage = True
        ignitionThreshold = 0.33
        minThrust = 0
        maxThrust = 750
        heatProduction = 20
        useEngineResponseTime = True
        engineAccelerationSpeed = 0.2
        engineDecelerationSpeed = 0.35
        useVelocityCurve = False
        spoolEffectName = running_open
        engineSpoolIdle = 0.05
        engineSpoolTime = 2.0
        EngineType = Turbine
        exhaustDamageMultiplier = 50
        exhaustDamageDistanceOffset = 0.19

        PROPELLANT
        {
            name = LiquidFuel
            resourceFlowMode = STAGE_STACK_FLOW_BALANCE
            ratio = 1
            DrawGauge = True
        }
        PROPELLANT
        {
            name = IntakeAir
            ignoreForIsp = True
            ratio = 6
        }

        atmosphereCurve
        {
            key = 0 3200 0 0
        }

        // Jet params
        atmChangeFlow = True
        useVelCurve = True
        useAtmCurve = True
        flowMultCap = 3.0
        // no mach (heat) limit

        velCurve
        {
            key = 0 1 0 0.08333334
            key = 0.2 0.98 0.42074 0.42074
            key = 0.7 1.8 2.290406 2.290406
            key = 1.4 4.00 3.887193 3.887193
            key = 3.75 8.5 0 0
            key = 4.5 7.3 -2.831749 -2.831749
            key = 5.5 3 -5.260566 -5.260566
            key = 6 0 -0.02420209 0
        }

        atmCurve
        {
            // higher thrust at altitude than even TRJ
            key = 0 0 0 0
            key = 0.018 0.09 7.914787 7.914787
            key = 0.08 0.3 1.051923 1.051923
            key = 0.35 0.5 0.3927226 0.3927226
            key = 1 1 1.055097 0
        }
    }

    MODULE
    {
        name = ModuleEnginesFX
        engineID = ClosedCycle
        runningEffectName = running_closed
        thrustVectorTransformName = thrustTransform
        exhaustDamage = True
        ignitionThreshold = 0.1
        minThrust = 0
        maxThrust = 600
        heatProduction = 100
        fxOffset = 0, 0, 1
        EngineType = LiquidFuel
        exhaustDamageDistanceOffset = 0.19

        PROPELLANT
        {
            name = LiquidFuel
            resourceFlowMode = STAGE_STACK_FLOW_BALANCE
            ratio = 0.9
            DrawGauge = True
        }

        PROPELLANT
        {
            name = Oxidizer
            resourceFlowMode = STAGE_STACK_FLOW_BALANCE
            DrawGauge = True
            ratio = 1.1
        }

        atmosphereCurve
        {
            key = 0 305
            key = 1 275
            key = 9 0.001
        }
    }

    MODULE
    {
        name = FXModuleAnimateThrottle
        animationName = HeatAnimationEmissiveRapier
        responseSpeed = 0.001
        dependOnEngineState = True
        dependOnThrottle = True
        preferMultiMode = True // bind to the parent multimode module, not the actual engines.
    }

    MODULE
    {
        name = ModuleGimbal
        gimbalTransformName = obj_gimbal
        gimbalRange = 3
    }

    MODULE
    {
        name = ModuleAnimateHeat
        ThermalAnim = blueengine
    }

    MODULE
    {
        name = ModuleAlternator
        RESOURCE
        {
            name = ElectricCharge
            rate = 5.0
        }
    }

    RESOURCE
    {
        name = ElectricCharge
        amount = 0
        maxAmount = 0
        isTweakable = false
        hideFlow = true
    }

//MODULE
//    {
//    name = ModuleTestSubject

    // nowhere: 0, srf: 1, ocean: 2, atmo: 4, space: 8
//    environments = 7
//    useStaging = True
//    useEvent = True
//    }

    MODULE
    {
        name = ModuleLiftingSurface
        deflectionLiftCoeff = 0.7
        dragAtMaxAoA = 0.3
        dragAtMinAoA = 0.05
    }

    MODULE
    {
        name = ModuleResourceIntake
        Name = IntakeAir
        checkForOxygen = true
        area = 0.10
        intakeSpeed = 17
        intakeTransformName = Intake

        machCurve
        {
            key = 0 0.85 0 0
            key = 1 1 0 0
            key = 2 0.95 -0.08751557 -0.08751557
            key = 4 0.5 -0.4034287 -0.4034287
            key = 8 0.01 0 0
        }
    }

    RESOURCE
    {
        name = IntakeAir
        amount = 1.0
        maxAmount = 1.7
    }

    MODULE
    {
        name = ModuleAlternator

        RESOURCE
        {
            name = ElectricCharge
            rate = 5.0
        }
    }

    RESOURCE
    {
        name = ElectricCharge
        amount = 0
        maxAmount = 0
        isTweakable = false
        hideFlow = true
    }
    
}

 

Yeah a lot of that was my butchery in my attempts to get it working. I have just installed blender and unity and still trying to make heads or tails of those. The _EM textures should be his emissives. Was either the stock rapier or the mk4 scimitar i used. I really appreciate your help.

EDIT1: Actually I think I used the Hangar mod's Radial Sabre as my guide.

EDIT2: copied your config over the top of mine, interestingly it didn't show as an engine per se which I found odd. Couldn't right click it and when I loaded onto the runway I had massive flames coming out the back but they did nothing beyond that. Also when placed in the SPH they were glowing white hot.

Edited by stali79
Link to comment
Share on other sites

42 minutes ago, stali79 said:

EDIT: copied your config over the top of mine, interestingly it didn't show as an engine per se which I found odd. Couldn't right click it and when I loaded onto the runway I had massive flames coming out the back but they did nothing beyond that. Also when placed in the SPH they were glowing white hot.

Yup... I messed with it for a couple hours, and got the exhaust effects working, right-click was working... The engines seemed to run in a weird, combination of both versions at the same time, and oxidizer ran out a few seconds after clearing the end of the runway...

Thats when i scrubbed the .cfg and found the mismatched brackets and the incorrectly called intake transform. As soon as I changed those, I saw the EXACT same symptoms you now have... At that point, I pretty much had to stop, and do some work on a mod I'm helping out with...

Its weird, because when I get a part that suddenly, or doesnt have any right-click menu in the editor, and basically does NOTHING in the editor, I've found most times its an issue with the collider... Looking at your model, I DID notice the collider was probably more detailed than it needs to be... ??
However, I dont know how changing the .cfg would suddenly affect the collider... :(

I'm guessing when I corrected a couple of the mismatched brackets, suddenly broken or incorrectly defined MODULES are now being used, that were previously just being ignored, and thats why the sudden "breakage"... Unfortunately, i didnt think to keep track of which they were... :P

Also, I know some of the effects modes arent working... I'm still new to the newer EFFECTS{} modules, rather than the older prefab method...So those will need tweaking...

Sorry I cant be more help right now... I'm a VERY new, novice to modelling, & still have a lot to learn about the more complicated stuff in .cfgs...

Edited by Stone Blue
Link to comment
Share on other sites

15 hours ago, stali79 said:

The primary downside to renaming files/parts is that it will break every craft anyone has made to date but it is still worth considering

Being as this is a developing mod, it's to be expected to break existing craft. You cannot be afraid to implement changes if it's for the good of the mod. So, renaming parts will break existing crafts. And this is a problem how? Giving a conventional naming system for the parts IS an awesome idea and will be beneficial for you in the long run if you continue to keep this mod up to date. Besides, it's sound advice to not really make craft files and solely rely on themwith a developing mod to begin with. Sure, you can do it, but if you feel that something needs to be changed that may break crafts, well, sucks to be them. At least this mod is going somewhere, instead of sitting still. Just do what you gotta do. Give people a heads up and if they got a problem with it, they can easily remove the mod as quickly as they installed it. 

Link to comment
Share on other sites

One idea I saw from Nils277 was make a depreciated config of the old name (and make it no longer show up in the tech tree or VAB) and switch it to a rusty or crusty texture of some kind to give people notice that part is no longer there and they better replace it with the current version. Then the next version (or two) you remove those old configs. 
He was even talking about having multiple phases of rusty to let people know how close it was to the old part being removed.

Link to comment
Share on other sites

Thanks for the Reply.

I just downloaded the latest version and I ran into a few issues: Some (new/old?!) parts have inverted stack nodes. If you try to put them on any conventional parts, they will not fit and need to be turned around - resulting in going through the other object. But they connect fine to each other.

The following objects are causing the issue (maybe even more):

Spoiler

Opt B Cargo Bay Mk 1

Opt B 'Freight' Cargo Bay

Opt B 'Freight' Tail Cargo Loader

Opt B 'Freight'CargoBay Adapter

Right now I can just turn the first part around, so not a gamebreaking bug.

screenshot12ptsg9.png

And I kind of agree with Comatose Jedi. You will run into a safebreaking update eventually. Sooner is usually better than later :) Just give people a heads up whenever it happens and you'll be fine :wink: People usually understand. But again, just a humble request/advice, nothing more.

Edited by caipi
image added
Link to comment
Share on other sites

41 minutes ago, caipi said:

Thanks for the Reply.

I just downloaded the latest version and I ran into a few issues: Some (new/old?!) parts have inverted stack nodes. If you try to put them on any conventional parts, they will not fit and need to be turned around - resulting in going through the other object. But they connect fine to each other.

The following objects are causing the issue (maybe even more):

  Hide contents

Opt B Cargo Bay Mk 1

Opt B 'Freight' Cargo Bay

Opt B 'Freight' Tail Cargo Loader

Opt B 'Freight'CargoBay Adapter

Right now I can just turn the first part around, so not a gamebreaking bug.

screenshot12ptsg9.png

And I kind of Comatose Jedi. You will run into a safebreaking update eventually. Sooner is usually better than later :) Just give people a heads up whenever it happens and you'll be fine :wink: People usually understand. But again, just a humble request/advice, nothing more.

i am happy to fix the nodes, if someone can tell me how to do it.

EDIT: a work around is to turn on the non strict part alignment checks.

Edited by stali79
Link to comment
Share on other sites

Hey Stali,

sorry for the late reply. I am not a modder, so I had to look into it myself. From looking at the source code and from testing it, it looks like you have edit the fifth value in the node definitions and invert its +/- sign: 1 <-> -1

e.g. for OPT B Cargo Bay Mk 1

// --- node definitions --- // old (wrong)
node_stack_top    = 0.0,  2.039321, 0, 0.0, -1.0, 0.0, 3
node_stack_bottom = 0.0, -1.976694, 0, 0.0,  1.0, 0.0, 3


// --- node definitions --- // new (correct)
node_stack_top    = 0.0,  2.039321, 0, 0.0, 1.0, 0.0, 3
node_stack_bottom = 0.0, -1.976694, 0, 0.0, -1.0, 0.0, 3

If I had to guess, I would say that the first three values represent the position on the X, Y and Z axis and the next three represent the orientation of the node on the X, Y and Z axis. The seventh value is probably some kind of stack node modifier/identifier. But this is a wild guess now. I actually have no clue :wink:

Edited by caipi
Link to comment
Share on other sites

@stali79, as far as stack nodes go, a tool I've found very helpful is NodeHelper

Instead of guessing on node coords, orientations, and even size, NodeHelper shows the nodes visually, and lets you edit them, so you can SEE the edits live, instead of having to reload KSP or the dtabase after every .cfg change to get the nodes "just" right... Just be aware, there seems to be an issue with node coords, when "rescaleFactor = " is defined in a .cfg as any thing other than 1.25. (if "rescaleFactor" is NOT present in the cfg, the factor defaults to 1.25.
NodeHelper still works with other factors, but you have to do some manual conversions on coords when the factor is anything other than 1.25.

Edited by Stone Blue
Link to comment
Share on other sites

6 minutes ago, Stone Blue said:

@stali79, as far as stack nodes go, a tool I've found very helpful is NodeHelper

Instead of guessing on node coords, orientations, and even size, NodeHelper shows the nodes visually, and lets you edit them, so you can SEE the edits live, instead of having to reload KSP or the dtabase after every .cfg change to get the nodes "just" right... Just be aware, there seems to be an issue with node coords, when "rescaleFactor = " is defined in a .cfg as any thing other than 1.25. NodeHelper still works with other factors, but you have to do some manual conversions on coords when the factor is anything other than 1.25.

Oh nice! Thanks dude!

Link to comment
Share on other sites

hello @stali79,regarding the "dual mode engine",if you can test this *.cfg and see if it fits your needs

j81turbo.cfg:

Spoiler


PART
{
name = j81turbojet
module = Part
author = sebi.zzr
 
MODEL
{
 model = OPT/Parts/Test/kyengine/KyEngine
}
scale = 1.0
node_attach = 0.6888561, 0.0965182, 0, 0.0, 0, 1
attachRules = 0,1,0,1,1
TechRequired = aerospaceTech
entryCost = 35000
cost = 6000
category = Engine
subcategory = 0
title = OPT J-33 Turbojet Engine Pod
manufacturer = K.Yeon - Stali79
dragModelType = default
maximum_drag = 0.2
minimum_drag = 0.2
angularDrag = 2
crashTolerance = 100
mass = 6.0
maxTemp = 2600 // = 3600
heatConductivity = 0.06 // half default
skinInternalConductionMult = 4.0
emissiveConstant = 0.8 // engine nozzles are good at radiating. 
bulkheadProfiles = pod
tags = aircraft ascent closed cycle dual fuel hybrid jet liquid main mode plane propuls rapier rocket ssto

EFFECTS
{
 running_closed
 {
 PREFAB_PARTICLE
  {
  name = flamethrust2
  prefabName = fx_smokeTrail_light
  transformName = thrustTransform
  emission = 0.0 0.0
  emission = 0.05 0.0
  emission = 0.075 0.25
  emission = 1.0 1.25
  emission = 1.7 2
  speed = 0.0 0.25
  speed = 1.0 1.0
  localRotation = 1, 0, 0, -90
  }
  AUDIO
  {
  name = jethumm //Ram effect
  channel = Ship
  clip = sound_jet_deep
  volume = 0.0 0.0
  volume = 0.1 1
  volume = 1.0 1.5
  volume = 1.7 2.5
  pitch = 0.0 0.8
  pitch = 0.5 1
  pitch = 1.0 3
  pitch = 1.7 5
  loop = true
  }
  AUDIO
  {
  name = jetscreamHighSpeed
  channel = Ship
  clip = sound_jet_low
  volume = 0.9 0.0
  volume = 1.0 0.1
  volume = 1.7 2
  pitch = 0.9 1.5
  pitch = 1.7 3
  loop = true
  }
  AUDIO
  {
  name = rocketsound
  channel = Ship
  clip = sound_rocket_mini
  volume = 0.0 0.0
  volume = 1.0 0.8
  volume = 1.7 0.2
  pitch = 0.0 0.2
  pitch = 1.0 0.3
  pitch = 1.7 0.4
  loop = true
  }
  MODEL_MULTI_PARTICLE
  {
  name = flamethrust
  modelName = OPT/FX/RedGreenFlame
  transformName = thrustTransform
  emission = 0.2 0.0
  emission = 0.5 5 6
  emission = 0.75 9 10
  emission = 1.0 12
  speed = 0.0 0.7
  speed = 0.4 1
  }
 // MODEL_MULTI_PARTICLE
  //{
 // name = flamethrustTwo
  //modelName = OPT/FX/blueengine
  //transformName = thrustTransform
 // emission = 0.2 0.0
 // emission = 0.5 5 6
  //emission = 0.75 9 10
  //emission = 1.0 12
  //speed = 0.0 0.7
  //speed = 0.4 1
 // }
  AUDIO
  {
  name = jetscream
  channel = Ship
  clip = sound_jet_low
  volume = 0.0 0.0
  volume = 0.1 0.4
  volume = 0.6 0.8
  volume = 1.0 0.3
  volume = 1.5 0.2
  pitch = 0.0 0.1
  pitch = 0.5 0.2
  pitch = 1.0 0.3
  pitch = 1.7 3
  loop = true
  }
 }
 power_open
 {
  AUDIO
  {
  channel = Ship
  clip = sound_rocket_spurts
  volume = 0.0 0.0
  volume = 0.05 0.0
  volume = 1.0 1.0
  pitch = 0.0 0.2
  pitch = 1.0 1.0
  loop = true
  }
  MODEL_MULTI_PARTICLE
  {
  name = flamethrustjet
  modelName = OPT/FX/ARI
  transformName = thrustTransform
  emission = 0.0 0.0
  emission = 0.05 0.0
  emission = 0.075 0.25
  emission = 1.0 1.25
  speed = 0.0 0.5
  speed = 1.0 1.2
  }
 }
 running_open
 {
  AUDIO
  {
  channel = Ship
  clip = sound_jet_low
  volume = 0.0 0.0
  volume = 0.1 1.5
  volume = 1.0 2.0
  pitch = 0.0 0.2
  pitch = 1.0 1.0
  loop = true
  }
  PREFAB_PARTICLE
  {
  prefabName = fx_smokeTrail_light
  transformName = thrustTransform
  emission = 0.0 0.0
  emission = 0.05 0.0
  emission = 0.075 0.25
  emission = 1.0 1.25
  speed = 0.0 0.25
  speed = 1.0 1.0
  localOffset = 0, 0, 1
  localRotation = 1, 0, 0, -90
  }
 }
 engage
 {
  AUDIO
  {
  channel = Ship
  clip = sound_vent_soft
  volume = 1.0
  pitch = 2.0
  loop = false
  }
 }
 disengage
 {
  AUDIO
  {
  channel = Ship
  clip = sound_vent_soft
  volume = 1.0
  pitch = 2.0
  loop = false
  }
 }
 flameout
 {
  PREFAB_PARTICLE
  {
  prefabName = fx_exhaustSparks_flameout_2
  transformName = thrustTransform
  oneShot = true
  }
  AUDIO
  {
  channel = Ship
  clip = sound_explosion_low
  volume = 1.0
  pitch = 2.0
  loop = false
  }
 }
}
 
MODULE
{
 name = MultiModeEngine
 primaryEngineID = AirBreathing
 secondaryEngineID = ClosedCycle
}

MODULE
{
 name = ModuleEnginesFX
 engineID = AirBreathing
 powerEffectName = power_open
 thrustVectorTransformName = thrustTransform
 exhaustDamage = True
 ignitionThreshold = 0.33
 minThrust = 0
 maxThrust = 550
 heatProduction = 60
 useEngineResponseTime = True
 engineAccelerationSpeed = 0.2
 engineDecelerationSpeed = 0.35
 useVelocityCurve = False  
 spoolEffectName = running_open
 engineSpoolIdle = 0.05
 engineSpoolTime = 2.0
 EngineType = Turbine
 exhaustDamageMultiplier = 50

 PROPELLANT
 {
 name = LiquidFuel
 resourceFlowMode = STAGE_STACK_FLOW_BALANCE
 ratio = 0.9
 DrawGauge = True
 }

 PROPELLANT
 {
 name = IntakeAir
 ignoreForIsp = True
 ratio = 15
 }

 atmosphereCurve
 {
 key = 0 7000 0 0
 }

 atmChangeFlow = True
 useVelCurve = True
 useAtmCurve = True
 machLimit = 6

 velCurve
 {
 key = 0 1 0 0.08333334
 key = 0.2 0.98 0.42074 0.42074
 key = 0.7 1.8 2.290406 2.290406
 key = 1.4 4.00 3.887193 3.887193
 key = 3.75 8.5 0 0
 key = 4.5 7.3 -2.831749 -2.831749
 key = 5.5 3 -5.260566 -5.260566
 key = 6 0 -0.02420209 0
 }

 atmCurve
 {
 key = 0 0 0 0
 key = 0.018 0.09 7.914787 7.914787
 key = 0.08 0.3 1.051923 1.051923
 key = 0.35 0.5 0.3927226 0.3927226
 key = 1 1 1.055097 0
 }
}

MODULE
{
 name = ModuleEnginesFX
 engineID = ClosedCycle
 runningEffectName = running_closed
 thrustVectorTransformName = thrustTransform
 exhaustDamage = True
 ignitionThreshold = 0.1
 minThrust = 0
 maxThrust = 600
 heatProduction = 100
 EngineType = LiquidFuel

 PROPELLANT
 {
 name = LiquidFuel
 resourceFlowMode = STAGE_STACK_FLOW_BALANCE
 ratio = 0.9
 DrawGauge = True
 }

 PROPELLANT
 {
 name = Oxidizer
 resourceFlowMode = STAGE_STACK_FLOW_BALANCE
 ratio = 1.1
 }

 atmosphereCurve
 {
 key = 0 2000
 key = 0.1 2800
 key = 0.4 3200
 key = 0.9 1000
 key = 1 900
 key = 9 0.001
 }
}

MODULE
{
 name = FXModuleAnimateThrottle
 animationName = blueengine
 responseSpeed = 0.005
 dependOnEngineState = True
 dependOnThrottle = True
 preferMultiMode = True // bind to the parent multimode module, not the actual engines.
}

MODULE
{
 name = ModuleGimbal
 gimbalTransformName = thrustTransform
 gimbalRange = 3
}

MODULE
{
 name = ModuleAlternator 
 RESOURCE
 {
 name = ElectricCharge
 rate = 5.0
 }
}

RESOURCE
{
 name = ElectricCharge
 amount = 0
 maxAmount = 0
 isTweakable = false
 hideFlow = true
}

//MODULE
//{
 //name = ModuleLiftingSurface 
 //deflectionLiftCoeff = 0.7
 //dragAtMaxAoA = 0.3
 //dragAtMinAoA = 0.05
//}

MODULE
{
 name = ModuleResourceIntake
 resourceName = IntakeAir
 checkForOxygen = true
 area = 0.0074
 intakeSpeed = 10
 intakeTransformName = Intake
 machCurve
 {
  key = 0 0.85 0 0
  key = 1 1 0 0
  key = 2 0.95 -0.08751557 -0.08751557
  key = 4 0.5 -0.4034287 -0.4034287
  key = 8 0.01 0 0
 }
}

RESOURCE
{
 name = IntakeAir
 amount = 2
 maxAmount = 2
}
}

 

Edited by sebi.zzr
cfg check
Link to comment
Share on other sites

16 hours ago, sebi.zzr said:

hello @stali79,regarding the "dual mode engine",if you can test this *.cfg and see if it fits your needs

j81turbo.cfg:

  Reveal hidden contents


PART
{
name = j81turbojet
module = Part
author = sebi.zzr
 
MODEL
{
 model = OPT/Parts/Test/kyengine/KyEngine
}
scale = 1.0
node_attach = 0.6888561, 0.0965182, 0, 0.0, 0, 1
attachRules = 0,1,0,1,1
TechRequired = aerospaceTech
entryCost = 35000
cost = 6000
category = Engine
subcategory = 0
title = OPT J-33 Turbojet Engine Pod
manufacturer = K.Yeon - Stali79
dragModelType = default
maximum_drag = 0.2
minimum_drag = 0.2
angularDrag = 2
crashTolerance = 100
mass = 6.0
maxTemp = 2600 // = 3600
heatConductivity = 0.06 // half default
skinInternalConductionMult = 4.0
emissiveConstant = 0.8 // engine nozzles are good at radiating. 
bulkheadProfiles = pod
tags = aircraft ascent closed cycle dual fuel hybrid jet liquid main mode plane propuls rapier rocket ssto

EFFECTS
{
 running_closed
 {
 PREFAB_PARTICLE
  {
  name = flamethrust2
  prefabName = fx_smokeTrail_light
  transformName = thrustTransform
  emission = 0.0 0.0
  emission = 0.05 0.0
  emission = 0.075 0.25
  emission = 1.0 1.25
  emission = 1.7 2
  speed = 0.0 0.25
  speed = 1.0 1.0
  localRotation = 1, 0, 0, -90
  }
  AUDIO
  {
  name = jethumm //Ram effect
  channel = Ship
  clip = sound_jet_deep
  volume = 0.0 0.0
  volume = 0.1 1
  volume = 1.0 1.5
  volume = 1.7 2.5
  pitch = 0.0 0.8
  pitch = 0.5 1
  pitch = 1.0 3
  pitch = 1.7 5
  loop = true
  }
  AUDIO
  {
  name = jetscreamHighSpeed
  channel = Ship
  clip = sound_jet_low
  volume = 0.9 0.0
  volume = 1.0 0.1
  volume = 1.7 2
  pitch = 0.9 1.5
  pitch = 1.7 3
  loop = true
  }
  AUDIO
  {
  name = rocketsound
  channel = Ship
  clip = sound_rocket_mini
  volume = 0.0 0.0
  volume = 1.0 0.8
  volume = 1.7 0.2
  pitch = 0.0 0.2
  pitch = 1.0 0.3
  pitch = 1.7 0.4
  loop = true
  }
  MODEL_MULTI_PARTICLE
  {
  name = flamethrust
  modelName = OPT/FX/RedGreenFlame
  transformName = thrustTransform
  emission = 0.2 0.0
  emission = 0.5 5 6
  emission = 0.75 9 10
  emission = 1.0 12
  speed = 0.0 0.7
  speed = 0.4 1
  }
 // MODEL_MULTI_PARTICLE
  //{
 // name = flamethrustTwo
  //modelName = OPT/FX/blueengine
  //transformName = thrustTransform
 // emission = 0.2 0.0
 // emission = 0.5 5 6
  //emission = 0.75 9 10
  //emission = 1.0 12
  //speed = 0.0 0.7
  //speed = 0.4 1
 // }
  AUDIO
  {
  name = jetscream
  channel = Ship
  clip = sound_jet_low
  volume = 0.0 0.0
  volume = 0.1 0.4
  volume = 0.6 0.8
  volume = 1.0 0.3
  volume = 1.5 0.2
  pitch = 0.0 0.1
  pitch = 0.5 0.2
  pitch = 1.0 0.3
  pitch = 1.7 3
  loop = true
  }
 }
 power_open
 {
  AUDIO
  {
  channel = Ship
  clip = sound_rocket_spurts
  volume = 0.0 0.0
  volume = 0.05 0.0
  volume = 1.0 1.0
  pitch = 0.0 0.2
  pitch = 1.0 1.0
  loop = true
  }
  MODEL_MULTI_PARTICLE
  {
  name = flamethrustjet
  modelName = OPT/FX/ARI
  transformName = thrustTransform
  emission = 0.0 0.0
  emission = 0.05 0.0
  emission = 0.075 0.25
  emission = 1.0 1.25
  speed = 0.0 0.5
  speed = 1.0 1.2
  }
 }
 running_open
 {
  AUDIO
  {
  channel = Ship
  clip = sound_jet_low
  volume = 0.0 0.0
  volume = 0.1 1.5
  volume = 1.0 2.0
  pitch = 0.0 0.2
  pitch = 1.0 1.0
  loop = true
  }
  PREFAB_PARTICLE
  {
  prefabName = fx_smokeTrail_light
  transformName = thrustTransform
  emission = 0.0 0.0
  emission = 0.05 0.0
  emission = 0.075 0.25
  emission = 1.0 1.25
  speed = 0.0 0.25
  speed = 1.0 1.0
  localOffset = 0, 0, 1
  localRotation = 1, 0, 0, -90
  }
 }
 engage
 {
  AUDIO
  {
  channel = Ship
  clip = sound_vent_soft
  volume = 1.0
  pitch = 2.0
  loop = false
  }
 }
 disengage
 {
  AUDIO
  {
  channel = Ship
  clip = sound_vent_soft
  volume = 1.0
  pitch = 2.0
  loop = false
  }
 }
 flameout
 {
  PREFAB_PARTICLE
  {
  prefabName = fx_exhaustSparks_flameout_2
  transformName = thrustTransform
  oneShot = true
  }
  AUDIO
  {
  channel = Ship
  clip = sound_explosion_low
  volume = 1.0
  pitch = 2.0
  loop = false
  }
 }
}
 
MODULE
{
 name = MultiModeEngine
 primaryEngineID = AirBreathing
 secondaryEngineID = ClosedCycle
}

MODULE
{
 name = ModuleEnginesFX
 engineID = AirBreathing
 powerEffectName = power_open
 thrustVectorTransformName = thrustTransform
 exhaustDamage = True
 ignitionThreshold = 0.33
 minThrust = 0
 maxThrust = 550
 heatProduction = 60
 useEngineResponseTime = True
 engineAccelerationSpeed = 0.2
 engineDecelerationSpeed = 0.35
 useVelocityCurve = False  
 spoolEffectName = running_open
 engineSpoolIdle = 0.05
 engineSpoolTime = 2.0
 EngineType = Turbine
 exhaustDamageMultiplier = 50

 PROPELLANT
 {
 name = LiquidFuel
 resourceFlowMode = STAGE_STACK_FLOW_BALANCE
 ratio = 0.9
 DrawGauge = True
 }

 PROPELLANT
 {
 name = IntakeAir
 ignoreForIsp = True
 ratio = 15
 }

 atmosphereCurve
 {
 key = 0 7000 0 0
 }

 atmChangeFlow = True
 useVelCurve = True
 useAtmCurve = True
 machLimit = 6

 velCurve
 {
 key = 0 1 0 0.08333334
 key = 0.2 0.98 0.42074 0.42074
 key = 0.7 1.8 2.290406 2.290406
 key = 1.4 4.00 3.887193 3.887193
 key = 3.75 8.5 0 0
 key = 4.5 7.3 -2.831749 -2.831749
 key = 5.5 3 -5.260566 -5.260566
 key = 6 0 -0.02420209 0
 }

 atmCurve
 {
 key = 0 0 0 0
 key = 0.018 0.09 7.914787 7.914787
 key = 0.08 0.3 1.051923 1.051923
 key = 0.35 0.5 0.3927226 0.3927226
 key = 1 1 1.055097 0
 }
}

MODULE
{
 name = ModuleEnginesFX
 engineID = ClosedCycle
 runningEffectName = running_closed
 thrustVectorTransformName = thrustTransform
 exhaustDamage = True
 ignitionThreshold = 0.1
 minThrust = 0
 maxThrust = 600
 heatProduction = 100
 EngineType = LiquidFuel

 PROPELLANT
 {
 name = LiquidFuel
 resourceFlowMode = STAGE_STACK_FLOW_BALANCE
 ratio = 0.9
 DrawGauge = True
 }

 PROPELLANT
 {
 name = Oxidizer
 resourceFlowMode = STAGE_STACK_FLOW_BALANCE
 ratio = 1.1
 }

 atmosphereCurve
 {
 key = 0 2000
 key = 0.1 2800
 key = 0.4 3200
 key = 0.9 1000
 key = 1 900
 key = 9 0.001
 }
}

MODULE
{
 name = FXModuleAnimateThrottle
 animationName = blueengine
 responseSpeed = 0.005
 dependOnEngineState = True
 dependOnThrottle = True
 preferMultiMode = True // bind to the parent multimode module, not the actual engines.
}

MODULE
{
 name = ModuleGimbal
 gimbalTransformName = thrustTransform
 gimbalRange = 3
}

MODULE
{
 name = ModuleAlternator 
 RESOURCE
 {
 name = ElectricCharge
 rate = 5.0
 }
}

RESOURCE
{
 name = ElectricCharge
 amount = 0
 maxAmount = 0
 isTweakable = false
 hideFlow = true
}

//MODULE
//{
 //name = ModuleLiftingSurface 
 //deflectionLiftCoeff = 0.7
 //dragAtMaxAoA = 0.3
 //dragAtMinAoA = 0.05
//}

MODULE
{
 name = ModuleResourceIntake
 resourceName = IntakeAir
 checkForOxygen = true
 area = 0.0074
 intakeSpeed = 10
 intakeTransformName = Intake
 machCurve
 {
  key = 0 0.85 0 0
  key = 1 1 0 0
  key = 2 0.95 -0.08751557 -0.08751557
  key = 4 0.5 -0.4034287 -0.4034287
  key = 8 0.01 0 0
 }
}

RESOURCE
{
 name = IntakeAir
 amount = 2
 maxAmount = 2
}
}

 

Duuuuuuuude!!! Its perfect! Just need to figure out how to give it better exhaust effects :) thank you for your help.

 

EDIT: oops forgot I have no fx folder in my current install for the mod rebuild.

EDIT2: Ok just checked it proper, should it be hitting 2k thrust at 15km? How difficult would it be to change the exhaust to the same as a SABRE/RAPIER amd have 2 exhaust visuals per engine? All in all though I am really impressed with what you have done for me and am even moreso grateful.

Edited by stali79
Link to comment
Share on other sites

10 hours ago, stali79 said:

EDIT2: Ok just checked it proper, should it be hitting 2k thrust at 15km? How difficult would it be to change the exhaust to the same as a SABRE/RAPIER amd have 2 exhaust visuals per engine? All in all though I am really impressed with what you have done for me and am even moreso grateful

It's not all about altitude,it also about speed(more speed,more power),i took the curves from RAPIER engine(jet part) and it has 8.5 X base power at mach 3.75 then the power gets down again.I thought that it is supposed to be so powerful,but basically i wanted to make you a base from where you can balance it yourself.
With the double exhaust,well you have no luck here.The model of the engine has only one transform for thrust,so that is the only transform you can tie FX effects to.Maybe if you could alter the model and add the necessary transforms then every nozzle could have its own effects.

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...