v1.3.0: various changes to existing badge ranks and requirements

This commit is contained in:
Evan Debenham
2022-04-20 13:10:08 -04:00
parent 4e98ea86da
commit 61c600e433
6 changed files with 91 additions and 95 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@@ -472,7 +472,7 @@ actors.hero.heroclass.rogue_unlock=The Rogue can control the flow of battle and
actors.hero.heroclass.huntress=huntress
actors.hero.heroclass.huntress_desc=The Huntress starts with a _unique spirit bow,_ which can fire an infinite number of conjured arrows.\n\nThe Huntress can travel through tall grass _without trampling it_.\n\nThe Huntress also starts with _studded gloves_, cloth armor, a waterskin, and a velvet pouch.\n\nThe Huntress automatically identifies:\n_-_ Scrolls of Identify\n_-_ Potions of Mind Vision\n_-_ Scrolls of Lullaby
actors.hero.heroclass.huntress_unlock=The Huntress is a master of thrown weapons, and has a _unique magical bow_ with infinite arrows.\n\nTo unlock her _hit 10 different enemies with thrown weapons in one game._
actors.hero.heroclass.huntress_unlock=The Huntress is a master of thrown weapons, and has a _unique magical bow_ with infinite arrows.\n\nTo unlock her _hit enemies with thrown weapons 10 times in one game._
actors.hero.herosubclass.berserker=berserker
actors.hero.herosubclass.berserker_short_desc=The _Berserker_ builds rage as he takes damage. Rage increases his damage, and can let him briefly cheat death.

View File

