Leaderboard 3D (cliff notes for Tycoon) - using the official package [Game Creation: Tycoon youtube video]

Leaderboard 3D (cliff notes for Tycoon)

  • using the official package

Tycoon / Adventure (Most Money)

ref: Game Creation: Tycoon

  • Leaderboard 3D install starts at 30min mark
  • table titles link to video time url


Header Actions
Leaderboard 3D Install
ScoreTracker Install
Leaderboard Drop template into world
Leaderboard modify leaderboardScript Properties
GameTab add and match leaderboardScript Properties
User ScoreTracker add script folder to user
ScoreTrackerScript Add line to update leaderboard
Player ShopViewScript Add line to update score

Install Leaderboard 3D top

  • install
  • from templates, drag and drop into the world

Leaderboard top

leaderboardScript Properties top

  • scorelsTime = (no check)
    • used for time decimals of seconds
    • not used for tycoon or adventure money
  • leaderboard name = mostMoney
  • leaderboard title = Most Money Earned
  • maxEntries = 10
  • noEntriesMade = No Entries…
    (default text to display if no entries in leaderboard)

Game Tab Leaderboards top

  • leadboard name - mostMoney
  • ordering = highest value is best
  • score type = number
  • note: video url is using old leaderboard

Additional Logic

  • not included in package
  • needed to add data to leaderboard
  • track previous score in game
  • need to be done on user

One example using Score Tracker Package

Install Score Tracker top

User Template: Score Tracker Script Folder top

ScoreTrackerScript Modification for Leaderboards top

  • provides a way to
    • save/load the total money earned (the score)
    • update the leaderboard
  • done on the user

api (for reference only)

-- api
self:GetEntity():SetLeaderboardValue(sting leaderboardName, number value)

add… line 38

self:GetEntity():SetLeaderboardValue("mostMoney", self.properties.score)


Player ShopView

  • using SendToScripts
  • one line to update the score

shopViewScript Modification for ScoreTrackerScript top

  • add the following line 121
  • under OnSellItem(itemTemplate, count)
self:GetEntity():GetUser():SendToScripts("AddScore", count * inventorySellableProperties.sellPrice)

40:15 is last mark of time for this in video