[RMVX ACE] GAMBLING SKILLS
Posts
Pages:
1
Inspired by fomar's old topic about getting the most out of the custom damage formula box in VX Ace I decided to make a couple of full-fledged gambling skills. These would be perfect for a Setzer-like character. If there are any other gambling-based skills anyone wants, let me know and I'll try to make 'em.
In the formula box for the respective skills, just put a.custom_formula_dice(a,b) or a.custom_formula_gamble(a,b)
They work thusly: Roll the Dice (the first skill) has the character roll 2 dice. Normally they deal 100 damage * the roll, but if they get double 1 (snake eyes) it deals 10,000 damage instead, and if they get doubles it does 400 * roll.
Risky Gamble also rolls 2 dice, but also lets the enemy roll. If your roll is higher it does 1000 damage * roll, 100,000 on snake eyes and 4000 * roll on doubles, but if your roll is lower it backfires and the user takes 1000 damage * roll instead.
class Game_Battler < Game_BattlerBase def custom_formula_dice(a,b) c=1+rand(6) d=1+rand(6) if c==1 and d==1 $game_message.add(sprintf("%s rolls snake eyes!", a.name)) elsif c==d $game_message.add(sprintf("%s rolls double %d!", a.name, c)) else $game_message.add(sprintf("%s rolls %d and %d!", a.name, c, d)) end BattleManager.wait_for_message if c==1 and d==1 10000 elsif c==d c*400 else (c+d)*100 end end def custom_formula_gamble(a,b) c=1+rand(6) d=1+rand(6) if c==1 and d==1 $game_message.add(sprintf("%s rolls snake eyes!", a.name)) elsif c==d $game_message.add(sprintf("%s rolls double %d!", a.name, c)) else $game_message.add(sprintf("%s rolls %d and %d!", a.name, c, d)) end $game_message.add(sprintf("%s hands the dice to the enemy.", a.name)) BattleManager.wait_for_message e=1+rand(6) f=1+rand(6) if e==1 and f==1 $game_message.add(sprintf("%s rolls snake eyes!", b.name)) elsif e==f $game_message.add(sprintf("%s rolls double %d!", b.name, e)) else $game_message.add(sprintf("%s rolls %d and %d!", b.name, e, f)) end BattleManager.wait_for_message $game_message.add(sprintf("%s's roll: %d", a.name, c+d)) $game_message.add(sprintf("%s's roll: %d", b.name, e+f)) BattleManager.wait_for_message if (c+d) > (e+f) if c==1 and d==1 100000 elsif c==d c*4000 else (c+d)*1000 end else $game_message.add(sprintf("%s's gamble backfired; %d damage is redirected!", a.name, (c+d)*1000)) a.perform_damage_effect a.result.hp_damage = (c+d)*1000 a.execute_damage(a) BattleManager.wait_for_message 0 end end end
In the formula box for the respective skills, just put a.custom_formula_dice(a,b) or a.custom_formula_gamble(a,b)
They work thusly: Roll the Dice (the first skill) has the character roll 2 dice. Normally they deal 100 damage * the roll, but if they get double 1 (snake eyes) it deals 10,000 damage instead, and if they get doubles it does 400 * roll.
Risky Gamble also rolls 2 dice, but also lets the enemy roll. If your roll is higher it does 1000 damage * roll, 100,000 on snake eyes and 4000 * roll on doubles, but if your roll is lower it backfires and the user takes 1000 damage * roll instead.
Pages:
1














