< >
Hello, guest! Please log in or register.

The PokéCommunity

Go Back     The PokéCommunity Forums > Create & Discover > Game Development > Pokémon Essentials Question Some questions

Notices

Pokémon Essentials All questions and discussion about Pokémon Essentials, the Pokémon game kit for RPG Maker XP, go in here. Also contains links to the latest downloads and the Essentials Wiki.

Reply Post Reply
 
Thread Tools
  #1    
Old March 16th, 2013 (5:34 AM).
Ramond Hikari's Avatar
Ramond Hikari Ramond Hikari is offline
- Lonely Shooting Star -
 
Join Date: Oct 2011
Location: Vietnam
Gender: Male
Nature: Lonely
Posts: 75
When I playtest my project, it compiles the data, and when it hit the Processing map X, the error pops. The first popup is this:

Quote:
[EOFError, "End of file reached", ["Section058:2098:in `oldload'", "Section058:2098:in `load'", "Section146:2798:in `load_data'", "Section146:2798:in `getMap'", "Section146:2959:in `pbCompileTrainerEvents'", "Section146:2957:in `each'", "Section146:2957:in `pbCompileTrainerEvents'", "Section146:3976:in `pbCompileAllData'", "Section146:4071"]]
And the next popup is:

Quote:
Exception: NoMethodError
Message: undefined method `events' for #<String:0xb8aced8>
Compiler:2962:in `pbCompileTrainerEvents'
Compiler:2957:in `each'
Compiler:2957:in `pbCompileTrainerEvents'
Compiler:3976:in `pbCompileAllData'
Compiler:4071
I don't know how to fix this error. Can anyone help me?


By the way, I also want to ask if the walking/running speed can be adjusted by modifying a script sector?

Thanks.


Reply With Quote

Relevant Advertising!

  #2    
Old March 18th, 2013 (6:12 AM).
Maruno's Avatar
Maruno Maruno is offline
Lead Dev of Pokémon Essentials
 
Join Date: Jan 2008
Location: England
Posts: 5,093
1. I don't know. Try remaking the problem map.

2. Yes. See the wiki.
Reply With Quote
  #3    
Old March 19th, 2013 (2:31 AM).
Ramond Hikari's Avatar
Ramond Hikari Ramond Hikari is offline
- Lonely Shooting Star -
 
Join Date: Oct 2011
Location: Vietnam
Gender: Male
Nature: Lonely
Posts: 75
Thanks Maruno. Solved.
Oh, another problem shows up.
Somehow, the PokeDex keeps showing the Kanto Dex, even I have unlocked National with pbUnlockDex and locked Kanto with pbLockDex(0).

Any solutions? Thanks.


Reply With Quote
  #4    
Old March 23rd, 2013 (5:24 AM).
Ramond Hikari's Avatar
Ramond Hikari Ramond Hikari is offline
- Lonely Shooting Star -
 
Join Date: Oct 2011
Location: Vietnam
Gender: Male
Nature: Lonely
Posts: 75
Bump this thread.
Anyone know the answer to my problem? I really need it. Thanks a lot.


Reply With Quote
  #5    
Old March 23rd, 2013 (9:21 AM).
Rayd12smitty's Avatar
Rayd12smitty Rayd12smitty is offline
Shadow Maker
 
Join Date: Dec 2011
Gender: Male
Posts: 647
Quote:
Originally Posted by Ramond Hikari View Post
Bump this thread.
Anyone know the answer to my problem? I really need it. Thanks a lot.
Go into Settings and change DEXDEPENDSONLOCATION to false if you haven't.
Reply With Quote
  #6    
Old March 24th, 2013 (10:49 PM).
Ramond Hikari's Avatar
Ramond Hikari Ramond Hikari is offline
- Lonely Shooting Star -
 
Join Date: Oct 2011
Location: Vietnam
Gender: Male
Nature: Lonely
Posts: 75
Quote:
Originally Posted by Rayd12smitty View Post
Go into Settings and change DEXDEPENDSONLOCATION to false if you haven't.
Hm... I have tried it, but it doesn't work. Any other solutions?


Reply With Quote
  #7    
Old March 30th, 2013 (4:51 PM).
FL's Avatar
FL FL is offline
Pokémon Island Creator
 
Join Date: Sep 2010
Gender: Male
Posts: 1,576
For my experience EOF generally means corruption. Try to replace the map with other (like the Essentials base kit) and test. Make sure that you make backups.
Reply With Quote
  #8    
Old April 1st, 2013 (5:53 AM).
Ramond Hikari's Avatar
Ramond Hikari Ramond Hikari is offline
- Lonely Shooting Star -
 
Join Date: Oct 2011
Location: Vietnam
Gender: Male
Nature: Lonely
Posts: 75
Okay, I deleted the error map, and the problem is solved.
But the pokedex still not alter no matter what I do. Any suggestions?


Reply With Quote
  #9    
Old April 4th, 2013 (3:20 PM).
FL's Avatar
FL FL is offline
Pokémon Island Creator
 
Join Date: Sep 2010
Gender: Male
Posts: 1,576
So you can't access National Dex? Try Rayd12smitty post using pbUnlockDex() without using pbLockDex. Make sure that you have, at least, one non-kanto pokémon as seen.
Reply With Quote
  #10    
Old April 6th, 2013 (1:47 AM).
Ramond Hikari's Avatar
Ramond Hikari Ramond Hikari is offline
- Lonely Shooting Star -
 
Join Date: Oct 2011
Location: Vietnam
Gender: Male
Nature: Lonely
Posts: 75
Quote:
Originally Posted by FL . View Post
So you can't access National Dex? Try Rayd12smitty post using pbUnlockDex() without using pbLockDex. Make sure that you have, at least, one non-kanto pokémon as seen.
Yes, I tried it, but no, it still displayed Kanto Dex.
How could I make the National Dex the default one?


Reply With Quote
  #11    
Old April 6th, 2013 (4:53 AM).
Maruno's Avatar
Maruno Maruno is offline
Lead Dev of Pokémon Essentials
 
Join Date: Jan 2008
Location: England
Posts: 5,093
You've been given all the right instructions, so it's probably something silly you've done.

Bear in mind that the name of a Dex has no bearing on its contents. It may be called "Kanto Dex", but it actually contains the National Dex. This is a simple matter of editing the array of Dex names in Settings.

Before you do that, though, you should pay attention to how that array works. All the Regional Dexes come first, and the National Dex at the end. The number of Regional Dexes depends on the maximum number of numbers in the RegionalDexes lines in pokemon.txt. That is, one line could read RegionalDexes=42 and another could read RegionalDexes=17,99, so the maximum would be 2 Regional Dexes. The first thing you need to do is decide how many Regional Dexes you have defined, and then make sure the array of Dex names is arranged accordingly.

If that's not the case, then you're simply doing something wrong and not telling us (such as using a way-old version of Essentials which doesn't readily support Regional Dexes).
Reply With Quote
  #12    
Old April 6th, 2013 (2:29 PM).
FL's Avatar
FL FL is offline
Pokémon Island Creator
 
Join Date: Sep 2010
Gender: Male
Posts: 1,576
Quote:
Originally Posted by Ramond Hikari View Post
Yes, I tried it, but no, it still displayed Kanto Dex.
How could I make the National Dex the default one?
A good alternative (idea by Maruno): Use a text editor with find and replace feature (to use replace all) like Microsoft Word. Replace the word RegionalDexes in pokemon.txt with something without effect like Dave, so the Kanto/Johto Dex will be ignored.
Reply With Quote
  #13    
Old April 6th, 2013 (3:57 PM). Edited April 8th, 2013 by Ramond Hikari.
Ramond Hikari's Avatar
Ramond Hikari Ramond Hikari is offline
- Lonely Shooting Star -
 
Join Date: Oct 2011
Location: Vietnam
Gender: Male
Nature: Lonely
Posts: 75
Oh, I think I have found the cause: Venom's menu script.
The full script is here:

Spoiler:
Quote:
class PokemonMenu_Scene
ANIM_SPEED=8
def pbShowCommands(commands)
pbDrawPanels(commands)
ret=-1
oldcommand=0
loop do
pbDrawOverlay
pbUpdateCursor(commands)
Graphics.update
Input.update
pbUpdateSceneMap
if Input.trigger?(Input::B)
ret=-1
break
end
if Input.trigger?(Input::RIGHT)
if @index%2==0 && @index<commands.length
@index+=1
elsif @index<commands.length
[email protected]
@index=commands.length
end
elsif Input.trigger?(Input::LEFT)
if @index==commands.length
@index=oldcommand
elsif @index%2==0 || @index==commands.length-1
[email protected]
@index=commands.length
else
@index-=1
end
elsif Input.trigger?(Input::DOWN)
if @index==commands.length-2
@index=commands.length-1
elsif @index<commands.length-2
@index+=2
end
elsif Input.trigger?(Input::UP)
if @index>commands.length-2
@index=commands.length-2
elsif @index>1
@index-=2
end
end
if Input.trigger?(Input::C)
[email protected]
ret=-1 if ret==commands.length
$PokemonTemp.menuLastChoice=ret
break
end
end
return ret
end

def pbUpdateCursor(commands)
if Input.press?(Input::C)
# @sprites["cursor"].src_rect.x=128
else
# [email protected]/(ANIM_SPEED*2)
# @sprites["cursor"].src_rect.x=cursorFrame*80
end
if @index<commands.length-1
@sprites["cursor"].x=36+(@index%2)*158
@sprites["cursor"].y=42+(@index/2)*80
@sprites["cursor"].bitmap=BitmapCache.load_bitmap("Graphics/Pictures/MenuHGSScursor")
elsif @index==commands.length-1
@sprites["cursor"].x=36
@sprites["cursor"].y=282
@sprites["cursor"].bitmap=BitmapCache.load_bitmap("Graphics/Pictures/MenuHGSScursor")
else
@sprites["cursor"].x=0
@sprites["cursor"].y=0
@sprites["cursor"].bitmap=BitmapCache.load_bitmap("Graphics/Pictures/MenuHGSS_green Exit")
@sprites["cursor"].opacity=160
@sprites["cursor"].z=9999
end
end

def pbDrawPanels(commands)
@sprites["leftpanel"].opacity=210
[email protected]["leftpanel"].bitmap
leftPanel.clear
leftPanel.blt(0,0,BitmapCache.load_bitmap("Graphics/Pictures/MenuHGSS_green.png"),Rect.new(0,0,324,376))
for i in 0...commands.length-1
if commands[i]!=""
leftPanel.blt(36+(i%2)*158,42+(i/2)*80,BitmapCache.load_bitmap("Graphics/Pictures/Hgss"+commands[i]),Rect.new(0,0,80,52))
end
end
end

def pbDrawOverlay
if @frame%ANIM_SPEED==0
[email protected]/ANIM_SPEED
pkmnFrame=trainerFrame%2
[email protected]["leftoverlay"].bitmap
leftOverlay.clear
[email protected]["rightoverlay"].bitmap
rightOverlay.clear
end
@frame+=1
@frame=0 if @frame>=(ANIM_SPEED*4)
end

def pbInitializePanels
@sprites["leftpanel"].x=-240
@sprites["leftpanel"].opacity=0
@sprites["rightpanel"].x=576
@sprites["rightpanel"].opacity=0
@sprites["leftoverlay"].x=-240
@sprites["leftoverlay"].opacity=0
@sprites["rightoverlay"].x=576
@sprites["rightoverlay"].opacity=0
end

def pbStartScene
@frame=0
@index=0
@viewport=Viewport.new(0,0,Graphics.width,Graphics.height)
@viewport.z=99999
@sprites={}
@sprites["leftpanel"]=Sprite.new(@viewport)
@sprites["leftpanel"].bitmap=Bitmap.new(324,384)
@sprites["leftpanel"].opacity=210
@sprites["rightpanel"]=Sprite.new(@viewport)
@sprites["rightpanel"].bitmap=Bitmap.new(144,320)
@sprites["leftoverlay"]=Sprite.new(@viewport)
@sprites["leftoverlay"].bitmap=Bitmap.new(228,320)
@sprites["rightoverlay"]=Sprite.new(@viewport)
@sprites["rightoverlay"].bitmap=Bitmap.new(144,320)
@sprites["cursor"]=Sprite.new(@viewport)
@sprites["cursor"].bitmap=BitmapCache.load_bitmap("Graphics/Pictures/MenuHGSScursor")
@sprites["cursor"].visible=false
pbSEPlay("menu")
end

def pbHideMenu
@sprites["cursor"].visible=false
12.times do
Graphics.update
Input.update
pbDrawOverlay
@sprites["leftpanel"].x-=20
@sprites["leftpanel"].opacity-=22
@sprites["rightpanel"].x+=20
@sprites["rightpanel"].opacity-=22
@sprites["leftoverlay"].x-=20
@sprites["leftoverlay"].opacity-=22
@sprites["rightoverlay"].x+=20
@sprites["rightoverlay"].opacity-=22
end
@sprites["leftpanel"].visible=false
@sprites["rightpanel"].visible=false
@sprites["leftoverlay"].visible=false
@sprites["rightoverlay"].visible=false
end

def pbShowMenu
pbInitializePanels
@sprites["leftpanel"].visible=true
@sprites["rightpanel"].visible=true
@sprites["leftoverlay"].visible=true
@sprites["rightoverlay"].visible=true
12.times do
Graphics.update
Input.update
pbDrawOverlay
@sprites["leftpanel"].x+=20
@sprites["leftpanel"].opacity+=22
@sprites["rightpanel"].x-=20
@sprites["rightpanel"].opacity+=22
@sprites["leftoverlay"].x+=20
@sprites["leftoverlay"].opacity+=22
@sprites["rightoverlay"].x-=20
@sprites["rightoverlay"].opacity+=22
end
@sprites["cursor"].visible=true
end

def pbEndScene
pbDisposeSpriteHash(@sprites)
@viewport.dispose
end

def pbRefresh
end

end


class PokemonMenu

def initialize(scene)
@scene=scene
end

def pbShowMenu
@scene.pbRefresh
@scene.pbShowMenu
end

def pbStartPokemonMenu
@scene.pbStartScene
endscene=true
commands=[]
cmdPokedex=-1
cmdPokemon=-1
cmdBag=-1
cmdTrainer=-1
cmdSave=-1
cmdOption=-1
cmdPokegear=-1
cmdDebug=-1
cmdQuit=-1
if !$Trainer
if $DEBUG
Kernel.pbMessage(_INTL("The player trainer was not defined, so the menu can't be displayed."))
Kernel.pbMessage(_INTL("Please see the documentation to learn how to set up the trainer player."))
end
return
end
commands[cmdPokedex=commands.length]="MenuPokedex" if $Trainer.pokedex
commands[cmdTrainer=commands.length]="MenuCard"
commands[cmdPokemon=commands.length]="MenuPokemon" if $Trainer.party.length>0
commands[cmdSave=commands.length]="MenuSave" if !$game_system || !$game_system.save_disabled
commands[cmdBag=commands.length]="MenuBag" if !pbInBugContest?
commands[cmdOption=commands.length]="MenuOption"
commands[cmdPokegear=commands.length]="MenuGear"
commands[cmdDebug=commands.length]="MenuOption" if $DEBUG

@scene.pbDrawPanels(commands)
@scene.pbShowMenu
loop do
[email protected](commands)
if cmdPokedex>=0 && command==cmdPokedex
pbFadeOutIn(99999) {
scene=PokemonPokedexScene.new
screen=PokemonPokedex.new(scene)
screen.pbStartScreen
@scene.pbRefresh
@scene.pbDrawPanels(commands)
}
elsif cmdPokegear>=0 && command==cmdPokegear
pbLoadRpgxpScene(Scene_Pokegear.new)
elsif cmdPokemon>=0 && command==cmdPokemon
sscene=PokemonScreen_Scene.new
sscreen=PokemonScreen.new(sscene,$Trainer.party)
hiddenmove=nil
pbFadeOutIn(99999) {
hiddenmove=sscreen.pbPokemonScreen
if hiddenmove
@scene.pbEndScene
else
@scene.pbRefresh
@scene.pbDrawPanels(commands)
end
}
if hiddenmove
Kernel.pbUseHiddenMove(hiddenmove[0],hiddenmove[1])
return
end
elsif cmdBag>=0 && command==cmdBag
item=0
scene=PokemonBag_Scene.new
screen=PokemonBagScreen.new(scene,$PokemonBag)
pbFadeOutIn(99999) {
item=screen.pbStartScreen
if item>0
@scene.pbEndScene
else
@scene.pbRefresh
@scene.pbDrawPanels(commands)
end
}
if item>0
Kernel.pbUseKeyItemInField(item)
return
end
elsif cmdTrainer>=0 && command==cmdTrainer
PBDebug.logonerr {
scene=PokemonTrainerCardScene.new
screen=PokemonTrainerCard.new(scene)
pbFadeOutIn(99999) {
screen.pbStartScreen
@scene.pbRefresh
@scene.pbDrawPanels(commands)
}
}
elsif cmdQuit>=0 && command==cmdQuit
@scene.pbHideMenu
elsif cmdSave>=0 && command==cmdSave
@scene.pbHideMenu
scene=PokemonSaveScene.new
screen=PokemonSave.new(scene)
if screen.pbSaveScreen
@scene.pbEndScene
endscene=false
break
else
pbShowMenu
end
elsif cmdDebug>=0 && command==cmdDebug
pbFadeOutIn(99999) {
pbDebugMenu
@scene.pbRefresh
@scene.pbDrawPanels(commands)
}
elsif cmdOption>=0 && command==cmdOption
scene=PokemonOptionScene.new
screen=PokemonOption.new(scene)
pbFadeOutIn(99999) {
screen.pbStartScreen
pbUpdateSceneMap
@scene.pbRefresh
@scene.pbDrawPanels(commands)
}
else
break
end
end
@scene.pbHideMenu if endscene
@scene.pbEndScene if endscene
end

end


So is there a way to modify this and make the NationalDex show?


Reply With Quote
  #14    
Old April 9th, 2013 (3:55 PM).
FL's Avatar
FL FL is offline
Pokémon Island Creator
 
Join Date: Sep 2010
Gender: Male
Posts: 1,576
Try to change

Code:
pbFadeOutIn(99999) {
scene=PokemonPokedexScene.new
screen=PokemonPokedex.new(scene)
screen.pbStartScreen
@scene.pbRefresh
@scene.pbDrawPanels(commands)
}
to

Code:
        if DEXDEPENDSONLOCATION
          pbFadeOutIn(99999) {
             scene=PokemonPokedexScene.new
             screen=PokemonPokedex.new(scene)
             screen.pbStartScreen
             @scene.pbRefresh
          }
        else
          if $PokemonGlobal.pokedexViable.length==1
            $PokemonGlobal.pokedexDex=$PokemonGlobal.pokedexViable[0]
            $PokemonGlobal.pokedexDex=-1 if $PokemonGlobal.pokedexDex==$PokemonGlobal.pokedexUnlocked.length-1
            pbFadeOutIn(99999) {
               scene=PokemonPokedexScene.new
               screen=PokemonPokedex.new(scene)
               screen.pbStartScreen
               @scene.pbRefresh
            }
          else
            pbLoadRpgxpScene(Scene_PokedexMenu.new)
          end
        end
Reply With Quote
  #15    
Old April 10th, 2013 (4:40 AM).
Ramond Hikari's Avatar
Ramond Hikari Ramond Hikari is offline
- Lonely Shooting Star -
 
Join Date: Oct 2011
Location: Vietnam
Gender: Male
Nature: Lonely
Posts: 75
Quote:
Originally Posted by FL . View Post
Try to change

Code:
pbFadeOutIn(99999) {
scene=PokemonPokedexScene.new
screen=PokemonPokedex.new(scene)
screen.pbStartScreen
@scene.pbRefresh
@scene.pbDrawPanels(commands)
}
to

Code:
        if DEXDEPENDSONLOCATION
          pbFadeOutIn(99999) {
             scene=PokemonPokedexScene.new
             screen=PokemonPokedex.new(scene)
             screen.pbStartScreen
             @scene.pbRefresh
          }
        else
          if $PokemonGlobal.pokedexViable.length==1
            $PokemonGlobal.pokedexDex=$PokemonGlobal.pokedexViable[0]
            $PokemonGlobal.pokedexDex=-1 if $PokemonGlobal.pokedexDex==$PokemonGlobal.pokedexUnlocked.length-1
            pbFadeOutIn(99999) {
               scene=PokemonPokedexScene.new
               screen=PokemonPokedex.new(scene)
               screen.pbStartScreen
               @scene.pbRefresh
            }
          else
            pbLoadRpgxpScene(Scene_PokedexMenu.new)
          end
        end
Thanks, FL!
I have added pbSetViableDexes after endscene=true, then it works perfectly!


Reply With Quote
Reply Post Reply
Quick Reply

Sponsored Links
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


  All times are GMT -8. The time now is 3:45 PM.


Contact Us Archive Privacy Statement Terms of Service Top