100% found this document useful (1 vote)
36 views75 pages

CryENGINE Game Programming With C C and Lua 1st Edition Lundgren - Read The Ebook Online or Download It To Own The Full Content

The document provides information about various programming eBooks available for download at ebookgate.com, including titles on CryENGINE game programming, AI programming with Lua, and C programming. It outlines the content of the book 'CryENGINE Game Programming with C++, C#, and Lua,' detailing its chapters on setup, visual scripting, custom entities, game rules, AI, user interface, networking, physics, rendering, effects, debugging, and profiling. The book is authored by Filip Lundgren and Ruan Pearce-Authers, with contributions from various reviewers and technical editors.

Uploaded by

erlandagika
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 (1 vote)
36 views75 pages

CryENGINE Game Programming With C C and Lua 1st Edition Lundgren - Read The Ebook Online or Download It To Own The Full Content

The document provides information about various programming eBooks available for download at ebookgate.com, including titles on CryENGINE game programming, AI programming with Lua, and C programming. It outlines the content of the book 'CryENGINE Game Programming with C++, C#, and Lua,' detailing its chapters on setup, visual scripting, custom entities, game rules, AI, user interface, networking, physics, rendering, effects, debugging, and profiling. The book is authored by Filip Lundgren and Ruan Pearce-Authers, with contributions from various reviewers and technical editors.

Uploaded by

erlandagika
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/ 75

Instant Ebook Access, One Click Away – Begin at ebookgate.

com

CryENGINE Game Programming with C C and Lua 1st


Edition Lundgren

https://ebookgate.com/product/cryengine-game-programming-
with-c-c-and-lua-1st-edition-lundgren/

OR CLICK BUTTON

DOWLOAD EBOOK

Get Instant Ebook Downloads – Browse at https://ebookgate.com


Click here to visit ebookgate.com and download ebook now
Instant digital products (PDF, ePub, MOBI) available
Download now and explore formats that suit you...

Learning Game AI Programming with Lua 1st Edition David


Young

https://ebookgate.com/product/learning-game-ai-programming-with-
lua-1st-edition-david-young/

ebookgate.com

Programming With C 3rd Edition Bl Juneja

https://ebookgate.com/product/programming-with-c-3rd-edition-bl-
juneja/

ebookgate.com

Programming with ANSI C 2nd ed Edition Trivedi

https://ebookgate.com/product/programming-with-ansi-c-2nd-ed-edition-
trivedi/

ebookgate.com

Linear programming with MATLAB 1st Edition Michael C.


Ferris

https://ebookgate.com/product/linear-programming-with-matlab-1st-
edition-michael-c-ferris/

ebookgate.com
Fundamentals of Computer Programming with C The Bulgarian
C Book 1st Edition Svetlin Nakov

https://ebookgate.com/product/fundamentals-of-computer-programming-
with-c-the-bulgarian-c-book-1st-edition-svetlin-nakov/

ebookgate.com

Learn 2D Game Development with C 1st Edition Jebediah


Pavleas

https://ebookgate.com/product/learn-2d-game-development-with-c-1st-
edition-jebediah-pavleas/

ebookgate.com

Programming Windows Store Apps with C 1st Edition Matthew


Baxter-Reynolds

https://ebookgate.com/product/programming-windows-store-apps-
with-c-1st-edition-matthew-baxter-reynolds/

ebookgate.com

An Introduction to Programming with C 6th Edition Diane


Zak

https://ebookgate.com/product/an-introduction-to-programming-
with-c-6th-edition-diane-zak/

ebookgate.com

Object Oriented Programming with C 2 e Second Edition


Sahay

https://ebookgate.com/product/object-oriented-programming-
with-c-2-e-second-edition-sahay/

