Finalmente encontré donde estaba el error.
Código PHP:
<?php
$image = "signature_blank.png"; //plantilla
$archivo = "images/final.png";
$im = imagecreatefrompng($image);
$blue = ImageColorAllocate ($im, 5, 50, 250); // Letra azul
$now = date("M d,Y H:i:s"); // Fecha, a incluir
$red = ImageColorAllocate ($im, 255, 0, 0); // Letra roja
$j = 8; // Modificar con valor de la consulta sobre $production
$space = $j*6+240;
ImageString($im, 3, 140, 5, " Jugador: $player", $blue);
ImageString($im, 2, 140, 17, "growth: $growth science: $science", $blue);
ImageString($im, 2, 140, 30, "culture: $culture Production: $production", $blue);
ImageString($im, 2, $space, 30, "Speed: $speed", $red);
ImageString($im, 2, 140, 40, "Atack: $atack Defense: $defense", $red);
Imagepng($im,$archivo);
ImageDestroy ($im);
?>
El error era que soy un borrico

y generaba la imagen con Imgepng($im,'',100) pero no le decía que me la guardara.