scenarios

package
v1.1.0-rc.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 18, 2020 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ActiveScenario = func() *Scenario {
	var gs GameScenario = firstmatch.Scenario()

	gs = battleroyal.Scenario()
	gs = teamshooter.Scenario()

	return &Scenario{
		FrontendTotalTicketsToCreate: -1,
		FrontendTicketCreatedQPS:     100,

		BackendAssignsTickets: true,
		BackendDeletesTickets: true,

		Ticket:   gs.Ticket,
		Profiles: gs.Profiles,

		MMF:       queryPoolsWrapper(gs.MatchFunction),
		Evaluator: gs.Evaluate,
	}
}()

ActiveScenario sets the scenario with preset parameters that we want to use for current Open Match benchmark run.

Functions

This section is empty.

Types

type GameScenario added in v0.10.0

type GameScenario interface {
	// Ticket creates a new ticket, with randomized parameters.
	Ticket() *pb.Ticket

	// Profiles lists all of the profiles that should run.
	Profiles() []*pb.MatchProfile

	// MatchFunction is the custom logic implementation of the match function.
	MatchFunction(p *pb.MatchProfile, poolTickets map[string][]*pb.Ticket) ([]*pb.Match, error)

	// Evaluate is the custom logic implementation of the evaluator.
	Evaluate(stream pb.Evaluator_EvaluateServer) error
}

GameScenario defines what tickets look like, and how they should be matched.

type Scenario

type Scenario struct {

	// GameFrontend Configs
	// TicketExtensionSize       int
	// PendingTicketNumber       int
	// MatchExtensionSize        int
	FrontendTotalTicketsToCreate int // TotalTicketsToCreate = -1 let scale-frontend create tickets forever
	FrontendTicketCreatedQPS     uint32

	// GameBackend Configs
	// ProfileNumber      int
	// FilterNumber       int
	BackendAssignsTickets bool
	BackendDeletesTickets bool

	Ticket   func() *pb.Ticket
	Profiles func() []*pb.MatchProfile

	MMF       matchFunction
	Evaluator evaluatorFunction
}

Scenario defines the controllable fields for Open Match benchmark scenarios

Directories

Path Synopsis
TeamShooterScenario is a scenario which is designed to emulate the approximate behavior to open match that a skill based team game would have.
TeamShooterScenario is a scenario which is designed to emulate the approximate behavior to open match that a skill based team game would have.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL