Jack falls for the ghost of Mary, and his wife Sharon with the ghost of Mary’s husband Martin. On Halloween night, Mary becomes flesh and she and Jack end up having sex, but the mystical energies of Halloween then cause her to age 200 years. She later begs for Jack to kiss her, reminding him that she is still the same on the inside, so he reluctantly does and ends up making her young again. Meanwhile, Sharon playfully chases after Martin until she finds him sitting on the windowsill in the upstairs bedroom, but when she tries to hug him, she falls out of the window to her death on the ground. Connecting with the earlier-heard phrase “he who tups with the spirit finds only the grave, but the virtuous heart, true love will save,” the energies of Halloween enable Mary to take over Sharon’s body and return to life, and Sharon becomes a ghost. Jack decides to stay at the castle so he and Mary can be together and even talks marriage with her, and Sharon is wholly happy now that she is with Martin.
Also, as the castle’s guests leave the morning after, the parapsychologist Malcolm tells Lord Plunkett that, while he has had the worst vacation ever because of all of the bedlam caused by the spirits, he will be recommending Castle Plunkett as the most haunted castle in the Western hemisphere and hopes that this will bring in more visitors and therefore more revenue.
The night before Halloween, Mrs. Plunkett (Liz Smith) tells Jack (Steve Guttenberg) about how she knows of his meetings with the ghost of Mary (Daryl Hannah), and tells him that, on Halloween, the mystical energies surrounding that day might bring forth a chance for her to come back to life. She gives him a book to read called the Book of High Spirits, and as Jack studies its pages over the course of the next day, he finds out that ghosts cannot tup (copulate) with a human being, and he also takes note of a passage that reads: “He who tups with the spirit finds only the grave, but the virtuous heart, true love will save.” Also, not only has he fallen for Mary, but his uncaring wife Sharon (Beverly D’Angelo) finds herself falling mutually in love with the ghost of Martin (Liam Neeson), the man who murdered Mary after he incorrectly believed that she was cheating on him.
That night, Mary appears before Jack, and with it being Halloween, she is corporeal. They have a romantic evening, and despite repeatedly trying to fight off the urge to do so (but in part fueled by drink), they have sex with each other. Meanwhile, Sharon, Lord Plunkett (Peter O’Toole), and the other staff and guests get out of the castle and down to the nearby marsh to try to enjoy some spirit-free fun, but Martin takes command of the castle’s bus, which is sunken in the marsh, and raises it up and out of there and chases after them, but mainly after Sharon (who can’t see that Martin is the driver), and the whole while he loudly professes his love for her.
After Jack and Mary finish with their lovemaking, both of them discover that their act has caused the aforementioned mystical energies to make Mary physically age to 200 years old. Frightened by her appearance, he then remembers the passage from the book and starts to fear for his own life. He runs out of the room and into the castle’s living room with Mary following and pleading with Jack to tell her he loves her so everything will be made all right again, but he isn’t keen on doing it because he is still freaked out over how she looks. Martin then suddenly comes flying in, having chased Sharon back to the castle, and after those two hug each other, they officially end their relationships with their respective spouses and then leave the room.
Mary reminds Jack that she is still the same person inside, and asks him to kiss her for what she presumes will be the last time, so he (extremely reluctantly) does. As they hold the kiss, Mary turns back into her younger self. Meanwhile, Sharon playfully chases after Martin until she finds him sitting on the windowsill in the bedroom, and he asks her to be with him forever. She accepts and runs towards him to embrace him, but she goes right through him and out of the window and falls to her death on the ground. At the exact moment Jack and Mary hear her final scream, Mary suddenly vanishes, and Jack tracks down the source of the scream and finds Sharon’s body, which is lying face-down. As he begins to mourn, the body gets up, and we see that it is now Mary instead, having come back to life through her spirit entering Sharon’s body after her death. At the same moment, Martin carries the now-ghostly Sharon back into the bedroom, and they kiss as the sun rises and makes them disappear. All of the other spirits in the castle seem to disappear as well.
The guests leave later that morning, and the parapsychologist Malcolm (Martin Ferrero) tells Plunkett that, while he single-handedly had the worst vacation of his entire life, he will be recommending Castle Plunkett as the most haunted castle in the Western hemisphere and hopes that this will help draw in more visitors and therefore more revenue. That night, Jack and Mary are dancing in the living room, and Mary remarks how happy she is that he has decided to stay at the castle. As Jack brings up the subject of marriage, Martin and Sharon come dancing in. Each expresses to their former partners how happy they are with their new ones, and then Mary and Jack continue dancing in the room while Martin and Sharon dance back upstairs.
Thanks Tornado Dragon!