• 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 Trading Card Game 2 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.

[Archive] Pokemon Essentials: Starter Kit for RPG Maker XP

Status
Not open for further replies.
It's a bug in poccil's custom tilemap script. You could PM him and ask him to fix it.
 
Hi
I'm using an old version of the PedApp script (from this summer) and I found I bug I can't correct

After compiling the data on the editor, the pokemon and attack types are wrong.
On the pokemon summary, the type is the wrong one, and the attack type is the right one.
In battle, the move types are wrong too and the engine acts as if the pokemon types were different than what they are registered to be in pokemon.txt

I found out that it was probably a bug during the compilation of the file dexdata.dat , but I don't know how it's handled.
Can someone tell me exactly where does the compiler translate the types from pokemon.txt and put them into dexdata.dat ? Same with the types of moves.txt.
Thanks !
 
Last edited:
Hmm...I was wondering, is there a way to create a script that generates a circular shadow under the charsets?

HG/SS has one because I had this huge glitch in my ds game, and it still had a shadow under it, plus the Pokemon charsets that a large have a small shadow under it.
 
I have a problem with encounters. When I try to remove redundant encounters from encounters.txt iI have an error while launching Editor
[PokeCommunity.com] [Archive] Pokemon Essentials: Starter Kit for RPG Maker XP

Every type is written correct. No mistakes are made.

I have to remove these encounters, because now Pokemons attack me inside a house.
 
I have a problem with tones. There is light tone of screen at midnight. I have set the same tones as my friend who has everything fine.
 
I have a problem with encounters. When I try to remove redundant encounters from encounters.txt iI have an error while launching Editor
[PokeCommunity.com] [Archive] Pokemon Essentials: Starter Kit for RPG Maker XP

Every type is written correct. No mistakes are made.

I have to remove these encounters, because now Pokemons attack me inside a house.

I recommend avoiding editing the PBS through the notepad, the trainers.txt, for example, just doesn't work when edited in the notepad (for me at least). To remove a encounter of a map, just press Z when you're selecting it (the arrow).

Example, if you want to remove the Land encounter, just click Z while you get that option selected ;].

Also, don't double post.
 
I recommend avoiding editing the PBS through the notepad, the trainers.txt, for example, just doesn't work when edited in the notepad (for me at least). To remove a encounter of a map, just press Z when you're selecting it (the arrow).

Example, if you want to remove the Land encounter, just click Z while you get that option selected ;].

Also, don't double post.

Yeah, at my desktop-pc it doesn't work, if i change any of the pbs files in notepad. If i do this at notebook, it just works fine.
 
To remove a encounter of a map, just press Z when you're selecting it (the arrow).
I discovered it just yesterday, that I can remove something by pressing Z. But I solve my problem other way. I removed whole text from ecounters.txt, then compiled data, and type only my encounters in txt file. It works fine.

I recommend avoiding editing the PBS through the notepad, the trainers.txt, for example, just doesn't work when edited in the notepad (for me at least).
Editing trainertypes in notepad is problematic too, you can do little error for example while copying BGM and it ruins everything xD. But if you want to change internal name it is necessary to use notepad.

Also, don't double post.
Sorry, I didn't want to wait with my problem until anyone reply, so I wanted to write new post to refresh the thread. Sorry again.
 
Bug Catching Contest

Ok, so I've had the same question that has yet to be answered like 5 pages ago, and no one has bothered to respond. So, I will ask my question again, and hopefully someone will be nice enough to help me.

I am using the most recent version of Poccil's Starter Kit and I can't get the Bug Catching Contest to work. The script has no syntax errors that the game is picking up and the game acts as if everything is fine, yet the Bug Catching contest is never apparent. The timer doesn't show up, the contest pokemon don't show up and both the ingame menu and the battle menu don't change at all. It's as if there is no code there. Here is the script that I am using and some screenie's as well. Please help me. I really want this feature and I hope someone can help.

