• 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.
JUST DANCE MINIGAME

v21.1 JUST DANCE MINIGAME 2.5

This resource pertains to version 21.1 of Pokémon Essentials.
Pokémon Essentials Version
v21.1 ✅
Also compatible with
  1. v21.1
A long time ago I started developing a jsut dance mini game to be a challenge for my gym, but due to several problems I left it behind and started working on it again recently thanks to the incredible -FL-.

All documentation, credits, graphics and script can be found in the file download.

In this plugin, we can find 3 modes:

  • A normal mode, where you can configure your own movement sequence.
  • An infinite mode, which records the maximum score the player has ever reached.
  • Asurvival mode that records the time the player continued playing without losing.
In this survival mode, it is possible to create several minigames so that you have several different time records, if you want, by default there are 2, to add more, see the documentation in the plugin/Dance Minigame folder.

See below how it works:

1 - To call the minigame, you will use in an event:

Code:
Expand Collapse Copy
pb Dance Game(ID, BPM)

In BGM Gym, the bpm is around 120, for each bgm you want to put in the minigame, you must discover the bpm, or do tests until you find what you think is best, at the end of the documentation and here, there is a method to discover the bpm.


Difficulty Adjustment
BPMDifficultyNotes
60-80Very EasyGood for beginners
120NormalDefault speed
160+HardChallenging for experts


If you want the music to be faster than the bpm suggests, you can increase the value until it reaches the speed you want, it's a bit annoying, but Pokemon Essentials has its limitations, it was the best I could get.
2 - In the main script, you will find @sequences =

where the minigame ID will be configured, in this configuration you:


  • Give a personalized name, for example the name of the music you added.
  • Create personalized movement sequences.
  • Define a BGM.
  • Define rewards, if you want.
  • Define the number of lives, optional.
  • Define the mode, infinite or survival, if nothing is defined, it will be considered normal.



Code:
Expand Collapse Copy
@sequences = {

        1 => {
          name: "Sequence 1",
          moves: [:up, :up, :up, :up, :left, :down, :right, :left, :left, :down],
          bgm: "Audio/BGM/Gym",
          reward: {
            50 => { type: :item, id: :POTION, quantity: 1 },
            75 => { type: :item, id: :POTION, quantity: 2 },
            90 => { type: :item, id: :SUPERPOTION, quantity: 1 }
          },
          lives: 5
        },
        # an example of a minigame without reward

        2 => {
          name: "Sequence 2",
          moves: [:down, :right, :up, :down, :left],
          bgm: "Audio/BGM/Gym",
          reward: {
          }
        },
        3 => {
          name: "Sequence 3",
          moves: [:down, :right, :up, :down, :left, :up, :left, :down, :right, :left, :left, :down],
          bgm: "Audio/BGM/Gym",
          reward: {
            60 => { type: :item, id: :RARECANDY, quantity: 1 },
            80 => { type: :item, id: :RARECANDY, quantity: 2 },
            95 => { type: :item, id: :PPUP, quantity: 1 }
          }
        },
        4 => {
          name: "Infinite Mode",
          moves: [], # Infinite mode generates its own moves
          bgm: "Audio/BGM/Gym",
          reward: {}, # No rewards or define as desired
          mode: :infinite
        },

        5 => {
          name: "Survival Mode",
          moves: [], # Survival mode generates random moves
          bgm: "Audio/BGM/Gym",
          reward: {
            10 => { type: :item, id: :POTION, quantity: 1 },      # 0-29s
            25 => { type: :item, id: :POKEBALL, quantity: 1 },    # 30s-1:59min
            50 => { type: :item, id: :SUPERPOTION, quantity: 1 }, # 2-3:59min
            75 => { type: :item, id: :HYPERPOTION, quantity: 1 }, # 4-5:59min
            90 => { type: :item, id: :MAXPOTION, quantity: 1 },   # 6-9:59min
            100 => { type: :item, id: :FULLRESTORE, quantity: 1 } # 10+min
          },
          mode: :survival,
          survival_id: 1, # Survival mode ID
          lives: 6
          },

        6 => {
          name: "Survival Mode 2",
          moves: [], # Survival mode generates random moves
          bgm: "Audio/BGM/Gym",
          reward: {
            10 => { type: :item, id: :POTION, quantity: 1 },      # 0-29s
            25 => { type: :item, id: :POKEBALL, quantity: 1 },    # 30s-1:59min
            50 => { type: :item, id: :SUPERPOTION, quantity: 1 }, # 2-3:59min
            75 => { type: :item, id: :HYPERPOTION, quantity: 1 }, # 4-5:59min
            90 => { type: :item, id: :MAXPOTION, quantity: 1 },   # 6-9:59min
            100 => { type: :item, id: :FULLRESTORE, quantity: 1 } # 10+min
          },
          mode: :survival,
          survival_id: 2, # Different ID for another mode
          lives: 4
          }
         }

Variables/Switches Used:

TypeDPurpose
Switch90Forced minigame exi
Variable35Infinite mode high score
Variable36Survival time record (ID 1)
Variable37Survival time record (ID 2)
Warning: Check if these IDs are already being used in your project!


1 - Normal mode: 120 bpm


example of how to do a variable check to use in normal mode for you to use in different types of situations:

page 1:

page 2:

2 - Infinite mode: 240 bpm



to use the score tracker in infinite mode, you use:

Code:
Expand Collapse Copy
pbShowInfiniteScore

3 - Survival mode 1 and 2.

1 > 180 bpm
2 > 360 bpm


To check the time record for a survival minigame, use:

Code:
Expand Collapse Copy
pbSurvivalTimeRecord(x) # For survival mode (where x is survival_id)


❓ How do I find out the bpm?

You can use:
https://vocalremover.org/pt/key-bpm-finder

to identify the bpm of the song, but ATTENTION: it needs to be an mp4 file for the site to identify the bpm, so I recommend copying the music file you want to find out the bpm for, converting it to .mp4 and then uploading it to the site for it to identify.



🚨 Troubleshooting​

Common Issues:

  • Music not playing? Verify file paths
  • Graphics missing? Check Graphics/Minigame/ folder
  • F12 reset bug? Close/reopen game fully
Known Bugs:

  • Speed doubles after F12 reset (temporary workaround: restart game)
Credits
Script:
Rafahbit > https://eeveeexpo.com/members/7537/

honorable mention:
-FL- > https://eeveeexpo.com/members/14189/

Please, if you use the graphics present in the file download, don't forget to address the credits to:

graphics UI > httpsopengameart.orgusersbuch

graphics Bg > <a href='https://pngtree.com/freebackground/...istic-with-laser-grid-background_1177895.html'>free background photos from pngtree.com/</a>

graphics Keys > https://egordorichev.itch.io/key-set
Author
rafahbit
Downloads
17
Views
17
First release
Last update

Ratings

0.00 star(s) 0 ratings

More resources from rafahbit

Latest updates

  1. BPM System Update

    The dance minigame is now more precise and customizable with the integrated BPM (Beats Per...
Back
Top