Main Menu
  • Welcome to The RPG Maker Resource Kit.

Does this BattleSystem Script Exist?

Started by ArchZealot, December 30, 2005, 08:25:07 PM

0 Members and 2 Guests are viewing this topic.

ArchZealot

Hey guys,
I was wondering if theres an existing BattleSystem Script that something close to this:
Instead of the default battlesystem, I want to use a "BattleMap System". Were once an encounter has been initiated, you are taken to this battle map, where you move about like you would normally. Only, here its on a grid and its turn based.

Then lets say you reach the enemy(he/she should move toward you aswell, btw)
and you select an attack, some of the grids should light up, indicating the range of the attack (Im going to be using a lot of long range weaponry, for examlpe: Shuriken and Kunai) and the attack should only be executable if the target is within the higlighted area.

And if at any possible, I'd like the battle menu to look and function somewhat like that in FF-X.

Does this thing exist? Or is anyone crazy enough to make something like this lol (I can just imagine how much work this could be)

I use RMXP btw.

PH34R T3H L33T

wildrj

I belive its called the suad based movment script u can find it here
http://s11.invisionfree.com/Rpg_Maker_XP/index.php?showtopic=542 Ayden found that site
edit:opps thats not it try looking up a finalfantasy tatics style cbs ive seen one somewere in the forum.
Yay i got a zoo sort of
 

ArkBennett

A Tactics Battle System?
Last I heard someone was still trying to make one.

wildrj

Mwhahahahahahahaha i found the script mwhahahhahah its was on rmxp of course heres the link hope it works and it is the one u wanted
http://www.rmxp.net/forums/index.php?showforum=87&prune_day=100&sort_by=Z-A&sort_key=last_post&topicfilter=all&st=175
Yay i got a zoo sort of
 

Lord Dante


ArchZealot

Thanks so much guys  :D
Ill have a look at this when I get home ^.^ b

PH34R T3H L33T

ArkBennett

I hate RmXp 'cause they want you to sign-in for access to there resources, scripts, etc.

I'm very curious about the script so can you post it here?

ArchZealot

I could, but are you sure you want it? Its got a lot of bugs....
Ive pretty much given up on this system, till I can write it myself, which can only happen when Ive recieved my books....

PH34R T3H L33T

ArkBennett

Nevermind, it probably has to many beyond my knowledge to fix.

ArchZealot

It does have quite a few :/ sorry
But if anyone is crazy enough to wanne try and fix it, just ask lol, and Ill hand over what i have ^.^

PH34R T3H L33T

ArkBennett

Actully, sorry on second thought I'll keep it for reference.
Sorry for chagning my mind.

ArchZealot

Lol, ok, here ya go:
Theres like 50 scripts tho, so wouldnt it be better to upload it for you somewhere? In case not, heres the first of... a lot.
#==============================================================================
# ? Taret__Game_Battler
#------------------------------------------------------------------------------
# The first three scripts here are basically just carbon copies
# of the default Game_Battler script, although a few changes are
# made, including the removal or addition of a few member variables
# Actually, a few functions in these first three scripts are overloaded
# and therefore go with the "most recent" version, which is to say,
# the version of the function in 4 or 5.
#==============================================================================

