Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

I need scripting help please, and I'm willing to PAY!

Hello everyone, I am making a game a game with Gubid's Tactical Battle System, and I'm trying to get a script called Mea's Multi-STRIKE which allows skills to deal damage multiple times per use. The Mea's multi-strike script is really simple, but it doesn't work with this battle system as it is. If I just put the script in without editing anything, it won't bring up any error messages while playing the game, it just doesn't do anything. I think the reason for this is because Gubid's TBS appears to use its own Sprite_Battler class, Spriteset_Battle class, and Scene_Battle class called Sprite_Battler_GTBS class, Spriteset_Battle_GTBS class, and Scene_Battle_TBS class, while Mea's multi-strike script uses the default Sprite_Battler class, Spriteset_Battle class, and Scene_Battle class. I tried changing Mea's multi-strike script from using the default Scene_Battle class to use Gubid's Scene_Battle_TBS class. While this did not produce any errors, it still did not work because the script still does nothing at all.

So I also tried to change Mea's script from using the default Sprite_Battler class and Spriteset_Battle class to using Gubid's TBS's Sprite_Battler_GTBS class and Spriteset_Battle_GTBS class, but after doing this, when I enter a battle, I get this error message: Script 'GTBS v1.5_2 - Part 1' line 2749: ArgumentError occurred. Wrong number of arguments (2 for 1).

Here is the snippet of code where the error is:

1743 #--------------------------------------------------------------------------
1744 # * Create Actor Sprite
1745 #--------------------------------------------------------------------------
1746 def create_actors
1747 @actor_sprites = []
1748 for actor in $game_system.tactics_actors + $game_system.tactics_neutral
1749 @actor_sprites.push(Sprite_Battler_GTBS.new(@viewport1,actor)) # <<--This is where the error is
1750 end
1751 end

This error does not ever come up unless I make this change. Naturally, I tried to change (@viewport1,actor) to (@viewport1) but this just produced more errors.

I'm at a complete loss here. I REALLY want to use this script and it seems like it would be easy enough to get it to work, but I just do not have the scripting know how with Ruby scripting (although I am pretty good at C++, Ruby has never made any sense to me at all).

I'm willing to pay $20 to anyone who can get this script to work with this battle system immediately via paypal. Also, I'd be happy to pay another $20 to anyone who can get Sephiroth Spawn's "Enemys that Level Up" TYPE 1 script to work without corrupting save game files. This script works perfectly until you try to save a game, load that game, and try to enter a battle. When I try to enter a battle after loading a saved game with that script in my game, I get this error message: Script 'EnemyLevels' line 58: No Method Error Occurred. Undefined Method '*' for nil:NilClass

Here is where the error occurs:

57 # Update Stats
58 @maxhp = (@b_maxhp * average).to_i # <-- Here. It does not have this problem unless you save a game, then load that game and try to enter a battle. It seems to "corrupt" save files, but I have absolutely no idea why. If anyone can help me fix this again I'd be happy to pay you $20 immediately via paypal!

Here is the link to Sephiroth Spawn's "Enemys that Level Up script" (remember, its the TYPE 1 version, not the type 2 version, thanks): http://forum.chaos-project.com/index.php?topic=10545.0

Here is a copy of Sephiroth Spawn's "Enemys that level up TYPE 1 script":

#==============================================================================
# Enemies That Level UP (Type 1)
#--------------------------------------------------------------------------
# Created By SephirothSpawn (11.17.05)
# Last Updated: 11.25.05
# Updated: Can Make Enemies Bosses (They Do Not Level Up) 11.18.05
# Updated: Stats Now Randomized += 15 %
#==============================================================================

