100% found this document useful (2 votes)
125 views65 pages

Cross Over To HTML5 Game Development: Use Your Programming Experience To Create Mobile Games 1st Edition Zarrar Chishti (Auth.)

Programming

Uploaded by

yudinrubyeea
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (2 votes)
125 views65 pages

Cross Over To HTML5 Game Development: Use Your Programming Experience To Create Mobile Games 1st Edition Zarrar Chishti (Auth.)

Programming

Uploaded by

yudinrubyeea
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 65

Download the Full Version of textbook for Fast Typing at textbookfull.

com

Cross Over to HTML5 Game Development: Use Your


Programming Experience to Create Mobile Games 1st
Edition Zarrar Chishti (Auth.)

https://textbookfull.com/product/cross-over-to-html5-game-
development-use-your-programming-experience-to-create-
mobile-games-1st-edition-zarrar-chishti-auth/

OR CLICK BUTTON

DOWNLOAD NOW

Download More textbook Instantly Today - Get Yours Now at textbookfull.com


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

Pro HTML5 Games. Learn to build your own Games using HTML5
and JavaScript Aditya Ravi Shankar

https://textbookfull.com/product/pro-html5-games-learn-to-build-your-
own-games-using-html5-and-javascript-aditya-ravi-shankar/

textboxfull.com

Create Computer Games Design and Build Your Own Game


Patrick Mccabe

https://textbookfull.com/product/create-computer-games-design-and-
build-your-own-game-patrick-mccabe/

textboxfull.com

Unity 2017 Game AI Programming Leverage the power of


Artificial Intelligence to program smart entities for your
games Raymundo Barrera
https://textbookfull.com/product/unity-2017-game-ai-programming-
leverage-the-power-of-artificial-intelligence-to-program-smart-
entities-for-your-games-raymundo-barrera/
textboxfull.com

Uncopyable How to Create an Unfair Advantage Over Your


Competition 2nd Edition Steve Miller

https://textbookfull.com/product/uncopyable-how-to-create-an-unfair-
advantage-over-your-competition-2nd-edition-steve-miller/

textboxfull.com
Mastering LibGDX Game Development Leverage the power of
LibGDX to create a fully functional customizable RPG game
for your own commercial title 1st Edition Hoey Patrick
https://textbookfull.com/product/mastering-libgdx-game-development-
leverage-the-power-of-libgdx-to-create-a-fully-functional-
customizable-rpg-game-for-your-own-commercial-title-1st-edition-hoey-
patrick/
textboxfull.com

Work on Your Game: Use the Pro Athlete Mindset to Dominate


Your Game in Business, Sports, and Life Dre Baldwin

https://textbookfull.com/product/work-on-your-game-use-the-pro-
athlete-mindset-to-dominate-your-game-in-business-sports-and-life-dre-
baldwin/
textboxfull.com

Game Programming in C Creating 3D Games Creating 3D Games


Sanjay Madhav

https://textbookfull.com/product/game-programming-in-c-
creating-3d-games-creating-3d-games-sanjay-madhav/

textboxfull.com

Nlp Made Easy How to Use Neuro Linguistic Programming to


Change Your Life Ali Campbell

https://textbookfull.com/product/nlp-made-easy-how-to-use-neuro-
linguistic-programming-to-change-your-life-ali-campbell/

textboxfull.com

Uncopyable How to Create an Unfair Advantage Over Your


Competition Updated and Expanded Edition Steve Miller

https://textbookfull.com/product/uncopyable-how-to-create-an-unfair-
advantage-over-your-competition-updated-and-expanded-edition-steve-
miller/
textboxfull.com
Cross Over to
HTML5 Game
Development
Use Your Programming Experience to
Create Mobile Games

Zarrar Chishti
Cross Over to HTML5
Game Development
Use Your Programming
Experience to Create
Mobile Games

Zarrar Chishti
Cross Over to HTML5 Game Development: Use Your Programming
Experience to Create Mobile Games
Zarrar Chishti
Glasgow, United Kingdom

ISBN-13 (pbk): 978-1-4842-3290-3 ISBN-13 (electronic): 978-1-4842-3291-0


https://doi.org/10.1007/978-1-4842-3291-0

Library of Congress Control Number: 2017961309


Copyright © 2017 by Zarrar Chishti
This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of
the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations,
recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or
information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar
methodology now known or hereafter developed.
Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol
with every occurrence of a trademarked name, logo, or image we use the names, logos, and images
only in an editorial fashion and to the benefit of the trademark owner, with no intention of
infringement of the trademark.
The use in this publication of trade names, trademarks, service marks, and similar terms, even if they
are not identified as such, is not to be taken as an expression of opinion as to whether or not they are
subject to proprietary rights.
While the advice and information in this book are believed to be true and accurate at the date of
publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for
any errors or omissions that may be made. The publisher makes no warranty, express or implied, with
respect to the material contained herein.
Cover image designed by Freepik
Managing Director: Welmoed Spahr
Editorial Director: Todd Green
Acquisitions Editor: Aaron Black
Development Editor: James Markham
Technical Reviewer: Massimo Nardone
Coordinating Editor: Jessica Vakili
Copy Editor: Kim Burton-Weisman
Compositor: SPi Global
Indexer: SPi Global
Artist: SPi Global
Distributed to the book trade worldwide by Springer Science+Business Media New York,
233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail
[email protected], or visit www.springeronline.com. Apress Media, LLC is a California LLC
and the sole member (owner) is Springer Science + Business Media Finance Inc (SSBM Finance Inc).
SSBM Finance Inc is a Delaware corporation.
For information on translations, please e-mail [email protected], or visit
http://www.apress.com/rights-permissions.
Apress titles may be purchased in bulk for academic, corporate, or promotional use. eBook versions
and licenses are also available for most titles. For more information, reference our Print and eBook
Bulk Sales web page at http://www.apress.com/bulk-sales.
Any source code or other supplementary material referenced by the author in this book is available to
readers on GitHub via the book's product page, located at www.apress.com/978-1-4842-3290-3. For
more detailed information, please visit http://www.apress.com/source-code.
Printed on acid-free paper
Table of Contents
About the Author��������������������������������������������������������������������������������vii
About the Technical Reviewer�������������������������������������������������������������ix
Acknowledgments�������������������������������������������������������������������������������xi
Preface����������������������������������������������������������������������������������������������xiii

Chapter 1: Introduction������������������������������������������������������������������������1
Introducing Our Game: Space Zombies������������������������������������������������������1
Setting up Your Work Environment�������������������������������������������������������������4
Part 1: Setting up Our Folders������������������������������������������������������������������������������������� 4
Part 2: Setting up Our Files������������������������������������������������������������������������������������������ 6

Hosting and Media Files���������������������������������������������������������������������������10


Part 1: Your Computer vs. Hosting Servers ��������������������������������������������������������������� 10
Part 2: Download the Media for Your Project������������������������������������������������������������� 11

Chapter 2: In the Beginning, There Was HTML������������������������������������15


Hello World�����������������������������������������������������������������������������������������������15
Background Image�����������������������������������������������������������������������������������18
Adding the Rest of the Images�����������������������������������������������������������������20

Chapter 3: Time to Apply a Little CSS�������������������������������������������������23


Start with a Quick Test�����������������������������������������������������������������������������24
Our Background Image����������������������������������������������������������������������������28
Our Other Images�������������������������������������������������������������������������������������32

iii
Table of Contents

Chapter 4: Apply Intelligence with JavaScript�����������������������������������37


Why Do We Need to Resize?���������������������������������������������������������������������37
How Do We Universally Resize?���������������������������������������������������������������38
Let’s Resize Our Images���������������������������������������������������������������������������46

Chapter 5: Take a Shot: Part 1������������������������������������������������������������51


Changing Our Cursor and Registering a Click������������������������������������������51
Making Our Gun Act More Realistic����������������������������������������������������������55
Animating the Gun with Sprite Sheets�����������������������������������������������������60
Part 1������������������������������������������������������������������������������������������������������������������������� 60
Part 2������������������������������������������������������������������������������������������������������������������������� 63
Part 3������������������������������������������������������������������������������������������������������������������������� 64
Part 4������������������������������������������������������������������������������������������������������������������������� 68

