Jump to content

Home

[TSL] Swarms of Thunderbolts (Audiovisual effect)


Al_Ciao
 Share

Recommended Posts

Hello, I have an inspiration from an element of Fable 3 I really enjoy. I can't find an image or video of this exactly, but when you combine the spells Blades and Vortex together, you get SWARMS of glowing energy blades which appear - one swarm for EACH enemy around you.

 

Picture half a dozen blades appearing above one enemy, slicing down to skewer him, another half dozen frying a second enemy at the same time, and simultaneously other swarms for all the other enemies.

 

So my idea is to have a Force power that looks like this, except that instead of blades, it'd be a swarm of distinct lightning bolts or something.

 

This could simply be Force Storm made with a different visual effect, and I'd be fine with that. Or, if a brand new power, then the same kind of damage as Force Storm is good.

 

It would be extremely cool if each swarm appeared above (or diagonally above, as in Fable 3) each enemy, before streaking down at them.

 

The second part of this would be a musical effect. In Fable 3, this epic choral and orchestral music builds the more hits you string together. The music could be classified as Ominous Latin Chanting.

 

To summarize, OLC is an epic choral piece where the voices are singing in words that can't be deciphered. Examples include Duel of the Fates,

,
(from Lord of the Rings: Return of the King), and
.

 

Of those I just listed as examples, I believe O Fortuna is in the public domain while the others of course are not.

 

So, it would be cool if some public domain OLC could be added to the game. It could:

 

1. Be for every battle.

2. Be just with the Swarms of Thunderbolts power/visual (my preference).

3. Build up more and more as enemies are hit (probably the most difficult method to implement) and take damage.

 

So, to recap.

 

A Force power (either Force storm looking different, or a new power with damage and effects comparable to Force Storm) that appears to create swarms of thunderbolts that streak down to hit enemies, and for which epic choral OLC (such as O Fortuna) builds up as enemies get hit.

 

Is this feasible? I know there are some people who can make Force powers sit up and beg (for instance, the creators of the High-Level Force Powers mod), but I'm just now learning how to do mods myself.

 

Thank you!

Link to comment
Share on other sites

  • 2 weeks later...

Is that the High Level Force powers mods? I downloaded it, but haven't had a chance to try it out yet.

 

Don't suppose Stoffe and Varsity Puppet are still around?

 

Thanks for your replies. :)

 

Edit: Is there some way to, I don't know, import the NWN spell effects into TSL? Nevermind, we're not allowed to import assets from other games.

 

Edit 2: I've looked at all the Force power mods, Duck, but haven't found anything that sounds quite like what I'm looking for. As Ansem said, the one that sounds most similar is Chain Lightning from the High Level Force Powers mod. I'll have to load it up and check it out.

Edited by Al_Ciao
Link to comment
Share on other sites

 

Edit: Is there some way to, I don't know, import the NWN spell effects into TSL? Nevermind, we're not allowed to import assets from other games.

 

Well not exactly... KotOR was built on the NWN engine. If you look through the game's assets, there is a TON of NWN stuff left in there. Thing is nobody has really messed with it all too much to see if any of it works. For example if you look at a weapon's item properties, you can see a bunch of strange properties that clearly are from NWN. But like I said nobody has really played with them so you'd have to do that yourself to see what works.

Link to comment
Share on other sites

when I say spell effects I mean VFX, visual effects. but I can't find them at all.

 

actual effects I'm trying to restore are stuff like negative levels/sleep etc, but after browising all 2da they are quoted only once and I can't really apply them to items.

 

both vfxs and effects I'm starting to think they'll be found in the script. if not I have no idea where.

Link to comment
Share on other sites

I'm wondering if the High Level Force powers mods did it in the scripts, too. IIRC, the spell effects are also in the scripts.

 

Unfortunately, I know nothing about scripting and computer language. Tbh it completely baffles me.

Link to comment
Share on other sites

yeah, spell animations are in the script. but as far as I know they're structured in "pieces". better yet, they are assembleable to a certain extent. look at the lightning used for the force storm powers: the same texture (colored differently) and method is used for the Death Field spell.

Link to comment
Share on other sites

yeah, spell animations are in the script. but as far as I know they're structured in "pieces". better yet, they are assembleable to a certain extent. look at the lightning used for the force storm powers: the same texture (colored differently) and method is used for the Death Field spell.

 

Unfortunately, wouldn't have any idea what the pieces are or how to assemble them...

 

If no one can take this up, I'll have to put in a lot of work with the scripting tutorials and such, cuz frankly, programming and scripting baffles and bores me. :(

Link to comment
Share on other sites

  • 2 months later...

Okay, new idea how to do this.

 

In the High Level Force Powers mod, there is a power called Force Strike, which basically summons a swarm of lightning onto a target almost exactly like I envision it!

 

