LoreGuard:
I think perhaps the confusion lies in that the thread displays deleted posts and information about those posts even though they are deleted.
No.
In some fora posts can be deleted completely. What that means is that item number 17 in the list (don't worry about null pointers for the time being) now becomes item 16 in the list. Exactly the same as taking a link from the middle of a chain and then 'fixing' the chain. If you had linked to item no 17 in a previous post using the Msg number, that link would now point to the new item 17 - which was originally no 18 in the list. And your link would point to the wrong post.
Using the DB key is feasible - but complicated.
First of all you need a 'link' button in the original post to use in the same way as you use 'quote' to extract quoted information for the text. However, instead of grabbing the information from the HTML page in front of you, the 'link' function would have to send a request to the server to do a search.
The server has to iterate past all the previous posts in the thread (remember linked lists are sequential) until it finds the right spot in the DB (In our example that is only 16 pervious posts - but it could be 98 pervious posts)
We then need to check that with the user - because in the time that it has taken one user to decide to link and go through the process, another user (the GM) might have deleted that post. If it doesn't match up, we start the process again.
Somehow you then need to save that information in the new post that does the linking. It might be in data included within the post itself or it might be in an extra DB field. (Think Column if you only have a basic understanding of DBs). Adding an extra field to a large DB (and RPoL is huge) is a major operation for a 'small' feature like this, so we can probably discount it. That means recording the data in the post itself somewhere. The only problem with that is the code required to get the information back out again afterwards. Seeing as the 'code' is buried within plain text, the server would have to parse that text,
every time the post is displayed, to extract that information and turn it into a button/link that the user sees. So a lot of server activity every time that post with the link is viewed.
There are a couple of different ways you could go now - both relatively straightforward. You could design a new webpage to display a single post - extracting the content directly from the DB, using the ID key you extracted earlier. Or you can write a short section of code that works within display.cgi to display the whole thread but then manipulate the page so that the post you selected is on screen. Interestingly, you could now use the 'Msg No' generated for the post, as that is the current 'Msg No' not one that was generated right back when the page was originally linked.
Phew ...
Now I am not a professional developer, and I know jase has a few more tricks up his sleeve than I do - but the basic principles are going to be pretty much the same :) I also suspect that jase, as a professional developer working on his own 'special' site, may want to add more verification and checking to the process I have outlined :) After all, this is his baby and he wants it to be both a shining example of his professional skills and as watertight as possible.
Whichever way you go - linking to a specific post is incredibly server intensive. The question is 'Is it worth all that coding and server time to implement a really small facility that a few people will use occasionally?' - From jase's previous comments, the answer appears to be No :)
Especially when you have an alternate feature - Quote - that does pretty much the same job. The point of a link is to direct a reader to some specific text - a quote just brings that text directly to the reader by embedding it in the post you are making. the end result of both operations is that your reader has direct access to the text you wanted them to read.
*shrug* why bother with a new feature that will take time to code and then be server heavy in use - when you have an existing server light function that does practically the same thing?
As an extra advantage - you get an element of QFT with quoting - with linking, the original poster would still be able to change the content of the post that you had so carefully linked to :)