Error message

  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Notice: Trying to access array offset on value of type int in element_children() (line 6592 of /home1/montes/public_html/books/includes/common.inc).
  • Deprecated function: implode(): Passing glue string after array is deprecated. Swap the parameters in drupal_get_feeds() (line 394 of /home1/montes/public_html/books/includes/common.inc).
  • Deprecated function: The each() function is deprecated. This message will be suppressed on further calls in menu_set_active_trail() (line 2405 of /home1/montes/public_html/books/includes/menu.inc).

Fantasy Books

Forgotten Authors: S.P. Meek

https://www.blackgate.com/ - Fri, 02/27/2026 - 12:00
S.P. Meek

Sterner St. Paul Meek was born in Chicago, Illinois on April 8, 1894. He earned as associate of science degree from the University of Chicago in 1914 and continued his education at the University of Alabama, becoming a member of Phi Beta Kappa and earned a bachelor of science in metallurgical engineering. In 1916, he transferred to the University of Wisconsin, but joined the army in 1917. Although he attended the Massachusetts Institute of Technology between 1921 and 1923, he remained in the army for his entire career.

While attending college, he also served as a football coach at Kirkley Junior College in Texas, as a chemist for the Western Electric Company, and at Deuvitt Laboratories, all of which went by the wayside when he joined the military. Originally stationed in the Philippines, he would go on the direct small arms ammunition research from 1923 to 1926, serve as the chief publications officer for the Ordnance Department from 1941-1944. He retired from the military in 1947 due to disability. He holds patents for tracer ammunition.

Meek married Edna Burnadge Nobel in 1927 and the couple had one son.

September 1928 Field and Stream

Meek’s first story, “Taming Poachers” to Field and Stream of all places, and it appeared in the September 1928 issue. His first story of genre interest, “The Murgatroyd Experiment,” was published in the Winter 1929 issue of Amazing Stories Quarterly and dealt with the issue of overpopulation in the year 2060. Given that Meek often used his rank as part of his byline, it isn’t surprising that he also wrote about the future of warfare, with “The Red Peril” and “The Last War” exploring germ warfare between the Soviet Union and the United States.

Many of his stories published between 1930 and 1932focused on Doctor Bird and the Bureau of Standards. Although Meek wrote fifteen stories in the series, only eleven were included in the 2010 collection The Astounding Adventures of Dr. Bird.

Meek wrote mostly at short length, although two of his works, were serialized novels. The Drums of Tapajos appeared in Amazing Stories between November 1930 and January 1931, and its sequel, Troyana, was published in Amazing Stories from February through April 1932. These novels were a lost race series set in Brazil.

During his lifetime, there was only one collection of Meek’s stories, The Monkeys Have No Tails in Zamboanga, which included fourteen of his humorous stories and was published in 1934. Two other stories were published in Arctic Bride in 1944, which only ran to 36 pages.

In addition to his science fiction, Meek published a series of animal books for children, beginning with Jerry: The Adventures of an Army Dog. He published about twenty books along those lines by 1956, including Midnight: A Cow Pony, Surfman: Adventures of a Coast Guard Dog, and Pierre of the Big Top: The Story of a Circus Poodle. He also published the nonfiction So, You’re Going to Get a Puppy in 1947.

Readers could follow Meek’s advancement through the army.  From 1929 through the start of World War II, his byline indicated he was Captain S.P. Meek. After the war his byline changes to indicate he had obtained the rank of Major, and by the 1960s, he was Colonel S.P. Meek.

According to Julius Schwartz and Mort Weisinger, writing in 1933, some of Meek’s stories were revised and polished by Laurence D’Orsay, a professional literary critic, who died in 1947. D’Orsay also ran a literary agency and in the mid-1930s, he employed Henry Kuttner. A writing course D’Orsay ran helped spur Leigh Brackett’s writing career. In Silent Interviews: On Language, Race, Sex, Science Fiction, and Some Comics, Samuel R. Delany used Meek’s writing as an example of writers who were “unbelievably bad,”  comparing him to other authors like Stanley G. Weinbaum who was “extraordinarily fine” and Edward E. Smith who “while bad, still had something going.”

Meek died on June 10, 1972 in Palm Beach, Florida.

Steven H Silver-largeSteven H Silver is a twenty-one-time Hugo Award nominee and was the publisher of the Hugo-nominated fanzine Argentus as well as the editor and publisher of ISFiC Press for eight years. He has also edited books for DAW, NESFA Press, and ZNB. His most recent anthology is Alternate Peace and his novel After Hastings was published in 2020. Steven has chaired the first Midwest Construction, Windycon three times, and the SFWA Nebula Conference numerous times. He was programming chair for Chicon 2000 and Vice Chair of Chicon 7.

Categories: Fantasy Books

Book Review: Agnes Aubert’s Mystical Cat Shelter by Heather Fawcett

http://Bibliosanctum - Fri, 02/27/2026 - 06:10

I received a review copy from the publisher. This does not affect the contents of my review and all opinions are my own.

Agnes Aubert’s Mystical Cat Shelter by Heather Fawcett

Mogsy’s Rating: 4 of 5 stars

Genre: Fantasy

Series: Stand Alone

Publisher: Del Rey (February 17, 2026)

Length: 368 pages

Author Information: Website

With a title like that, it’s almost as if Heather Fawcett’s Agnes Aubert’s Mystical Cat Shelter was written to be the ultimate crowd pleaser. It’s honestly difficult to imagine anyone not being charmed by this one, at least a little. It’s got all the ingredients of a successful cozy fantasy, including a magical 1920s Montreal setting, a soft and slow-burning romance between a tenderhearted widow and a misunderstood wizard, and of course, at the center of it all, a house full of judgy cats.

The novel follows Agnes Aubert, a woman struggling to keep her small cat rescue afloat. The past few years have not been kind to her. After her husband’s sudden death, she was left to manage the shelter on her own, aided only by her sister and the occasional volunteer. They are constantly stretched thin, with too many cats in need of homes and never enough funds to cover the basic necessities plus veterinary care. And as if that wasn’t enough, Agnes is now faced with the near-impossible task of finding a new location after their previous building was destroyed by a couple of careless wizards having an impromptu duel in the streets. With winter closing in, if she cannot secure a new space, her animals will freeze. Yet what landlord in their right mind would agree to rent to a woman with dozens of stray cats which many still dismiss as little better than vermin?

Out of options, Agnes decides to take a chance on a suspiciously affordable property with a dubious reputation. While she has her misgivings, desperation leaves little room for pride. However, it doesn’t take long to discover why the rent is so cheap. Hidden in the basement is a secret magicians’ den run by the notorious wizard Havelock Renard, a man rumored to have once nearly brought about the end of the world. Agnes, however, has little interest in him or his legend. As long as she has a safe haven for her cats, she’s willing to put up with nearly anything. But when a rival from Havelock’s past resurfaces looking to settle an old score, the resulting conflict spills into Agnes’s carefully managed world. No longer able to ignore the magical chaos, she finds herself reluctantly drawn into a battle she never wanted to fight.

What follows next strikes a careful balance between the everyday realities of running a shelter and the steadily escalating trouble brewing downstairs, both literally and figuratively. Fawcett never loses sight of the practical details that shape Agnes’s life, like the routine of taking in strays, juggling adoption inquiries, as well as scraping together enough money for food, medicine, and bills. I was happy to see that the cats weren’t just thrown in to be cutesy. They’re essential to the story, each possessing their own quirks and, um, very strong opinions. Their presence keeps both our characters and the plot grounded, so that even when everything else blows up, they are a constant reminder of what’s important in Agnes’s life.

