diff --git a/js/config.js b/js/config.js
index 16e0c23..0934d1b 100644
--- a/js/config.js
+++ b/js/config.js
@@ -36,26 +36,26 @@ var CONFIG = {
COMET_BASE_COST: 1e7,
PLANET_BASE_COST: 1e24,
GIANT_BASE_COST: 1e27,
- MTYPE_BASE_COST: 1e29,
- KTYPE_BASE_COST: 1e30,
- GTYPE_BASE_COST: 1e31,
+ MTYPE_BASE_COST: 1e28,
+ KTYPE_BASE_COST: 1e29,
+ GTYPE_BASE_COST: 1e30,
// Upgrade scaling
UPGRADE_COST_MULTIPLIER_ASTER: 1.25,
UPGRADE_COST_MULTIPLIER_COMET: 1.5,
UPGRADE_COST_MULTIPLIER_PLANT: 1.75,
- UPGRADE_COST_MULTIPLIER_GIANT: 2,
- UPGRADE_COST_MULTIPLIER_MTYPE: 2.1,
- UPGRADE_COST_MULTIPLIER_KTYPE: 2.2,
- UPGRADE_COST_MULTIPLIER_GTYPE: 2.3,
+ UPGRADE_COST_MULTIPLIER_GIANT: 1.875,
+ UPGRADE_COST_MULTIPLIER_MTYPE: 2,
+ UPGRADE_COST_MULTIPLIER_KTYPE: 2,
+ UPGRADE_COST_MULTIPLIER_GTYPE: 2,
UPGRADE_BONUS_PER_LEVEL_ASTER: 0.1,
UPGRADE_BONUS_PER_LEVEL_COMET: 0.1,
- UPGRADE_BONUS_PER_LEVEL_PLANT: 0.05,
- UPGRADE_BONUS_PER_LEVEL_GIANT: 0.03,
- UPGRADE_BONUS_PER_LEVEL_MTYPE: 0.03,
- UPGRADE_BONUS_PER_LEVEL_KTYPE: 0.03,
- UPGRADE_BONUS_PER_LEVEL_GTYPE: 0.03,
+ UPGRADE_BONUS_PER_LEVEL_PLANT: 0.07,
+ UPGRADE_BONUS_PER_LEVEL_GIANT: 0.05,
+ UPGRADE_BONUS_PER_LEVEL_MTYPE: 0.09,
+ UPGRADE_BONUS_PER_LEVEL_KTYPE: 0.09,
+ UPGRADE_BONUS_PER_LEVEL_GTYPE: 0.09,
// Asteroid spawn patterns
ASTEROID_SPAWN_PATTERNS: {
@@ -72,19 +72,23 @@ var CONFIG = {
giant: [1e26, 1e28], // Gas & Ice Giants
mtype: [1.589e29, 8.95e29],// M-Type: 0.08-0.45 M☉
ktype: [8.95e29, 1.59e30], // K-Type: 0.45-0.8 M☉
- gtype: [1.59e30, 2.07e30] // K-Type: 0.8-1.04 M☉
+ gtype: [1.59e30, 2.07e30] // G-Type: 0.8-1.04 M☉
},
+ // Star-tier spawn rate bonuses (applied to all lower tiers)
+ MTYPE_SPAWN_BOOST_PER_LEVEL: 0.03, // 3% per level
+ KTYPE_SPAWN_BOOST_PER_LEVEL: 0.04, // 4% per level
+ GTYPE_SPAWN_BOOST_PER_LEVEL: 0.05, // 5% per level
// Visual Sizes
VISUAL_SIZE_SMALL: 1,
- VISUAL_SIZE_MEDIUM: 2,
+ VISUAL_SIZE_MDIUM: 2,
VISUAL_SIZE_LARGE: 3,
VISUAL_SIZE_COMET: 3,
VISUAL_SIZE_PLANT: 5,
VISUAL_SIZE_GIANT: 8,
VISUAL_SIZE_MTYPE: 12,
- VISUAL_SIZE_KTYPE: 14,
- VISUAL_SIZE_GTYPE: 16,
+ VISUAL_SIZE_KTYPE: 13,
+ VISUAL_SIZE_GTYPE: 14,
// Planet color schemes
PLANET_COLORS: [
diff --git a/js/entities.js b/js/entities.js
index fdc6cb5..d195b65 100644
--- a/js/entities.js
+++ b/js/entities.js
@@ -239,7 +239,7 @@ Asteroid.prototype.initializeTypeSpecificProperties = function() {
} else if (this.type === 'large') {
this.size = CONFIG.VISUAL_SIZE_LARGE + Math.random() * 1;
} else if (this.type === 'medium') {
- this.size = CONFIG.VISUAL_SIZE_MEDIUM + Math.random() * 1;
+ this.size = CONFIG.VISUAL_SIZE_MDIUM + Math.random() * 1;
} else {
this.size = CONFIG.VISUAL_SIZE_SMALL + Math.random() * 1;
}
diff --git a/js/ui.js b/js/ui.js
index 4d3c733..a040daa 100644
--- a/js/ui.js
+++ b/js/ui.js
@@ -392,7 +392,7 @@ var UI = {
var rate = (1000 / gameState.currentAsteroidSpawnInterval).toFixed(2);
var bonusPercent = (gameState.asteroidUpgradeLevel * CONFIG.UPGRADE_BONUS_PER_LEVEL_ASTER * 100).toFixed(0);
var tooltipText = 'Asteroids are rocky, airless bodies that range in size from tiny pebbles to hundreds of kilometers across. Some asteroids have moons or even binary companions.
Rate: ' + rate + '/sec
Bonus: ' + bonusPercent + '%';
- if (!gameState.cometUnlocked) tooltipText += '
Unlocks Comets at level 20';
+ if (!gameState.cometUnlocked) tooltipText += '
Unlocks Comets at level 20';
this.elements.asteroidLevel.innerHTML = 'Asteroids: Level ' +
gameState.asteroidUpgradeLevel +
@@ -409,7 +409,7 @@ var UI = {
var rate = (60000 / gameState.currentCometSpawnInterval).toFixed(2);
var bonusPercent = (gameState.cometUpgradeLevel * CONFIG.UPGRADE_BONUS_PER_LEVEL_COMET * 100).toFixed(0);
var tooltipText = 'Comets are small icy bodies that typically release gas and dust, forming a glowing coma and often a tail. They are composed mainly of ice, rock, and organic compounds.
Rate: ' + rate + '/min
Bonus: ' + bonusPercent + '%';
- if (!gameState.planetUnlocked) tooltipText += '
Unlocks Planets at level 15';
+ if (!gameState.planetUnlocked) tooltipText += '
Unlocks Planets at level 15';
this.elements.cometLevel.innerHTML = 'Comets: Level ' +
gameState.cometUpgradeLevel +
@@ -426,7 +426,7 @@ var UI = {
var rate = (CONFIG.BASE_PLANET_SPAWN_INTERVAL / gameState.currentPlanetSpawnInterval).toFixed(2);
var bonusPercent = (gameState.planetUpgradeLevel * CONFIG.UPGRADE_BONUS_PER_LEVEL_PLANT * 100).toFixed(0);
var tooltipText = 'Planets are roughly spherical accumulations of rock and metal, with solid surfaces and relatively thin atmospheres. Local examples include Mercury, Earth, and Pluto. They may vary greatly in size.
Rate: ' + rate + '/hour
Bonus: ' + bonusPercent + '%';
- if (!gameState.giantUnlocked) tooltipText += '
Unlocks Giants at level 10';
+ if (!gameState.giantUnlocked) tooltipText += '
Unlocks Giants at level 10';
this.elements.planetLevel.innerHTML = 'Planets: Level ' +
gameState.planetUpgradeLevel +
@@ -442,8 +442,8 @@ var UI = {
updateGiantUpgrade: function(gameState) {
var rate = (CONFIG.BASE_GIANT_SPAWN_INTERVAL / gameState.currentGiantSpawnInterval).toFixed(2);
var bonusPercent = (gameState.giantUpgradeLevel * CONFIG.UPGRADE_BONUS_PER_LEVEL_GIANT * 100).toFixed(0);
- var tooltipText = 'Gas giants are large planets made mostly of hydrogen and helium, with thick atmospheres and no solid surface; Jupiter and Saturn are examples.
Ice giants are similar but contain higher amounts of frozen materials like water, ammonia, and methane beneath their atmospheres; Uranus and Neptune fall into this category.
Rate: ' + rate + '/6hours
Bonus: ' + bonusPercent + '%';
- if (!gameState.mtypeUnlocked) tooltipText += '
Unlocks M-Type at level 5';
+ var tooltipText = 'Gas giants are large planets made mostly of hydrogen and helium, with thick atmospheres and no solid surface.
Ice giants are similar but contain higher amounts of frozen materials like water, ammonia, and methane in their atmospheres.
Local examples include Jupiter and Neptune.
Rate: ' + rate + '/6hours
Bonus: ' + bonusPercent + '%';
+ if (!gameState.mtypeUnlocked) tooltipText += '
Unlocks M-Type at level 5';
this.elements.giantLevel.innerHTML = 'Giants: Level ' +
gameState.giantUpgradeLevel +
@@ -460,7 +460,7 @@ var UI = {
var rate = (CONFIG.BASE_MTYPE_SPAWN_INTERVAL / gameState.currentMtypeSpawnInterval).toFixed(2);
var bonusPercent = (gameState.mtypeUpgradeLevel * CONFIG.UPGRADE_BONUS_PER_LEVEL_MTYPE * 100).toFixed(0);
var tooltipText = 'M-types, also known as red dwarfs, are the smallest and coolest stars with masses ranging from about 0.08 to 0.45 M☉.
They are the most common star in the universe, making up roughly three quarters of all main-sequence stars, but are not easily visible due to their low luminosity.
Rate: ' + rate + '/day
Bonus: ' + bonusPercent + '%';
- if (!gameState.ktypeUnlocked) tooltipText += '
Unlocks K-Type at level 5';
+ if (!gameState.ktypeUnlocked) tooltipText += '
Unlocks K-Type at level 5';
this.elements.mtypeLevel.innerHTML = 'M-Type: Level ' +
gameState.mtypeUpgradeLevel +
@@ -475,7 +475,7 @@ var UI = {
var rate = (CONFIG.BASE_KTYPE_SPAWN_INTERVAL / gameState.currentKtypeSpawnInterval).toFixed(2);
var bonusPercent = (gameState.ktypeUpgradeLevel * CONFIG.UPGRADE_BONUS_PER_LEVEL_KTYPE * 100).toFixed(0);
var tooltipText = 'K-types, also known as orange dwarfs, are medium-sized stars that are cooler than the Sun, with masses ranging from about 0.45 to 0.8 M☉. They are known for their stability and long lifespans (20 to 70 billion years), making them potential candidates for supporting inhabited planets.
Rate: ' + rate + '/2days
Bonus: ' + bonusPercent + '%';
- if (!gameState.gtypeUnlocked) tooltipText += '
Unlocks G-Type at level 5';
+ if (!gameState.gtypeUnlocked) tooltipText += '
Unlocks G-Type at level 5';
this.elements.ktypeLevel.innerHTML = 'K-Type: Level ' +
gameState.ktypeUpgradeLevel +