Young Marty Preston (Blake Heron) wants to keep a beagle dog that followed him home. He even names him Shiloh. Unfortunately, his father, Ray (Michael Moriarty), insists the pup be returned to its rightful owner, hunter Judd Travers (Scott Wilson), even though Judd abuses the dog. After Shiloh is abused again, he returns to Marty, who then hides him away in a backyard shed. But when a stray dog attacks and badly hurts Shiloh, Marty needs to turn to his father for help.