Speaking of which, characters are where this book really shines. Agnes’s world revolves around the cats, and she’s completely unapologetic about it. At the same time, there is a thread of grief running beneath her practicality and stubbornness. She’s also sensitive and deeply empathetic, with most of her quirks being coping mechanisms that prevent her emotions, which are always hovering near the surface, from breaking through. This is in stark contrast to Havelock, who despite his ominous reputation is socially awkward and comes across a little scatter brained. One gets the sense he’s not a fan of his bad rap but tolerates it by convincing himself he’d rather be feared and left alone. Watching them struggle to co-exist in this shared space is half the fun, especially when it turns out Havelock is allergic to cats! It’s a relationship that develops slowly, through small acts of kindness. In a way, these feel more meaningful and swoony than grand gestures ever will.

All that adds up to a cozy, relaxing read. The magic itself is handled with a light touch but definitely present and applied in some fun and creative ways, especially with the cats! I liked how Fawcett wrote these elements into the very fabric of the story without overwhelming it, but at the same time it’s more substantial than window dressing. The setting also plays its part, even though it’s clear that historical detail is not a priority. Still,  the environment lends the book an old-world kind of charm through its descriptions and the culture of its close-knit French-Canadian neighborhoods.

In the end, Agnes Aubert’s Mystical Cat Shelter works because it knows exactly what kind of story it wants to be: a simple yet effective cozy fantasy, wistful and quirky in places to draw you in, but ultimately warm and comforting where it counts. It’s the kind of easy, low-stakes novel you want to curl up with after a long day, and even if you aren’t a cat person, it will warm your heart.

Categories: Fantasy Books

