Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Economic reports sent to allies #1

Open
CarsonBurke opened this issue Aug 11, 2023 · 6 comments
Open

Economic reports sent to allies #1

CarsonBurke opened this issue Aug 11, 2023 · 6 comments
Assignees
Labels
feature A requested feature to discuss and possibly implement

Comments

@CarsonBurke
Copy link
Member

CarsonBurke commented Aug 11, 2023

Overview

  • Allows bots to use internal estimations of economic results
  • requestType = econReport
  • Bots on the receiving end of econReport requests can use this data to estimate team strength, and factor that into economic and military decisions. For example, if the team has a large amount of energy, the bot might decide to be more aggressive with its resource requests to fund combat or upgrading ventures

Properties

some properties are optional because they might be hard to calculate.

  • credits - total credits the bot has. Should be 0 if there is no market for the server
  • stored energy - cumulative energy across the bot's rooms
  • energy income - optional - the average energy income the bot has calculated over whatever timeframe they choose
  • mineralRooms - the number of minerals the bot has claimed rooms able to harvest. Looks like { [key in MineralConstant]: number } where number is the claimed rooms that have the mineral. For example, if the bot owns 2 rooms, both with mineral RESOURCE_CATALYST, the object would look like:
{
    RESOURCE_HYDROGEN: 0,
    RESOURCE_OXYGEN: 0,
    RESOURCE_UTRIUM: 0,
    RESOURCE_KEANIUM: 0,
    RESOURCE_LEMERGIUM: 0,
    RESOURCE_ZYNTHIUM: 0,
    RESOURCE_CATALYST: 2,
}

This is great for communicating which minerals the team has access to for boost production, and what they should minerals they should prioritize for future claims

@CarsonBurke CarsonBurke added the feature A requested feature to discuss and possibly implement label Aug 11, 2023
@CarsonBurke CarsonBurke self-assigned this Aug 11, 2023
@glitchassassin
Copy link

energy income - optional - the average energy income the bot has calculated over whatever timeframe they choose

Suggest dropping this to simplify the spec: it doesn't represent something objective or actionable (past performance doesn't guarantee future performance and all that)

stored energy - cumulative energy across the bot's rooms

Suggest narrowing this to "energy available to be shared," so allies don't commit to an expensive venture when your energy bank is already funding a different expensive venture

@CarsonBurke
Copy link
Member Author

CarsonBurke commented Sep 28, 2023

Suggest dropping this to simplify the spec: it doesn't represent something objective or actionable (past performance doesn't guarantee future performance and all that)

If we shorten this ambiguous timeframe to 100 ticks, it should be a more present indicator of performance. And it does provide some insight into future performance, as they might defend their remotes and keep their rooms.
I think this metric is useful in determining how aggressive the team can be, knowing there is economy to back it up or not

Suggest narrowing this to "energy available to be shared," so allies don't commit to an expensive venture when your energy bank is already funding a different expensive venture

Love it, will do

@CarsonBurke
Copy link
Member Author

Done

@glitchassassin
Copy link

glitchassassin commented Oct 2, 2023

If we shorten this ambiguous timeframe to 100 ticks, it should be a more present indicator of performance.

But that also decreases its usefulness. In my bot (for example) energy income is balanced with how quickly I can spend the energy, so what I can harvest (to supply aggressive allies) is usually going to be very different from what I am harvesting (to supply my repairers/upgraders).

@CarsonBurke
Copy link
Member Author

I agree that that's how things go. To be clear, I'm suggesting a 100 tick moving average of gross energy income. Looking at my graphs and considering how the game players out, I doubt there is huge variation in that. I think it will be a good way to give team members an idea of wealth of the team. As they get more wealthy, especially compared to their estimations of the enemy's wealth, they can automatically be more aggressive.
They can do other stuff too, I'm sure. For example, they can consider a team member with a low gross income as one that would benefit a lot from funnelling and other assistance

@CarsonBurke
Copy link
Member Author

I think the energy available to be shared is in many ways a more specific way to determine this. But I think it is also less objective.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature A requested feature to discuss and possibly implement
Projects
None yet
Development

No branches or pull requests

2 participants