Code:
class BugContestState
  attr_accessor :ballcount
  attr_accessor :decision
  attr_accessor :steps
  attr_accessor :lastPokemon
  attr_reader :timer
  ContestantNames=[
       _INTL("BUG CATCHER BENNY"),
       _INTL("COOLTRAINER NICK"),
       _INTL("COLLECTOR KIPP"),
       _INTL("YOUNGSTER SAMUEL"),
       _INTL("BUG CATCHER DON"),
       _INTL("PICNICKER CINDY"),
       _INTL("CAMPER BARRY"),
       _INTL("BUG CATCHER JOSH")
  ]
  TimerSeconds=1200
  def initialize
     clear
     @lastContest=nil
  end
  def pbContestHeld?
     return false if !@lastContest
     return Time.new.to_i-@lastContest<86400
  end
  def expired?
    return false if !undecided?
    curtime=@timer+TimerSeconds*Graphics.frame_rate
    curtime=[curtime-Graphics.frame_count,0].max
    return (curtime<=0)
  end
  def clear
     @ballcount=0
     @ended=false
     @inProgress=false
     @decision=0
     @encounterMap=0
     @lastPokemon=nil
     @otherparty=[]
     @contestants=[]
     @places=[]
     @start=nil
     @reception=[]
  end
  def undecided?
     return (@inProgress && @decision==0)
  end
  def decided?
     return (@inProgress && @decision!=0) || @ended
  end
  def pbSetPokemon(chosenpoke)
     @chosenPokemon=chosenpoke
  end
   # Reception map is handled separately from contest map
   # since the reception map can be outdoors, with its own
   # grassy patches.
  def pbSetReception(*arg)
     @reception=[]
     for i in arg
        @reception.push(i)
     end
  end
  def pbOffLimits?(map)
     return false if map==@contestMap
     for i in @reception
       return false if map==i
     end
     return true
  end
  def pbSetJudgingPoint(startMap,startX,startY)
     @start=[startMap,startX,startY,6]
  end
  def pbSetContestMap(map)
     @contestMap=map
  end
  def pbJudge
     judgearray=[]
     if @lastPokemon
       judgearray.push([-1,@lastPokemon.species,
          pbBugContestScore(@lastPokemon)])
     end
     @contestants=[]
     [5,ContestantNames.length].min.times do
      loop do
       value=rand(ContestantNames.length)
       if [email protected]?{|i| i==value }
        @contestants.push(value)
        break
       end
      end
     end
     enctype=EncounterTypes::BugContest
     if !$PokemonEncounters.pbMapHasEncounter?(@contestMap,enctype)
       enctype=EncounterTypes::Land
     end
     for cont in @contestants
        enc=$PokemonEncounters.pbMapEncounter(@contestMap,enctype)
        if !enc
           raise _INTL("No encounters, so can't judge contest")
        end
        pokemon=PokeBattle_Pokemon.new(enc[0],enc[1],$Trainer)
        score=pbBugContestScore(pokemon)
        judgearray.push([cont,pokemon.species,score])
     end
     if judgearray.length<3
        raise _INTL("Too few bug catching contestants")
     end
     judgearray.sort!{|a,b| b[2]<=>a[2]} # sort by score in descending order
     @places.push(judgearray[0])
     @places.push(judgearray[1])
     @places.push(judgearray[2])
  end
  def pbGetPlaceInfo(place)
     cont=@places[place][0]
     if cont<0
       $game_variables[1]=$Trainer.name
     else
       $game_variables[1]=ContestantNames[cont]
     end
     $game_variables[2]=PBSpecies.getName(@places[place][1])
     $game_variables[3]=@places[place][2]
  end
  def pbClearIfEnded
     if !@inProgress
        clear unless @start && @start[0]==$game_map.map_id
     end
  end
  def pbStartJudging
    @decision=1
    pbJudge
    if $scene.is_a?(Scene_Map)
      pbFadeOutIn(99999){
         $game_temp.player_transferring = true
         $game_temp.player_new_map_id = @start[0]
         $game_temp.player_new_x = @start[1]
         $game_temp.player_new_y = @start[2]
         $game_temp.player_new_direction = @start[3]
         $MapFactory.setup(@start[0])
         $scene.transfer_player
      }
    end
  end
  def pbIsContestant?(i)
     return @contestants.any?{|item|  i==item }
  end
  def pbStart(ballcount)
     @ballcount=ballcount
     @inProgress=true
     @otherparty=[]
     @lastPokemon=nil
     @lastContest=nil
     @timer=Graphics.frame_count
     @places=[]
     chosenpkmn=$Trainer.party[@chosenPokemon]
     for i in 0...$Trainer.party.length
      if i!=@chosenPokemon
       @otherparty.push($Trainer.party[i])
      end
     end
     @contestants=[]
     [5,ContestantNames.length].min.times do
      loop do
       value=rand(ContestantNames.length)
       if [email protected]?{|i| i==value }
        @contestants.push(value)
        break
       end
      end
     end
     $Trainer.party=[chosenpkmn]
     @decision=0
     @ended=false
   end
  def place
    for i in 0...3
      return i if @places[i][0]<0
    end
    return 3
  end
  def pbEnd(interrupted=false)
     return if !@inProgress
     for poke in @otherparty
       $Trainer.party.push(poke)
     end
     if !interrupted 
        if @lastPokemon
          pbNicknameAndStore(@lastPokemon)
        end
        @ended=true
     else
        @ended=false
     end
     @lastPokemon=nil
     @otherparty=[]
     @reception=[]
     @ballcount=0
     @inProgress=false
     @decision=0
     @lastContest=Time.now.to_i
     $game_map.need_refresh=true
  end