#==============================================================================
# Module RPG
#==============================================================================
module RPG
#=========================================================================
# Class Enemy
#=========================================================================
class Enemy
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
# Base Statistics
attr_accessor :b_maxhp, :b_maxsp, :b_str, :b_dex, :b_agi, :b_int
attr_accessor :b_atk, :b_pdef, :b_mdef, :b_eva, :b_exp, :b_gold
# Boss Check
attr_accessor :boss
#--------------------------------------------------------------------------
# * Set Bases
#--------------------------------------------------------------------------
def set_bases
@b_maxhp, @b_maxsp = @maxhp, @maxsp
@b_str, @b_dex, @b_agi, @b_int = @str, @dex, @agi, @int
@b_atk, @b_pdef, @b_mdef, @b_eva = @atk, @pdef, @mdef, @eva
@b_exp, @b_gold = @exp, @gold
# Checks to See if there's a boss
if @name.include?("(BOSS)")
@boss = true
@name.slice!("(BOSS)")
else
@boss = false
end
end
#--------------------------------------------------------------------------
# * Update Level
#--------------------------------------------------------------------------
def update_level
unless @boss
# Calulates Average Level of Party
average = 0
for actor in $game_party.actors
average += actor.level
end
average /= $game_party.actors.size
# Adds 1 (So when you're at level 99, 100% of the Stats are used)
average += 1
# Set to a percent
average /= 100.000
# Update Stats
@maxhp = (@b_maxhp * average).to_i
percent = (@maxhp * (( rand(15) + 1 ) / 100.0)).to_i
@maxhp += rand(2) == 0 ? percent : -percent
@maxsp = (@b_maxsp * average).to_i
percent = (@maxsp * (( rand(15) + 1 ) / 100.0)).to_i
@maxsp += rand(2) == 0 ? percent : -percent
@str = (@b_str * average).to_i
percent = (@str * (( rand(15) + 1 ) / 100.0)).to_i
@str += rand(2) == 0 ? percent : -percent
@dex = (@b_dex * average).to_i
percent = (@dex * (( rand(15) + 1 ) / 100.0)).to_i
@dex += rand(2) == 0 ? percent : -percent
@agi = (@b_agi * average).to_i
percent = (@agi * (( rand(15) + 1 ) / 100.0)).to_i
@agi += rand(2) == 0 ? percent : -percent
@int = (@b_int * average).to_i
percent = (@int * (( rand(15) + 1 ) / 100.0)).to_i
@int += rand(2) == 0 ? percent : -percent
@atk = (@b_atk * average).to_i
percent = (@atk * (( rand(15) + 1 ) / 100.0)).to_i
@atk += rand(2) == 0 ? percent : -percent
@pdef = (@b_pdef * average).to_i
percent = (@pdef * (( rand(15) + 1 ) / 100.0)).to_i
@pdef += rand(2) == 0 ? percent : -percent
@mdef = (@b_mdef * average).to_i
percent = (@mdef * (( rand(15) + 1 ) / 100.0)).to_i
@mdef += rand(2) == 0 ? percent : -percent
@eva = (@b_eva * average).to_i
percent = (@eva * (( rand(15) + 1 ) / 100.0)).to_i
@eva += rand(2) == 0 ? percent : -percent
@exp = (@b_exp * average).to_i + @b_exp
percent = (@exp * (( rand(15) + 1 ) / 100.0)).to_i
@exp += rand(2) == 0 ? percent : -percent
@gold = (@b_gold * average).to_i + @b_gold
percent = (@gold * (( rand(15) + 1 ) / 100.0)).to_i
@gold += rand(2) == 0 ? percent : -percent
end
end
end
end

#==============================================================================
# Class Scene Title
#==============================================================================
class Scene_Title
#--------------------------------------------------------------------------
# * Alias' New Game Method
#--------------------------------------------------------------------------
alias new_game command_new_game
#--------------------------------------------------------------------------
# * Adds Base Stats For Enemies
#--------------------------------------------------------------------------
def command_new_game
for i in 1...$data_enemies.size
$data_enemies.set_bases
end
new_game
end
end

#==============================================================================
# Class Scene Battle
#==============================================================================
class Scene_Battle
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
for i in 1...$data_enemies.size
$data_enemies.update_level
end
end
end


Here is a link to download a demo of the scripts for my game with Gubid's Tactics Battle System and Mea's Multi-STRIKE script: https://app.box.com/s/b5s7dfiwncbzsrxah5lndlfnhpxistvy

EDIT: I forgot to say that the Ghost's normal attack and Alexus' cross blade are set by the script to hit twice. This is what I'm trying to get to work.

Please, if anyone can help me with either of these scripts, I will be happy to pay you $20 per script immediately via paypal! I hope to hear from you soon!
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top