• Do not use Discord to host any images you post, these links expire quickly! You can learn how to add images to your posts here.
  • Apologies if you've had troubles connecting to the site, you may need a VPN to access it. Staff are also facing issues connecting, so if it's urgent please message Cat on-site or through Discord directly.
  • Hey Guest, staff applications are open! If you are interested in becoming a forum staff member and/or Discord staff member, please apply through this Google Form before April 2! You can also message Cat with any questions.
Achievements System

Resource Achievements System v1.0

Mega Mewthree

Pokémon: The World Remade Creator (In Development)
Member
Joined
Aug 15, 2017
Posts
3
Mega Mewthree submitted a new resource:

Achievements System - This adds an achievements system to Pokémon Essentials.

This adds an achievements system to Pokémon Essentials.
unknown.png



Please read "README.txt" for instructions.

Download link: https://drive.google.com/open?id=0B0xgmk4oXwNRVHJPSUNZNFdwZ28

Not tested in Essentials v17.​


Read more about this resource...------------------------Please tell me if this works in v17 or not!
 

sprout

Rookie
Member
Joined
Aug 24, 2017
Posts
3
I get this error after taking a single step in a fresh install of Essentials (I'm using v16.2). I put each script exactly where instructed.


Exception: NoMethodError

Message: undefined method `[]' for nil:NilClass

Achievements_Script:140:in `setProgress'

Achievements_Update:26

Achievements_Update:24:in `call'

Event:54:in `trigger'

Event:49:in `each'

Event:49:in `trigger'

PField_Field:1392:in `pbOnStepTaken'

Game_Player:484:in `update_old'

Walk_Run:76:in `follow_update'

EDIT: I realize this error should technically occur, but it seems inconvinient to have to save immediately in order to play. Is there any way to avoid this error? Thanks.
 
Last edited:

Wiispeed03

Novice
Member
Joined
Feb 26, 2018
Posts
47
Hey, I know this is old, but I really love this system, and I just thought I would add a few enhancements I made and show them off here for anyone to use.
I wanted to add rewards after each level of the achievement was completed. You start out by adding this:
Code:
Expand Collapse Copy
"POKEMON_CAUGHT"=>{
      "id"=>2,
      "name"=>"Gotta Catch 'Em All",
      "description"=>"Catch Pokémon. Reward: Pokeballs",
      "goals"=>[50,150,500],
      "rewards"=>["QUICKBALL","ULTRABALL","MASTERBALL"],     #Add this line
      "rewardamount"=>[20,50,1]                              #Add this line
    },

Then you just simply add this in def self.checkIfLevelUp(name):
Code:
Expand Collapse Copy
if level>$achievements[name]["level"]
          $achievements[name]["level"]=level
          self.queueMessage(_INTL("Achievement Reached!\n{1} Level {2}",@achievementList[name]["name"],level.to_s))
          pbWait(10)                                                                                                           #Add this line
          Kernel.pbReceiveItem(@achievementList[name]["rewards"][level-1],@achievementList[name]["rewardamount"][level-1])     #Add this line
          return true
        else
          return false
        end

This isn't really a big deal or anything, and it could definitely be improved upon, but I hope it's useful to anybody wanting an achievement system in their game!

(Also still haven't figured out how to fix that error that constantly happens every save file, so if anybody has a solution to that, let me know!)
 
Back
Top