• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Our weekly protagonist poll is now up! Vote for your favorite Legends: Z-A protagonist in the poll by clicking here.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Vs Seeker?

Sam24

Sam24
  • 98
    Posts
    12
    Years
    Ok so I'm one of those people who found the Vs. Seeker in Fire Red/Leaf Green very helpful because it helped me a lot when I needed to Level Up. In Ruby/Sapphire they changed this idea, so now that only certain trainers will battle you if you have their phone numbers. I personally found this really annoying because trainers will only battle you when their "ready", so I had to rely less on trainers and more on battling Pokémon which I found a more longer and tedious experience. Here's my question. Would it be possible to do any of the following:
    Create a Vs. Seeker (either PokéGear function or item) that functions in the same or in any similar way to Fire Red/Leaf Green
    Or make it make it 10 times easier for registered trainers to agree to battle you.


    Like always any help is appreciated. :)
     
    I don't know how the Vs Seeker works, which is one of the main reasons I haven't attempted to invent it. I certainly never used it. What I do know is that it involves showing the trainers dancing around and waving their arms, which involves extra graphics which is generally a pain to deal with.

    Phone-registered trainers have a cooldown period of 2000+rand(2000) quarters of a second, i.e. between 8m20s and 16m40s, before they can be rebattled. You can cut down on this time period. You can also disable them phoning you if you like, and rename the phone to the Match Call. The phone app already shows which trainers are ready for rebattling.

    A trainer doesn't have to call you before they can be rebattled. The call is just an indicator that they're ready.
     
    Where in the scripts would I go about changing the time period? (I'm fairly bad at the using the script editor)
     
    Found it! Thanks. But can ask one more question out of curiosity. How would I disable people from calling me?
     
    Okay So at line 218 I think it was, I deleted the following


    def pbRandomPhoneItem(array)
    ret=array[rand(array.length)]
    ret="" if !ret
    return pbGetMessageFromHash(MessageTypes::PhoneMessages,ret)
    end
    def pbPhoneGenerateCall(phonenum)
    call=""
    phoneData=pbLoadPhoneData
    # Choose random greeting depending on time of day
    call=pbRandomPhoneItem(phoneData.greetings)
    time=pbGetTimeNow
    if PBDayNight.isMorning?(time)
    modcall=pbRandomPhoneItem(phoneData.greetingsMorning)
    call=modcall if modcall && modcall!=""
    elsif PBDayNight.isEvening?(time)
    modcall=pbRandomPhoneItem(phoneData.greetingsEvening)
    call=modcall if modcall && modcall!=""
    end
    call+="\\m"
    if phonenum[4]==2 || (rand(2)==0 && phonenum[4]==3)
    # If "can battle" is set, make ready to battle
    call+=pbRandomPhoneItem(phoneData.battleRequests)
    pbSetReadyToBattle(phonenum)
    phonenum[4]=3
    elsif rand(4)<3
    # Choose random body
    call+=pbRandomPhoneItem(phoneData.bodies1)
    call+="\\m"
    call+=pbRandomPhoneItem(phoneData.bodies2)
    else
    # Choose random generic
    call+=pbRandomPhoneItem(phoneData.generics)
    end
    return call
    end
    def pbRandomEncounterSpecies(enctype)
    return 0 if !enctype
    len=[enctype.length,4].min
    return enctype[rand(len)][0]
    end
    def pbEncounterSpecies(phonenum)
    return "" if !phonenum[6] || phonenum[6]==0
    begin
    data=load_data("Data/encounters.dat")
    return "" if !data
    enctypes=data[phonenum[6]][1]
    rescue
    return ""
    end
    species=pbRandomEncounterSpecies(enctypes[0]) # Land
    species=pbRandomEncounterSpecies(enctypes[1]) if species==0 # Cave
    species=pbRandomEncounterSpecies(enctypes[9]) if species==0 # LandMorning
    species=pbRandomEncounterSpecies(enctypes[10]) if species==0 # LandDay
    species=pbRandomEncounterSpecies(enctypes[11]) if species==0 # LandNight
    species=pbRandomEncounterSpecies(enctypes[2]) if species==0 # Water
    return "" if species==0
    return PBSpecies.getName(species)
    end


    The game still runs fine, but is that all the text associated with trainers randomly phoning me. If not then tell me what other lines I need to delete. (Keep in mind this script was unmodified before I posted this.
     
    I swear that's not what I said. Here's what I was referring to:

    Code:
         if $PokemonGlobal.phoneTime%10==0
           for num in $PokemonGlobal.phoneNumbers
             if num[0] && num.length==8 # if visible and a trainer
               if num[4]==0 # needs resetting
                 num[3]=[COLOR=Green]2000+rand(2000)[/COLOR] # set time to can-battle
                 num[4]=1
               end
               num[3]-=1
               if num[3]<=0 && num[4]==1
                 num[4]=2 # set ready-to-battle flag
                 pbSetReadyToBattle(num)
               end
             end
           end
         end
         [COLOR=Red]if $PokemonGlobal.phoneTime<=0
           # find all trainer phone numbers
           phonenum=pbRandomPhoneTrainer
           if phonenum
             call=pbPhoneGenerateCall(phonenum)
             pbPhoneCall(call,phonenum)
           end
         end[/COLOR]
       end
    }
    How many lines of code are between the green bit and the red bit? About 10.

    What you've done by deleting all that code you mentioned is cause the game to crash when it next tries to generate a phone call.
     
    Okay then, It's a good thing I kept a backup file. :)
    Here's what the file looks like now.
    Spoiler:

    Will this work? If so than thanks and sorry if I'm becoming annoying. lol
     
    Back
    Top