Reloading Our Gun�����������������������������������������������������������������������������������71


Firing Our Gun������������������������������������������������������������������������������������������78
One Last Thing…�������������������������������������������������������������������������������������81

Chapter 6: Where Are the Zombies?���������������������������������������������������85


Creating a Zombie: Part 1�������������������������������������������������������������������������85
Creating a Zombie: Part 2�������������������������������������������������������������������������86
Moving the Zombie Closer������������������������������������������������������������������������95
Creating All the Zombies��������������������������������������������������������������������������99
Generating a Zombie Life Cycle��������������������������������������������������������������102

Chapter 7: Take a Shot: Part 2����������������������������������������������������������107


Hitting a Zombie�������������������������������������������������������������������������������������107
Making the Hits Count����������������������������������������������������������������������������113

iv
Table of Contents

Zombie Down!����������������������������������������������������������������������������������������119
Part 1: Create Six Bubble Zombie Elements������������������������������������������������������������ 120
Part 2: Activate the Counter Bubble Zombie������������������������������������������������������������ 129
Part 3: Animate the Bubble Zombies����������������������������������������������������������������������� 136

Reloading the Gun����������������������������������������������������������������������������������146


Clean up the Depths and Click Zones�����������������������������������������������������157
Part 1: Ensuring Gun Fire����������������������������������������������������������������������������������������� 157
Part 2: Zombie Depth Levels������������������������������������������������������������������������������������ 163

Intro Splash and “Game Over” Screens�������������������������������������������������171


Part 1: Images Folder���������������������������������������������������������������������������������������������� 171
Part 2: Stopping and Starting���������������������������������������������������������������������������������� 172

Chapter 8: Add Some Bling to Our Game������������������������������������������191


What’s the Score?����������������������������������������������������������������������������������192
Sprinkle of Special Effects���������������������������������������������������������������������203
Part 1: Get Started��������������������������������������������������������������������������������������������������� 204
Part 2: Displaying the Effects���������������������������������������������������������������������������������� 204

Turn up the Sound Effects����������������������������������������������������������������������219


Part 1: Getting Started��������������������������������������������������������������������������������������������� 220
Part 2: Adding Sound Effects����������������������������������������������������������������������������������� 220

Embedding the Game�����������������������������������������������������������������������������225


Part 1: Getting Started��������������������������������������������������������������������������������������������� 225
Part 2: Modify the default.html File������������������������������������������������������������������������� 226

Game Over. Restart?�������������������������������������������������������������������������������244

Index�������������������������������������������������������������������������������������������������247

v
About the Author
Zarrar Chishti is a software and games
development consultant with over 500 games
developed for companies around the world. He
is sought after to advise on the development
of viral games for major marketing campaigns.
His consultancy and development firm include
prestigious companies such as Turner Media,
British Airways and Channel 4 among the
many clients that keep coming back when a
new product or service is being launched.
After graduating from Glasgow University
in 1996 with a prestigious joint honors degree in Software Engineering,
Zarrar contracted as a software developer in both London and L.A. for 5
years. In 2001 he opened his own software firm in Glasgow and within 2
years was employing 10 staff. This was to grow to 30 in 2005 when he began
to offer games development to his clients.
One of the most notable game projects Zarrar has produced includes
an interactive comic for the popular Ben 10 TV series. The project was a
notable success that took his firm 10 months to deliver. It was rolled out
in over 25 countries in localized language editions. Other projects include
building a series of games for the ever popular Big Brother TV franchise
and an employee training game for Legal and General.

vii
About the Technical Reviewer
Massimo Nardone has more than 22 years
of experiences in security, web/mobile
development, and cloud and IT architecture.
His true IT passions are security and Android.
He has programmed and taught how to
program with Android, Perl, PHP, Java, VB,
Python, C/C++ and MySQL for more than 20
years.
He holds a master’s degree in computing
science from the University of Salerno, Italy.
He has worked as a project manager, software engineer, research
engineer, chief security architect, information security manager, PCI/SCADA
auditor and senior lead IT security/cloud/SCADA architect for many years.
His technical skills include security, Android, cloud, Java, MySQL,
Drupal, Cobol, Perl, web and mobile development, MongoDB, D3, Joomla,
Couchbase, C/C++, WebGL, Python, Pro Rails, Django CMS, Jekyll,
Scratch, and more.
He currently works as chief information security office (CISO) for
Cargotec Oyj.
He worked as visiting lecturer and supervisor for exercises at the
Networking Laboratory of the Helsinki University of Technology (Aalto
University). He holds four international patents (PKI, SIP, SAML, and Proxy
areas).
Massimo has reviewed more than 40 IT books for various publishing
companies. He is the coauthor of Pro Android Games (Apress, 2015).

ix
Acknowledgments
To Pops - you were an amazing dad who has left a massive hole in our lives.
To my closest friend, who has been (and continues to be) there for me
at the times when it matters the most: my brother Ibrar. Thank you to my
parents, who gave me the most amazing education and start to life. My one
constant and partner in crime, my wife Sadia. My son, whom I am so proud
of (incidentally, he was my initial editor for the book) and my “janno-jaan”
daughters: Sara, Aisha, and Rushda. I would be in a tremendous amount
of trouble if I did not also acknowledge Bella, our Bengal cat.
I would like to say a heartfelt thank you to my agent, Carole. You agreed
to represent me, despite my thick Scottish accent! Your guidance and
patience at the start will always be remembered and appreciated. Also,
thank you to the awesome and gorgeous team at Apress: Aaron and Jessica.
I had a great time working with you both and you made this “noob” feel
like part of the team.
I want to thank two people who have inspired me to write books. My
Latin teacher Mr. Temperely and my favorite author of all time, David Blixt.
I would also like send my love and appreciation to all my staff, both past
and present: Alasdair, George, Paul (the Great), Les, and Claire. Also, my
thanks to those clients that gave me my initial start despite having little or
no experience.
Finally, I would like to thank the nurses and doctors at Monklands
Haematology department who looked after my wife, Sadia. I will always
remember your commitment, passion, and support that you gave to her.
Thank you for sending her home to us.

xi
Preface
Welcome to the wonderful world of HTML5 game development. Are you
looking for a new challenge or looking to expand your current skill set?
Then get ready to start your journey. This book has been written with a
simple goal in mind: to provide the means for anyone to develop their first
HTML5 game.
This is a great time to break into the most lucrative game development
platform in the world. The global demand for the HTML5 game
development platform has expanded so quickly that it is currently crying
out for seasoned developers from more traditional environments to
cross over. Never before has there been such a widely accepted platform
by literally every manufacturer and operating system. This, in turn,
has convinced marketing departments to move away from traditional
platforms, such as dedicated mobile apps, for the more widely accepted
HTML5 format.
In short, there has never been a better time for a seasoned IT
programmer to cross over and capitalize in this lucrative market with their
much sought-after talents and experience.
I have spent the last five years training developers from a wide range
of programming disciplines to cross-train in HTML5 game development.
Whatever your vocation, whether it be an application databases systems
developer or a professional web developer, with this book you will learn to
evolve your current coding skills to enable you to become eligible for the
biggest gaming platform in the world.
From the first chapter, you immediately see encouraging results as
you power through a challenging and fun project that has been uniquely
designed and developed for this book.

xiii
Preface

Why This Book


This book was written with a simple goal in mind: to help seasoned
programmers from other disciplines to cross over to HTML5 game
development.
No apps need to be purchased. No special hardware or software is
required. As long as you have a simple computer with Internet access, you
can start today.
How quickly you build this game is entirely up to you. For each major
step we come across, you can decide to either study the technical aspects
or skip ahead to the next step. Either way, by the end of this book, you will
have a playable game to show off to friends and family.
This book is perfect for anyone that just wants to roll up their sleeves
and start developing a game for themselves. I believe that by the end of
this book, you will be in a far better position to make a decision on whether
you want to invest your time and money in becoming a qualified games
developer.

What You Will Need


Any computer will do.

• You do not need a super-fast computer

• You do not need an expensive IDE installed

• You do not need the latest graphics card

