The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > Create & Discover > Game Development > Scripts & Tutorials
Reload this Page Essentials Script Simple Level Modifier
Sign Up Rules/FAQ Daily Battle Blogs Mark Forums Read


Scripts & Tutorials This forum is for scripts and code, as well as all kinds of tutorials, software, tools and so forth. Remember to give credit!
The thread revival limit does not apply here.

Reply
 
Thread Tools
  #1    
Old March 18th, 2011 (3:44 AM).
Luka S.J.'s Avatar
Luka S.J. Luka S.J. is offline
Jealous Croatian
 
Join Date: Dec 2008
Location: Croatia
Age: 23
Gender: Male
Nature: Adamant
Posts: 1,056
Are you making your Pokemon game with RMXP and P.Essentials? Do you have loads of rebattles with the same trainer, where the trainer might have the same Pokemon, but they'd just be a different level? Or do you want to be able to rebattle a trainer, and have their Pokemon become stronger or weaker without creating a new PBS entry? There is a very simple solution for you, and it goes like this. Go to PokemonUtilities script and anywhere (outside a def of course) place the following code:
Code:
def pbLevelModifier(type,factor=1)
  @levels=[]
  i=0
  ($Trainer.party.length).times do
    @levels.push($Trainer.party[i].level)
    i+=1
  end
  
  @[email protected]
  @sum=$Trainer.party[0].level
  
  i=1
  ($Trainer.party.length-1).times do
    @sum+=$Trainer.party[i].level
    i+=1
  end
  
  @[email protected]/($Trainer.party.length)
  
    if type=="max"
      [email protected]*factor
    elsif type=="avg"
      [email protected]*factor
    end
  return level
end
The way you would use this is as follows: When creating a wild Pokemon Battle
Code:
pbWildBattle(species, pbLevelModifier(type,factor))
Where type should either be "max" (to find the highest party level) or "avg" (to find the average party level). Quotation marks around the types are needed! The factor value is optional if wanting to multiply the returned level by the factor percentage (where 0.01 is 1% and 1.00 is 100%)
If you'd like to place it within trainer battles, you'll have to go into PokemonTrainers, and replace
Code:
    level=poke[1]
by
Code:
if $game_switches[X]==true
    level=pbLevelModifier(type,factor)
  else
    level=poke[1]
  end
Where the switch X would be your trigger for level calculations. You can play around with the scripts to adjust it any way you want, but this is just a very basic method to return either the maximum level, or the average level.
Reply With Quote

Relevant Advertising!

  #2    
Old March 18th, 2011 (12:24 PM).
IceGod64's Avatar
IceGod64 IceGod64 is offline
My imagination.
 
Join Date: Oct 2008
Location: Castelia City
Age: 28
Gender: Male
Nature: Naive
Posts: 610
Wow, this will be incredibly handy! I'm going to add it to my game, with well deserved credit of course.
__________________

Reply With Quote
  #3    
Old March 20th, 2011 (7:16 AM).
zingzags's Avatar
zingzags zingzags is offline
PokemonGDX creator
 
Join Date: Jan 2009
Location: Boston
Age: 22
Nature: Adamant
Posts: 562
Simple easy, and requires less work to do re-battles, good work Luka.
__________________
Check out the Pokemon Game Engine I am working on:
https://github.com/sjosegarcia/Pokemon
Reply With Quote
  #4    
Old March 20th, 2011 (9:25 AM).
Luka S.J.'s Avatar
Luka S.J. Luka S.J. is offline
Jealous Croatian
 
Join Date: Dec 2008
Location: Croatia
Age: 23
Gender: Male
Nature: Adamant
Posts: 1,056
Another thing would be random ranges for NPC wild battles and/or trainers
Code:
def pbLevelRange(min,max)
  difference=max-min
  level=rand(difference+1)
  level+=min
  return level
end
min would be the lowest possible level, and max would be the highest possible level that the Pokemon could reach. Where it falls between that line, is completely random.
Reply With Quote
  #5    
Old May 27th, 2016 (4:34 PM).
UchihaBruno123's Avatar
UchihaBruno123 UchihaBruno123 is offline
 
Join Date: Apr 2016
Posts: 8
the script works fine,thank you
Reply With Quote
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 6:24 PM.


Style by Nymphadora, artwork by Sa-Dui.
Like our Facebook Page Follow us on Twitter © 2002 - 2016 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2016 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.

Acknowledgements
Use of PokéCommunity Assets
vB Optimise by DragonByte Technologies Ltd © 2016.