Jump to content

Using a CandleFlame in a Magic Effect?


h4n4

Recommended Posts

So i want to us a Candle Flame (the one used by all the normal Candles in the game) in a spell. I tried creating a Magic Effect (Casting type = constant effect) and now i have to use the Candle Flame as a Hit Effect Art i think. Well i tried making a Art Object (Art type = Magic Hit Effect) and using Meshes\mps\mpscandleflame01.nif as the Model...

Well that doesnt work.

It should place the Candle flame at the MegicEffectsNode of the target of the Spell (with player.addspell this would be the player). But... it doesnt.

I tried copy/paste the whole Branch on NifSkope into meshes\magic\lightspellactorfx.nif (the candlelightspell) but that usually crashes the game. And ofc they are different to each other. Lightspellactorfx.nif does work with NiBillboarNode and Candleflame01.nif is a BSMasterParticleSystem...

 

- how does the CandleFlame01.nif work/wat the hell is it? i guess it needs the candleflame dds-files? im really lost here

 

- can you confert/translate the BSMasterParticleSystem into a BillboardNode system style? I tried 3ds Max and it doesnt even load properly (i think nifTools doesnt have a proper particlesystem implemented?)

 

- how is the CandleFlame01.nif i could not find it used anywhere in the Creation Kit nor does TESEdit show any Refereces

 

Edit: i ried usind something like copy/paste candlelanternwithcandle01.nif in the lightspellactorfx.nif and yes it places a Lantern but that Lantern doesnt have a CandleFlame :/

Edited by h4n4
Link to comment
Share on other sites

I'm honestly not completely familiar at all with the particle systems in any of bethesdas games, anyways did a bit of nosing about and this is what I found:

I'd guess the candle flame particle system is a flipbook texture and could be found somewhere in the textures.

Your art object contains an emitter(for the particle system) and a bunch of particle modifiers. You could try to find an existing spell and copy your particle system to override that spells particle system and hopefully everything works out fine. But probably you'll just CTD or something. Chances are you'll need to switch out the existing texture for something else and you'll just have to turn off modifiers such as gravity and what not so it matches the candle emitter.

Then you make an art object and set it to magic casting.

Then you make a magic effect and your art goes into your effect

and your effect into your spell.

 

Hopefully this gives you some direction, if not a solution.

-Goodluck

Edited by TheFuzzler
Link to comment
Share on other sites

i tried adding a BSValueNode - AddOnNode49 to my nif. It looks like thats how objects (candles) and spells (Fireball) add these things... I dont think i need the particle system add all but i could be wrong.

anyway i dont get the ValueNode to work. The Flame doesnt sho up ingame :/

Does someone know more about adding ValueNodes/AddOnNodes to spelleffects?

 

another anwser that would help me: why are candle not lit in the creation kit and how are they lit ingame? candles have the BSValueNode - AddOnNode49 on them but they are not allways on i think? so how can i turn them on? how are candle turned on/off without placing them?

edit: nvm they are allways on -.-

 

You could try to find an existing spell and copy your particle system to override that spells particle system and hopefully everything works out fine

well that doesnt work^^

 

Chances are you'll need to switch out the existing texture for something else and you'll just have to turn off modifiers such as gravity and what not so it matches the candle emitter.

the candleflame uses dds textures afaik and normal effects dont use them. They use a mds particle system that uses dds textures and then the spell uses a ValueNode to add these particle systems. But it doesnt work when i try to use the candleFlame partiyle system via a ValueNode in a spell such as fireball or any other spell. But Fireball allready uses ValueNodes to get particle systems it just doesnt like the CandleFlame... im confused

Edited by h4n4
Link to comment
Share on other sites

It's more than likely possible, I'm not sure what you mean by normal effects don't use dds textures.

Forgive me if you already understand but I think it best we go over it:

 

Open up \meshes\magic\Fireball01handeffects.nif

You'll notice there are billboards and there are emitters(sprites).

A billboard is simply a plane that always faces a particular direction, these are used extensively in game engines like cryengine for the trees. When you look into the distance and see the forest you're actually just seeing a bunch of flat planes with tree textures on them.

