Signs Become Empty On Older Servers #3137

Open
opened 2022-12-15 12:49:07 +01:00 by FossFanatic · 15 comments
Contributor

No idea why, but on older servers, signs seem to just turn empty for no reason and placing any new signs to write things on won't work either.

The only solution to this that I have found is to create a new world entirely, then the signs work on that world, but they still don't work on the old world.

The signs eventually stop working on the newer world as well, forcing you to once again create a new world.

No idea why, but on older servers, signs seem to just turn empty for no reason and placing any new signs to write things on won't work either. The only solution to this that I have found is to create a new world entirely, then the signs work on that world, but they still don't work on the old world. The signs eventually stop working on the newer world as well, forcing you to once again create a new world.

By placing new signs, do you mean digging up and placing again? Or making a new one from scratch?

By placing new signs, do you mean digging up and placing again? Or making a new one from scratch?
Michieal added the
needs more information
label 2022-12-15 14:26:04 +01:00
Member

error logs?
version numbers of the MCL of the server?
etc.

I need to know what to look for.

error logs? version numbers of the MCL of the server? etc. I need to know what to look for.
Author
Contributor

By placing new signs, do you mean digging up and placing again? Or making a new one from scratch?

I just placed a new one from the creative inventory.

error logs?
version numbers of the MCL of the server?
etc.

I need to know what to look for.

This had been a problem for a while now. It has been a problem for months. It is only now that I had decided to open an issue for it, after remembering the problem. Version probably doesn't matter here.

As for error logs, what do you mean by this? I got no errors in the chat when placing signs.

>By placing new signs, do you mean digging up and placing again? Or making a new one from scratch? I just placed a new one from the creative inventory. >error logs? version numbers of the MCL of the server? etc. >I need to know what to look for. This had been a problem for a while now. It has been a problem for months. It is only now that I had decided to open an issue for it, after remembering the problem. Version probably doesn't matter here. As for error logs, what do you mean by this? I got no errors in the chat when placing signs.
Member

I mean that if the signs fail, it states an error.
Depending though, minetest can report an error as a warning, and it doesn't show up in the chat log.

Debug.txt from the minetest directory.

Do you know when it started happening?

And the reason I asked you about the server's Mineclone version that it was, is because it will tell me needed information about the signs that were there.

So yeah, it does matter, thanks :)

I mean that if the signs fail, it states an error. Depending though, minetest can report an error as a warning, and it doesn't show up in the chat log. Debug.txt from the minetest directory. Do you know when it started happening? And the reason I asked you about the server's Mineclone version that it was, is because it will tell me needed information about the signs that were there. So yeah, it does matter, thanks :)
Author
Contributor

Debug.txt from the minetest directory.

I read the debug.txt, and it only mentions me placing the signs. It doesn't even mention any issues.

Do you know when it started happening?

It started happening since a couple of months ago. I don't remember very well.

And the reason I asked you about the server's Mineclone version that it was, is because it will tell me needed information about the signs that were there.

As for the version, it's difficult to say, since I am using a custom branch that I use to mess around with certain fixes. I'd still say that it's about one version before the mcl_hoppers fixes.

>Debug.txt from the minetest directory. I read the debug.txt, and it only mentions me placing the signs. It doesn't even mention any issues. >Do you know when it started happening? It started happening since a couple of months ago. I don't remember very well. >And the reason I asked you about the server's Mineclone version that it was, is because it will tell me needed information about the signs that were there. As for the version, it's difficult to say, since I am using a custom branch that I use to mess around with certain fixes. I'd still say that it's about one version before the mcl_hoppers fixes.
Member

@FossFanatic so, are you using the Master-InDev? or is it a release branch?

The reason that it's important to know, is that I need to be able to grab the version that the signs were made in, and then upgrade that to the version that is being used, minus mods and minus different tweaks that you have made. That way, I can test it, and see what's going on.

Also, it would be helpful to know if it is wall signs, standing signs, or both that are affected. Another piece of data that I need to be able to see -- does a restart of the server / single player game fix it? or do they regenerate after a couple of minutes? do they stop working after a specified amount of time?

The way that the signs work has been upgraded and we did test it with version 0.78 and 0.79 being upgraded.

@FossFanatic so, are you using the Master-InDev? or is it a release branch? The reason that it's important to know, is that I need to be able to grab the version that the signs were made in, and then upgrade that to the version that is being used, minus mods and minus different tweaks that you have made. That way, I can test it, and see what's going on. Also, it would be helpful to know if it is wall signs, standing signs, or both that are affected. Another piece of data that I need to be able to see -- does a restart of the server / single player game fix it? or do they regenerate after a couple of minutes? do they stop working after a specified amount of time? The way that the signs work has been upgraded and we did test it with version 0.78 and 0.79 being upgraded.
Author
Contributor

Also, it would be helpful to know if it is wall signs, standing signs, or both that are affected.

Both. Both are affected.

Another piece of data that I need to be able to see -- does a restart of the server / single player game fix it?

No.

or do they regenerate after a couple of minutes?

No.

do they stop working after a specified amount of time?

Yes.

The way that the signs work has been upgraded and we did test it with version 0.78 and 0.79 being upgraded.

Which is coincidentally when the problems began. I had this problem since 0.79.

>Also, it would be helpful to know if it is wall signs, standing signs, or both that are affected. Both. Both are affected. >Another piece of data that I need to be able to see -- does a restart of the server / single player game fix it? No. >or do they regenerate after a couple of minutes? No. >do they stop working after a specified amount of time? Yes. >The way that the signs work has been upgraded and we did test it with version 0.78 and 0.79 being upgraded. Which is coincidentally when the problems began. I had this problem since 0.79.
Member

