Jump to content

Offsetting engine effects so they don't overlap the bell


Recommended Posts

I'm probably asking something that already has been asked. I've tried for about an hour to RTFM, but I couldn't find anything. (I'm probably blind.)

I'm modifying the LV-N to use ModuleEngineFX instead of ModuleEngines, because I want to must MultiModeEngines. It all works wonderfully, except for one bit: when I assign an mu file under MODULE_MULTI_PARTICLE for the engine exhaust, it overlaps the engine bell and ignores fxOffset entirely.

Does anyone know a workaround? I know people are still releasing engines, but how do you solve this problem? I've tried using PREFAB_PARTICLE instead (which would actually be preferable, since the LV-N's stock effect is a prefab) but for some reason I can't get the exhaust to actually transform properly - I've tried both thrustPoint and thrustTransform. (Plus, I seem not to understand localOffset properly, but I digress.)

To look at the config file itself, you can click



// LV-N (stock)
@PART[nuclearEngine]
{

!MODULE[ModuleEngines] {
}
MODULE
{
name = MultiModeEngine
primaryEngineID = LFO
secondaryEngineID = H2
}
EFFECTS
{
empty{
}
burn_hydrogen
{
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_light
transformName = smokePoint
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
}
MODEL_MULTI_PARTICLE
{
modelName = Squad/FX/shockExhaust_blue
transformName = thrustTransform
emission = 0.0 0.0
emission = 0.05 0.0
emission = 0.75 0.25
emission = 1.0 1.25
speed = 0.0 1.98
speed = 1.0 1.22
}
}
burn_lfo
{
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_light
transformName = smokePoint
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
}
MODEL_MULTI_PARTICLE
{
modelName = Squad/FX/ks1_Exhaust
transformName = thrustTransform
emission = 0.0 0.0
emission = 0.05 0.0
emission = 0.75 0.25
emission = 1.0 1.25
speed = 0.0 0.5
speed = 1.0 1.2
}
}
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
{
AUDIO
{
channel = Ship
clip = sound_explosion_low
volume = 1.0
pitch = 2.0
loop = false
}
}
}
MODULE
{
name = ModuleEnginesFX
engineID = LFO
runningEffectName = empty
directThrottleEffectName = burn_lfo
thrustVectorTransformName = thrustTransform
exhaustDamage = True
ignitionThreshold = 0.01
minThrust = 0
maxThrust = 60
heatProduction = 600
fxOffset = 0, 0, 0.25
PROPELLANT
{
name = LiquidFuel
ratio = 0.9
DrawGauge = True
}
PROPELLANT
{
name = Oxidizer
ratio = 1.1
}
atmosphereCurve
{
key = 0 800
key = 1 220
}
}
MODULE
{
name = ModuleEnginesFX
engineID = H2
runningEffectName = empty
directThrottleEffectName = burn_hydrogen
thrustVectorTransformName = thrustTransform
exhaustDamage = True
ignitionThreshold = 0.01
minThrust = 0
maxThrust = 50
heatProduction = 660
fxOffset = 0, 0, 0.25
PROPELLANT
{
name = LiquidHydrogen
ratio = 1.0
DrawGauge = True
}
atmosphereCurve
{
key = 0 880
key = 1 120
}
}
}
// MM Configs for changing the stock LV-N to switch between LiquidHydrogen and LFO

Link to comment
Share on other sites

Using fxOffset with ModuleEnginesFX doesn't work. As an alternative, does anyone know the transforms for PREFAB_PARTICLE? I would prefer to use that anyway, since it would allow me to use the various prefabricated effects released by Squad (and I could use localOffset).

Link to comment
Share on other sites

I was wondering if it doesn't work why do squad use it in their cfgs for the NASA engine and others, and if it doesn't move the effects what does it do?

MODULE
{
name = ModuleEnginesFX
thrustVectorTransformName = thrustTransform
engineID = KSX
runningEffectName = running_closed
exhaustDamage = True
ignitionThreshold = 0.1
minThrust = 0
maxThrust = 2500
heatProduction = 400
[B][COLOR="#FF0000"]fxOffset = 0, 0, 1.5[/COLOR][/B]
PROPELLANT
{
name = LiquidFuel
ratio = 0.9
DrawGauge = True
}
PROPELLANT
{
name = Oxidizer
ratio = 1.1
}
atmosphereCurve
{
key = 0 380
key = 1 280
}

}