ebookgate.com
CryENGINE Game Programming with C++, C#,
and Lua
Table of Contents
CryENGINE Game Programming with C++, C#, and Lua
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers and more
Why Subscribe?
Free Access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Errata
Piracy
Questions
1. Introduction and Setup
Installing Visual Studio Express 2012
Choosing your CryENGINE installation type
Downloading the book's CryENGINE sample installation
What just happened?
Using a custom or newer CryENGINE installation
Verifying that the build is functional
Integrating CryMono (C# support)
Compiling the CryMono project
Loading and initializing CryMono via the CryGame.dll library
Including the CryMono interface folder
Initializing CryMono at start up
Registering flow nodes
Registering your CryDev account
What just happened?
Running the sample application
Editor
Starting the Editor
Launcher
Starting the Launcher
Dedicated server
Compiling the CryGame project (C++)
What just happened?
The CE Game Programming Sample solution breakdown
CryGame
CryAction
CryCommon
The CryENGINE folder structure
PAK files
File query priority
Attaching the debugger
What just happened?
Summary
2. Visual Scripting with Flowgraph
Concept of flowgraphs
Opening the Flowgraph Editor
A tour of the Flowgraph Editor
Components
Terminology
Component categories
Flowgraph types
AI Actions
UI Actions
Material FX
FG Modules
Entities
Prefabs
Creating a flowgraph
The flowgraph entity
Spawning FlowgraphEntity
Attaching a new flowgraph
Adding nodes into flowgraphs
Input and output ports
Port types
Target entities
Linking flownodes
Testing our flowgraph
The stock flownode overview
Building a clock
Listening for player input
Executing on a loop
Flowgraph modules
Creating a module
Calling a module
Module parameters/ports
Custom flownodes
Creating a custom node in C++
Organizing nodes
Creating a new node file
Breaking down of code
The node functions overview
Implementing GetConfiguration
Creating ports
Assigning arrays to the node configuration
Flownode configuration flags
Implementing ProcessEvent
Creating a custom node in C#
Adding inputs
Adding outputs
Implementing Activate
Target entities
Summary
3. Creating and Utilizing Custom Entities
Introducing the entity system
Entity classes
Entities
entityId
EntityGUID
Game objects
The entity pool system
Creating a custom entity
Creating an entity using Lua
Common Lua entity callbacks
Creating an entity in C#
Adding Editor properties
Property folders
Creating an entity in C++
Creating a custom entity class
Implementing a property handler
Entity flownodes
Creating an entity flownode in Lua
Creating an entity flownode using C#
Creating an entity flownode in C++
Registering the entity node
The final code
Game objects
Game object extensions
Creating a game object extension in C++
Activating our extension
Summary
4. Game Rules
Introduction to game rules
IGameRules interface – game rules
Scripting – game modes
Loading a level
Implementing the game rules interface
Registering the game object extension
Creating custom game modes
Scripting
Lua scripting
Invoking methods
Invoking methods with parameters
Getting values returned from Lua
Getting table values
CryMono scripting
Calling methods
Return values
Properties
Fields
Creating a basic game mode in C#
Defining our intention
Creating the actor
Spawning the actor
Handling disconnections
Assigning the player to a team
Implementing Headquarters
Adding the end game event
Creating the Headquarters entity
Detour – trigger bounds and entity areas
Populating the level
Summary
5. Creating Custom Actors
Introducing the actor system
Channel identifiers
Actor spawning
Removing actors
The view system
Linking views to game objects
Creating custom actors
Creating actors in C#
The CryMono class hierarchy
Using native and CryMono actors alongside each other
C++ actor registration
C# declaration
Creating actors in C++
Registering actors
Camera handling
Implementing IGameObjectView
Creating a top-down camera
View rotation
Player inputs
The hardware mouse
Action maps
Listening for action map events
IActionListener
Enabling action map sections
Animated characters
Movement requests
Adding a movement request
The Mannequin animation system
The Mannequin Editor
Preview setup
Creating contexts
Creating fragments
Adding options
Creating and using tags
Appending tags to Options
Saving
Starting fragments
Acquiring the fragment identifier
Queuing the fragment
Setting tags
Forcing actions into requerying options
Debugging Mannequin
Setting up Mannequin for a custom entity
Initializing Mannequin
Loading the controller definition
Setting the active context
Summary
6. Artificial Intelligence
The Artificial Intelligence (AI) system
Scripting
AI actors
Goal pipes
Creating custom pipes
Selecting pipes
Signals
AI behaviors
Sample
IAIObject
Creating custom AI
Registering an AI actor implementation
In C#
In C++
Creating the AI entity definition
AI behaviors and characters
Understanding and using behavior selection trees
Variables
Signal variables
Leaves / behavior queries
Character
NavigationType
Creating custom behaviors
Listening to signals
AI base definition breakdown
The AISample_x table
The Properties table
The AIMovementAbility table
The CreateAI function
The RegisterAI function
Summary
7. The User Interface
Flash movie clips and UI graphs
Elements
XML Breakdown
Actions
Creating a main menu
Creating menu elements
Exposing ActionScript assets
Functions
Events
Variables
Arrays
Exposing MovieClip instances to flowgraph
Creating the UI actions
Creating the state control graph
Creating the MainMenu action
Adding buttons
End result
Engine ActionScript callbacks
Creating UI game event systems
Implementing IUIGameEventSystem
Receiving events
Dispatching events
Dispatching the event
Summary
8. Multiplayer and Networking
The networking system
Network identifiers
Net channels
Net nubs
Setting up a multiplayer game
Starting the server
Dedicated server
Launcher
Connecting to a server via the console
Debugging networked games
Networking using game object extensions
Remote Method Invocation (RMI)
RMI structure
Parameters
Attach type
Server/client separation
Function definition
RMI example
Network aspect serialization
Aspects
Compression policies
Creating a new compression policy
Exposing Lua entities to the network
Net.Expose
Function implementation
Invoking RMIs
On the server
On all clients
On all other clients
Binding our entity to the network
Summary
9. Physics Programming
CryPhysics
Physicalized entity types
Introducing physical entity identifiers
Drawing entity proxies
Entity types
Helper types
Physical entity actions, parameters, and status
Parameters
Actions
Status
Physicalized entity type details
Common parameters
Common actions
Common statuses
Static
Rigid
Wheeled vehicle
Unique parameters
Unique statuses
Unique actions
Living
Unique parameters
Unique statuses
Unique actions
Particle
Unique parameters
Articulated
Unique parameters
Rope
Unique parameters
Soft
Unique parameters
Unique actions
Ray world intersections
The ray_hit struct
Commonly used member variables
Origin and direction
Object types and ray flags
Object types
Ray flags
Allowing multiple ray hits
Creating a physicalized entity
In C++
In C#
Simulating explosions
Summary
10. Rendering Programming
The renderer details
Shaders
Shader permutations
Shader cache
PAK files
Render nodes
Rendering breakdown
Pre update
Post update
Rendering new viewports using render contexts
Rendering
Using the I3DEngine::RenderWorld function
I3DEngine::RenderWorld flags
Shaders
The shader description
Texture slots
Shader flags
Material flags
Engine flags
Runtime flags
Samplers
Using texture slots with samplers
Obtaining a texture
Manipulating static objects at runtime
Modifying materials at runtime
Cloning a material
Material parameters
Shader parameters
Example – Dynamic alpha-test for vegetation
Summary
11. Effects and Sound
Introducing effects
Material effects
Surface types
Adding or modifying surface types
Particle effects
Sound effects
FMOD Designer
Creating and triggering material effects
Automated playback based on physical interactions
Adding new surface types
Effect definitions
Triggering custom events
Animation-based events and effects
Spawning particle emitters
Exporting sounds by using FMod
Adding sounds to the project
Playing sounds
Using SoundSpots
Programmatically playing sound
Sound flags
Sound semantics
Summary
12. Debugging and Profiling
Debugging the game logic
Logging to the console and files
Log verbosity
Global log functions
The persistent debug
C++
C#
CryAssert
Profiling
Profile usages
Profiling in C++
Profiling in C#
The console
Console variables
Registering a CVar
In C++
In C#
Flags
Console variable groups
Cfg structure
System specifications
Console commands
Registering a console command in C#
Arguments
Creating a Console Command in C++
Summary
Index
CryENGINE Game Programming with C++, C#,
and Lua
CryENGINE Game Programming with C++, C#,
and Lua
Copyright © 2013 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or
transmitted in any form or by any means, without the prior written permission of the publisher, except
in the case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the information
presented. However, the information contained in this book is sold without warranty, either express
or implied. Neither the authors, nor Packt Publishing, and its dealers and distributors will be held
liable for any damages caused or alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the companies and
products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot
guarantee the accuracy of this information.

First published: November 2013

Production Reference: 1151113

Published by Packt Publishing Ltd.

Livery Place

35 Livery Street

Birmingham B3 2PB, UK.

ISBN 978-1-84969-590-9

www.packtpub.com

Cover Image by Carl-Filip Lundgren (<[email protected]>)


Credits
Authors

Filip Lundgren

Ruan Pearce-Authers

Reviewers

Terry Evans

Chris Parthemos

Hendrik Polczynski

Ross Rothenstine

Acquisition Editor

Sam Wood

Lead Technical Editor

Arun Nadar

Technical Editors

Anusri Ramchandran

Rohit Kumar Singh

Project Coordinator

Kranti Berde

Proofreaders

Dirk Manuel

Lindsey Thomas

Indexer

Rekha Nair

Graphics
Ronak Dhruv

Abhinash Sahu

Production Coordinators

Aditi Gajjar

Adonia Jones

Cover Work

Adonia Jones
About the Authors
Filip Lundgren is a Technical Director at Poppermost Production AB where he works on SNOW, the
first free-to-play open-world skiing title. Filip has been working with CryENGINE since 2007 with
the release of Crysis 1 SDK, and has developed community tools such as CryMono and the
CryENGINE toolbox.

Writing the book was a great experience and has involved the help of many CryENGINE community
members. Many thanks to the CryDev community and our reviewers for valuable input that helped
shape the book to what it is now.

Ruan Pearce-Authers is a game programmer currently working for Crytek GmbH. In 2009, he began
managing Crytek's development community, and providing technical support for CryENGINE users.
Prior to this, he was active in the Crysis modding community himself, and followed this up by
producing sample projects and additional tools for the Free SDK. He co-developed the CryMono
engine extension to bring support for .NET to the CryENGINE, and the Tanks game sample written
exclusively in C#. At present, Ruan works as part of the development team for Crytek's award-
winning entrance, into the free-to-play market, Warface, in Frankfurt.

I'd like to thank my family, my friends in the industry with whom I've worked on some amazing side
projects, and my wonderful girlfriend, Iulia, for supporting me constantly throughout the authoring of
this book.
About the Reviewers
Terry Evans is a software developer with a degree from the University of Utah. He has a diverse
background as a result of developing solutions in Unix, Linux, Windows, OS/2, Mac OS X, iOS, and
Android, but has always enjoyed developing games the most during his career. He is the founder and
currently lead developer for Entrada Interactive, which is developing a post-apocalyptic, multiplayer,
survival game titled Miscreated using CryENGINE 3. Visit MiscreatedGame.com for more
information on his latest venture.

Chris Parthemos is a recent entrant into the world of game development, but he has worked in
developing content for AAA games for major studios. His educational background includes a Masters
in Interactive Development from the Guildhall at Southern Methodist University, with a focus in
Design and Scripting.

Hendrik Polczynski is a Software Developer from Germany. He has been working on software for
over 10 years. He likes to take on a variety of different areas from industry automation to web, UI,
and game development. You can find his open source projects at github.com/hendrikp or on his
YouTube channel. Hendrik is maintaining a handful of open source projects around the CryDev
community and the CryENGINE 3 FreeSDK. When Hendrik is not working, he is studying for his
B.Sc. degree in Computer Science and Media Application, or helping out with the development of
Miscreated by Entrada Interactive, which is a post-apocalyptic, survival-based MMORPG unlike
anything you've played before.

Ross Rothenstine is an industry software engineer by day and hobbyist game programmer by night.
He has a staunch reputation at his college for turning any major course project into a playable game
by the end of it. He has a focus on Game Engine architecture and how complex subsystems come
about in an elegant manner to make extensible, robust, and most importantly, fun to design games. This
means quite a bit of time, reading, and coffee.

I would like to thank the authors of this book, as the content within it is pure, simple, and most of all,
needed. In my days of wanting to learn CryENGINE programming, and reading the documents and
code by hand, I had wished that a book like this would come about someday.
www.PacktPub.com
Support files, eBooks, discount offers and more
You might want to visit www.PacktPub.com for support files and downloads related to your book.

Did you know that Packt offers eBook versions of every book published, with PDF and ePub files
available? You can upgrade to the eBook version at www.PacktPub.com and as a print book
customer, you are entitled to a discount on the eBook copy. Get in touch with us at
<[email protected]> for more details.

At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range
of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.

http://PacktLib.PacktPub.com

Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library.
Here, you can access, read and search across Packt's entire library of books.
Why Subscribe?
Fully searchable across every book published by Packt
Copy and paste, print and bookmark content
On demand and accessible via web browser
Free Access for Packt account holders
If you have an account with Packt at www.PacktPub.com, you can use this to access PacktLib today
and view nine entirely free books. Simply use your login credentials for immediate access.
Preface
The process of developing and maintaining games has changed very rapidly in the last few years. It
has become more and more common for game developers to license third-party game engines, such as
CryENGINE, in order to focus fully on the game itself.

As the first game engine to ship with a pure What You See Is What You Play (WYSIWYP)
philosophy in mind, CryENGINE focuses on productivity and iteration by allowing developers to
jump directly into their games, previewing changes as they happen, and not waiting for levels and
assets to build.

For a programmer, CryENGINE is the ideal toolset. Development can be done in C++ using the
generous API, allowing developers to jump straight into the code and write high-performing code that
is not limited to obscure scripting languages. Got an idea? Fire up Visual Studio and get right to
work.
What this book covers
Chapter 1, Introduction and Setup, covers getting up to speed with a brief overview of the engine,
detailing its strengths, the possibilities it provides, and a step-by-step guide to set up your
environment.

Chapter 2, Visual Scripting with Flowgraph, introduces you to the visual scripting tool, giving an
easy passage to create game logic in an accessible visual manner.

Chapter 3, Creating and Utilizing Custom Entities, covers the entity system and how to use it to your
advantage. Populate your game world with entities that range from simple physicalized objects to
complex weather simulation managers.

Chapter 4, Game Rules, provides you with an in-depth look into the game rules system, giving you a
standardized template for overarching game and session logic. It also teaches how to implement your
own custom game modes in a variety of languages.

Chapter 5, Creating Custom Actors, details the creation of custom actor classes for both player-
controlled entities and the basis of artificial intelligence.

Chapter 6, Artificial Intelligence, covers the process of creating a living and breathing world by
using the built-in artificial intelligence solution.

Chapter 7, The User Interface, details the process of using Flash and Autodesk Scaleform to spice up
your interface with everything from simple on-screen bitmaps to rendering interactive flash elements
in the game world.

Chapter 8, Multiplayer and Networking, covers the work behind taking the engine online, and
learning how to synchronize the game world across the network.

Chapter 9, Physics Programming, covers the inner workings of the physics system, and the process
of creating physical interactions for everything from the largest of vehicles to the smallest particle
effect.

Chapter 10, Rendering Programming, helps you to learn how the rendering system works, and how
to use it to create and expand everything from render nodes to multiple viewports.

Chapter 11, Effects and Sound, details the workings of the FMod sound engine in use by
CryENGINE, allowing you to implement convincing sound for your project.

Chapter 12, Debugging and Profiling, covers common ways of debugging your game, and the basics
of using the console.
What you need for this book
CryENGINE 3 Free SDK v3.5.4
CryMono v0.7 for CryENGINE 3.5.4
Visual Studio Express 2012
Notepad++
FMod
Who this book is for
This book has been written for developers with a basic working knowledge of using CryENGINE and
its Editor, and in some cases will assume the reader knows about very basic features such as loading
a level in the Editor, and placing an entity. If you have never worked with CryENGINE before, we
recommend either playing around with the CryENGINE Free SDK on your own, or purchasing
CryENGINE 3 Game Development: Beginner's Guide, by Sean Tracy and Paul Reindell.
Conventions
In this book, you will find a number of styles of text that distinguish between different kinds of
information. Here are some examples of these styles, and an explanation of their meaning.

Code words in text are shown as follows: "The GFx element determines which Flash file should be
loaded for the element."

A block of code is set as follows:


<events>
<event name="OnBigButton" fscommand="onBigButton" desc="Triggered when a big
button is pressed">
<param name="id" desc="Id of the button" type="string" />
</event>
</events>
}

