Slimefun / Slimefun4

Slimefun 4 - A unique Spigot/Paper plugin that looks and feels like a modpack. We've been giving you backpacks, jetpacks, reactors and much more since 2013.
GNU General Public License v3.0
959 stars 548 forks source link

Androids stop working and turn into CS core-lib heads #2111

Open pmyers123 opened 4 years ago

pmyers123 commented 4 years ago

Description (Required)

When any android is given a program that includes movement off of it's initial position (not turning, but actual movement) given enough time (between 10 minutes and 4 hours on average) the androids cease to move, are no longer androids and turn back into heads.

Steps to reproduce the Issue (Required)

When writing a script that involves android movement forward up or down, after a period of time of the android running the script, the android no longer functions. When mined, it turns into a cs core-lib head. You cannot interact with the android. I have tested this with all types of androids and the same thing happens. The video below is from a lets play. I apologize but it's the only video I have.

https://www.youtube.com/watch?v=chHG6aJVsGw&t=74s

You should be able to see in the first few minutes the farm design i made and will see a number of androids have stopped. In the video i attempt to show you that the android interface cannot be brought up by right clicking the android. Instead it is now simply a head.

In the video, the script that the farmer android has is as follows

Pull fuel, turn left, go forward, turn left (advanced harvest and replant, go forward) 9 times, push items into interface, turn left, go forward, turn left, (advanced harvest and replant, go forward) 9 times, then repeat.

Expected behavior (Required)

The androids should continue to function as expected instead of turning into heads. ## Server Log / Error Report

https://github.com/TheBusyBiscuit/Slimefun4/files/4962340/2020-07-11-2.log.zip

The error logs in slimefun only contained information relating to a barrel bug that has also been reported.

Environment (Required)

image

TheBusyBiscuit commented 4 years ago

Malformed issue, and the video link seems to be wrong.

TheBusyBot commented 4 years ago

Your issue was closed, it may fall under one or more of the following categories. Please wait for an admin to tick off the points that apply.

Please respond below, if you have any questions. Do not open a new Issue unless explicitly told otherwise, comment below or edit your post instead.

Make sure to check out our article on How to report bugs for even more information.

pmyers123 commented 4 years ago

your template was followed. I don't know what else you want me to write I'm not going to make up words just to satisfy a 6 sentence requirement. You have everything you need to investigate this cause, and video proof. It is exactly as I said. code an android to move. run the script for some time. eventually every android stops being an android and turns into a head. There's nothing else to give you. please fix this problem

pmyers123 commented 4 years ago

if there is a specific thing you are looking for you will have to tell me because I'm not a mind reader. I guess i thought you'd be more concerned your plugin is broken than getting technical on a sentence requirement.

TheBusyBiscuit commented 4 years ago
  1. Your text is blended into the heading, making it a bit malformed and hard to read.
  2. The environments screenshot is also very hard to read, as it's colors fade into the background since it was taken in front of a green hologram.
  3. The video you linked seems to be a 20-minute let's play. An actual hands-on video footage of the issue occuring would be much more helpful
  4. You will need to elaborate terms like "it turns into a head", what exactly did happen, what exactly did you do.
  5. Did you read the Common Issues section in the wiki since this problem is covered with that?
  6. Did you use the debugging tools as recommended in such situations?
  7. What did the debugging diagnosis say on that block? Did you check surrounding blocks for ghost blocks?
  8. Also define "no longer working" or "not being an android" anymore.
  9. You could have also attached the actual script used to cause this and the actual android model, did this happen to all androids, only specific ones, etc...?
  10. There was no server log provided.
  11. Did you check the /error-reports/ folder? Since there was no info given on that step either.

There may be all info we need in your issue, but there is a lot you could do to improve it since right now this is a bit hard to follow.

if there is a specific thing you are looking for you will have to tell me because I'm not a mind reader. I guess i thought you'd be more concerned your plugin is broken than getting technical on a sentence requirement.

Also please be a bit more respectful and patient, I am typing this answer as you post it, we all got limited time and available and do this for free here. So the best you can do to help us fix issues like this is make your issue as clear, readable, detailed and informative as possible. Better write too much than too few.

And I am sorry if my initial answer was too short or unclear, I normally rely on our Bot posting all necessary details, including a link to a "How to report bugs" guide.

pmyers123 commented 4 years ago

so let's see if i can help clarify the notes.

1) - i don't understand what you mean by the text is blending into the heading. I'm not seeing anything in the report where this is happening. Can you clarify? if you are referring to the screenshot of the versions, that was only to provide the sf versions

2) I'll get another shot of the versions for you with a different background image

3) it's the only video i have of it, sorry.

4) i guess i don't know what else to say on this. it ceased being an android. when trying to right click it, nothing happened. when i mined it and it was in my inventory, it had it's object name as cs core-lib head

5) there is nothing in the common issue area about androids that stop functioning as androids

6 & 7 - i know nothing about a debugging tool nor could i find anything on it

8) - answered in point 4

9) it has happened to every type of android. For the one that was in the video, here's the script. There's no way for me to pull it out so i have to type it out.