You can build this game using the computer/laptop that you already
have—as long as it switches on and you can run the already installed
Notepad program (if you are using Windows) or TextEdit (if you are on an
Apple Mac).

xiv
Preface

What about your phone or tablet? Technically, it is possible; however, it


is not ideal because the operating environment is not suited to coding (i.e.,
typing). If you do wish to use these devices, then you may wish to invest in
a Bluetooth keyboard and an external memory card.

How to Use This Book


During this project, I have spent a great deal of my time minimizing the
amount of code that you need to write. However, I had to balance this
with making code that was still readable, which means that in occasional
instances of this book, you will find some lengthy portions of code to write.
I do apologize for this; however, keep in mind that you will be able to reuse
the code in your next project.
The following icons appear in the book.

In this section, you will see the actual code that will need to be written. It is
important to ensure that you copy the code exactly as it is written.
On most occasions, you will only need to write the lines that are
written in bold. Also, the lines of code that existed before but have just
been modified are in red.

xv
Preface

In this section, you will see interesting facts and explanations of the code
that has just been written. If you wish to build on your coding knowledge
as you proceed, then you will find a great source of information here.
However, feel free to ignore this section if you just want to get on with
building your game.

Did something go wrong? Did the code you just wrote not work? Not to
worry. You will find common (and some not so common) mistakes here
with solutions on how to fix them.

xvi
CHAPTER 1

Introduction
“If you have a garden and a library,
you have everything you need.”
Marcus Tullius Cicero
(106 BC – 43 BC)

var replaceWord1 = str.replace("garden", "computer");

var replaceWord2 = str.replace("a library", "time");

I have been developing software since 1996 and I have developed games
for small and large companies for over a decade now. Like any form of
development in the real world, you need to know why you are building
the game before you think of coding strategies and build processes. In the
gaming world, this comes in the form of the game’s story. This includes the
background, reasons to play, and the goals of the game.

Introducing Our Game: Space Zombies


So here is our story, which we will develop into a game.
Hi. My name is Ace Star. The year is 2107. For the last three
months, I have been stationed as a security guard on the only moon
of planet ZC636, which is in the Andromeda Galaxy. In addition to
me and a group of dignitaries from Earth, there is a group of about
500 top scientists stationed here to work on secret experiments.
1
© Zarrar Chishti 2017
Z. Chishti, Cross Over to HTML5 Game Development,
https://doi.org/10.1007/978-1-4842-3291-0_1
Chapter 1 Introduction

I need your help.


Last night, there was an explosion in one of the labs. A gas was released
that turned all the scientists in the lab into zombies.
I have positioned myself outside the only doors of the colony’s main
building. The other survivors are safely inside. I am the last line of defense
before help arrives from Earth.
I discovered that our weapons are useless against the zombies. While
running out of the labs, however, I found a new, experimental weapon.
It seems to do the trick.
I can hear them coming. Are you ready?

Let’s have a look at a few of the graphics that we will use for the
development.

This is the background image for our game.


It will fill the screen by stretching out both
horizontally and vertically.
Our zombies will spawn from where the ground
meets the sky. Once spawned, they will come
toward us, growing bigger.
Say hello to Professor Z, our average zombie. In
terms of speed, he is not very fast and he does
not suddenly sprint to the front. He simply heads
toward you at his own leisurely speed! In terms of
our weapon shots, he will not be too hard or too
easy to “neutralize.” It takes two zaps to get him.
Say ciao to Belladonna, our fastest zombie.
Keep an eye on her because she will appear one
minute and then suddenly sprint to the front.
She will not be too hard to neutralize, however.
One zap will get her.

2
Chapter 1 Introduction

Finally, this is Brad, our heavyweight zombie.


Unfortunately, due to all of those hours lifting
weights, he is slower than the average zombie.
He takes his time to gain speed once he spawns.
He will be harder to neutralize, however. It takes
three zaps to get him.
This is the experimental weapon that our hero
found in one of the labs. When fired, it zaps
out a special liquid, which when successfully
administered, encases the zombie in an air
bubble.
It will need to be reloaded often.
This is our Reload button. From a game-design
point of view, it adds another dimension to the
gameplay.
This is our game’s logo. We will not see it until
the last chapter of the book, when we embed our
game.
This is the box that we will embed into our
game. Initially, you see the game span the
entire screen. Near the end, however, we look at
embedding the code into this box.
This is the background image that we use in the
final chapter. The background is the main image
used when we build a dedicated web page to
embed our game into.

3
Chapter 1 Introduction

The following is a screenshot of the finished game.

Setting up Your Work Environment


This section discusses how to set up your work environment.

Part 1: Setting up Our Folders


You need to create a work folder where all of your work files can be stored.
This makes it easier to distinguish your work files from all the others on
your computer. So first, create a root (or master) folder called My_Work_
Files in the C drive.

4
Chapter 1 Introduction

Once you have your root folder, the next step is to create the subfolders
that you will need for the game. Create four folders inside My_Work_Files.
Name the folders as follows:

• CSS

• Images

• Raw Images

• js

Your folder should look like the following screenshot.

The CSS folder will hold special code files that help structure the design of
the game. All the files in this folder will end in .css.
The js folder will hold all of our JavaScript files, which will form the
engine for our game. They will contain commands and instructions that will
control what happens in our game. All the files in this folder will end in .js.

5
Chapter 1 Introduction

The Images folder, as the name suggests, will contain all the image or
media files that we will need for the game.
The Raw Images folder will not technically be used for raw images. In
our case, we will use this folder as special temporary housing for all of our
media. We will move them into the Images folder when we need them.

Part 2: Setting up Our Files


For the purposes of this book, I will use Notepad (if you are using an Apple
computer, then I would use TextEdit). I find Notepad simpler and easier
to use; however, almost any IDE (Integrated Development Environment)
can be used for this project. So go ahead and use the IDE that you are most
comfortable with.
If you do want to use an IDE, here is a list of a few that are free to use:

• Eclipse. This is an open source editor that is typically


used for C and C++ (as well as other high-level
languages) projects.

• NetBeans. Like Eclipse, this is an open source


editor; however, it comes bundled with a plethora of
development frameworks.

• Aptana. A very popular IDE among web developers, it can


be plugged into Eclipse. Typically used for HTML projects.

• CodeRun. This is a slightly unusual choice in that


it runs on a browser (i.e., it is a web-based IDE).
Personally, I find it excellent for last-minute fixes when
at a remote location.

• Visual Studio Community. This is free for individual


programmers and comes packed with all the amazing
features that you will find in Visual Studio Professional
series.
6
Chapter 1 Introduction

Although using an IDE has its benefits, I think that it is worth keeping
in mind this excellent quote about using IDEs for multiple languages:

“Although many IDEs can handle more than one language, few do it
well. Plus, it’s likely overkill if you are just getting started.”

Now that the folders are set up, let’s create the files that you will use to
develop the game.
First, you need to create a default.html file. If you are using an IDE,
click File ➤ Create New and select HTML. If you are using Notepad, open a
new file and save it as default.html.
Your folder should now look like this:

Now, we need to create files within some of the folders we created.


Double-click the js folder. Repeat the preceding steps (i.e., create a New
File and then Save As). The following are the file names to enter:
• > SZ_main.js
• > SZ_movement.js
• > SZ_setupContent.js
• > SZ_SS.js
• > SZ_touch.js
• > SZ_zombie_movement.js

7
Chapter 1 Introduction

Your js folder should now look like this:

Finally, we need to create a file within the CSS folder. Repeat the steps
from earlier (i.e., create a New File and then Save As). The file name to
enter is

> SZ_master.css.

Your CSS folder should now look like this:

8
Chapter 1 Introduction

We need our files to work across the worldwide network successfully, so we