Well, 0.81 is when the new signs code went into play. It was merged into 0.81-indev about 1/3 of the way to 0.82-indev.

The current version that was released in 0.81 (and, even more so now as it has the checker for clearblocks) actually goes through and regenerates the signs every minute or two.

The only things that would prevent that, is if 1) the sign was placed without anything written on it. 2) the map file became corrupted. 3) it was converted from MCL5 -> MCL2. (That last one specifically states "YMMV")

Well, 0.81 is when the new signs code went into play. It was merged into 0.81-indev about 1/3 of the way to 0.82-indev. The current version that was released in 0.81 (and, even more so now as it has the checker for clearblocks) actually goes through and regenerates the signs every minute or two. The only things that would prevent that, is if 1) the sign was placed without anything written on it. 2) the map file became corrupted. 3) it was converted from MCL5 -> MCL2. (That last one specifically states "YMMV")
Author
Contributor

I might have to play the latest stable release then, until I encounter this problem again and can confirm that the problem still exists.

I might have to play the latest stable release then, until I encounter this problem again and can confirm that the problem still exists.
Member

I would. that or try it with the last signs commit.

I would. that or try it with the last signs commit.
Author
Contributor

I have found another lead. That lead is that the sign letters disappear when shaders are turned off?

This is more apparent on multiplayer servers.

I have found another lead. That lead is that the sign letters disappear when shaders are turned off? This is more apparent on multiplayer servers.
Member

I have found another lead. That lead is that the sign letters disappear when shaders are turned off?

This is more apparent on multiplayer servers.

Thank you for this.

This is why I said that entities need shaders turned on. What clued me in was the item frame maps where the maps didn't display. (Mind you that maps are their own can of worms.) Smooth lighting requires shaders.

Entities (the sign's lettering) are very ... finicky and can break really easily. And, almost every time, it's not our code. it's either the user's hardware, or the engine.

I do have hopes that we can get to the bottom of this, and then state what is required in the requirements.

If you have ideas on how to fix this, I am very open to hearing them, and will help in any way I can to fix it.

> I have found another lead. That lead is that the sign letters disappear when shaders are turned off? > > This is more apparent on multiplayer servers. Thank you for this. This is why I said that entities need shaders turned on. What clued me in was the item frame maps where the maps didn't display. (Mind you that maps are their own can of worms.) Smooth lighting requires shaders. Entities (the sign's lettering) are very ... finicky and can break really easily. And, almost every time, it's not our code. it's either the user's hardware, or the engine. I do have hopes that we can get to the bottom of this, and then state what is required in the requirements. If you have ideas on how to fix this, I am very open to hearing them, and will help in any way I can to fix it.
Member

Broken signs have a built in fix. Punching them updates the sign's writing. I just re-reviewed the code for it, and it was something that was built in, in the original sign code. After testing it for the rewrite, I left it in as a manual way to fix the sign. I had assumed that it was because of not having an automated /clearobjects fix. But, it could have been because they somehow lose their entity. Another fix is to move far enough away for the nodes to be unloaded, allow them to unload, and then come back so that they are loaded back up.

The latter fix will restart the nodetimer on the signs so that they regenerate the sign entity every X seconds (like 35 or 40 seconds).

If, it is a shaders issue, though, they will probably stay blank. So, we need to ascertain if that is what is happening, or if the node timer failed. So, can you try punching it and see if that fixes the affected signs? (as this will answer the questions.)

Broken signs have a built in fix. Punching them updates the sign's writing. I just re-reviewed the code for it, and it was something that was built in, in the original sign code. After testing it for the rewrite, I left it in as a manual way to fix the sign. I had assumed that it was because of not having an automated `/clearobjects` fix. But, it could have been because they somehow lose their entity. Another fix is to move far enough away for the nodes to be unloaded, allow them to unload, and then come back so that they are loaded back up. The latter fix will restart the nodetimer on the signs so that they regenerate the sign entity every X seconds (like 35 or 40 seconds). If, it is a shaders issue, though, they will probably stay blank. So, we need to ascertain if that is what is happening, or if the node timer failed. So, can you try punching it and see if that fixes the affected signs? (as this will answer the questions.)
Author
Contributor

I punched the signs with shaders turned off, and the letters don't come back.

This is likely an issue with disabling shaders. The same also happens to paintings and maps.

Minetest will likely force shaders to be used in the future (as it should, since shaders are required if one wants to get anywhere graphically), so this problem won't really be encountered anymore.

I punched the signs with shaders turned off, and the letters don't come back. This is likely an issue with disabling shaders. The same also happens to paintings and maps. Minetest will likely force shaders to be used in the future (as it should, since shaders are required if one wants to get anywhere graphically), so this problem won't really be encountered anymore.
ancientmarinerdev added the
nodes
label 2023-02-04 15:29:32 +01:00

erlehmann suggested that https://github.com/minetest/minetest/pull/12906 may fix this, so I'm thinking we can retest this after 5.7.

erlehmann suggested that https://github.com/minetest/minetest/pull/12906 may fix this, so I'm thinking we can retest this after 5.7.
ancientmarinerdev added the
Testing / Retest
label 2023-03-27 20:00:52 +02:00
ancientmarinerdev added the
possible close
label 2023-03-27 20:02:30 +02:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: VoxeLibre/VoxeLibre#3137
No description provided.