LOGIN
SEARCH
PROFILE
keys: ↑ ↓
LOGOUT
INDEX
MEMBERS
keys: ↑ ↓
HOME
PORTAL
PLAY ALONG
PLAY with WORDS
PLAY with GRAPHICS
PLAY with SOUNDS
PLAY with CODES
PLAY with PROJECTS
keys: ← →
Guest Access
Register:
Members:



View previous topic View next topic Go down Message [Page 1 of 1]

EVENTALIST
EVENTALIST
#1 Wiggles Random Weapon Generator (RMXP) Empty Wiggles Random Weapon Generator (RMXP)
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
Wiggles Random Weapon Generator
Version: 1.2
Author: Mr Wiggles
Date: June 26, 2013

Version History



  • Version 1.2 6/26/13 - XAS compatible + First item store glitch
  • Version 1.0 4/30/11 - Original Release


Planned Future Versions

  • More features and such, idk what...


Description


This script creates random weapons in game for the player to use. It's a lot like the game Border Lands.

Features

  • Too many, look at the config module in the code box bellow.


Instructions
You'll have to paste the script above main and bellow the default scripts. Download and place the WRWG folder in your graphics folder.

Script


Code:

#==============================================================================
#              ** Wiggles Random Weapon Generator **
#==============================================================================
# By: Mr_Wiggles
# Version 1.2
# 6/26/13
#==============================================================================
#                        Instructions:
#                --------------------------------
# Make sure that the "WRWG" folder is in your Graphics directory.
#
# To give the player a random weapon create a script call in an event:
#  "wrwg_gain_weapon(rare_per)"
#
# You can also ues the id tag for shops and change weapon event commands.
#
# rare_per = If not used in the call will use defualt. Changes the rarity per
#            to allow for a higher or lower chance of a rare item.
#
#==============================================================================
module WRW_Generator
#==============================================================================
# ** Config
#==============================================================================
# ids of weapons in the database to transform into a random one.
RANDID = [17,18,19,20]
#-----------------------------------------------------------------------------
# These are teh types of weapons, These are also the base names for the icon
# IMGs in the "Graphics/WRWG/" folder.
TYPES = {
0 => "Sword",
1 => "Axe",
2 => "Bow",
3 => "Spear"
}
#-----------------------------------------------------------------------------
# This is the base tool for the above types. (Only if using with XAS)
XAS_3dot92 = true # Using XAS version 3.92 ?
TOOLBASE = {
0 => 1,
1 => 2,
2 => 3,
3 => 4
}
#-----------------------------------------------------------------------------
# This is the base attack for the above types.
STATBASE = { # use 0 for no base value.
#    [atk, pdef, mdef, str, dex, agi, int]
0 => [130,  0 ,  0 ,  0 ,  0 ,  0 ,  0 ],
1 => [310,  0 ,  0 ,  0 ,  0 ,  0 ,  0 ],
2 => [120,  0 ,  0 ,  0 ,  0 ,  0 ,  0 ],
3 => [145,  0 ,  0 ,  0 ,  0 ,  0 ,  0 ]
}
#-----------------------------------------------------------------------------
# These are the materials list, this will be the follow up name that comes
# after the type in the "Graphics/WRWG/" folder.
#  e.x. "Sword_Copper" or "Spear_Dragon"
# Materials are listed by most common to rarest.
MATERIAL = {
0 => "Copper",
1 => "Tin",
2 => "Bronze",
3 => "Iron",
4 => "Silver",
5 => "Mithril",
6 => "Dragon"
}
#-----------------------------------------------------------------------------
# This is the status bonus ranges for the above materials.
STATPLUS = { # use "" for no bonus.
#    [    atk    ,    pdef  ,  mdef    ,  str  ,  dex    ,    agi  , int]
0 => [" 50 - 100",    ""    ,    ""    ,    ""  ,    ""    , "1 - 10" , "" ],
1 => ["100 - 150",    ""    ,    ""    ,    ""  , "3 - 11" ,    ""    , "" ],
2 => ["150 - 200",    ""    ,    ""    ,    ""  ,    ""    ,    ""    , "" ],
3 => ["200 - 250",    ""    ,    ""    , "2 - 9" ,    ""    ,    ""    , "" ],
4 => ["250 - 300",    ""    ,    ""    ,    ""  ,    ""    ,    ""    , "" ],
5 => ["300 - 350",  "5 - 10" ,    ""    ,    ""  ,    ""    ,    ""    , "" ],
6 => ["350 - 400",    ""    ,  "8 - 11" ,    ""  ,    ""    ,    ""    , "" ]
}
#-----------------------------------------------------------------------------
# This is the chance of leveling up the material line.  i.e.
# copper + (chance > rand %) = tin + (chance > rand %) = bronze + ... ect
# until the chain breaks. (%0.00 Percentage)
DEFMATPER = 25.67
#-----------------------------------------------------------------------------
# Price value eidts. Price is modfied by the weapons rarity, and
# other factors like effects. Feel free to experament with these values.
PRICEMUL =  10  # higher = cost more (max 50)
PRICEDIV = 0.63 # lower  = cost more
#-----------------------------------------------------------------------------
# These are the special effect names. If a weapon has a special effect, this
# will be the follow up name that comes after the type in the
# "Graphics/WRWG/" folder. : e.x. "Sword_Quick" or "Spear_Master"
EFFNAME = {
0 => "Quick",
1 => "Powerfull",
2 => "Master",
3 => "Precision",
4 => "Poison"
}
#-----------------------------------------------------------------------------
# Chance of getting one or more of the above specials. (%0.00 Percentage)
EFFCHAN = {
0 =>  5.50,
1 =>  3.76,
2 =>  0.99,
3 => 10.01,
4 =>  3.85
}
#-----------------------------------------------------------------------------
# These are the effects for the above names. They go like so:
#    ["type", value_range]
#    "type" = type of effect boost
# Acceptable types:  "atk", "pdef", "mdef", "str", "dex", "agi", "int"
#
# You can also use the following..
#      ["argue", id]
# Acceptable argues: "add_state", "sub_state", "element"
# "add_state" = will add the state to the enemy when attacking.
# "sub_state" = will remove the state to the enemy when attacking.
# "element"  = makes the weapon have an elemental tie.
# id = is the id in the database of argument.
#
EFFECT = {
0 => ["agi", "99 - 199"],
1 => ["atk", "25 - 99"],
# You can include more then one effect type.
2 => [["atk", "30 - 50"], ["agi", "99 - 199"], ["dex", "99 - 199"]],
3 => ["dex", "101 - 201"],
4 => [["add_state", 3], ["element", 8]]
}
#-----------------------------------------------------------------------------
# These are the descriptive words used in making weapon descriptions.
# Try to use words that flow down the line.
# e.x. "(type) made from (material), containing hidden powers."      or
#      "(type) created with (material), bestoing amazing strength."
# The description is made from the words in the arrays by random, more words,
# more the descriptions seem random and unique.
#                      --------------------------
# after: "Weapon Type"
MADE  = ["made", "created", "forged", "formed"]
CONJUN = ["from", "with", "using"]
# after: "Material Name" - added if weapon has special effects.
JUNCT  = ["containing", "bestowing", "including"]
SPECT  = ["special", "hidden", "amazing", "foreign", "rare", "unique"]
POWRS  = ["powers", "potency", "energy", "forces", "vitality"]
#-----------------------------------------------------------------------------
# This is for testing, it will print the stats of the created item.
#  (good for making adjustments to the above values)
PSTATS = false  # show weapon stats after completion
PRANKS = false # show material change while its happening
#==============================================================================
# ** End Config
#==============================================================================
end # Do not eddit below this line if what you see there looks confusing.
#==============================================================================
# ** Interpreter
#==============================================================================
class Interpreter
  include WRW_Generator
  #--------------------------------------------------------------------------
  def wrwg_gain_weapon(chance = DEFMATPER)
    weap_id = create_new_rwdata(chance)
    $game_party.gain_weapon(weap_id, 1)
  end
  #--------------------------------------------------------------------------
  def create_new_rwdata(chance = DEFMATPER)
    wep_data      = RPG::Weapon.new
    # get material
    mater_index = 0; price = 0
    loop do
      rper = (rand(10000) / 100.to_f); exit = (chance.to_f < rper)
      string = "Chance % #{chance} < Random % #{rper}\n" +
              "Material: #{MATERIAL[mater_index]} - Continue: #{!exit}"
      print("#{string}") if PRANKS
      break if mater_index >= MATERIAL.size - 1 or exit
      mater_index += 1
    end
    material = MATERIAL[mater_index]
    # get type
    trand = rand(TYPES.size); type = TYPES[trand]; tool = TOOLBASE[trand]
    wep_data.action_id = tool
    # get effects
    rand_eff = []
    for id in 0..EFFNAME.size - 1
      eff  = EFFNAME[id]
      schan = EFFCHAN[id]
      if schan.to_f > (rand(10000) / 100.to_f)
        rand_eff.push([eff, schan, id]) if rand_eff.size < 1
      end
    end
    unless rand_eff.empty?
      effect_name = "#{rand_eff[0][0]} "      unless rand_eff[0].nil?
      effect_name += "and #{rand_eff[1][0]} " unless rand_eff[1].nil?
    end
    # create base values
    st = ["atk", "pdef", "mdef", "str_plus", "dex_plus", "agi_plus", "int_plus"]
    for i in 0..6
      b = 0
      unless STATPLUS[trand][i] == ""
        r = STATPLUS[trand][i].split(' - ')
        b = r[0].to_i + rand(r[1].to_i - r[0].to_i)
      end
      eval("wep_data.#{st[i]} = STATBASE[trand][i] + b")
    end
    # create effects
    wep_data.element_set    = []
    wep_data.plus_state_set  = []
    wep_data.minus_state_set = []
    for i in 0..1
      unless rand_eff[i].nil?
        effects = EFFECT[rand_eff[i][2]]
        effects = [effects] unless effects[0].is_a?(Array)
        for eff in effects
          if eff[1].is_a?(String)
            range = eff[1].split(' - ')
            value = rand(range[1].to_i)
            value = range[0].to_i if value < range[0].to_i
          end
          if eff[0] == "add_state"
            unless $data_states[eff[1]].nil?
              wep_data.plus_state_set.push(eff[1])
            end
          elsif eff[0] == "sub_state"
            unless $data_states[eff[1]].nil?
              wep_data.minus_state_set.push(eff[1])
            end
          elsif eff[0] == "element"
            wep_data.element_set.push(eff[1])
          else
            st.each{|s| eval("wep_data.#{s}  += value") if eff[0] == s}
          end
        end
      end
    end
    # create name
    wep_data.name  = "#{effect_name}#{material} #{type}"
    # create icon
    bases    = Retrive_Files.get_files("#{type}")
    im1      = bases[rand(bases.size)]
    materials = Retrive_Files.get_files("#{type}_#{material}")
    im2      = materials[rand(materials.size)]
    unless rand_eff[0].nil?
      unless rand_eff[0][0].nil?
        effects1  = Retrive_Files.get_files("#{type}_#{rand_eff[0][0]}")
        im3 = effects1[rand(effects1.size)]
      end
    end
    unless rand_eff[1].nil?
      unless rand_eff[1][0].nil?
        effects2  = Retrive_Files.get_files("#{type}_#{rand_eff[1][0]}")
        im4 = effects2[rand(effects2.size)]
      end
    end
    wep_data.icon_name = "WRWG - #{im1} - #{im2} - #{im3} - #{im4}"
    # create description
    made = MADE; conj = CONJUN; spec = SPECT; pows = POWRS; junc = JUNCT
    dr = "#{type} #{made[rand(made.size)]} #{conj[rand(conj.size)]} #{material}"
    unless rand_eff.empty?
      dr += ", #{junc[rand(junc.size)]} #{spec[rand(spec.size)]} " +
            "#{pows[rand(pows.size)]}"
    end; wep_data.description = dr + "."
    # create price
    div = PRICEDIV + 1; mul = PRICEMUL > 50 ? 50 : PRICEMUL
    price += mul * (10000 - chance * (mater_index + 1)) / div
    unless rand_eff.empty?
      price += mul * (10000 - rand_eff[0][1].to_i) / div if !rand_eff[0].nil?
      price += mul * (10000 - rand_eff[1][1].to_i) / div if !rand_eff[1].nil?
    end
    value = (price * (rand(100) / 100.to_f)) * mul / div
    price += rand(1000) > 500 ? -value : value
    price *= -1 if price < 0; wep_data.price = price.floor
    # create id and data
    wep_data.id = $game_party.last_rwid
    $game_party.last_rwid += 1
    $game_party.rand_wep_data[wep_data.id] = wep_data
    $data_weapons[wep_data.id] = wep_data
    $game_party.actors.each{|a| $data_classes[a.class_id
      ].weapon_set.push(wep_data.id)}
    XAS_SKILL::WEAPON_ID_TOOL[wep_data.id] = tool if XAS_3dot92
    $game_party.rweps_toolids[wep_data.id] = tool
    # return id
    string = "Name: #{wep_data.name} \t| id: #{wep_data.id} \t|" +
      "Price: #{wep_data.price} \n" +
      "atk: #{wep_data.atk} \t| pdef: #{wep_data.pdef} \t| " +
      "mdef: #{wep_data.mdef} \t| str: #{wep_data.str_plus} \t| " +
      "dex: #{wep_data.dex_plus} \t| " +
      "agi: #{wep_data.agi_plus} \t| int: #{wep_data.int_plus} \n" +
      "#{wep_data.description}"
    print("#{string}") if PSTATS
    return wep_data.id
  end
  #--------------------------------------------------------------------------
  def command_302
    $game_temp.battle_abort = true
    $game_temp.shop_calling = true
    type, id = @parameters
    id = create_new_rwdata if type == 1 and RANDID.include?(id)
    $game_temp.shop_goods   = [[type, id]]
    loop do
      @index += 1
      if @list[@index].code == 605
        type, id = @list[@index].parameters
        id = create_new_rwdata if type == 1 and RANDID.include?(id)
        $game_temp.shop_goods.push([type, id])
      else
        return false
      end
    end
  end
  #--------------------------------------------------------------------------
  def command_127
    value = operate_value(@parameters[1], @parameters[2], @parameters[3])
    id = RANDID.include?(@parameters[0]) ? create_new_rwdata : @parameters[0]
    $game_party.gain_weapon(id, value)
    return true
  end
