GameState¶
GameState is the main object returned by DoomGame::getState
method.
The declarations of all the enums can be found in the include/ViZDoomTypes.h
header file.
GameState
¶
(C++ type / Python type
name)
unsigned int / int
numberunsigned int / int
ticstd::vector<float> / numpy.double[]
gameVariables / game_variablesImageBufferPtr / numpy.uint8[]
screenBuffer / screen_bufferImageBufferPtr / numpy.uint8[]
depthBuffer / depth_bufferImageBufferPtr / numpy.uint8[]
labelsBuffer / labels_bufferImageBufferPtr / numpy.uint8[]
automapBuffer / automap_bufferAudioBufferPtr / numpy.int16[]
audioBuffer / audio_bufferstd::vector<Label> / list
labels
number - number of the state in the episode. tic - ingame time, 1 tic is 1/35 of second in the game world. Note: added in 1.1.1.
See also:
Types used only in C++¶
Buffer (std::vector<uint8_t>)
ImageBufferPtr (std::shared_ptr<Buffer>)
GameStatePtr (std::shared_ptr<GameState>)
Structures¶
Label
¶
(C++ type / Python type
name)
unsigned int / int
objectId / object_idstd::string / str
objectName / object_nameuint8_t / int
valueunsigned int / int
xunsigned int / int
yunsigned int / int
widthunsigned int / int
heightdouble / float
objectPositionX / object_position_xdouble / float
objectPositionY / object_position_ydouble / float
objectPositionZ / object_position_zdouble / float
objectAngle / object_angledouble / float
objectPitch / object_pitchdouble / float
objectRoll / object_rolldouble / float
objectVelocityX / object_velocity_xdouble / float
objectVelocityY / object_velocity_ydouble / float
objectVelocityZ / object_velocity_z
Description of the object in the labels buffer.
objectId / object_id - unique object ID, if both Labels and Objects information is enabled, this will be the same as id in corresponding Object.
objectName / object_name - ingame object name, many different objects can have the same name (e.g. Medikit, Clip, Zombie).
value - value that represents this particular object in labelsBuffer.
x, y, width, height - describes bounding box of this particular object in labelsBuffer. Note: added in 1.1.5.
See also:
Object
¶
(C++ type / Python type
name)
unsigned int / int
idstd::string / str
namedouble / float
positionX / position_xdouble / float
positionY / position_ydouble / float
positionZ / position_zdouble / float
angledouble / float
pitchdouble / float
rolldouble / float
velocityX / velocity_xdouble / float
velocityY / velocity_ydouble / float
velocityZ / velocity_z
Description of the object present in the game world.
id - unique object ID.
name - ingame object name, many different objects can have the same name (e.g. Medikit, Clip, Zombie).
See also:
Note: added in 1.1.8.
Line
¶
(C++ type / Python type
name)
double / float
x1double / float
y1double / float
x2double / float
y2bool / bool
isBlocking / is_blocking
Description of the line that is part of a sector definition.
x1, y1 - position of the line’s first vertex.
x2, y2 - position of the line’s second vertex.
isBlocking / is_blocking - is true, if line is a wall that can’t be passed.
See also:
Note: added in 1.1.8.
Sector
¶
(C++ type / Python type
name)
double / float
floorHeight / floor_heightdouble / float
ceilingHeight / ceiling_heightstd::vector<Label> / list
lines
Description of the sector, part of the map with the same floor and ceiling height.
floorHeight / floor_height - height of the sector’s floor.
ceilingHeight / ceiling_height - height of the sector’s ceiling.
lines - contains list of line segments, that forms sector.
See also:
Note: added in 1.1.8.
ServerState
¶
(C++ type / Python type
name)
unsigned int / int
ticunsigned int / int
playerCount / player_countbool[] / list
playersInGame / players_in_gameint[] / list
playersFrags / players_fragsstd::string[] / list
playersNames / players_namesbool[] / list
playersAfk / players_afkunsigned int[] / list
**playersLastActionTic / players_last_action_tic **unsigned int[] / list
**playersLastKillTic / players_last_kill_tic **
ServerState is the main object returned by DoomGame::getServerState
method, and it purpose is to get more information about the state of the multi-player game.
See also:
Note: added in 1.1.6.