end
def pbBugContestScore(pokemon)
  a=0
  a+=16 if (pokemon.iv[2]&1)>0
  a+=8 if (pokemon.iv[1]&1)>0
  a+=4 if (pokemon.iv[4]&1)>0
  a+=1 if (pokemon.iv[3]&1)>0
  score=(pokemon.totalhp*8)
  score+=pokemon.attack
  score+=pokemon.defense
  score+=pokemon.speed
  score+=pokemon.spatk
  score+=pokemon.spdef
  score+=a+(pokemon.hp/8)+1
  return score
end
def pbBugContestState
  if !$PokemonGlobal.bugContestState
    $PokemonGlobal.bugContestState=BugContestState.new
  end
  return $PokemonGlobal.bugContestState
end
def pbInBugContest?
  return pbBugContestState.undecided?
end
def pbBugContestUndecided?
  return pbBugContestState.undecided?
end
def pbBugContestDecided?
  return pbBugContestState.decided?
end
class PokeBattle_BugContestBattle < PokeBattle_Battle
 attr_accessor :ballcount
 def initialize(*arg)
  @ballcount=0
  super(*arg)
 end
 def pbItemMenu(i)
  @ballcount-=1 if @ballcount>0
  return PBItems::SAFARIBALL
 end
 def pbCommandMenu(i)
  return @scene.pbCommandMenuEx(i,[
   _INTL("Park Balls: {1}",@ballcount),
   _INTL("FIGHT"),
   _INTL("POKéMON"),
   _INTL("BALL"),
   _INTL("RUN")
  ])
 end
 def pbStorePokemon(pokemon)
   if pbBugContestState.lastPokemon
    lastPokemon=pbBugContestState.lastPokemon
    pbDisplayPaused(_INTL("You already caught a {1}.",lastPokemon.name))
    helptext=_INTL("STOCK POKéMON:\n {1} Lv{2} MaxHP: {3}\nTHIS POKéMON:\n {4} Lv{5} MaxHP: {6}",
            lastPokemon.name,lastPokemon.level,lastPokemon.totalhp,
            pokemon.name,pokemon.level,pokemon.totalhp
    )
    @scene.pbShowHelp(helptext)
    if pbDisplayConfirm(_INTL("Switch Pokémon?"))
     pbBugContestState.lastPokemon=pokemon
     @scene.pbHideHelp
    else
     @scene.pbHideHelp
     return
    end
   else
    pbBugContestState.lastPokemon=pokemon
   end
   pbDisplay(_INTL("Caught {1}!",pokemon.name))
 end
 def pbEndOfRoundPhase
   super
   if @ballcount<=0 && @decision==0
     @decision=3
   end
 end
end
class TimerDisplay
 def initialize(start,maxtime)
  @timer=Window_AdvancedTextPokemon.newWithSize("",360,0,120,64)
  @timer.z=99999
  @total_sec=nil
  @start=start
  @maxtime=maxtime
 end
 def dispose
  @timer.dispose
 end
 def disposed?
  @timer.disposed?
 end
 def update
    curtime=[(@start+@maxtime)-Graphics.frame_count,0].max
    curtime/=Graphics.frame_rate
    if curtime != @total_sec
      # Calculate total number of seconds
      @total_sec = curtime
      # Make a string for displaying the timer
      min = @total_sec / 60
      sec = @total_sec % 60
      @timer.text = _ISPRINTF("<ac>{1:02d}:{2:02d}", min, sec)
    end
 end
end
Events.onMapChange+=proc{|sender,e|
 pbBugContestState.pbClearIfEnded
}
Events.onMapSceneChange+=proc{|sender,e|
 scene=e[0]
 mapChanged=e[1]
 if pbInBugContest? && pbBugContestState.decision==0
  scene.spriteset.addUserSprite(TimerDisplay.new(
       pbBugContestState.timer,
       BugContestState::TimerSeconds*Graphics.frame_rate))
 end
}
Events.onMapUpdate+=proc{|sender,e|
 if !$Trainer || !$PokemonGlobal || !$game_player || 
    !$game_map
  # do nothing
 elsif !$game_player.move_route_forcing &&
    !pbMapInterpreterRunning? &&
    !$game_temp.message_window_showing
  if pbBugContestState.expired?
       $game_system.se_play("endofsafari.wav")
       Kernel.pbMessage("ANNOUNCER:  Ding-dong!")
       Kernel.pbMessage("Time's up!")
       pbBugContestState.pbStartJudging
  end
 end
}
Events.onMapChanging+=proc{|sender,e|
 newmapID=e[0]
 newmap=e[1]
 if pbInBugContest?
   if pbBugContestState.pbOffLimits?(newmapID)
    # Clear bug contest if player flies/warps/teleports
    # out of the contest
    pbBugContestState.pbEnd(true)
   end
 end
}
def Kernel.pbBugContestStartOver
   for i in $Trainer.party; i.heal; end
   pbBugContestState.pbStartJudging
