mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2026-07-22 07:37:00 +00:00
[6.8.2] Safari Zone crash patch
This commit is contained in:
@@ -128,16 +128,7 @@ end
|
||||
|
||||
def select_altering_cave_encounter
|
||||
level_range = 8..16
|
||||
encounter_table =
|
||||
{
|
||||
:MONDAY => [:ZUBAT, :ZUBAT, :ZUBAT, :WOOBAT, :HOUNDOUR],
|
||||
:TUESDAY => [:ZUBAT, :ZUBAT, :ZUBAT, :WOOBAT, :SCRAGGY],
|
||||
:WEDNESDAY => [:ZUBAT, :ZUBAT, :ZUBAT, :WOOBAT, :PINECO],
|
||||
:THURSDAY => [:ZUBAT, :ZUBAT, :ZUBAT, :WOOBAT, :MAREEP],
|
||||
:FRIDAY => [:ZUBAT, :ZUBAT, :ZUBAT, :WOOBAT, :TEDDIURSA],
|
||||
:SATURDAY => [:ZUBAT, :ZUBAT, :ZUBAT, :WOOBAT, :AIPOM],
|
||||
:SUNDAY => [:ZUBAT, :ZUBAT, :ZUBAT, :WOOBAT, :SMEARGLE],
|
||||
}
|
||||
encounter_table = Settings::ALTERING_CAVE_ENCOUNTERS
|
||||
day_of_week = getDayOfTheWeek
|
||||
species = encounter_table[day_of_week].sample
|
||||
level = rand(level_range)
|
||||
|
||||
@@ -102,7 +102,7 @@ class OverworldPokemonEvent < Game_Event
|
||||
|
||||
def roll_for_special_encounters
|
||||
# Mew encounter
|
||||
if rand(10000) < Settings::MEW_OW_ENCOUNTER_CHANCE
|
||||
if rand(15100) < Settings::MEW_OW_ENCOUNTER_CHANCE
|
||||
@species = :MEW
|
||||
@level = 7
|
||||
end
|
||||
|
||||
@@ -51,8 +51,7 @@ end
|
||||
|
||||
def get_overworld_pokemon_group_size(species, max_group_size)
|
||||
catch_rate = GameData::Species.get(species).catch_rate
|
||||
t = (catch_rate - 1) / 254.0
|
||||
t = Math.sqrt(t) # invert to favor smaller groups
|
||||
t = Math.sqrt([(catch_rate - 1) / 254.0, 0].max)
|
||||
|
||||
# Base group size, biased toward smaller numbers
|
||||
base = 1 + (t * (max_group_size - 1) * 0.5) # multiply by 0.5 to shrink toward 1–2
|
||||
|
||||
@@ -3,6 +3,7 @@ class PokemonTemp
|
||||
end
|
||||
module PokeBattle_BattleCommon
|
||||
def checkCatchChallenge(pokeball, battle, caught_pokemon)
|
||||
return unless battle.is_a?(PokeBattle_Battle) #This whole check gets skipped for safari zone - maybe implement it later
|
||||
#Caught in 1 try
|
||||
if battle.balls_thrown == 0 #It's incremented after this method gets checked
|
||||
$Trainer.complete_challenge(:catch_first_try)
|
||||
|
||||
@@ -180,7 +180,7 @@ class BattledTrainer
|
||||
held_item = pokemon.item
|
||||
is_holdable_item = HELD_ITEMS.include?(held_item.id)
|
||||
echoln "#{held_item} #{is_holdable_item}"
|
||||
next if is_holdable_item && rand(100) >= store_held_item_chancex
|
||||
next if is_holdable_item && rand(100) >= store_held_item_chance
|
||||
|
||||
is_evolution_item = held_item.is_evolution_stone?
|
||||
is_battle_item = held_item.has_battle_use?
|
||||
|
||||
@@ -118,21 +118,21 @@ class BattledTrainer
|
||||
|
||||
|
||||
#story / bosses
|
||||
LEADER_Roxanne: [20, 40, 200],
|
||||
LEADER_Brawly: [20, 40, 200],
|
||||
LEADER_Wattson: [20, 40, 200],
|
||||
LEADER_Flannery: [20, 40, 200],
|
||||
LEADER_Norman: [5, 40, 200],
|
||||
LEADER_Winona: [20, 40, 200],
|
||||
LEADER_Tate: [20, 40, 200],
|
||||
LEADER_Liza: [20, 40, 200],
|
||||
LEADER_Wallace: [20, 40, 200],
|
||||
LEADER_Juan: [20, 40, 200],
|
||||
ELITEFOUR_Sidney: [30, 60, 200],
|
||||
ELITEFOUR_Phoebe: [30, 60, 200],
|
||||
ELITEFOUR_Glacia: [30, 60, 200],
|
||||
ELITEFOUR_Drake: [30, 60, 200],
|
||||
CHAMPION_Steven: [50, 70, 200],
|
||||
LEADER_Roxanne: [20, 40, 80],
|
||||
LEADER_Brawly: [20, 40, 80],
|
||||
LEADER_Wattson: [20, 40, 80],
|
||||
LEADER_Flannery: [20, 40, 80],
|
||||
LEADER_Norman: [5, 40, 80],
|
||||
LEADER_Winona: [20, 40, 80],
|
||||
LEADER_Tate: [20, 40, 80],
|
||||
LEADER_Liza: [20, 40, 80],
|
||||
LEADER_Wallace: [20, 40, 80],
|
||||
LEADER_Juan: [20, 40, 80],
|
||||
ELITEFOUR_Sidney: [30, 60, 90],
|
||||
ELITEFOUR_Phoebe: [30, 60, 90],
|
||||
ELITEFOUR_Glacia: [30, 60, 90],
|
||||
ELITEFOUR_Drake: [30, 60, 90],
|
||||
CHAMPION_Steven: [50, 70, 90],
|
||||
TEAM_AQUA_BOSS: [60, 200, 200],
|
||||
TEAM_MAGMA_BOSS: [60, 200, 200]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user