New terms and important words are shown in bold. Words that you see on the screen, in menus or
dialog boxes for example, appear in the text like this: "Once started, the UI graph with the specified
name will be activated, assuming it contains a UI:Action:Start node as shown:"
Note
Warnings or important notes appear in a box like this.
Tip
Tips and tricks appear like this.
Reader feedback
Feedback from our readers is always welcome. Let us know what you think about this book—what
you liked or may have disliked. Reader feedback is important for us to develop titles that you really
get the most out of.

To send us general feedback, simply send an e-mail to <[email protected]>, and mention the
book title via the subject of your message.

If there is a topic that you have expertise in and you are interested in either writing or contributing to
a book, see our author guide on www.packtpub.com/authors.
Customer support
Now that you are the proud owner of a Packt book, we have a number of things to help you to get the
most from your purchase.
Errata
Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you
find a mistake in one of our books—maybe a mistake in the text or the code—we would be grateful if
you would report this to us. By doing so, you can save other readers from frustration and help us
improve subsequent versions of this book. If you find any errata, please report them by visiting
http://www.packtpub.com/submit-errata, selecting your book, clicking on the errata submission form
link, and entering the details of your errata. Once your errata are verified, your submission will be
accepted and the errata will be uploaded on our website, or added to any list of existing errata, under
the Errata section of that title. Any existing errata can be viewed by selecting your title from
http://www.packtpub.com/support.
Piracy
Piracy of copyright material on the Internet is an ongoing problem across all media. At Packt, we take
the protection of our copyright and licenses very seriously. If you come across any illegal copies of
our works, in any form, on the Internet, please provide us with the location address or website name
immediately so that we can pursue a remedy.

