fp: Add better price and spawn balancing #28

Merged
doylet merged 1 commits from price_balancing into main 2023-10-09 02:30:35 +00:00
2 changed files with 10 additions and 10 deletions

View File

@ -1939,7 +1939,7 @@ void FP_Update(TELY_Platform *platform, FP_Game *game, TELY_PlatformInput *input
portal->carried_monkey = entity->carried_monkey; portal->carried_monkey = entity->carried_monkey;
entity->carried_monkey = {}; entity->carried_monkey = {};
} }
acceleration_meters_per_s *= 2.f; // TODO(doyle): Penalise the player acceleration_meters_per_s *= 0.5f; // TODO(doyle): Penalise the player
} else { } else {
acceleration_meters_per_s *= 1.f; // TODO(doyle): Penalise the player acceleration_meters_per_s *= 1.f; // TODO(doyle): Penalise the player
} }
@ -1964,7 +1964,7 @@ void FP_Update(TELY_Platform *platform, FP_Game *game, TELY_PlatformInput *input
// NOTE: If all enemies for the current wave have been spawned and the cooldown has elapsed // NOTE: If all enemies for the current wave have been spawned and the cooldown has elapsed
// start the next wave. // start the next wave.
if (game->play.enemies_spawned_this_wave >= game->play.enemies_per_wave && game->play.clock_ms >= game->play.wave_cooldown_timestamp_ms) { if (game->play.enemies_spawned_this_wave >= game->play.enemies_per_wave && game->play.clock_ms >= game->play.wave_cooldown_timestamp_ms) {
game->play.enemies_per_wave = DQN_MAX(5 * DQN_CAST(uint32_t)game->play.mob_spawners.size, DQN_CAST(uint32_t)(game->play.enemies_per_wave * 1.5f)); game->play.enemies_per_wave = DQN_MAX(5 * DQN_CAST(uint32_t)game->play.mob_spawners.size, DQN_CAST(uint32_t)(game->play.enemies_per_wave * 3));
game->play.enemies_spawned_this_wave = 0; game->play.enemies_spawned_this_wave = 0;
game->play.current_wave++; game->play.current_wave++;
} }

View File

@ -229,17 +229,17 @@ static FP_GameEntity *FP_Game_MakeEntityPointerFV(FP_Game *game, DQN_FMT_STRING_
result->hp_cap = DQN_CAST(uint32_t)(FP_DEFAULT_DAMAGE * .8f); result->hp_cap = DQN_CAST(uint32_t)(FP_DEFAULT_DAMAGE * .8f);
result->hp = result->hp_cap; result->hp = result->hp_cap;
result->inventory.airports_base_price = 100; result->inventory.airports_base_price = 25;
result->inventory.churchs_base_price = 50; result->inventory.churchs_base_price = 25;
result->inventory.kennels_base_price = 50; result->inventory.kennels_base_price = 25;
result->inventory.clubs_base_price = 50; result->inventory.clubs_base_price = 25;
result->base_attack = FP_DEFAULT_DAMAGE; result->base_attack = FP_DEFAULT_DAMAGE;
result->hp_recover_every_n_ticks = 12; result->hp_recover_every_n_ticks = 12;
result->inventory.stamina_base_price = 10; result->inventory.stamina_base_price = 5;
result->inventory.health_base_price = 10; result->inventory.health_base_price = 5;
result->inventory.mobile_plan_base_price = 10; result->inventory.mobile_plan_base_price = 5;
result->inventory.attack_base_price = 10; result->inventory.attack_base_price = 5;
// NOTE: Attach entity as a child to the parent // NOTE: Attach entity as a child to the parent