end
 
#==============================================================================
# ** Game Party
#==============================================================================
class Game_Party
  attr_accessor :rand_wep_data, :rweps_toolids, :last_rwid
  #--------------------------------------------------------------------------
  alias :wrwg_init :initialize
  def initialize
    wrwg_init
    @rand_wep_data = {}
    @last_rwid     = $data_weapons.size
    @rweps_toolids = {}
  end
  #--------------------------------------------------------------------------
  alias :wrwg_ref :refresh
  def refresh
    wrwg_ref
    if @rand_wep_data.nil?
      @rand_wep_data = {}
      @rweps_toolids = {}
    end
    for id in $data_weapons.size...($data_weapons.size + @rand_wep_data.size)
      wep = @rand_wep_data[id]
      $data_weapons[wep.id] = wep
      for actor in @actors
        $data_classes[actor.class_id].weapon_set.push(wep.id)
      end
    end
  end
end
 
#==============================================================================
# ** Weapon Module
#==============================================================================
module RPG
  class Weapon
    attr_accessor :action_id
    alias :wrwg_init :initialize
    def initialize
      wrwg_init
      @action_id = 0
    end
  end
  #=====================================================================
  module Cache
    #--------------------------------------------------------------------
    def self.icon(filename, hue = 0)
      if filename.include?("WRWG")
        tag, im1, im2, im3, im4 = filename.split(' - ')
        # create bitmap
        bitmap = Bitmap.new(24, 24)
          bit = self.wrwg(im4) rescue nil
        bitmap.blt(0, 0, bit, Rect.new(0, 0, 24, 24), 150) unless bit.nil?
          bit = self.wrwg(im3) rescue nil
        bitmap.blt(0, 0, bit, Rect.new(0, 0, 24, 24), 150) unless bit.nil?
          bit = self.wrwg(im2) rescue nil
        bitmap.blt(0, 0, bit, Rect.new(0, 0, 24, 24))      unless bit.nil?
          bit = self.wrwg(im1) rescue nil
        bitmap.blt(0, 0, bit, Rect.new(0, 0, 24, 24))      unless bit.nil?
        return bitmap
      else
        self.load_bitmap("Graphics/Icons/", filename, hue)
      end
    end
    #--------------------------------------------------------------------
    def self.wrwg(filename, hue = 0)
      self.load_bitmap("Graphics/WRWG/", filename, hue)
    end
  end