class Taret__Game_Battler
 #--------------------------------------------------------------------------
 # ? ??????????
 #--------------------------------------------------------------------------
 attr_reader   :battler_name             # ???? ?????
 attr_reader   :battler_hue              # ???? ??
 attr_reader   :hp                       # HP
 attr_reader   :sp                       # SP
 attr_reader   :ep
 attr_reader   :states                   # ????
 attr_reader   :character_name
 attr_reader   :character_hue
 attr_reader   :path
 attr_accessor   :x
 attr_accessor   :y
 attr_reader   :real_x
 attr_reader   :real_y
 attr_reader   :tile_id
 attr_reader   :opacity
 attr_reader   :blend_type
 attr_reader   :direction
 attr_reader   :pattern
 attr_reader   :through
 attr_reader   :class_id                 # ??? ID
 attr_accessor :hidden                   # ?????
 attr_accessor :immortal                 # ??????
 attr_accessor :damage_pop               # ?????????
 attr_accessor :damage                   # ?????
 attr_accessor :critical                 # ?????????
 attr_accessor :animation_id             # ??????? ID
 attr_accessor :animation_hit            # ??????? ??????
 attr_accessor :white_flash              # ?????????
 attr_accessor :blink                    # ?????
 attr_accessor :transparent
 attr_accessor :ct
 attr_accessor :element
 attr_reader   :skills
 attr_reader   :weapon_id                # ?? ID
 attr_reader   :armor_id                # ? ID
 attr_reader   :accessory1_id                # ??? ID
 attr_reader   :accessory2_id                # ??? ID
 #--------------------------------------------------------------------------
 # ? ?????????
 #--------------------------------------------------------------------------
 def initialize
   @battler_name = ""
   @battler_hue = 0
   @hp = 0
   @sp = 0
   @ep = 0
   @states = []
   @states_turn = {}
   @maxhp_plus = 0
   @maxsp_plus = 0
   @str_plus = 0
   @dex_plus = 0
   @agi_plus = 0
   @int_plus = 0
   @hidden = false
   @immortal = false
   @damage_pop = false
   @damage = nil
   @critical = false
   @animation_id = 0
   @animation_hit = false
   @white_flash = false
   @blink = false
   @current_action = Taret__Game_BattleAction.new
   @x = 0
   @y = 0
   @real_x = 0
   @real_y = 0
   @tile_id = 0
   @blend_type = 0
   @opacity = 255
   @direction = 2
   @pattern = 0
   @through = false
   @transparent = false
   @original_direction = 2
   @original_pattern = 0
   @walk_anime = true
   @step_anime = false
   @direction_fix = false
   @always_on_top = false
   @anime_count = 0
   @stop_count = 0
   @wait_count = 0
   @locked = false
   @prelock_direction = 0
   @jump_count = 0
   @jump_peak = 0
   @ct = 0
   @class_id = 0
   @path = []
   @move_speed = 4
   @move_frequency = 6
   @skills = []
   @element = rand(4)
 end
 
 def str
   n = [[base_str + @str_plus, 1].max, 12].min
   for i in @states
     n *= $data_states[i].str_rate / 100.0
   end
   n = [[Integer(n), 1].max, 12].min
   return n
 end
 
 def dex
   n = [[base_dex + @dex_plus, 1].max, 12].min
   for i in @states
     n *= $data_states[i].dex_rate / 100.0
   end
   n = [[Integer(n), 1].max, 12].min
   return n
 end
 
 def agi
   n = [[base_agi + @agi_plus, 1].max, 12].min
   for i in @states
     n *= $data_states[i].agi_rate / 100.0
   end
   n = [[Integer(n), 1].max, 12].min
   return n
 end
 
 def int
   n = [[base_int + @int_plus, 1].max, 12].min
   for i in @states
     n *= $data_states[i].int_rate / 100.0
   end
   n = [[Integer(n), 1].max, 12].min
   return n
 end
 
 #--------------------------------------------------------------------------
 # ? MaxHP ???
 #     maxhp : ??? MaxHP
 #--------------------------------------------------------------------------
 def maxhp=(maxhp)
   @maxhp_plus += maxhp - self.maxhp
   @maxhp_plus = [[@maxhp_plus, -9999].max, 9999].min
   @hp = [@hp, self.maxhp].min
 end
 #--------------------------------------------------------------------------
 # ? MaxSP ???
 #     maxsp : ??? MaxSP
 #--------------------------------------------------------------------------
 def maxsp=(maxsp)
   @maxsp_plus += maxsp - self.maxsp
   @maxsp_plus = [[@maxsp_plus, -9999].max, 9999].min
   @sp = [@sp, self.maxsp].min
 end
 #--------------------------------------------------------------------------
 # ? ?????
 #     str : ?????
 #--------------------------------------------------------------------------
 def str=(str)
   @str_plus += str - self.str
   @str_plus = [[@str_plus, -999].max, 999].min
 end
 #--------------------------------------------------------------------------
 # ? ??????
 #     dex : ??????
 #--------------------------------------------------------------------------
 def dex=(dex)
   @dex_plus += dex - self.dex
   @dex_plus = [[@dex_plus, -999].max, 999].min
 end
 #--------------------------------------------------------------------------
 # ? ??????
 #     agi : ??????
 #--------------------------------------------------------------------------
 def agi=(agi)
   @agi_plus += agi - self.agi
   @agi_plus = [[@agi_plus, -999].max, 999].min
 end
 #--------------------------------------------------------------------------
 # ? ?????
 #     int : ?????
 #--------------------------------------------------------------------------
 def int=(int)
   @int_plus += int - self.int
   @int_plus = [[@int_plus, -999].max, 999].min
 end
 #--------------------------------------------------------------------------
 # ? ??????
 #--------------------------------------------------------------------------
 def hit
   n = 100
   for i in @states
     n *= $data_states[i].hit_rate / 100.0
   end
   return Integer(n)
 end
 #--------------------------------------------------------------------------
 # ? ??????
 #--------------------------------------------------------------------------
 def atk
   n = base_atk
   for i in @states
     n *= $data_states[i].atk_rate / 100.0
   end
   return Integer(n)
 end
 #--------------------------------------------------------------------------
 # ? ???????
 #--------------------------------------------------------------------------
 def pdef
   n = base_pdef
   for i in @states
     n *= $data_states[i].pdef_rate / 100.0
   end
   return Integer(n)
 end
 #--------------------------------------------------------------------------
 # ? ???????
 #--------------------------------------------------------------------------
 def mdef
   n = base_mdef
   for i in @states
     n *= $data_states[i].mdef_rate / 100.0
   end
   return Integer(n)
 end
 #--------------------------------------------------------------------------
 # ? ???????
 #--------------------------------------------------------------------------
 def eva
   n = base_eva
   for i in @states
     n += $data_states[i].eva
   end
   return n
 end
 #--------------------------------------------------------------------------
 # ? HP ???
 #     hp : ??? HP
 #--------------------------------------------------------------------------
 def hp=(hp)
   @hp = [[hp, maxhp].min, 0].max
   # ????????????
   for i in 1...$data_states.size
     if $data_states[i].zero_hp
       if self.dead?
         add_state(i)
       else
         remove_state(i)
       end
     end
   end
 end
 #--------------------------------------------------------------------------
 # ? SP ???
 #     sp : ??? SP
 #--------------------------------------------------------------------------
 def sp=(sp)
   @sp = [[sp, maxsp].min, 0].max
 end
 #--------------------------------------------------------------------------
 # ? ???
 #--------------------------------------------------------------------------
 def recover_all
   @hp = maxhp
   @ep = maxep
   for i in @states.clone
     remove_state(i)
   end
 end
 #--------------------------------------------------------------------------
 # ? ????????????
 #--------------------------------------------------------------------------
 def current_action
   return @current_action
 end
 #--------------------------------------------------------------------------
 # ? ????????????
 #--------------------------------------------------------------------------
 def make_action_speed
   @current_action.speed = agi + rand(10 + agi / 4)
 end
 #--------------------------------------------------------------------------
 # ? ??????
 #--------------------------------------------------------------------------
 def dead?
   return (@hp == 0 and not @immortal)
 end
 #--------------------------------------------------------------------------
 # ? ????
 #--------------------------------------------------------------------------
 def exist?
   return (not @hidden and (@hp > 0 or @immortal))
 end
 #--------------------------------------------------------------------------
 # ? HP 0 ??
 #--------------------------------------------------------------------------
 def hp0?
   return (not @hidden and @hp == 0)
 end
 #--------------------------------------------------------------------------
 # ? ??????????
 #--------------------------------------------------------------------------
 def inputable?
   return (not @hidden and restriction <= 1)
 end
 #--------------------------------------------------------------------------
 # ? ??????
 #--------------------------------------------------------------------------
 def movable?
   return (not @hidden and restriction < 4)
 end
 #--------------------------------------------------------------------------
 # ? ?????
 #--------------------------------------------------------------------------
 def guarding?
   return (@current_action.kind == 0 and @current_action.basic == 1)
 end
 #--------------------------------------------------------------------------
 # ? ?????
 #--------------------------------------------------------------------------
 def resting?
   return (@current_action.kind == 0 and @current_action.basic == 3)
 end
end

PH34R T3H L33T

ArkBennett

Ya, you can use Megauploads.com
Put it in a zip though if your going to compress it.

ArchZealot

I prefer SendSpace, but Zipped as you requested: Linky

PH34R T3H L33T