From 92b845d5b7dd1f73a07ca8bb912065276102662d Mon Sep 17 00:00:00 2001 From: Emo Date: Tue, 4 Mar 2025 17:57:15 -0500 Subject: [PATCH] added scale to 10x (and made default) and scale to 5x at 99) --- .../dialogue/TutorialMagicTutorDialogue.kt | 19 +++++++++++++++---- .../core/game/node/entity/skill/Skills.java | 2 +- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/Server/src/main/content/region/misc/tutisland/dialogue/TutorialMagicTutorDialogue.kt b/Server/src/main/content/region/misc/tutisland/dialogue/TutorialMagicTutorDialogue.kt index ad22acd..1e48f2d 100644 --- a/Server/src/main/content/region/misc/tutisland/dialogue/TutorialMagicTutorDialogue.kt +++ b/Server/src/main/content/region/misc/tutisland/dialogue/TutorialMagicTutorDialogue.kt @@ -44,8 +44,19 @@ class TutorialMagicTutorDialogue(player: Player? = null) : core.game.dialogue.Di Item(557, 4), Item(559, 2) ) - private val STARTER_BANK = arrayOf(Item(995, 25)) - + private val STARTER_BANK = arrayOf(Item(995, 2500)) + // Helper function to convert a numeric XP rate to a descriptive string. + private fun xpRateText(rate: Double): String { + return when(rate) { + 1.0 -> "Normal (100%)" + 2.5 -> "2.5x" + 5.0 -> "5x" + 10.0 -> "10x" + 0.1 -> "Scale up to 10x at level 99" + 0.2 -> "Scale up to 5x at level 99" + else -> "${rate}x" + } + } override fun newInstance(player: Player?): core.game.dialogue.DialoguePlugin { return TutorialMagicTutorDialogue(player) } @@ -92,7 +103,7 @@ class TutorialMagicTutorDialogue(player: Player? = null) : core.game.dialogue.Di 71 -> when(stage) { 0 -> options( "Set Ironman Mode (current: ${player.ironmanManager.mode.name})", - "Change XP Rate (current: ${player.skills.experienceMultiplier}x)", + "Change XP Rate (current: ${xpRateText(player.skills.experienceMultiplier)})", "I'm ready now." ).also { stage++ } 1 -> when(buttonId) { @@ -106,7 +117,7 @@ class TutorialMagicTutorDialogue(player: Player? = null) : core.game.dialogue.Di 2 -> options("1.0x", "Scale to 10x", "Scale to 5x").also { stage = 23 } 3 -> options( "Set Ironman Mode (current: ${player.ironmanManager.mode.name})", - "Change XP Rate (current: ${player.skills.experienceMultiplier}x)", + "Change XP Rate (current: ${xpRateText(player.skills.experienceMultiplier)})", "I'm ready now." ).also { stage = 1 } else -> return false diff --git a/Server/src/main/core/game/node/entity/skill/Skills.java b/Server/src/main/core/game/node/entity/skill/Skills.java index 251ae4d..abe83c2 100644 --- a/Server/src/main/core/game/node/entity/skill/Skills.java +++ b/Server/src/main/core/game/node/entity/skill/Skills.java @@ -41,7 +41,7 @@ public final class Skills { /** * Represents the constant modifier of experience. */ - public double experienceMultiplier = 5.0; + public double experienceMultiplier = 0.1; // Note in EmoScape this sets the default to be the scaling to 10x at 99 /** * The maximum experience multiplier.