end
 
#==============================================================================
# ** Retrive Files
#==============================================================================
module Retrive_Files
  def self.get_files(name)
    files = []
    for file in Dir.entries("Graphics/WRWG/")
      file = file.to_s
      next unless file.include?(".png")
      string = file.clone; string.sub!(/([0-9]+)-/, ""); string.sub!(".png", "")
      files.push(file) if string == "#{name}"
    end
    return files
  end
end

#==============================================================================
# ** XAS Patch
#==============================================================================
if WRW_Generator::XAS_3dot92
  class Scene_Load < Scene_File
  alias :rwxas_patch :read_save_data
  def read_save_data(file)
    rwxas_patch(file)
    $game_party.rweps_toolids.each{|w, t|
     if $game_party.weapon_number(w) <= 0
        $game_party.rweps_toolids.delete(w)
        next
      end
      XAS_SKILL::WEAPON_ID_TOOL[w] = t
    }
  end
  end
end

[You must be registered and logged in to see this link.] < Some starting graphics Smile

Support


Post any suggestions for future updates or any errors you may encounter here.

Known Compatibility Issues
none that i know of.

Restrictions
DO NOT post this on any other forum with out my permission, you are free to edit this in anyway for YOUR use only.
EVENTALIST
Show Signature
EVENTALIST
C.O.R.N.
C.O.R.N.
#2 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

