UNPKG

hytopia

Version:

The HYTOPIA SDK makes it easy for developers to create massively multiplayer games using JavaScript or TypeScript.

1,827 lines (832 loc) 25.4 kB
<!-- Do not edit this file. It is automatically generated by API Documenter. --> [Home](./index.md) &gt; [server](./server.md) ## server package ## Classes <table><thead><tr><th> Class </th><th> Description </th></tr></thead> <tbody><tr><td> [Audio](./server.audio.md) </td><td> Represents a audio playback in a world. </td></tr> <tr><td> [AudioManager](./server.audiomanager.md) </td><td> Manages audio instances in a world. </td></tr> <tr><td> [Block](./server.block.md) </td><td> Represents a block in a world. </td></tr> <tr><td> [BlockType](./server.blocktype.md) </td><td> Represents a block type. </td></tr> <tr><td> [BlockTypeRegistry](./server.blocktyperegistry.md) </td><td> Manages known block types in a world. </td></tr> <tr><td> [ChatManager](./server.chatmanager.md) </td><td> Manages chat and commands in a world. </td></tr> <tr><td> [Chunk](./server.chunk.md) </td><td> A 16^3 chunk of blocks. Used to represent a world's terrain. </td></tr> <tr><td> [ChunkLattice](./server.chunklattice.md) </td><td> A lattice of chunks that represent a world's terrain. </td></tr> <tr><td> [Collider](./server.collider.md) </td><td> Represents a collider in a world's physics simulation. </td></tr> <tr><td> [CollisionGroupsBuilder](./server.collisiongroupsbuilder.md) </td><td> A helper class for building and decoding collision groups. </td></tr> <tr><td> [DefaultPlayerEntity](./server.defaultplayerentity.md) </td><td> Represents the default player model entity. </td></tr> <tr><td> [DefaultPlayerEntityController](./server.defaultplayerentitycontroller.md) </td><td> The player entity controller implementation. </td></tr> <tr><td> [Entity](./server.entity.md) </td><td> Represents an entity in a world. </td></tr> <tr><td> [EntityManager](./server.entitymanager.md) </td><td> Manages entities in a world. </td></tr> <tr><td> [ErrorHandler](./server.errorhandler.md) </td><td> Manages error and warning logging. </td></tr> <tr><td> [EventRouter](./server.eventrouter.md) </td><td> Manages event emission and assigned listener callbacks. </td></tr> <tr><td> [GameServer](./server.gameserver.md) </td><td> Manages the game and associated worlds and systems. </td></tr> <tr><td> [IterationMap](./server.iterationmap.md) </td><td> A high-performance Map-like data structure optimized for frequent iteration. </td></tr> <tr><td> [Light](./server.light.md) </td><td> Represents a light in a world. Lights can be point lights or spotlights. </td></tr> <tr><td> [LightManager](./server.lightmanager.md) </td><td> Manages Light instances in a world. </td></tr> <tr><td> [Matrix2](./server.matrix2.md) </td><td> Represents a 2x2 matrix. </td></tr> <tr><td> [Matrix3](./server.matrix3.md) </td><td> Represents a 3x3 matrix. </td></tr> <tr><td> [Matrix4](./server.matrix4.md) </td><td> Represents a 4x4 matrix. </td></tr> <tr><td> [ModelRegistry](./server.modelregistry.md) </td><td> Manages model data for all known models of the game. </td></tr> <tr><td> [PathfindingEntityController](./server.pathfindingentitycontroller.md) </td><td> A pathfinding entity controller built on top of [SimpleEntityController](./server.simpleentitycontroller.md)<!-- -->. </td></tr> <tr><td> [PersistenceManager](./server.persistencemanager.md) </td><td> Manages persistence of player and global data. </td></tr> <tr><td> [Player](./server.player.md) </td><td> A player in the game. </td></tr> <tr><td> [PlayerCamera](./server.playercamera.md) </td><td> The camera for a Player. </td></tr> <tr><td> [PlayerEntity](./server.playerentity.md) </td><td> Represents an entity controlled by a player in a world. </td></tr> <tr><td> [PlayerManager](./server.playermanager.md) </td><td> Manages all connected players in a game server. </td></tr> <tr><td> [PlayerUI](./server.playerui.md) </td><td> The UI for a player. </td></tr> <tr><td> [Quaternion](./server.quaternion.md) </td><td> Represents a quaternion. </td></tr> <tr><td> [RigidBody](./server.rigidbody.md) </td><td> Represents a rigid body in a world's physics simulation. </td></tr> <tr><td> [SceneUI](./server.sceneui.md) </td><td> UI rendered within the 3D space of a world's game scene. </td></tr> <tr><td> [SceneUIManager](./server.sceneuimanager.md) </td><td> Manages SceneUI instances in a world. </td></tr> <tr><td> [SimpleEntityController](./server.simpleentitycontroller.md) </td><td> A simple entity controller with basic movement functions. </td></tr> <tr><td> [Simulation](./server.simulation.md) </td><td> Represents the physics simulation for a world. </td></tr> <tr><td> [Vector2](./server.vector2.md) </td><td> Represents a 2D vector. </td></tr> <tr><td> [Vector3](./server.vector3.md) </td><td> Represents a 3-dimensional vector. </td></tr> <tr><td> [World](./server.world.md) </td><td> Represents a world in the game server. </td></tr> <tr><td> [WorldLoop](./server.worldloop.md) </td><td> Manages the tick loop for a world. </td></tr> <tr><td> [WorldManager](./server.worldmanager.md) </td><td> Manages all worlds in a game server. </td></tr> </tbody></table> ## Abstract Classes <table><thead><tr><th> Abstract Class </th><th> Description </th></tr></thead> <tbody><tr><td> [BaseEntityController](./server.baseentitycontroller.md) </td><td> A base class for entity controller implementations. </td></tr> </tbody></table> ## Enumerations <table><thead><tr><th> Enumeration </th><th> Description </th></tr></thead> <tbody><tr><td> [AudioEvent](./server.audioevent.md) </td><td> Event types an Audio instance can emit. See [AudioEventPayloads](./server.audioeventpayloads.md) for the payloads. </td></tr> <tr><td> [BaseEntityControllerEvent](./server.baseentitycontrollerevent.md) </td><td> Event types a BaseEntityController instance can emit. See [BaseEntityControllerEventPayloads](./server.baseentitycontrollereventpayloads.md) for the payloads. </td></tr> <tr><td> [BlockTypeEvent](./server.blocktypeevent.md) </td><td> Event types a BlockType instance can emit. See [BlockTypeEventPayloads](./server.blocktypeeventpayloads.md) for the payloads. </td></tr> <tr><td> [BlockTypeRegistryEvent](./server.blocktyperegistryevent.md) </td><td> Event types a BlockTypeRegistry instance can emit. See [BlockTypeRegistryEventPayloads](./server.blocktyperegistryeventpayloads.md) for the payloads. </td></tr> <tr><td> [ChatEvent](./server.chatevent.md) </td><td> Event types a ChatManager instance can emit. See [ChatEventPayloads](./server.chateventpayloads.md) for the payloads. </td></tr> <tr><td> [ChunkEvent](./server.chunkevent.md) </td><td> Event types a Chunk instance can emit. See [ChunkEventPayloads](./server.chunkeventpayloads.md) for the payloads. </td></tr> <tr><td> [CoefficientCombineRule](./server.coefficientcombinerule.md) </td><td> The coefficient for friction or bounciness combine rule. </td></tr> <tr><td> [ColliderShape](./server.collidershape.md) </td><td> The shapes a collider can be. </td></tr> <tr><td> [CollisionGroup](./server.collisiongroup.md) </td><td> The default collision groups. </td></tr> <tr><td> [EntityEvent](./server.entityevent.md) </td><td> Event types an Entity instance can emit. See [EntityEventPayloads](./server.entityeventpayloads.md) for the payloads. </td></tr> <tr><td> [GameServerEvent](./server.gameserverevent.md) </td><td> Event types a GameServer instance can emit to the global event router. See [GameServerEventPayloads](./server.gameservereventpayloads.md) for the payloads. </td></tr> <tr><td> [LightEvent](./server.lightevent.md) </td><td> Event types a Light instance can emit. See [LightEventPayloads](./server.lighteventpayloads.md) for the payloads. </td></tr> <tr><td> [LightType](./server.lighttype.md) </td><td> The types a Light can be. </td></tr> <tr><td> [PlayerCameraEvent](./server.playercameraevent.md) </td><td> Event types a PlayerCamera can emit. See [PlayerCameraEventPayloads](./server.playercameraeventpayloads.md) for the payloads. </td></tr> <tr><td> [PlayerCameraMode](./server.playercameramode.md) </td><td> The mode of the camera. </td></tr> <tr><td> [PlayerEvent](./server.playerevent.md) </td><td> Event types a Player can emit. See [PlayerEventPayloads](./server.playereventpayloads.md) for the payloads. </td></tr> <tr><td> [PlayerManagerEvent](./server.playermanagerevent.md) </td><td> Event types a PlayerManager can emit. See [PlayerManagerEventPayloads](./server.playermanagereventpayloads.md) for the payloads. </td></tr> <tr><td> [PlayerUIEvent](./server.playeruievent.md) </td><td> Event types a PlayerUI can emit. See [PlayerUIEventPayloads](./server.playeruieventpayloads.md) for the payloads. </td></tr> <tr><td> [RigidBodyType](./server.rigidbodytype.md) </td><td> The types a RigidBody can be. </td></tr> <tr><td> [SceneUIEvent](./server.sceneuievent.md) </td><td> Event types a SceneUI instance can emit. See [SceneUIEventPayloads](./server.sceneuieventpayloads.md) for the payloads. </td></tr> <tr><td> [SimulationEvent](./server.simulationevent.md) </td><td> Event types a Simulation instance can emit. See [SimulationEventPayloads](./server.simulationeventpayloads.md) for the payloads. </td></tr> <tr><td> [WorldEvent](./server.worldevent.md) </td><td> Event types a World instance can emit. See [WorldEventPayloads](./server.worldeventpayloads.md) for the payloads. </td></tr> <tr><td> [WorldLoopEvent](./server.worldloopevent.md) </td><td> Event types a WorldLoop instance can emit. See [WorldLoopEventPayloads](./server.worldloopeventpayloads.md) for the payloads. </td></tr> <tr><td> [WorldManagerEvent](./server.worldmanagerevent.md) </td><td> Event types a WorldManager instance can emit to the global event router. See [WorldManagerEventPayloads](./server.worldmanagereventpayloads.md) for the payloads. </td></tr> </tbody></table> ## Functions <table><thead><tr><th> Function </th><th> Description </th></tr></thead> <tbody><tr><td> [startServer(init)](./server.startserver.md) </td><td> The entry point for running game setup and starting the game server. </td></tr> </tbody></table> ## Interfaces <table><thead><tr><th> Interface </th><th> Description </th></tr></thead> <tbody><tr><td> [AudioEventPayloads](./server.audioeventpayloads.md) </td><td> Event payloads for Audio emitted events. </td></tr> <tr><td> [AudioOptions](./server.audiooptions.md) </td><td> Options for creating an Audio instance. </td></tr> <tr><td> [BallColliderOptions](./server.ballcollideroptions.md) </td><td> The options for a ball collider. </td></tr> <tr><td> [BaseColliderOptions](./server.basecollideroptions.md) </td><td> The base options for a collider. </td></tr> <tr><td> [BaseEntityControllerEventPayloads](./server.baseentitycontrollereventpayloads.md) </td><td> Event payloads for BaseEntityController emitted events. </td></tr> <tr><td> [BaseEntityOptions](./server.baseentityoptions.md) </td><td> The base options for an entity. </td></tr> <tr><td> [BaseRigidBodyOptions](./server.baserigidbodyoptions.md) </td><td> The base options for a rigid body. </td></tr> <tr><td> [BlockColliderOptions](./server.blockcollideroptions.md) </td><td> The options for a block collider. </td></tr> <tr><td> [BlockEntityOptions](./server.blockentityoptions.md) </td><td> The options for creating a block entity. </td></tr> <tr><td> [BlockTypeEventPayloads](./server.blocktypeeventpayloads.md) </td><td> Event payloads for BlockType emitted events. </td></tr> <tr><td> [BlockTypeOptions](./server.blocktypeoptions.md) </td><td> Options for creating a block type instance. </td></tr> <tr><td> [BlockTypeRegistryEventPayloads](./server.blocktyperegistryeventpayloads.md) </td><td> Event payloads for BlockTypeRegistry emitted events. </td></tr> <tr><td> [CapsuleColliderOptions](./server.capsulecollideroptions.md) </td><td> The options for a capsule collider. </td></tr> <tr><td> [ChatEventPayloads](./server.chateventpayloads.md) </td><td> Event payloads for ChatManager emitted events. </td></tr> <tr><td> [ChunkEventPayloads](./server.chunkeventpayloads.md) </td><td> Event payloads for Chunk emitted events. </td></tr> <tr><td> [ConeColliderOptions](./server.conecollideroptions.md) </td><td> The options for a cone collider. </td></tr> <tr><td> [CylinderColliderOptions](./server.cylindercollideroptions.md) </td><td> The options for a cylinder collider. </td></tr> <tr><td> [DefaultPlayerEntityControllerOptions](./server.defaultplayerentitycontrolleroptions.md) </td><td> Options for creating a DefaultPlayerEntityController instance. </td></tr> <tr><td> [DynamicRigidBodyOptions](./server.dynamicrigidbodyoptions.md) </td><td> The options for a dynamic rigid body, also the default type. </td></tr> <tr><td> [EntityEventPayloads](./server.entityeventpayloads.md) </td><td> Event payloads for Entity emitted events. </td></tr> <tr><td> [EventPayloads](./server.eventpayloads.md) </td><td> The payloads for all events in the game server. </td></tr> <tr><td> [FixedRigidBodyOptions](./server.fixedrigidbodyoptions.md) </td><td> The options for a fixed rigid body. </td></tr> <tr><td> [GameServerEventPayloads](./server.gameservereventpayloads.md) </td><td> Event payloads for GameServer emitted events. </td></tr> <tr><td> [KinematicPositionRigidBodyOptions](./server.kinematicpositionrigidbodyoptions.md) </td><td> The options for a kinematic position rigid body. </td></tr> <tr><td> [KinematicVelocityRigidBodyOptions](./server.kinematicvelocityrigidbodyoptions.md) </td><td> The options for a kinematic velocity rigid body. </td></tr> <tr><td> [LightEventPayloads](./server.lighteventpayloads.md) </td><td> Event payloads for Light emitted events. </td></tr> <tr><td> [LightOptions](./server.lightoptions.md) </td><td> Options for creating a Light instance. </td></tr> <tr><td> [ModelEntityOptions](./server.modelentityoptions.md) </td><td> The options for creating a model entity. </td></tr> <tr><td> [NoneColliderOptions](./server.nonecollideroptions.md) </td><td> The options for an error type "none" collider. </td></tr> <tr><td> [PlayerCameraEventPayloads](./server.playercameraeventpayloads.md) </td><td> Event payloads for PlayerCamera emitted events. </td></tr> <tr><td> [PlayerEventPayloads](./server.playereventpayloads.md) </td><td> Event payloads for Player emitted events. </td></tr> <tr><td> [PlayerManagerEventPayloads](./server.playermanagereventpayloads.md) </td><td> Event payloads for PlayerManager emitted events. </td></tr> <tr><td> [PlayerUIEventPayloads](./server.playeruieventpayloads.md) </td><td> Event payloads for PlayerUI emitted events. </td></tr> <tr><td> [QuaternionLike](./server.quaternionlike.md) </td><td> A quaternion. </td></tr> <tr><td> [RgbColor](./server.rgbcolor.md) </td><td> A RGB color. </td></tr> <tr><td> [RoundCylinderColliderOptions](./server.roundcylindercollideroptions.md) </td><td> The options for a round cylinder collider. </td></tr> <tr><td> [SceneUIEventPayloads](./server.sceneuieventpayloads.md) </td><td> Event payloads for SceneUI emitted events. </td></tr> <tr><td> [SceneUIOptions](./server.sceneuioptions.md) </td><td> Options for creating a SceneUI instance. </td></tr> <tr><td> [SimulationEventPayloads](./server.simulationeventpayloads.md) </td><td> Event payloads for Simulation emitted events. </td></tr> <tr><td> [SpdMatrix3](./server.spdmatrix3.md) </td><td> A 3x3 symmetric positive-definite matrix for spatial dynamics. </td></tr> <tr><td> [TrimeshColliderOptions](./server.trimeshcollideroptions.md) </td><td> The options for a trimesh collider. </td></tr> <tr><td> [Vector2Boolean](./server.vector2boolean.md) </td><td> A 2-dimensional vector of boolean values. </td></tr> <tr><td> [Vector2Like](./server.vector2like.md) </td><td> A 2-dimensional vector. </td></tr> <tr><td> [Vector3Boolean](./server.vector3boolean.md) </td><td> A 3-dimensional vector of boolean values. </td></tr> <tr><td> [Vector3Like](./server.vector3like.md) </td><td> A 3-dimensional vector. </td></tr> <tr><td> [WedgeColliderOptions](./server.wedgecollideroptions.md) </td><td> The options for a wedge collider. </td></tr> <tr><td> [WorldEventPayloads](./server.worldeventpayloads.md) </td><td> Event payloads for World emitted events. </td></tr> <tr><td> [WorldLoopEventPayloads](./server.worldloopeventpayloads.md) </td><td> Event payloads for WorldLoop emitted events. </td></tr> <tr><td> [WorldManagerEventPayloads](./server.worldmanagereventpayloads.md) </td><td> Event payloads for WorldManager emitted events. </td></tr> <tr><td> [WorldMap](./server.worldmap.md) </td><td> A map representation for a world. </td></tr> <tr><td> [WorldOptions](./server.worldoptions.md) </td><td> Options for creating a World instance. </td></tr> </tbody></table> ## Variables <table><thead><tr><th> Variable </th><th> Description </th></tr></thead> <tbody><tr><td> [DEFAULT\_ENTITY\_RIGID\_BODY\_OPTIONS](./server.default_entity_rigid_body_options.md) </td><td> The default rigid body options for a model entity when EntityOptions.rigidBodyOptions is not provided. </td></tr> <tr><td> [PORT](./server.port.md) </td><td> The port the server will run on. You can override this in your .env by setting PORT. When deployed in production to HYTOPIA servers, any .env value will be ignored and 8080 will be used. </td></tr> <tr><td> [SUPPORTED\_INPUT\_KEYS](./server.supported_input_keys.md) </td><td> The input keys that are included in the PlayerInput. </td></tr> </tbody></table> ## Type Aliases <table><thead><tr><th> Type Alias </th><th> Description </th></tr></thead> <tbody><tr><td> [ColliderOptions](./server.collideroptions.md) </td><td> The options for a collider. </td></tr> <tr><td> [CollisionCallback](./server.collisioncallback.md) </td><td> A callback function that is called when a collision occurs. </td></tr> <tr><td> [CollisionGroups](./server.collisiongroups.md) </td><td> A set of collision groups. </td></tr> <tr><td> [CommandCallback](./server.commandcallback.md) </td><td> A callback function for a chat command. </td></tr> <tr><td> [ContactForceData](./server.contactforcedata.md) </td><td> Data for contact forces. </td></tr> <tr><td> [ContactManifold](./server.contactmanifold.md) </td><td> A contact manifold. </td></tr> <tr><td> [DecodedCollisionGroups](./server.decodedcollisiongroups.md) </td><td> A decoded set of collision groups represented as their string equivalents. </td></tr> <tr><td> [DefaultPlayerEntityOptions](./server.defaultplayerentityoptions.md) </td><td> Options for creating a DefaultPlayerEntity instance. </td></tr> <tr><td> [EntityOptions](./server.entityoptions.md) </td><td> The options for creating an Entity instance. </td></tr> <tr><td> [FaceCallback](./server.facecallback.md) </td><td> A callback function called when the entity associated with the SimpleEntityController updates its rotation as it is attempting to face a target coordinate. </td></tr> <tr><td> [FaceCompleteCallback](./server.facecompletecallback.md) </td><td> A callback function called when the entity associated with the SimpleEntityController finishes rotating and is now facing a target coordinate. </td></tr> <tr><td> [FaceOptions](./server.faceoptions.md) </td><td> Options for the [SimpleEntityController.face()](./server.simpleentitycontroller.face.md) method. </td></tr> <tr><td> [FilterOptions](./server.filteroptions.md) </td><td> Filter options for various operations like raycasting and intersections. </td></tr> <tr><td> [IntersectionResult](./server.intersectionresult.md) </td><td> A intersection result. </td></tr> <tr><td> [ModelBoundingBox](./server.modelboundingbox.md) </td><td> A bounding box for a model. </td></tr> <tr><td> [ModelTrimesh](./server.modeltrimesh.md) </td><td> A trimesh for a model. </td></tr> <tr><td> [MoveCallback](./server.movecallback.md) </td><td> A callback function called when the entity associated with the SimpleEntityController updates its position as it is attempting to move to a target coordinate. </td></tr> <tr><td> [MoveCompleteCallback](./server.movecompletecallback.md) </td><td> A callback function called when the entity associated with the SimpleEntityController reaches the target coordinate. An entity must reach the x,y,z coordinate for the callback to be called. </td></tr> <tr><td> [MoveOptions](./server.moveoptions.md) </td><td> Options for the [SimpleEntityController.move()](./server.simpleentitycontroller.move.md) method. </td></tr> <tr><td> [PathfindAbortCallback](./server.pathfindabortcallback.md) </td><td> A callback function called when the pathfinding algorithm aborts. </td></tr> <tr><td> [PathfindCompleteCallback](./server.pathfindcompletecallback.md) </td><td> A callback function called when the entity associated with the PathfindingEntityController finishes pathfinding and is now at the target coordinate. </td></tr> <tr><td> [PathfindingOptions](./server.pathfindingoptions.md) </td><td> Options for the [PathfindingEntityController.pathfind()](./server.pathfindingentitycontroller.pathfind.md) method. </td></tr> <tr><td> [PlayerCameraOrientation](./server.playercameraorientation.md) </td><td> The camera orientation state of a Player. </td></tr> <tr><td> [PlayerEntityOptions](./server.playerentityoptions.md) </td><td> Options for creating a PlayerEntity instance. </td></tr> <tr><td> [PlayerInput](./server.playerinput.md) </td><td> The input state of a Player; keys from SUPPORTED\_INPUT\_KEYS. </td></tr> <tr><td> [RawCollider](./server.rawcollider.md) </td><td> A raw collider object from the Rapier physics engine. </td></tr> <tr><td> [RawCollisionGroups](./server.rawcollisiongroups.md) </td><td> A raw set of collision groups represented as a 32-bit number. </td></tr> <tr><td> [RawShape](./server.rawshape.md) </td><td> A raw shape object from the Rapier physics engine. </td></tr> <tr><td> [RaycastHit](./server.raycasthit.md) </td><td> A hit result from a raycast. </td></tr> <tr><td> [RaycastOptions](./server.raycastoptions.md) </td><td> Options for raycasting. </td></tr> <tr><td> [RigidBodyAdditionalMassProperties](./server.rigidbodyadditionalmassproperties.md) </td><td> Additional mass properties for a RigidBody. </td></tr> <tr><td> [RigidBodyOptions](./server.rigidbodyoptions.md) </td><td> The options for a rigid body. </td></tr> <tr><td> [WaypointMoveCompleteCallback](./server.waypointmovecompletecallback.md) </td><td> A callback function called when the entity associated with the PathfindingEntityController finishes moving to a calculate waypoint of its current path. </td></tr> <tr><td> [WaypointMoveSkippedCallback](./server.waypointmoveskippedcallback.md) </td><td> A callback function called when the entity associated with the PathfindingEntityController skips a waypoint because it took too long to reach. </td></tr> </tbody></table>