should try to keep to the standardized naming conventions.
It is best to avoid character spaces in file names. Technically, this is
acceptable in local environments (Apple and Windows OS), however,
character spaces are not recognized by other systems. Ideally, use an
underscore or a hyphen character to separate words within file names.
Do not use any special characters, such as !, ?, %, #, or /. It is best to
limit file names to underscores, numbers, and letters.
For this project, you will notice that I try to consistently start all of my
file names with SZ_. This is because they are the initials for the name of the
game—Space Zombies. It is important to be consistent and descriptive in
naming and organizing files so that it is obvious where to find specific data
and what the files contain.
By naming your files in a meaningful manner, you increase your
chances of finding those files in the future and knowing what information
they contain. When you come to develop new games, you will easily be
able to locate Space Zombie files by searching for all files starting with SZ_.
Finally, it is good practice to keep file names as short as possible. Apart
from adding to the size of the file, it also makes them easier to remember
six months down the line.

9
Chapter 1 Introduction

Hosting and Media Files


As long as the files remain on your hard drive (the files and folders created
earlier), you will be able to test the game comfortably on your computer.
This is certainly okay for budding developers starting out.
Nonetheless, at some point when you have developed several games,
you may wish to showcase them for all to see and play.
To do this, you need to upload your files to a server computer. A server
is essentially a computer that is connected to the Internet.

Part 1: Your Computer vs. Hosting Servers


You need to open an account with a server computer. If you do a Google
search for “server hosting free trial,” you have several options available.
If you are still unsure, please do not hesitate to message me on Twitter
@zarrarchishti.

The following is a short list of available hosting options.

Dedicated Server

This is the most expensive option. Essentially, you own the computer that
is connected to the Internet. This is only an option if you are either a huge
company or a reseller.

10
Chapter 1 Introduction

Shared Server

This is generally the most economical option for hosting. It is very much
for people like you, who are renting a piece of the server. The main
advantage is the ridiculously low cost, of course. However, as your game
development expertise increases, you may find this option to be limiting
and unfit for your specific needs.

Cloud Hosting

Whereas the prior two options rely on one physical computer, cloud
hosting allows an unlimited number of computers to act as one system.

Part 2: Download the Media for Your Project


The media files (image and sound files) used in the project are available
for you to download.
Open your Internet browser and go to the following URL:

http://zarrarchishtiauthor.com/downloads/

Click the Download button. This will initiate a download. The browser
will let you know when it has completed. Navigate to your download folder
and locate the downloaded file.
It should be a file called raw_media_1.rar. Now you need to extract the
files from this zipped file in a new folder called Raw Media. Double-click
this folder and you will see the following four folders:

• > Images

• > JS

• > sounds

• > html_web

11
Chapter 1 Introduction

First, copy all four folders to your Raw Images folder, which is in the
My_Work_Files folder.
At this stage, we are only interested in the files inside the JS folder. As
we progress through the game, we will go back to the other folders and
copy the files as needed. Double-click the JS folder (in the Raw Images
folder). Using the same technique as before to copy files, go ahead and
copy all the files, and then paste them into your own js folder (in the My_
Work_Files folder).
Your js folder (in the My_Work_Files folder) should now look like this:

That’s it for now! We have successfully set up our game development


environment. We are now ready to start coding our game!

12
Chapter 1 Introduction

The files we copied over from the JS folder are special JavaScript programs
that we can use for our game. Imagine a library of code maintained by
companies like Google that contain functions that make our lives easier.
The files—for instance, jQuery—are fast, small, and feature-rich
JavaScript libraries. Together they make things like HTML document
traversal and manipulation, event handling, animation, and AJAX much
simpler with an easy-to-use API that works across a multitude of browsers.
When using a library such as this, we do not need to ever worry about
how they work. All we need to know is what they do so that we can decide
whether we want to use them in our games.
Another advantage of using libraries such as jQuery is that it runs
exactly the same in all major browsers, including Internet Explorer 6! So no
need to worry about cross-browser issues.
Usually, we link to these files directly from the source servers. The
advantage of doing it this way is that we always get the latest copy of the
code when running our game. However, since we want to be able to play
the game offline, let’s choose to download them into our local folders.

13
Chapter 1 Introduction

1) In Windows, did the option to Extract Here


appear? If not, you need to download WinRAR from
the following:

http://www.win-rar.com/download.html

2) Are you using a laptop? To right-click, you need to

first click and then click the mousepad.

3) When downloading the media files, did you receive


a message from your browser warning you that
the download is not commonly used and may be
dangerous? If yes, this is because I chose to WINRAR
rather than to WINZIP the file. The files are not
dangerous. You may click Keep; however, feel free to
run a virus check on the folder before opening.

14
CHAPTER 2

In the Beginning,
There Was HTML
“Nine people can’t make a baby in a month.”
Fred Brooks

HTML is a mark-up language that is used to develop web sites. So why do


we need this for our game? It is best to imagine HTML as the skeleton or
bone structure of our game.
As a side note, once you have completed this chapter, you will have
not only started your journey into game development, but also web
development!

H
 ello World
During my 20 years of programming, I have learned many programming
languages. The first project that I always work on is learning how to output
the words “Hello World.” to the screen. I bet that you follow this tradition
too, so let’s develop a “Hello World” page in HTML.
Open the default.html file in Notepad or TextEdit in the My_Work_Files
folder using the same program or IDE that you used in the “Part 2: Setting up
Our Files” section in Chapter 1.

15
© Zarrar Chishti 2017
Z. Chishti, Cross Over to HTML5 Game Development,
https://doi.org/10.1007/978-1-4842-3291-0_2
Chapter 2 In the Beginning, There Was HTML

When the file opens, it should be completely blank. Type the following
lines:

<html>
<head>
</head>
<body>
  <div id="SZ_maincontent">
   Hello World.
  </div>
</body>
</html>

Navigate to the menu, click File and then click on Save. You can now
close this file. Navigate back to the menu, click File, and then click Exit/
Close.
Are you ready to test your very first program?
Go back to the My_Work_Files folder and double-click the default.
html file. This should open in your default Internet browser; for example,
Microsoft Edge, Google Chrome, or Safari.
The page that opens up on the browser should be a completely blank
page with the words “Hello World.” displayed in the top-left corner.
Excellent. Our program works and we have written our first piece of code!
Obviously, this is nowhere near a game yet. All the same, persevere
with the work between now and that point. Rest assured, by the end of
this book, we will have developed the entire game. It will most certainly be
worth it. And you will be learning a lot of different techniques to get you
started on your journey to developing a suite of games!

16
Exploring the Variety of Random
Documents with Different Content
The Project Gutenberg eBook of The hounds of
Tindalos
This ebook is for the use of anyone anywhere in the United States
and most other parts of the world at no cost and with almost no
restrictions whatsoever. You may copy it, give it away or re-use it
under the terms of the Project Gutenberg License included with this
ebook or online at www.gutenberg.org. If you are not located in the
United States, you will have to check the laws of the country where
you are located before using this eBook.

Title: The hounds of Tindalos

Author: Frank Belknap Long

Illustrator: C. C. Senf