Please contact us at <[email protected]> with a link to the suspected pirated material.

We appreciate your help in protecting our authors, and our ability to bring you valuable content.
Questions
You can contact us at <[email protected]> if you are having a problem with any aspect of
the book, and we will do our best to address it.
Chapter 1. Introduction and Setup
CryENGINE is known as one of the most extensible engines available due to its ability to portray a
vast variety of impressive visuals and gameplay. This makes it an invaluable tool at the hand of a
programmer, where the only limit is one's creativity.

In this chapter, we will cover the following topics:


Installing Visual Studio Express 2012 for Windows Desktop
Downloading the CryENGINE sample installation or using a custom engine install
Registering an account at http://www.crydev.net, the official CryENGINE development portal
Compiling a stripped-down CryGame library
Attaching and utilizing the debugger
Installing Visual Studio Express 2012
In order to compile the game code, you will need a copy of Visual Studio. For this demonstration,
we'll be using Visual Studio Express 2012 for Windows Desktop.
Note
If you already have Visual Studio 2012 installed, you may skip this step.

To install Visual Studio, follow the given steps:


1. Visit http://www.microsoft.com/visualstudio/ and download Visual Studio Express 2012 for
Windows Desktop.
2. After downloading the executable, install the application and proceed to the next step after
restarting your computer.
Choosing your CryENGINE installation type
Now that we have Visual Studio installed, we'll need to download a version of CryENGINE to
develop on.

We have created a stripped-down sample installation for the book, which is recommended for users
who are just starting out with the engine. To download it, see the following Downloading the book's
CryENGINE sample installation section.