BluE

BluE
C.O.R.N.
C.O.R.N.
C.O.R.N.
profile
Impressive! Border Lands is what I thought when I saw the title. Nice job!
Is there a randomizer for ammo types required for ranged weapons?
C.O.R.N.
Show Signature


Want a real challenge? Try [You must be registered and logged in to see this link.]

If you read this message, please PM me. this is a test. And I'm serious, this isnt just some lousy time wasting paragraph that I wrote just to fill in my signature. It's here for a reason. PM ME.
C.O.R.N.
http://51s-seedy-masteroogway.blogspot.com
EVENTALIST
EVENTALIST
#3 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
no, it just uses the base tools requirements in the XAS SKILL config menu.

You could make multiples of the types but with different links that use different ammo types.

like "Bow", "Bow", "Bow"
but the toll bases are 1, 2, 3
EVENTALIST
Show Signature
EVENTALIST
||||||||||
||||||||||
#4 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

supercow

supercow
||||||||||
||||||||||
profile
i didnt play border lands but its kindda like diablo right? because it looks like for me Wink

tried it and it looks great :p (kindda confused at the pricing range though)
i especialy love using it in shop going in and out looking for the best equip Laughing
now just need to make shop that sell ??? wep/armor kindda like gambling shop Cool

kindda stumped at first with the script:wrwg_gain_weapon(rare_per) Rolling Eyes didnt know have to change the (rare_per) into %number Laughing