Release date: May 8, 2024 [eBook #73575]

Language: English

Original publication: Indianapolois, IN: Popular Fiction Publishing


Company, 1929

Credits: Greg Weeks, Mary Meehan and the Online Distributed


Proofreading Team at http://www.pgdp.net

*** START OF THE PROJECT GUTENBERG EBOOK THE HOUNDS OF


TINDALOS ***
The HOUNDS of TINDALOS

By Frank Belknap Long, Jr.

[Transcriber's Note: This etext was produced from


Weird Tales March 1929.
Extensive research did not uncover any evidence that
the U.S. copyright on this publication was renewed.]
"I'm glad you came," said Chalmers. He was sitting by the window
and his face was very pale. Two tall candles guttered at his elbow
and cast a sickly amber light over his long nose and slightly receding
chin. Chalmers would have nothing modern about his apartment. He
had the soul of a mediæval ascetic, and he preferred illuminated
manuscripts to automobiles and leering stone gargoyles to radios and
adding-machines.
As I crossed the room to the settee he had cleared for me I glanced
at his desk and was surprized to discover that he had been studying
the mathematical formulæ of a celebrated contemporary physicist,
and that he had covered many sheets of thin yellow paper with
curious geometric designs.
"Einstein and John Dee are strange bedfellows," I said as my gaze
wandered from his mathematical charts to the sixty or seventy quaint
books that comprised his strange little library. Plotinus and Emanuel
Moscopulus, St. Thomas Aquinas and Frenicle de Bessy stood elbow
to elbow in the somber ebony bookcase, and chairs, table and desk
were littered with pamphlets about mediæval sorcery and witchcraft
and black magic, and all of the valiant glamorous things that the
modern world has repudiated.
Chalmers smiled engagingly, and passed me a Russian cigarette on a
curiously carved tray. "We are just discovering now," he said, "that
the old alchemists and sorcerers were two-thirds right, and that your
modern biologist and materialist is nine-tenths wrong."
"You have always scoffed at modern science," I said, a little
impatiently.
"Only at scientific dogmatism," he replied. "I have always been a
rebel, a champion of originality and lost causes; that is why I have
chosen to repudiate the conclusions of contemporary biologists."
"And Einstein?" I asked.
"A priest of transcendental mathematics!" he murmured reverently.
"A profound mystic and explorer of the great suspected."
"Then you do not entirely despise science."
"Of course not," he affirmed. "I merely distrust the scientific
positivism of the past fifty years, the positivism of Haeckel and
Darwin and of Mr. Bertrand Russell. I believe that biology has failed
pitifully to explain the mystery of man's origin and destiny."
"Give them time," I retorted.
Chalmers' eyes glowed. "My friend," he murmured, "your pun is
sublime. Give them time. That is precisely what I would do. But your
modern biologist scoffs at time. He has the key but he refuses to use
it. What do we know of time, really? Einstein believes that it is
relative, that it can be interpreted in terms of space, of curved space.
But must we stop there? When mathematics fails us can we not
advance by—insight?"
"You are treading on dangerous ground," I replied. "That is a pit-fall
that your true investigator avoids. That is why modern science has
advanced so slowly. It accepts nothing that it can not demonstrate.
But you——"
"I would take hashish, opium, all manner of drugs. I would emulate
the sages of the East. And then perhaps I would apprehend——"
"What?"
"The fourth dimension."
"Theosophical rubbish!"
"Perhaps. But I believe that drugs expand human consciousness.
William James agreed with me. And I have discovered a new one."
"A new drug?"
"It was used centuries ago by Chinese alchemists, but it is virtually
unknown in the West. Its occult properties are amazing. With its aid
and the aid of my mathematical knowledge I believe that I can go
back through time."
"I do not understand."
"Time is merely our imperfect perception of a new dimension of
space. Time and motion are both illusions. Everything that has
existed from the beginning of the world exists now. Events that
occurred centuries ago on this planet continue to exist in another
dimension of space. Events that will occur centuries from now exist
already. We can not perceive their existence because we can not
enter the dimension of space that contains them. Human beings as
we know them are merely fractions, infinitesimally small fractions of
one enormous whole. Every human being is linked with all the life
that has preceded him on this planet. All of his ancestors are parts of
him. Only time separates him from his forebears, and time is an
illusion and does not exist."
"I think I understand," I murmured.
"It will be sufficient for my purpose if you can form a vague idea of
what I wish to achieve. I wish to strip from my eyes the veils of
illusion that time has thrown over them, and see the beginning and
the end."
"And you think this new drug will help you?"
"I am sure that it will. And I want you to help me. I intend to take
the drug immediately. I can not wait. I must see." His eyes glittered
strangely. "I am going back, back through time."
He rose and strode to the mantel. When he faced me again he was
holding a small square box in the palm of his hand. "I have here five
pellets of the drug Liao. It was used by the Chinese philosopher Lao
Tze, and while under its influence he visioned Tao. Tao is the most
mysterious force in the world; it surrounds and pervades all things; it
contains the visible universe and everything that we call reality. He
who apprehends the mysteries of Tao sees clearly all that was and
will be."
"Rubbish!" I retorted.
"Tao resembles a great animal, recumbent, motionless, containing in
its enormous body all the worlds of our universe, the past, the
present and the future. We see portions of this great monster
through a slit, which we call time. With the aid of this drug I shall
enlarge the slit. I shall behold the great figure of life, the great
recumbent beast in its entirety."
"And what do you wish me to do?"
"Watch, my friend. Watch and take notes. And if I go back too far
you must recall me to reality. You can recall me by shaking me
violently. If I appear to be suffering acute physical pain you must
recall me at once."
"Chalmers," I said, "I wish you wouldn't make this experiment. You
are taking dreadful risks. I don't believe that there is any fourth
dimension and I emphatically do not believe in Tao. And I don't
approve of your experimenting with unknown drugs."
"I know the properties of this drug," he replied. "I know precisely
how it affects the human animal and I know its dangers. The risk
does not reside in the drug itself. My only fear is that I may become
lost in time. You see, I shall assist the drug. Before I swallow this
pellet I shall give my undivided attention to the geometric and
algebraic symbols that I have traced on this paper." He raised the
mathematical chart that rested on his knee. "I shall prepare my mind
for an excursion into time. I shall approach the fourth dimension with
my conscious mind before I take the drug which will enable me to
exercise occult powers of perception. Before I enter the dream world
of the Eastern mystics I shall acquire all of the mathematical help
that modern science can offer. This mathematical knowledge, this
conscious approach to an actual apprehension of the fourth
dimension of time will supplement the work of the drug. The drug will
open up stupendous new vistas—the mathematical preparation will
enable me to grasp them intellectually. I have often grasped the
fourth dimension in dreams, emotionally, intuitively, but I have never
been able to recall, in waking life, the occult splendors that were
momentarily revealed to me.
"But with your aid, I believe that I can recall them. You will take
down everything that I say while I am under the influence of the
drug. No matter how strange or incoherent my speech may become
you will omit nothing. When I awake I may be able to supply the key
to whatever is mysterious or incredible. I am not sure that I shall
succeed, but if I do succeed"—his eyes were strangely luminous
—"time will exist for me no longer!"
He sat down abruptly. "I shall make the experiment at once. Please
stand over there by the window and watch. Have you a fountain
pen?"
I nodded gloomily and removed a pale green Waterman from my
upper vest pocket.
"And a pad, Frank?"
I groaned and produced a memorandum book. "I emphatically
disapprove of this experiment," I muttered. "You're taking a frightful
risk."
"Don't be an asinine old woman!" he admonished. "Nothing that you
can say will induce me to stop now. I entreat you to remain silent
while I study these charts."
He raised the charts and studied them intently. I watched the clock
on the mantel as it ticked out the seconds, and a curious dread
clutched at my heart so that I choked.
Suddenly the clock stopped ticking, and exactly at that moment
Chalmers swallowed the drug.

I rose quickly and moved toward him, but his eyes implored me not
to interfere. "The clock has stopped," he murmured. "The forces that
control it approve of my experiment. Time stopped, and I swallowed
the drug. I pray God that I shall not lose my way."
He closed his eyes and leaned back on the sofa. All of the blood had
left his face and he was breathing heavily. It was clear that the drug
was acting with extraordinary rapidity.
"It is beginning to get dark," he murmured. "Write that. It is
beginning to get dark and the familiar objects in the room are fading
out. I can discern them vaguely through my eyelids but they are
fading swiftly."
I shook my pen to make the ink come and wrote rapidly in shorthand
as he continued to dictate.
"I am leaving the room. The walls are vanishing and I can no longer
see any of the familiar objects. Your face, though, is still visible to
me. I hope that you are writing. I think that I am about to make a
great leap—a leap through space. Or perhaps it is through time that I
shall make the leap. I can not tell. Everything is dark, indistinct."
He sat for a while silent, with his head sunk upon his breast. Then
suddenly he stiffened and his eyelids fluttered open. "God in heaven!"
he cried. "I see!"
He was straining forward in his chair, staring at the opposite wall. But
I knew that he was looking beyond the wall and that the objects in
the room no longer existed for him. "Chalmers," I cried, "Chalmers,
shall I wake you?"
"Do not!" he shrieked. "I see everything. All of the billions of lives
that preceded me on this planet are before me at this moment. I see
men of all ages, all races, all colors. They are fighting, killing,
building, dancing, singing. They are sitting about rude fires on lonely
gray deserts, and flying through the air in monoplanes. They are
riding the seas in bark canoes and enormous steamships; they are
painting bison and mammoths on the walls of dismal caves and
covering huge canvases with queer futuristic designs. I watch the
migrations from Atlantis. I watch the migrations from Lemuria. I see
the elder races—a strange horde of black dwarfs overwhelming Asia
and the Neandertalers with lowered heads and bent knees ranging
obscenely across Europe. I watch the Achæans streaming into the
Greek islands, and the crude beginnings of Hellenic culture. I am in
Athens and Pericles is young. I am standing on the soil of Italy. I
assist in the rape of the Sabines; I march with the Imperial Legions. I
tremble with awe and wonder as the enormous standards go by and
the ground shakes with the tread of the victorious hastati. A
thousand naked slaves grovel before me as I pass in a litter of gold
and ivory drawn by night-black oxen from Thebes, and the flower-
girls scream 'Ave Cæsar' as I nod and smile. I am myself a slave on a
Moorish galley. I watch the erection of a great cathedral. Stone by
stone it rises, and through months and years I stand and watch each
stone as it falls into place. I am burned on a cross head downward in
the thyme-scented gardens of Nero, and I watch with amusement
and scorn the torturers at work in the chambers of the Inquisition.
"I walk in the holiest sanctuaries; I enter the temples of Venus. I
kneel in adoration before the Magna Mater, and I throw coins on the
bare knees of the sacred courtezans who sit with veiled faces in the
groves of Babylon. I creep into an Elizabethan theater and with the
stinking rabble about me I applaud The Merchant of Venice. I walk
with Dante through the narrow streets of Florence. I meet the young
Beatrice and the hem of her garment brushes my sandals as I stare
enraptured. I am a priest of Isis, and my magic astounds the nations.
Simon Magus kneels before me, imploring my assistance, and
Pharaoh trembles when I approach. In India I talk with the Masters
and run screaming from their presence, for their revelations are as
salt on wounds that bleed.
"I perceive everything simultaneously. I perceive everything from all
sides; I am a part of all the teeming billions about me. I exist in all
men and all men exist in me. I perceive the whole of human history
in a single instant, the past and the present.
"By simply straining I can see farther and farther back. Now I am
going back through strange curves and angles. Angles and curves
multiply about me. I perceive great segments of time through curves.
There is curved time, and angular time. The beings that exist in
angular time can not enter curved time. It is very strange.
"I am going back and back. Man has disappeared from the earth.
Gigantic reptiles crouch beneath enormous palms and swim through
the loathly black waters of dismal lakes. Now the reptiles have
disappeared. No animals remain upon the land, but beneath the
waters, plainly visible to me, dark forms move slowly over the rotting
vegetation.
"The forms are becoming simpler and simpler. Now they are single
cells. All about me there are angles—strange angles that have no
counterparts on the earth. I am desperately afraid.
"There is an abyss of being which man has never fathomed."
I stared. Chalmers had risen to his feet and he was gesticulating
helplessly with his arms. "I am passing through unearthly angles; I
am approaching—oh, the burning horror of it!"
"Chalmers!" I cried. "Do you wish me to interfere?"
He brought his right hand quickly before his face, as though to shut
out a vision unspeakable. "Not yet!" he cried; "I will go on. I will see
—what—lies—beyond——"
A cold sweat streamed from his forehead and his shoulders jerked
spasmodically. "Beyond life there are"—his face grew ashen with
terror—"things that I can not distinguish. They move slowly through
angles. They have no bodies, and they move slowly through
outrageous angles."
It was then that I became aware of the odor in the room. It was a
pungent, indescribable odor, so nauseous that I could scarcely endure
it. I stepped quickly to the window and threw it open. When I
returned to Chalmers and looked into his eyes I nearly fainted.
"I think they have scented me!" he shrieked. "They are slowly turning
toward me."
He was trembling horribly. For a moment he clawed at the air with his
hands. Then his legs gave way beneath him and he fell forward on
his face, slobbering and moaning.
I watched him in silence as he dragged himself across the floor. He
was no longer a man. His teeth were bared and saliva dripped from
the corners of his mouth.
"Chalmers," I cried. "Chalmers, stop it! Stop it, do you hear?"
As if in reply to my appeal he commenced to utter hoarse convulsive
sounds which resembled nothing so much as the barking of a dog,
and began a sort of hideous writhing in a circle about the room. I
bent and seized him by the shoulders. Violently, desperately, I shook
him. He turned his head and snapped at my wrist. I was sick with
horror, but I dared not release him for fear that he would destroy
himself in a paroxysm of rage.
"Chalmers," I muttered, "you must stop that. There is nothing in this
room that can harm you. Do you understand?"
I continued to shake and admonish him, and gradually the madness
died out of his face. Shivering convulsively, he crumpled into a
grotesque heap on the Chinese rug.

I carried him to the sofa and deposited him upon it. His features were
twisted in pain, and I knew that he was still struggling dumbly to
escape from abominable memories.
"Whisky," he muttered. "You'll find a flask in the cabinet by the
window—upper left-hand drawer."
When I handed him the flask his fingers tightened about it until the
knuckles showed blue. "They nearly got me," he gasped. He drained
the stimulant in immoderate gulps, and gradually the color crept back
into his face.
"That drug was the very devil!" I murmured.
"It wasn't the drug," he moaned.
His eyes no longer glared insanely, but he still wore the look of a lost
soul.
"They scented me in time," he moaned. "I went too far."
"What were they like?" I said, to humor him.
He leaned forward and gripped my arm. He was shivering horribly.
"No word in our language can describe them!" He spoke in a hoarse
whisper. "They are symbolized vaguely in the myth of the Fall, and in
an obscene form which is occasionally found engraven on ancient
tablets. The Greeks had a name for them, which veiled their essential
foulness. The tree, the snake and the apple—these are the vague
symbols of a most awful mystery."
His voice had risen to a scream. "Frank, Frank, a terrible and
unspeakable deed was done in the beginning. Before time, the deed,
and from the deed——"
He had risen and was hysterically pacing the room. "The seeds of the
deed move through angles in dim recesses of time. They are hungry
and athirst!"
"Chalmers," I pleaded to quiet him. "We are living in the third decade
of the Twentieth Century."
"They are lean and athirst!" he shrieked. "The Hounds of Tindalos!"
"Chalmers, shall I phone for a physician?"
"A physician can not help me now. They are horrors of the soul, and
yet"—he hid his face in his hands and groaned—"they are real, Frank.
I saw them for a ghastly moment. For a moment I stood on the other
side. I stood on the pale gray shores beyond time and space. In an
awful light that was not light, in a silence that shrieked, I saw them.
"All the evil in the universe was concentrated in their lean, hungry
bodies. Or had they bodies? I saw them only for a moment; I can not
be certain. But I heard them breathe. Indescribably for a moment I
felt their breath upon my face. They turned toward me and I fled
screaming. In a single moment I fled screaming through time. I fled
down quintillions of years.
"But they scented me. Men awake in them cosmic hungers. We have
escaped, momentarily, from the foulness that rings them round. They
thirst for that in us which is clean, which emerged from the deed
without stain. There is a part of us which did not partake in the deed,
and that they hate. But do not imagine that they are literally,
prosaically evil. They are beyond good and evil as we know it. They
are that which in the beginning fell away from cleanliness. Through
the deed they became bodies of death, receptacles of all foulness.
But they are not evil in our sense because in the spheres through
which they move there is no thought, no morals, no right or wrong as
we understand it. There is merely the pure and the foul. The foul
expresses itself through angles; the pure through curves. Man, the
pure part of him, is descended from a curve. Do not laugh. I mean
that literally."
I rose and searched for my hat. "I'm dreadfully sorry for you,
Chalmers," I said, as I walked toward the door. "But I don't intend to
stay and listen to such gibberish. I'll send my physician to see you.
He's an elderly, kindly chap and he won't be offended if you tell him
to go to the devil. But I hope you'll respect his advice. A week's rest
in a good sanitarium should benefit you immeasurably."
I heard him laughing as I descended the stairs, but his laughter was
so utterly mirthless that it moved me to tears.

When Chalmers phoned the following morning my first impulse was


to hang up the receiver immediately. His request was so unusual and
his voice was so wildly hysterical that I feared any further association
with him would result in the impairment of my own sanity. But I could
not doubt the genuineness of his misery, and when he broke down
completely and I heard him sobbing over the wire I decided to
comply with his request.
"Very well," I said. "I will come over immediately and bring the
plaster."
En route to Chalmers' home I stopped at a hardware store and
purchased twenty pounds of plaster of Paris. When I entered my
friend's room he was crouching by the window watching the opposite
wall out of eyes that were feverish with fright. When he saw me he
rose and seized the parcel containing the plaster with an avidity that
amazed and horrified me. He had extruded all of the furniture and
the room presented a desolate appearance.
"It is just conceivable that we can thwart them!" he exclaimed. "But
we must work rapidly. Frank, there is a stepladder in the hall. Bring it
here immediately. And then fetch a pail of water."
"What for?" I murmured.
He turned sharply and there was a flush on his face. "To mix the
plaster, you fool!" he cried. "To mix the plaster that will save our
bodies and souls from a contamination unmentionable. To mix the
plaster that will save the world from—Frank, they must be kept out!"
"Who?" I murmured.
"The Hounds of Tindalos!" he muttered. "They can only reach us
through angles. We must eliminate all angles from this room. I shall
plaster up all of the corners, all of the crevices. We must make this
room resemble the interior of a sphere."
I knew that it would have been useless to argue with him. I fetched
the stepladder, Chalmers mixed the plaster, and for three hours we
labored. We filled in the four corners of the wall and the intersections
of the floor and wall and the wall and ceiling, and we rounded the
sharp angles of the window-seat.
"I shall remain in this room until they return in time," he affirmed
when our task was completed. "When they discover that the scent
leads through curves they will return. They will return ravenous and
snarling and unsatisfied to the foulness that was in the beginning,
before time, beyond space."
He nodded graciously and lit a cigarette. "It was good of you to
help," he said.
"Will you not see a physician, Chalmers?" I pleaded.
"Perhaps—tomorrow," he murmured. "But now I must watch and
wait."
"Wait for what?" I urged.
Chalmers smiled wanly. "I know that you think me insane," he said.
"You have a shrewd but prosaic mind, and you can not conceive of an
entity that does not depend for its existence on force and matter. But
did it ever occur to you, my friend, that force and matter are merely
the barriers to perception imposed by time and space? When one
knows, as I do, that time and space are identical and that they are
both deceptive because they are merely imperfect manifestations of a
higher reality, one no longer seeks in the visible world for an
explanation of the mystery and terror of being."
I rose and walked toward the door.
"Forgive me," he cried. "I did not mean to offend you. You have a
superlative intellect, but I—I have a superhuman one. It is only
natural that I should be aware of your limitations."
"Phone if you need me," I said, and descended the stairs two steps at
a time. "I'll send my physician over at once," I muttered, to myself.
"He's a hopeless maniac, and heaven knows what will happen if
someone doesn't take charge of him immediately."

The following is a condensation of two announcements which


appeared in the Partridgeville Gazette for July 3, 1928:
Earthquake Shakes Financial District

At 2 o'clock this morning an earth tremor of unusual severity broke


several plate-glass windows in Central Square and completely
disorganized the electric and street railway systems. The tremor was
felt in the outlying districts and the steeple of the First Baptist Church
on Angell Hill (designed by Christopher Wren in 1717) was entirely
demolished. Firemen are now attempting to put out a blaze which
threatens to destroy the Partridgeville Glue Works. An investigation is
promised by the mayor and an immediate attempt will be made to fix
responsibility for this disastrous occurrence.

OCCULT WRITER MURDERED BY UNKNOWN GUEST

Horrible Crime in Central Square


Mystery Surrounds Death of Halpin Chalmers

At 9 a.m. today the body of Halpin Chalmers, author and journalist,


was found in an empty room above the jewelry store of Smithwick
and Isaacs, 24 Central Square. The coroner's investigation revealed
that the room had been rented furnished to Mr. Chalmers on May 1,
and that he had himself disposed of the furniture a fortnight ago.
Chalmers was the author of several recondite books on occult
themes, and a member of the Bibliographic Guild. He formerly
resided in Brooklyn, New York.
At 7 a.m. Mr. L. E. Hancock, who occupies the apartment opposite
Chalmers' room in the Smithwick and Isaacs establishment, smelt a
peculiar odor when he opened his door to take in his cat and the
morning edition of the Partridgeville Gazette. The odor he describes
as extremely acrid and nauseous, and he affirms that it was so strong
in the vicinity of Chalmers' room that he was obliged to hold his nose
when he approached that section of the hall.
He was about to return to his own apartment when it occurred to him
that Chalmers might have accidentally forgotten to turn off the gas in
his kitchenette. Becoming considerably alarmed at the thought, he
decided to investigate, and when repeated tappings on Chalmers'
door brought no response he notified the superintendent. The latter
opened the door by means of a pass key, and the two men quickly
made their way into Chalmers' room. The room was utterly destitute
of furniture, and Hancock asserts that when he first glanced at the
floor his heart went cold within him, and that the superintendent,
without saying a word, walked to the open window and stared at the
building opposite for fully five minutes.
Chalmers lay stretched upon his back in the center of the room. He
was starkly nude, and his chest and arms were covered with a
peculiar bluish pus or ichor. His head lay grotesquely upon his chest.
It had been completely severed from his body, and the features were
twisted and torn and horribly mangled. Nowhere was there a trace of
blood.

"He was starkly nude, and twisted and torn."


The room presented a most astonishing appearance. The
intersections of the walls, ceiling and floor had been thickly smeared
with plaster of Paris, but at intervals fragments had cracked and
fallen off, and someone had grouped these upon the floor about the
murdered man so as to form a perfect triangle.
Beside the body were several sheets of charred yellow paper. These
bore fantastic geometric designs and symbols and several hastily
scrawled sentences. The sentences were almost illegible and so
absurd in context that they furnished no possible clue to the
perpetrator of the crime. "I am waiting and watching," Chalmers
wrote. "I sit by the window and watch walls and ceiling. I do not
believe they can reach me, but I must beware of the Doels. Perhaps
they can help them break through. The satyrs will help, and they can
advance through the scarlet circles. The Greeks knew a way of
preventing that. It is a great pity that we have forgotten so much."
On another sheet of paper, the most badly charred of the seven or
eight fragments found by Detective Sergeant Douglas (of the
Partridgeville Reserve), was scrawled the following:
"Good God, the plaster is falling! A terrific shock has loosened the
plaster and it is falling. An earthquake perhaps! I never could have
anticipated this. It is growing dark in the room. I must phone Frank.
But can he get here in time? I will try. I will recite the Einstein
formula. I will—God, they are breaking through! They are breaking
through! Smoke is pouring from the corners of the wall. Their
tongues—ahhhhh——"
In the opinion of Detective Sergeant Douglas, Chalmers was poisoned
by some obscure chemical. He has sent specimens of the strange
blue slime found on Chalmers' body to the Partridgeville Chemical
Laboratories; and he expects the report will shed new light on one of
the most mysterious crimes of recent years. That Chalmers
entertained a guest on the evening preceding the earthquake is
certain, for his neighbor distinctly heard a low murmur of
conversation in the former's room as he passed it on his way to the
stairs. Suspicion points strongly to this unknown visitor and the police
are diligently endeavoring to discover his identity.

Report of James Morton, chemist and bacteriologist:


My dear Mr. Douglas:
The fluid sent to me for analysis is the most peculiar that I have ever
examined. It resembles living protoplasm, but it lacks the peculiar
substances known as enzymes. Enzymes catalyze the chemical
reactions occurring in living cells, and when the cell dies they cause it
to disintegrate by hydrolyzation. Without enzymes protoplasm should
possess enduring vitality, i.e., immortality. Enzymes are the negative
components, so to speak, of unicellular organism, which is the basis
of all life. That living matter can exist without enzymes biologists
emphatically deny. And yet the substance that you have sent me is
alive and it lacks these "indispensable" bodies. Good God, sir, do you
realize what astounding new vistas this opens up?

Excerpt from The Secret Watchers by the late Halpin Chalmers:


What if, parallel to the life we know, there is another life that does
not die, which lacks the elements that destroy our life? Perhaps in
another dimension there is a different force from that which
generates our life. Perhaps this force emits energy, or something
similar to energy, which passes from the unknown dimension where it
is and creates a new form of cell life in our dimension. No one knows
that such new cell life does exist in our dimension. Ah, but I have
seen its manifestations. I have talked with them. In my room at night
I have talked with the Doels. And in dreams I have seen their maker.
I have stood on the dim shore beyond time and matter and seen it. It
moves through strange curves and outrageous angles. Some day I
shall travel in time and meet it face to face.
*** END OF THE PROJECT GUTENBERG EBOOK THE HOUNDS OF
TINDALOS ***

Updated editions will replace the previous one—the old editions will
be renamed.

Creating the works from print editions not protected by U.S.


copyright law means that no one owns a United States copyright in
these works, so the Foundation (and you!) can copy and distribute it
in the United States without permission and without paying
copyright royalties. Special rules, set forth in the General Terms of
Use part of this license, apply to copying and distributing Project
Gutenberg™ electronic works to protect the PROJECT GUTENBERG™
concept and trademark. Project Gutenberg is a registered trademark,
and may not be used if you charge for an eBook, except by following
the terms of the trademark license, including paying royalties for use
of the Project Gutenberg trademark. If you do not charge anything
for copies of this eBook, complying with the trademark license is
very easy. You may use this eBook for nearly any purpose such as
creation of derivative works, reports, performances and research.
Project Gutenberg eBooks may be modified and printed and given
away—you may do practically ANYTHING in the United States with
eBooks not protected by U.S. copyright law. Redistribution is subject
to the trademark license, especially commercial redistribution.

START: FULL LICENSE


THE FULL PROJECT GUTENBERG LICENSE
PLEASE READ THIS BEFORE YOU DISTRIBUTE OR USE THIS WORK

To protect the Project Gutenberg™ mission of promoting the free


distribution of electronic works, by using or distributing this work (or
any other work associated in any way with the phrase “Project
Gutenberg”), you agree to comply with all the terms of the Full
Project Gutenberg™ License available with this file or online at
www.gutenberg.org/license.

Section 1. General Terms of Use and


Redistributing Project Gutenberg™
electronic works
1.A. By reading or using any part of this Project Gutenberg™
electronic work, you indicate that you have read, understand, agree
to and accept all the terms of this license and intellectual property
(trademark/copyright) agreement. If you do not agree to abide by all
the terms of this agreement, you must cease using and return or
destroy all copies of Project Gutenberg™ electronic works in your
possession. If you paid a fee for obtaining a copy of or access to a
Project Gutenberg™ electronic work and you do not agree to be
bound by the terms of this agreement, you may obtain a refund
from the person or entity to whom you paid the fee as set forth in
paragraph 1.E.8.

1.B. “Project Gutenberg” is a registered trademark. It may only be


used on or associated in any way with an electronic work by people
who agree to be bound by the terms of this agreement. There are a
few things that you can do with most Project Gutenberg™ electronic
works even without complying with the full terms of this agreement.
See paragraph 1.C below. There are a lot of things you can do with
Project Gutenberg™ electronic works if you follow the terms of this
agreement and help preserve free future access to Project
Gutenberg™ electronic works. See paragraph 1.E below.
1.C. The Project Gutenberg Literary Archive Foundation (“the
Foundation” or PGLAF), owns a compilation copyright in the
collection of Project Gutenberg™ electronic works. Nearly all the
individual works in the collection are in the public domain in the
United States. If an individual work is unprotected by copyright law
in the United States and you are located in the United States, we do
not claim a right to prevent you from copying, distributing,
performing, displaying or creating derivative works based on the
work as long as all references to Project Gutenberg are removed. Of
course, we hope that you will support the Project Gutenberg™
mission of promoting free access to electronic works by freely
sharing Project Gutenberg™ works in compliance with the terms of
this agreement for keeping the Project Gutenberg™ name associated
with the work. You can easily comply with the terms of this
agreement by keeping this work in the same format with its attached
full Project Gutenberg™ License when you share it without charge
with others.

1.D. The copyright laws of the place where you are located also
govern what you can do with this work. Copyright laws in most
countries are in a constant state of change. If you are outside the
United States, check the laws of your country in addition to the
terms of this agreement before downloading, copying, displaying,
performing, distributing or creating derivative works based on this
work or any other Project Gutenberg™ work. The Foundation makes
no representations concerning the copyright status of any work in
any country other than the United States.

1.E. Unless you have removed all references to Project Gutenberg:

1.E.1. The following sentence, with active links to, or other


immediate access to, the full Project Gutenberg™ License must
appear prominently whenever any copy of a Project Gutenberg™
work (any work on which the phrase “Project Gutenberg” appears,
or with which the phrase “Project Gutenberg” is associated) is
accessed, displayed, performed, viewed, copied or distributed:
This eBook is for the use of anyone anywhere in the United
States and most other parts of the world at no cost and with
almost no restrictions whatsoever. You may copy it, give it away
or re-use it under the terms of the Project Gutenberg License
included with this eBook or online at www.gutenberg.org. If you
are not located in the United States, you will have to check the
laws of the country where you are located before using this
eBook.

1.E.2. If an individual Project Gutenberg™ electronic work is derived


from texts not protected by U.S. copyright law (does not contain a
notice indicating that it is posted with permission of the copyright
holder), the work can be copied and distributed to anyone in the
United States without paying any fees or charges. If you are
redistributing or providing access to a work with the phrase “Project
Gutenberg” associated with or appearing on the work, you must
comply either with the requirements of paragraphs 1.E.1 through
1.E.7 or obtain permission for the use of the work and the Project
Gutenberg™ trademark as set forth in paragraphs 1.E.8 or 1.E.9.

1.E.3. If an individual Project Gutenberg™ electronic work is posted


with the permission of the copyright holder, your use and distribution
must comply with both paragraphs 1.E.1 through 1.E.7 and any
additional terms imposed by the copyright holder. Additional terms
will be linked to the Project Gutenberg™ License for all works posted
with the permission of the copyright holder found at the beginning
of this work.

1.E.4. Do not unlink or detach or remove the full Project


Gutenberg™ License terms from this work, or any files containing a
part of this work or any other work associated with Project
Gutenberg™.

1.E.5. Do not copy, display, perform, distribute or redistribute this


electronic work, or any part of this electronic work, without
prominently displaying the sentence set forth in paragraph 1.E.1
with active links or immediate access to the full terms of the Project
Gutenberg™ License.

1.E.6. You may convert to and distribute this work in any binary,
compressed, marked up, nonproprietary or proprietary form,
including any word processing or hypertext form. However, if you
provide access to or distribute copies of a Project Gutenberg™ work
in a format other than “Plain Vanilla ASCII” or other format used in
the official version posted on the official Project Gutenberg™ website
(www.gutenberg.org), you must, at no additional cost, fee or
expense to the user, provide a copy, a means of exporting a copy, or
a means of obtaining a copy upon request, of the work in its original
“Plain Vanilla ASCII” or other form. Any alternate format must
include the full Project Gutenberg™ License as specified in
paragraph 1.E.1.

1.E.7. Do not charge a fee for access to, viewing, displaying,


performing, copying or distributing any Project Gutenberg™ works
unless you comply with paragraph 1.E.8 or 1.E.9.

1.E.8. You may charge a reasonable fee for copies of or providing


access to or distributing Project Gutenberg™ electronic works
provided that:

• You pay a royalty fee of 20% of the gross profits you derive
from the use of Project Gutenberg™ works calculated using the
method you already use to calculate your applicable taxes. The
fee is owed to the owner of the Project Gutenberg™ trademark,
but he has agreed to donate royalties under this paragraph to
the Project Gutenberg Literary Archive Foundation. Royalty
payments must be paid within 60 days following each date on
which you prepare (or are legally required to prepare) your
periodic tax returns. Royalty payments should be clearly marked
as such and sent to the Project Gutenberg Literary Archive
Foundation at the address specified in Section 4, “Information
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

textbookfull.com

You might also like