Dark Muse News: Sword & Sorcery Chain Story (#14-#18)

https://www.blackgate.com/ - Thu, 02/26/2026 - 21:09

In August 2025, we hailed the emergence of a second Chain Story project championed by Michael A. Stackpole. This is a Sword & Sorcery-focused, contagious set of connected (“chained”) stories. Each is:
  • A standalone tale
  • Readable in any order
  • Free to read
  • Interconnected via a theme involving a Crown
Stories are being released every few weeks. We’ll round up groups, but check the Chain Story website. for the latest. In this post we highlight the latest set of five, Episodes 14-18:

Previous Black Gate posts have chronicled groups of the growing chain: The Chain Story 2 – So Far Entry Chain Post Link/Date Story (Link to Free version) Author Abstract 18 January 19, 2026 The Sapphire and the Sorceress Bryan Young

As with all good heroes, Pip does not shrink from danger and adventure. Still, there are times when it would be good to relax at home. But Pip is far from home, and is searching for a powerful sorceress who can help him on his way.

17 January 14, 2026 Terror Above Icehenge Malcolm T. North

To reach her, however, he’ll have to venture through the Chaos Realm and, as every true hero knows if you undertake that journey lightly, it will end quickly. But Pip has no choice, and therein our adventure begins.

16 December 31, 2025 Demonfire: A Tale of Shintaro Oba  C. L. Werner

A forbidden ritual conducted in secret, bathed in blood and death enables a demon to grasp unimaginable power—the power to destroy all enemies and raise himself above all others.

15 December 24, 2025 In The Land of the Giants, Bryan Young

A Samurai, whose duty calls for him to hunt down such a creature. A destiny he must pursue even as the world burns around him.

14 December 10, 2025 Blight Katherine Monasterio Forest Ranger Hazel Boncliff is a Green Speaker, a person with the magical ability to commune with plants. When the king summons Hazel and her assistant to the capital to heal the strange blight affecting his hunting grounds, she’s reluctant to help—least of all because he’s insisting his inexperienced secretary go along for the journey. But with a reward she can’t refuse and the blight’s effects more harrowing by the moment, she’ll take all the help she can get. 13 November 26, 2025 Ice Hawk’s Aerie Bryan Young A chance meeting in the dark forest. A tale of woe and injustice.
Pip Strongpaw, the last of the fabled Great Catriders, must once again wield the runed-sword Feathersbane, to end the chilling menace threatening to destroy the hamlet of Riveroak. A menace of sorcerous origins against which even the bravest of heroes may not prevail. 12 November 12, 2025 Blood for the River Michael Stackpole Chased into a swamp by homicidal cultists, Kellach and Serinna encounter a fire mage who saves their lives, and then leads them on an adventure that is sure to get them killed. 11 October 14, 2025 Of Nightmares & Jewels Robert Greenberger Something drew the mage onward, always toward the northwest, through restless evenings and dark dreams of ill portent. Yet when Jareth’s traveling companion, the swordswoman Talin, asks him why, he has no idea.
And then they reached a tiny town at the edge of nowhere, wherein lurked an evil with roots sunk deep in times beyond remembering; an evil that has chosen their visit as a time to awaken. 10 October 14, 2025 The Cursed Cuff Aaron Rosenberg She came to them spinning a tale of woe. An army of undead lay siege to the Manor she called home. She had barely escaped and sough adventurers brave enough to free her people.
But to do that Birr Blackjaw and his companions would have to wrest an ancient artifact from the hands of a cult leader who had his own army, and a hellish pet none could hope to defeat. 9 October 1, 2025 The Monastery Plot Bryan Young Shield Maiden and legendary sleuth Sister Agatha, accompanied by her faithful initiate, Brother Dominguez, sought to enjoy peace and quiet at  the Monastery of St. Maryam.Despite their desires, they soon find themselves investigating twin murders. Murders which become all that much more bizarre when the name Tarru-Syn turns up, and their search leads them into the very bowels of the earth, to face a foe from beyond their reality. 8 September 24, 2025 On Memories Michael Stackpole Dancillius Hrekt is fairly new to the world of Monster Fighting. All he wants to do is to make a good impression with his peers.  And all they want is for  him and his best friend to die. 7 September 10, 2025 The Village of Morvoss Thomas Grayfson In this new Kavion adventure, our tormented knight clings to the last threads of family and sanity as he navigates the mysterious Village of Morvoss. Haunted by fractured memories, he must confront the darkness around him—and within. 6 August 27, 2025 Fragment of a Sorcerous Crown Joan Marie Verba In this tale from the Chronicles of the Library of Sorcery, the sorcerers investigate a dangerous magical artifact of mysterious origin. Can the sorcerers uncover the truth?Sorcerer Serena is called to investigate an enormous, carnivorous plant. She finds that a mysterious magical artifact is behind the phenomenon. To find out where the artifact came from and what its properties might be, she consults the Library of Sorcery, where she uncovers the answers, but not on the Library shelves. Can the artifact be banished from the sorcerous regions before it becomes a more deathly threat? 5 August 13, 2025 Grave’s Brood S.E. Lindberg Doktor Grave sends Brood to recover a crown from the Red Orchard, only for Brood to find it is the source of a bloody plague caused by Grave’s experiments. Facing vampiric plants and their loyal clan, Brood must confront his past and question whether he can trust Grave or escape the nightmare himself. 4 July 28, 2025 Shard of Song Rigel Ailur Two wizards search desperately for a way to stave off a vicious magical-musical attack before the dragons succumb.  A powerful relic ancient beyond memory calls to them, but do they dare use it? 3 July 16, 2025 Forest of the Fallen Colossus Bryan Young A dying robber hands Laila and Zaki a mysterious artifact in the middle of a fae-haunted wood. “Danger,” the robber manages before dying. Suddenly sister and brother find themselves safeguarding an unwanted gift—on the run for their lives in the Forest of the Fallen Colossus. 2 July 3, 2025 Death Grip Michael Stackpole The man hadn’t died easily.A smoking hole sat where his heart should have been. Terror twisted his features, and he clutched an emerald reeking of magick as if would somehow save him. Neryon and Magistrate-Martial Logan find themselves in a race to find the killer before he has a chance to harvest more victims. But, with the amount of power used on his first target, there was a big gulf between finding and stopping; and no guarantee he wouldn’t kill them, too. 1 July 3, 2025 Blade of the Storm Witch Robert E. Vardeman Her vengeance became elemental! The Conqueror-King’s minion murdered her pirate husband.  The Lady Rennata was condemned to follow him into a watery grave—until wind and wave swept her to a magical blade that commands all of Nature.

 

 

 

S.E. Lindberg is a Managing Editor at Black Gate, regularly reviewing books and interviewing authors on the topic of “Beauty & Art in Weird-Fantasy Fiction.” He has taken lead roles organizing the Gen Con Writers’ Symposium (chairing it in 2023), is the lead moderator of the Goodreads Sword & Sorcery Group, and was an intern for Tales from the Magician’s Skull magazine. As for crafting stories, he has contributed eight entries across Perseid Press’s Heroes in Hell and Heroika series, and has an entry in Weirdbook Annual #3: Zombies. He independently publishes novels under the banner Dyscrasia Fiction; short stories of Dyscrasia Fiction have appeared in Whetstone Amateur S&S MagazineSwords & Sorcery online magazine, Rogues In the House Podcast’s A Book of Blades Vol I & II, DMR’s Terra Incognita, the 9th issue of Tales From the Magician’s SkullSavage Realms Magazine, and Michael Stackpole’s S&S Chain Story 2 Project. 

Categories: Fantasy Books

Spotlight on “Upward Bound” by Woody Brown

http://litstack.com/ - Thu, 02/26/2026 - 15:00
Upward Bound by Woody Brown

Other LitStack Spots Other Titles that Litstack has spotted and that we have our eyes…

The post Spotlight on “Upward Bound” by Woody Brown appeared first on LitStack.

Categories: Fantasy Books

Red Star Rebels - Quick Book Review

http://mcpigpearls.blogspot.com/ - Thu, 02/26/2026 - 13:00

 

Red Star Rebelsby Amy Kaufman
What is it about:It’s 2067, and the Graves family has transformed Mars from lifeless rock into a chaotic patchwork of settlements—and everybody wants a piece.
Enter Hunter Graves: handsome, ambitious, and with spectacularly bad timing. He shows up at the United Nations base just as an emergency evacuation sends everyone scurrying for safety. Except he’s left behind. Uh oh.
Also stranded: Cleo, a sharp-tongued stowaway with no intention of dying today, and even less patience for overconfident trust fund boys. But the enemy of your enemy might just help you survive, so here we are.
Turns out the evacuation was just a cover for the mercenaries who came next, and they plan to blow up the base—and every trace of their crime—in eight hours.
Now, Hunter and Cleo have one shot to stop the explosion, escape alive, and deal with the inconvenient fact that they’re falling for each other.
The clock is ticking.
What did I think of it:This book was promoted somewhere as 'Die Hard meets...' (Yes, I forgot what the other thing was.)The Die Hard reference was enough for me to pick it up though.
And this is indeed a fun YA SciFi with elements that make the comparison to Die Hard a fair one.
The story is told from both Hunter's and Cleo's point of view in alternating chapters. After a short introduction to both and the setting, the action starts and keeps going in a pleasant pace. I really liked Cleo's fast thinking and creative solutions. There were a few surprises along the way, but those felt natural and believable.
All in all a very enjoyable read.
Why should you read it:It's YA Die Hard on Mars

Categories: Fantasy Books

Review: Daughter of No Worlds by Carissa Broadbent

http://fantasybookcritic.blogspot.com - Thu, 02/26/2026 - 09:00


Buy Daughter of No Worlds

FORMAT/INFO: Daughter of No Worlds was traditionally published by Bramble Romance on October 14th, 2025. It is 512 pages long and available in hardcover and ebook formats.


OVERVIEW/ANALYSIS: Tisannah is a woman with a rare gift of magic, but that matters little when you're a slave. For years she's been nothing more than a prized possession, using her gift to make pretty illusions for her master's parties. But when betrayal ends in bloodshed, Tisannah flees for her life to the one place she's always dreamed of: the Tower of the Orders. She believes this magical organization can give her the resources she needs to return to her home and free the rest of her fellow slaves. Unfortunately before the mages will lift a finger, Tisannah needs to become a member of their Orders herself. That means completing an apprenticeship - and the only mage available is the reclusive Maxantarius, who absolutely refuses to be of any help to the Orders for reasons he won't talk about. But Tisannah's sheer determination eventually wears down those walls, exposing her own heart in the process.

Daughter of No Worlds is a perfect blend of epic fantasy and romance, a slow burn love story nestled into the heart of a tale of intrigue and politics. My favorite romances always focus on the developing relationship between two characters. I'll take enemies to friends to lovers over instalove every day of the week. Daughter of No Worlds is one of those stories.

Maxantarius (who goes by Max) is bitter, reclusive, and stubborn. Tisannah wears her heart on her sleeve and is tenacious in fighting for those she loves. Which is why she's not going to be prevented from learning magic just because her mentor Max refuses to teach her (or anyone for that matter). What follows is a butting of heads that eventually softens to begrudging respect and more. Every beat feels earned, and I am absolutely rooting for these characters.

But that's only half of Daughter of No Worlds' plot. The rest focuses on the increasing instability of the kingdom that is aligned with the Orders as war seems likely. The politics surrounding those tensions give Tisannah a unique window to bargain for the fate of her people - if she can figure out something to offer the right person. The politics of the story aren't overly deep or intricate, but there's definite power players at the table that Max and Tisannah have to deal with to achieve their goals, and I appreciated this counterbalance to the romance. This is the beginning of a saga; we'll be following Max and Tisannah across the full trilogy, and the author does a good job getting us invested in this world.

Daughter of No Worlds is definitely a top tier romantic fantasy. You can come for magic, for war, for harrowing backstories. But running through all of that is a wonderful slow burn romance that hooked me in. It's a romance of respect and partnership and I cannot wait to see where things go in the next book.

 
Categories: Fantasy Books

Two More Sword & Sorcery Anthologies: Savage Heroes edited by Eric Pendragon, and Heroic Fantasy, edited by Gerald W. Page and Hank Reinhardt

https://www.blackgate.com/ - Thu, 02/26/2026 - 02:59


Savage Heroes (Star, February 1977). Cover by Les Edwards

A couple more Sword & Sorcery anthology reviews: first up is Savage Heroes (Subtitled Tales of Sorcery & Black Magic) (1977), from British Publisher Star, edited by Eric Pendragon and illustrated by the great Jim Pitts, who is still working today. The cover looks to have been done by Les Edwards, however.

It contains stories by C. L. Moore (Jirel), Henry Kuttner (Elak), Clark Ashton Smith, Clifford Ball, Ramsey Campbell, Daphne Castell, Karl Edward Wagner (Kane), David Drake, and Robert E. Howard. The REH tale is “The Temple of the Abomination,” a Cormac Mac Art tale.

[Click the images for savage versions.]

Savage Heroes Table of Contents

A solid collection, though probably not the absolute best stories by these authors. Drake’s “The Barrow Troll” is one of his better ones. I remember being disappointed a little in this collection because I had almost all these stories already in other collections.

Second up, Heroic Fantasy (1979), from DAW with a cover by Jad. Edited by Gerald W. Page and Hank Reinhardt. A much thicker collection than Savage Heroes and it scratched an itch the other didn’t because it was all new heroic fantasy stories (at the time).


Inside cover and introduction for Savage Heroes. Illustration by Jim Pitts

It contains:

“Sand Sister” by Andre Norton (Witch World)
“The Valley of the Sorrows” by Galad Elflandsson
“Ghoul’s-Head” by Donald J. Walsh, Jr.
“Astral Stray” by Adrian Cole (Voidal Tale)
“Blood in the Mist” by E. C. Tubb
“The Murderous Dove” by Tanith Lee
“Death in Jukun” by Charles R. Saunders (Imaro)
“The De Pertriche Ring” by H. Warner Munn
“The Hero Who Returned” by Gerald W. Page
“The Riddle of the Horn” by Darrell Schweitzer
“The Age of the Warrior” by Hank Reinhardt
“The Mistaken Oracle” by A. E. Silas
“Demonsong” by F. Paul Wilson
“The Seeker in the Fortress” by Manly Wade Wellman (Kardios tale)

It also contained three nonfiction essays, which I liked: Commentary on Swords and Swordplay, Commentary on Armor, and Commentary on Courage and Heroism, all by Hank Reinhardt.


Heroic Fantasy (DAW Books, April 1979). Cover by Jad

This was my first introduction to Charles Saunders’ Imaro character and it was a dynamite story that made me an instant fan. I also particularly enjoyed the Gerald Page and Adrian Cole stories, but my favorite was E. C. Tubb’s tale. I’d read a lot of his Dumarest stories but this was Sword & Sorcery and I loved it. It was third in a series Tubb did about this character, “Malkar.”

The Malkar stories seem to have been gathered in print in 1999 in two volumes, Death God’s Doom and The Sleeping City, but the prices are pretty outrageous so I haven’t bought them. BTW, I thought the weakest story in the book was the ending tale by Manly Wade Wellman.

Charles Gramlich administers The Swords & Planet League group on Facebook, where this post first appeared. His last article for us was A Sword and Planet Quiz. See all of his recent posts for Black Gate here.

Categories: Fantasy Books

7 Author Shoutouts | Authors We Love To Recommend

http://litstack.com/ - Wed, 02/25/2026 - 15:00
Author Shoutouts

Here are 7 Author Shoutouts for this week. Find your favorite author or discover an…

The post 7 Author Shoutouts | Authors We Love To Recommend appeared first on LitStack.

Categories: Fantasy Books

Clockwork Boys - Book Review

http://mcpigpearls.blogspot.com/ - Wed, 02/25/2026 - 13:00

 

Clockwork Boys (Clocktaur War #1)by T. Kingfisher
What is it about:A paladin, an assassin, a forger, and a scholar ride out of town. It’s not the start of a joke, but rather an espionage mission with deadly serious stakes. T. Kingfisher’s new novel begins the tale of a murderous band of criminals (and a scholar), thrown together in an attempt to unravel the secret of the Clockwork Boys, mechanical soldiers from a neighboring kingdom that promise ruin to the Dowager’s city.
If they succeed, rewards and pardons await, but that requires a long journey through enemy territory, directly into the capital. It also requires them to refrain from killing each other along the way! At turns darkly comic and touching, Clockwork Boys puts together a broken group of people trying to make the most of the rest of their lives as they drive forward on their suicide mission.
What did I think of it:I have really enjoyed Swordheart and the 3 Saint of Steel books I've read so far, so I decided to give the Clocktaur War Duology a chance as they're set in the same world.
And this was a very nice read.
I liked the characters, the banter between them, the setup. It just seemed to be a bit slow on the story. Now this might have been just me, but with a title "Clockwork Boys" I had expected more... Clockwork Boys. Our brave heroes do get drawn into other events, but they make sure to stay far away from the things this book is named after.
That aside, I had a good time with this book. Kingfisher's writing, characters, humor, and worldbuilding didn't disappoint, and I will most certainly buy the matching hardcover of The Wonder Engine when it releases in March.
Why should you read it:It's a fun Fantasy read.



Categories: Fantasy Books

Teaser Tuesdays - The Maleficent Faerie

http://mcpigpearls.blogspot.com/ - Tue, 02/24/2026 - 13:00

"It's him, isn't it?" Dawn breathes. "It's the Maleficent One, the Void King. He wants-"
(page 13, The Maleficent Faerie by Rebecca F. Kenney)

---------
Teaser Tuesdays is a weekly bookish meme, previously hosted by MizB of Should Be Reading. Anyone can play along! Just do the following: - Grab your current read - Open to a random page - Share two (2) “teaser” sentences from somewhere on that page BE CAREFUL NOT TO INCLUDE SPOILERS! (make sure that what you share doesn’t give too much away! You don’t want to ruin the book for others!) - Share the title & author, too, so that other TT participants can add the book to their  TBR Lists if they like your teasers!

Categories: Fantasy Books

Book review: Twelve Months by Jim Butcher *Dresden Files # 18)

http://fantasybookcritic.blogspot.com - Tue, 02/24/2026 - 09:00

 


Book links: Amazon, Goodreads

ABOUT THE AUTHOR: Jim Butcher is the author of the Dresden Files, the Codex Alera, and a new steampunk series, the Cinder Spires. His resume includes a laundry list of skills which were useful a couple of centuries ago, and he plays guitar quite badly. An avid gamer, he plays tabletop games in varying systems, a variety of video games on PC and console, and LARPs whenever he can make time for it. Jim currently resides mostly inside his own head, but his head can generally be found in his home town of Independence, Missouri.

Jim goes by the moniker Longshot in a number of online locales. He came by this name in the early 1990′s when he decided he would become a published author. Usually only 3 in 1000 who make such an attempt actually manage to become published; of those, only 1 in 10 make enough money to call it a living. The sale of a second series was the breakthrough that let him beat the long odds against attaining a career as a novelist.

All the same, he refuses to change his nickname.

Publisher: Ace (January 20, 2026) Page count: 463 p Formats: audiobook, ebook, hardcover 

I’ve been reading The Dresden Files for a long time now. It’s one of the very few long-running series I’ve stuck with. It’s had highs and lows, but Twelve Months shows Jim Butcher in excellent form again.

After the relentless escalation of Peace Talks and Battle Ground, this book slows down. It basically follows a year of Harry’s grief, fallout, and rebuilding.

Harry is hollowed out. Chicago is barely functioning after the Titan’s assault. Food is scarce. Infrastructure is wrecked. The supernatural world has been exposed, and fear is spreading. On top of that, Harry is juggling Thomas’s looming death sentence, training a new apprentice, navigating White Council politics (again), and preparing for an arranged marriage to Lara Raith under Mab’s orders.

The real conflict here is internal. For once, the greatest enemy in the book is grief. Harry struggles to eat. To sleep. To focus. His magic wavers because his control wavers. This is a far more introspective Dresden novel than we’re used to, and it works.

That doesn’t mean it’s dull. There are fights. There are ghouls prowling Chicago. There are political landmines, tense confrontations, and a climax that absolutely delivers. But the action feels more personal this time.

The biggest surprise for me was how well Butcher handled the relationships. Harry and Lara could easily have fallen into forced tension or cheap drama. Instead, their dynamic is layered and unexpectedly thoughtful. There’s distrust, yes, but also honesty and even vulnerability. It feels like growth.

Old allies step up too. Molly. Michael. Maggie. Even Mab, in her own severe way. The book reminds you how deep this cast is after eighteen installments.

Some readers will call this a transitional novel, and they’re not wrong. It’s a recalibration. A pause before the Outsider endgame looms closer. But it doesn’t feel like filler. After years of escalating power and misery, Butcher pulls the story back to its roots: Harry Dresden the man, not just the wizard.

For me, it might be some of the best writing in the series. More mature and more controlled. Less snark-for-snark’s-sake. The humor is still there, but it shares space with reflection and wisdom.

If the series needed a reset, this was the right way to do it.

Categories: Fantasy Books

Is There Indeed a Change in the Air?

https://www.blackgate.com/ - Tue, 02/24/2026 - 08:49
Image by Gerd Altmann from Pixabay

Good afterevenmorn, Readers!

Since the release of Iron Lung, the independent film adaptation of the equally independent video game of the same name, I have been awash in articles, interviews and reviews about the piece. The algorithm has decided that that’s all I’ll get for now until the end of time. Well, that and general tarot readings, for some reason. I must admit, I have been following the story for a while, so it’s partially my fault. And it has also let me down the wonderful warren that is upcoming video game adaptations. And I want to talk about it.

Some of these are from games might all recognise – video games by the big studios that are or have been part of the cultural milieu for a while now – Mortal KombatSonic the HedgehogStreet FighterSilent Hill (the return to which released early this year and was not well-received. I did not watch it, so I can’t comment). The list goes on.

With the exception of Mortal Kombat (the most recent movie was meh, but I am absolutely going to go see this next one, due out in May. I think attaching Karl Urban to the lead role, and following Johnny Cage will make for a fun, if ultimately frivolous movie-going experience), I’m  not particularly excited about any of these releases. I am incredibly excited for others, though. Ghost of Tsushima was an excellent game, with a brilliant story that I cannot wait to share with my non-gaming father. I will be at the cinema when it is released. And I will be dragging him with me. I am equally excited about God of War. The original games were fun nonsense, but the reworking of Kratos and his story in the 2018 game (and on) was a brilliant piece of storytelling as well as being a fantastic game. I will be there will bells on whenever that series is released (2027 is the projected year, with filming to begin in March of this year).

Both of those games rank among my top five games I’ve played.

I have to admit, my excitement is a little tempered. Not all video game adaptations have been much good. In fact, very few of them are, I feel. But that is changing. The Last of Us has proven that video games can become really brilliant television shows, giving me hope of God of War. While not for everyone, I thought Iron Lung was excellent, and with the director attached to Ghost of Tsushima (Chad Stahelski of John Wick fame), I’m optimistic about that film being something as special as the game was.

The point is, good adaptations of video games are possible. They key here, I think, is to respect the original games and their stories. Not all film makers can or will. But I’m certain that as long as they do, the adaptations will be good.

That’s not really why I’m here, though. I’m here to cheer on the independents. A surprising number of these promised adaptations are of independently produced video games; passionate work by passionate people who don’t have the benefit of recognisable studios or distributors behind them. This is glad tidings for me; not because I’ve played these games, necessarily, but because it proves that if people are left alone to craft what they want to, and not what some suit relying on sterile numbers demands, excellent stories can and will be produced. There is hope for story-telling out there; in every medium.

So, here is a couple of independent video games (other than Five Nights at Freddie’s, which is another independent success story) that have been or will be given adaptations that I am thrilled to see, even if I may not check them out:

First up is The Exit 8 (also sometimes just called Exit 8). Developed and published by Kotake Create/Kotakenotokeke, this game is essentially a spooky spot the difference. Seen through the player’s perspective (first person), the player is given simple instructions: If everything looks normal or is the same as before, continue to the next level/exit. Otherwise, turn back. The differences can range between jump scares to just the extremely creepy. The game is simple enough, but very atmospheric. I did not think it would be enough for an adaptation, but I was mistaken. It was given one. Directed and co-written by Genki Kawamura, the film released in Japan August of last year. And it is coming to cinemas this year. Distributed by Neon, it will be released in April.

I think I will make this one my April date-for-one movie. I’m not a horror girly by any stretch, but this looks to be more psychological, and I’m keenly interested in seeing how they managed to make this simple game into a film.

Phasmaphobia is another independent game (by British independent studio Kinetic Games) that has rumours of an adaptation surrounding it. I say rumours because although it’s been reported that Blumhouse has acquired the rights for adaptation, development hell exists, so until it starts filming, I will remain hopeful but realistic. Designed to be a multi-player co-op game, the team is hired to investigate haunted locations and, depending on the evidence they accrue, identify the thing that is haunting the place. Presumably so that someone else can go in to perform the correct exorcism? I don’t know. The players are not expected to exorcise the thing, just identify it.

I have not played this game, but is has given rise to one of my favourite gaming moments that I have ever had the pleasure of watching:

It still makes me laugh. Really hard.

While a fun game to play, there really isn’t a defined story in this one; just a bunch of missions/jobs. Still, it is easier is see how it would be adapted into a film; provided that the writers are good (there has been a writing problem in films of late. Perhaps I’ll rant about that in a later post, if I’m feeling cranky enough about it). It is also a much more traditional horror, so I might give this one a miss when it comes out. This is the kind of thing that would give me nightmares. If the story can manage to be compelling enough, however, maybe I’ll just suck it up. I’m undecided. The script will be everything here.

Perhaps the biggest independent title being given an adaptation is the 2025 smash hit RPG game Clair Obscur: Expedition 33 .

Developed by French studio Sandfall Interactive, this game made waves in the scene. It won nine awards, including Game of the Year in the Game Awards 2025, was nominated for a slew of others in other awards, winning five of their eight nominations, including Game of the Year again for the Academy of Interactive Arts and Sciences. This is one I have not yet played (though I really want to), but I have heard nothing but exceptional things from the gamers I have in my life. I don’t know much about the plot of this one. I have been trying very hard not to learn too much about it, because I want to discover it for myself when I finally do get to play it. You know, when I can finally afford a PS5.

Anyway, I’m really excited about this one, just because I’ve heard so many good things about the game.

This is just a few examples of video game adaptations that are in the works. Granted, that list is still dominated by the big name games from the big game studios, but the prevalence of independent games getting seen and (dare I hope) respected by those who are adapting the stories from video games. While the opportunity to make bank is still the biggest deciding factor, I feel, I am also seeing an openness to those stories that capture the imagination, and a willingness to listen to voices that don’t have the biggest budgets behind them. This lets me hope that some people do still care about craft and story, and not just their wallets.

It’s heartening.

Are there any adaptations you’re particularly looking forward to? I’d be interested to hear. I know I’ve missed many.

When S.M. Carrière isn’t brutally killing your favorite characters, she spends her time teaching martial arts, live streaming video games, and sometimes painting. In other words, she spends her time teaching others to kill, streaming her digital kills… and sometimes relaxing. Her most recent titles include Daughters of BritainSkylark and HumanThe Timbercreek Incident is free to read on Wattpad.

 

Categories: Fantasy Books

THE RED WINTER by Cameron Sullivan

ssfworld - Tue, 02/24/2026 - 08:00
The origins of the werewolf legend are explored, as well as demonic possession, witchcraft, ancient gods, queer love, the life of a succubus, as well as a thinly veiled Joan of Arc in Cameron Sullivan’s centuries spanning historical dark fantasy debut, The Red Winter. The main character, Professor Sebastian Grave of Larnaca, a famed monster…
Categories: Fantasy Books

Michael Swanwick Guest Post and Book Giveaway

http://fantasybookcafe.com - Mon, 02/23/2026 - 19:15

I’m thrilled to have a guest post by science fiction and fantasy author Michael Swanwick to share with you today—and to be giving away a copy of his new SFF collection! His previous work includes the World Fantasy Award–winning novella “Radio Waves” and the additional stories collected in Tales of Old Earth; the collection The Dog Said Bow-Wow, which includes the Hugo Award–winning short story of the same name; and the Nebula Award–winning novel Stations of the Tide. His latest book, The […]

The post Michael Swanwick Guest Post and Book Giveaway first appeared on Fantasy Cafe.
Categories: Fantasy Books

Spotlight on “The Marriage Bed” by Tommy Hays

http://litstack.com/ - Mon, 02/23/2026 - 15:00
The Marriage Bed by Tommy Hays book cover

Other LitStack Spots Other titles LitStack has spotted that we have our eyes on are…

The post Spotlight on “The Marriage Bed” by Tommy Hays appeared first on LitStack.

Categories: Fantasy Books

Cape Fear: John D. MacDonald is BACK!!!!!

https://www.blackgate.com/ - Mon, 02/23/2026 - 11:00

I have not been active in the John D. MacDonald world for awhile. Time is limited, and interests are many. I recently jumped down the Columbo rabbit hole (I wrote about him back in 2016, and I’ve got a big project in the works for 2027). And I’ve been watching that seventies show, Emergency!. That holds up way better than you might expect!

Which is all to say, I actually exclaimed in joy last week when I discovered a new ten-episode streaming series of Cape Fear is coming!! (You can see I’m still excited!). It will air on Apple TV, every Friday from June 5 through July 26.

Hopefully you’ve read some of my John MacD writings here at Black Gate. I even have a landing page where I collected my writings on him. I was late to the Robert E. Howard party, and Two-Gun Bob has risen to number two on my all-time favorite writers list. But John D. MacDonald is the one author he hasn’t passed. And I don’t think he ever will.

THE EXECUTIONERS

There was a writers community in Sarasota, Florida, in the fifties. MacDonald moved there in 1951, and the dean of the group was MacKinley Kantor, who wrote the Pulitzer Prize winner, Andersonville. He became JDM’s friend, and mentor. In 1957, at one of the gatherings, Kantor was needling MacDonald about the quality of his writing. All he wrote were mysteries and other paperback trash. Why didn’t he write a real book?

MacDonald got mad. He bet Kantor $50 that he would write a book within thirty days. A book that would be serialized in magazines, be a book club selection, and be turned into a movie. Kantor accepted.

MacDonald had written almost two dozen books, mostly paperback originals. MacDonald was popular, but the books were of a type. British critic and novelist Julian Symons later called his books “…production line efficient fast-moving American thrillers.” But he also said, “..there are interesting ideas about the nature of corruption and the increasingly mechanical form of life in America.”

Kantor saw that MacDonald had more in him. Something that would stand out from the good but similar book after book (I like what he was writing, but I’m also not a Pulitzer Prize winner, either).

There were a a few notable thriller writers, like Dorothy B. Hughes (In a Lonely Place), David Goodis (Dark Passage), and of course, Cornell Woolrich. I think of it as these works as the transition from Hardboiled to Noir (this isn’t the place for THAT deep discussion).

MacDonald took the noir thriller and moved it from urban streets to the suburbs. And he did it with The Executioners. It’s a quick, absorbing, scary read. Thrillers use suspense, not horror, to induce fear. Alfred Hitchcock was the master of this. The building fear and suspense in The Executioners bears witness to MacDonald growing as a writer. Kantor was correct.

The book is readily available in paperback, digital, and audio form. Though, under the title Cape Fear.

CAPE FEAR (1962)

That’s right – it became a movie, which was part of JDM winning his bet with Kantor. Gregory Peck (Sam Bowden) and Robert Mitchum (Max Cady) starred in a 1962 big screen effort (88% on Rotten Tomatoes). I’ve seen this once, and it’s a good movie. Director J. Lee Thompson directed The Guns of Navarone, and two of the Planet of the Apes movies. He masterfully builds up the tension and the suspense, step-by-step.

And Robert Mitchum is a dastardly villain. If you like black and white thrillers, this is one that you should check out. When you’ve got Peck and Mitchum at the top the bill, you’re going to see some damn good acting. Peck was a huge star, and he co-produced it through is own production company. He was a fan and wanted this movie to be made.

I’m on record as a HUGE JDM fan. But I’m not a fanboy, and I’ve called him out in writing for his ‘bitter old man’ intro to Norbert Davis’ works. Likewise, he was snobbish towards this movie.

MacDonald was like many writers who disapprove of adaptations of their works. “…a dreary moving, I mean unmoving picture.” And “…Artistically, the movie warped the concept of the novel.”

In fact, he holds forth rather obnoxiously in a 1965 letter about ‘artistic control in other mediums.’ He’s not the first nor the last author to look down on what other people did with his work. Clive Cussler (who I love) was another. Whatever.

CAPE FEAR (1991)

Martin Scorsese is one of the legends of our lifetime. 1990 saw the release of Good Fellas. The following year, he directed the remake of a 29 year-old black and white movie (Steven Spielberg was an uncredited executive producer).

And in a brilliant casting decision, Robert DeNiro was selected for the Mitchum role. Nick Nolte was perfect to succeed Peck. But few who have seen this movie can forget DeNiro’s masterpiece of evil.

And an 18 year-old Juliette Lewis launched her career to star level.

Scorsese included Peck, Mitchum, and also Martin Balsam, from the prior version, which was a wonderful move. If you’ve never seen this movie, you’re missing out on a classic thriller. Proving that box office results don’t tell the whole story, it finished #18 in domestic gross, about $2 million behind Kindergarten Cop (ugh). But with Silence of the Lambs, and Sleeping With the Enemy, it was a good year for the suspense thriller.

If you’ve seen Cape Fear, you know what a standout this is. I’m not gonna reveal spoilers. Other than to point out that there is one significant difference between the book and the two movies. In the novel, the final confrontation takes place at a farmhouse. It works fine in the book. And I wouldn’t think about it being anywhere else.

Except I do think about it being elsewhere. Because the 1962 movie moved it to a houseboat. The remake adds a terrific storm to that. And visually, the houseboat is a better choice than the farmhouse. The finale of the DeNiro movie is absolutely spellbinding to watch.

SUMMER 2026

Scorsese and Steven Spielberg are executive producers of the new Apple+ series. That is a high-level title. Think a creative and fiscal role. And sometimes it’s a financial incentive or reward. It’s not uncommon for someone who was involved in a movie to be given that credit when it is remade.

The Producer actually manages the movie day-to-day. So, this isn’t Scorsese and Spielberg making a movie together, one directing on set. But having said that, it’s from Amblin Television, which Spielberg founded as part of his movie-making empire. Given their history with the 1991 film, I think it’s safe to say they were involved in how this project was developed, and what we’re gonna see on screen.

Amy Adams is touted as the star, which is interesting. Anna Bowden is Tom Bowden’s wife. That’s at best the third main character. Jessica Lange had the part in 1991. Javier Bardem is Max Cady. It’s been nineteen years, but the bad guy from No Country for Old Men, certainly qualifies him for this part. Interesting she’s the lead over him. Patrick Wilson is Tom (not Sam) Bowden. I’ve seen him in things like Aquaman, but I had to look him up. No clue on name alone. It’s not Gregory Peck, or Nick Nolte, star power.

I don’t know much about the new production. But I’m sure as heck looking forward to it. Good book, good movie, great movie. That’s a pretty good pedigree – though no guarantee of success of course.

There have been quite a few MacDonald adaptations over the years, but none since 1993. That was Linda, based on Border Town Girl, and starring a sultry Virginia Madsen. For a guy who reportedly sold 75 million books before he died (in the pre-Internet age), he’s been forgotten. I am really excited to see this project.

Christian Bale was cast as Travis McGee for The Deep Blue Goodbye, when he tore his ACL. By the time things shook out, he couldn’t do the Leonardo DiCaprio project, and it was scrapped. They had even made a Busted Flush and shipped it to Florida for filming.

You can read this link to see what I think about MacDonald’s writing. I SO hope this is a good version.

And all of my JDM-related posts are here at this page.

And one more note: The Simpsons did a brilliant homage, Cape Feare, with Sideshow Bob after Bart. I will NEVER forget Bob explaining away his ‘Die, Bart, Die’ chest tattoo as just German for ‘The, Bart, The.’

Bob Byrne’s ‘A (Black) Gat in the Hand’ made its Black Gate debut in 2018 and has returned every summer since.

His ‘The Public Life of Sherlock Holmes’ column ran every Monday morning at Black Gate from March, 2014 through March, 2017. And he irregularly posts on Rex Stout’s gargantuan detective in ‘Nero Wolfe’s Brownstone.’ He is a member of the Praed Street Irregulars, and founded www.SolarPons.com (the only website dedicated to the ‘Sherlock Holmes of Praed Street’).

He organized Black Gate’s award-nominated ‘Discovering Robert E. Howard’ series, as well as the award-winning ‘Hither Came Conan’ series. Which is now part of THE Definitive guide to Conan. He also organized 2023’s ‘Talking Tolkien.’

He has contributed stories to The MX Book of New Sherlock Holmes Stories — Parts III, IV, V, VI, XXI, and XXXIII.

He has written introductions for Steeger Books, and appeared in several magazines, including Black Mask, Sherlock Holmes Mystery Magazine, The Strand Magazine, and Sherlock Magazine.

You can definitely ‘experience the Bobness’ at Jason Waltz’s ’24? in 42′ podcast.

Categories: Fantasy Books

SPFBO XI - Second Update (Jack's Batch)

http://fantasybookcritic.blogspot.com - Mon, 02/23/2026 - 09:00
SPFBO XI

The competition continues! This is my first year as a judge and I’m thrilled to be a part of it.

A few notes on my review process: for a semifinalist, I wanted to find a book that I'd personally rate 3.5/5 or better. To me, that rating signifies a book which has some notable flaws, but whose flaws (for whatever reason) didn't stop me from enjoying the novel. In general, a novel isn't a 3.5/5 for me unless I'm actively interested in reading a sequel. If and when I bounced off a book in the opening pages, I typically put it down for a few days before giving it another try. I didn’t set any hard rules for myself about when or if I could drop a book, except that I wanted to give every book a fair shot on its merits.


My batch (in randomly-determined reading order) included the following six books:

  1. Carrion Saints by Hiyodori
  2. Legacy of the Crown by Tim Wilbur
  3. Let Sleeping Gods Lie by Ben Schenkmann
  4. Rise of the Phoenix by Brendan Arnold
  5. The Butterfly Koi by A Sherman Karlsson
  6. The Sound of the Supernova by Jordan Butler

Without further ado:

The Butterfly Koi Cover The Butterfly Koi by A. Sherman Karlsson
Published October 6, 2025; 591 pages (Kindle edition)
Genre: Cyberpunk Fantasy, Alternate History

The Butterfly Koi follows six POV protagonists, most of whom are involved to greater or lesser degrees in the criminal and magical sides of the novel’s slightly-futuristic Tokyo setting. There’s Eika, a celebrity and socialite who wants to use her influence to change the world for the better; Misora, a magitech engineer with ties to organized crime; Taehyun, Misora’s celebrity boyfriend; Cameron, another magitech engineer and American expat; Hatsumi, a journalist driven to uncover certain secrets others want to keep hidden; and Kenji (far and away the most entertaining character), a low-level criminal in the Tokyo underworld.

For starters, while I do think this book is technically fantasy, it’s not traditional fantasy fare. That’s not disqualifying, but it’s something readers should know going in. Although the story revolves around magical technology, the magitech doesn’t feel particularly magical – the kind of magitech we see most often is basically a modern cell phone.

There are some real positives here: each of the six POV characters is well-realized with a distinct internal life that feels psychologically real. The prose is good, and the slightly-futuristic Tokyo setting is richly envisioned. I’ve never been to Tokyo so I can’t speak to its accuracy, but it feels like the author both knows and loves the city and wants to share that love with the reader. These strengths kept me reading and enjoying The Butterfly Koi all the way to the end.

Unfortunately, the story has some pretty severe flaws. For starters, I think the book would’ve been much better if 2-3 of the 6 POVs (all of whom exist in each others’ orbits) had been cut. Of the 6, only 1 (Kenji) got what I’d consider a completed plot arc, while 2 could be cut as POVs without any loss to the overall narrative. The author has a frustrating habit of backtracking chronologically at the end of many chapters to retell the events of the prior chapter from a second character’s POV. This slows the story’s progression and stops it from building momentum. It felt like the author only wanted to convey a person’s internal experience via present-tense first-person perspective, rather than via recollection or another character’s observations. Also, the author places several of the POV characters in opposition to magitech-related social ills (mostly related to how a minority of the population lacks the innate ability to use magitech effectively). In my opinion, the author needed to demonstrate more clearly why the reader should share the characters’ concerns.

Let Sleeping Gods Lie Cover Let Sleeping Gods Lie by Ben Schenkman
Published October 27, 2025; 268 pages (Kindle edition)
Genre: Urban Fantasy

I'd call Let Sleeping Gods Lie as an urban fantasy or paranormal mystery set in New Haven, Connecticut. The story follows adjunct anthropology professor Corbin Pierce as he digs into some mysterious magical oddities that begin popping up in town. He investigates and faces threats to the local people, the local spirits, and the local environment, all while trying to figure out what’s behind it all. The magical lore and worldbuilding place a strong focus on Native American history and culture.

There’s a lot to like about this novel. To start with, it wins my personal award for Most Unique Animal on a Fantasy Cover! I've seen dragons, wolves, lions, tigers, and bears (oh my!), but a raccoon? That's a first for me. As for the content, the story reminds me of Wildbow's serial Pale, as well as the early novels of the Dresden Files. Schenkman has a knack for infusing real-world settings with magic, making it feel like the supernatural might be hiding under our noses in real life as well as in fiction. The prose is straightforward and readable, with a nice bit of humor coming through in the narrative voice. In contrast with Butcher's Dresden (a small business owner working closely with the police), Let Sleeping Gods Lie takes a distinctly progressive perspective (activism, environmentalism, a focus on Native American heritage). I found Corbin a tad self-righteous at times, but not enough to interfere with my enjoyment of the story.

I really had only one issue with the book, but it's a big one. A mystery needs at least a little complexity to keep the reader in suspense: multiple suspects, red herrings, misdirection. Here, we don't really get that. The focus of the novel is the mystery behind the dark happenings in New Haven; it feels like the reader is supposed to be wondering who's responsible and why. But the list of potential villains is tiny, so much so that the mystery loses any suspense. The major plot moments are interesting on their own terms, but each resolves a little too quickly and neatly. I feel like this novel would've been greatly improved by another hundred pages of story — just enough to add the layer of extra complexity and misdirection the mystery needed.

Rise of the Phoenix Cover Rise of the Phoenix by Brendan Arnold
Published May 24, 2025; 274 pages (Kindle edition)
Genre: High Fantasy

Rise of the Phoenix, which I’d categorize as YA high fantasy, follows Will Tavner, a teenage blacksmith’s son in the kingdom of Arulean. Arulean suffers under the rule of its tyrannical king and queen. Will and his closest friends Seb and Aylise live quiet, ordinary lives until Will begins to manifest strange symbols on his arms and strange magical powers to go with them. After which, cue the chaos.

It’s a classic fantasy novel setup. Unfortunately, I bounced off of this one a few times before putting it down at the 40% mark. Nothing here really bothered me, but nothing caught my interest either. Will and his friends felt bland as protagonists, and likewise with Arulean’s rulers as antagonists. The prose and dialogue both felt a little wooden.

Legacy of the Crown Cover Legacy of the Crown by Tim Wilbur
Published March 11, 2025; 295 pages (Kindle edition)
Genre: Coming of Age

Legacy of the Crown follows Aislynn, an immortal tired of her eternity, on a quest to end both the world and her own existence. The story is about her, the hunter Wraith she encounters by chance, the relationship they build between them, and how their quest fits into the prophecy devised by the titular undead Crown, the world’s last wizard.

This book was entertaining enough, but nothing really wowed me. The worldbuilding is what I think of as “DnD style” – many worlds, races of people, and types of magic, all of which coexist without a unifying conceptual foundation. Two of the novel’s primary settings (Wraith's village and the city of Keshet) feel a little generic. We get a broad outline of politics in Keshet and a glimpse of the city's underworld, but what about their economy, religious and cultural practices, local foods and music, style of architecture, and so on? For the setting to feel properly real instead of fantasy-standard, I think we needed more of those little details that differentiate one culture and location from another. And frankly, Aislynn’s POV isn’t nearly as bleak as it would need to be to justify her rather unheroic goal of ending the world.

My favorite parts of the book were the prologue and the chapters spent in The Beyond. Wilbur is at his best when he’s going for atmospheric eeriness, I think, since the story hits those notes quite effectively. Unfortunately, this is just a fraction of the book. Much of the story instead focuses on (1) a romance storyline and (2) a political intrigue storyline. The former didn't give me the sense of chemistry I wanted and didn't feel emotionally powerful until the In-Between. The latter crammed a book's worth of machinations into just a few chapters, so it all felt much too simple, as though major political change is just sitting there for the asking.

Sound of the Supernova Cover The Sound of The Supernova by Jordan Butler
Published July 4, 2025; 472 pages (Kindle edition)
Genre: Coming of Age

Sound of the Supernova begins in the fictional island setting of Kamini, whose people seem to live happy lives. Unusually happy, since, by virtue of the magical Nova traded to them by a foreign power, they can never get sick. In exchange for a steady supply of Nova, all they're required to trade away are some some (apparently) worthless weeds – a plot hook which intrigued me. The protagonists are three young islanders and friends: Jonah, Luca, and Amaya.

Unfortunately, I was only able to get about 10% into the story before I had to put it down for good. This book needed several more rounds of editing before publication. Each page had several grammatical errors and awkwardly-phrased sentences and the tense kept flip-flopping between past and present, which was especially jarring. I was a little sad to DNF, since it seemed like the plot was about to take some interesting turns, but the prose issues made it impossible to immerse myself in the story and I couldn’t see this book as a possible semifinalist.


Carrion Saints by Hiyodori
Published January 3, 2025; 589 pages (Kindle edition)
Genre: Dark Fantasy

I really can’t describe this story better than the author does on Goodreads: “Carrion Saints is a sapphic enemies-to-lovers romance between an immortal saint and a severed head.” Now, romance isn’t my favorite subgenre, but talk about a hook! The author sets that romance in a delightfully creepy postapocalyptic setting. The world is slowly eroding into the void, human civilization is in shambles, and immortal monsters of every variety prey on the survivors. 

Enemies-to-lovers is such an easy trope to do badly. I feel like the most common approach is to base the initial opposition on a misunderstanding which the author can resolve to set up a reconciliation. That’s the easy path, which the author does not take. Instead, we’re treated to the fascinating complexity of an evolving relationship between two beings who are genuinely, fundamentally at odds. This is the most screwed-up, manipulative, psychologically twisted relationship I’ve seen since the TV show Hannibal. And it’s so well done.

The story is structured like a travelogue, which often bores me, but the author makes it work. I think it’s all the little details of the setting. Did the pasta in that village need to be shaped like a human ear? Did the tea in that other village need to be brewed from pink beetles? Of course not, but congratulations, you have my undivided attention.

The story is an extremely slow burn. It’s not always clear where the story is going, so the book demands a fair bit of trust from the reader. All I can say is that it all pays off in my favorite sort of ending: beautiful, bittersweet, and deeply existential. 

Verdict

Our next semifinalist is:

Carrion Saints, by Hiyodori!

Not only was this my favorite book of the batch, it’s one of the best books I’ve read in the past year. I doubt a sequel is in the cards, but I’m definitely going to pick up something else from this author. Congratulations to Hiyodori and my thanks to all of these authors for their submissions!


Categories: Fantasy Books

Book Review: Operation Bounce House by Matt Dinniman

http://Bibliosanctum - Sun, 02/22/2026 - 06:46

I received a review copy from the publisher. This does not affect the contents of my review and all opinions are my own.

Operation Bounce House by Matt Dinniman

Mogsy’s Rating: 4 of 5 stars

Genre: Science Fiction

Series: Stand Alone

Publisher: Ace (February 10, 2026)

Length: 448 pages

Author Information: Website

Like many others, I came to Operation Bounce House as a fan of Dungeon Crawler Carl. Let’s face it, at this point I’m pretty much going to read anything Matt Dinniman writes, and what better way to enjoy more of his work while waiting for A Parade of Horribles? I’m also in need of a fun diversion, and honestly, this feels like one for the author too.

First, this isn’t LitRPG, and I’m glad. A one-off standalone like Operation Bounce House deserves the space to be its own thing. The story is set on New Sonora, a colony planet largely populated by farming families who have built stable, self-sustaining communities after generations of surviving without support from Earth. Our protagonist Oliver Lewis is a young colonist who lives on a ranch with his sister, maintaining his land with the help of their agricultural bots and an AI system named Roger. Life hasn’t been easy for them, but they’ve learned to make do. While the colony still bears the scars of past disasters, including the wreckage of crashed ships and the lingering grief of a devastating plague, it’s their home and they are fiercely proud of the life they have managed to build.

But everything changes when contact with Earth suddenly and fully reopens with instant communication and travel through a transfer gate that was long thought dormant. The reason for this unexpected drop-in? Repossession of the entire planet. And as if that wasn’t brazen enough, Earth’s government has contracted a powerful corporation to carry out the “eviction action,” and rather than deploying more traditional tactics, they’ve decided to turn the process into a commercial opportunity—a game. Bored, wealthy Earthers have been offered a chance to participate in Operation Bounce House, shelling out big bucks to design the own war mechs and remotely pilot them from their own homes as they carry their assault on the people of New Sonora. Faced with an enemy that treats invasion like entertainment and ignores the usual rules of war, Oliver and his fellow colonists must fight to survive, forcing them to think creatively and adapt in ways they never imagined.

This one’s for all you fans of a good underdog fight. Operation Bounce House literally pits a group of farmers against a mecha army controlled by what amounts to Twitch streamers. Hardly fair, you might think, but then Oliver and his friends aren’t as helpless as they look. They’ve got a few tricks up their sleeves, along with Roger, who is hands down the best part of the book and an AI you definitely wouldn’t want to cross. If you loved the chaotic energy of the AI in Dungeon Crawler Carl, you’ll recognize a similar sass here, though Roger is very much his own entity and apparently an expert in psychological warfare who doesn’t believe there’s any such thing as going too far. He’s like that crazy scary friend you’re glad is on your side.

But despite the AI stealing the show, this is also a very human story, full of camaraderie, shared love and loss. The characters are easy to root for, and as their personal stories are gradually revealed over time, Oliver and his inner circle grow more and more relatable. They are young, many of them are still uncertain about their futures. They’re also frequently reckless, another symptom of youth, yet trying their best to hold it together even as the world implodes around them. The plot occasionally eases up on its frenetic pace to spend time on these relationships, from messy romances to sibling dynamics, and of course, these are the moments that bring warmth to a story that might otherwise feel like all action and no heart.

Thing is, though, there is plenty of faction. And it is fast and brutal. The costs of the conflict are high, and Dinniman isn’t holding back. When terrible things happen, you are going to feel it, as in there’s not much room for emotional distance. Yet at the same time, there are flashes of humor that come through here and there, often just at the right moment to offer a bit of respite against the darkness. Even so, it is fair to say this is a more somber and hard-hitting book than many of Dinniman’s readers might expect.

Still, the author’s personal interests are clearly woven throughout this novel, like the gamer logic behind the invasion, the tactical planning before and during battles, and the band rehearsals that thread through Oliver’s life. It reads like a passion project, something Dinniman genuinely wanted to explore, and that enthusiasm comes through in the heightened emotions and sharper, more pointed humor.

In the end, Operation Bounce House felt like a satisfying detour. It is darker and in a way more grounded in what I feel is more traditional science fiction, but still unmistakably Matt Dinniman in that it delivers a fantastic genre read that doesn’t feel like the same old stuff.

Categories: Fantasy Books

Jerusalem A Cookbook & All Our Wrong Todays

http://litstack.com/ - Sat, 02/21/2026 - 15:00
Jerusalem Cookbook and All Our Wrong Todays book covers

Food and Time, two wonderful things to contemplate. Here is a double LitStack Rec of…

The post Jerusalem A Cookbook & All Our Wrong Todays appeared first on LitStack.

Categories: Fantasy Books

Pages

Recent comments

Subscribe to books.cajael.com aggregator - Fantasy Books