randomizer for ammo types? just mask the ammo with armor (make the armor increase atk ,etc) Cool
||||||||||
Show Signature
||||||||||
EVENTALIST
EVENTALIST
#5 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
Yea the config can be a little complex, but i tried to explain everything the best i could.
EVENTALIST
Show Signature
EVENTALIST
ACTIVATED
ACTIVATED
#6 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mchallin

avatar
ACTIVATED
ACTIVATED
ACTIVATED
profile
Hey Mr Wiggles, realllly liking this script!
I seem to be having one problem though...

When I load up a saved game (after totally quiting rpgxp), the tool in my game doesnt activate anymore, and so the weapon doesnt work...

the tool works still if I only quit to the main game menu and reload from there

im using XAS 3.91 by the way
ACTIVATED
Show Signature
ACTIVATED
ACTIVATED
ACTIVATED
#7 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mchallin

avatar
ACTIVATED
ACTIVATED
ACTIVATED
profile
# update: I've just noticed when it occurs;

if a normal weapon is equipped after a random generated weapon, and the game is saved with a normal weapon equipped...then the game is reloaded...the tool for the random gen weapon doesnt seem to work anymore...

hope this makes sense!
ACTIVATED
Show Signature
ACTIVATED
EVENTALIST
EVENTALIST
#8 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
So you have a random weapon, then swap for a normal weapon. save, then on reload swap back to the random weapon and try to use it.