If you would rather use another build of CryENGINE, such as the latest Free SDK release, please see
the Using a custom or newer CryENGINE installation section later in this chapter. This section will
cover integrating CryMono on your own.
Downloading the book's CryENGINE sample
installation
For this book, we will be using a custom CryENGINE sample as a base for learning the workings of
the engine. Most exercises in the book depend on this sample; however, the working knowledge you
get from this can be applied to the default CryENGINE Free SDK (available at
http://www.crydev.net).

To download the sample installation, follow these steps:


1. Visit https://github.com/inkdev/CryENGINE-Game-Programming-Sample and click on the
Download ZIP button in order to download a compressed archive containing the sample.
2. Once downloaded, extract the contents of the archive to a folder of your choice. For the sake of
the example, we will be extracting it to C:\Crytek\CryENGINE-Programming-Sample.
What just happened?
You should now have a copy of our sample CryENGINE installation. You can now run and view the
sample content which we will be using for the most part of this book.
Using a custom or newer CryENGINE installation
This section helps out the readers who choose to use custom or newer builds of the engine. If you are
unsure of this process, we recommend reading the Downloading the book's CryENGINE sample
installation section in this chapter.
Verifying that the build is functional
Before starting, you should verify that your version of CryENGINE is functional so that you can use it
for running and creating code based on this book's chapters.
Note
Note that if you are using an older or newer version of the engine, certain chapters may provide
examples and information on changed systems. Keep this in mind, and refer to the sample mentioned
previously for the optimal learning experience.

A good way to check this is by starting the Editor and Launcher applications and checking whether the
engine behaves as expected.
Integrating CryMono (C# support)
If you're interested in using the sample code and chapter contents written with C# in mind, you'll need
to integrate the third-party CryMono plugin into your CryENGINE installation.
Note
Note that CryMono is integrated by default in the sample we created specifically for this book.

To begin integrating CryMono, open the Code folder present in the engine root folder. We'll be
placing the source files here, inside a subfolder called CryMono/.

To download the source code, visit https://github.com/inkdev/CryMono and click on Download Zip
(or Clone in Desktop if you prefer using your Git revision control client).

Once downloaded, copy the contents into the Code/CryMono folder we mentioned earlier. If the
folder does not exist, create it first.

When the files have been successfully moved, your folder structure should look similar to this:

Compiling the CryMono project


Now that we have the CryMono source code, we'll need to compile it.

To start, open Code/CryMono/Solutions/CryMono.sln using Visual Studio.


Note
Make sure to use CryMono.sln and not CryMono Full.sln. The latter is only used when you need to
rebuild the entire Mono runtime, which ships precompiled with the CryMono repository.

Before we compile, we'll need to modify the engine's SSystemGlobalEnvironment struct (this is
exposed using the global gEnv pointer).

To do so, open ISystem.h in the Code/CryEngine/CryCommon/ folder. Find the struct's definition
by searching for the struct SSystemGlobalEnvironment.

Then add the following code to the very end of the struct's members and functions:
struct IMonoScriptSystem*
pMonoScriptSystem;

Note
Modifying interfaces is not recommended if you do not have full engine source, as other engine
modules have been compiled with the default interfaces in mind. However, appending to the end of
this struct is mostly harmless.

Once done, open up the instance of Visual Studio where you opened CryMono.sln and start
compiling.
Note
The automated post-build step in the project should automatically move the compiled files to your
build's Bin32 folder following a successful compilation pass.

To verify that CryMono was compiled successfully, search for CryMono.dll in your Bin32 folder.
Loading and initializing CryMono via the CryGame.dll library
Now that we have the CryMono binaries present in our Bin32 folder, we'll just have to load it during
game startup. This is done via the CryGame project, via the CGameStartup class.

To start, open your CryEngine or CryGame solution file (.sln) present in Code/Solutions/.
Including the CryMono interface folder

Before we modify the game startup code, we'll need to tell the compiler where to find the CryMono
interfaces.

Start by right-clicking on the CryGame project in Visual Studio's Solution Explorer and select
Properties. This should bring up the following CryGame Property Pages window:
Now, click on C/C++ and select General. This will bring up a screen of general compiler settings,
which we'll use to add an additional include folder as shown in the following screenshot:
Now all we have to do is add ..\..\CryMono\MonoDll\Headers to the Additional Include
Directories menu. This will tell the compiler to search CryMono's Headers folder when the
#include macro is used, allowing us to find the CryMono C++ interfaces.

Initializing CryMono at start up

Open GameStartup.h in the CryGame project and add the following to the bottom of the class
declaration:
static HMODULE
m_cryMonoDll;

Then open GameStartup.cpp and add the following before the CGameStartup constructor:
HMODULE CGameStartup::m_cryMonoDll = 0;

Now navigate to the CGameStartup destructor and add the following code:
if(m_cryMonoDll)
{
CryFreeLibrary(m_cryMonoDll);
m_cryMonoDll = 0;
}

Now navigate to the CGameStartup::Init function declaration, and add the following prior to the
REGISTER_COMMAND("g_loadMod", RequestLoadMod,VF_NULL,""); snippet:

m_cryMonoDll = CryLoadLibrary("CryMono.dll");
if(!m_cryMonoDll)
{
CryFatalError("Could not locate CryMono DLL! %i", GetLastError());
return false;
}

auto InitMonoFunc =
(IMonoScriptSystem::TEntryFunction)CryGetProcAddress(m_cryMonoDll,
"InitCryMono");
if(!InitMonoFunc)
{
CryFatalError("Specified CryMono DLL is not valid!");
return false;
}

InitMonoFunc(gEnv->pSystem, m_pFramework);

Now all we have to do is compile CryGame in order to have CryMono loaded and initialized at
startup.
Registering flow nodes

Due to a recent change in the flow system, flow nodes have to be registered at a certain point during
game startup. To make sure that our C# nodes are registered, we'll need to call
IMonoScriptSysetm::RegisterFlownodes from IGame::RegisterGameFlowNodes.

To do this, open Game.cpp and add the following inside the CGame::RegisterGameFlowNodes
function:
GetMonoScriptSystem()->RegisterFlownodes();

Now, after compiling, all managed flow nodes should appear in the Flowgraph Editor.
Exploring the Variety of Random
Documents with Different Content
Mr. Garnett succeeds in giving the quintessence of Tolstoy’s works
and teachings in less than a hundred pages. Like most of the
Russian’s eulogistic biographers, Mr. Garnett has not escaped the
fallacy of exaggerating the moral power that Tolstoy exercised over
the government. To say that the Czar and his ministers “dared not
touch” the outspoken anarchist and heretic “out of dread of Europe
—nay, of Russia,” is to reveal one’s ignorance of the brazen defiance
displayed by Muscovite autocrats in regard to public opinion. As the
Germans put it: “Herr Kossack, schämen Sie sich!” Tolstoy, as a
matter of fact, had helped to check the revolutionary spirit of his
compatriots in a greater degree than the tyrannic persecutions of
Von-Plehve. Had he not appealed time and again to embrace his
doctrine of Non-Resistance? Had he not denounced the revolutionists
as violent prototypes of their hangers? Could the government see
any danger in a man who wrote in The Times during the revolution
of 1905: “To free oneself from the government it is only necessary to
abstain from participating in it and supporting it. Our consciousness
of the law of God demands from us only one thing: moral self-
perfection, i. e., the liberation of oneself from all those weaknesses
and vices which make one the slave of governments and the
participation in their crimes”? Another tragic contradiction of the
restless soul of the anarchist who, despite himself, renders aid to the
despots.
—Alexander S. Kaun.

INTROSPECTION
Chance, by Joseph Conrad. [Doubleday, Page & Company, New York.]

Did you ever take supper in the apartments of a dear bachelor


friend, on a night when the wind howled outside the window, and
the rain beat against the pane? And after the satisfying meal, whose
perfect appointment made you forget all save the luxury of living,
did you retire to the spacious living room, and after accepting an
aromatic Havana, stretch your feet out to the crackling log fire, and
as the smoke from your cigar crawled upward listen to the
philosophical analyses of your cultured host on that marvelously
simple and profoundly complex servant and master of man, the
human mind? Of such an evening is the atmosphere of Chance. Not
academically deep, but deep from the standpoint of a full life and an
active intelligence.
Everyone loves to analyze his fellow creatures. Some do it well,
some do it badly, but we all do it. Conrad does it masterfully. There
doesn’t seem to be a type which holds a mystery for him. The village
pillar; the frail, ill-fated maid; the buxsom housewife; the silent
captain ashore and afloat; the opinionated, retired old gentleman;
the cynical, good-natured man of thirty-five; the flat, tintless fraud.
Into the mental realm of all these he makes expeditions long and
short. His characters live. They mingle good and bad, and, as strong
characters should, weave for themselves a charming story of love,
adventure, trial, and victory, never trite, and always surprising. It is
a tale built of character studies and garnished with odd conjective
philosophy.
Our new acquaintance paused, then added meditatively:
“Queer man. As if it made any difference. Queer man.”
“It’s certainly unwise to admit any sort of responsibility for our actions, whose
consequences we are never able to foresee,” remarked Marlow by way of assent.
“The consequence of his action was that I got a ship,” said the other. “That
could not do much harm,” he added with a laugh which argued a probably
unconscious contempt of general ideas.
But Marlow was not put off. He was patient and reflective. He had been at sea
many years and I verily believe he liked sea-life because upon the whole it is
favourable to reflection. I am speaking of the now nearly vanished sea-life under
sail. To those who may be surprised at the statement I will point out that this life
secured for the mind of him who embraced it the inestimable advantages of
solitude and silence. Marlow had the habit of pursuing general ideas in a peculiar
manner, between jest and earnest.
“Oh, I wouldn’t suggest,” he said, “that your namesake, Mr. Powell, the Shipping
Master, had done you much harm. Such was hardly his intention. And even if it
had been he would not have had the power. He was but a man, and the incapacity
to achieve anything distinctly good or evil is inherent in our earthly condition.
Mediocrity is our mark. And perhaps it’s just as well, since, for the most part, we
cannot be certain of the effect of our actions.”
“I don’t know about the effect,” the other stood up to Marlow manfully. “What
effect did you expect anyhow? I tell you he did something uncommonly kind.”
“He did what he could,” Marlow retorted gently, “and on his own showing that
was not a very great deal. I cannot help thinking that there was some malice in
the way he seized the opportunity to serve you. He managed to make you
uncomfortable. You wanted to go to sea, but he jumped on the chance of
accommodating your desire with a vengeance. I am inclined to think your cheek
alarmed him. And this was an excellent occasion to suppress you altogether. For if
you accepted he was relieved of you with every appearance of humanity, and if
you made objections (after requesting his assistance, mind you) it was open to
him to drop you as a sort of impostor. You might have had to decline that berth for
some very valid reason. From sheer necessity, perhaps. The notice was too
uncommonly short. But under the circumstances you’d have covered yourself with
ignominy.”
Our new friend knocked the ashes out of his pipe.

There is something about Conrad which gives a warm feeling about


the heart. A certain fineness of humor, a certain fullness of
sympathy. He never mixes his similes; they always take the same
tone and the same color. For instance:
I took a piece of cake and went out to bribe the Fyne dog into some sort of self-
control. His sharp, comical yapping was unbearable, like stabs through one’s brain,
and Fyne’s deeply modulated remonstrances abashed the vivacious animal no
more than the deep, patient murmur of the sea abashes a nigger minstrel on a
popular beach. Fyne was beginning to swear at him in low, sepulchral tones when
I appeared. The dog became at once wildly demonstrative, half-strangling himself
in his collar, his eyes and tongue hanging out in the excess of his
uncomprehensible affection for me. This was before he caught sight of the cake in
my hand. A series of vertical springs high up in the air followed, and then, when
he got the cake, he instantly lost his interest in everything else.

No, this illustration is not of Conrad’s finest, but in a homely way it


illustrates a deep sympathy with life, which this strong worker and
writer gives in such bountiful measure in all his literature; and, to
quote an eminent writer, “Literature and Conrad are interchangeable
terms.”
—Henry Blackman Sell.
AN AMERICAN NOVEL
Clark’s Field, by Robert Herrick. [Houghton Mifflin Company, Boston.]

It was but the other day that Mr. Herrick told us what he thought
about the American novel. Those who read the trenchant article
found not only a criticism of our machine-like fictionists and their
half-baked methods, but also a sturdy conviction that the day was
surely approaching when we should demand and receive a truer and
more vital presentation of our national life in our literature. And if Mr.
Herrick, long since tagged an apostate to our national creed of
turgid optimism, believes this, we can safely trust to his cool vision
and be glad that the tide has turned. The rich human material lies
ready at hand, and the audience is fast growing intelligent and
discriminating. As yet, however, “we await the writer or writers keen
enough to perceive the opportunity, powerful enough to interest the
public in what it has been unwilling to heed, and of course endowed
with sufficient insight to comprehend our big new world.”
Whatever may be said for our other novelists, surely not one of
them can exhibit a mingling of the powers of insight and artistry
equal to that of Robert Herrick. His work from the beginning has
been an honest and incisive attempt to interpret our life in its
peculiar and universal aspects, in spite of the clamor of the public at
his tearing away of the veils of sentimentality and prudery. The
errors into which he fell were due to the ardor of his spiritual vision,
which drove him into an impassioned taking of sides. He has
emerged from that stage into what his critics call his “old manner,” a
more objective treatment of his material. But in the process of
change something was lost—the element of flaming intensity which
gave the reader a similar capacity to feel. In this latest performance,
as well as in One Woman’s Life, he is always cool, clear-sighted, and
admirably efficient in the task he sets himself; but never passionate.
On the contrary, despite the pervading atmosphere of earnestness,
he often assumes a playful satiric tone, mordant but not bitter,—a
method well suited to his matter and purpose.
Clark’s Field tells the story of the influence of property upon the
human beings who own it and hope to reap gold from its increasing
value. All that is left of the great Clark farm is a fifty-acre field in a
growing New England town, bequeathed jointly to the two brothers,
Edward and Samuel, the former of whom has emigrated to the West
and wholly disappeared from the ken of his relatives. So at first the
tale is of the baleful influence of expectation delayed again and
again: in the case of Samuel who cannot sell the land because of his
brother’s half-interest, and who in consequence sinks into a sodden
inertia; in his son’s disintegration into a lazy and drunken “Vet”; in
his sister Addie’s sordid and pathetic sally into life resulting in the
birth of another human being destined to taste of the fruit of their
tree and to find it, one day, very bitter.
The greater portion of the novel, then, deals with the influence of
the realized wealth upon the unformed, colorless little girl, Adelle,
the last of the Clarks. It is a masterly piece of work—the gradual
development of the pale rooming-house drudge into the silly and
insolent woman of fashion, and slowly but certainly into a human
being with a soul. Less promising stuff for a heroine neither fate nor
Mr. Herrick could have chosen; the latter delights in ample
admissions throughout the book of Adelle’s lack of beauty, brains,
and charm. Yet he is always sufficiently temperate to escape the
danger of caricature. Adelle is a convincing figure. The slow dawning
upon her consciousness of the power of money, her “magic lamp”
which she need only rub to gratify any desire, is followed by swift
and constant use of the new weapon. It brings her a fresh
assurance, a few scatter-brained friends, some stylish clothes, and,
at length, a callow youth for a husband. It never brings her contact
with a real person or friendship with a stimulating individual; nor can
it save her from the failure of her marriage, nor compensate her for
the death of her little boy.
Adelle’s story, then, turns out to be what we least expected it,—a
hopeful one. It leaves us with almost a sense of security, for is she
not one of those who can “derive good from her mistakes,” and
therefore “the safest sort of human being to raise in this garden plot
of souls”? And although we are still saddled with “that absurd code
of inheritance and property rights that the Anglo-Saxon peoples have
preserved from their ancient tribal days in the gloomy forests of the
lower Rhine,” the situation is not without hope, since it has yielded a
man of the judge’s type, in whom the beauty of a past idealism is
coupled with the freshness of a new vision of responsibility.
To hark back to the recent article in The Yale Review, we believe
that Mr. Herrick himself has given us an American novel—thoroughly
American in situation, character, treatment, and even in philosophy.
We, as a people, are beginning to suspect our boastful optimism as
we become aware of the sordidness beneath the fair exterior of our
glorious civilization. And in accordance with the western
temperament, the awareness of wrong leads not to bitter cynicism
but to sturdy efforts toward amelioration. Such, then, is the spirit of
Clark’s Field—a hopefulness in the power of courage, and labor, and
a growing sense of social responsibility to move mounds that seem
to have become immovable mountains through a tenacious fostering
of tradition.
—Marguerite Swawite.

THE “SAVAGE” PAINTERS


Cubists and Post Impressionism, by Arthur Jerome Eddy. [A. C. McClurg and
Company, Chicago.]

An attempt to explain the new schools in art “in plain, every-day


terms.” An earnest appeal for tolerance in regard to seemingly
perversive forms. The book has a wealth of material and numerous
quotations from Picasso, Picabia, Cézanne, Matisse, and others,
considerably more interesting and instructive than Mr. Eddy’s own
truisms. Although the author repeatedly resents any accusation in
his adherence to Cubism, the reader gets the impression that the
Cubistic movement has received a more thorough and fair treatment
than the other new schools. Of the sixty-nine reproductions of Post-
Impressionistic paintings and sculpture, only five represent the
Futurists. Idillon Redon, who gave us the greater delight in last
year’s International Exhibition, is totally ignored. Among the Self-
Portraits that of Matisse is sorely missed—a work that helps greatly
in understanding the quaint painter of the Woman in Red Madras.
Whether Mr. Eddy will succeed in convincing the prejudiced
conservatives is doubtful; but in those who have appreciated the
daring attempts of the new schools his book will arouse a renewed
longing for the foreign “savages” and an ardent hope for their
further invasions in our “sane and healthful” galleries.

THE SAME BOOK FROM ANOTHER


STANDPOINT
(With apologies to the author of Tender Buttons)

Oil and Water

Enough water is plenty and more, more is almost plenty enough.


Enthusiastically hurting sad size, such size, same size slighter, same
splendor simpler, same sore sounder. Glazed glitter, eddy eddies
discover discovered discoveries, discover Mediterranean sea, large
print large. Small print small, picked plumes painters and penmen,
pretty pieces Picasso, Picabia plus Plato, Hegel, Cézanne, Kandinsky,
more plenty more, small print single sign of oil supposing shattering
scatter and scattering certainly splendidly. Suppose oil surrounded
with watery sauce, suppose spare solely inside, suppose the rest.
—A. S. K.
SENTENCE REVIEWS
(Inclusion in this category does not preclude a more extended notice.)

The Return of the Prodigal, by May Sinclair. [The Macmillan


Company, New York.] Eight short stories, all subtly done. The
Cosmopolitan proves beyond a doubt that women, or at least the
thousandth woman, is capable of a disinterested love of life and of
nature. It is a big story and a very finished one.

John Addington Symonds, by Van Wyck Brooks. [Mitchell


Kennerley, New York.] A biography of rare charm and distinction in
which Mr. Brooks builds a clear picture of Symonds’s life as it is
related to our day.

The Sister of the Wind, and Other Poems, by Grace Fallow Norton.
[Houghton Mifflin Company, Boston.] Some of this will disappoint
lovers of Little Gray Songs From St. Joseph’s—in fact, none of the
poems here has such extraordinary poignancy. But there are many
that are worth knowing.

The Continental Drama of Today, by Barrett H. Clark. [Henry Holt


and Company, New York.] Invaluable to the student of continental
drama. A half dozen pages of critical analysis devoted to each of
thirty modern playwrights.

Stories and Poems and Other Uncollected Writing, by Bret Harte,


compiled by Charles Meeker Kozlay, with an introductory account of
Harte’s early contributions to the California press. [Houghton Mifflin
Company, Boston.] A very beautiful Riverside Press volume with
photogravures.

I Should Say So, by James Montgomery Flagg. [George H. Doran


Company, New York.] Yes, he is silly; but Mr. Flagg is so nicely
naughty and so naughtily human that you simply must laugh.

Broken Music, by Phyllis Bottome. [Houghton Mifflin Company,


Boston.] Charming and well done. The story of a young French boy’s
struggle to create music, and his success after the tradition of a
“broken heart” had been fulfilled.

The Old Game, by Samuel G. Blythe. [George H. Doran Company,


New York.] A temperance tract by a man who knows; minus
sanctimoniousness and plus a punch.

Dramatic Portaits, by P. P. Howe. [Mitchell Kennerley, New York.]


One man’s opinion of the modern dramatists. A “shelf book” for
occasional reference.

Billy and Hans, by W. J. Stillman. [Thomas B. Mosher, Portland,


Maine.] A charming story of the most temperamental of pets, the
squirrel. A Mosher book bound in a cover dark enough to stand
wear. A distinct relief from the Alice blue and pale old rose of Mr.
Mosher’s more delicate periods.

Billy, by Maud Thornhill Porter. [Thomas B. Mosher, Portland,


Maine.] The true story of a canary bird. One of those little
documents written for the enjoyment of a family circle and read on
winter evenings. Bright, human, and personal.

The Social Significance of the Modern Drama, by Emma Goldman.


[Richard G. Badger, Boston.] Miss Goldman discusses Ibsen,
Strindberg, Sudermann, Hauptmann, Wedekind, Maeterlinck,
Rostand, Brieux, Shaw, Galsworthy, Stanley Houghton, Githa
Sowerby, Yeats, Lenox Robinson, T. G. Murray, Tolstoy, Tchekhof,
Gorki, and Andreyev, outlining the plays of each and emphasizing
their relation to the problem of modern society. She is the interpreter
here rather than the propagandist, and her interpretations are not
academic discourses. They give you the plays partly by quotation,
partly in crisp narrative, and they are not the kind of interpretations
that make the authors wish they had never written plays. Whether
you like Emma Goldman or not, you will get a more compact and
comprehensive working-knowledge of the modern drama from her
book than from any other recent compilation we know of.

DEDICATED
TO THAT HISTORIC MOMENT
WHEN
THEODORE ROOSEVELT
THE GREAT AMERICAN CHANTECLIER
SHALL AWAKE
TO FIND
THE SUN HIGH IN HEAVEN
AND THAT
HE
HAD CROWED NOT
A CHANGE OF PRICE
With the August issue, the sixth month of our very flourishing
life, we have decided to make one important change in The Little
Review. We are reducing the subscription price to $1.50 a year,
and that of single copies to 15 cents. There will be no change in
size or appearance. Those whose subscriptions have already been
paid on the former basis will be continued for another half year.
Our reason for doing so is this: We have discovered that a great
many of the people whom we wish to reach cannot afford to pay
$2.50 a year for a magazine. It happens that we are very
emphatic about wanting these people in our audience, and we
believe they are as sincerely interested in The Little Review as we
are stimulated by having them among our readers. Therefore we
are going to become more accessible.
With characteristic lack of modesty we wish also to make
another announcement. Our success so far has exceeded even
our own hopes—and it may be remembered that they were rather
high. As for our practical friends who warned us against starting a
literary magazine, even their dark prophecies of debt and a
speedy demise have had to dissolve before our statements that
we have paid our bills with what The Little Review has earned in
its six months of existence, that we are free of debt, that we even
have money in the bank, and a subscription list that acts like a live
thing!
But we want more! We want everyone who might like The Little
Review to hear about it. Therefore:
We want interested readers to be interested to the point of
bringing in others. We want intelligent spokesmen in every city in
the country to tell people about the magazine and to get their
subscriptions. Anyone sending in three yearly subscriptions will be
given a year’s subscription free. Or he may make a commission of
33 1-3 per cent on every subscription he gets. College girls ought
to find the field a very workable one during their summer
vacations. Every ten subscriptions will mean $5.00 to the
energetic young woman who pursues her friends with accounts of
The Little Review’s value and charm.
We are trying to make a magazine that is unacademic,
enthusiastic, appreciative and critical in the real sense; that seeks
and emphasizes the beauty which is truth and insists upon a
larger naturalness and a nobler seriousness in art and in life. We
know there is room for such a magazine and we ask you to help
us in advertising it.
THE COMPLETE WORKS OF
WALT WHITMAN
[AUTHORIZED BY THE EXECUTORS]

COMPLETE LEAVES OF GRASS

This edition contains the text and arrangement preferred by Walt Whitman. All
other editions of “Leaves of Grass” are imperfect in this respect and incomplete.
There are one hundred and six poems in “Complete Leaves of Grass” not
contained in any other edition.
“Complete Leaves of Grass” may be had in the following styles:

INDIA PAPER EDITION

Bound in full limp dark green leather; gilt edges. With photogravure frontispiece
$2.50 net

LIBRARY EDITION

Bound in cloth; gilt top; uncut edges. With portrait frontispiece


$1.50 net

POPULAR EDITION

Bound in cloth. With portrait frontispiece


$1.00 net

POPULAR EDITION

Bound in paper. With portrait frontispiece


$0.60 net

COMPLETE PROSE

This is the only complete collection of Whitman’s prose writings. It is particularly


valuable to students of the poet, as it contains much biographical and other
material not to be found elsewhere. “Complete Prose” may be had in the
following styles:
LIBRARY EDITION

Bound in cloth; gilt top; uncut edges. With three photogravure illustrations
$1.75 net

POPULAR EDITION

Bound in cloth. With photogravure frontispiece


$1.25 net

WITH WALT WHITMAN IN CAMDEN

BY HORACE TRAUBEL

“The most truthful biography in the language.” To be complete in eight volumes,


of which three are now ready.
Large octavo, gilt tops, uncut edges, and fully illustrated
$3.00 net each

WALT WHITMAN: A Critical Study

BY BASIL DE SELINCOURT

The latest book on Whitman (April, 1914). A study of unusual penetration.


Cloth; gilt top; uncut edges. With photogravure frontispiece
$2.50 net

MITCHELL KENNERLEY, PUBLISHER


32 West 58th Street NEW YORK
Vol. IV · PRICE 15 CENTS · No. IV

JULY, 1914

Poems to be Chanted Nicholas Vachel Lindsay


The Fireman’s Ball—The Santa Fé Trail, A Humoresque—
The Black Hawk War of the Artists.

Poems Richard Butler Glaenzer


From a Club Window—Rodin—Star Magic.

Sitting Blind by the Sea Ruth McEnery Stuart


Roumanian Poems Maurice Aisen
We Want Land—Peasant Love Songs I-VII—The
Conscript I-IV.

Comments and Reviews


A French Poet on Tradition—Mr. Lindsay on “Primitive
Singing”—Doina—Reviews—Notes.

543 Cass Street, Chicago


Annual Subscription $1.50
To Be Published August Fifteenth

THE LAY ANTHONY: A ROMANCE


By Joseph Hergsheimer $1.20 net

MARY JANE’S PA: A PLAY


By Edith Ellis $1.00 net

THE THEATRE OF MAX REINHARDT


By Huntly Carter. Illustrated $2.50 net

GRANITE: A NOVEL
By John Trevena $1.35 net
ADVENTURES WHILE PREACHING THE
GOSPEL OF BEAUTY
By Nicholas Vachel Lindsay $1.00 net

MYLADY’S BOOK: POEMS


By Gerald Gould $1.00 net
THE FORUM
THE LEADING AMERICAN REVIEW AND MAGAZINE

¶ There has been no question as to the place of The Forum in American letters
and its value to American life. Addressing perhaps the most intelligent public in
the world, and throughout the world, it has opened its pages to the free
discussion of all vital topics.
¶ The Forum has published, and will continue to publish, the best work that can
be secured, whether the author be world-famous or entirely obscure. More and
more, it will develop the policy of diversity of interest, so that it will appeal, not
only to the expert, but to every intelligent reader. It will touch every side of
experience, and it will print the best essays and articles, the best short stories
and plays, and the most significant poetry produced in the country today.
Three Months’ Trial Subscription, 50 Cents
25 Cents a Copy
$2.50 a Year

MITCHELL KENNERLEY PUBLISHER


32 West Fifty-Eight Street New York
The Mosher Books
LATEST ANNOUNCEMENTS

Billy: The True Story of a Canary Bird


By Maud Thornhill Porter
950 copies, Fcap 8vo. $1.00 net

This pathetic little story was first issued by Mr. Mosher in a privately printed
edition of 500 copies and was practically sold out before January 1, 1913. The
late Dr. Weir Mitchell in a letter to the owner of the copyright said among other
things: “Certainly no more beautiful piece of English has been printed of late
years.” And again: “May I ask if this lady did not leave other literary products?
The one you print is so unusual in style and quality and imagination that after I
read it I felt convinced there must be other matter of like character.”

II

Billy and Hans: My Squirrel Friends. A True History


By W. J. Stillman
950 copies, Fcap 8vo. 75 cents net

Reprinted from the revised London edition of 1907 by kind permission of Mrs.
W. J. Stillman.

III

Books and the Quiet Life: Being Some Pages from The Private
Papers of Henry Ryecroft

By George Gissing
950 copies, Fcap 8vo. 75 cents net

To the lover of what may be called spiritual autobiography, perhaps no other


book in recent English literature appeals with so potent a charm as “The Private
Papers of Henry Ryecroft.” It is the highest expression of Gissing’s genius—a
book that deserves a place on the same shelf with the Journals of De Guérin
and Amiel. For the present publication, the numerous passages of the “Papers”
relating to books and reading have been brought together and given an external
setting appropriate to their exquisite literary flavor.

Mr. Mosher also begs to state that the following new editions are now ready:

Under a Fool’s Cap: Songs


By Daniel Henry Holmes
900 copies, Fcap 8vo, old-rose boards. $1.25 net

For an Appreciation of this book read Mr. Larned’s article in the February
Century.

II

Amphora: A Collection of Prose and Verse chosen by the Editor


of The Bibelot
925 copies, Fcap 8vo, old-style ribbed boards. $1.75 net

The Forum for January, in an Appreciation by Mr. Richard Le Gallienne, pays


tribute to this book in a most convincing manner.
All books sent postpaid on receipt of price net.

THOMAS B. MOSHER Portland, Maine


Nancy The Joyous By Edith Stow

“Here, at the bend of the road I stop to wave, and to


play you a gay little snatch of tune on my pipes, like
any other true gypsy.”—Nancy.
Nancy the Joyous is a simple little story—simple and clean and true—like a ray
of sunshine in a bleak corner; like a wind-and-rain-and-sun-bathed flower on a
steep mountainside. It is a story of sentiment, but without weak sentimentality,
without tears, a kind of “salt-of-the-earth” optimism.
¶ Brisk with the air of the Tennessee mountains, where Nancy finds the “true
values of life,” and warm with the joy of living and loving and laughing, here is a
“character” story—a “heart interest” story—a “local color” story of a picturesque
locality—and yet a straightforward, unpretentious romance whose charm is
based on more than mere uniqueness of characters or setting. Nancy is buoyant
with life itself. Nancy is a real girl, a likable girl, and the love she inspires in her
fellow creatures of the story is a real affection that shines outside the pages of
the book and seizes hold of the heart of the reader.
A delightful book to read. An ideal book to give to a friend.
The make-up of the book is in keeping with the story. A frontispiece in
cheerful colors of Nancy herself; each chapter has a specially drawn initial;
each cheery letter has a full-width pictorial heading. Bound in extra cloth;
decorated cover, with ornaments in gold. Pictorial jacket in full color and
gold. 12mo. $1.00 net.

Publishers Reilly & Britton Chicago


A new novel by
Robert Herrick

CLARK’S FIELD
“In this virile book, Mr. Herrick studies the part played by ‘unearned
increment’ in the life of a girl. A notable contribution to American realistic
fiction.”

“Few will dispute the statement that Robert Herrick is today the most significant
of our novelists. He is always sincere, and he is always worth our while....
Clark’s Field is packed with meaning.”—New York Tribune.
“The book is one that is worth reading and worth thinking about as a study of
American life and as an extremely interesting depiction of the development of a
human soul.”—New York Times.
$1.40 net. Postage extra.

Boston HOUGHTON MIFFLIN COMPANY New York


The Mason & Hamlin is the highest priced piano in the world. But spread the
cost over the long years of service which you may confidently expect of it and
your investment is one of proved economy.
Yet above every consideration of cost is the supreme satisfaction of owning the
piano which is the final choice of the world’s greatest artists.

Mason & Hamlin Pianos are on


sale only at the warerooms of the
Cable Piano Company
WABASH AND JACKSON
THE DRAMA
A QUARTERLY DEVOTED TO THE DEVELOPMENT OF A WIDE AND INTELLIGENT INTEREST IN DRAMA
LITERATURE

736 MARQUETTE BLDG., CHICAGO :: $3.00 PER YEAR,


75 CENTS PER COPY

Recent numbers have contained the following complete plays:


Tagore’s “The King of the Dark Chamber”
Dormay’s “The Other Danger”
Giacosa’s “The Stronger”
Andreyev’s “The Pretty Sabine Woman”
All phases of drama and of the theatre are regularly and freely discussed,
important new books are reviewed at length, and occasional news notes from
foreign art centers are printed.
Address The Little Review

917 Fine Arts Building :: Chicago

We want circulation solicitors in every city in the


country. Liberal commissions. For particulars address
William Saphier, circulation manager, The Little Review,
917 Fine Arts Building, Chicago.

Beginning in August, $1.50 a year; 15 cents a copy


Welcome to Our Bookstore - The Ultimate Destination for Book Lovers
Are you passionate about books and eager to explore new worlds of
knowledge? At our website, we offer a vast collection of books that
cater to every interest and age group. From classic literature to
specialized publications, self-help books, and children’s stories, we
have it all! Each book is a gateway to new adventures, helping you
expand your knowledge and nourish your soul
Experience Convenient and Enjoyable Book Shopping Our website is more
than just an online bookstore—it’s a bridge connecting readers to the
timeless values of culture and wisdom. With a sleek and user-friendly
interface and a smart search system, you can find your favorite books
quickly and easily. Enjoy special promotions, fast home delivery, and
a seamless shopping experience that saves you time and enhances your
love for reading.
Let us accompany you on the journey of exploring knowledge and
personal growth!

ebookgate.com

You might also like