1
0
mirror of https://github.com/Mojang/bedrock-protocol-docs.git synced 2025-10-18 16:05:40 +00:00
Files
bedrock-protocol-docs/docs/SetActorMotionPacket.html

229 lines
6.0 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SetActorMotionPacket (40)</title>
<style>
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
margin: 0;
padding: 20px;
background-color: #f5f5f5;
line-height: 1.6;
}
.container {
max-width: 1200px;
margin: 0 auto;
background-color: white;
padding: 30px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
h1 {
color: #2c3e50;
border-bottom: 3px solid #3498db;
padding-bottom: 10px;
margin-top: 0;
}
h2 {
color: #34495e;
border-bottom: 2px solid #3498db;
padding-bottom: 5px;
margin-top: 30px;
}
h3 {
color: #555;
margin-top: 20px;
margin-bottom: 10px;
}
h4 {
color: #666;
margin-top: 15px;
margin-bottom: 8px;
}
table {
background-color: white;
font-size: 14px;
margin-bottom: 10px;
}
th {
font-weight: bold;
text-align: left;
padding: 8px !important;
}
td {
padding: 8px !important;
}
tr:nth-child(even) {
background-color: #f9f9f9;
}
tr:hover {
background-color: #e8f4f8;
}
.description {
color: #555;
font-style: italic;
margin: 10px 0 20px 0;
padding: 10px;
background-color: #f8f9fa;
border-left: 4px solid #3498db;
}
a {
color: #3498db;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
.packet-list {
columns: 3;
column-gap: 20px;
}
.packet-list li {
margin-bottom: 8px;
break-inside: avoid;
}
@media (max-width: 900px) {
.packet-list {
columns: 2;
}
}
@media (max-width: 600px) {
.packet-list {
columns: 1;
}
}
</style>
</head>
<body>
<div class="container">
<p><a href="index.html">← Back to Index</a></p>
<h1>SetActorMotionPacket (40)</h1>
<div class="description">This is used for the server to set the velocity of a client actor.</div>
<div class="description">
It is primarily relevant for client predicted entities like the player or a boat or horse they are in control of.
For most other actor types it does nothing.&lt;br&gt;
This is one of the packets that can directly affect player motion, for others, see:&lt;br&gt;
- MovePlayerPacket&lt;br&gt;
- CorrectPlayerMovePredictionPacket
</div>
<div style="margin-left: 0px; margin-top: 10px;">
<table border="1" cellpadding="5" cellspacing="0" style="border-collapse: collapse; width: 100%; max-width: 800px;">
<thead>
<tr style="background-color: #f0f0f0;">
<th>Field Name</th>
<th>Type</th>
<th>Ordinal Index</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td rowspan="2"><strong>Target Runtime ID</strong></td>
<td>ActorRuntimeID</td>
<td>0</td>
<td></td>
</tr>
<tr>
<td colspan="3"><div style="margin-left: 20px; margin-top: 10px;">
<h3>ActorRuntimeID</h3>
<table border="1" cellpadding="5" cellspacing="0" style="border-collapse: collapse; width: 100%; max-width: 800px;">
<thead>
<tr style="background-color: #f0f0f0;">
<th>Field Name</th>
<th>Type</th>
<th>Ordinal Index</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Actor Runtime ID</strong></td>
<td>varuint64</td>
<td>0</td>
<td></td>
</tr>
</tbody>
</table>
</div></td>
</tr>
<tr>
<td rowspan="2"><strong>Motion</strong></td>
<td>Vec3</td>
<td>1</td>
<td></td>
</tr>
<tr>
<td colspan="3"><div style="margin-left: 20px; margin-top: 10px;">
<h3>Vec3</h3>
<table border="1" cellpadding="5" cellspacing="0" style="border-collapse: collapse; width: 100%; max-width: 800px;">
<thead>
<tr style="background-color: #f0f0f0;">
<th>Field Name</th>
<th>Type</th>
<th>Ordinal Index</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>X</strong></td>
<td>float</td>
<td>0</td>
<td></td>
</tr>
<tr>
<td><strong>Y</strong></td>
<td>float</td>
<td>1</td>
<td></td>
</tr>
<tr>
<td><strong>Z</strong></td>
<td>float</td>
<td>2</td>
<td></td>
</tr>
</tbody>
</table>
</div></td>
</tr>
<tr>
<td rowspan="2"><strong>Tick</strong></td>
<td>PlayerInputTick</td>
<td>2</td>
<td>If this packet is referring to the player or a client predicted vehicle they are in control of, this should be the most recently processed PlayerInputTick from their PlayerAuthInputPacket. Otherwise zero.</td>
</tr>
<tr>
<td colspan="3"><div style="margin-left: 20px; margin-top: 10px;">
<h3>PlayerInputTick</h3>
<table border="1" cellpadding="5" cellspacing="0" style="border-collapse: collapse; width: 100%; max-width: 800px;">
<thead>
<tr style="background-color: #f0f0f0;">
<th>Field Name</th>
<th>Type</th>
<th>Ordinal Index</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Input tick</strong></td>
<td>varuint64</td>
<td>0</td>
<td>In server authoritative movement mode the client supplies this in PlayerAuthInputPacket.
For any client-bound packets containing a tick, the server should supply the tick value corresponding to the most recently processed PlayerAuthInputPacket.
This allows the client to adjust any client predictions made while the packet was in flight.
If the packet is being sent to the client but not relating to data of the player or a client-predicted vehicle, it can be zero.
It is also acceptable to specify zero for players, although this may lead to minor visual flickers and less smooth application of CorrectPlayerMovePredictionPacket.</td>
</tr>
</tbody>
</table>
</div></td>
</tr>
</tbody>
</table>
</div>
</div>
</body>
</html>