Just an update on the status of this one.
I've found (and fixed) a few packet issues, also done some minor cleanups, removing unnecesarry extra code.
As it stands, I have two servers I'm testing with, my standard test environment (which still runs the messageboards flawlessly), and an All-in-One test environment, which has only the exe switched out.
Currently on the AiO environment, I have the boards working fine if the character using it is a GM, however when anyone other than a GM opens the board, it appears empty. I've compared our packets to every packet guide out there, as well as RunUO (which, interestingly, formats a couple of the packets differently than all the packet guides) and neither way solves this problem. I can only assume there is some flag when we make a player a GM that is causing the board to work, and thus I just need to figure out what flag that is, and why.
Anyway, work progresses on this one, and it is a high priority to get messageboards working ENTIRELY before I move on to other things.
[FIXED] Message Boards Error
-
giwo
- Developer
- Posts: 1780
- Joined: Fri Jun 18, 2004 4:17 pm
- Location: California
- Has thanked: 0
- Been thanked: 0
Ok, so per our testing (mine and Xuri's) today, messageboards now work, for everyone, including 3d clients.
There are a couple things to note, though. The 3D client seems to be sending a "Delete Post" packet right before the "Reply" packet when posting a reply to a message. If you are not a GM, you'll get a message stating you aren't allowed to delete posts. If you are a GM, it will delete that post, and any replies to it, with the exception of the one you are about to make. Until I figure out WHY the 3D client is sending this packet (when the 2D client does not) I won't be able to fix this one.
Aside from that, it is also worth mentioning that when a post has replies to it, there will be an empty space immediately after it on the messageboard. I have not figured out why they behave this way yet, but I do intend to find out, as I don't think it's default behavior.
Lastly, while the messageboards will only display active messages, there is not yet a maintenance function to clean out deleted posts. This means that every message you write is stored, and never deleted, causing the system to parse through it when loading the active messages. I am working on writing a function to go through the boards and clean them out as routine mantenance, but until this is in place, keep in mind the only way to permanently remove posts from the files is to do it manually (opening the file and removing a section, or deleting the entire file).
If anyone experiences any issues with messageboards beyond what I've mentioned here, or would like to offer assistance on ways to fix the aforementiond bugs, feel free to post them here.
There are a couple things to note, though. The 3D client seems to be sending a "Delete Post" packet right before the "Reply" packet when posting a reply to a message. If you are not a GM, you'll get a message stating you aren't allowed to delete posts. If you are a GM, it will delete that post, and any replies to it, with the exception of the one you are about to make. Until I figure out WHY the 3D client is sending this packet (when the 2D client does not) I won't be able to fix this one.
Aside from that, it is also worth mentioning that when a post has replies to it, there will be an empty space immediately after it on the messageboard. I have not figured out why they behave this way yet, but I do intend to find out, as I don't think it's default behavior.
Lastly, while the messageboards will only display active messages, there is not yet a maintenance function to clean out deleted posts. This means that every message you write is stored, and never deleted, causing the system to parse through it when loading the active messages. I am working on writing a function to go through the boards and clean them out as routine mantenance, but until this is in place, keep in mind the only way to permanently remove posts from the files is to do it manually (opening the file and removing a section, or deleting the entire file).
If anyone experiences any issues with messageboards beyond what I've mentioned here, or would like to offer assistance on ways to fix the aforementiond bugs, feel free to post them here.
Scott