Legends of Skyfall

The Legends of Skyfall was a series of four adventure gamebooks written by David Tant and published by Armada in 1985. They were written to cash in on the explosive popularity of such books, spawned by Steve Jackson and Ian Livingstone's Fighting Fantasy and later Joe Dever's Lone Wolf series.

The books allow the reader to become a lone adventurer on a planet called Skyfall which was colonized by humans who were fugitives from a dying planet. Although the population of humans on the planet has grown over an undisclosed period of time (hinted at being a few hundred years) to the point where they now outnumber indigenous races, the planet remains largely untamed. The humans themselves are largely hemmed in to a small Kingdom known as Delta.

The series' major deviation from others of the genre was a unique system for organizing combat. Whereas most gamebooks and Role-Playing Games involve the use of dice to create randomness, the Skyfall series adopted a system of coin tosses.

Books

  1. Monsters of the Marsh
  2. The Black Pyramid
  3. Mine of Torments
  4. The Garden of Madness
gollark: It's probably not going to be worse for the phone than just, I don't know, normal web browsing or phone use.
gollark: I mean, there are bigger problems with cloud gaming stuff than phones getting slightly warm, but if you like it I guess...
gollark: Your phone is probably only doing video decoding, which it likely has dedicated hardware for.
gollark: I was intending to make it catch segfaults and mmap in a new region or something to make them not segfault. Unfortunately, this *apparently* invokes vast amounts of horrible undefined behavior and "isn't allowed" and "will summon nasal demons which will destroy everything".
gollark: Unfortunately, my excellent code appears to not work properly.```c#include <stdio.h>#include <signal.h>#include <string.h>#include <stdlib.h>#include <sys/mman.h>#include <unistd.h>static void handler(int sig, siginfo_t *info, void *utterly_worthless_argument) { printf("oh bees segfault %08x\n", info->si_addr); int ps = getpagesize(); long ad = (long)info->si_addr; ad = ad - (ad % ps); mmap((void*)ad, 0x10000, PROT_NONE, MAP_ANONYMOUS|MAP_FIXED, -1, 0);}int main() { struct sigaction sa; sigemptyset(&sa.sa_mask); sa.sa_flags = SA_NODEFER; sa.sa_sigaction = handler; sigaction(SIGSEGV, &sa, NULL); *(int*)NULL = -3; printf("thing done\n"); return 0;}```

See also

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.