I was wondering does anyone know how to make the klingon death chant target the ship that fires it, instead of near by ships?
Also how can you (if you can) have wave weapon fire a beam and vise versa?
Thanks in advanced for any help.
I put together a pretty good list of what does what in terms of classLabel entries on Starbase 34's tutorial site. However, making the death chant do just about anything is impossible as it's hard-coded to a far greater extent than just about any other special weapon. Most specials are, unfortunately, incapable of self-targeting.
One of my favorite self-made special weapons is actually a mod of the death chant to target enemies and halve their fire rate. It helps balance out the Klingons in late-game, since most of their heavy ships only have 300-500f weapons range compared to other races' 650-950f weapons range.
If I have any wishes about the A2 game engine, it'd be greater special weapon flexibility, though. Actually, it's probably a close second to pathfinding. I feel like most of the rest of the game has held up over the years, and modding has really kept it fresh, but even Fleet Operations has been frustrated in trying to do more with special weapons and pathfinding.
Thanks guys, but I'm sure I heard of doing it somewhere it was something like beneficial =1 or something like that but maybe I'm just imagining it.
It could also be the "blame the shooter" tag. Can't remember how exactly it's worded but you can find it in the Phoenix spatial rift weapon.
That could work; I haven't tried it myself yet. Some of those tags work with other classlabels, some of them just don't. Worth a try.
Self targeting Death Chant used to make a warp drive in A1.
//Display name for this weapon wpnName = "Warp Drive" tooltip = "Warp Drive (^F^5)" verboseTooltip = "Activates the warpdrive, increasing movement speed. Weapons are dissabled."
//Name of the ODF file for the ordinance for this weapon ordName = "warpo"
//Location of the button in the speed panel buttonSlot = 5
// Priority of button in the speed panel, this is only // used if it is non-zero. buttonPriority = 10
//Type of border to use for this button. //0 = No border. //1 = Offensive border. //2 = Defensive border. buttonBorder = 0
// Mark this as a special weapon. special = 1
//Time Delay between shots shotDelay = 3.5
// Range within which the weapon will fire. range = 300.0f
//Sound which is played when the weapon fires //fireSound = "warp.wav"
//Programming Stuff DO NOT CHANGE classLabel = "toggleweapon"
//Should not be used wpnReticle = "gblast"
//UNKNOWN wpnPriority = 0
//UNKNOWN wpnCategory = "TOWE"
// HIT_EVERYONE = 0, // HIT_ALLIES = 1, // HIT_ENEMIES = 2 hitCondition = 1 switchToAttack = 0 cloakEnable = 1 regularWeaponDelay = 30.0f
//Programming Stuff DO NOT CHANGE classLabel = "deathchant"
//The number of units which are subtracted from the Special Energy Reserve specialEnergyCost = 700
//The base amount of damage which the ordinance does with each hit damageBase = 0
//The amount of variance applied to the damage (i.e. 10 + or - 2) damageVariance = 0
//The threshold which must be exceeded to cause crew casualties prior //to shield exhaustion damageThreshold = 0
//The multiplier by which any damage which exceeds the threshold is //multiplied by to calculate the percentage of crew lost with that hit shieldCrewModifier = 0
//The multiplier by which any damage which is applied to the hull is //multiplied by to calculate the percentage of crew lost with that hit hullCrewModifier = 0
//Amount of time the ordinance will exists without hitting something lifeSpan = 0
//How fast the shot moves shotSpeed = 35.0
// This affects the turning radius/rate somewhat unknown. omegaTurn = 3.0
// The rate at which this Torpedo accelerates. shotAccel = 100.0
//The sprite which is used for this ordinance Sprite = "wcover"
// Time to play through the animation for the sprite in seconds spriteDuration = 1.0
//this modifies the color of the ordinance (not currently working) shotColor = 227
// Size of photon torpedo. radius = 2.0f
// Let's ignore them thar shields ignoreShield = 1
// Special value for special effects (how long it lasts?) 15 specialValue = 30
// Values for this effect FireModifier = 1 RepairModifier = 1 TurnModifier = 4 DamageModifier = 1 SpeedModifier = 2 HitModifier = 1
It works perfectly. A1 and A2 share quite a bit of code, so virtually anything for A1 will work in A2, but not generally the other way around. The effect sprite is hardcoded, but other than that you could change it up quite a bit. Honestly, I'm not sure how it works. I got the code from another self targeting weapon someone made.
Thank you everyone for all your help, I'll try it latter on today.