Autoscaling Fleet base on Player Count
Dependent on #1033
Is your feature request related to a problem? Please describe. For persistent worlds, its common to have multiple copies of the same world for each player to join.
Therefore, a Single fleet could represent a single world, and we would want to scale it based on how close to being full of connected players it currently is.
Right now, we need to track this ourselves, and/or provide a webhook implementation to the Agones autoscaler. It would be nice if we didn't have to.
Describe the solution you'd like A configuration option on the FleetAutoscaler CRD that works for player count. Something like this would potentially work, which works similarly to the GameServer buffer strategy - but with empty player slots (I'm not sold on the naming, but to have a sacrificial draft):
apiVersion: "autoscaling.agones.dev/v1"
kind: FleetAutoscaler
metadata:
name: fleet-autoscaler-example
spec:
fleetName: fleet-example
policy:
# type of the policy. for now, only Buffer is available
type: PlayerCount
# parameters of the playercount policy
playerCount:
# Size of a buffer of empty player slots that are available in the Fleet.
# it can be specified either in absolute (i.e. 5) or percentage format (i.e. 5%)
playerSlots: 5
# minimum number of player slots is be set by this FleetAutoscaler.
# if not specified, the actual minimum slots will be playerSlots
minSlots: 10
# maximum number of players slots that can be set by this FleetAutoscaler
# required
maxSlots: 20
Describe alternatives you've considered
Once we have #1033 we could force people to use the webhook autoscaling for this, but it seems like a lot of work for what seems like a useful feature.
Additional context N/A at this stage.
Any updates or news on this feature?
Is the only way of implementing it currently via webhook?
No news at this stage. Likely needs a slight redesign to align the naming with the player tracking naming.
Would you be interested in working on this?
Just wanted to see how far out it is and what options there were. Was looking at hiring a developer to work on a pull request for it. Otherwise going to see if we can get similar functionality via webhook.
Ideally would work on it myself but super busy working on game projects itself.
Some of this naming should probably reviewed, and aligned more with the current naming on player tracking. But I think the design is sound?
Hello; I reopen the topic if this solution will be dev? or if not a new development is in progress. We are looking to export agones to minecraft but it is complicated in the current state
Hello; I reopen the topic if this solution will be dev? or if not a new development is in progress. We are looking to export agones to minecraft but it is complicated in the current state
It's coming, but hasn't been started yet.
Always looking for contributors though 😄
A freelancer is not available :D My company is willing to finance this issue, quite important to us
Any updates on this feature?
I have a design I'm still working on that I need to post to revamp all of player tracking - hopefully get it out this week. We'll see how it lands.
'This issue is marked as Stale due to inactivity for more than 30 days. To avoid being marked as 'stale' please add 'awaiting-maintainer' label or add a comment. Thank you for your contributions '
I think we can close this, as now we have tracking work in #2716 ?
'This issue is marked as Stale due to inactivity for more than 30 days. To avoid being marked as 'stale' please add 'awaiting-maintainer' label or add a comment. Thank you for your contributions '
I'm going to close this as wontfix, since nobody objected to my comment above.