Chaos Project

RPG Maker => RPG Maker Scripts => Script Troubleshooting => Topic started by: Xim on January 01, 2015, 12:03:16 pm

Title: Blizz ABS Keeps crashing with Intelligent Passability System on
Post by: Xim on January 01, 2015, 12:03:16 pm
I keep getting a Script error that says this:

Script 'Blizz-ABS 2.84 Part 2' line 5627: EOFError occurred

End of files reached


This happens after I do a few updates to Part 1 in the editor. I've had to remake Part 1 several times because of this and its chair-throwingly frustrating.

Here is my most recent Part 1 of the script.
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# Blizz-ABS by Blizzard and winkio
# Version: 2.84
# Auto-Generated Configuration Script
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
#
#                                    PART 1
#
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# Copy-paste this auto-generated script into the script slot instead of Part 1
# of the default Blizz-ABS script.
#
# If you find any bugs, please report them here:
# http://forum.chaos-project.com
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=

#==============================================================================
# BlizzABS
#------------------------------------------------------------------------------
#  This is the master control, configuration, utility and battle process
#  module for Blizz-ABS.
#==============================================================================

module BlizzABS
 
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 # BlizzABS::Control
 #----------------------------------------------------------------------------
 #  This module provides in-game control configurations.
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 
 module Control
   
   CUSTOM_CONTROLS = true
   DISABLE_DEFAULT = true
   UP = "Key['Arrow Up']"
   LEFT = "Key['Arrow Left']"
   DOWN = "Key['Arrow Down']"
   RIGHT = "Key['Arrow Right']"
   PREVPAGE = "Key[',']"
   NEXTPAGE = "Key['.']"
   CONFIRM = "Key['C'], Key['Enter']"
   CANCEL = "Key['X'], Key['Esc']"
   ATTACK = "Key['S']"
   DEFEND = "Key['D']"
   SKILL = "Key['F'], Key['A']"
   ITEM = "Key['W']"
   SELECT = "Key['Q']"
   HUD = "Key['H']"
   HOTKEY = "Key['N']"
   MINIMAP = "Key['M']"
   RUN = "Key['R']"
   SNEAK = "Key['Shift']"
   JUMP = "Key['Space']"
   TURN = "Key['Ctrl']"
   
 end
 
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 # BlizzABS::Config
 #----------------------------------------------------------------------------
 #  This module provides Blizz-ABS configurations.
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 
 module Config
   
   # 2.1. # Basic Configuration
   MAX_PARTY = 4
   MAX_PETS = 4
   MAX_MONSTERS = 4
   MAX_SUMMONS = 4
   CATERPILLAR = true
   CORPSES = false
   EMPTY_CORPSES = false
   RECOVER_ON_LEVEL_UP = true
   FULL_DEFEND = true
   DIRECT_HOTKEYS = false
   AUTO_GAMEOVER = true
   DROP_AMMO = true
   MENU_COLOR_TINT = 0
   DISABLE_ABS_MODE = 3
   ITEM_DROP = true
   ITEM_PICKUP_SOUND_FILE = RPG::AudioFile.new('005-System05', 80, 100)
   GOLD_DROP = 'coins'
   GOLD_PICKUP_SOUND_FILE = RPG::AudioFile.new('006-System06', 80, 100)
   DROP_TIME = 30
   EVENT_LOCK = 40
   ANIMATED_IDS = [15, 16]
   
   # 2.2. # Movement Configuration
   PIXEL_MOVEMENT_RATE = 0
   REPAIR_MOVEMENT = true
   EIGHT_WAY_MOVEMENT = false
   SNEAK_ON_CHARGE = true
   NORMAL_SPEED = 4
   RUN_SPEED = 5
   SNEAK_SPEED = 3
   JUMPING = 2
   NO_JUMP_TAGS = [1]
   ALLOW_JUMP_TAGS = []
   NO_FLOOR_TAGS = [3, 6, 7]
   
   # 2.3. # Lag Prevention Configuration
   INTELLIGENT_PASSABILITY = true
   ABSEAL_AUTOKILL = true
   ABSEAL_FACTOR = 1
   DISABLE_ANTILAG_IDS = []
   
   # 2.4. # Game Info Configuration
   HUD_ENABLED = true
   HUD_POSITION = 0
   HUD_TYPE = 0
   MINIMAP = true
   HOTKEYS = true
   ENEMY_HEALTH_BARS = 0
   ENEMY_HEALTH_BARS_MATCH_WIDTH = false
   BOUNCING_DAMAGE = true
   WEAPON_DATA_MODE = [2, 2]
   SKILL_DATA_MODE = [2, 2, 2]
   ITEM_DATA_MODE = [0, 0, 0]
   
   # 2.5. # Enemy Behavior Configuration
   AI_DEFAULT_ATTRIBUTES = '00000000'
   AI_DELAY_TIME = 40
   VIEW_RANGE = 5
   HEARING_RANGE_RATIO = 40
   RESPAWN_TIME = 0
   WALL_TAGS = [1]
   NO_ENEMY_TAGS = []
   EXP_MODE = 0
   KNOCKBACK_MODE = 2
   
   # 2.6. # Animation Configuration
   ANIMATIONS = true
   SMALL_ANIMATIONS = true
   DISPLAY_LEVEL_UP = true
   LEVEL_UP_ANIMATION_ID = 1
   FLEE_ANIMATION_ID = 98
   CALL_HELP_ANIMATION_ID = 97
   DEFEND_ANIMATION_ID = 137
   UNSUMMON_ANIMATION_ID = 0
   
   # 2.7. # Sprite Control Configuration
   A_ACTION_SPRITES = false
   A_WEAPON_SPRITES = false
   A_DEFEND_SPRITES = false
   A_SKILL_SPRITES = false
   A_ITEM_SPRITES = false
   A_IDLE_SPRITES = false
   A_CHARGE_SPRITES = false
   A_CHARGE_WEAPON_SPRITES = false
   A_CHARGE_SKILL_SPRITES = false
   A_CHARGE_ITEM_SPRITES = false
   E_ACTION_SPRITES = false
   E_SKILL_SPRITES = false
   E_IDLE_SPRITES = false
   E_CHARGE_SPRITES = false
   E_CHARGE_SKILL_SPRITES = false
   RUNNING_SPRITES = false
   SNEAKING_SPRITES = false
   JUMPING_SPRITES = false
   
 end
 
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 # BlizzABS::Alignments
 #----------------------------------------------------------------------------
 #  This module provides alignment configurations.
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 
 module Alignments
   
   GROUPS = [1, 2, 3, 4, 5, 6, 7, 8]
   LIFELESS_GROUPS = [4]
   LINKED_GROUPS = [5, 6]
   PERMANENT_GROUPS = [5, 6]
   ACTOR_GROUP = 1
   ENEMY_GROUP = 2
   
   def self.enemies(id)
     case id
     when 1 then return [2, 7]
     when 2 then return [1, 3, 5, 6]
     when 5 then return [2, 7]
     when 7 then return [1, 2, 3, 5, 6]
     when 8 then return [2, 7]
     end
     return []
   end
   
   def self.allies(id)
     case id
     when 1 then return [1]
     when 2 then return [2]
     when 5 then return [5, 6]
     when 6 then return [5, 6]
     when 7 then return [7]
     when 8 then return [1, 5, 6]
     end
     return []
   end
   
   def self.neutral(id)
     return []
   end
   
 end
 
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 # BlizzABS::Weapons
 #----------------------------------------------------------------------------
 #  This module provides weapon configurations.
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 
 module Weapons
   
   def self.type(id)
     case id
     when 5 then return SPEAR # Hunting Spear
     when 6 then return SPEAR # Bronze Spear
     when 7 then return SPEAR # Battle Spear
     when 8 then return SPEAR # Trident
     when 17 then return BOW # Longbow
     when 18 then return BOW # Fire Arrows
     when 19 then return BOW # Poison Arrows
     when 20 then return BOW # Silver Arrows
     when 21 then return BOW # Boxing Glove Arrows
     when 22 then return BOW # Shortbow
     when 23 then return BOW # Crossbow
     when 24 then return BOW # Boomerang
     when 29 then return SPEAR # Old Staff
     when 30 then return SPEAR # Magic Staff
     when 31 then return SPEAR # Power Staff
     when 38 then return FLAIL # Sledge Hammar
     when 39 then return FLAIL # Flail Mace
     when 40 then return BOW # Staff of Thunder
     when 44 then return SPEAR # Snibee Spear
     when 45 then return BOW_ARROW # Ancient Gun
     when 48 then return SHURIKEN # Monk Star
     end
     return SWORD
   end
   
   def self.combo(id)
     return 0
   end
   
   def self.projectile_speed(id)
     case id
     when 22 then return 6 # Shortbow
     when 23 then return 6 # Crossbow
     when 24 then return 4 # Boomerang
     when 40 then return 6 # Staff of Thunder
     when 48 then return 4 # Monk Star
     end
     return 5
   end
   
   def self.knockback(id)
     case id
     when 5 then return 0 # Hunting Spear
     when 6 then return 0 # Bronze Spear
     when 7 then return 0 # Battle Spear
     when 8 then return 0 # Trident
     when 13 then return 0 # Knife
     when 14 then return 0 # Poison Knife
     when 15 then return 0 # Tribal Knife
     when 16 then return 0 # Throwing Knife
     when 27 then return 0 # Speedy Knuckle
     when 28 then return 2 # Heavy Knuckle
     when 38 then return 3 # Sledge Hammar
     when 39 then return 3 # Flail Mace
     when 40 then return 0 # Staff of Thunder
     when 48 then return 0 # Monk Star
     end
     return 1
   end
   
   def self.range(id)
     case id
     when 5 then return 2.5 # Hunting Spear
     when 6 then return 2.5 # Bronze Spear
     when 7 then return 2.5 # Battle Spear
     when 8 then return 2.5 # Trident
     when 17 then return 6.5 # Longbow
     when 18 then return 6.5 # Fire Arrows
     when 19 then return 6.5 # Poison Arrows
     when 20 then return 6.5 # Silver Arrows
     when 21 then return 6.5 # Boxing Glove Arrows
     when 22 then return 4.5 # Shortbow
     when 23 then return 12.5 # Crossbow
     when 24 then return 4.5 # Boomerang
     when 38 then return 2.5 # Sledge Hammar
     when 39 then return 2.5 # Flail Mace
     when 40 then return 4.5 # Staff of Thunder
     when 48 then return 7.5 # Monk Star
     end
     return 1.5
   end
   
   def self.penalty(id)
     case id
     when 9 then return 24 # Pickaxe
     when 10 then return 24 # Wood Axe
     when 11 then return 24 # Battle Axe
     when 12 then return 24 # Pick Hammar
     when 13 then return 8 # Knife
     when 14 then return 8 # Poison Knife
     when 15 then return 8 # Tribal Knife
     when 16 then return 8 # Throwing Knife
     when 23 then return 34 # Crossbow
     when 27 then return 8 # Speedy Knuckle
     when 28 then return 28 # Heavy Knuckle
     when 38 then return 25 # Sledge Hammar
     when 39 then return 25 # Flail Mace
     end
     return 16
   end
   
   def self.frames(id)
     return [3, 3, 3, 3]
   end
   
   def self.charge(id)
     case id
     when 23 then return [CHARGEFreeze, 24] # Crossbow
     end
     return [CHARGENone, 0]
   end
   
   def self.charge_frames(id)
     return [3, 3, 3, 3]
   end
   
   def self.consume(id)
     case id
     when 45 then return [82] # Ancient Gun
     end
     return []
   end
   
 end
 
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 # BlizzABS::Skills
 #----------------------------------------------------------------------------
 #  This module provides skill configurations.
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 
 module Skills
   
   def self.type(id)
     case id
     when 7 then return [SHOOT, EXPLNone] # Fire Ball
     when 8 then return [SHOOT, EXPLNone] # Flame Thrower
     when 9 then return [DIRECT, EXPLTarget, 1.0, 27] # Wall of Flame
     when 10 then return [SHOOT, EXPLNone] # Ice Shard
     when 11 then return [BEAM, EXPLNone] # Freeze Beam
     when 14 then return [DIRECT, EXPLTarget, 1.0, 33] # Lightning Bolt
     when 15 then return [DIRECT, EXPLTarget, 1.0, 33] # Thunder Blast
     when 19 then return [HOMING, EXPLNone] # Boulder
     when 25 then return [HOMING, EXPLNone] # Light Ball
     when 26 then return [BEAM, EXPLNone] # Light Beam
     when 28 then return [HOMING, EXPLNone] # Shadow Ball
     when 29 then return [HOMING, EXPLNone] # Lost Soul
     when 57 then return [SHOOT, EXPLNone] # Heavy Strike
     when 58 then return [SHOOT, EXPLNone] # Stunning Strike
     when 59 then return [SHOOT, EXPLNone] # Dragon Slayer
     when 60 then return [SHOOT, EXPLNone] # Blade Flourish
     when 61 then return [HOMING, EXPLNone] # Precision Jab
     when 62 then return [SHOOT, EXPLNone] # Power Kick
     when 63 then return [SHOOT, EXPLNone] # Frozen Strike
     when 64 then return [HOMING, EXPLNone] # Tiger Punch
     when 65 then return [SHOOT, EXPLNone] # Wild Pounding
     when 66 then return [SHOOT, EXPLNone] # Silver Knuckle
     when 67 then return [SHOOT, EXPLNone] # Deadly Smash
     when 70 then return [SHOOT, EXPLNone] # Brutal Chop
     when 73 then return [SHOOT, EXPLNone] # Leg Shot
     when 74 then return [SHOOT, EXPLNone] # Arm Shot
     when 75 then return [SHOOT, EXPLNone] # Head Shot
     when 76 then return [SHOOT, EXPLNone] # Eye Shot
     when 77 then return [SHOOT, EXPLNone] # Kill Shot
     when 78 then return [SHOOT, EXPLNone] # Double Arrow
     when 79 then return [SHOOT, EXPLNone] # Triple Arrow
     when 80 then return [SHOOT, EXPLNone] # Arrow Storm
     when 81 then return [SHOOT, EXPLNone] # Frenzy
     when 82 then return [SUMMON, EXPLNone] # Snibee Call
     when 83 then return [SUMMON, EXPLNone] # Hunting Raven
     when 85 then return [SHOOT, EXPLNone] # Lightning Stab
     when 86 then return [TRAP, EXPLNone] # Animal Trap
     when 91 then return [SHOOT, EXPLNone] # Rock Throw
     when 92 then return [SHOOT, EXPLNone] # Head Bash
     when 109 then return [SHOOT, EXPLTarget, 1.0, 27] # Pyro Beam
     when 118 then return [SUMMON, EXPLNone] # Summon Undead
     end
     return [DIRECT, EXPLNone]
   end
   
   def self.combo(id)
     return 0
   end
   
   def self.projectile_speed(id)
     case id
     when 57 then return 6 # Heavy Strike
     when 58 then return 6 # Stunning Strike
     when 59 then return 6 # Dragon Slayer
     when 60 then return 6 # Blade Flourish
     when 61 then return 6 # Precision Jab
     when 62 then return 6 # Power Kick
     when 63 then return 6 # Frozen Strike
     when 64 then return 6 # Tiger Punch
     when 65 then return 6 # Wild Pounding
     when 66 then return 6 # Silver Knuckle
     when 67 then return 6 # Deadly Smash
     when 78 then return 6 # Double Arrow
     when 79 then return 6 # Triple Arrow
     when 80 then return 6 # Arrow Storm
     when 91 then return 4 # Rock Throw
     when 109 then return 6 # Pyro Beam
     end
     return 5
   end
   
   def self.knockback(id)
     case id
     when 1 then return 0 # First Aid
     when 2 then return 0 # Magic Heal
     when 3 then return 0 # Mass Heal
     when 4 then return 0 # Remedy
     when 5 then return 0 # Greater Remedy
     when 6 then return 0 # Raise
     when 13 then return 0 # Electroshock
     when 14 then return 0 # Lightning Bolt
     when 15 then return 0 # Thunder Blast
     when 17 then return 2 # Geyser
     when 18 then return 5 # Tidal Wave
     when 19 then return 2 # Boulder
     when 21 then return 5 # Earthquake
     when 22 then return 3 # Gust
     when 24 then return 5 # Hurricane
     when 33 then return 0 # Venom
     when 34 then return 0 # Venomous Gas
     when 35 then return 0 # Blind
     when 36 then return 0 # Dazzling Cloud
     when 37 then return 0 # Mute
     when 38 then return 0 # Mute Gas
     when 41 then return 0 # Sleep
     when 42 then return 0 # Sleep Dust
     when 43 then return 0 # Paralyze
     when 44 then return 0 # Paralyze Wave
     when 45 then return 0 # Weaken
     when 46 then return 0 # Mass Weaken
     when 49 then return 0 # Delay
     when 50 then return 0 # Mass Delay
     when 51 then return 0 # Feeble
     when 52 then return 0 # Mass Feeble
     when 53 then return 0 # Sharp
     when 54 then return 0 # Barrier
     when 55 then return 0 # Resist
     when 71 then return 2 # Winding Punch
     when 72 then return 4 # Tornado Kick
     when 82 then return 0 # Snibee Call
     when 83 then return 0 # Hunting Raven
     when 86 then return 0 # Animal Trap
     when 97 then return 0 # Snibee Heal Call
     when 98 then return 0 # Buldge
     when 118 then return 0 # Summon Undead
     end
     return 1
   end
   
   def self.range(id)
     case id
     when 2 then return 5.5 # Magic Heal
     when 3 then return 10.0 # Mass Heal
     when 4 then return 5.5 # Remedy
     when 5 then return 4.0 # Greater Remedy
     when 6 then return 5.5 # Raise
     when 7 then return 5.5 # Fire Ball
     when 8 then return 5.5 # Flame Thrower
     when 9 then return 8.0 # Wall of Flame
     when 10 then return 5.5 # Ice Shard
     when 11 then return 5.5 # Freeze Beam
     when 12 then return 8.0 # Blizzard
     when 13 then return 5.5 # Electroshock
     when 14 then return 10.0 # Lightning Bolt
     when 15 then return 8.0 # Thunder Blast
     when 16 then return 5.5 # Hard Rain
     when 17 then return 8.0 # Geyser
     when 18 then return 8.0 # Tidal Wave
     when 19 then return 5.5 # Boulder
     when 20 then return 8.0 # Sandstorm
     when 21 then return 8.0 # Earthquake
     when 22 then return 5.5 # Gust
     when 23 then return 10.0 # Tornado
     when 24 then return 8.0 # Hurricane
     when 25 then return 5.5 # Light Ball
     when 26 then return 5.5 # Light Beam
     when 27 then return 8.0 # Beam of Judgment
     when 28 then return 5.5 # Shadow Ball
     when 29 then return 5.5 # Lost Soul
     when 30 then return 8.5 # Void
     when 31 then return 5.5 # Fear
     when 32 then return 5.5 # Frightning Roar
     when 33 then return 5.5 # Venom
     when 34 then return 5.5 # Venomous Gas
     when 35 then return 5.5 # Blind
     when 36 then return 5.5 # Dazzling Cloud
     when 37 then return 5.5 # Mute
     when 38 then return 5.5 # Mute Gas
     when 39 then return 5.5 # Confuse
     when 40 then return 5.5 # Confuse Wave
     when 41 then return 5.5 # Sleep
     when 42 then return 5.5 # Sleep Dust
     when 43 then return 5.5 # Paralyze
     when 44 then return 5.5 # Paralyze Wave
     when 45 then return 5.5 # Weaken
     when 46 then return 5.5 # Mass Weaken
     when 47 then return 5.5 # Clumsy
     when 48 then return 5.5 # Mass Clumsy
     when 49 then return 5.5 # Delay
     when 50 then return 5.5 # Mass Delay
     when 51 then return 5.5 # Feeble
     when 52 then return 5.5 # Mass Feeble
     when 53 then return 5.5 # Sharp
     when 54 then return 5.5 # Barrier
     when 55 then return 5.5 # Resist
     when 56 then return 5.5 # Blink
     when 57 then return 2.5 # Heavy Strike
     when 58 then return 2.5 # Stunning Strike
     when 59 then return 2.5 # Dragon Slayer
     when 60 then return 2.5 # Blade Flourish
     when 62 then return 2.5 # Power Kick
     when 63 then return 2.5 # Frozen Strike
     when 64 then return 2.5 # Tiger Punch
     when 70 then return 2.5 # Brutal Chop
     when 72 then return 2.5 # Tornado Kick
     when 73 then return 7.0 # Leg Shot
     when 74 then return 7.0 # Arm Shot
     when 75 then return 7.0 # Head Shot
     when 76 then return 7.0 # Eye Shot
     when 77 then return 7.0 # Kill Shot
     when 78 then return 6.5 # Double Arrow
     when 79 then return 6.5 # Triple Arrow
     when 80 then return 6.5 # Arrow Storm
     when 87 then return 5.5 # Vine Wrap
     when 88 then return 5.5 # Poison Pineneedle
     when 89 then return 5.5 # Solar Blast
     when 90 then return 5.5 # Pine Bomb
     when 91 then return 5.5 # Rock Throw
     when 93 then return 10.0 # Snibee Attack Call
     when 94 then return 10.0 # Snibee Poison Call
     when 95 then return 10.0 # Fribee Attack Call
     when 96 then return 10.0 # Fribee Napalm Call
     when 100 then return 5.5 # Snowball Blast
     when 101 then return 5.5 # Combust
     when 102 then return 10.0 # Dark Lightning
     when 103 then return 7.0 # Dark Spores
     when 104 then return 7.0 # Heinium Bullet
     when 105 then return 7.0 # Burst
     when 106 then return 7.0 # Radiate
     when 108 then return 10.0 # Vortext
     when 109 then return 10.0 # Pyro Beam
     when 110 then return 10.0 # Void
     when 111 then return 7.0 # Snowy Mist
     end
     return 1.0
   end
   
   def self.penalty(id)
     return 24
   end
   
   def self.frames(id)
     return [3, 3, 3, 3]
   end
   
   def self.charge(id)
     return [CHARGENone, 0]
   end
   
   def self.charge_frames(id)
     return [3, 3, 3, 3]
   end
   
   def self.trap(id)
     case id
     when 86 then return 60 # Animal Trap
     end
     return 10
   end
   
   def self.summon(id)
     case id
     when 82 then return [SUMMONPet, 15, 10] # Snibee Call : Snibee
     when 83 then return [SUMMONPet, 16, 10] # Hunting Raven : Raven
     when 118 then return [SUMMONPet, 14, 10] # Summon Undead : Undead
     end
     return [SUMMONPet, 0, 0]
   end
   
 end
 
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 # BlizzABS::Items
 #----------------------------------------------------------------------------
 #  This module provides item configurations.
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 
 module Items
   
   def self.type(id)
     return [DIRECT, EXPLNone]
   end
   
   def self.combo(id)
     return 0
   end
   
   def self.projectile_speed(id)
     return 5
   end
   
   def self.knockback(id)
     return 1
   end
   
   def self.range(id)
     return 5.5
   end
   
   def self.penalty(id)
     return 24
   end
   
   def self.frames(id)
     return [3, 3, 3, 3]
   end
   
   def self.charge(id)
     return [CHARGENone, 0]
   end
   
   def self.charge_frames(id)
     return [3, 3, 3, 3]
   end
   
   def self.trap(id)
     return 10
   end
   
   def self.summon(id)
     return [SUMMONPet, 0, 0]
   end
   
   def self.drop_sprite(id)
     return false
   end
   
 end
 
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 # BlizzABS::Enemies
 #----------------------------------------------------------------------------
 #  This module provides enemy configurations.
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 
 module Enemies
   
   def self.type(id)
     case id
     when 1 then return SPEAR # Lesser Bither
     when 2 then return SPEAR # Bither
     when 4 then return SPEAR # Snibee
     when 12 then return BOW # Blood Ghost
     when 15 then return BOW # Treemage
     when 17 then return BOW # Squngus
     when 18 then return FLAIL # Squngus Tentacle
     when 19 then return BOW # Deccapied
     when 21 then return SPEAR # Snibee Larva
     when 22 then return BOOMERANG # Snibee Queen
     when 27 then return SPEAR # Vermon
     when 28 then return SPEAR # Polar Bither
     when 31 then return SPEAR # Mountain Savage
     when 36 then return BOW # Bandit Archer
     when 38 then return SPEAR # Sand Bither
     when 42 then return SPEAR # Tribal Savage
     when 43 then return BOW # Fwuzo Rider
     when 58 then return BOW # Frost
     when 60 then return BOW # The Ice King
     when 65 then return SPEAR # Spike
     when 69 then return BOW # Sinbad
     when 72 then return BOW # Archer
     when 74 then return BOW # Le Cannon
     end
     return SWORD
   end
   
   def self.combo(id)
     return 0
   end
   
   def self.projectile_speed(id)
     case id
     when 43 then return 4 # Fwuzo Rider
     end
     return 5
   end
   
   def self.knockback(id)
     case id
     when 8 then return 2 # Greater Bither
     when 13 then return 2 # Bither Queen
     when 22 then return 0 # Snibee Queen
     when 43 then return 2 # Fwuzo Rider
     when 58 then return 0 # Frost
     when 66 then return 0 # Spike
     when 68 then return 3 # Riff
     when 73 then return 2 # Boswine
     end
     return 1
   end
   
   def self.range(id)
     case id
     when 12 then return 5.0 # Blood Ghost
     when 15 then return 5.5 # Treemage
     when 17 then return 10.0 # Squngus
     when 18 then return 3.0 # Squngus Tentacle
     when 19 then return 5.5 # Deccapied
     when 22 then return 5.5 # Snibee Queen
     when 31 then return 2.5 # Mountain Savage
     when 36 then return 6.0 # Bandit Archer
     when 42 then return 2.5 # Tribal Savage
     when 43 then return 4.5 # Fwuzo Rider
     when 58 then return 5.5 # Frost
     when 66 then return 2.5 # Spike
     when 68 then return 3.0 # Riff
     when 72 then return 6.0 # Archer
     when 74 then return 10.0 # Le Cannon
     end
     return 1.5
   end
   
   def self.penalty(id)
     case id
     when 60 then return 10 # The Ice King
     end
     return 16
   end
   
   def self.frames(id)
     return [3, 3, 3, 3]
   end
   
   def self.charge(id)
     return [CHARGENone, 0]
   end
   
   def self.charge_frames(id)
     return [3, 3, 3, 3]
   end
   
   def self.delay(id)
     case id
     when 22 then return 28 # Snibee Queen
     when 60 then return 28 # The Ice King
     end
     return nil
   end
   
   def self.perception(id)
     case id
     when 16 then return [2, 100] # Snibee Drone
     when 22 then return [10, 100] # Snibee Queen
     when 26 then return [2, 90] # Vembat
     when 27 then return [2, 90] # Vermon
     when 60 then return [8, 60] # The Ice King
     end
     return nil
   end
   
   def self.ai(id)
     case id
     when 4 then return '00000100' # Snibee
     when 5 then return '01000000' # Mugger
     when 8 then return '00000001' # Greater Bither
     when 9 then return '00000001' # Fwuzo
     when 10 then return '01000000' # Mugger
     when 13 then return '00000001' # Bither Queen
     when 14 then return '01000000' # Treeman
     when 15 then return '01000000' # Treemage
     when 16 then return '00000010' # Snibee Drone
     when 17 then return '01001010' # Squngus
     when 21 then return '10000100' # Snibee Larva
     when 22 then return '00101110' # Snibee Queen
     when 23 then return '01000000' # Necro Warrior
     when 30 then return '01000000' # Ice Warrior
     when 31 then return '01000000' # Mountain Savage
     when 32 then return '01001000' # Dire Penguin
     when 33 then return '01000001' # Sasquatch
     when 34 then return '01010000' # Snowmancer
     when 35 then return '01000000' # Bandit Raider
     when 36 then return '01000000' # Bandit Archer
     when 39 then return '01000000' # Oasis Knight
     when 40 then return '01000000' # Trained Bither
     when 41 then return '00000001' # Tropical Fwuzo
     when 42 then return '01000000' # Tribal Savage
     when 43 then return '01000000' # Fwuzo Rider
     when 58 then return '01001000' # Frost
     when 59 then return '01000000' # Bite
     when 60 then return '01001000' # The Ice King
     when 61 then return '01000001' # Abdul
     when 62 then return '01101110' # Prince Oasis
     when 63 then return '01101010' # Dark
     when 64 then return '01101010' # Dark
     when 65 then return '01000001' # Spike
     when 66 then return '01000001' # Spike
     when 67 then return '01000001' # Riff
     when 68 then return '01000001' # Riff
     when 69 then return '01000000' # Sinbad
     when 70 then return '01111010' # Froster
     when 71 then return '01110000' # Guard
     when 72 then return '01110000' # Archer
     when 73 then return '10100001' # Boswine
     when 75 then return '01001000' # Pierre
     when 76 then return '01000000' # Jacques
     when 77 then return '01000000' # Phillip
     when 78 then return '01000000' # Tibble
     when 79 then return '01000000' # Body Builder
     when 81 then return '01110000' # Patrol Guard
     when 82 then return '01000000' # Hoodlum
     when 83 then return '01000000' # Murderer
     when 84 then return '01000000' # Viking
     when 85 then return '01000000' # Bitie
     when 87 then return '01001000' # The Heretic
     when 88 then return '10000000' # Bither Infant
     when 89 then return '10000000' # Tree
     when 90 then return '10000000' # Rare Tree
     when 91 then return '10000000' # Rock
     when 92 then return '10000000' # Punching Bag
     when 95 then return '10000000' # Rock
     when 96 then return '10000000' # Rock
     end
     return nil
   end
   
   def self.destruct(id)
     case id
     when 60 then return 32 # The Ice King : Ice 3
     end
     return 0
   end
   
   def self.respawn(id)
     return 0
   end
   
 end
 
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 # BlizzABS::Combos
 #----------------------------------------------------------------------------
 #  This module provides combo configurations.
 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
 
 module Combos
   
   def self.total_actions(com)
     return 1
   end
   
   def self.commands(com)
     return []
   end
   
   def self.anim_data(com)
     return [0, [3, 3, 3, 3], '', false]
   end
   
 end
 
end


If anyone can explain why this keeps happening so I can avoid having to re-do my entire configuration every time I'd love them forever, or at least give them a hardy internet handshake of some sort. :P

EDIT: I think it has something to do with the "Intelligent Passability System" because I disabled it and it started working again.