@@ -1,5 +1,5 @@
badges.endorsed=Badge endorsed: %s
badges.new=Badge unlocked: %s
badges.endorsed=Badge endorsed: %s.
badges.new=Badge unlocked: %s.
badges$badge.monsters_slain_1.title=Novice Monster Hunter
badges$badge.monsters_slain_1.desc=Defeat 10 enemies in one game
badges$badge.monsters_slain_2.title=Adept Monster Hunter
@@ -7,9 +7,9 @@ badges$badge.monsters_slain_2.desc=Defeat 50 enemies in one game
badges$badge.monsters_slain_3.title=Expert Monster Hunter
badges$badge.monsters_slain_3.desc=Defeat 100 enemies in one game
badges$badge.monsters_slain_4.title=Master Monster Hunter
badges$badge.monsters_slain_4.desc=Defeat 200 enemies in one game
badges$badge.monsters_slain_4.desc=Defeat 250 enemies in one game
badges$badge.monsters_slain_5.title=Grandmaster Monster Hunter
badges$badge.monsters_slain_5.desc=Defeat 300 enemies in one game
badges$badge.monsters_slain_5.desc=Defeat 500 enemies in one game
badges$badge.gold_collected_1.title=Novice Treasure Hunter
badges$badge.gold_collected_1.desc=Collect 250 gold in one game
badges$badge.gold_collected_2.title=Adept Treasure Hunter
@@ -17,9 +17,9 @@ badges$badge.gold_collected_2.desc=Collect 1000 gold in one game
badges$badge.gold_collected_3.title=Expert Treasure Hunter
badges$badge.gold_collected_3.desc=Collect 2500 gold in one game
badges$badge.gold_collected_4.title=Master Treasure Hunter
badges$badge.gold_collected_4.desc=Collect 5000 gold in one game
badges$badge.gold_collected_4.desc=Collect 7500 gold in one game
badges$badge.gold_collected_5.title=Grandmaster Treasure Hunter
badges$badge.gold_collected_5.desc=Collect 10,000 gold in one game
badges$badge.gold_collected_5.desc=Collect 15,000 gold in one game
badges$badge.level_reached_1.title=Novice Adventurer
badges$badge.level_reached_1.desc=Reach level 6
badges$badge.level_reached_2.title=Adept Adventurer
@@ -111,15 +111,15 @@ badges$badge.victory_all_classes.desc=Obtain the Amulet of Yendor with the Warri
badges$badge.mastery_combo.title=Gladiator's Fury
badges$badge.mastery_combo.desc=Reach a 10-hit combo
badges$badge.items_crafted_1.title=Novice Alchemist
badges$badge.items_crafted_1.desc=Craft 5 items via alchemy in one game
badges$badge.items_crafted_1.desc=Craft 3 items via alchemy in one game
badges$badge.items_crafted_2.title=Adept Alchemist
badges$badge.items_crafted_2.desc=Craft 10 items via alchemy in one game
badges$badge.items_crafted_2.desc=Craft 8 items via alchemy in one game
badges$badge.items_crafted_3.title=Expert Alchemist
badges$badge.items_crafted_3.desc=Craft 15 items via alchemy in one game
badges$badge.items_crafted_4.title=Master Alchemist
badges$badge.items_crafted_4.desc=Craft 20 items via alchemy in one game
badges$badge.items_crafted_4.desc=Craft 24 items via alchemy in one game
badges$badge.items_crafted_5.title=Grandmaster Alchemist
badges$badge.items_crafted_5.desc=Craft 25 items via alchemy in one game
badges$badge.items_crafted_5.desc=Craft 35 items via alchemy in one game
badges$badge.no_monsters_slain.title=Pacifist
badges$badge.no_monsters_slain.desc=Complete a Floor without defeating any enemies
badges$badge.grim_weapon.title=Grim Reaper
@@ -129,13 +129,13 @@ badges$badge.piranhas.desc=Kill 6 piranhas in one game
badges$badge.games_played_1.title=Novice Dungeoneer
badges$badge.games_played_1.desc=Play 10 games or win 1 game
badges$badge.games_played_2.title=Adept Dungeoneer
badges$badge.games_played_2.desc=Play 50 games or win 5 games
badges$badge.games_played_2.desc=Play 25 games or win 3 games
badges$badge.games_played_3.title=Expert Dungeoneer
badges$badge.games_played_3.desc=Play 100 games or win 10 games
badges$badge.games_played_3.desc=Play 50 games or win 5 games
badges$badge.games_played_4.title=Master Dungeoneer
badges$badge.games_played_4.desc=Play 250 games or win 25 games
badges$badge.games_played_4.desc=Play 100 games or win 10 games
badges$badge.games_played_5.title=Grandmaster Dungeoneer
badges$badge.games_played_5.desc=Play 1000 games or win 100 games
badges$badge.games_played_5.desc=Play 250 games or win 25 games
badges$badge.happy_end.title=Happy Ending
badges$badge.happy_end.desc=Take the Amulet of Yendor to the surface
badges$badge.champion_1.title=Bronze Champion
@@ -149,7 +149,7 @@ badges$badge.unlock_mage.desc=Unlock the Mage by using a scroll of upgrade
badges$badge.unlock_rogue.title=Rogue Unlocked!
badges$badge.unlock_rogue.desc=Unlock the Rogue by performing 10 surprise attacks in one game
badges$badge.unlock_huntress.title=Huntress Unlocked!
badges$badge.unlock_huntress.desc=Unlock the Huntress by attacking 10 enemies with thrown weapons in one game
badges$badge.unlock_huntress.desc=Unlock the Huntress by hitting enemies with thrown weapons 10 times in one game
challenges.no_food=On diet
challenges.no_food_desc=Food's already scarce, but you have to watch your portions as well!\n\n- Food and the horn of plenty are one third as effective at satisfying hunger\n- Other sources of satiety are unaffected

View File

