• 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.

Pokemon Birthsigns

1,406
Posts
10
Years
    • Age 35
    • Online now
    Update 5/21/15 : Birthsigns Journal
    I've developed a new scene that displays the information for all of the birthsigns in a single place. Now you can look up the effects of each sign and prepare for a future birthsign. It also functions as a lorebook; displaying a brief story that connects to each sign in some way. This is a completely optional addition, and seperate from the actual birthsign scripts.

    I made up all the lore myself, so feel free to replace it with your own if you don't like them lol.


    Features
    • A new scene that can be accessed through an event, or even accessed through the Pokegear.
    • Supports all 24 Birthsigns with effect descriptions and roughly a paragraph worth of lore linked to each birthsign.
    • Has a unique menu layout to display the entire zodiac in a radial pattern, similar to some real-world zodiacs.
    • An updated Birthsigns folder with both new and tweaked graphics. (Now included by default)
    • Pokegear Icon graphic if you choose to implement the this into the Pokegear. Install this into Graphics/Pictures/Pokegear.


    UPDATE As of 3/30/2017:
    The Birthsigns Journal now has a separate script for Kleinstudio's Essentials BW compatibility. Install that version of the script found in the main post to add it to your game. This version of the Birthsigns Journal utilizes the two-screen layout and touch controls found in Essentials BW to fully take advantage of its features.


    UPDATE As of 12/8/17:
    The Birthsigns Journal now highlights a given month's Partner and Rival months. Partner signs are highlighted in blue, and Rival signs are highlighted in red.


    UPDATE As of 12/13/17:
    The Birthsigns Journal now displays relevant information regarding the Zodiac Power associated with a given month. Pressing the Z key while on a birthsign page will toggle this extra information.


    All of the required scripts have been added to the main post.
     
    Last edited:
    42
    Posts
    15
    Years
    • Seen Jan 7, 2017
    I am trying to install the script but it doesn't works... I have this error:

    "Error Script PScreen_Summary in line 1125 type "SyntaxError""

    How can I solve it?
     
    1,406
    Posts
    10
    Years
    • Age 35
    • Online now
    I am trying to install the script but it doesn't works... I have this error:

    "Error Script PScreen_Summary in line 1125 type "SyntaxError""

    How can I solve it?

    I haven't looked at these scripts in quite some time, so I may not be of much help anymore. Go into your script and in PScreen_Summary, find line 1125 and the lines around it and see if anything looks off to you. It could be something as simple as a missing comma, or a break in the line somewhere. I just checked my script in my vanilla copy of Essentials (with only Birthsigns installed), and this is what I found:

    Code:
    class PokemonSummary
      def initialize(scene)
        [B]@scene=scene[/B]
      end
    The bolded line is what line 1125 is for me in my script. If this doesn't match up with your script, then that means you either copied the scripts wrong, or maybe have some random extra spaces somewhere, or you have other scripts installed that may be conflicting with something of mine.
     
    1,406
    Posts
    10
    Years
    • Age 35
    • Online now
    Update 9/9/15 : Manual Birthsigns, Debug Options, and Script Overhauls
    After a long hiatus from these scripts (and Essentials in general), I've decided to come back to this and add in some features I've wanted to implement since the beginning. Lots of things have been changed, so if you've installed anything prior to today, you're going to need to reinstall pretty much everything. Sorry lol. I'll be updating the main post with all the changes asap, though there's a ton to change so bear with me.

    Shout outs to Kiedisticelixer for messaging me with some ideas of his own that got me interested in taking another look at these scripts again.

    Features
    • The ability to set a desired Birthsign onto an unbred Pokemon via events or debug tools. This can be used to give a birthsign to unbreedable species, wild encounters, gifted Pokemon - anything that was previously impossible!
    • A new debugging tool to quickly swap out different birthsigns. However, this can only be used on Pokemon who have NOT obtained a Birthsign through hatching.
    • setBirthsign(:XXXX) can now be used within an event to set a desired birthsign onto a gifted Pokemon, encounter, trade, etc. Replace the X's with the name of the desired birthsign.
    • There is now only a single instance of USENEWBIRTHSIGNS, now found within the settings section. You only have to change this single instance to true or false to change between birthsign sets.
    • Overhauls to virtually all of the previous scripts to accommodate the new features.

    All changes can be found within the main post.

    The thumbnails below are examples of Pokemon who previously had no possible way of obtaining a birthsign.
     
    Last edited:
    1,224
    Posts
    10
    Years
  • Just so you know, you can use
    Code:
    setBirthsign(:VOYAGER)
    No need to specify since the method already specifies the module.

    A nitpick
    Spoiler:


    This is a really nice set of scripts, it's nice to see something like this being made for the community. Only problem, there's a lot of changes you made. Porting to a new version of Essentials, or even the initial installation could be a pain. PM me if you like and I can help you make most of this so that it's plug and play.
     
    1,406
    Posts
    10
    Years
    • Age 35
    • Online now
    Minor update 9/17/15 : 'The Eternal' Update
    (This has already been updated in the main scripts.)
    I've overhauled the coding for the sign 'The Eternal', to fix some holes and inconsistencies; as well as giving it some polish overall. It's not necessary to add this if you've already installed a previous version, but if you want to update it yourself you can just paste the new code below in place of the old one.

    Changes:
    • Pokemon who were manually given 'The Eternal' Birthsign will now properly inherit a new Birthsign when using Reincarnate. Previously, only hatched Pokemon were able to do this.

    • Pokemon are no longer able to infinitely use Reincarnate during the month of December. Previously, there was nothing stopping this since 'The Eternal' Birthsign would just replace itself, and allow you to continuously Reincarnate. Now you will simply get a message telling you that you must wait for a different month before you can use Reincarnate.

    • A jingle will play whenever you successfully Reincarnate a Pokemon, making the process feel a little more polished.

    • Rearranged the order of some of the text and prompts so that the process flows better.

    • Made it so that the message prompt for attaching the Second Step Ribbon will only display if the Pokemon doesn't have the ribbon. Previously, the message would play even if the Pokemon already had the ribbon.

    New Code
    Code:
    #===============================================================================
    # Birthsigns - The Eternal
    # Reincarnate Skill effect:
    # Resets the Pokemon as if it was hatched again, allowing it to inherit
    # a new birthsign.
    #===============================================================================
    elsif cmdReincarnate>=0 && command==cmdReincarnate
      if Kernel.pbConfirmMessage(_INTL("Activate {1}'s birthsign?",pkmn.name))
        if true
          if Time.now.mon==12 &&
          (pkmn.birthsign==_INTL("'The Eternal'") || pkmn.birthsign==PBBirthsigns::ETERNAL)
            pbDisplay(_INTL("You must wait for a new month before you can do that."))
            break
          end
          pbDisplay(_INTL("Activating this birthsign will reset {1}'s level and birthsign, and any affected attributes.",pkmn.name))
          if Kernel.pbConfirmMessage(_INTL("Are you sure you want to activate this birthsign?"))
            if true
              pkmn.level=EGGINITIALLEVEL
              pkmn.ev[0]=0
              pkmn.ev[1]=0
              pkmn.ev[2]=0
              pkmn.ev[3]=0
              pkmn.ev[4]=0
              pkmn.ev[5]=0
              pkmn.happiness=120
              pkmn.pokerus=0
              pkmn.timeEggHatched=pbGetTimeNow
              pkmn.obtainText=_INTL("From a previous life.")
              if pkmn.obtainMode!=1
                if Time.now.mon==1
                  if !USENEWBIRTHSIGNS
                    pkmn.setBirthsign(:APPRENTICE)
                  else
                    pkmn.setBirthsign(:PHOENIX)
                  end
                elsif Time.now.mon==2
                  if !USENEWBIRTHSIGNS
                    pkmn.setBirthsign(:COMPANION)
                  else
                    pkmn.setBirthsign(:SCHOLAR)
                  end
                elsif Time.now.mon==3
                  if !USENEWBIRTHSIGNS
                    pkmn.setBirthsign(:BEACON)
                  else
                    pkmn.setBirthsign(:FUGITIVE)
                  end
                elsif Time.now.mon==4
                  if !USENEWBIRTHSIGNS
                    pkmn.setBirthsign(:SAVAGE)
                  else
                    pkmn.setBirthsign(:ARISTOCRAT)
                  end
                elsif Time.now.mon==5
                  if !USENEWBIRTHSIGNS
                    pkmn.setBirthsign(:PRODIGY)
                  else
                    pkmn.setBirthsign(:CLERIC)
                  end
                elsif Time.now.mon==6
                  if !USENEWBIRTHSIGNS
                    pkmn.setBirthsign(:MARTYR)
                  else
                    pkmn.setBirthsign(:MONK)
                  end
                elsif Time.now.mon==7
                  if !USENEWBIRTHSIGNS
                    pkmn.setBirthsign(:MAIDEN)
                  else
                    pkmn.setBirthsign(:ANCESTOR)
                  end
                elsif Time.now.mon==8
                  if !USENEWBIRTHSIGNS
                    pkmn.setBirthsign(:GLADIATOR)
                  else
                    pkmn.setBirthsign(:SPECIALIST)
                  end
                elsif Time.now.mon==9
                  if !USENEWBIRTHSIGNS
                    pkmn.setBirthsign(:VOYAGER)
                  else
                    pkmn.setBirthsign(:ASSASSIN)
                  end
                elsif Time.now.mon==10
                  if !USENEWBIRTHSIGNS
                    pkmn.setBirthsign(:THIEF)
                  else
                    pkmn.setBirthsign(:PARENT)
                  end
                elsif Time.now.mon==11
                  if !USENEWBIRTHSIGNS
                    pkmn.setBirthsign(:GLUTTON)
                  else
                    pkmn.setBirthsign(:HUNTER)
                  end
                elsif Time.now.mon==12
                  if !USENEWBIRTHSIGNS
                    pkmn.setBirthsign(:WISHMAKER)
                  else
                    pkmn.setBirthsign(:ETERNAL)
                  end
                end
              end
              pbRefresh
              pbDisplay(_INTL("{1} was reincarnated by the power of The Eternal!",pkmn.name))
              pbDisplay(_INTL("And..."))
              #=======================================================================================
              #Birthsigns
              #=======================================================================================
              if Time.now.mon==1
                if !USENEWBIRTHSIGNS
                  pkmn.pokerus=16
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Apprentice!",pkmn.name))
                else
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Phoenix!",pkmn.name))
                end
                pbRefresh
              end
              if Time.now.mon==2
                if !USENEWBIRTHSIGNS
                  pkmn.happiness=255
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Companion!",pkmn.name))
                else
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Scholar!",pkmn.name))
                end
                pbRefresh
              end
              if Time.now.mon==3
                if !USENEWBIRTHSIGNS
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Beacon!",pkmn.name))
                else
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Fugitive!",pkmn.name))
                end
                pbRefresh
              end
              if Time.now.mon==4
                if !USENEWBIRTHSIGNS
                  pkmn.iv[0]=0
                  pkmn.iv[1]=31
                  pkmn.iv[3]=31
                  pkmn.iv[4]=31
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Savage!",pkmn.name))
                else
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Aristocrat!",pkmn.name))
                end
                pbRefresh
              end
              if Time.now.mon==5
                if !USENEWBIRTHSIGNS
                  pkmn.abilityflag=2
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Prodigy!",pkmn.name))
                else
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Cleric!",pkmn.name))
                end
                pbRefresh
              end
              if Time.now.mon==6
                if !USENEWBIRTHSIGNS
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Martyr!",pkmn.name))
                else
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Monk!",pkmn.name))
                end
                pbRefresh
              end
              if Time.now.mon==7
                if !USENEWBIRTHSIGNS
                  pkmn.setGender(1)
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Maiden!",pkmn.name))
                else
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Ancestor!",pkmn.name))
                end
                pbRefresh
              end
              if Time.now.mon==8 
                if !USENEWBIRTHSIGNS
                  pkmn.ev[1]=100
                  pkmn.ev[4]=100
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Gladiator!",pkmn.name))
                else
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Specialist!",pkmn.name))
                end
                pbRefresh
              end
              if Time.now.mon==9
                if !USENEWBIRTHSIGNS
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Voyager!",pkmn.name))
                else
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Assassin!",pkmn.name)) 
                end
                pbRefresh
              end
              if Time.now.mon==10
                if !USENEWBIRTHSIGNS
                  pkmn.ev[3]=252
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Thief!",pkmn.name))
                else
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Parent!",pkmn.name))
                end
                pbRefresh
              end
              if Time.now.mon==11
                if !USENEWBIRTHSIGNS
                  pkmn.iv[0]=31
                  pkmn.iv[2]=31
                  pkmn.iv[3]=0
                  pkmn.iv[5]=31
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Glutton!",pkmn.name))
                else
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Hunter!",pkmn.name))
                end
                pbRefresh
              end
              if Time.now.mon==12
                if !USENEWBIRTHSIGNS
                  pkmn.shinyflag=true
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Wishmaker!",pkmn.name))
                else
                  pbSEPlay("itemlevel")
                  pbDisplay(_INTL("{1} gained the power of The Eternal!",pkmn.name))
                end
                pbRefresh
              end
              #=======================================================================================
              pkmn.calcStats
              if Kernel.pbConfirmMessage(_INTL("Would you like to rename the reincarnated Pokémon?"))
                species=PBSpecies.getName(pkmn.species)
                nickname=pbEnterPokemonName(_INTL("{1}'s new name?",pkmn.name),0,10,"",pkmn)
                pkmn.name=nickname if nickname!=""
                pbRefresh
              end
              if !pkmn.hasRibbon?(:SECONDSTEP)
                pkmn.giveRibbon(:SECONDSTEP)
                pbDisplay(_INTL("You put the Second Step Ribbon on {1} to commemorate new life.",pkmn.name))
                pbRefreshSingle(pkmnid)
              end
            end
            pbRefresh
          end
        end
        pbRefresh
      end
      #=======================================================================================

    Old Code
    Spoiler:
     
    Last edited:
    1,406
    Posts
    10
    Years
    • Age 35
    • Online now
    Update 9/24/15 : Birthsign Events
    For this update, I decided to focus on trying to utilize the birthsign mechanic in new ways. The last update made it possible to easily call for a birthsign in an event, and I've built a new stand-alone script to take full advantage of that. This should make creating complicated events utilizing Pokemon Birthsigns fairly simple. This is an add-on, similar to the Birthsigns Journal; so you don't have to install this if you're uninterested.

    Features
    • A new "Birthstone" event that can be easily set up by calling on just a few scripts. This event will grant any Pokemon without a birthsign the power of any one of the birthsigns that you choose. You can use this to create alternate methods of attaining a birthsign, particularly for Pokemon who are incapable of being bred.

    • A new "Birthpath" event that can be easily set up by calling on just a few scripts. This event blocks access to a hidden path unless the player has a Pokemon with the required birthsign in their party. You can use this to hide secret caves, treasure, or all sorts of things by using birthsigns as keys to open these locked paths.

    • New graphics and a new animation that plays whenever a birthsign event is triggered.

    • Supports all 24 Birthsigns. Setting BIRTHSIGNS_SET_2 to "true" in the Pokemon Birthsigns script will activate Set 2.

    Example Images
    Spoiler:


    Setting Up Events
    By default, this script is assuming switches 111-124 are vacant, because default Essentials doesn't use these numbers. If your project has these switch numbers occupied with something else, you'll have to renumber all the switches in this script to suit your needs.

    Here is how the script for your events should look like:
    BdsLlRW.jpg


    • The first control switch (in this case, 111) is assigned to the desired month. By default, switches 111-122 are assigned to each of the 12 months, respectively. So in the example image, January is this event's desired month (which correlates with 'The Apprentice' or 'The Phoenix' signs).

    • The second control switch (in this case, 123) is assigned to the desired type of event. By default, switch 123 is assigned to a Birthstone Event, while switch 124 is assigned to a Birthpath Event. This switch will determine which of the two possible events will play out when the event is triggered.

    • pbBirthsignEvent is the script that will begin running the event, determined by the two control switches you chose. Once this event is fully completed, Control Self Switch "A" will be automatically turned on in the Event, forcing the Event to jump to Page 2.

    • Page 2 of the Event is where things may differ depending on which Birthsign Event you're utilizing. If you're making a Birthstone Event, then you may leave Page 2 of the event blank. If you're using a Birthpath Event, then you may place a door event on Page 2 so that it becomes "unlocked" after completing the event. How to utilize this is up to you. In either scenario, you must check off Page 2's Self Switch "A" to ON.


    UPDATE: As of 12/13/17, a third event called "Sign Conversion" can be used with this script. This uses control switch 125, and may be used to convert the birthsigns of your Pokemon to a different sign, depending on the month switch you put in your event.



    The main post will be changed to reflect this addition.
     
    Last edited:
    1,406
    Posts
    10
    Years
    • Age 35
    • Online now
    Minor Update 9/28/15 : PC Modifications
    This is a small change that'll update the Pokemon Storage system so that it will now accommodate Pokemon Birthsigns. You will now be able to see a Pokemon's birthsign token from the PC menu, allowing you to quickly identify a Pokemon with a specific birthsign. This will also update the PC Debug tools to allow you to change a stored Pokemon's birthsign, just as you can with the Party Menu Debug tool.

    Attached are some screenshots that shows the new features this update adds.
     

    Attachments

    • 1.png
      1.png
      10.3 KB · Views: 54
    • 2.png
      2.png
      11.6 KB · Views: 48
    • 3.png
      3.png
      27.1 KB · Views: 46
    • 4.png
      4.png
      28.8 KB · Views: 46
    • 5.png
      5.png
      27.7 KB · Views: 44
    Last edited:
    1,406
    Posts
    10
    Years
    • Age 35
    • Online now
    Bug Fix: 'The Assassin'
    The effect of this birthsign is meant to have a 70% chance to encounter wild Pokemon who are asleep. However, the sleeping Pokemon would always wake immediately once encountered, making the effect fairly useless. This should fix this problem so that the wild Pokemon encountered with this effect should now sleep for at least one turn before waking up.

    Find this section of code in PokemonBirthsigns, near the bottom, and add in the bolded line:
    Code:
    #================================================================================
      # Birthsign - The Assassin
      #Wild Pokemon have a 70% chance of being asleep when encountered.
      #================================================================================
      if !$Trainer.party[0].isEgg? && 
      ($Trainer.party[0].birthsign==_INTL("'The Assassin'") ||
      (USENEWBIRTHSIGNS && $Trainer.party[0].zodiacflag!=nil && 
      $Trainer.party[0].birthsign==PBBirthsigns::ASSASSIN))
        if genwildpoke.status=0 && rand(100)<70 #Change this number to change the odds.
          genwildpoke.status=1
          [B]genwildpoke.statusCount=2[/B]
        end
      end
      #================================================================================

    And that's it! The effect should work as intended now. I will update the main script with this change.
     
    Last edited:
    824
    Posts
    8
    Years
  • Bug Fix: 'The Assassin'
    The effect of this birthsign is meant to have a 70% chance to encounter wild Pokemon who are asleep. However, the sleeping Pokemon would always wake immediately once encountered, making the effect fairly useless. This should fix this problem so that the wild Pokemon encountered with this effect should now sleep for at least one turn before waking up.

    Find this section of code in PokemonBirthsigns, near the bottom, and add in the bolded line:
    Code:
    #================================================================================
      # Birthsign - The Assassin
      #Wild Pokemon have a 70% chance of being asleep when encountered.
      #================================================================================
      if !$Trainer.party[0].egg? && 
      ($Trainer.party[0].birthsign==_INTL("'The Assassin'") ||
      (USENEWBIRTHSIGNS && $Trainer.party[0].zodiacflag!=nil && 
      $Trainer.party[0].birthsign==PBBirthsigns::ASSASSIN))
        if genwildpoke.status=0 && rand(100)<70 #Change this number to change the odds.
          genwildpoke.status=1
          [B]genwildpoke.statusCount=2[/B]
        end
      end
      #================================================================================

    And that's it! The effect should work as intended now. I will update the main script with this change.

    Why not do "genwildpoke.statusCount=2+rand(3)"? That way it's not always one turn of sleep.
     
    1,406
    Posts
    10
    Years
    • Age 35
    • Online now
    Why not do "genwildpoke.statusCount=2+rand(3)"? That way it's not always one turn of sleep.

    I feel like anything more than 1 turn of sleep would be pretty overpowered (if not already). You could definitely make it longer though, if you'd like.
     
    1,406
    Posts
    10
    Years
    • Age 35
    • Online now
    For those interested in using Pokemon Birthsigns with the new release of Essentials v16, some minor script edits are required to avoid compatibility issues.

    For every instance of ".egg?" in any of the scripts, you must instead replace it with ".isEgg?"

    With that, everything should work. I've got it working, and everything seems to function as intended. Only the Pokemon Birthsigns and Birthsign Event scripts require these edits - the Birthsign Journal seems fine as-is. If anyone encounters any errors or issues with the script in v16 that they didn't encounter in v15, please let me know and I'll see if there's anything else that must be changed. But as far as I can tell, everything works.

    For those of you installing Pokemon Birthsigns for the first time into Essentials v16, everything has already been updated for you. You should be able to follow the installation instructions and be good to go.
     
    1,406
    Posts
    10
    Years
    • Age 35
    • Online now
    Several additional changes have been fixed in the PokemonBirthsign script for further compatibility with Essentials v16.

    -Fixed an issue with the Debug menu when changing Abilities.
    -Fixed an issue with gaining Exp from battles crashing the game.
    -Restructured the code for 'The Scholar', 'The Fugitive', 'The Aristocrat', 'The Assassin', and 'The Ancestor' Birthsigns. They've all been tested and seem to work without issue now.
    -Changed something minor in the Summary pages that changes the Item text color to reflect v16's changes.
    -Fixed the item jingle name to reflect v16's name so that it properly plays when called in the Birthsign and Birthsign Event scripts.

    If anyone encounters any other issues, please let me know.
     

    Pokébook1

    Marene
    114
    Posts
    8
    Years
  • Sorry for writing on so late but I have an Error

    I followed your Installation Guide... But I want to make it different:

    Spoiler:


    I already copied the printable version and followed your Instructions, the problem now is that I dunno how to make this part of my Script to work properly:

    Spoiler:



    I get this Error all the Time:
    Spoiler:


    Now I'd tried to delete all these Scripts: PokemonBirthsigns, The jornal one and the Event one then I saved and Playtest the game and I can't open the Menu when I click on X.
     
    Last edited:
    1,406
    Posts
    10
    Years
    • Age 35
    • Online now
    Sorry for writing on so late but I have an Error

    I followed your Installation Guide... But I want to make it different:

    Spoiler:


    I already copied the printable version and followed your Instructions, the problem now is that I dunno how to make this part of my Script to work properly:

    Spoiler:



    I get this Error all the Time:
    Spoiler:


    Now I'd tried to delete all these Scripts: PokemonBirthsigns, The jornal one and the Event one then I saved and Playtest the game and I can't open the Menu when I click on X.

    Hmm. Well as far as the changes you want go, there's quite a few things you need to alter in the scripts. I just applied the changes you wanted in a fresh install, and I was able to get it working. Here's what I did:

    First of all, copy/paste all of the following code over the appropriate sections in a fresh install of the Birthsigns script. This entire chunk is found near the very top of the script. I wrote #Changed next to every line I tweaked, and bolded for you convenience.

    Code:
    #=======================================================================================
    #  New Zodiac - Names
    #=======================================================================================
    # If you wish to rename a particular Birthsign, you must also rename all
    # other instances of that Birthsign's name in this script. Use CTRL+F to
    # locate them.
    #
    # You may also need to rename them in the "Manual Birthsigns" section
    # further below.
    #=======================================================================================
    # Set 1
    def pbGetZodiacName(sign)
      return [_INTL(""),                       #Null
              [B]_INTL("'The Phoenix'"),#Changed[/B]  #January
              _INTL("'The Companion'"),        #February
              _INTL("'The Beacon'"),           #March
              _INTL("'The Savage'"),           #April
              [B]_INTL("'The Cleric'"),#Changed[/B]   #May
              _INTL("'The Martyr'"),           #June
              [B]_INTL("'The Ancestor'"),#Changed[/B] #July
              _INTL("'The Gladiator'"),        #August
              _INTL("'The Voyager'"),          #September
              _INTL("'The Thief'"),            #October
              _INTL("'The Glutton'"),          #November
              _INTL("'The Wishmaker'")][sign]  #December
            end
            
    # Set 2
    def pbGetNewZodiacName(sign)
      return [_INTL(""),                          #Null
              [B]_INTL("'The Apprentice'"),#Changed[/B]  #January
              _INTL("'The Scholar'"),             #February
              _INTL("'The Fugitive'"),            #March
              _INTL("'The Aristocrat'"),          #April
              [B]_INTL("'The Prodigy'"),#Changed [/B]    #May
              _INTL("'The Monk'"),                #June
              [B]_INTL("'The Maiden'"),#Changed[/B]      #July
              _INTL("'The Specialist'"),          #August
              _INTL("'The Assassin'"),            #September
              _INTL("'The Parent'"),              #October
              _INTL("'The Hunter'"),              #November
              _INTL("'The Eternal'")][sign]       #December
            end
            
    #=======================================================================================
    #  New Zodiac - Descriptions
    #=======================================================================================
    # Set 1
    def pbGetZodiacDesc(sign)
      return [_INTL(""),
              [B]_INTL("The Pokémon can Revive itself from the party menu."),#Changed[/B] 
              _INTL("The Pokémon is born with max happiness."),
              _INTL("The Pokémon can use Flash without the move."),
              _INTL("The Pokémon has max IV's in offense & Speed, but 0 HP."),
              [B]_INTL("The Pokémon can Cure its status from the menu."),#Changed[/B]
              _INTL("The Pokémon can use Soft-Boiled without the move."),
              [B]_INTL("The Pokémon yields Eggs that hatch twice as fast."),#Changed[/B]
              _INTL("The Pokémon is born with 100 EV's in Atk & Sp.Atk."),
              _INTL("The Pokémon can use Teleport without the move."),
              _INTL("The Pokémon is born with max EV's in Speed."),
              _INTL("The Pokémon has max IV's in defenses & HP, but 0 Speed."),
              _INTL("The Pokémon is always born shiny.")][sign]
            end
            
    # Set 2
    def pbGetNewZodiacDesc(sign)
      return [_INTL(""),
              _INTL("The Pokémon can Revive itself from the party menu."), 
              _INTL("The Pokémon gains 20% more exp. from battles."),
              _INTL("The Pokémon has the Escape skill to exit dungeons."),
              _INTL("The Pokémon doubles prize money won when leading."),
              _INTL("The Pokémon can Cure its status from the menu."),
              _INTL("The Pokémon can use Trance to relearn past moves."),
              _INTL("The Pokémon yields Eggs that hatch twice as fast."),
              _INTL("The Pokémon can Re-roll for a new Hidden Power."),
              _INTL("The Pokémon sneaks up on sleeping wild Pokémon."),
              _INTL("The Pokémon can Incubate Eggs to make them hatch."),
              _INTL("The Pokémon raises capture rates by 20% when leading."),
              _INTL("The Pokémon can Reincarnate and begin anew.")][sign]
            end
    
    #=======================================================================================
    #  Manual Birthsigns 
    #=======================================================================================
    # Use "setBirthsign(:XXXXX)" in an event to manually apply a Birthsign.
    # Replace the X's with the name of the desired Birthsign as they are
    # written below.
    #=======================================================================================
    module PBBirthsigns
      if !USENEWBIRTHSIGNS
        # Birthsigns Set 1
        NONE      = 0
        [B]PHOENIX   = 1#Changed[/B]
        COMPANION = 2
        BEACON    = 3
        SAVAGE    = 4
        [B]CLERIC    = 5#Changed[/B]
        MARTYR    = 6
        [B]ANCESTOR  = 7#Changed[/B]
        GLADIATOR = 8
        VOYAGER   = 9
        THIEF     = 10
        GLUTTON   = 11
        WISHMAKER = 12
      else
        # Birthsigns Set 2
        NONE       = 0
        [B]APPRENTICE = 1#Changed[/B]
        SCHOLAR    = 2
        FUGITIVE   = 3
        ARISTOCRAT = 4
        [B]PRODIGY    = 5#Changed[/B]
        MONK       = 6
        [B]MAIDEN     = 7#Changed[/B]
        SPECIALIST = 8
        ASSASSIN   = 9
        PARENT     = 10
        HUNTER     = 11
        ETERNAL    = 12
      end
    
      def PBBirthsigns.maxValue; 13; end
      def PBBirthsigns.getCount; 13; end
        
      def PBBirthsigns.signValue(id)
        return (id)%13
      end
      
    #=======================================================================================
    #  Debug Menu
    #=======================================================================================
    # This is the list that appears in the Birthsigns Debug Menu.
    #=======================================================================================  
      # Set 1
      def PBBirthsigns.getName(id)
        if !USENEWBIRTHSIGNS
          names=[
              _INTL("No sign"),
              [B]_INTL("The Phoenix"),#Changed[/B]
              _INTL("The Companion"),
              _INTL("The Beacon"),
              _INTL("The Savage"),
              [B]_INTL("The Cleric"),#Changed[/B]
              _INTL("The Martyr"),
              [B]_INTL("The Ancestor"),#Changed[/B]
              _INTL("The Gladiator"),
              _INTL("The Voyager"),
              _INTL("The Thief"),
              _INTL("The Glutton"), 
              _INTL("The Wishmaker")
          ]
          return names[id]
      # Set 2
        else
          names=[
              _INTL("No sign"),
              [B]_INTL("The Apprentice"),#Changed[/B]
              _INTL("The Scholar"),
              _INTL("The Fugitive"),
              _INTL("The Aristocrat"),
              [B]_INTL("The Prodigy"),#Changed[/B]
              _INTL("The Monk"),
              [B]_INTL("The Maiden"),#Changed[/B]
              _INTL("The Specialist"),
              _INTL("The Assassin"),
              _INTL("The Parent"),
              _INTL("The Hunter"), 
              _INTL("The Eternal")
          ]
          return names[id]
        end
      end
    end
    
    #=======================================================================================
    #  Defining Birthsigns
    #=======================================================================================
    class PokeBattle_Pokemon
        attr_accessor(:zodiacflag)
    
    # Defines birthsigns
     def birthsign
      if obtainMode==1
        if USENEWBIRTHSIGNS
          return pbGetNewZodiacName(self.timeEggHatched.mon)
        else
          return pbGetZodiacName(self.timeEggHatched.mon)
        end
      end
      return @zodiacflag if @zodiacflag!=nil
      return @personalID%13
     end
     
    # Sets this Pokémon's birthsign.
      def setBirthsign(value)
        if value.is_a?(String) || value.is_a?(Symbol)
          value=getID(PBBirthsigns,value)
        end
        @zodiacflag=value
        if !USENEWBIRTHSIGNS
          applyBirthsigns
          applynosign
        else
          applynosign
        end
        self.calcStats
      end
      
    #  Applies the effects of manually assigned Birthsigns.
      def applyBirthsigns
    [B]    #if birthsign==PBBirthsigns::APPRENTICE #Changed
          #self.pokerus=16 #Changed
        #end #Changed[/B]
        if birthsign==PBBirthsigns::COMPANION
          self.happiness=255
        end
        if birthsign==PBBirthsigns::SAVAGE
          self.iv[0]=0
          self.iv[1]=31
          self.iv[2]=rand(32)
          self.iv[3]=31
          self.iv[4]=31
          self.iv[5]=rand(32)
        end
    [B]    #if birthsign==PBBirthsigns::PRODIGY #Changed
          #self.abilityflag=2 #Changed
        #end #Changed
        #if birthsign==PBBirthsigns::MAIDEN #Changed
          #self.genderflag=1 #Changed
        #end #Changed[/B]
        if birthsign==PBBirthsigns::GLADIATOR
          self.ev[0]=0
          self.ev[1]=100
          self.ev[2]=0
          self.ev[3]=0
          self.ev[4]=100
          self.ev[5]=0
        end
        if birthsign==PBBirthsigns::THIEF
          self.ev[0]=0
          self.ev[1]=0
          self.ev[2]=0
          self.ev[3]=0
          self.ev[4]=0
          self.ev[5]=252
        end
        if birthsign==PBBirthsigns::GLUTTON
          self.iv[0]=31
          self.iv[1]=rand(32)
          self.iv[2]=31
          self.iv[3]=0
          self.iv[4]=rand(32)
          self.iv[5]=31
        end
        if birthsign==PBBirthsigns::WISHMAKER 
          self.shinyflag=true
        end
      end
      
    #  Resets flags when no sign is applied.
      def applynosign
        if birthsign==PBBirthsigns::NONE
          self.shinyflag=nil
          self.abilityflag=nil
          self.genderflag=nil
        end
      end
    end

    Secondly, you want to make three more small changes, to actually allow the Birthsigns to work.

    Got to line 1074, and add an exclamation point right before USENEWBIRTHSIGNS, like so:
    Code:
    ([B]![/B]USENEWBIRTHSIGNS && pkmn.zodiacflag!=nil && pkmn.birthsign==PBBirthsigns::PHOENIX

    Then go to lines 1083 and 3014 and do the exact same thing. This'll allow the Cleric and the Ancestor to work, respectively.

    Finally, go into the Birthsigns graphics folder, and swap the Birthsign and Token graphics to match your changes.

    In regards to the Journal script, that's a bit more straightforward to change. You more or less just have to change the name/description text in the appropriate places. The only complicated part of altering the Journal is editing the wheel graphic to display your changes. But, that shouldn't be difficult if you're at all familiar with using an image editing program.

    As for the Event scripts, that should be the easiest one to alter out of all of them. All you really need to do is swap the exclamation point before USENEWBIRTHSIGNS in all of the appropriate places, similar to what you had to do to the Birthsigns script.
     

    Pokébook1

    Marene
    114
    Posts
    8
    Years
  • wow Thanks I installed the Script above main and name it PokemonBirthsigns
    and copied it from Printable Version, as I do always and
    now I don't understand the part with ("Go to line 1074..") I copied the entire PokemonBirthsigns Script and paste it in the Notepad++ too and I can't see the line 1074 because the line just goes till 268 :(

    where should I paste the
    Spoiler:


    The line 1083 and line 3014 I can't find because the line of the Birthsign Script just goes till line 268, please help me :(

    and if you could explain me how I could do it with the Events and the Journal it would be great, thanks in advance

    I tried to playtest my game and I got this ERROR:
    Spoiler:
     
    Back
    Top