-
Notifications
You must be signed in to change notification settings - Fork 48
Constraints
Raluca D. Gaina edited this page Feb 12, 2018
·
1 revision
The GVG framework have multiple of classes that checks for certain constraints in the generated levels. These constraints are helpful in detecting the likelihood that the generated level is well designed. These constraints might be used to disqualify some of submitted level generators if the competition attracts more entries than can be judged manually.
The following table shows all different constraints that can be used in the framework:
Constraint name | Description |
---|---|
AvatarNumberConstraint | Checks if there is only one avatar sprite |
CoverPercentageConstraint | Checks the amount of cover area in the level is between a minimum and maximum value |
DeathConstraint | Checks that the Do Nothing agent doesn't win and it doesn't die for at least minimum game steps |
GoalConstraint | Checks that all termination conditions are not satisfied |
SolutionLengthConstraint | Checks that the best player have a solution length more than a minimum number of steps |
SpriteNumberConstraint | Checks if there is at least one object for each non spawned sprite |
WinConstraint | Checks if the best player wins the level. |
CombinedConstraint | Checks a group if a group of previous constraints are achieved or not. |
You can add more constraints by extending AbstractConstraint class. You can assign values to the parameters of each class either by doing it one by one or using setParameters function where you provide a Hashmap of string and objects and the code will set all the parameters for you.
-
GVG Framework
- Tracks Description
- Code Structure
- Creating Controllers
- Creating Multi Player Controllers
- Creating Level Generators
- Running & Testing Level Generators
- Creating Rule Generators
- Running & Testing Rule Generators
-
Forward Model and State Observation
- Advancing and copying the state
- Advancing and copying the state (2 Player)
- Querying the state of the game
- Querying the state of the game (2 Player)
- Information about the state of the Avatar
- Information about the state of the Avatar (2 Player)
- Information about events happened in the game
- Information about other sprites in the game
- Game Description Class
- Constraints
- Game Analyzer Class
- Level Analyzer Class
- Sprite Level Description Class
- Sprite, Termination, and Interaction Data Class
- Level Mapping Class
- Competition Specifications
- VGDL Language