Featuring stories from Eric Shanower, Troy Riser, Michael Tierney, and seventeen other masters of the form, FANTASTIC VOYAGES is all about doors --
You are here
Home › Books › A Demonic Entity Compounds The Horrors Of Addiction In Christopher Badcock's Novel, 'Those You Killed' ›A Demonic Entity Compounds The Horrors Of Addiction In Christopher Badcock's Novel, 'Those You Killed'
Error message
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 342 of includes/module.inc).
- Warning: Trying to access array offset on int in advagg_modify_css_pre_render() (line 1554 of sites/all/modules/advagg/advagg.module).
- Warning: Trying to access array offset on int in advagg_modify_css_pre_render() (line 1554 of sites/all/modules/advagg/advagg.module).
- Warning: Trying to access array offset on int in advagg_modify_css_pre_render() (line 1554 of sites/all/modules/advagg/advagg.module).
- Warning: Trying to access array offset on int in advagg_modify_css_pre_render() (line 1554 of sites/all/modules/advagg/advagg.module).
- Warning: Trying to access array offset on int in advagg_modify_css_pre_render() (line 1554 of sites/all/modules/advagg/advagg.module).
- Warning: Trying to access array offset on int in advagg_modify_css_pre_render() (line 1554 of sites/all/modules/advagg/advagg.module).
- Warning: Trying to access array offset on int in advagg_modify_css_pre_render() (line 1554 of sites/all/modules/advagg/advagg.module).
- Warning: Trying to access array offset on int in advagg_modify_css_pre_render() (line 1554 of sites/all/modules/advagg/advagg.module).
- Warning: Trying to access array offset on int in advagg_modify_css_pre_render() (line 1554 of sites/all/modules/advagg/advagg.module).
- Warning: Trying to access array offset on int in advagg_modify_css_pre_render() (line 1554 of sites/all/modules/advagg/advagg.module).
- Deprecated function: Using ${var} in strings is deprecated, use {$var} instead in require_once() (line 132 of sites/all/libraries/bad-behavior/bad-behavior/core.inc.php).
- Deprecated function: Optional parameter $type declared before required parameter $key is implicitly treated as a required parameter in include_once() (line 1442 of includes/bootstrap.inc).
- Deprecated function: Optional parameter $data declared before required parameter $name is implicitly treated as a required parameter in require_once() (line 342 of includes/module.inc).
- Deprecated function: Optional parameter $data declared before required parameter $name is implicitly treated as a required parameter in require_once() (line 342 of includes/module.inc).
- Deprecated function: Optional parameter $file declared before required parameter $entity_type is implicitly treated as a required parameter in require_once() (line 342 of includes/module.inc).
- Deprecated function: Optional parameter $account declared before required parameter $entity_type is implicitly treated as a required parameter in require_once() (line 342 of includes/module.inc).
- Deprecated function: Optional parameter $entity declared before required parameter $entity_type is implicitly treated as a required parameter in require_once() (line 342 of includes/module.inc).
- Deprecated function: Optional parameter $account declared before required parameter $entity_type is implicitly treated as a required parameter in require_once() (line 342 of includes/module.inc).
- Deprecated function: Optional parameter $values declared before required parameter $entity_type is implicitly treated as a required parameter in require_once() (line 342 of includes/module.inc).
- Deprecated function: Optional parameter $view_mode declared before required parameter $entity_type is implicitly treated as a required parameter in require_once() (line 342 of includes/module.inc).
- Deprecated function: Optional parameter $langcode declared before required parameter $entity_type is implicitly treated as a required parameter in require_once() (line 342 of includes/module.inc).
- Deprecated function: Optional parameter $view_mode declared before required parameter $langcode is implicitly treated as a required parameter in include_once() (line 1442 of includes/bootstrap.inc).
- Deprecated function: Optional parameter $terms declared before required parameter $node is implicitly treated as a required parameter in include_once() (line 1442 of includes/bootstrap.inc).
- Deprecated function: Optional parameter $args declared before required parameter $node is implicitly treated as a required parameter in include_once() (line 1442 of includes/bootstrap.inc).
- Deprecated function: Return type of EntityStructureWrapper::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 292 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityListWrapper::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 991 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityListWrapper::offsetExists($delta) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 991 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityListWrapper::offsetGet($delta) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 991 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityListWrapper::offsetSet($delta, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 991 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityListWrapper::offsetUnset($delta) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 991 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityListWrapper::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 991 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataWrapperIterator::hasChildren() should either be compatible with RecursiveIterator::hasChildren(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1192 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataWrapperIterator::getChildren() should either be compatible with RecursiveIterator::getChildren(): ?RecursiveIterator, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1192 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataWrapperIterator::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1192 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataWrapperIterator::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1192 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataWrapperIterator::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1192 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataWrapperIterator::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1192 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataWrapperIterator::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1192 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataArrayObject::offsetExists($delta) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1235 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataArrayObject::offsetGet($delta) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1235 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataArrayObject::offsetSet($delta, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1235 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataArrayObject::offsetUnset($delta) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1235 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataArrayObject::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1235 of sites/all/modules/entity/includes/entity.wrapper.inc).
- Deprecated function: Return type of EntityMetadataArrayObject::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include_once() (line 1235 of sites/all/modules/entity/includes/entity.wrapper.inc).
FTC Statement: Reviewers are frequently provided by the publisher/production company with a copy of the material being reviewed.The opinions published are solely those of the respective reviewers and may not reflect the opinions of CriticalBlast.com or its management.
As an Amazon Associate, we earn from qualifying purchases. (This is a legal requirement, as apparently some sites advertise for Amazon for free. Yes, that's sarcasm.)

According to figures from both the National Institute of Drug Abuse and the National Safety Council, there were more than 106,000 reported drug overdose fatalities in the United States in 2021, a 58% rise from only two years earlier. The overwhelming majority of these deaths (70,601) can be directly attributed to opioids, primarily heroin and its deadlier chemical cousin, fentanyl, and that statistic increases significantly when one factors in the suicides, homicides, and undetermined deaths related to the general drug trade.
Rampant as the opioid epidemic may be in our modern day, addiction as a societal scourge is nothing new. Celebrated early-nineteenth century essayist and literary critic Thomas De Quincey chronicled his own degeneration into drug dependency in his seminal 1821 autobiographical work Confessions of An English Opium-Eater,widely considered the first authoritative account concerning the effects of substance abuse. Even two centuries later, De Quincey’s excursion into what he referred to as the ‘abyss of divine enjoyment’ makes for a harrowing read, and that same stark socially-conscious confessional attitude is melded with the paranormal plights of the fictional horror tale to birth DarkLit Press’s latest release, Nottingham, U.K. resident Christopher Badcock’s unflinching novel Those You Killed.
When once-successful horror writer and repentant junkie Elwood Cathis retreats to a remote lakeside villa in the rural Appalachian community of Misstonville courtesy of his scumbag L.A. drug-dealer-cum-friend Casper, it’s with the intention of going cold-turkey clean. Having lost his career, his family and his fortune to the needle, Elwood is determined to achieve sobriety and reclaim his life the hard way after several failed stints in rehab, but inexplicable visions of decaying astronauts, dead children and worse begin almost immediately upon his arrival. Having been hooked for so many years, Elwood is unsure the nightmarish hallucinations aren’t related to the withdrawal ravaging his drug-addled brain, but after he learns from some locals that the property’s history is steeped in violence, bloodshed and demonic ritual appeasement, the struggle against his intravenous habit blooms instead into a primal battle for survival.
One of the most striking features in Those You Killed is Badcock’s confident prose. His paragraphs bristle with an affirmed authorial swagger that easily lures an audience with mounting suspense, dark humor and an abundance of earnest emotion. When initially introduced, Elwood cuts a decidedly less-than-sympathetic figure: he’s a man who, through his selfish, self-centered behavior, devolved from a once-promising professional into a vacant shell. As we get to know him, however, Elwood becomes a fully-rounded three-dimensional shape, believable if not endearing, a person primed to confront the ghosts of his past. To that end, nary a single narrative punch is pulled, and the ugly truths regarding heroin, its use, abuse and bodily effects are unveiled in unblinking, remorseless detail; the poisonous psychedelic daydreams Elwood suffers privately and publicly (an embarrassing booze-and-painkillers run to a nearby convenience store is a showpiece of his fragile mental state) are just as frightening, if not more so, than a nocturnal encounter with some bloodsucking vampiric fiend. As the storyline progresses and a supernatural entity is revealed as the cause for so much of Misstonville—and Elwood’s—woes, the tension and excitement ramp up as the various plot threads Badcock so deftly weaves throughout the book twine together in a (literally) explosive finale.
At the end, however, the supernatural shenanigans, fraught with danger and entertaining as they are, pale to the authentic rigors of addiction and recovery, and it's credit to Badcock’s engrossing skill that the fusion of the real and the fantastic come off as smoothly as they do.
I give Those You Killed a well-deserved 4 (out of 5) on my Fang Scale. I look forward to seeing what literary frights Badcock conjures next.
More by this author
FEATURED ALBUM
Songs of faith, family and moving forward.
Latest Release