pull fuel, left turn, forward, left turn, (harvest & replant, forward ) x9, push items, turn left, forward, turn left, (harvest and replant, forward) x9

10 If you can tell me what the log is, where to find it, i may be able to get it. I don't know much about the server

11) I've attached the only 2 files in the folder. I did not see these. the form for submitting errors is very non user friendly. If this were cleaned up it may result in less of these types of conversations.

D.zip

my apologies if I came across as rude, that is not my intent.

TheBusyBiscuit commented 4 years ago
  1. You marked everything as a heading, hence why the font size is very large and it is unclear what belongs to what section. Look at the font size differences between the big two blocks and the sentence "Heres a link to a video i did on it."

It's still possible to somehow read that text but it isn't really well-formatted if you see what I mean. c56a541bf5c4182692a53111303395bd

  1. Now the top part of that message is missing though.

  2. Section 2 is explicitly about "unplaceable blocks / ghost blocks" caused by androids. https://github.com/TheBusyBiscuit/Slimefun4/wiki/Common-Issues#unplaceable-blocks

6 + 7. Check the common issues guide, the command for this is called /sf debug_fish

  1. Did you test it with every single type of android in existence or did you just test a few and implied that it would be true for all? When looking into issues like this, it is crucial to be objective and factual.

  2. Your latest server log is usually saved under /logs/latest.log or it is displayed in the console, if you are a server operator. It is the most essential bit of information for developers and server owners alike.

  3. Yes, these files would be important, however these two errors are related to a different plugin called Barrels, not to this issue.

Can you please clarify why it is "very non user friendly", what exactly is unclear about it or what could be phrased more clearly? It is a pretty standard bug reporting form for this industry and doesn't really often cause that much confusion. So what did you have struggle with?

pmyers123 commented 4 years ago

So this is why i say the form is hard to fill out. it's one big text box and has no definable sections that are easy to put data in.

So tell me going forward, cause this isn't getting anything done, what specifically do you still need

pmyers123 commented 4 years ago

oh to answer your question on the androids, yes. i have tested it on every type of android over a period of probably 3 months on a public server. This is a private server setup just for slimefun to record tutorials for players. no one else has access to it but me.

pmyers123 commented 4 years ago

here are the server logs. I put all the logs in one file. the server has only been running 11 days. hopefully what you need is in here. As for the debug fish, what do i need to do? what commands, how is it used? that's what i need to know 2020-07-11-2.log.zip

TheBusyBiscuit commented 4 years ago

So this is why i say the form is hard to fill out. it's one big text box and has no definable sections that are easy to put data in.

So tell me going forward, cause this isn't getting anything done, what specifically do you still need

That is just a limitation of GitHub, but there are definitely sections and seperations happening. Normally you'd type after the heading below the line seperated by <-- -->

c5878a41a6ada6b6acb9302e9451962d

TheBusyBiscuit commented 4 years ago

Also can you update your original post with all the newly acquired and requested info while also fixing some of the formatting? I will reopen the issue then afterwards.

TheBusyBiscuit commented 4 years ago

here are the server logs. I put all the logs in one file. the server has only been running 11 days. hopefully what you need is in here. As for the debug fish, what do i need to do? what commands, how is it used? that's what i need to know 2020-07-11-2.log.zip

Like I said, the command is called /sf debug_fish, everything else is explained on the tool itself. You can right click to read data from blocks for example. Not sure if that wiki doesn't cover stuff like this too.

pmyers123 commented 4 years ago

if there's data that you need from that fish, i'll have to setup a new farm and run it to get it to break. i was able to see what the fish does, and if it helps, I'll be happy to do that. however, there's nothing in that fish that can fix the issue. it's a problem with the plugin itself.

I have updated the report as requested.

TheBusyBiscuit commented 4 years ago

The fish can clear ghost blocks and display the data stored on a block, this can be helpful to see what happened to the android, since there isn't an error the android must still be somewhere in the world, the head and the android most likely just got out of sync. So locating the actual android and looking at the discrepancy between these two locations is very crucial to solving this problem. And it can fix issues to some extent, since it can allow you to remove ghost blocks or place a debug skull at the location of that android to sync the two locations back up.

Also, the top part from that versions screenshot is still missing.

pmyers123 commented 4 years ago

I uploaded another screenshot of it. there's nothing else. that's from the moment i logged onto the server

pmyers123 commented 4 years ago

as I have time, I'll setup another farm with the same conditions and see if i can catch it when it happens. I'll use the fish on the android at that point and see what data i can get

hex8F commented 4 years ago

the head and the android most likely just got out of sync.

So locating the actual android and looking at the discrepancy between these two locations is very crucial to solving this problem.

From my experience with bugged androids, the actual block data is "one step" behind in script - looks like head moved, but block data stayed behind. Also, you can recover your android by extending a piston head onto that block and mining the head by hand.

JustAHuman-xD commented 1 year ago

Is this still a problem? It's a super old issue and from personal experience I have had moving androids running for days on end without turning into cscorelib heads