Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

entity.passengers not correct #3600

Open
1 task done
llmlover opened this issue Mar 8, 2025 · 6 comments
Open
1 task done

entity.passengers not correct #3600

llmlover opened this issue Mar 8, 2025 · 6 comments
Labels
possible bug Stage1 just created by someone new to the project, we don't know yet if it deserves an implementation / a f

Comments

@llmlover
Copy link

llmlover commented Mar 8, 2025

  • The FAQ doesn't contain a resolution to my issue

Versions

  • mineflayer: ^4.26.0
  • server: vanilla/spigot/paper 1.21.1 - vanilla
  • node: v22.13.1

Detailed description of a problem

Display entity passengers are not being parsed/read

Your current code

bot.once('spawn', async () => {
const blockDisplays = Object.values(bot.entities).filter(e => e.name === 'block_display')
  const getGun = () => blockDisplays.find(e => e.getCustomName()?.toString() === 'GUN') 

  let gun = getGun()
  if(!gun) {
    bot.chat('Summoning gun')
    bot.chat(`/summon block_display ~-0.5 ~-0.5 ~-0.5 {teleport_duration:2, CustomName:'"GUN"', Tags:["GUN"], Passengers:[{id:"minecraft:item_display",item:{id:"minecraft:player_head",Count:1,components:{"minecraft:profile":{id:[I;-1744031622,2084127869,-1680359937,1504765564],properties:[{name:"textures",value:"ewogICJ0aW1lc3RhbXAiIDogMTc0MDU3NzEyNjQ1MywKICAicHJvZmlsZUlkIiA6ICI4ZjllYTBhNWJhOGE0NTNkYTgzNTBmYjRmNzVmOTJiOSIsCiAgInByb2ZpbGVOYW1lIiA6ICJDeWJlck1pbm55IiwKICAic2lnbmF0dXJlUmVxdWlyZWQiIDogdHJ1ZSwKICAidGV4dHVyZXMiIDogewogICAgIlNLSU4iIDogewogICAgICAidXJsIiA6ICJodHRwOi8vdGV4dHVyZXMubWluZWNyYWZ0Lm5ldC90ZXh0dXJlL2MwOWU3OWZlZWEwNjFjOGFkNGU4MzE1YTMxYzJlNjg0Y2IwNGE2YTY1OWNjM2YxNTk2YzYwOTE5NjkxNDVkZDEiLAogICAgICAibWV0YWRhdGEiIDogewogICAgICAgICJtb2RlbCIgOiAic2xpbSIKICAgICAgfQogICAgfQogIH0KfQ=="}]}}},item_display:"none",transformation:[0.2165063509f,-0.25f,0f,0.428125f,0.125f,0.4330127019f,0f,0.25f,0f,0f,0.127f,0f,0f,0f,0f,1f]},{id:"minecraft:item_display",item:{id:"minecraft:player_head",Count:1,components:{"minecraft:profile":{id:[I;-1659641422,-1328908116,1574678496,1025501856],properties:[{name:"textures",value:"ewogICJ0aW1lc3RhbXAiIDogMTc0MDc0NzQ3OTkyMiwKICAicHJvZmlsZUlkIiA6ICJjNWVmOGQ1NDIwOWY0OTdlYWYzYzA1NjA3MjZhYTMwNSIsCiAgInByb2ZpbGVOYW1lIiA6ICJNaXNoX0RheCIsCiAgInNpZ25hdHVyZVJlcXVpcmVkIiA6IHRydWUsCiAgInRleHR1cmVzIiA6IHsKICAgICJTS0lOIiA6IHsKICAgICAgInVybCIgOiAiaHR0cDovL3RleHR1cmVzLm1pbmVjcmFmdC5uZXQvdGV4dHVyZS84YzFmNzJiMDlhODNkOTc4NTdmZDRlNmZmNDU1NDQ0ODFlZTE4MzU3MTVkOTNhZWViZDA4NTM3MDdmMGQxYTAzIiwKICAgICAgIm1ldGFkYXRhIiA6IHsKICAgICAgICAibW9kZWwiIDogInNsaW0iCiAgICAgIH0KICAgIH0KICB9Cn0="}]}}},item_display:"none",transformation:[1f,0f,0f,0.125f,0f,0.1875f,0f,0.3125f,0f,0f,0.1875f,-0.0625f,0f,0f,0f,1f]},{id:"minecraft:item_display",item:{id:"minecraft:player_head",Count:1,components:{"minecraft:profile":{id:[I;-417829621,499414305,599967922,228796151],properties:[{name:"textures",value:"ewogICJ0aW1lc3RhbXAiIDogMTc0MTI2MjY1ODI2MCwKICAicHJvZmlsZUlkIiA6ICJjYmNkNDQzZGE1NTI0OGU3ODM3NWNmZjYwMmQzZWI0NyIsCiAgInByb2ZpbGVOYW1lIiA6ICJPX1JlaSIsCiAgInNpZ25hdHVyZVJlcXVpcmVkIiA6IHRydWUsCiAgInRleHR1cmVzIiA6IHsKICAgICJTS0lOIiA6IHsKICAgICAgInVybCIgOiAiaHR0cDovL3RleHR1cmVzLm1pbmVjcmFmdC5uZXQvdGV4dHVyZS8zYzM2ZjM5MzUyNGE0MTdiYWFhMDg3MWFkZTIzZGE0ZGM5ZDllM2Q3OTE5NGJjMDcyNWExM2VmODlkM2E2MTFkIiwKICAgICAgIm1ldGFkYXRhIiA6IHsKICAgICAgICAibW9kZWwiIDogInNsaW0iCiAgICAgIH0KICAgIH0KICB9Cn0="}]}}},item_display:"none",transformation:[0.375f,0f,0f,0.28125f,0f,0.125f,0f,0.21875f,0f,0f,0.25f,0f,0f,0f,0f,1f]},{id:"minecraft:item_display",item:{id:"minecraft:player_head",Count:1,components:{"minecraft:profile":{id:[I;-1712792595,-422447315,880239510,-224738496],properties:[{name:"textures",value:"ewogICJ0aW1lc3RhbXAiIDogMTc0MTI2MjY2Mjg3NSwKICAicHJvZmlsZUlkIiA6ICI2MTU1NTMyOTY2OWM0ZDA5YmFiOGJlNDNkYWUwYTRjMyIsCiAgInByb2ZpbGVOYW1lIiA6ICJmaTAxNSIsCiAgInNpZ25hdHVyZVJlcXVpcmVkIiA6IHRydWUsCiAgInRleHR1cmVzIiA6IHsKICAgICJTS0lOIiA6IHsKICAgICAgInVybCIgOiAiaHR0cDovL3RleHR1cmVzLm1pbmVjcmFmdC5uZXQvdGV4dHVyZS9jYWVjNjA2MWU2OTkyOWZmZTdhOGY5YjY4YTg2MWIwMWQ4NWZhZWY1MjZkNzkzMzNkNjYxYWM0NmUxZjk4YTYiLAogICAgICAibWV0YWRhdGEiIDogewogICAgICAgICJtb2RlbCIgOiAic2xpbSIKICAgICAgfQogICAgfQogIH0KfQ=="}]}}},item_display:"none",transformation:[0f,-0.125f,0f,0.375f,0.25f,0f,0f,0.21875f,0f,0f,0.3125f,0f,0f,0f,0f,1f]},{id:"minecraft:item_display",item:{id:"minecraft:player_head",Count:1,components:{"minecraft:profile":{id:[I;-425608159,443406303,1613921337,-740588461],properties:[{name:"textures",value:"ewogICJ0aW1lc3RhbXAiIDogMTc0MTI2MjY2NzgzNSwKICAicHJvZmlsZUlkIiA6ICIyYjcyZWYyYWUzMmQ0Zjc1OGEyMThlMDI4MTViYmNjZSIsCiAgInByb2ZpbGVOYW1lIiA6ICJ2b2xrb2RhZl82MyIsCiAgInNpZ25hdHVyZVJlcXVpcmVkIiA6IHRydWUsCiAgInRleHR1cmVzIiA6IHsKICAgICJTS0lOIiA6IHsKICAgICAgInVybCIgOiAiaHR0cDovL3RleHR1cmVzLm1pbmVjcmFmdC5uZXQvdGV4dHVyZS83NDVkZGJkODE1YTE3ZjhjZmE3ZjUyNjNhYmIzOWY2MTFmOTNmMjhhZmI1ZWUwMTYwN2YxOTRkYzI2ZWRiMDk1IiwKICAgICAgIm1ldGFkYXRhIiA6IHsKICAgICAgICAibW9kZWwiIDogInNsaW0iCiAgICAgIH0KICAgIH0KICB9Cn0="}]}}},item_display:"none",transformation:[0.0625f,-0.0009526279f,0f,0.453125f,0.1082531755f,0.00055f,0f,0.308125f,0f,0f,0.125f,-0.046875f,0f,0f,0f,1f],view_range:0.2f},{id:"minecraft:item_display",item:{id:"minecraft:player_head",Count:1,components:{"minecraft:profile":{id:[I;969493673,-1043155156,1672834615,1039622207],properties:[{name:"textures",value:"ewogICJ0aW1lc3RhbXAiIDogMTc0MDU3NDg4NTE1OSwKICAicHJvZmlsZUlkIiA6ICJkNDAwODgyZmY3OGQ0ZGVhYjliMGNlMTc2YmQ1ZTQyMyIsCiAgInByb2ZpbGVOYW1lIiA6ICJQcmF4aWJldGwiLAogICJzaWduYXR1cmVSZXF1aXJlZCIgOiB0cnVlLAogICJ0ZXh0dXJlcyIgOiB7CiAgICAiU0tJTiIgOiB7CiAgICAgICJ1cmwiIDogImh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZjJlNDA1Y2U3MzQxZDM4NmM2ZmM5OGNjNjMwMzMwOWY0M2JkNDhiNWE2M2FhZTFkZWU5ZmQ3OWM1NWQ1MTU3MCIKICAgIH0KICB9Cn0="}]}}},item_display:"none",transformation:[4.6e-9f,0f,0.125f,0.40625f,0.125f,0f,-4.6e-9f,0.15625f,0f,0.0011f,0f,0f,0f,0f,0f,1f],view_range:0.2f},{id:"minecraft:item_display",item:{id:"minecraft:player_head",Count:1,components:{"minecraft:profile":{id:[I;1926620306,-1951415472,1081643122,-1234955781],properties:[{name:"textures",value:"ewogICJ0aW1lc3RhbXAiIDogMTc0MDU3NDg5MTA2NSwKICAicHJvZmlsZUlkIiA6ICJkZjM1MjcwM2MxMzI0MjYwYjQ1NGQ3ODI3MjU5YjVhOSIsCiAgInByb2ZpbGVOYW1lIiA6ICJMdW5jaGVyMTU1IiwKICAic2lnbmF0dXJlUmVxdWlyZWQiIDogdHJ1ZSwKICAidGV4dHVyZXMiIDogewogICAgIlNLSU4iIDogewogICAgICAidXJsIiA6ICJodHRwOi8vdGV4dHVyZXMubWluZWNyYWZ0Lm5ldC90ZXh0dXJlLzdlZTAyZjA2MTRlODkwM2IwMjE2OGQ3YTgyNTc1OWVkZjk0ZTM5NmQzNDNlYmRhMzk3ZTdjY2FmNWZkYTEwNTAiCiAgICB9CiAgfQp9"}]}}},item_display:"none",transformation:[4.6e-9f,0f,0.125f,0.28125f,0.125f,0f,-4.6e-9f,0.15625f,0f,0.0011f,0f,0f,0f,0f,0f,1f],view_range:0.2f},{id:"minecraft:item_display",item:{id:"minecraft:player_head",Count:1,components:{"minecraft:profile":{id:[I;-281848655,2062453722,1699536097,-1187231155],properties:[{name:"textures",value:"ewogICJ0aW1lc3RhbXAiIDogMTc0MDU3NDg4NTE1OSwKICAicHJvZmlsZUlkIiA6ICJkNDAwODgyZmY3OGQ0ZGVhYjliMGNlMTc2YmQ1ZTQyMyIsCiAgInByb2ZpbGVOYW1lIiA6ICJQcmF4aWJldGwiLAogICJzaWduYXR1cmVSZXF1aXJlZCIgOiB0cnVlLAogICJ0ZXh0dXJlcyIgOiB7CiAgICAiU0tJTiIgOiB7CiAgICAgICJ1cmwiIDogImh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZjJlNDA1Y2U3MzQxZDM4NmM2ZmM5OGNjNjMwMzMwOWY0M2JkNDhiNWE2M2FhZTFkZWU5ZmQ3OWM1NWQ1MTU3MCIKICAgIH0KICB9Cn0="}]}}},item_display:"none",transformation:[3.7e-9f,0f,0.125f,0.34375f,0.125f,0f,-3.7e-9f,0.09375f,0f,0.0011f,0f,0f,0f,0f,0f,1f],view_range:0.2f},{id:"minecraft:item_display",item:{id:"minecraft:player_head",Count:1,components:{"minecraft:profile":{id:[I;-1996915133,-923970283,403257776,1021120216],properties:[{name:"textures",value:"ewogICJ0aW1lc3RhbXAiIDogMTc0MDc0NzQ3OTkyMiwKICAicHJvZmlsZUlkIiA6ICJjNWVmOGQ1NDIwOWY0OTdlYWYzYzA1NjA3MjZhYTMwNSIsCiAgInByb2ZpbGVOYW1lIiA6ICJNaXNoX0RheCIsCiAgInNpZ25hdHVyZVJlcXVpcmVkIiA6IHRydWUsCiAgInRleHR1cmVzIiA6IHsKICAgICJTS0lOIiA6IHsKICAgICAgInVybCIgOiAiaHR0cDovL3RleHR1cmVzLm1pbmVjcmFmdC5uZXQvdGV4dHVyZS84YzFmNzJiMDlhODNkOTc4NTdmZDRlNmZmNDU1NDQ0ODFlZTE4MzU3MTVkOTNhZWViZDA4NTM3MDdmMGQxYTAzIiwKICAgICAgIm1ldGFkYXRhIiA6IHsKICAgICAgICAibW9kZWwiIDogInNsaW0iCiAgICAgIH0KICAgIH0KICB9Cn0="}]}}},item_display:"none",transformation:[1f,0f,0f,0.125f,0f,0.1875f,0f,0.3125f,0f,0f,0.1875f,0.0625f,0f,0f,0f,1f]},{id:"minecraft:item_display",item:{id:"minecraft:player_head",Count:1,components:{"minecraft:profile":{id:[I;1808043836,1307451922,1086837709,401940789],properties:[{name:"textures",value:"ewogICJ0aW1lc3RhbXAiIDogMTc0MTI2MjY3MjY3OCwKICAicHJvZmlsZUlkIiA6ICIwZWQ2MDFlMDhjZTM0YjRkYWUxZmI4MDljZmEwNTM5NiIsCiAgInByb2ZpbGVOYW1lIiA6ICJOZWVkTW9yZUFjY291bnRzIiwKICAic2lnbmF0dXJlUmVxdWlyZWQiIDogdHJ1ZSwKICAidGV4dHVyZXMiIDogewogICAgIlNLSU4iIDogewogICAgICAidXJsIiA6ICJodHRwOi8vdGV4dHVyZXMubWluZWNyYWZ0Lm5ldC90ZXh0dXJlL2YwOGExZTU2ZmVhYzBmNDM2OTNkYWM4MTJmMzJhZmVmMTY0MDdlZTExODIxYmYwNDA4YTkyMjE1OTY1ZjRmZDQiLAogICAgICAibWV0YWRhdGEiIDogewogICAgICAgICJtb2RlbCIgOiAic2xpbSIKICAgICAgfQogICAgfQogIH0KfQ=="}]}}},item_display:"none",transformation:[0.0625f,-0.0009526279f,0f,0.453125f,0.1082531755f,0.00055f,0f,0.308125f,0f,0f,0.125f,0.046875f,0f,0f,0f,1f],view_range:0.2f},{id:"minecraft:item_display",item:{id:"minecraft:player_head",Count:1,components:{"minecraft:profile":{id:[I;1739305844,82696078,1473221993,-1870441528],properties:[{name:"textures",value:"ewogICJ0aW1lc3RhbXAiIDogMTc0MTI2MjY2NzgzNSwKICAicHJvZmlsZUlkIiA6ICIyYjcyZWYyYWUzMmQ0Zjc1OGEyMThlMDI4MTViYmNjZSIsCiAgInByb2ZpbGVOYW1lIiA6ICJ2b2xrb2RhZl82MyIsCiAgInNpZ25hdHVyZVJlcXVpcmVkIiA6IHRydWUsCiAgInRleHR1cmVzIiA6IHsKICAgICJTS0lOIiA6IHsKICAgICAgInVybCIgOiAiaHR0cDovL3RleHR1cmVzLm1pbmVjcmFmdC5uZXQvdGV4dHVyZS83NDVkZGJkODE1YTE3ZjhjZmE3ZjUyNjNhYmIzOWY2MTFmOTNmMjhhZmI1ZWUwMTYwN2YxOTRkYzI2ZWRiMDk1IiwKICAgICAgIm1ldGFkYXRhIiA6IHsKICAgICAgICAibW9kZWwiIDogInNsaW0iCiAgICAgIH0KICAgIH0KICB9Cn0="}]}}},item_display:"none",transformation:[0f,-0.125f,0f,0.125f,0.125f,0f,0f,0.28125f,0f,0f,0.125f,0f,0f,0f,0f,1f],view_range:0.2f},{id:"minecraft:item_display",item:{id:"minecraft:player_head",Count:1,components:{"minecraft:profile":{id:[I;-311039284,-1420681984,-1844946264,-424616257],properties:[{name:"textures",value:"ewogICJ0aW1lc3RhbXAiIDogMTc0MTI2MjY2NzgzNSwKICAicHJvZmlsZUlkIiA6ICIyYjcyZWYyYWUzMmQ0Zjc1OGEyMThlMDI4MTViYmNjZSIsCiAgInByb2ZpbGVOYW1lIiA6ICJ2b2xrb2RhZl82MyIsCiAgInNpZ25hdHVyZVJlcXVpcmVkIiA6IHRydWUsCiAgInRleHR1cmVzIiA6IHsKICAgICJTS0lOIiA6IHsKICAgICAgInVybCIgOiAiaHR0cDovL3RleHR1cmVzLm1pbmVjcmFmdC5uZXQvdGV4dHVyZS83NDVkZGJkODE1YTE3ZjhjZmE3ZjUyNjNhYmIzOWY2MTFmOTNmMjhhZmI1ZWUwMTYwN2YxOTRkYzI2ZWRiMDk1IiwKICAgICAgIm1ldGFkYXRhIiA6IHsKICAgICAgICAibW9kZWwiIDogInNsaW0iCiAgICAgIH0KICAgIH0KICB9Cn0="}]}}},item_display:"none",transformation:[0f,-0.125f,0f,-0.0625f,0.125f,0f,0f,0.28125f,0f,0f,0.125f,0f,0f,0f,0f,1f],view_range:0.2f}]}`)
    gun = getGun()
  }

  bot.chat(`Gun children entities: ${gun?.passengers?.length}`)
}

Expected behavior

should contain all passenger item display entities

@llmlover llmlover added possible bug Stage1 just created by someone new to the project, we don't know yet if it deserves an implementation / a f labels Mar 8, 2025
@llmlover llmlover changed the title entity.passengers undefined entity.passengers not correct Mar 8, 2025
@llmlover
Copy link
Author

llmlover commented Mar 8, 2025

Adding a 10s delay after spawning now returns something, but only two of the 12 passenger item_displays are visible, why is that?

<ref *1> Entity {
  _events: [Object: null prototype] {},
  _eventsCount: 0,
  _maxListeners: undefined,
  id: 143486,
  position: Vec3 { x: 78.5, y: 54.0625, z: 54.5 },
  velocity: Vec3 { x: 0, y: 0, z: 0 },
  yaw: 3.141592653589793,
  pitch: 0,
  onGround: true,
  height: 0,
  width: 0,
  effects: {},
  equipment: [ <5 empty items> ],
  isValid: true,
  metadata: [
    <2 empty items>,
    { type: 'string', value: 'GUN' },
    <7 empty items>,
    2
  ],
  passengers: [
    Entity {
      _events: [Object: null prototype] {},
      _eventsCount: 0,
      _maxListeners: undefined,
      id: 143497,
      position: [Vec3],
      velocity: [Vec3],
      yaw: 3.141592653589793,
      pitch: 0,
      onGround: true,
      height: 0,
      width: 0,
      effects: {},
      equipment: [Array],
      isValid: true,
      metadata: [],
      passengers: [],
      vehicle: [Circular *1],
      type: 'other',
      displayName: 'Item Display',
      entityType: 59,
      name: 'item_display',
      kind: 'Immobile',
      [Symbol(shapeMode)]: false,
      [Symbol(kCapture)]: false
    },
    Entity {
      _events: [Object: null prototype] {},
      _eventsCount: 0,
      _maxListeners: undefined,
      id: 143498,
      position: [Vec3],
      velocity: [Vec3],
      yaw: 3.141592653589793,
      pitch: 0,
      onGround: true,
      height: 0,
      width: 0,
      effects: {},
      equipment: [Array],
      isValid: true,
      metadata: [],
      passengers: [],
      vehicle: [Circular *1],
      type: 'other',
      displayName: 'Item Display',
      entityType: 59,
      name: 'item_display',
      kind: 'Immobile',
      [Symbol(shapeMode)]: false,
      [Symbol(kCapture)]: false
    }
  ],
  vehicle: null,
  type: 'other',
  displayName: 'Block Display',
  entityType: 9,
  name: 'block_display',
  kind: 'Immobile',
  [Symbol(shapeMode)]: false,
  [Symbol(kCapture)]: false
}
{
  translation: { x: 0, y: 0, z: 0 },
  scale: { x: 1, y: 1, z: 1 },
  leftRotation: { x: 0, y: 0, z: 0, w: 1 },
  rightRotation: { x: 0, y: 0, z: 0, w: 1 }
}
Gun children entities: 2

@SinanAkkoyun
Copy link

This is odd, if it detects one passenger it should detect all, let me investigate as I face a similar issue

@SinanAkkoyun
Copy link

Fixed :) Please merge

@llmlover
Copy link
Author

llmlover commented Mar 8, 2025

@rom1504

@rom1504
Copy link
Member

rom1504 commented Mar 9, 2025

There is no correct PR on this topic

@SinanAkkoyun
Copy link

@rom1504 I'm curious, why incorrect? With originalVehicle.passengers = originalVehicle.passengers.splice(index, 1), you replace the passengers with only the removed entity. splice modifies the array, but it's return value is what it removed

However, could you please take a look at this? It would mean a lot to me
PrismarineJS/node-minecraft-protocol#1380

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
possible bug Stage1 just created by someone new to the project, we don't know yet if it deserves an implementation / a f
Projects
None yet
Development

No branches or pull requests

3 participants