There is a billboard in that effect it's used as a refraction effect. Basically it's a transparent texture that distorts the image behind it. It's actually cheaper to put this effect directly into the FX shader itself but that was likely too time consuming and expensive for bethesda so they put a billboard with a panning nomal map to cause the waviness you see on flames. I tell you this because you may wish to keep it for your candle effect.

An emitter on the otherhand is not just 1 flat plane, but rather it is a point where numerous planes (sprites) are placed.

so let's take a look this:

http://hewiki.heroengine.com/images/6/66/Explosion_fire_4x.png

The image has 4 subimages 2 in the U and 2 in V directions. It also has an alpha channel specifying its opacity. When a particle system calls on this texture it splits the image into those 4 subimages, it then calls on them randomly or in order. It will then place sprites at that point. Giving these sprites velocity will make them move in a certain direction. We specify things like which way the sprites face.. eg always facing the camera, we specify when they die, their size and shape etc etc. Click BSeffectShaderProperty you'll see the FXFireAtlas04.dds, I'm assuming this is where we specify the particle texture.

Start off by replacing this with something else like the frost effect and see if it changes in game.

The emitter can be various shapes, this particular emitter is a sphere emitter and as such articles will be emitted at any point in that sphere.

Click the emitter:

You'll see things like radius, initial radius, radius variation (the shape doesn't always need to be the same shapes), life span(how long the sprites last). For yours I would use a single point emitter, but I don't know if the engine will like that so you could just set the variation to 0 the radiuseseruses to a very small value. Spawn Modifier tells you how many particles will spawn. for a candle you won't need that many. So i'd turn down the percentage until the effect is broken to save on resources. Your rotation modifier should be disabled(everything set to 0), leave the colour the same. Scale you'll need to play around with. gravity set active to no.

 

By playing with these you should be able to change the effect of the flames spell i your hand to a candle flame. Once you've done that Create your own spell and use your new file.

 

Let me know how you go.

Link to comment
Share on other sites

It's more than likely possible, I'm not sure what you mean by normal effects don't use dds textures.

Forgive me if you already understand but I think it best we go over it:

 

Open up \meshes\magic\Fireball01handeffects.nif

You'll notice there are billboards and there are emitters(sprites).

A billboard is simply a plane that always faces a particular direction, these are used extensively in game engines like cryengine for the trees. When you look into the distance and see the forest you're actually just seeing a bunch of flat planes with tree textures on them.

There is a billboard in that effect it's used as a refraction effect. Basically it's a transparent texture that distorts the image behind it. It's actually cheaper to put this effect directly into the FX shader itself but that was likely too time consuming and expensive for bethesda so they put a billboard with a panning nomal map to cause the waviness you see on flames. I tell you this because you may wish to keep it for your candle effect.

An emitter on the otherhand is not just 1 flat plane, but rather it is a point where numerous planes (sprites) are placed.

so let's take a look this:

http://hewiki.heroengine.com/images/6/66/Explosion_fire_4x.png

The image has 4 subimages 2 in the U and 2 in V directions. It also has an alpha channel specifying its opacity. When a particle system calls on this texture it splits the image into those 4 subimages, it then calls on them randomly or in order. It will then place sprites at that point. Giving these sprites velocity will make them move in a certain direction. We specify things like which way the sprites face.. eg always facing the camera, we specify when they die, their size and shape etc etc. Click BSeffectShaderProperty you'll see the FXFireAtlas04.dds, I'm assuming this is where we specify the particle texture.

Start off by replacing this with something else like the frost effect and see if it changes in game.

The emitter can be various shapes, this particular emitter is a sphere emitter and as such articles will be emitted at any point in that sphere.

Click the emitter:

You'll see things like radius, initial radius, radius variation (the shape doesn't always need to be the same shapes), life span(how long the sprites last). For yours I would use a single point emitter, but I don't know if the engine will like that so you could just set the variation to 0 the radiuseseruses to a very small value. Spawn Modifier tells you how many particles will spawn. for a candle you won't need that many. So i'd turn down the percentage until the effect is broken to save on resources. Your rotation modifier should be disabled(everything set to 0), leave the colour the same. Scale you'll need to play around with. gravity set active to no.

 