And this causes XAS's tool id link and break the system?
EVENTALIST
Show Signature
EVENTALIST
EVENTALIST
EVENTALIST
#9 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
Yea i see the problem after reading the script.

Code:

XAS_SKILL::WEP_ID_TOOL[wep_data.id] = tool

This line, its editing the value of the module in its state. In order to fix it would need to write over the Game_Player section in XAS where that "WEP_ID_TOOL" is used and replace it with a new means of transportation of tool value with it.

A simple fix would be to simple add a variable "@weapon_tool" into Game_Player" class and have it store the data for the weapons information. But that wouldn't save all the random ones created sowould have to add a hash into "Game_Party" that would hold the weapon id and tool values in. Also would need to have a cleaner when weapons are added/removed so hash wont bloat.
EVENTALIST
Show Signature
EVENTALIST
ACTIVATED
ACTIVATED
#10 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mchallin

avatar
ACTIVATED
ACTIVATED
ACTIVATED
profile
Yeah that's what I meant! Appreciate the reply and taking a look for me.. cheers man

going to have a play and try to figure out how to fix it how you said. I'm still a learner with scripting so might have to bug you for some more info.. if I give up hope lol!

ACTIVATED
Show Signature
ACTIVATED
EVENTALIST
EVENTALIST
#11 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
np, scripting is fun, one of these winters, (i have loads more free time then) i was thinking about a scripting tut, i feel like it can be taught in like 10 steps when explained in a way that makes you think of the syntax as a tool and not a foreign language. :p
EVENTALIST
Show Signature
EVENTALIST
ACTIVATED
ACTIVATED
#12 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mchallin

avatar
ACTIVATED
ACTIVATED
ACTIVATED
profile
i forget winter has passed.. uk weather seems stuck in winter mode! Sad

wish i could understand scripting better, ive played around with xas abs for so long now i guess i thought i'd be able to figure it out...a script tut would be awesome one day!

any chance you show me how to do the fix you posted me?
ACTIVATED
Show Signature
ACTIVATED
EVENTALIST
EVENTALIST
#13 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
ok i re-read the first script again, i think this will work.

crtl+shot+f script data base search for XAS_SKILL::WEP_ID_TOOL

when you find it, add this in its place.
XAS_SKILL::WEP_ID_TOOL["the item.id or what ever"] in XAS you wanna check for item.action_id

Code:

if item.is_a?(RPG::Weapon) and !item.action_id.nil?
XAS_SKILL::WEP_ID_TOOL["origional info"]
else
XAS_SKILL::WEP_ID_TOOL[item.action_id]
end

i noticed that i do infact save the tool id in the item data, but never draw on it for xas. so by checking if the item has ".action_id" will determan wether its a random weapon or not and what data to load. Not tested but sounds solid. :p

