Lindor 534 Posted November 26, 2020 Share Posted November 26, 2020 Hey Quick Question: Where can I find the soul thingy FX from the Terus area in the gamefiles? I want to make a CA out of them https://I.imgur.com/CEOTFmS.jpeghttps://I.imgur.com/C6Lfz3q.jpeg Link to comment
Lindor 534 Posted December 2, 2020 Author Share Posted December 2, 2020 (edited) Hmm since nobody replied I think I'll try to find it out myself. I guess it's spawned via worldobjects.txt. Unfortunately objects there only have exact coordinates and no sectors. Is there a way to "translate" sectors into coordinates? EDIT: nevermind, I didn't look into the actual worldobjects.t but at an old testing file of me where I copied certain worldobjects and tried to backtrace what they are. turns out I edited the sector coordinates out. :facepalm: Guess it's too late and I can't think anymore Edited December 2, 2020 by Lindor 1 Link to comment
Lindor 534 Posted December 2, 2020 Author Share Posted December 2, 2020 (edited) Ok using the worldobject.txt spreadsheet, I can tell that it's not spawned via worldobject.txt. In the sector there are only "Kisten" or "Fässer" spawned. And two magic hiding places. Edited December 2, 2020 by Lindor Link to comment
Flix 5,162 Posted December 2, 2020 Share Posted December 2, 2020 Just look through the FX in the scripts/particle folder. It's likely defined in there. You can extrapolate what to put in the spell FX lines from the file names. That stuff looks pretty similar to Dislodged Spirit. FX_INQ_SEELENRAUB or some variant of it. Link to comment
Lindor 534 Posted December 2, 2020 Author Share Posted December 2, 2020 Thanks. Thats a good advice but FX_INQ_SEELENRAUB only has its two main FX, there is no other variant and I was hoping to get an Area of Effect CA (was using raging nimbus spellclass and -controltype). It's also not FX_INQ_SEELENRAEUBER which has some more variants, already tested that one. Guess I simply need to test all the FX. Link to comment
Lindor 534 Posted December 3, 2020 Author Share Posted December 3, 2020 (edited) 39 minutes ago, Flix said: It really depends on the effect though. Once you're sure simply swapping around FX within spells.txt won't yield the results you want, the next best place to go is to the scripts within the "particle" folder. Here you can view various parameters such as particle emission rate, and what textures are called on for specific FX. Sometimes the particle color is set directly within the file by using hex codes. Alas, some textures are linked to FX via hard-coding. In that case the colors of the textures themselves must be edited. A further complication is that some textures are generic and therefore shared by multiple FX. Changing yellow to purple for the benefit of one spell may result in several yellow things unexpectedly turning purple. This is why, for example, General Terus' stun nova is now purple instead of yellow. Fortunately that's the only odd change from all the recoloring. It took a lot of juggling to make it work out ok. Look within pak\graphics01.zip and you will see the bulk of the various image files used for FX. Thx for the explanation, I'm already understanding more The current FX I want to alter is FX_SKELETON_ROOT. I think you used it quite extensively in D2 Fallen. Above FX would have been more fitting, but I couldn't find them. I want to make the FX blue. Tried Copy-pasting the dislodged spirit particle script, it had no effect, so I'm guessing it's one of the hardcoded-linked. In the particle script it says "material particles/multi/multi_fx_liane.tga". There exists a "multi_fx_liane.dds" in graphics01/hq/particles/multi but it's neither a .tga file nor does it contain any coloring, only a surface and some mipmaps. Is the coloring probably in another folder, my master? Edited December 3, 2020 by Lindor Link to comment
Flix 5,162 Posted December 3, 2020 Share Posted December 3, 2020 Don't get thrown off by scripts referring to TGA when the actual file is DDS. Consider them interchangeable. JPG is really JPG though, on those rare occasions it appears. If a particle script refers to a neutral (greyscale) texture file, then the color is being added in one of two ways: hex codes within the particle script (you will see this as values other than 000000 in the "affector ColorInterpolator" section), or a hard-coded link to one of the generic colors in the hq folder, such as: hq\fx\symbols\gs_coloring5.jpg or hq\fx\gradients\gradient4.dds If there's no hex colors in the script, then you may have to experiment to find out which texture is providing the color. Link to comment
Lindor 534 Posted December 3, 2020 Author Share Posted December 3, 2020 (edited) Ahh. But what's wierd is that there are hex colors, even in the unaltered script, and they're even green, but changing them doesn't do anything. EDIT: these are the four hex colors that aren't 00000000: Spoiler "cia_color1 0000ff00" "cia_time1 0.097656" "cia_alpha1 255" "cia_alphatime1 0.136719" "cia_color2 00dbffd7" "cia_time2 0.1875" "cia_alpha2 255" "cia_alphatime2 0.898438" "cia_color3 00deffc4" "cia_time3 0.652344" "cia_alpha3 0" "cia_alphatime3 1" "cia_color4 0080ff00" "cia_time4 0.886719" "cia_alpha4 0" "cia_alphatime4 2" Edited December 3, 2020 by Lindor Link to comment
Lindor 534 Posted December 3, 2020 Author Share Posted December 3, 2020 Uhmm I recolored all the files in the gradient and symbols folder blue, still no change. maybe it's not even in the fx folder? Link to comment
Lindor 534 Posted December 4, 2020 Author Share Posted December 4, 2020 Little bit of an update: I still can't find the image, but I remembered something that I posted somewhere in the S2EE thread: The whole aspect could have a green color scheme for as many reasons like it has for a blue one. So instead of trying to make this one spell blue, I'm going to make the other underworld spells green and see if I loke that. Maybe I'll make this into something like a development thread and post some preview pictures. Link to comment
Lindor 534 Posted December 4, 2020 Author Share Posted December 4, 2020 @Flix I want to say that without your help, I would have probably given up, so thank you very much. At the risk of being annoying, can I ask for some more advices? Because I ran into some issues: First of all, I cannot open the mipmaps of most of the .dds files in GIMP with .dds plugin and I have no idea why that is. It always calls the unexpected end of file error. Therefore I need to load the files without the mipmaps which means edited files become looking super bulky and pixel-ish ingame. Can you tell me which program you use? Secondly, how did you change the color of the inexorable subjugation beam? For the spell there is only the casting particles and there is no spell particles file for that spell. I thought maybe it shares a file with lifeleech and when I tried to alter the only lifeleech fx I could find, namely particles/fx_lifeleech_c.particle, nothing happened, neither when I changed the script nor recolored particles/multi/multi_fx_starline.tga. The last guess was as always that it's a file inside the gradients or symbols folder, but when I recolored all these files again nothing happened to the beam. It's basically the same thing like with the two skeletonroot fx files. Thirdly, some FX seem to consist of multiple scripts and some FX seem to have partially scripted, partially hardcoded particles. The dislodged spirit spell fx has some particles that can be altered by the script, but the soul itself is always unaffected. The same thing goes for the souls succed in by soul reaver. Maybe thats why there are hex colores in the skeleton root particle script? And maybe that's also why I couldn't find the fx for the pictures in the first post of this topic? Because some things are hardcoded? First I thought the skeletonroot issue was maybe a niche case issue because it's an unfinished Vanilla CA, but now with the same stuff happening to inexorable subjugation and dislodged spirit, I'm not sure anymore. Did you ever run in such things? Since you managed to mod inexorable subjugation, I know that at least there the error must be in my thought process, which gives me hope for these spells FX, even the skeleton root, to be moddable again. Link to comment
Flix 5,162 Posted December 5, 2020 Share Posted December 5, 2020 11 hours ago, Lindor said: First of all, I cannot open the mipmaps of most of the .dds files in GIMP with .dds plugin and I have no idea why that is I never load or edit the mipmaps. I generate new ones when exporting the final product. 11 hours ago, Lindor said: Secondly, how did you change the color of the inexorable subjugation beam? I only recolored "FX_INQ_VERSKLAVUNG_C" from red to blue. "FX_INQ_VERSKLAVUNG" was replaced with "FX_GEN_MANALEACH" in the spell entry. This is because the original FX was already identical to life leech, and I wanted the energy leech coloration (blue). So why recolor textures when I can swap out lines in the script? Remember, that's always step one. This just occurred to me, you're sure you're working on "FX_SKELETON_ROOT" and not "FX_SKELETON_ROOT_C" right? The first is the green tendrils. The second is the greenish spray around the caster. 1 Link to comment
Lindor 534 Posted December 5, 2020 Author Share Posted December 5, 2020 1 hour ago, Flix said: I"FX_INQ_VERSKLAVUNG" was replaced with "FX_GEN_MANALEACH" in the spell entry. Oh that is so genius! I never thought of that. That explains so much. The thing is, if you scroll through both the particle scripts and the pak folder, there is no fitting file for FX_INQ_VERSKLAVUNG, only DX_INQ_VERSKLAVUNG_C is moddable. If you didn't bother searching for the files and simply swapped the spell entry, that also explains why you didn't encounter that issue. 1 hour ago, Flix said: This just occurred to me, you're sure you're working on "FX_SKELETON_ROOT" and not "FX_SKELETON_ROOT_C" right? The first is the green tendrils. The second is the greenish spray around the caster. Yes, absolutely sure. That the _C suffix in most cases stands for the casting fx while the entries without a suffix are the spell fx is something I figured out quite early. Dislodged spirit and Soul Reaver are again the exception here, the former particle scripts have suffixes _C and _C2 and the latter uses two scripts per entry. I don't even use the "FX_SKELETON_ROOT_C" entry, I don't like the FX that much. We're only talking about "FX_SKELETON_ROOT". So my conclusion would be that both FX_SKELETON_ROOT and FX_INQ_VERSKLAVUNG have completely hardcoded FX, while FX_INQ_SEELENRAUB and FX_INQ_SEELENFANGER have partially hardcoded, partially scripted FX. Additionally, scripted parts of the FX_INQ_SEELENFANGER and FX_INQ_SEELENFANGER_C use multiple scripts for the same FX. Which would sadly mean that there is no way to make the underworld aspect a uniform color scheme if I want to include those spells. The tendrils will always be green, the souls will always be blue and the beam will always be either red or blue. 1 hour ago, Flix said: I never load or edit the mipmaps. I generate new ones when exporting the final product. Sounds like I'll will have a lot of work to do the next couple of weeks Link to comment
Flix 5,162 Posted December 6, 2020 Share Posted December 6, 2020 Check in hq/fx for ghostlyliane.dds and ghostlyspline.dds Those might be the ones. I don't have time for a deep dive with testing right now, sorry. There's also the possibility that the roots are a textured model, though I kind of doubt it. Link to comment
Lindor 534 Posted December 6, 2020 Author Share Posted December 6, 2020 (edited) Oh man you won't believe it. I tried those two files and at first I thought it wouldn't do anything. Now I gave them another try and I found out the issue: It's ghostlyliane.dds but if you leave anything of the green color channel in, it will only take the green resulting in bright green FX. It's unbelievable. You have to turn the green color channel in GIMP color mixer to zero: The first one has some green in it to make it look brighter, more ghostly, but the game only takes the green. Alpha will always be the same, at least I haven't found a way to adjust it, so if you don't want it to be green, it's only the proportion of red and blue you can adjust, not the green and not the brightness. I have no idea why that is. I was never so happy to be wrong. Unfortunately it's not that strongly visible ingame. 4 hours ago, Flix said: Those might be the ones. I don't have time for a deep dive with testing right now, sorry. You have done more than I could have hoped for. I'm just so glad that you're even interested in this. Thank you a lot, I cannot say it often enough. Sometimes I'm just giving up too quickly and you helped me to not lose hope. Edited December 6, 2020 by Lindor 1 Link to comment
Flix 5,162 Posted December 6, 2020 Share Posted December 6, 2020 Glad I could help. All I did was take a look at the thumbnails, and I thought, "that looks like a vine." Lucky it paid off. 3 hours ago, Lindor said: Alpha will always be the same, at least I haven't found a way to adjust it, What I will do sometimes if I want to wipe the alpha channel and start fresh is this: Right click the layer ---> Add Layer Mask. Set it to "Transfer Layer's Alpha Channel" and click Add. Right click the layer again and select "Delete Layer Mask." This will give you the "complete" image to work with containing all the information from the alpha channel. You will not get the same result if you simply right click and select "Remove Alpha Channel." Layer masks have a pretty rich functionality but I mainly just use them for that. If, after your recolors, edits, etc. you want to regain the original transparency settings, you can: Drop the original image in as a separate layer. Right click that layer ---> Alpha to Selection. In the top menu, hit Select---> Invert. Select your edited layer, choose the eraser tool and move it over the entire image. Link to comment
Lindor 534 Posted December 6, 2020 Author Share Posted December 6, 2020 Oh cool trick. I have that problem sometimes when the image has white parts that I not want to have full transparency on an edge to a part that has full transparency, they are merged with the white that occurs after the "Remove Alpha Channel" command. What I mostly did then was simply selecting by color and recoloring these parts with something easily recognisable, then do all the alpha editing and then color the formerly recolored part white/black again. That layer mask thing will now save me this work Anyway, what I meant is, I can edit the images alpha channel, but it has no ingame effect. Same with the particle scripts alpha and the in this script mentioned file particles/multi/multi_fx_liane.tga. Honestly I don't believe the last two have any effect on the FX. The only file that does have an affect so far is the ghostlyliane.dds file, and despite it having 100% opacity everywhere by default, the ingame FX are very transparent if they're not green. Link to comment
Lindor 534 Posted December 7, 2020 Author Share Posted December 7, 2020 19 hours ago, Flix said: Glad I could help. All I did was take a look at the thumbnails, and I thought, "that looks like a vine." Lucky it paid off. That was actually a very helpful line again. I had no clue that something like SageThumbs exists. Using that tool, I was now able to find a missing part of the Soul Reaver FX. Now all that's left to find is the initial one, the Dislodged Spirits Soul. Link to comment
Lindor 534 Posted December 7, 2020 Author Share Posted December 7, 2020 I have found the file for the ghost thingy in the general terus area, I have found the file for the dislodged spirit soul (they're not the same), I have found all the soul reaver files and I have found several files for his other aspects! I'm so happy right now, I can't believe it! Prepare for some awesome screnshots the next couple of days! Link to comment
Lindor 534 Posted December 11, 2020 Author Share Posted December 11, 2020 Hello It's pretty late here but I have a new theory about particle scripts: remember this right here?: On 12/6/2020 at 5:45 AM, Lindor said: Oh man you won't believe it. I tried those two files and at first I thought it wouldn't do anything. Now I gave them another try and I found out the issue: It's ghostlyliane.dds but if you leave anything of the green color channel in, it will only take the green resulting in bright green FX. It's unbelievable. You have to turn the green color channel in GIMP color mixer to zero: The first one has some green in it to make it look brighter, more ghostly, but the game only takes the green. Alpha will always be the same, at least I haven't found a way to adjust it, so if you don't want it to be green, it's only the proportion of red and blue you can adjust, not the green and not the brightness. I have no idea why that is. I now have an idea why that is. the part where the hex colors in the particle script are defined is called ColorInterpolator. An interpolation in mathematics is e.g. a reconstruction of a function given a (mostly finite) array of points. If you think of colors as a function of from the set of points defined in the hardcoded part of the FX to the set of colors defined by the corresponding image in the pak folder, splitting an FX colorization into the three/four RGB(+alpha?) color channels can be viewed as an interpolation. So what if these hex colors defined in the particle script are not defining the colors of the scripted part of the FX, but are rather the given array of points over which the function for all the FX is interpolated? That would explain why the skeleton root spell only takes the green color channel for each pixel, I checked and yes the rgb colors for the particle sript are all green only. If alpha is treated separately, that would also explain why the alpha is always the same, no matter the alpha of the colorization image in the pak folder. And that would also explain why changing the hex colors in the particle script sometimes does something and sometimes does nothing, it's depending on whether the corresponding image has pixels for which an interpolation over the defined hex color would be a zero or not. If it's a zero, by that I mean like in above example if the pixel's green color channel value would be zero(yes it works pixel by pixel), then the game does not care about the interpolation and just takes the color of the corresponding image pixel as seen above, but if it's not a zero, then the game tries to split the color of the pixel into the color channels defined by the script and smoothenes it out. And lastly that would also explain why some imeges in the pak folder have a completely different colorization from what the FX appear like ingame, e.g. the original skeletonroot image is yellow. The genius part of this developers idea is that they can 1. define more than three color channels and 1. give those additional ones a hardcoded task, e.g. as a normal map. I believe that this is how they've done it e.g. for the inquisitors clustering maelstrom FX, if you look at hq\lensflares\inq_machtsog.jpg, you can clearly see the correlation between colorization and depth. The color interpolator filters the colorization into the different channels, the game turns that into a normal map and what's left is this very transparent whirl. The same effect goes for all files with the _nrm ending. If I'm right, this would mean that we can now change the normalmaps of FX even without needing to edit the image, e.g. to invert it we can simply swap the hex colors in the corresponding particle script. 1 Link to comment
Methatronc 29 Posted January 6, 2021 Share Posted January 6, 2021 (edited) On 12/5/2020 at 2:26 AM, Flix said: "FX_INQ_VERSKLAVUNG" was replaced with "FX_GEN_MANALEACH" in the spell entry. Hello @Lindor ! I am trying to locate those files but can't.. I did found FX_INQ_VERSKLAVUNG_C, but not the other two, ( neither in the vanilla folder or in @Flix mod's folder, if it is EE we're talking about ) Edited January 6, 2021 by Methatronc 1 Link to comment
Lindor 534 Posted January 7, 2021 Author Share Posted January 7, 2021 (edited) 13 hours ago, Methatronc said: Hello @Lindor ! I am trying to locate those files but can't.. I did found FX_INQ_VERSKLAVUNG_C, but not the other two, ( neither in the vanilla folder or in @Flix mod's folder, if it is EE we're talking about ) Do you mean the particle scripts or the images in graphics01? For the particle scripts, all of them are located in scripts\particle and they have almost always nearly identical names to their corresponding FX. Here they are (only FX listed that actually have a particle script, there are multiple that don't have one) Paralyzing Dread: FX_INQ_ENTSETZEN_C fx_inq_seelenraub_c.particle fx_inq_seelenraub_c2.particle Dislodged Spirit: FX_INQ_SEELENRAUB_C fx_inq_seelenraub_c.particle fx_inq_seelenraub_c2.particle Inexorable Subjugation: FX_INQ_VERSKLAVUNG_C fx_inq_versklavung_c.particle Eruptive Desecration: FX_INQ_SCHAENDUNG_C fx_inq_schaendung_c.particle fx_inq_schaendung_c2.particle FX_INQ_SCHAENDUNG fx_inq_schaendung.particle fx_inq_schaendung_p.particle Soul Reaver: FX_INQ_SEELENFAENGER_C fx_inq_seelenfaenger_c.particl FX_INQ_SEELENFAENGER fx_inq_seelenfaenger.particle fx_inq_seelenfaenger2.particle fx_inq_seelenfaenger_s.particle For the images, all of them are located in either pak\graphics01\hq\fx, pak\graphics01\hq\lensflares and pak\graphics01\hq\particle: Paralyzing Dread: FX_INQ_ENTSETZEN_C particles\multi\multi_inq_cast.dds FX_INQ_ENTSETZEN none Dislodged Spirit: FX_INQ_SEELENRAUB_C particles\flare2.dds particles\trail_vert3.dds fx\inq_dg_stream.jpg FX_INQ_SEELENRAUB fx\inq_sr_soul.jpg Inexorable Subjugation: FX_INQ_VERSKLAVUNG_C particles\flare2.dds FX_INQ_VERSKLAVUNG fx\inq_vs_stream1.jpg fx\inq_vs_stream2.jpg Eruptive Desecration: FX_INQ_SCHAENDUNG_C particles\smoke2.dds FX_INQ_SCHAENDUNG particles\multi\multi_fx_schaendung_p.dds Soul Reaver: FX_INQ_SEELENFAENGER_C particles\spark01.dds FX_INQ_SEELENFAENGER (some of the listed images here are actually hardcoded to the spellclass) fx\inq_seelenf_soul.jpg fx\inq_sf_stream.jpg particles\trail_vert3.dds particles\multi\multi_he_frostschlag.jpg lensflares\inq_seelenfaenger.dds The soul thingy in the General Terus Area: FX name not known yet, probably doesn't exist. same for particle script. fx\ghost.jpg The regeneration per hit effect that Flix replaced FX_INQ_VERSKLAVUNG with in spells.txt:: FX_GEN_MANALEACH fx\gen_manaleach1.jpg fx\gen_manaleach2.jpg Red Colored ones are probably used by multiple FX. Some images are also only there to give a general shape while the colors come from somewhere else, mostly the particle scripts. You can also find some images by looking at the particle scripts, they're a key in understanding FX. I can only give you the tip to use SageThumbs so that you can see the thumbnails of .dds files, it makes searching for FX images waaay easier. Btw most mods don't add new files, we just alter existing ones. Both the particle scripts and as the graphic images have the same names and locations in Vanilla as well as in EE. EDIT: forgot fx\inq_dg_stream.jpg, added it. Edited January 7, 2021 by Lindor Link to comment
Methatronc 29 Posted January 7, 2021 Share Posted January 7, 2021 Thanks for your answer ! And for the tip, though I use paint.net who can display .dds too so that's ok. However I still don't understand what did Flix, if you do could you explain ? Because in the answer I quoted in my previous message he said to prefer swap lines in the particle files rather than editing the images. And in EE in scripts/particle there are only 3 files and none are used for Inexorable Subjugation. Or perhaps I misunderstood ? The point is : I'm looking to find an edited particle file that worked because I edited a custom particle file myself and it didn't worked. I changed the hex values to go from a white tone to a red one, nothing appears when using the custom spell. The custom animation works, custom tokens are ok, changed spellclass is ok, just the fx that's not been called it seems.. Link to comment
Popular Post Lindor 534 Posted January 7, 2021 Author Popular Post Share Posted January 7, 2021 (edited) 2 hours ago, Methatronc said: Thanks for your answer ! And for the tip, though I use paint.net who can display .dds too so that's ok. However I still don't understand what did Flix, if you do could you explain ? Because in the answer I quoted in my previous message he said to prefer swap lines in the particle files rather than editing the images. And in EE in scripts/particle there are only 3 files and none are used for Inexorable Subjugation. Or perhaps I misunderstood ? The point is : I'm looking to find an edited particle file that worked because I edited a custom particle file myself and it didn't worked. I changed the hex values to go from a white tone to a red one, nothing appears when using the custom spell. The custom animation works, custom tokens are ok, changed spellclass is ok, just the fx that's not been called it seems.. Ok, I'll start at the beginning. Spells are defined in scripts\shared\spells.txt. This is the file that defines the spell FX. FX stands for effects, more on that later. Spells have three different FX, namely fxtypeCast which are the casting FX that appear on the casters hand, fxTypeSpell which are the main spell FX and then fxTypeCastSpecial which replaces fxTypeCast if the caster is riding his/her special mount. Flix changed fxTypeSpell for "in_uw_versklavung" from "FX_INQ_VERSKLAVUNG" to "FX_GEN_MANALEACH" like this: mgr.defineSpell( "in_uw_versklavung", { eiStateName = "cSpellCast", fxTypeCast = "FX_INQ_VERSKLAVUNG_C", fxTypeSpell = "FX_GEN_MANALEACH", fxTypeCastSpecial = "FX_INQ_VERSKLAVUNG_C", duration = 10.000000, animType = "ANIM_TYPE_SM14", animTypeApproach = "ANIM_TYPE_INVALID", animTypeRide = "ANIM_TYPE_INVALID", animTypeSpecial = "ANIM_TYPE_RIDESM05-SPECIAL", causesSpellDamage = 1, tokens = { entry0 = {"et_duration_sec", 400, 0, 0, 8 }, entry1 = {"et_minion_lifetime", 3000, 10, 0, 4 }, entry2 = {"et_addwalkspeed", 800, 0, 0, 72 }, entry3 = {"et_slow_enemy_any", 490, 10, 0, 42 }, entry4 = {"et_hits_persec", 1000, 0, 0, 4 }, entry5 = {"et_spelldamage_magic", 420, 210, 0, 133 }, entry6 = {"et_spelldamage_magic", 140, 70, 1, 133 }, entry7 = {"et_hits_persec", 500, 0, 2, 4 }, entry8 = {"et_minion_attackspeed", 200, 0, 3, 72 }, entry9 = {"et_minion_blame", 1000, 0, 4, 9 }, entry10 = {"et_minion_lifetime", 1500, 5, 5, 4 }, entry11 = {"et_life_heal_rel_exit", 150, 0, 6, 17 }, }, fightDistance = 300.000000, aspect = "EA_IN_UNDERWORLD", cooldown = 0.000000, soundProfile = 0, cost_level = 410, cost_base = 820, focus_skill_name = "skill_IN_underworld_focus", lore_skill_name = "skill_IN_underworld_lore", spellClass = "cSpellInqVersklavung", spellcontroltype = "eCAtype_a_effect_attack", sorting_rank = 2, }) You can also see here that animations are not part of FX (I say that because I believed that once). FX only contain two things at max, namely particles (VFX or visual effects) and sounds (SFX or sound effects). The last thing has a double-meaning, it can also stand for special effects, but not in Sacred 2. Sacred 2 FX can but not necessarily need to contain both VFX and SFX, there's no clue in spells.txt that would give a hint. Now after that I can explain what I think particle scripts are. Those only apply to FX that contain VFX, so let's concentrate on those for a moment. VFX can either be hardcoded into the game code which means it's not accessible for an average modder, or they can be scripted or they can be partially both. An example for the latter would be FX_GEN_WENIGER_HEILUNG, the swirls are scripted and can be edited but the blood effect is hardcoded and inaccessible to us. If a part of some VFX is scripted, then this follows a general scheme: First of all there is the emitter which sets the general shape of the particle system. There are different types of emitters. I'll explain it in GIMP metaphors: Think about an emitter type like a canvas of an image. There are some VFX that need the whole 3d space to work, but there are also VFX that can be simplified into 2d: for FX_VERGELTUNG e.g. it's a Cylinder around the character. Inside of the emitter there are then defined the properties of every particle that spawns on the canvas like lifetime, how it moves, size etc. This is why some VFX have multiple emitters. An important property is the material. This is an image assigned to the particles which further limits the space on the canvas. So you can think about the material like a layer in GIMP. Then there is the colorinterpolator. I've explained that one above: For every particle there's a basic color which either comes from a hidden linked image or the color is hardcoded. If it's a linked image, it can be the emitter material, but it doesn't necessarily need to be. Let's call that basic color the basis on which the colorinterpolator then gets applied. What I think that the colorinterpolator does is splitting this basis into multiple color channels. So if the Hexcolor of a particle is 00000000, then the game will assign exactly the color of the basis to the corresponding particle but if the hexcolor is something different, like 00ff0000, then the game will only assign the red color channel of the basis to the particle. This means that there can be mixed color channels, and there can be more than four. This also means that the resulting color is both depending on the basis AND the hex colors. If and only if the basis is white, then changing the hex colors will always work, otherwise we have limitations. As seen above with the example of FX_SKELETON_ROOT, keeping anything of the green color channel in the hex colors will colorize the whole thing green since the basis is green. Also keep in mind that each emitter, or each canvas if you like, has it's own colorinterpolator. I believe that the colorinterpolator can also assign color channels of the basis to become normal maps, but this is a little bit more complicated and needs to be researched further first. Lastly there are the scalers and rotators, these are pretty self-explanatory, they scale and rotate the emitter. You see, understanding particle scripts is really not easy and takes a lot of effort. And if that weren't enough, recolorizing Images might also change other VFX that you don't want to change. This is where this hierarchy comes from that Flix taught me: Always look for already existing FX first and change them around in spells.txt. If you're absolutely sure that there are no existing FX that satisfy what you want, then try to find and edit the corresponding particle script. If and only if that doesn't work for whatever reason, then you can start thinking about recolorizing images. Keep in mind here what I explained, Colors are dependent on both the script and the image so if that doesn't work either, do both step 2 and step 3. That of course only works if we're talking about colors. For resizing or rotating etc., you're stuck if step two doesn't work. Edited January 7, 2021 by Lindor 1 1 Link to comment
Methatronc 29 Posted January 7, 2021 Share Posted January 7, 2021 Thank you for this very detailed answer, it's good to have what I thought confirmed ! I still don't know where FX_GEN_MANALEACH is located but from what you say I'll just try different hex values if none of the existing unused ones you highlighted in another topic suits the custom spells. Thanks again and have a good day, I'll come back to show the results if it works 1 Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now