Solved [Help] Can't remove chest under End Table with Bouquet

Drache_X

Greenhorn
Hello everybody.

With all the new stuff from 1.5 I redecorated my house.
In some of the prior versions of the game, it was possible to place chests under end tables. I had some of these "combined structures" standing around and I successfully removed all of them.
Then I came across the last one, which had a bouquet on top of the end table. ( I don't remember whether the other (removable) tables had items on top of them)
This one seems impossible to remove, as right-clicking opens the chest, and left-clicking with a tool doesn't do anything.

I don't have and never had any mods installed.
I first noticed the bug in 1.5.
This happened in singleplayer (I doubt that multiplayer can solve it).

Here is a picture of said "combined structure":
chest-bug.png


I would be very glad to receive some help with solving this problem.
 

Attachments

Ok, try doing this:
  1. Go to %appdata%/StardewValley/Saves and look for the folder of your save. It will be named as your farmer or as your farm.
  2. Copy the whole folder somewhere else as a backup if you muck this steps up, or I inadvertently gave you the wrong info. Don't blame me if there's a screwup and you have no way to restore your save! You have been officially warned.
  3. Inside the folder, open the file named as the folder (no _old ending) on your text editor of choice. It may take a while, it's normally a beefy file for some editors.
  4. Look for <DisplayName>Oak End Table</DisplayName>Assuming you only have that one table on your house, you should not have a hard time finding it. If not, take out in-game any other oak end table you may have on your world. If you do this, reopen the file, don't assume your text editor is gonna be aware the file was changed by the game.
  5. You should notice this puts you inside a tag named <Furniture>(The capitalization is important). That's how you know you're in the right spot. You are right now in the XML representation of a Oak End Table, put somewhere on your world. To make doubly sure, go down the tags from <DisplayName>, you should find a tag named <heldObject>. This one tag here defines whatever is on display on the table. If you go inside this tag, and you find the name Bouquet, congrats! You've found your table... unless you have more than one Oak End Table with a Bouquet on display. In that case, I insist you leave them inside a chest or something while you're working to make sure you're operating on the correct one.
  6. Alrighty then, we have found our table. Now, we're moving it aside! Based on the picture you attached, seems like we can move it up one tile no problem. So, make sure you're paying attention, because you're gonna change a few things, and if you leave something unchanged, you risk unexpected things to happen.
  7. Remember, moving it up a tile means substracting from coordinates. The Y coordinate counts from top to bottom.
  8. Okay, here we go:
    1. Inside the <Furniture> that is your Oak End Table, start advancing your text cursor. Before getting to <heldObject>, you should find something like
      XML:
      <tileLocation>
      <X>33</X>
      <Y>18</Y>
      </tileLocation>
      Your coordinates are bound to be different, that's just a random furniture item I experimented with. Take the Y coordinate, and substract one. If it's 12, change it to 11, etc.
    2. Go down the text. You'll end up going inside <heldObject>. The object on display has its own coordinates, look again for <tileLocation>, and change again the coordinate, substracting one. You'll notice both objects ought to have the same coordinates.
    3. Keep going down. Without getting out of the <heldObject> tag, you should find one called <boundingBox>. This one is tricky:
    4. XML:
      <boundingBox>
      <X>2112</X>
      <Y>1152</Y>
      <Width>64</Width>
      <Height>64</Height>
      <Location>
      <X>2112</X>
      <Y>1152</Y>
      </Location>
      </boundingBox>
      Inside both <Y> tags, the one inside <Location> included, you must substract whatever number you find on the <Height> tag. I'm pretty sure it should be 64 like my case, but we'll do this right and you check what number is Height, and substract that. No shame using calculator if you want to be sure, you don't want to mess this up.
    5. Good, we're almost there. Keep going down until you're past the </heldObject> tag, which means we're done with the Bouquet itself. Keep going until you find again the tag <boundingBox>. This time, it's the table bounding box. Do your magic here again. The numbers should be the same than the bouquet, but better not assume and do the whole process: check Height, substract from Y and from Location Y.
  9. Save your changes and load up the savefile in the game. If everything went right, the table should've been moved one tile up, letting you interact with both no problem.
 

Drache_X

Greenhorn
Ok, try doing this:
  1. Go to %appdata%/StardewValley/Saves and look for the folder of your save. It will be named as your farmer or as your farm.
  2. Copy the whole folder somewhere else as a backup if you muck this steps up, or I inadvertently gave you the wrong info. Don't blame me if there's a screwup and you have no way to restore your save! You have been officially warned.
  3. Inside the folder, open the file named as the folder (no _old ending) on your text editor of choice. It may take a while, it's normally a beefy file for some editors.
  4. Look for <DisplayName>Oak End Table</DisplayName>Assuming you only have that one table on your house, you should not have a hard time finding it. If not, take out in-game any other oak end table you may have on your world. If you do this, reopen the file, don't assume your text editor is gonna be aware the file was changed by the game.
  5. You should notice this puts you inside a tag named <Furniture>(The capitalization is important). That's how you know you're in the right spot. You are right now in the XML representation of a Oak End Table, put somewhere on your world. To make doubly sure, go down the tags from <DisplayName>, you should find a tag named <heldObject>. This one tag here defines whatever is on display on the table. If you go inside this tag, and you find the name Bouquet, congrats! You've found your table... unless you have more than one Oak End Table with a Bouquet on display. In that case, I insist you leave them inside a chest or something while you're working to make sure you're operating on the correct one.
  6. Alrighty then, we have found our table. Now, we're moving it aside! Based on the picture you attached, seems like we can move it up one tile no problem. So, make sure you're paying attention, because you're gonna change a few things, and if you leave something unchanged, you risk unexpected things to happen.
  7. Remember, moving it up a tile means substracting from coordinates. The Y coordinate counts from top to bottom.
  8. Okay, here we go:
    1. Inside the <Furniture> that is your Oak End Table, start advancing your text cursor. Before getting to <heldObject>, you should find something like
      XML:
      <tileLocation>
      <X>33</X>
      <Y>18</Y>
      </tileLocation>
      Your coordinates are bound to be different, that's just a random furniture item I experimented with. Take the Y coordinate, and substract one. If it's 12, change it to 11, etc.
    2. Go down the text. You'll end up going inside <heldObject>. The object on display has its own coordinates, look again for <tileLocation>, and change again the coordinate, substracting one. You'll notice both objects ought to have the same coordinates.
    3. Keep going down. Without getting out of the <heldObject> tag, you should find one called <boundingBox>. This one is tricky:
    4. XML:
      <boundingBox>
      <X>2112</X>
      <Y>1152</Y>
      <Width>64</Width>
      <Height>64</Height>
      <Location>
      <X>2112</X>
      <Y>1152</Y>
      </Location>
      </boundingBox>
      Inside both <Y> tags, the one inside <Location> included, you must substract whatever number you find on the <Height> tag. I'm pretty sure it should be 64 like my case, but we'll do this right and you check what number is Height, and substract that. No shame using calculator if you want to be sure, you don't want to mess this up.
    5. Good, we're almost there. Keep going down until you're past the </heldObject> tag, which means we're done with the Bouquet itself. Keep going until you find again the tag <boundingBox>. This time, it's the table bounding box. Do your magic here again. The numbers should be the same than the bouquet, but better not assume and do the whole process: check Height, substract from Y and from Location Y.
  9. Save your changes and load up the savefile in the game. If everything went right, the table should've been moved one tile up, letting you interact with both no problem.
Hi,
I carefully followed your instructions.
I am pretty sure I did everything right, but nothing changed. The end table is still stuck on top of the chest.
The changes in the game file have been saved, I checked that.

So I tried something myself:
1. Opening the file named like (name_number) in a text editor.
2. Looking for the right end table inside the <Furniture> tag, like you explained.
3. Deleting everything between that <Furniture> and the next </Furniture>.
4. Loading up the save file and being left with only the chest, no more stuck tables.

Thank you very very much laotrayamada.
Without your detailed explanation, I would not have been able do solve this.
 
Top