EasyLeaderboard

by garrett_makes

17

EasyLeaderboard + Godot 4

EasyLeaderboard + Godot

Add a leaderboard to your game in under 10 minutes!

🏃 Ready to go game clients make adding a leaderboard quick and easy

🕵️ Extendable score validation system to protect against cheaters

👨‍💻 Open source and easily setup for custom implementations

💸 Optional free-hosting provided at https://lb.userdefined.io by User Defined

Table of Contents

🔧 How to install

  1. Download the latest version from the Releases page
  2. Extract the contents of the zip
  3. Copy the /addons folder into your Godot Project root
  4. Open Godot
  5. Go to Project Settings, then the Plugins tab
  6. Check the enable box next to the EasyLeaderboard plugin

You should now see EasyLeaderboard as an optional node!

For the drop-in leaderboard, instantiate a child scene and select the scene found at /addons/easyleaderboard/leaderboard/Leaderboard.tscn

📦 What's included

Drop-in Ready Leadboard

image

Found under addons/easyleaderboard/leaderboard/Leaderboard.tscn

Instantiate this scene in your game and set the game name for the quickest leaderboard setup!! (game jammers thats for you!)

This scene will automatically use an EasyLeaderboard API node underneath.

You can pass in a custom row scene for it to use if you want to further customize the rows with things such as metadata parsing for game stats.

There are a number of other configuration options you can play with such as showing different buttons and number of results per page.

Connect to the main menu and new game button signals to handle when those are pressed!


Score Submission Modal

Found under /addons/easyleaderboard/leaderboard/LeaderboardScoreSubmitPanel.tscn

You can add this scene by using the instantiate child scene option, and selecting the scene.

An EasyLeaderboard API nodepath must be provided for the modal to use for submitting scores.

Other information can be passed to the scene to pre-populate fields such as score and enable things like a cancel button.


EasyLeaderboard API node

Found under addons/easyleaderboard/api/EasyLeaderboard.gd

This scene can be used to directly interact with the Easy Leaderboard API.

Connect into the provided signals to handle when scores are submitted or results are retrieved.

💻 API Configuration

Using the User Defined hosted solution

Default validation system

You can opt-in to the default validation logic by appending "basic-validation" to your game's key name.

For example, if your game's key name is garretts-game, the score will not be validated at all.

If you change the key to garretts-game-basic-validation then the score will undergo so generic validation to check for tampering!

If you want more robust validation, see below!

See how to self-host here (supports custom validation/anti-cheat!)

📋 Leaderboards Made With This

Planet Jumpers

Uses the metadata attribute to store player run information including their place of death, then shows it on the leaderboard!

Last Breath

Shows a traditional arcade style score and includes the RNG seed and name of cave.

Tribulation

Shows a traditional arcade style score.

Speed Blocks

Shows highest scores along with metadata about each score like max multiplier, total blocks placed, and average time to place a block.

This game also uses metadata from the gameplay with a custom validator to prevent cheating!

Glitch Sweeper

Shows top 10 fastest times to clear the board

Version

1.0.0

Engine

3.5

Category

Templates

Download

Version1.0.0
Download Now

Support

If you need help or have questions about this plugin, please contact the author.

Contact Author