anchor.diff:      Helmet = val(item, player),
       attempt(Config, Player, {<<"helmet">>, move, from, Player, to, <<"head">>}),
       ?WAIT100,
  -    Helmet = val(item, head1),
  -    {Head, head} = val(body_part, Helmet),
  +    {Helmet, _BodyPartRef} = val(item, head1),
  +    {body_part, Head, head, _BodyPartRef} = val(body_part, Helmet),
       undefined = val(item, player).
   
   player_wield_body_part_is_full(Config) ->
  
positive.code:     attempt(Config, Player, {<<"ring1">>, move, from, Player, to, <<"finger1">>}),
      ?WAIT100,
      [Ring2] = all(item, player),
      [Ring1] = all(item, finger1),
      {Finger1, finger} = val(body_part, Ring1),
      [] = all(item, finger2),
      attempt(Config, Player, {<<"ring2">>, move, from, Player, to, <<"finger1">>}),
      ?WAIT100,
      [Ring2] = all(item, player),
      [Ring1] = all(item, finger1),
      [] = all(item, finger2),
      attempt(Config, Player, {<<"ring2">>, move, from, Player, to, first_available_body_part}),
      ?WAIT100,
      [] = all(item, player),
      [Ring1] = all(item, finger1),
      [Ring2] = all(item, finger2),
      {Finger2, finger} = val(body_part, Ring2).
  
  player_remove(Config) ->
      start(?WORLD_4),
  
negative.code: % TODO test updating a skill when a target is killed with a weapon (or when damage is dealt, or both)
  
  all() ->
      [look_player].
  %all() ->
      %[player_remove,
       %look_room,
  