By playing with these you should be able to change the effect of the flames spell i your hand to a candle flame. Once you've done that Create your own spell and use your new file.

 

Let me know how you go.

Hey thx man. I tried playing around with that yesterday. I used cheskos Flame effect hes used for his lantern mod (looks similar to firball). I used most settings for the emitter from the canfleflame01.nif . Well it loos a little bit like a candle (the texture and color are ok) but it behaves like a firball (burning furious) and not like a candle. Also the textures are deformed? when you look at the original candleflame texturs (gimp) they are somewhat square but ingame they get stretched to a long candleflame?

 

Thanks anyway ill fiddel around with this some more (slthough i would rather like to get the AddOnNode working-.-). This looks like a possible way of doing it but i guess youl need to put a lot of time in to get the look right

 

oh and btw a pointemitter would be just a NipSysBoxEmitter (i think there are no real point emitters) with w/h/d 0/0/0 right? thats how its dont in the cnadleflame mps i think

 

and the problem is there are some (a lot) Unknown int/unknow shorts etc and one of them i cant even set to the same state it ha in the mps etc... i think i just have to try and error these?

 

 

I am not sure if you can add candle flame to a spell at all, but when you add a candle flame to a static you have to check in the BSX "FlameNodesPresent"

yeah i know this (its BSX integerdata 4 (are mutiple flags just placed after each other example 147?)). But try placing a candle lit item (clutter/candles/horncandlexxx.nif) as a artobject for a Hit Effect in a constant effect spell and cast that on your character... The Item will appear but it will not have a flame. Same if you try to change the addOnNodes for fireball form 3X (cant remember) to 49 witch is the candle flame... they will not appear. I imagine the game passes some data to the candleFlame01 mps wehnn triggered via a AddOnNode that are missing when you use it in a spell and you would need to either pass that data somehow else or edit the candleflame01 mps but i dont know how -.-

Edited by h4n4
Link to comment
Share on other sites

yeah i will make sure that cool when i get stuff working...

 

right now i dont think my textur shows up ingame at all? or its super blurry or what ever... I used the valuef form the BSEffectShaderProperty form the candleflame01.nif and tarnsfered them into my spell but year it doent look right. cant even say if the texture is tehre or not^^

 

and i used the samne subtexture offsets ofc

 

the unknown Ints and Shorts really bug me out -.-

Edited by h4n4
Link to comment
Share on other sites

\

Well it loos a little bit like a candle (the texture and color are ok) but it behaves like a firball (burning furious) and not like a candle. Also the textures are deformed? when you look at the original candleflame texturs (gimp) they are somewhat square but ingame they get stretched to a long candleflame?

 

Thanks anyway ill fiddel around with this some more (slthough i would rather like to get the AddOnNode working-.-). This looks like a possible way of doing it but i guess youl need to put a lot of time in to get the look right

 

oh and btw a pointemitter would be just a NipSysBoxEmitter (i think there are no real point emitters) with w/h/d 0/0/0 right? thats how its dont in the cnadleflame mps i think

 

and the problem is there are some (a lot) Unknown int/unknow shorts etc and one of them i cant even set to the same state it ha in the mps etc... i think i just have to try and error these?

 

 

I'm really just going off my knowledge of other game engines I've worked with. Like I said I'm not fully familiar with bethesdas system, so i'm not sure about a lot, but I'll help you where I can.

As for the deformed textures, the images are being stretched. This is done to save resources on the alpha. When setting the scale there should be individual axis you can set.

By Burning furious it depends what you mean:

If you mean it's distorting a lot try deleteing that billboard I spoke of, or remove the texture.

If you mean it's moving around a lot it'll likely be something to do with some velocity modifier I haven't seen.

 

As for working with nifs *shrugs*. Anyone who understands how they work is a freaking wizard in my eyes.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...