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

[Other Tutorial] Ho-oh 112's Poke-Essentials Basic Scripting Tutorial!

Ho-oh 112

Advance Scripter
311
Posts
13
Years
  • Age 28
  • Seen Mar 8, 2014
Ho-oh 112's Poke-Essentials Scripting Tutorial!

Right, so you want to learn some Poke-Essentials scripting? Well, you came to the right place (sorta if you want to learn basics Medium + Advance comming soon....)

Contents


1 Contents
2 Basic Commands
3 Basic Scripts
4 Medium Commands


BEFORE YOU THINK THIS IS COMPLETE IT'S NOT!

Basic Commands
The basics are just adding elements to your game... (the pb stuff)

Kernel.pbMessage(_INTL("Message here")) - Displays a message Via Script.
pbAddPokemon(PBSpecies::PokemonNameHere, Level) - Adds a pokemon and it's level
pbReceiveItem(PBItems::ItemNameHere) - Receive Item
pbItemBall(PBItems::ItemNameHere) - Receive Item (from a pokeball thing)
pbGenerateEgg(PBSpecies::PokemonNameHere) - generates a pokemon egg (PARTY MUST HAVE LESS THAN 6 POKEMON TO RECEIVE)
pbAddForeignPokemon(species,level,ownerName,nickname), Adds a Pokemon owned by someone else

Basic Scripts:

Basic scripts are consisted of stuff you find above + a few more commands, here is a basic script with comments on how it works

def pbGenerateDebugParty # call method, (use pbGenerateDebugParty to activate)
Kernel.pbMessage(_INTL("Giving you your debug party + a random masterball...."))
pbReceiveItem(PBItems::MasterBall) # Adds a master ball
pbAddPokemon(PBSpecies::Mew, PBExperience::MAXLEVEL) # adds a mew at max level
pbAddPokemon(PBSpecies::Mewtwo, PBExperience::MAXLEVEL) # adds a mewtwo at max level
pbAddPokemon(PBSpecies::Deoxys, PBExperience::MAXLEVEL) # adds a Deoxys at max level
pbAddPokemon(PBSpecies::Jirachi, PBExperience::MAXLEVEL) # adds a Jirachi at max level
pbAddPokemon(PBSpecies::Arceus, PBExperience::MAXLEVEL) # adds an Arceus at max level
pbAddPokemon(PBSpecies::Magikarp, 1) # adds a Magikarp at level 1
# NOTE: THESE MAY NEED TO BE CAPITALIZED DEPENDING ON INTERNAL NAME OF POKEMON!!
end # Ends script so it doesn't crash game.

Calling this will give you those 6 pokemon at those levels.


Medium Commands:

Pokemon Creations:
p=PokeBattle_Pokemon.new(specieshere,levelhere,$TrainerIfOwnedByTrainer)
p.makeShiny - makes pokemon shiny
p.makeShadow - makes pokemon shadow
p.moves[0-3] - moves array (0 being first, 1 being second, ect)
p.form - current form
p.gender - current gender
p.isShiny? - returns true if the pokemon is shiny else false
p.isShadow? - returns true if the pokemon is shadow else false
p.abilityflag = 0-2 - (2 being hidden ability)
p.setNature(natureIDhere)
I can go on about the different stats, but you get the idea....

pbAddToParty(p) when you are done to add to party

downloading strings - string=pbDownloadToString(URLHERE)
downloads a string from the url to string

$Trainer - trainer fixnum
$Trainer.party - party pokemon array
$Trainer.party[0-5] - 0 being first, 1 being second, ect
$Trainer.party.length - gets the players party length
$Trainer.name = "Bob" - sets the player's name to Bob


Converting variables to files

File.open('text.txt', 'wb'){|f| - we use wb to write and rb to read....
f.write("Hello, this is a sample text file!!!") - writes what it says inside the ""
} - closes the file

Converting files to strings

File.open('text.txt', 'rb'){|f|
string=f.read - reads the WHOLE text.txt
}

p string - prints out what it says in text.txt

converting strings to variables and then back to a string....
string = "4"
string = string.to_i - .to_i is to interger
string += 50
string.to_s - .to_s is to string

array=[string, string.to_i -= 10] - writes an array
array.pack("M") - does a compile over the strings...

then we can add it to a file
File.open('text.txt', 'wb'){|f|
f.write(array)
}

just so we can load it
File.open('text.txt', 'wb'){|f|
array=f.read
}
array.unpack("M") - uncompiles array

p array - prints out the array....

Medium Scripts comming soon....
 
Last edited:

PiaCRT

[i]Orange Dev[/i]
936
Posts
13
Years
Alright, this is really cool. I'm having trouble making a script to obtain a shiny shroomish from a NPC. I've tried using a switch but it doesn't work. So how would I make a script that is triggered by a switch to give the player a shiny shroomish, yet has a preset nickname?

Thanks,
Pia Carrot
 

Ho-oh 112

Advance Scripter
311
Posts
13
Years
  • Age 28
  • Seen Mar 8, 2014
Alright, this is really cool. I'm having trouble making a script to obtain a shiny shroomish from a NPC. I've tried using a switch but it doesn't work. So how would I make a script that is triggered by a switch to give the player a shiny shroomish, yet has a preset nickname?

Thanks,
Pia Carrot


Common event: Auto run by Switch [switch here]

Script: p = PokeBattle_Pokemon.new(PBSpecies::SHROOMISH, level here)
p.name = "Nickname inside the parentheses"
p.makeShiny
pbAddToParty(p)


switch here == off
 
Back
Top