efroemling / ballistica

The BombSquad Game Engine
Other
529 stars 107 forks source link

specified hold_body (3) not found on hold_node #311

Open FAL-Guys opened 3 years ago

FAL-Guys commented 3 years ago

specified hold_body (3) not found on hold_node

I made a prop node and passed it footing & object materials but when we SOMETIMES take it (pick it) it returns this error:

SRC NODE: <ballistica::Node #258 "spaz@spaz.py:126">
OPP NODE: <ballistica::Node #46 "prop@FlotatingMine.py:37">
SRC BODY 0
OPP BODY 3
REVERSE 0
ERROR: exception in Python call:
  root call: <unavailable>
  context: <bastd.game.race.RaceGame object at 0x7fad65774fd0>
  real-time: 61877
  sim-time: 29584
  base-time: 29592
Traceback (most recent call last):
  File "/root/BombSquad_Server_Linux_1.6.4/dist/ba_data/python/bastd/actor/playerspaz.py", line 275, in handlemessage
    return super().handlemessage(msg)
  File "/root/BombSquad_Server_Linux_1.6.4/dist/ba_data/python/bastd/actor/spaz.py", line 1201, in handlemessage
    self.node.hold_node = opposingnode
RuntimeError: specified hold_body (3) not found on hold_node: <ballistica::Node #46 "prop@FlotatingMine.py:37">

I even passed this material to the node, but no difference:

shared = SharedObjects.get()

mine_material = ba.Material()
mine_material.add_actions(
    conditions=('they_have_material', shared.pickup_material),
    actions=('modify_part_collision', 'use_node_collide', False),
)

accodring to the error is spaz.py, when taking a node, opposingbody equals 3 I guess the problem is for when the whole parts of the body of the character is colliding with a node (thouching a node)

FAL-Guys commented 2 years ago

anything changed since then?