[edit] Yea this wasnt "solid" lol :p
EVENTALIST
Show Signature
EVENTALIST
ACTIVATED
ACTIVATED
#14 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mchallin

avatar
ACTIVATED
ACTIVATED
ACTIVATED
profile
Thanks for the feedback dude. Im still struggling to get it to work though, not totally sure i've put that fix in good either! confused

think i'll leave it for now...i need wayyy more scripting knowledge!
ACTIVATED
Show Signature
ACTIVATED
EVENTALIST
EVENTALIST
#15 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
Are you any good with events in RMXP? The commands that tell an event what to do are very much like how scripts work.

like what i typed above is simply a conditional branch.
EVENTALIST
Show Signature
EVENTALIST
ACTIVATED
ACTIVATED
#16 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mchallin

avatar
ACTIVATED
ACTIVATED
ACTIVATED
profile
I'm not too shabby with events, but its more a case of trial and error...the long way of learning with me lol! I've been using:

if item.is_a?(RPG::Weapon) and !XASITEM_ID.nil?
XAS_SKILL::WEAPON_ID_TOOL[wep_data.id] = tool if xas_xr
else
XAS_SKILL::WEAPON_ID_TOOL[XASITEM_ID] = tool if xas_xr
end

i keep getting undefined local variable for 'item'...

ACTIVATED
Show Signature
ACTIVATED
EVENTALIST
EVENTALIST
#17 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
Where did you put it at? and you wont need "if xas_xr" because you already know the script is being used with xas so there is no need.

That conditional branch should be in the Game_Player class edit in XAS. use crtl+shift+f to use the class database search to find XAS_SKILL::WEAPON_ID_TOOL.

You'll get it, once your past the bumps things are much easier. I'd recommend that you check out some advanced event tutorials too.

Now reading error messages and interpreting their meaning helps a lot as well. The one you got that states it cant find a varriable or call method for "item". Meaning where the script call was located "item" was not defined yet.
EVENTALIST
Show Signature
EVENTALIST
ACTIVATED
ACTIVATED
#18 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mchallin

avatar
ACTIVATED
ACTIVATED
ACTIVATED
profile
I've got it in XAS battler 1, the 'Check Equipment ID' section...

ACTIVATED
Show Signature
ACTIVATED
EVENTALIST
EVENTALIST
#19 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
I dont have XAS on my computer :/ havent got back to downloading it after i lost quite a bit of data. (Everything but my ABS and Outbreak beta) There where scripts that where in progress and such but alas time move on.
EVENTALIST
Show Signature
EVENTALIST
ACTIVATED
ACTIVATED
#20 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mchallin

avatar
ACTIVATED
ACTIVATED
ACTIVATED
profile
ah damn..can i send it you or anything?
ooo ABS and Outbreak beta? Smile
ACTIVATED
Show Signature
ACTIVATED
EVENTALIST
EVENTALIST
#21 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
Yea i've been working on my own abs for my game outbreak. Its set up to be "the best" shooting system out there. Outbreak is a game bout zombies with a unique storyline that im keeping under wraps due to spoilers. Progress on the game is steady but slow. Im working on a tile map script currently so that i can have seemless maps. I know there was a script some place that does it already but i like the "sprite tile grid" that i developed over the past few months.

Sure send it, i can take a quick look and see about making a patch. Smile
EVENTALIST
Show Signature
EVENTALIST
EVENTALIST
EVENTALIST
#22 Wiggles Random Weapon Generator (RMXP) Empty Re: Wiggles Random Weapon Generator (RMXP)
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
Sorry its been so long, been very busy. But i have not forgotten about your request and i wrote a small patch that will make it work in xas.
EVENTALIST
Show Signature
EVENTALIST

Sponsored content

profile

View previous topic View next topic Back to top Message [Page 1 of 1]

Similar topics

-

» Getroid (RMXP Starter)

 

Chatbox system disabled
Personal messaging disabled