Unit kill counts

Discussion in 'Planetary Annihilation General Discussion' started by eukanuba, August 19, 2014.

  1. Dementiurge

    Dementiurge Post Master General

    Messages:
    1,094
    Likes Received:
    693
    "Lieutenant Beauregard Dox #1387, Hero of the Battle of Calys-B, died at 11:29 of Leveler fire. (120 damage dealt)"
    cdrkf and thetrophysystem like this.
  2. thetrophysystem

    thetrophysystem Post Master General

    Messages:
    7,050
    Likes Received:
    2,874
    I would love a silly mod that changed the annihilated messages to this.

    Also, I could see how it could help modders, but it has to be easy to retrieve this info somehow. I have seen mods calculate how many mex you have/lost based on how many mex builds were started or destroyed, so I can only imagine there can be a mod that determines how many things a unit killed.

    Meh, in any case, it is a useful thing down the line, just not directly unless being extra silly about it.
  3. tatsujb

    tatsujb Post Master General

    Messages:
    12,902
    Likes Received:
    5,385
    well you're entitled to your opinion but I'd like to raise your awareness to how this opinion of yours is damaging to future modding communities of this game that have yet to be born.

    you now know (since my last post in main menu item order) my stance on things that are in or out of the engine.

    this is something that costs practically nothing for the developers to leave in as a hook for modders. but would take modders forever to figure out how to add to the PA engine.

    as for it's different and varied applications, ..we have yet to find out. But adding killcount and veterancy to units in the game is what comes of the top of my very small and inconsequential head. (backup cuddle smilies? :p:):):):):):):):):):):):):):):):):):):):):))
  4. igncom1

    igncom1 Post Master General

    Messages:
    7,961
    Likes Received:
    3,132
    Dude you have just got to stop saying that opinions other then your own are damaging.

    That or become a politician.
    cdrkf likes this.
  5. cdrkf

    cdrkf Post Master General

    Messages:
    5,721
    Likes Received:
    4,793
    I fully support the idea of this being available in engine, however surley you can agree that *right now* Uber probably have bigger things to focus their efforts on. They have included alot of great features for modding from the very start, so I'm certian things like this will get added. Perhapse there should be a thread dedicated to "what the community would like included for modding" so that Uber have something to reffer to once the push for 1.0 is finished.

    My point was simply that per unit kill counts aren't an important feature for the main game right now.
  6. tatsujb

    tatsujb Post Master General

    Messages:
    12,902
    Likes Received:
    5,385
    I can and that's all that I want.

    I want UBER to be aware that their community wants those hooks rather than don't. "when" matters less but not to forget that the modders are trapped without it.
  7. cdrkf

    cdrkf Post Master General

    Messages:
    5,721
    Likes Received:
    4,793
    "RATM"?
  8. tatsujb

    tatsujb Post Master General

    Messages:
    12,902
    Likes Received:
    5,385
    yea "Rage Against The Machine" that was in answer to @igncom1

    they're a pretty cool group and a song in particular (he'll know the one) was the suitable humorous answer to the moment.
  9. cdrkf

    cdrkf Post Master General

    Messages:
    5,721
    Likes Received:
    4,793
    I love that band :D Was epic when they used one of the tracks for the end of the first Matrix movie :p
  10. tatsujb

    tatsujb Post Master General

    Messages:
    12,902
    Likes Received:
    5,385
    ERMERGHERD saaaaaaaaaame
  11. masterdigital

    masterdigital Uber Alumni

    Messages:
    438
    Likes Received:
    833
    Kill counts per unit is certainly achievable, but I don't think there is enough server side modding support to do anything with it yet. But for the curious (you can't make use of it yet, but you might be able to in the future) ... here are the data descriptions for the army and units:

    "Army": {
    "typeid": 0,
    "fields": [
    {
    "name": "name",
    "const": true,
    "type": "std::string"
    },
    {
    "name": "index",
    "const": true,
    "type": "uint32_t"
    },
    {
    "name": "primary_color",
    "const": true,
    "type": "zu::Color4b"
    },
    {
    "name": "secondary_color",
    "const": true,
    "type": "zu::Color4b"
    },
    {
    "name": "total_production",
    "step": true,
    "type": "Resources"
    },
    {
    "name": "total_demand",
    "step": true,
    "type": "Resources"
    },
    {
    "name": "net_production",
    "step": true,
    "type": "Resources"
    },
    {
    "name": "cumulative_demand",
    "step": true,
    "type": "Resources"
    },
    {
    "name": "cumulative_production",
    "step": true,
    "type": "Resources"
    },

    {
    "name": "cumulative_build_efficency",
    "step": true,
    "type": "float"
    },
    {
    "name": "current_resources",
    "type": "Resources"
    },
    {
    "name": "total_storage",
    "step": true,
    "type": "Resources"
    },
    {
    "name": "shared_resources",
    "step": true,
    "type": "Resources"
    },
    {
    "name": "unit_count",
    "step": true,
    "type": "uint32_t"
    },
    {
    "name": "units_created",
    "step": true,
    "type": "uint32_t"
    },
    {
    "name": "units_lost",
    "step": true,
    "type": "uint32_t"
    },
    {
    "name": "metal_lost",
    "step": true,
    "type": "uint32_t"
    },
    {
    "name": "enemy_units_destroyed",
    "step": true,
    "type": "uint32_t"
    },
    {
    "name": "enemy_metal_destroyed",
    "step": true,
    "type": "uint32_t"
    },
    {
    "name": "commands_given",
    "step": true,
    "type": "uint32_t"
    },
    {
    "name": "total_army_metal",
    "step": true,
    "type": "uint32_t"
    },
    {
    "name": "mobile_army_count",
    "step": true,
    "type": "uint32_t"
    },
    {
    "name": "fabber_army_count",
    "step": true,
    "type": "uint32_t"
    },
    {
    "name": "factory_army_count",
    "step": true,
    "type": "uint32_t"
    },
    {
    "name": "total_combat_units_in_combat",
    "step": true,
    "type": "uint32_t"
    },
    {
    "name": "defeated",
    "step": true,
    "type": "bool"
    },
    {
    "name": "allies",
    "step": true,
    "type": "std::vector<DiplomaticState>"
    }
    ]
    },
    "Unit": {
    "typeid": 3,
    "fields": [
    {
    "name": "specid",
    "const": true,
    "type": "std::string"
    },
    {
    "name": "army",
    "const": true,
    "type": "EntityId"
    },
    {
    "name": "planet",
    "step": true,
    "type": "EntityId"
    },
    {
    "name": "orbital_parameters",
    "step": true,
    "type": "OrbitalParameters"
    },
    {
    "name": "celestial_itinerary",
    "step": true,
    "type": "std::vector<OrbitalParameters>"
    },
    {
    "name": "attach_parent",
    "step": true,
    "type": "EntityId"
    },
    {
    "name": "attach_bone",
    "step": true,
    "type": "std::string"
    },
    {
    "name": "pos",
    "type": "zu::Vec3f",
    "slope": "vel"
    },
    {
    "name": "orient",
    "type": "zu::Quatf"
    },
    {
    "name": "current_reclaim_value",
    "type": "float"
    },
    {
    "name": "total_reclaim_value",
    "type": "float"
    },
    {
    "name": "health",
    "type": "float"
    },
    {
    "name": "max_health",
    "type": "float"
    },
    {
    "name": "built_frac",
    "type": "float"
    },
    {
    "name": "movement_stance",
    "step": true,
    "type": "MovementStance"
    },
    {
    "name": "build_stance",
    "step": true,
    "type": "BuildStance"
    },
    {
    "name": "enable",
    "step": true,
    "type": "bool"
    },
    {
    "name": "order_queue",
    "step": true,
    "type": "std::vector<EntityId>"
    },
    {
    "name": "build_queue",
    "step": true,
    "type": "std::vector<BuildOrder>"
    },
    {
    "name": "events",
    "pulse": true,
    "type": "UnitEvent"
    },
    {
    "name":"build_target",
    "step":true,
    "type":"EntityId"
    },
    {
    "name": "observability_flags",
    "step": true,
    "type": "zu::BitVec"
    },
    {
    "name":"weapon_target",
    "step":true,
    "type":"EntityId",
    "count":4
    },
    {
    "name": "weapon_stance",
    "step": true,
    "type": "WeaponStance"
    },
    {
    "name": "weapon_yaw",
    "type": "float",
    "count":4
    },
    {
    "name": "weapon_pitch",
    "type": "float",
    "count":4
    },
    {
    "name": "weapon_current_ammo",
    "type": "float"
    },
    {
    "name": "energy_stance",
    "step": true,
    "type": "EnergyStance"
    },
    {
    "name": "linked_entity",
    "step": true,
    "type": "EntityId"
    },
    {
    "name": "teleportable_parameters",
    "step": true,
    "type": "TeleportableParameters"
    },
    {
    "name": "subgroup_index",
    "step": true,
    "type": "uint32_t"
    }
    ]
    },
  12. nanolathe

    nanolathe Post Master General

    Messages:
    3,839
    Likes Received:
    1,887
    Thanks for the info.
  13. masterdigital

    masterdigital Uber Alumni

    Messages:
    438
    Likes Received:
    833
    In PA an army is the engine level term for all the units with a certain color (and hostility/control/vision/ flags). Usually one player (or client) controls one army, but with shared armies multiple players control a single army, and cheats make it possible for one player to control multiple armies (though the UI does not make it easy to do so).
    cdrkf likes this.
  14. cdrkf

    cdrkf Post Master General

    Messages:
    5,721
    Likes Received:
    4,793
    Thanks, the part about 1 player controlling multiple armys is very interesting, there is another thread on here discussing options for a "team captain" mode for team games- where one player can issue commands to a team of separate armys. It would need a different overlay however sounds like the underlying building blocks are there :)

    Perhaps one of the more advanced modders could prototype a system to try this out, as I think it could be epic!

    I'm always impressed by how much trouble you guys have gone to to enable capabilities to allow stuff like this- must have taken a lot of pre-planning to figure out what core capabilities should be available in the engine (even if not directly used in the game) as I know myself from product development, tagging things on at the end of the project is often far more difficult or sometimes impossible. Kudos!

Share This Page