Link to comment
Share on other sites

Fair enough , if you wanted to go the whole hog I could export an lvn via blender and move the thrust transform, and pass it on to you, Thinking on it though, in fact it may also have some clue as to if there is another transform for the fx, i'll get back to you...

A short time later.

I exported the lvn as i mentioned and although the blender plugin can mess things up it's fairly clear whats going on there are no extra transforms for FX , the thrust transform is right at the top of the engine bell, which of course makes your effects overlap,

I don't know how many others do it but unless i actually want the effect to appear inside the bell I usually set the thrustTransform on the bottom edge and usually the engine bell will have a collider,

I think the reason it's so far inside the LVN is that the stock effects stand off the nozzle by quite a large amount and on smaller engines the flame appears much further back than it should.

The downside is that unless you get into unity there's no way to win via cfg edits (someone correct me if i'm wrong)

Edited by SpannerMonkey(smce)
updated info
Link to comment
Share on other sites

OK, thanks for checking it out! If you're willing to share, I'd be happy to use the new model you made for the LV-N for my own personal use. That is, assuming I've understood you properly and you did move the thrustTransform via Blender.

Link to comment
Share on other sites

I'd be really happy with a model that looks as like stock as you can get it. For that matter, I'd be happy with a model that has whatever aesthetic improvements you like.

Would you mind if I included said model in my post with the LV-N switchable config? I'd give you full credit for it, of course.

Link to comment
Share on other sites

  • 2 years later...

I realize this is quite old, but was this ever resolved? Are you able to offset the exhaust plume by editing the config file. Or more specifically using a MM patch? I have tried doing this using MM and editing the actual config file, but have been unsuccessful. I noticed the bug report listed above has been closed out, which leads me to believe you should be able to by edit it now, but I could be wrong.

Cheers,

Link to comment
Share on other sites

On 3/25/2017 at 0:03 PM, Stratickus said:

I realize this is quite old, but was this ever resolved? Are you able to offset the exhaust plume by editing the config file. Or more specifically using a MM patch? I have tried doing this using MM and editing the actual config file, but have been unsuccessful. I noticed the bug report listed above has been closed out, which leads me to believe you should be able to by edit it now, but I could be wrong.

Cheers,

The offset can be changed in the config (and therefore with an MM patch). Precisely how depends on the effects setup.

If you're using ModuleEngines and vanilla effects, you alter the fxOffset line.

Spoiler
Quote

MODULE
{
name = ModuleEngines
thrustVectorTransformName = thrustTransform
exhaustDamage = True
ignitionThreshold = 0.1
minThrust = 0
maxThrust = 250
heatProduction = 83
fxOffset = 0, 0, 0.4         //  <----- This line
EngineType = LiquidFuel
exhaustDamageDistanceOffset = 1.75
PROPELLANT
{
name = LiquidFuel
ratio = 0.9
DrawGauge = True
}
PROPELLANT
{
name = Oxidizer
ratio = 1.1
}
atmosphereCurve
{
key = 0 350
key = 1 90
key = 3 0.001
}
}

 

If you're using ModuleEnginesFX, you'll need to add or modify the localPosition line in the EFFECTS definitions.

Spoiler
Quote

            PREFAB_PARTICLE
            {
                prefabName = fx_smokeTrail_light
                transformName = smokePoint
                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
                localPosition = 0, 0, 0.3 //<--- Here
            }
            MODEL_MULTI_PARTICLE
            {
                modelName = VanguardAstrodynamics/Engines/FX/lmulefx1
                transformName = thrustTransform
                emission = 0.0 0.0
                emission = 0.05 0.1
                emission = 0.075 0.25
                emission = 1.0 0.5
                speed = 0.0 0.5
                speed = 1.0 1.0
                localPosition = 0, 0, -0.2 // <--- Here
            }

 

 

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