Page 1 of 1
"Proc chance" weapons?
Posted: Thu Jan 03, 2013 9:33 pm
by Ixnatifual
Is it possible to make a weapon that has a chance on each attack that it'll cast a spell? I'd like to change the Flame Blade from being basically a "wand of fireballs" into a regular sword that has a chance of casting Fireburst when attacking.
I tried putting a function returning a string as the item's onAttack value, but that doesn't fly.
Re: "Proc chance" weapons?
Posted: Thu Jan 03, 2013 9:46 pm
by mahric
The dismantler is a sword that is available in the game. It seems to have a random chance to cast a shock spell.
However, if you look at the definition of the dismantler (in the items.lua), there is nothing that indicates that ability.
Even worse: if you use that script in your mod you only have a basic sword and you don't get the random proc chance.
To get something with the effect that you want, follow these steps:
1) create your own weapon by copying and pasting the following script into your items.lua. Adjust the parameters where needed.
Code: Select all
defineObject{
name = "fireburst_blade",
class = "Item",
uiName = "Fireburst Blade",
model = "assets/models/items/long_sword.fbx",
description = "A magical fire flickers on the glowing hot steel of the blade.",
skill = "swords",
gfxIndex = 216,
attackPower = 14,
damageType = "fire",
accuracy = 0,
coolDownTime = 3,
attackMethod = "meleeAttack",
attackSwipe = "vertical",
attackSound = "swipe",
impactSound = "impact_blade",
weight = 4.0,
}
2) Add the following code to your init.lua or, if you already have a "party" defined, only copy and paste the "onAttack" function.
Code: Select all
cloneObject{
name = "party",
baseObject = "party",
onAttack = function(champion, weapon)
-- check if it is the fireburst_blade
if weapon.name == "fireburst_blade" then
-- check if proc goes off (40 pct chance in example below)
if math.random(1, 100) <= 40 then
-- do actual spellcasting here
local dx, dy = getForward(party.facing)
local s = spawn("spawner", party.level, party.x+dx, party.y+dy, party.facing)
s:setSpawnedEntity("fireburst")
s:activate()
s:destroy()
end
end
end,
}
The disadvantages of this quick code are:
- A proc might go off, even if the player misses the monster
- A member from the back of the party can use this to proc a weapon even if they can't reach the monster (this can be solved with more scripting)
Hope this works as you intended!
Re: "Proc chance" weapons?
Posted: Tue May 20, 2014 5:42 am
by Isaac
Several weapons that can be made by the Smith in the ORRR2 do this... Dagger of Fireburst, for instance.
The Deathkiss sword in ORRR2 does this also; but it's not limited to just one spell.