• 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
    • Seen today
    RPGXP_2018-08-17_00-29-19.png

    You have to define what "Pokemon" is first. I put it in italics in my post as a placeholder, because there's a million ways you could write it.

    For example, writing it as
    Code:
    $Trainer.party[0].setRandomZodiac
    Would make the Pokemon in party slot 1 have a random zodiac sign applied.
     
    195
    Posts
    7
    Years
    • Seen Apr 30, 2024
    You have to define what "Pokemon" is first. I put it in italics in my post as a placeholder, because there's a million ways you could write it.

    For example, writing it as
    Code:
    $Trainer.party[0].setRandomZodiac
    Would make the Pokemon in party slot 1 have a random zodiac sign applied.

    Ah ok, that can work for the starter, but how can i do it for other gift Pokémon that are received later?
     
    1,406
    Posts
    10
    Years
    • Seen today
    Ah ok, that can work for the starter, but how can i do it for other gift Pokémon that are received later?

    There's a variety of ways that can be done. Look at the sample events that come with essentials (in-game trades and gifts and such) to see what works best for you. Use those as a model.
     
    23
    Posts
    10
    Years
  • Well, I do not know if it was just here, but The Voyager's zodiac power only returns the failure message, even if all pokemon are alive... Can you check this please?
     
    1,406
    Posts
    10
    Years
    • Seen today
    Well, I do not know if it was just here, but The Voyager's zodiac power only returns the failure message, even if all pokemon are alive... Can you check this please?

    Will do. I'm working on a new update right now, so I'll put that on my list to bug test.
     
    1,406
    Posts
    10
    Years
    • Seen today
    Major Update 9/19/18 - Celestial Bosses
    With this update, I've been primarily focused on expanding on the lore potential for the birthsign mechanic, so ive created a new layer to the project utilizing the Event add-on script. This new feature will add Celestial Bosses to your game - boss encounters that are representative of each of the birthsigns. I'll get into much more detail about that below. But first, allow me to introduce some other updates, including a small expansion to the total birthsign count.

    Fun Fact: I started working on this update around the time that Simon Belmont was revealed for Smash Bros., and many of the features in this update revolve around things like vampires, the night, souls, and other macabre elements. There are even a couple of Castlevania music tracks that I threw in here. I didn't realize any of this until after I was done, but its kinda funny to think I may have been subconsciously influenced by Castlevania lol.

    Updates
    Spoiler:


    Installation
    Spoiler:

    ~All of the above will be added to the main post.
     
    Last edited:
    423
    Posts
    13
    Years
    • Seen Aug 31, 2023
    nice work adding the celestials and other things shame essentials seems to be a bit buggy with some of the alt form scripts got tonnes of ideas using these scripts in my game

    i take it refering to the trainers sign is still a no go?
     
    1,406
    Posts
    10
    Years
    • Seen today
    nice work adding the celestials and other things shame essentials seems to be a bit buggy with some of the alt form scripts got tonnes of ideas using these scripts in my game

    i take it refering to the trainers sign is still a no go?

    Depends what you want out of the trainer signs. They still don't actually DO anything (im open to ideas if you have any - I havent thought of anything interesting that i wouldn't rather put on the actual Pokemon themselves). The trainer signs are determined simply by your adventure start time though, so I suppose you could call on them if you really wanted to, since calling on the adventure start time is possible.

    So you could probably just do something like:
    Code:
    PBBirthsigns.getName($PokemonGlobal.startTime.mon)
    for example, if you wanted to get the name of the player's sign. But other than calling for its name, I don't know what else you'd need to call it for.



    Maybe something like:
    Code:
    $Trainer.party[0].setBirthsign($PokemonGlobal.startTime.mon)
    to give the Pokemon in party slot 1 the same birthsign as its trainer, as an example.



    That's about all I can really think of doing with it. Ive thought about changing this so that the player can input their actual birthday and have their player sign based on that instead, but it seems like too much work for something that is currently nothing but cosmetic.
     
    Last edited:
    423
    Posts
    13
    Years
    • Seen Aug 31, 2023
    well my idea was to have it be used for certain poke evo and would determin other events in game that dont have much effect in the gameplay or story but would result in changes depending on the sign. in general could be an alternate way to activate the zodiac powers or feild abilities (that they either need the stone and/or the trainer needs a corresponding sign
     
    1,406
    Posts
    10
    Years
    • Seen today
    well my idea was to have it be used for certain poke evo and would determin other events in game that dont have much effect in the gameplay or story but would result in changes depending on the sign. in general could be an alternate way to activate the zodiac powers or feild abilities (that they either need the stone and/or the trainer needs a corresponding sign

    Sounds like a lot of that could simply be done by calling on the player's starting time (specifically, the month) like I showed in my examples. Since like I said, the player's sign and the adventure start time are effectively the same thing. Like maybe setting up an if-then statement where it says something like "if starting month is February, then Pokemon X evolves into Pokemon Y." You don't even need the Birthsign script to pull something like that off.
     
    Last edited:
    195
    Posts
    7
    Years
    • Seen Apr 30, 2024
    Hmm...How does capturing Vymm & Vygor work, since it's a double battle? Considering you can only catch one pokemon during a double battle.
     
    1,406
    Posts
    10
    Years
    • Seen today
    Hmm...How does capturing Vymm & Vygor work, since it's a double battle? Considering you can only catch one pokemon during a double battle.
    Yeah, you can only capture one of them. They both have the same sign and thus both have the ability to bestow the same blessing, so it's a matter of preference I guess in which one to catch.
     
    1,406
    Posts
    10
    Years
    • Seen today
    hmm...well I suppose I can figure a way of getting both of them.

    If you'd like. I guess I sort of intended for them to be almost like a version exclusive sort of deal, where you pick one to catch and then have to trade to get the other. I know that doesn't necessarily translate into a fangame that well. But I guess there's nothing stopping you from having them appear separately. Like maybe after capturing one, the other can be found again later in its own isolated quest in a single battle.
     
    220
    Posts
    9
    Years
  • Hello there!

    After updating birthsigns scripts, i've got an error at the start of the game, ex: Player starts inside his house, then we go outside to go to the prof. lab. The error cames from outside maps. And i think that it is related with the Vampire birthsign.
    Note that i haven't any pokemon yet and i haven't the birthsign, so how can i fix this?
    The error line is red, so you can find it quickly and the error cames from the main script.
    Thx in advance.


    Code:
    #===============================================================================
    # Birthsign - The Vampire
    # Heals user while walking at night. Harms/Burns user while walking in daylight.
    #===============================================================================
    Events.onStepTakenTransferPossible+=proc {|sender,e|
      handled = e[0]
      next if handled[0]
      if $PokemonGlobal.stepcount%4==0
        flashed = false
        firstpoke=$Trainer.party[0]
        # Harms/Burns the user with each step outside during the day when leading.
        if (PBDayNight.isDay? && pbGetMetadata($game_map.map_id,MetadataOutdoor) &&
           [COLOR="Red"]firstpoke.birthsign==31 && !firstpoke.fainted?)[/COLOR]
          if !flashed
            $game_screen.start_flash(Color.new(255,0,0,128), 4)
            flashed = true
          end
          firstpoke.hp -= 1 if firstpoke.hp>0
          # Immune to Burn effect if the user has the following Abilities/Type
          if (!firstpoke.isConst?(firstpoke.ability,PBAbilities,:WATERVEIL) &&
              !firstpoke.isConst?(firstpoke.ability,PBAbilities,:WATERBUBBLE) &&
              !firstpoke.isConst?(firstpoke.ability,PBAbilities,:COMATOSE) &&
              !firstpoke.pbHasType?(:FIRE))
            firstpoke.status = 3
          end
          if firstpoke.hp==0
            firstpoke.changeHappiness("faint")
            firstpoke.status = 0
            Kernel.pbMessage(_INTL("{1} fainted...",firstpoke.name))
            if defined? pbToggleFollowingPokemon
              $PokemonTemp.dependentEvents.refresh_sprite
            end
          end
          if pbAllFainted
            handled[0] = true
            pbCheckAllFainted
          end
        end
        # Heals all users in the party with each step at night.
        if PBDayNight.isNight?
          for i in $Trainer.ablePokemonParty
            if i.birthsign==31
              i.hp += 2 if i.hp<i.totalhp
              i.status = 0
            end
          end
        end
      end
    }

    births10.png
     
    1,406
    Posts
    10
    Years
    • Seen today
    Hello there!

    After updating birthsigns scripts, i've got an error at the start of the game, ex: Player starts inside his house, then we go outside to go to the prof. lab. The error cames from outside maps. And i think that it is related with the Vampire birthsign.
    Note that i haven't any pokemon yet and i haven't the birthsign, so how can i fix this?
    The error line is red, so you can find it quickly and the error cames from the main script.
    Thx in advance.


    Code:
    #===============================================================================
    # Birthsign - The Vampire
    # Heals user while walking at night. Harms/Burns user while walking in daylight.
    #===============================================================================
    Events.onStepTakenTransferPossible+=proc {|sender,e|
      handled = e[0]
      next if handled[0]
      if $PokemonGlobal.stepcount%4==0
        flashed = false
        firstpoke=$Trainer.party[0]
        # Harms/Burns the user with each step outside during the day when leading.
        if (PBDayNight.isDay? && pbGetMetadata($game_map.map_id,MetadataOutdoor) &&
           [COLOR="Red"]firstpoke.birthsign==31 && !firstpoke.fainted?)[/COLOR]
          if !flashed
            $game_screen.start_flash(Color.new(255,0,0,128), 4)
            flashed = true
          end
          firstpoke.hp -= 1 if firstpoke.hp>0
          # Immune to Burn effect if the user has the following Abilities/Type
          if (!firstpoke.isConst?(firstpoke.ability,PBAbilities,:WATERVEIL) &&
              !firstpoke.isConst?(firstpoke.ability,PBAbilities,:WATERBUBBLE) &&
              !firstpoke.isConst?(firstpoke.ability,PBAbilities,:COMATOSE) &&
              !firstpoke.pbHasType?(:FIRE))
            firstpoke.status = 3
          end
          if firstpoke.hp==0
            firstpoke.changeHappiness("faint")
            firstpoke.status = 0
            Kernel.pbMessage(_INTL("{1} fainted...",firstpoke.name))
            if defined? pbToggleFollowingPokemon
              $PokemonTemp.dependentEvents.refresh_sprite
            end
          end
          if pbAllFainted
            handled[0] = true
            pbCheckAllFainted
          end
        end
        # Heals all users in the party with each step at night.
        if PBDayNight.isNight?
          for i in $Trainer.ablePokemonParty
            if i.birthsign==31
              i.hp += 2 if i.hp<i.totalhp
              i.status = 0
            end
          end
        end
      end
    }

    births10.png

    Good catch. This has been fixed. If you don't want to re-install the entire birthsign script, you can just replace the entire code for 'The Vampire' you posted above with this new one:
    Code:
    #===============================================================================
    # Birthsign - The Vampire
    # Heals user while walking at night. Harms/Burns user while walking in daylight.
    #===============================================================================
    Events.onStepTakenTransferPossible+=proc {|sender,e|
      handled = e[0]
      next if handled[0]
      if $PokemonGlobal.stepcount%4==0
        flashed = false
        firstpoke=$Trainer.party[0]
        if !$Trainer.party.length==0
          # Harms/Burns the user with each step outside during the day when leading.
          if (PBDayNight.isDay? && pbGetMetadata($game_map.map_id,MetadataOutdoor) &&
             firstpoke.birthsign==31 && !firstpoke.fainted?)
            if !flashed
              $game_screen.start_flash(Color.new(255,0,0,128), 4)
              flashed = true
            end
            firstpoke.hp -= 1 if firstpoke.hp>0
            # Immune to Burn effect if the user has the following Abilities/Type
            if (!firstpoke.isConst?(firstpoke.ability,PBAbilities,:WATERVEIL) &&
                !firstpoke.isConst?(firstpoke.ability,PBAbilities,:WATERBUBBLE) &&
                !firstpoke.isConst?(firstpoke.ability,PBAbilities,:COMATOSE) &&
                !firstpoke.pbHasType?(:FIRE))
              firstpoke.status = 3
            end
            if firstpoke.hp==0
              firstpoke.changeHappiness("faint")
              firstpoke.status = 0
              Kernel.pbMessage(_INTL("{1} fainted...",firstpoke.name))
              if defined? pbToggleFollowingPokemon
                $PokemonTemp.dependentEvents.refresh_sprite
              end
            end
            if pbAllFainted
              handled[0] = true
              pbCheckAllFainted
            end
          end
          # Heals all users in the party with each step at night.
          if PBDayNight.isNight?
            for i in $Trainer.ablePokemonParty
              if i.birthsign==31
                i.hp += 1 if i.hp<i.totalhp
                i.status = 0
              end
            end
          end
        end
      end
    }
     
    220
    Posts
    9
    Years
  • Good catch. This has been fixed. If you don't want to re-install the entire birthsign script, you can just replace the entire code for 'The Vampire' you posted above with this new one:
    Code:
    #===============================================================================
    # Birthsign - The Vampire
    # Heals user while walking at night. Harms/Burns user while walking in daylight.
    #===============================================================================
    Events.onStepTakenTransferPossible+=proc {|sender,e|
      handled = e[0]
      next if handled[0]
      if $PokemonGlobal.stepcount%4==0
        flashed = false
        firstpoke=$Trainer.party[0]
        if !$Trainer.party.length==0
          # Harms/Burns the user with each step outside during the day when leading.
          if (PBDayNight.isDay? && pbGetMetadata($game_map.map_id,MetadataOutdoor) &&
             firstpoke.birthsign==31 && !firstpoke.fainted?)
            if !flashed
              $game_screen.start_flash(Color.new(255,0,0,128), 4)
              flashed = true
            end
            firstpoke.hp -= 1 if firstpoke.hp>0
            # Immune to Burn effect if the user has the following Abilities/Type
            if (!firstpoke.isConst?(firstpoke.ability,PBAbilities,:WATERVEIL) &&
                !firstpoke.isConst?(firstpoke.ability,PBAbilities,:WATERBUBBLE) &&
                !firstpoke.isConst?(firstpoke.ability,PBAbilities,:COMATOSE) &&
                !firstpoke.pbHasType?(:FIRE))
              firstpoke.status = 3
            end
            if firstpoke.hp==0
              firstpoke.changeHappiness("faint")
              firstpoke.status = 0
              Kernel.pbMessage(_INTL("{1} fainted...",firstpoke.name))
              if defined? pbToggleFollowingPokemon
                $PokemonTemp.dependentEvents.refresh_sprite
              end
            end
            if pbAllFainted
              handled[0] = true
              pbCheckAllFainted
            end
          end
          # Heals all users in the party with each step at night.
          if PBDayNight.isNight?
            for i in $Trainer.ablePokemonParty
              if i.birthsign==31
                i.hp += 1 if i.hp<i.totalhp
                i.status = 0
              end
            end
          end
        end
      end
    }

    Thx, now it works fine.
     

    Venomous_Zero86

    Pokemon Chosen Ones (Coming Soon)
    120
    Posts
    8
    Years
    • Seen Feb 11, 2022
    i wanted to put in the part of my game that explains birthsign would you mind telling me how i should word it
     

    Venomous_Zero86

    Pokemon Chosen Ones (Coming Soon)
    120
    Posts
    8
    Years
    • Seen Feb 11, 2022
    in a event is the scritp suposse to go like this pokemon.setRandomSign for a random one i keep getting errors
     
    Back
    Top