separate hero and battalion stats (#4469)

* separate hero and battalion stats

* typo
This commit is contained in:
2025-10-13 12:43:34 -07:00
committed by GitHub
parent 12d74ae0f1
commit e5fdfd25c8
@@ -28,7 +28,8 @@ using UnitViewProto = net::eagle0::shardok::api::UnitView;
using Coords = net::eagle0::shardok::storage::fb::Coords;
using Unit = net::eagle0::shardok::storage::fb::Unit;
constexpr int8_t kGuessedStat = 25;
constexpr int8_t kGuessedHeroStat = 50;
constexpr int8_t kGuessedBattalionStat = 0;
constexpr int8_t kGuessedMorale = 50;
auto GuessedUnit(
@@ -410,15 +411,15 @@ auto GuessedHero(const HeroViewProto &hv) -> net::eagle0::shardok::storage::fb::
if (hv.has_stats()) {
const auto &stats = hv.stats();
hero.mutate_strength(stats.strength());
hero.mutate_strength_xp(kGuessedStat);
hero.mutate_strength_xp(kGuessedHeroStat);
hero.mutate_agility(stats.agility());
hero.mutate_agility_xp(kGuessedStat);
hero.mutate_agility_xp(kGuessedHeroStat);
hero.mutate_constitution(stats.constitution());
hero.mutate_constitution_xp(kGuessedStat);
hero.mutate_constitution_xp(kGuessedHeroStat);
hero.mutate_charisma(stats.charisma());
hero.mutate_charisma_xp(kGuessedStat);
hero.mutate_charisma_xp(kGuessedHeroStat);
hero.mutate_wisdom(stats.wisdom());
hero.mutate_wisdom_xp(kGuessedStat);
hero.mutate_wisdom_xp(kGuessedHeroStat);
hero.mutate_integrity(stats.integrity());
hero.mutate_ambition(stats.ambition());
@@ -427,27 +428,27 @@ auto GuessedHero(const HeroViewProto &hv) -> net::eagle0::shardok::storage::fb::
hero.mutate_vigor(stats.vigor());
hero.mutate_starting_vigor(stats.starting_vigor());
hero.mutate_spent_vigor(kGuessedStat);
hero.mutate_spent_vigor(kGuessedHeroStat);
} else {
// Don't believe it's destroyed
hero.mutate_strength(kGuessedStat);
hero.mutate_strength_xp(kGuessedStat);
hero.mutate_agility(kGuessedStat);
hero.mutate_agility_xp(kGuessedStat);
hero.mutate_constitution(kGuessedStat);
hero.mutate_charisma(kGuessedStat);
hero.mutate_charisma_xp(kGuessedStat);
hero.mutate_wisdom(kGuessedStat);
hero.mutate_wisdom_xp(kGuessedStat);
hero.mutate_strength(kGuessedHeroStat);
hero.mutate_strength_xp(kGuessedHeroStat);
hero.mutate_agility(kGuessedHeroStat);
hero.mutate_agility_xp(kGuessedHeroStat);
hero.mutate_constitution(kGuessedHeroStat);
hero.mutate_charisma(kGuessedHeroStat);
hero.mutate_charisma_xp(kGuessedHeroStat);
hero.mutate_wisdom(kGuessedHeroStat);
hero.mutate_wisdom_xp(kGuessedHeroStat);
hero.mutate_integrity(kGuessedStat);
hero.mutate_ambition(kGuessedStat);
hero.mutate_gregariousness(kGuessedStat);
hero.mutate_bravery(kGuessedStat);
hero.mutate_integrity(kGuessedHeroStat);
hero.mutate_ambition(kGuessedHeroStat);
hero.mutate_gregariousness(kGuessedHeroStat);
hero.mutate_bravery(kGuessedHeroStat);
hero.mutate_vigor(kGuessedStat);
hero.mutate_starting_vigor(kGuessedStat);
hero.mutate_spent_vigor(kGuessedStat);
hero.mutate_vigor(kGuessedHeroStat);
hero.mutate_starting_vigor(kGuessedHeroStat);
hero.mutate_spent_vigor(kGuessedHeroStat);
}
if (hv.has_profession_info()) {
@@ -488,8 +489,8 @@ auto GuessedBattalion(
// 2. Use average stats for this player if available
// 3. Use kGuessedStat as default
int8_t armament = kGuessedStat;
int8_t training = kGuessedStat;
int8_t armament = kGuessedBattalionStat;
int8_t training = kGuessedBattalionStat;
if (bv.has_armament()) {
armament = bv.armament().value();