Head Detective Lassiter is in charge of the annual Civil War reenactment. Shawn knows watching the meltdowns at the rehearsals is more fun than the actual show, and so he and Gus, a history buff, show up to watch. This year they are reenacting the Battle of Piper's Cove, in which a nurse, played by Sally Reynolds, kills Confederate Captain Quantrill, played by Nelson Poe. Sally ends up missing her cue, so Lassiter stops rehearsal only to find Nelson dead for real.
Since one of his men went down on his watch, Lassiter is determined to find out what happened, and everything points to an unfortunate accident. Shawn, though, seeing the way that Nelson was shot through the heart, knows this had to be murder. He also knows that Lassiter is having similar thoughts but is not letting on.
Back at the office, Shawn recreates the battlefield plan, seeing where everyone was placed and therefore who had a shot at Nelson. The only one who had an angle and was in range was dentist George Cheslow.
Shawn makes Gus an appointment and they go check out George. They find out that George's wife once had an affair with Poe, which gives George motive. But they also find out that he's seriously nearsighted, and Lassiter won't let him wear his glasses on the battlefield because they are not "of the period." There's no way George could have landed a shot that accurate. However, the police find love letters from George's wife at Nelson's house and show up to arrest George anyway.
To prove George's innocence, Shawn and Gus join the regiment to find the real killer. To get outfitted, they go see fellow reenactor Griffin Mahoney, who owns a jewelry store and also supplies uniforms and other memorabilia to the regiments. There, they find Sally Reynolds, who, they learn, is an insurance agent who has written policies for half the regiment, including a multi-million dollar one for Mahoney's store. They also find C4 to fudge the "cannon blasts" for the audience, Mahoney explains.
That night, while camping out with the regiment, Shawn develops a theory as to how Nelson was killed. The next day, he goes back to the place where Nelson was shot, to look for the bullet in the ground. See, Nelson wasn't shot by someone on the field. He was alive when he rolled from his horse and was shot from the tree straight down. Shawn's proven right when he finds the bullet, not to mention an authentic Civil War button that must have come from the killer's uniform. Shawn, then, leads the police to the bullet with a "vision," but still they believe it will point to George Cheslow.
Shawn and Gus know they are missing something, so Shawn climbs the tree and they run through the murder again. When Nelson fell from the horse, he rolled way passed his mark. He wasn't supposed to land anywhere near the tree. Seeing the killer up there was an accident. Nelson wasn't the intended victim. He only interrupted a plot to kill someone else. From his position in the tree, Shawn has a perfect sightline to the medical tent, and where Sally Reynolds was standing. The intended target was Sally, which means someone is still trying to kill her.
The murderer could be anyone in the regiment, so Shawn and Gus steal Sally's uniform and decide to stand in for her and wait for the killer to strike again, catching him in the act. Juliet stands in for Sally but as the battle wages on, nothing happens. No one makes a move.
Shawn and Gus check the other side of the camp, where they discover Mahoney's uniform in the Confederate tent - and it's missing a button. Mahoney is the killer! Just then, they hear a blast of C4, and it didn't come from the battlefield. It came from the direction of Mahoney's store. He's there right now and not on the battlefield as everyone believes. It turns out, Mahoney and Sally were in on a plot to rob the store, using the battle as cover, and split the insurance pay out. But Mahoney got greedy and decided to kill Sally and keep the money for himself. With Mahoney and Sally arrested, Shawn and Gus happily return to comforts of the year 2006.