• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • 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.

|Maximus|

I'm back~
  • 836
    Posts
    16
    Years
    • Seen Sep 10, 2010
    Is there an event on the map your testing on that causes the player to be Always on Top? If not, it may be that the tiles your using havn't be modified to be impassable or not.

    Tiles Modified - CHECK
    Move Event - Pretty Sure its a Check, I will check again later.
     

    KingCharizard

    C++ Developer Extraordinaire
  • 1,229
    Posts
    14
    Years
    Umm...somehow when I playtest my game, the person is on top of EVERYTHING. Even the characters, the buildings. It's like somehow I put on "Always on Top" which I didn't I even checked.

    Any suggestions on how to fix this?

    Did you edit the map in the database

    Go to DATABASE > Tilesets

    X = Cant walk
    O = Can Walk

    If that doesnt help maybe you can provide a screenshot?
     
  • 81
    Posts
    14
    Years
    • Seen Jul 11, 2013
    I have a problem. On one map, I can walk freely on the ground without running into Pokemon, the next map I'm on, I'll be walk on the dirt road and I'll run into an Onix. Help?
     

    KingCharizard

    C++ Developer Extraordinaire
  • 1,229
    Posts
    14
    Years
    I have a problem. On one map, I can walk freely on the ground without running into Pokemon, the next map I'm on, I'll be walk on the dirt road and I'll run into an Onix. Help?


    Edit your encounters text file in the PBS folder Find the map number and delete all the stuff under the number...

    Or use the editor select the encounters and find the map with the onix and either change or delete the encounters
     

    thepsynergist

    Vinemon: Sauce Edition Programmer and Composer
  • 795
    Posts
    15
    Years
    Maruno or someone please help me with this error. It occurs whenever I use the search function in the Pokedex. I really need this problem solved as soon as possible. Thank you for your time.

    ---------------------------
    Pokemon Pyrite
    ---------------------------
    Exception: NameErrorMessage: undefined local variable or method `dexdata' for #<PokemonPokedexScene:0x936f4f0>PokemonPokedex:449
    :in `pbSearchDexList'PokemonPokedex:448
    :in `find_all'PokemonPokedex:448
    :in `each'PokemonPokedex:448
    :in `find_all'PokemonPokedex:448
    :in `pbSearchDexList'PokemonPokedex:775
    :in `pbDexSearch'PokemonPokedex:746
    :in `loop'PokemonPokedex:801
    :in `pbDexSearch'PokemonPokedex:863
    :in `pbPokedex'PokemonPokedex:840
    :in `loop'
    This exception was logged in errorlog.txt.
    Press Ctrl+C to copy this message to the clipboard.
    ---------------------------
    OK
    ---------------------------
     

    KingCharizard

    C++ Developer Extraordinaire
  • 1,229
    Posts
    14
    Years
    Maruno or someone please help me with this error. It occurs whenever I use the search function in the Pokedex. I really need this problem solved as soon as possible. Thank you for your time.

    ---------------------------
    Pokemon Pyrite
    ---------------------------
    Exception: NameErrorMessage: undefined local variable or method `dexdata' for #<PokemonPokedexScene:0x936f4f0>PokemonPokedex:449
    :in `pbSearchDexList'PokemonPokedex:448
    :in `find_all'PokemonPokedex:448
    :in `each'PokemonPokedex:448
    :in `find_all'PokemonPokedex:448
    :in `pbSearchDexList'PokemonPokedex:775
    :in `pbDexSearch'PokemonPokedex:746
    :in `loop'PokemonPokedex:801
    :in `pbDexSearch'PokemonPokedex:863
    :in `pbPokedex'PokemonPokedex:840
    :in `loop'
    This exception was logged in errorlog.txt.
    Press Ctrl+C to copy this message to the clipboard.
    ---------------------------
    OK
    ---------------------------
    What exactly are you trying to do? And from what i read it seems the thing doesn't exist... thats usually what a name error means...
     
  • 2,048
    Posts
    16
    Years
    • Seen Sep 7, 2023
    Just thought I'd show something neat I created while working on Raptor EX. You know the Braille code walls in R/S/E? Ever wanted to do something like that?

    Here's a method to generate an image containing the Braille for a given string, containing only letters and the '.' (full stop), ',' (comma) and ' ' (space) symbols:

    Code:
    def pbCreateBrailleImage(string, filename)
      charsPerRow = 13
      patterns = [1, 3, 9, 25, 17, 11, 27, 19, 10, 26, 5, 7, 13, 29, 21, 15, 31, 23, 14, 30, 37, 51, 58, 57, 73, 53]
      bitmap = Bitmap.new(charsPerRow * 32 - 14 + 32, 40 * ((string.length - 1) / charsPerRow + 1) - 10 + 32)
      count = 0
      black = Color.new(16, 16, 16)
      grey = Color.new(208, 208, 200)
      bitmap.fill_rect(bitmap.rect, Color.new(255, 255, 255))
      string.upcase.each_byte{|c|
        if c >= 65 && c < 91
          pattern = patterns[c - 65]
        elsif c.chr == "."
          pattern = 50
        elsif c.chr == ","
          pattern = 2
        else
          pattern = 0
        end
        for i in 0...6
          bitmap.fill_rect((count % charsPerRow) * 32 + (i / 3) * 12 + 16, (i % 3) * 12 + (count / charsPerRow) * 40 + 16, 6, 6, pattern & (1 << i) > 0 ? black : grey)
        end
        count += 1
      }
      bitmap.saveToPng(filename)
    end

    To use it, you call it giving the string and filename to save to:

    Code:
    pbCreateBrailleImage("Open the door. An eternal Pokemon awakes.", "Braille.png")

    This produces:

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


    To show the image in-game, use this method:

    Code:
    def pbShowImageInWindow(pathOrBitmap)
      window = PictureWindow.new(pathOrBitmap)
      window.x = (Graphics.width - window.width) / 2
      window.y = (Graphics.height - bitmap.height) / 2
      Audio.se_play("Audio/SE/Choose.wav")
      loop do
        Graphics.update
        Input.update
        window.update
        pbUpdateSceneMap
        break if Input.trigger?(Input::C) || Input.trigger?(Input::B)
      end
      window.dispose
      Input.update
    end

    Call it in a Script... event command, passing the filename of the image or a Bitmap object. For example:

    Code:
    pbShowImageInWindow("Graphics/Pictures/Braille.png")

    This produces:

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


    Hopefully, someone will find this useful (or at least, interesting).
     
    Last edited:

    The Dewitty

    Pixel artist, professional leo
  • 265
    Posts
    14
    Years
    Just thought I'd show something neat I created while working on Raptor EX. You know the Braille code walls in R/S/E? Ever wanted to do something like that?

    Here's a method to generate an image containing the Braille for a given string, containing only letters and the '.' (full stop), ',' (comma) and ' ' (space) symbols:

    Code:
    def pbCreateBrailleImage(string, filename)
      charsPerRow = 13
      patterns = [1, 3, 9, 25, 17, 11, 27, 19, 10, 26, 5, 7, 13, 29, 21, 15, 31, 23, 14, 30, 37, 51, 58, 57, 73, 53]
      bitmap = Bitmap.new(charsPerRow * 32 - 14 + 32, 40 * ((string.length - 1) / charsPerRow + 1) - 10 + 32)
      count = 0
      black = Color.new(16, 16, 16)
      grey = Color.new(208, 208, 200)
      bitmap.fill_rect(bitmap.rect, Color.new(255, 255, 255))
      string.upcase.each_byte{|c|
        if c >= 65 && c < 91
          pattern = patterns[c - 65]
        elsif c.chr == "."
          pattern = 50
        elsif c.chr == ","
          pattern = 2
        else
          pattern = 0
        end
        for i in 0...6
          bitmap.fill_rect((count % charsPerRow) * 32 + (i / 3) * 12 + 16, (i % 3) * 12 + (count / charsPerRow) * 40 + 16, 6, 6, pattern & (1 << i) > 0 ? black : grey)
        end
        count += 1
      }
      bitmap.saveToPng(filename)
    end

    To use it, you call it giving the string and filename to save to:

    Code:
    pbCreateBrailleImage("Open the door. An eternal Pokemon awakes.", "Braille.png")

    This produces:

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


    To show the image in-game, use this method:

    Code:
    def pbShowImageInWindow(pathOrBitmap)
      window = PictureWindow.new(pathOrBitmap)
      window.x = (Graphics.width - window.width) / 2
      window.y = (Graphics.height - bitmap.height) / 2
      Audio.se_play("Audio/SE/Choose.wav")
      loop do
        Graphics.update
        Input.update
        window.update
        pbUpdateSceneMap
        break if Input.trigger?(Input::C) || Input.trigger?(Input::B)
      end
      window.dispose
      Input.update
    end

    Call it in a Script... event command, passing the filename of the image or a Bitmap object. For example:

    Code:
    pbShowImageInWindow("Graphics/Pictures/Braille.png")

    This produces:

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


    Hopefully, someone will find this useful (or at least, interesting).

    I'm soo gonna use it! Seriously!
     

    |Maximus|

    I'm back~
  • 836
    Posts
    16
    Years
    • Seen Sep 10, 2010
    Did you edit the map in the database

    Go to DATABASE > Tilesets

    X = Cant walk
    O = Can Walk

    If that doesnt help maybe you can provide a screenshot?

    Read what I said, he is also on characters too! The passage is all perfected, I just don't know whats wrong with it.
     

    KingCharizard

    C++ Developer Extraordinaire
  • 1,229
    Posts
    14
    Years
    is there any way to make an event similar to the old man script?

    i wanted to know so i can implement it into my new game

    You mean the old man in vidirian city right? This is possible... Let me point out what i've gathered from your posts... you wanna make a game, but you have very limited know how of the kit and RMXP, also you want features that require Scripting in ruby, I can send you a ebook to read to learn RUBY I can also point you out to the RMXP Manual that should help but no one is gonna make these things for you you have to learn and make an effort...

    KNOWLEDGE IS POWER!

    Read what I said, he is also on characters too! The passage is all perfected, I just don't know whats wrong with it.

    Take a screenshot, press F8 while in the game mode and post it here... Im not sure either... are you using an actual charset? if so try re importing it...
     
  • 2,048
    Posts
    16
    Years
    • Seen Sep 7, 2023
    Looking back, it would probably be best if I joined the two scripts into one... I'll do that tomorrow :)
     

    |Maximus|

    I'm back~
  • 836
    Posts
    16
    Years
    • Seen Sep 10, 2010
    Take a screenshot, press F8 while in the game mode and post it here... Im not sure either... are you using an actual charset? if so try re importing it...

    Ok listen, I appreciate you helping me, but stop talking to me as if I am some little kid. I know perfectly how to take a screenshot. It is an actual charset.
     

    Poeman

    Banned
  • 755
    Posts
    15
    Years
    • Age 29
    • Seen Nov 1, 2012
    Variety, try changing the view mode to custom and original, see if that helps, also set a move event for the player to not be always on top, if any of these work then the problem was you, otherwise I would need to take a look at the project(which could take around a day) and I don't feel like doing that XD
     

    thepsynergist

    Vinemon: Sauce Edition Programmer and Composer
  • 795
    Posts
    15
    Years
    What exactly are you trying to do? And from what i read it seems the thing doesn't exist... thats usually what a name error means...

    I am just trying to make it so that you can use the Pokedex search function, and this error prevents it. Has anyone made a fix to it, or would it be better to just remove it altogether?
     
  • 2,048
    Posts
    16
    Years
    • Seen Sep 7, 2023
    I am just trying to make it so that you can use the Pokedex search function, and this error prevents it. Has anyone made a fix to it, or would it be better to just remove it altogether?

    As far as I can tell, this has been fixed in the newest release... Could you post your PokemonPokedex script?

    Anyway, as I said, I've improved the Braille script.

    Code:
    class BrailleWindow < SpriteWindow_Base
    
    attr_reader :text
    attr_accessor :charsPerRow
    attr_accessor :dotSize
    attr_accessor :dotSpacing
    attr_accessor :charSpacing
    attr_accessor :rowSpacing
    attr_accessor :backgroundColor
    attr_accessor :darkColor
    attr_accessor :lightColor
    attr_accessor :borderWidth
    attr_accessor :borderHeight
    
    PATTERNS = [1, 3, 9, 25, 17, 11, 27, 19, 10, 26, 5, 7, 13, 29, 21, 15, 31, 23,
      14, 30, 37, 51, 58, 57, 73, 53]
    
    def initialize(text=nil)
      super(0,0,0,0)
      @text = text
      @charsPerRow = 13
      @dotSize = 6
      @dotSpacing = 6
      @charSpacing = 14
      @rowSpacing = 14
      @backgroundColor = Color.new(255, 255, 255)
      @darkColor = Color.new(16, 16, 16)
      @lightColor = Color.new(208, 208, 200)
      @borderWidth = 16
      @borderHeight = 16
      @charWidth = 0
      @fullDotSize = 0
      @rowHeight = 0
      pbDrawBraille if text
    end
    
    def pbDrawBraille(text=nil)
      @text = text if text
      count = 0
      pbRefreshContents
      self.contents.fill_rect(self.contents.rect, @backgroundColor)
      @text.upcase.each_byte{|c|
        if c >= 65 && c < 91
          pattern = PATTERNS[c - 65]
        elsif c.chr == "."
          pattern = 50
        elsif c.chr == ","
          pattern = 2
        else
          pattern = 0
        end
        for i in 0...6
          self.contents.fill_rect(
            (count % @charsPerRow) * @charWidth + (i / 3) * @fullDotSize + @borderWidth,
            (i % 3) * @fullDotSize + (count / @charsPerRow) * @rowHeight + @borderHeight,
            @dotSize, @dotSize, pattern & (1 << i) > 0 ? @darkColor : @lightColor)
        end
        count += 1
      }
    end
    
    def pbRefreshContents
      @charWidth = 2 * @dotSize + @dotSpacing + @charSpacing
      @fullDotSize = @dotSize + @dotSpacing
      @rowHeight = @dotSize * 3 + @dotSpacing * 2 + @rowSpacing
      numChars = [@charsPerRow, @text.length].min
      self.contents.dispose if self.contents
      self.contents = Bitmap.new(numChars * @charWidth - @charSpacing + @borderWidth * 2,
        @rowHeight * ((@text.length - 1) / @charsPerRow + 1) - @rowSpacing + @borderHeight * 2)
      self.width = self.contents.width + 32
      self.height = self.contents.height + 32
    end
    
    def pbCenter
      self.x = (Graphics.width - self.width) / 2
      self.y = (Graphics.height - self.height) / 2
    end
    
    end
    
    def pbBrailleMessage(text)
      window=BrailleWindow.new(text)
      window.pbCenter
      pbPlayDecisionSE
      loop do
        Graphics.update
        Input.update
        window.update
        pbUpdateSceneMap
        break if Input.trigger?(Input::C) || Input.trigger?(Input::B)
      end
      window.dispose
      Input.update
    end

    Now you don't need to fiddle about with image files etc - just call
    Code:
    pbBrailleMessage(text)
    in an event; for example:
    Code:
    pbBrailleMessage(_I("Open the door. An eternal Pokemon awakes."))
    It's also a lot more customisable. You can change the properties of how the text is drawn; for example, you can change the colours and the dot size. It's up to you how to use it :)
     

    KingCharizard

    C++ Developer Extraordinaire
  • 1,229
    Posts
    14
    Years
    Im Actually curious if i create my own script is there any special place it should be added? Like above pbitems or below pokemonutilties
     
  • 2,048
    Posts
    16
    Years
    • Seen Sep 7, 2023
    It must be above Main. If you have anything in your script which is not within a method definition, you have to place it below any scripts which it refers to. For example, if you have a script to write the names of Pokémon to a text file:
    Code:
    def writeNames
      File.open("Example.txt"){|f|
        for i in 1..PBSpecies.getCount
          f.write(PBSpecies.getName(i))
        end
      }
    end
    [B]writeNames[/B]
    In this case, 'writeNames' calls a method which refers to PBSpecies; therefore, this script must be placed below where PBSpecies is defined (PokemonSystem).

    Also, if your script modifies existing classes (for example, adding a new method to Game_Player or modifying the initialization method of PokeBattle_Pokemon), it must obviously be placed below the script you're modifying. I don't think this really applies for the first, but it's good to stay on the safe side; if the class then defines a method with the same name as yours, yours will be overwritten. If you place it after the main class definition, you can make sure yours is the one which is kept.

    I find it best to make a new script section for any scriptlets I need to add (called, for example, AddedStuff), placing it right at the bottom (but above Main) so it's second-last in the editor. If you want it to be run before data is compiled in Debug mode, you can place it above Compiler.
     

    KingCharizard

    C++ Developer Extraordinaire
  • 1,229
    Posts
    14
    Years
    Thanks thats what i thought... I think its smart to put it last right before main and I too will place it there... My heads full with ideas that require scripting and Im not new to scripting but im new to ruby and the RGSS script layout...
     
    Status
    Not open for further replies.
    Back
    Top