I would just need to make it affect multiple people. I've looked at the source script, and I can only just barely understand a few pieces of it. Could someone make this script for me out of this, please?

 

I would want a pretty wide range of effect, so it basically hits everyone. Heck, you could throw in the Hurricane script too, which would simulate the "vortex" effect of Fable 3. :D

 

Here's the source script for Force Strike, from the High Level Force Powers mod. All credit to Stoffe (RevanAnt), the original creator of this mod. Also, a note he included in the readme with the source scripts:

 

This folder contains the NWScript source code for the impact scripts of the force powers added in this mod. This is intended for Modders only and is not something you need to use the Mod. If you are not interested in modding you can safely delete the "source" folder.

 

IMPORTANT! These scripts CANNOT be recompiled and dropped in the Override folder to be used as is. The Installer application for this Mod updates the scripts with the proper row number to the new lines added to the 2DA files forceshields.2da, effecticon.2da, poison.2da and visualeffects.2da.

 

These scripts contain only dummy values in those places, so to recompile them in usable shape you will have to manually look up those rows in above mentioned 2DA files and change the scripts to use the proper values. Look for the functions SetEffectIcon(), EffectPoison(), EffectVisualEffect() and EffectForceShield(). Whenever the parameters to these functions is something high like 998, 999 or 9999, those are dummy values you need to update.

 

If you have any questions, find any bugs, or wish to use these scripts for something, please let me know.

 

// =============================================================

// ST_FORCESTRIKE.NSS - Force Power Script

// =============================================================

// Force Strike

// Smackdown power - Hit the target with a barrage of Lightning

// From Above. Does Unstoppable damage, is rather

// unstoppable in general. Knocks target to the ground briefly,

// and swats away any nearby creatures close to the blast, but

// does not damage them.

//

// FIX(2005-08-22): Made exception not to use knockdown against

// beasts and droids, since being killed while

// knocked down often results in an otherwise

// rare "lying dead on their back" animation,

// which is missing in many of the beast and

// droid models. Using stun instead for those.

//

// NEEDS: N/A

// -------------------------------------------------------------

// Last modified: 2005-08-22

 

#include "st_inc_force"

 

void main() {

object oTarget = GetSpellTargetObject();

location lLoc = GetLocation(oTarget);

int nDice = GetHitDice(OBJECT_SELF);

int nDamage = ST_CalcDamage(oTarget, nDice, 8);

effect eDamage = EffectDamage(nDamage, DAMAGE_TYPE_ACID);

effect eKnockdown = EffectKnockdown();

effect eVis = EffectVisualEffect(VFX_PRO_LIGHTNING_L);

 

SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, GetSpellId(), TRUE));

 

int i;

int nBeams = 6;

float fAngleInc = 360.0 / nBeams;

float fAngle = 0.0;

vector loc;

effect eBeam = EffectBeam(VFX_BEAM_LIGHTNING_DARK_L, oTarget, BODY_NODE_CHEST);

 

for (i = 0; i < nBeams; i++) {

loc = GetPosition(oTarget);

loc.x += cos(fAngle) * 5.5;

loc.y += sin(fAngle) * 5.5;

loc.z += 12.0;

 

object oInv = CreateObject(OBJECT_TYPE_PLACEABLE, "plc_invisible", Location(loc, (fAngle - 180.0)));

ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eBeam, oInv, 1.6);

AssignCommand(oInv, DestroyObject(oInv, 2.0, TRUE));

 

fAngle += fAngleInc;

if (fAngle > 360.0)

fAngle = fAngle - 360.0;

}

 

DelayCommand(0.1, ST_ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget));

DelayCommand(0.2, ST_ApplyEffectToObject(DURATION_TYPE_INSTANT, eDamage, oTarget));

DelayCommand(0.25, ST_ApplyEffectToObject(DURATION_TYPE_TEMPORARY, ST_SubKnockDown(oTarget, eKnockdown), oTarget, 4.0));

 

// Push away any other nearby enemies by the force of the impact....

effect ePushy = EffectForcePushTargeted(lLoc);

effect eWave = EffectVisualEffect(3007);

object oNear = GetFirstObjectInShape(SHAPE_SPHERE, 4.0, lLoc);

 

while (GetIsObjectValid(oNear)) {

if (!GetIsNeutral(oNear) && (oNear != oTarget) && (oNear != OBJECT_SELF)) {

SignalEvent(oNear, EventSpellCastAt(OBJECT_SELF, GetSpellId(), GetIsEnemy(oNear)));

DelayCommand(0.1, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, ePushy, oNear, 0.1));

}

oNear = GetNextObjectInShape(SHAPE_SPHERE, 4.0, lLoc);

}

 

// Show an impact explosion effect where the bolts hit...

DelayCommand(0.3, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eWave, lLoc));

 

}

Link to comment
Share on other sites

 Share

×
×
  • Create New...