@@ -75,61 +75,71 @@ public class Badges {
//silver
NO_MONSTERS_SLAIN ( 32 ),
GRIM_WEAPON ( 33 ),
MONSTERS_SLAIN_3 ( 34 ),
MONSTERS_SLAIN_4 ( 35 ),
GOLD_COLLECTED_3 ( 36 ),
GOLD_COLLECTED_4 ( 37 ),
ITEM_LEVEL_2 ( 38 ),
ITEM_LEVEL_3 ( 39 ),
LEVEL_REACHED_2 ( 40 ),
LEVEL_REACHED_3 ( 41 ),
STRENGTH_ATTAINED_2 ( 42 ),
STRENGTH_ATTAINED_3 ( 43 ),
FOOD_EATEN_2 ( 44 ),
FOOD_EATEN_3 ( 45 ),
ITEMS_CRAFTED_2 ( 46 ),
ITEMS_CRAFTED_3 ( 47 ),
BOSS_SLAIN_2 ( 48 ),
BOSS_SLAIN_3 ( 49 ),
ALL_POTIONS_IDENTIFIED ( 50 ),
ALL_SCROLLS_IDENTIFIED ( 51 ),
DEATH_FROM_GLYPH ( 52 ),
MONSTERS_SLAIN_3 ( 33 ),
MONSTERS_SLAIN_4 ( 34 ),
GOLD_COLLECTED_3 ( 35 ),
GOLD_COLLECTED_4 ( 36 ),
ITEM_LEVEL_2 ( 37 ),
ITEM_LEVEL_3 ( 38 ),
LEVEL_REACHED_2 ( 39 ),
LEVEL_REACHED_3 ( 40 ),
STRENGTH_ATTAINED_2 ( 41 ),
STRENGTH_ATTAINED_3 ( 42 ),
FOOD_EATEN_2 ( 43 ),
FOOD_EATEN_3 ( 44 ),
ITEMS_CRAFTED_2 ( 45 ),
ITEMS_CRAFTED_3 ( 46 ),
BOSS_SLAIN_2 ( 47 ),
BOSS_SLAIN_3 ( 48 ),
ALL_POTIONS_IDENTIFIED ( 49 ),
ALL_SCROLLS_IDENTIFIED ( 50 ),
DEATH_FROM_GLYPH ( 51 ),
BOSS_SLAIN_1_WARRIOR,
BOSS_SLAIN_1_MAGE,
BOSS_SLAIN_1_ROGUE,
BOSS_SLAIN_1_HUNTRESS,
BOSS_SLAIN_1_ALL_CLASSES ( 53, true ),
GAMES_PLAYED_2 ( 54, true ),
BOSS_SLAIN_1_ALL_CLASSES ( 52, true ),
GAMES_PLAYED_2 ( 53, true ),
//gold
PIRANHAS ( 64 ),
GRIM_WEAPON ( 65 ),
BAG_BOUGHT_VELVET_POUCH,
BAG_BOUGHT_SCROLL_HOLDER,
BAG_BOUGHT_POTION_BANDOLIER,
BAG_BOUGHT_MAGICAL_HOLSTER,
ALL_BAGS_BOUGHT ( 65 ),
MASTERY_COMBO ( 66 ),
MONSTERS_SLAIN_5 ( 67 ),
GOLD_COLLECTED_5 ( 68 ),
ITEM_LEVEL_4 ( 69 ),
ITEM_LEVEL_5 ( 70 ),
ALL_BAGS_BOUGHT ( 66 ),
MASTERY_COMBO ( 67 ),
MONSTERS_SLAIN_5 ( 68 ),
GOLD_COLLECTED_5 ( 69 ),
ITEM_LEVEL_4 ( 70 ),
LEVEL_REACHED_4 ( 71 ),
LEVEL_REACHED_5 ( 72 ),
STRENGTH_ATTAINED_4 ( 73 ),
STRENGTH_ATTAINED_5 ( 74 ),
FOOD_EATEN_4 ( 75 ),
FOOD_EATEN_5 ( 76 ),
ITEMS_CRAFTED_4 ( 77 ),
ITEMS_CRAFTED_5 ( 78 ),
BOSS_SLAIN_4 ( 79 ),
ALL_WEAPONS_IDENTIFIED ( 80 ),
ALL_ARMOR_IDENTIFIED ( 81 ),
ALL_WANDS_IDENTIFIED ( 82 ),
ALL_RINGS_IDENTIFIED ( 83 ),
ALL_ARTIFACTS_IDENTIFIED ( 84 ),
VICTORY ( 85 ),
YASD ( 86, true ),
STRENGTH_ATTAINED_4 ( 72 ),
STRENGTH_ATTAINED_5 ( 73 ),
FOOD_EATEN_4 ( 74 ),
FOOD_EATEN_5 ( 75 ),
ITEMS_CRAFTED_4 ( 76 ),
ITEMS_CRAFTED_5 ( 77 ),
BOSS_SLAIN_4 ( 78 ),
ALL_RINGS_IDENTIFIED ( 79 ),
ALL_ARTIFACTS_IDENTIFIED ( 80 ),
VICTORY ( 81 ),
GAMES_PLAYED_3 ( 82, true ),
//platinum
ITEM_LEVEL_5 ( 96 ),
LEVEL_REACHED_5 ( 97 ),
HAPPY_END ( 98 ),
ALL_WEAPONS_IDENTIFIED ( 99 ),
ALL_ARMOR_IDENTIFIED ( 100 ),
ALL_WANDS_IDENTIFIED ( 101 ),
ALL_ITEMS_IDENTIFIED ( 102, true ),
VICTORY_WARRIOR,
VICTORY_MAGE,
VICTORY_ROGUE,
VICTORY_HUNTRESS,
VICTORY_ALL_CLASSES ( 103, true ),
YASD ( 104, true ),
BOSS_SLAIN_3_GLADIATOR,
BOSS_SLAIN_3_BERSERKER,
BOSS_SLAIN_3_WARLOCK,
@@ -138,19 +148,9 @@ public class Badges {
BOSS_SLAIN_3_ASSASSIN,
BOSS_SLAIN_3_SNIPER,
BOSS_SLAIN_3_WARDEN,
BOSS_SLAIN_3_ALL_SUBCLASSES ( 87, true ),
GAMES_PLAYED_3 ( 88, true ),
//platinum
HAPPY_END ( 96 ),
ALL_ITEMS_IDENTIFIED ( 97, true ),
VICTORY_WARRIOR,
VICTORY_MAGE,
VICTORY_ROGUE,
VICTORY_HUNTRESS,
VICTORY_ALL_CLASSES ( 98, true ),
GAMES_PLAYED_4 ( 99, true ),
CHAMPION_1 ( 100 ),
BOSS_SLAIN_3_ALL_SUBCLASSES ( 105, true ),
GAMES_PLAYED_4 ( 106, true ),
CHAMPION_1 ( 107 ),
//diamond
GAMES_PLAYED_5 ( 112, true ),
@@ -303,11 +303,11 @@ public class Badges {
badge = Badge.MONSTERS_SLAIN_3;
local.add( badge );
}
if (!local.contains( Badge.MONSTERS_SLAIN_4 ) && Statistics.enemiesSlain >= 200) {
if (!local.contains( Badge.MONSTERS_SLAIN_4 ) && Statistics.enemiesSlain >= 250) {
badge = Badge.MONSTERS_SLAIN_4;
local.add( badge );
}
if (!local.contains( Badge.MONSTERS_SLAIN_5 ) && Statistics.enemiesSlain >= 300) {
if (!local.contains( Badge.MONSTERS_SLAIN_5 ) && Statistics.enemiesSlain >= 500) {
badge = Badge.MONSTERS_SLAIN_5;
local.add( badge );
}
@@ -330,11 +330,11 @@ public class Badges {
badge = Badge.GOLD_COLLECTED_3;
local.add( badge );
}
if (!local.contains( Badge.GOLD_COLLECTED_4 ) && Statistics.goldCollected >= 5000) {
if (!local.contains( Badge.GOLD_COLLECTED_4 ) && Statistics.goldCollected >= 7500) {
badge = Badge.GOLD_COLLECTED_4;
local.add( badge );
}
if (!local.contains( Badge.GOLD_COLLECTED_5 ) && Statistics.goldCollected >= 10_000) {
if (!local.contains( Badge.GOLD_COLLECTED_5 ) && Statistics.goldCollected >= 15_000) {
badge = Badge.GOLD_COLLECTED_5;
local.add( badge );
}
@@ -426,11 +426,11 @@ public class Badges {
public static void validateItemsCrafted() {
Badge badge = null;
if (!local.contains( Badge.ITEMS_CRAFTED_1 ) && Statistics.itemsCrafted >= 5) {
if (!local.contains( Badge.ITEMS_CRAFTED_1 ) && Statistics.itemsCrafted >= 3) {
badge = Badge.ITEMS_CRAFTED_1;
local.add( badge );
}
if (!local.contains( Badge.ITEMS_CRAFTED_2 ) && Statistics.itemsCrafted >= 10) {
if (!local.contains( Badge.ITEMS_CRAFTED_2 ) && Statistics.itemsCrafted >= 8) {
badge = Badge.ITEMS_CRAFTED_2;
local.add( badge );
}
@@ -438,11 +438,11 @@ public class Badges {
badge = Badge.ITEMS_CRAFTED_3;
local.add( badge );
}
if (!local.contains( Badge.ITEMS_CRAFTED_4 ) && Statistics.itemsCrafted >= 20) {
if (!local.contains( Badge.ITEMS_CRAFTED_4 ) && Statistics.itemsCrafted >= 24) {
badge = Badge.ITEMS_CRAFTED_4;
local.add( badge );
}
if (!local.contains( Badge.ITEMS_CRAFTED_5 ) && Statistics.itemsCrafted >= 25) {
if (!local.contains( Badge.ITEMS_CRAFTED_5 ) && Statistics.itemsCrafted >= 35) {
badge = Badge.ITEMS_CRAFTED_5;
local.add( badge );
}
@@ -755,7 +755,7 @@ public class Badges {
}
public static void validateHuntressUnlock(){
if (Statistics.thrownAssists >= 10 && !isUnlocked(Badge.UNLOCK_HUNTRESS)){
if (Statistics.thrownAttacks >= 10 && !isUnlocked(Badge.UNLOCK_HUNTRESS)){
displayBadge( Badge.UNLOCK_HUNTRESS );
}
}
@@ -821,16 +821,16 @@ public class Badges {
if (Rankings.INSTANCE.totalNumber >= 10 || Rankings.INSTANCE.wonNumber >= 1) {
badge = Badge.GAMES_PLAYED_1;
}
if (Rankings.INSTANCE.totalNumber >= 50 || Rankings.INSTANCE.wonNumber >= 5) {
if (Rankings.INSTANCE.totalNumber >= 25 || Rankings.INSTANCE.wonNumber >= 3) {
badge = Badge.GAMES_PLAYED_2;
}
if (Rankings.INSTANCE.totalNumber >= 100 || Rankings.INSTANCE.wonNumber >= 10) {
if (Rankings.INSTANCE.totalNumber >= 50 || Rankings.INSTANCE.wonNumber >= 5) {
badge = Badge.GAMES_PLAYED_3;
}
if (Rankings.INSTANCE.totalNumber >= 250 || Rankings.INSTANCE.wonNumber >= 25) {
if (Rankings.INSTANCE.totalNumber >= 100 || Rankings.INSTANCE.wonNumber >= 10) {
badge = Badge.GAMES_PLAYED_4;
}
if (Rankings.INSTANCE.totalNumber >= 1000 || Rankings.INSTANCE.wonNumber >= 100) {
if (Rankings.INSTANCE.totalNumber >= 250 || Rankings.INSTANCE.wonNumber >= 25) {
badge = Badge.GAMES_PLAYED_5;
}

View File

@@ -36,7 +36,7 @@ public class Statistics {
//used for hero unlock badges
public static int upgradesUsed;
public static int sneakAttacks;
public static int thrownAssists;
public static int thrownAttacks;
public static int spawnersAlive;
@@ -59,7 +59,7 @@ public class Statistics {
upgradesUsed = 0;
sneakAttacks = 0;
thrownAssists = 0;
thrownAttacks = 0;
spawnersAlive = 0;
@@ -102,7 +102,7 @@ public class Statistics {
bundle.put( UPGRADES, upgradesUsed );
bundle.put( SNEAKS, sneakAttacks );
bundle.put( THROWN, thrownAssists );
bundle.put( THROWN, thrownAttacks);
bundle.put( SPAWNERS, spawnersAlive );
@@ -124,7 +124,7 @@ public class Statistics {
upgradesUsed = bundle.getInt( UPGRADES );
sneakAttacks = bundle.getInt( SNEAKS );
thrownAssists = bundle.getInt( THROWN );
thrownAttacks = bundle.getInt( THROWN );
spawnersAlive = bundle.getInt( SPAWNERS );

View File

@@ -576,16 +576,12 @@ public abstract class Mob extends Char {
}
}
protected boolean hitWithRanged = false;
@Override
public int defenseProc( Char enemy, int damage ) {
if (enemy instanceof Hero
&& ((Hero) enemy).belongings.weapon() instanceof MissileWeapon
&& !hitWithRanged){
hitWithRanged = true;
Statistics.thrownAssists++;
&& ((Hero) enemy).belongings.weapon() instanceof MissileWeapon){
Statistics.thrownAttacks++;
Badges.validateHuntressUnlock();
}