end
Events.onWildBattleOverride+= proc { |sender,e|
   species=e[0]
   level=e[1]
   handled=e[2]
   next if handled[0]!=nil
   next if !pbInBugContest?
   handled[0]=pbBugContestBattle(species,level)
}
def pbBugContestBattle(species,level)
    if (Input.press?(Input::CTRL) && $DEBUG) || $Trainer.pokemonCount==0
     if $Trainer.pokemonCount>0
      Kernel.pbMessage(_INTL("SKIPPING BATTLE..."))
     end
     $game_variables[variable]=1 if variable
     $PokemonGlobal.nextBattleBGM=nil
     $PokemonGlobal.nextBattleME=nil
     $PokemonGlobal.nextBattleBack=nil
     return true          
    end
    currentlevels=[]
    for i in $Trainer.party
     currentlevels.push(i.level)
    end
    genwildpoke=pbGenerateWildPokemon(species,level)
    pokerus=(genwildpoke.pokerus==1)
    scene=PokeBattle_Scene.new
    battle=PokeBattle_BugContestBattle.new(scene,$Trainer.party,[genwildpoke],$Trainer,nil)
    battle.ballcount=pbBugContestState.ballcount
    battle.internalbattle=true
    wildbgm=pbGetWildBattleBGM(species)
    playingBGS=$game_system.getPlayingBGS
    playingBGM=$game_system.getPlayingBGM
    $game_system.bgm_pause
    $game_system.bgs_pause
    restorebgm=true
    decision=0
    pbBattleAnimation(wildbgm) { 
      decision=battle.pbStartBattle
      if decision==2
       $game_system.bgm_unpause
       $game_system.bgs_unpause
       Kernel.pbBugContestStartOver
       restorebgm=false
      else
       pbEvolutionCheck(currentlevels)
       if decision==1
        for pkmn in $Trainer.party
         Kernel.pbPickup(pkmn)
        end
       end
       pbPokerusCheck if pokerus
      end
    }
    if restorebgm
     $game_system.bgm_resume(playingBGM)
     $game_system.bgs_resume(playingBGS)
    end 
    $PokemonGlobal.nextBattleBGM=nil
    $PokemonGlobal.nextBattleME=nil
    $PokemonGlobal.nextBattleBack=nil
    pbBugContestState.ballcount=battle.ballcount
    $PokemonEncounters.clearStepCount
    Input.update
    Events.onWildBattleEnd.trigger(nil,species,level,decision)
    if pbBugContestState.ballcount==0
       Kernel.pbMessage("ANNOUNCER:  The Bug-Catching Contest is over!")
       $game_system.se_play("endofsafari.wav")
       pbBugContestState.pbStartJudging
    end
    return (decision!=2)
  end

Screenshot 1:
Spoiler:

Screenshot 2:
Spoiler:

Screenshot 3:
Spoiler:
 
how do i change the position of all menues? i would have a ds style :)
sorry for my bad english i´m german.

thx
 
@ Derw It's in your window and tilemap script around line 5.
 
Last edited:
wich script do you mean?

window script
Spoiler:



but i have tilemapxp and tilemaploader...
 
Hello
I got a simple question : Is there a way to reorder the scripts once you are in the script section (F11) ?
 
Hello
I got a simple question : Is there a way to reorder the scripts once you are in the script section (F11) ?

Yea, you could cut and paste the script names on the left to move them around. But I don't see the point...
 
Hi, I just deleted my PokemonOptions script, because it glitched up, and replaced it with the newest version but it shows errors, could somebody please post theirs?
 
What is the right way to add new variables to $PokemonGlobal, that can be saved and loaded ??

I tried to do something, it works when I laucnh my game from RPGMaker, but not from game.exe
 
What is the right way to add new variables to $PokemonGlobal, that can be saved and loaded ??

I tried to do something, it works when I laucnh my game from RPGMaker, but not from game.exe

I'm rephrasing it, sorry :

What is the right way to add new variables that are begins with a $ ? For instance, I created $var1, that works fine and is global to all my scripts, but I get an error everytime I launch game.exe because of this (and not when I launch from RPGMaker)
 
Status
Not open for further replies.
Back
Top