Friday, June 24, 2016

Hamlet on the Holodeck

It's easy to imagine a future VR/AI where you can relive and interact with the familiar worlds of classic fiction.

It's not so easy to point to any real milestones that have been achieved (except insofar as the classic fiction you're aiming for resembles Grand Theft Auto).

I want to look back across the history of videogames, and retrace with baby steps some overlooked models that might actually serve useful functions when applied specifically to the challenge of simulating James Joyce's Ulysses.

We might begin with the geology of Dublin, Ireland, where his story takes place.  .

The significant neighborhoods of the city can be abstracted into a classic hexmap.

Every straightline path taken by any character can be measured, and the required traveltime simulated.

The Hades carriage-ride could be parodied using the 'Oregon Trail' model.

Since HTML5 now has built-in sprite animation, we can divide the book into scenes and re-enact the characters' relative movements.

Bloom looks quite a bit like Donkey Kong's Mario, traversing Dublin streets.

There are many toolkits for animated storytelling.

Doom was a breakthru in 3D graphics, and mocking up Dublin even in wireframe graphics could be educational.

Minecraft lets architecture be rendered at any scale and explored.

Second Life can approach photorealism in a giant simulacrum of 1904 Dublin.

Ulysses chapter three is being rendered with the Unreal engine.

Shifting gears, cellular automata can capture a very simple model of character dynamics.

Dublin pedestrians can be treated as idealised traffic.

Some of their abstract interactions might even be symbolised with chess pieces.

AI has a long history with path-planning algorithms.

A detailed map might be crowdsourced.

Shifting gears again, we could take some very primitive steps towards emulating Joyce's prose.

We can easily generate simplified Joycean interior monologs.

We can take on the uncanny valley of characters' facial expressions.

We can render the voices of Sirens via MIDI with appropriate timbres

We can keep one eye on the growing power of emoji to capture critical events in a handful of signs.

We can rethink Bloom's 'odyssey' as a sequence of puzzles

Sunday, May 22, 2016


(could each episode get its own simulation style?) [cf]



unknown/ unknowable


contemporary photographs
streetview (walkthru)

trams and trains



algorithmic generation
doors and windows

3d modeling







home address

weight, height




cellular automata


Friday, May 20, 2016


Where and when?

The primary argument for Dublin 1904 is that Joyce crystallised it across countless dimensions, making the unpacking of his crystal into a game that never seems to grow stale.

1900 NYC in StreetView

How many novels take place in:
Saigon: buildings, typology

1920s Berlin Project community in Second Life

NYC Hotel Chelsea [SL?]

contemporary Lisbon, Portugal [2ndLife]

contemporary San Francisco [Cities: Skylines]

Luxembourg City in Second Life

Unity3D 'Tokyo'

GTA NYC, Miami; London 1969

videogames by country of setting: [wiki] [Ireland] (mostly sports)

Irish coast 1923
present-day Doolin
present-day Castle Malloy

Tuesday, May 17, 2016

Ontology of collectibles

fanatic fans create and collect every sort of auxiliary media tribute

book collecting
biography (author's own library rebuilt)
reference: maps
books mentioned re characters' libraries/reading
book fetishism: jewelry, tshirts, cover art, shelfies





ashtrays, mugs

celebrity lookalikes
as kids
as elders

fan fiction (prequels, sequels, alternate timelines, lacunae)

model railroad scales
salt/pepper, spoons, mugs
dolls (costumes)
action figures (posable)
statues (garden gnomes)

baseball cards
mappings to other casts (movie posters)
other genres: western, scifi, horror, reality, crime

charmbracelet charms



plot turns

lyric parodies

Sunday, May 15, 2016

Topography and geology

Topographical data should be available, and just letting people wander over simulated hills and valleys might be educational. (How do you make subtle slopes obvious?)  Maybe the 1909 map could be layered onto it. (Is there some toolkit that makes this easy?)

The evolution of the underlying geology might also be of interest.

U19: "He capered before them down towards the fortyfoot hole, fluttering his winglike hands, leaping nimbly, Mercury's hat quivering in the fresh wind that bore back to them his brief birdsweet cries."

U93: "The carriage climbed more slowly the hill of Rutland square."

U168: "Hidden under wild ferns on Howth. Below us bay sleeping sky... High on Ben Howth"

U236: "John Wyse Nolan, lagging behind, reading the list, came after them quickly down Cork hill."

U265: "Slower the mare went up the hill by the Rotunda,"

U328: "Tarbarrels and bonfires were lighted along the coastline of the four seas on the summits of the Hill of Howth, Three Rock Mountain, Sugarloaf, Bray Head, the mountains of Mourne, the Galtees, the Ox and Donegal and Sperrin peaks, the Nagles and the Bograghs, the Connemara hills, the reeks of M' Gillicuddy, Slieve Aughty, Slieve Bernagh and Slieve Bloom."

U624: "From Roundwood reservoir in county Wicklow of a cubic capacity of 2,400 million gallons, percolating through a subterranean aqueduct of filtre mains of single and double pipeage constructed at an initial plant cost of £ 5 per linear yard by way of the Dargle, Rathdown, Glen of the Downs and Callowhill to the 26 acre reservoir at Stillorgan, a distance of 22 statute miles, and thence, through a system of relieving tanks, by a gradient of 250 feet to the city boundary at Eustace bridge, upper Leeson street, though from prolonged summer drouth and daily supply of 12 1/2 million gallons the water had fallen below the sill of the overflow weir for which reason the borough surveyor and waterworks engineer, Mr Spencer Harty, C. E., on the instructions of the waterworks committee had prohibited the use of municipal water for purposes other than those of consumption (envisaging the possibility of recourse being had to the impotable water of the Grand and Royal canals as in 1893) particularly as the South Dublin Guardians, notwithstanding their ration of 15 gallons per day per pauper supplied through a 6 inch meter had been convicted of a wastage of 20,000 gallons per night by a reading of their meter on the affirmation of the law agent of the corporation, Mr Ignatius Rice, solicitor, thereby acting to the detriment of another section of the public, selfsupporting taxpayers, solvent, sound."

Saturday, May 14, 2016

Nature Census

Someday you'll be able to type in "Dublin Ireland 16 June 1904" at a website and get a detailed inventory of likely species of plant and animal that could have been found there then.

Ulysses is wildlife-poor: a spiderweb, two flies, a moth, gulls, ferns...

A similar database could track people in places over time. Ireland was pretty advanced to take detailed censuses, with names and addresses and other biographical data, in 1901 and 1911.

Older times have to be estimated algorithmically.

A SimCity-like algorithm can guess neighborhoods past growth.

Thursday, May 12, 2016


paper dolls

model railroad scales

barbie scale

changeable clothes


Tuesday, May 10, 2016


This hexmap requires six-directional navigation, but pretty accurately captures spatial relationships.  It could be the reference board for a diice-rolling D&D style game. [more]

CIA boardgames

Game of Life


Monday, April 25, 2016

Penn & Teller's Desert Bus

The world's worst videogame provides the lowest initial bar to scale in simulating Ulysses.

"The objective of the game is to drive a bus from Tucson, Arizona to Las Vegas, Nevada in real time at a maximum speed of 45 MPH. The feat requires eight hours of continuous play to complete, since the game cannot be paused... The bus contains no passengers, there is little scenery aside from an occasional rock or bus stop sign, and there is no traffic. The road between Tucson and Las Vegas is completely straight." [wiki] [Java port]

Let the viewer be a pedestrian and the view be an unchanging street scene. Let them choose any startingpoint-and-destination among the book's many paths, and decide when to move and when to stop. Keep track of progress and end the game when they've 'walked' as far as their chosen path demands.

Variants: Ride in a carriage, a train, or a tram. Include paths deduced for characters between episodes. Add destinations like Mullingar or Clongowes.

Complications: Add a graphic for cross street intersections that appears at appropriate times, and require the character to 'turn'. Represent different street widths and building heights.

(If someone wants to do this, it would be nice if the data files are in a format that can be repurposed for more advanced sims.)

gameplay starts at 3:53

Wednesday, April 20, 2016

Oregon Trail

Lots of text-based decisions about your path and progress, consequences like death if you don't maintain provisions. Track progress on map. Option for multiple characters in party.

[HTML5? port]

Simplest startingplace is probably the Hades carriage-ride with four passengers and a driver and horse.

"You have perished of inanition."

Bet on horserace?

Man in macintosh passes

Tuesday, April 19, 2016


strength/stamina/agility/intellect/perception: it should be interesting to differentiate the ulysses cast this way
instead of outfitting ships they could provision their pockets?

Sunday, April 17, 2016

HTML5 animation

this category started with the whimsical notion that bloom's travels could be illustrated in 8-bit DonkeyKong style, which led to the realisation that HTML5 offers a built-in toolkit for simple sprite animations, moving characters around an x-y grid.

Bloom's (and to some extent Stephen's) paths are well-known, so simple mock-ups were easy to generate, but their detailed interactions are much subtler and it quickly becomes clear that treating them respectfully will require more detailed 'cut scenes' with much more 'theatrical' staging.

html5 has enough complexities to explore and master that it's hard to foresee what will eventually be possible.

for now, i'm thinking every human interaction that joyce describes in any detail deserves a custom 'stage' with the goal of capturing some sense of joyce's artistic intent.

the first priority is to list the sequence of events, breaking down paths into straight line segments and making sure 'instantaneous' effects are actually allowed a momentary gap so the direction of causality is clear.

joyce hides lots of little clues that help trace paths in detail.

pauses should usually include some kind of jiggling to show the character is alive. speaking probably deserves at least chin-jiggling.

characters' x-y paths can be broken down into 100 segments each, with a duration setting for the whole.

their depictions can be freely changed along the way using a delicate (and unintuitive?) technology called 'sprite sheets'. editor

or wandering rocks like:

PARADISE - A contemporary interpretation of The Garden of Earthly Delights from STUDIO SMACK on Vimeo.

Friday, April 15, 2016

Donkey Kong

Is there any point to putting a little 8-bit Bloom walking sideways across Dublin? Eating sandwiches (and flirting?) for refreshment, dodging trams and apes throwing biscuit tins?

Could his route be emulated in 2.5-D?

or: a cutaway view of the 7 eccles house w/kitchen in basement and molly in 1st floor bedroom, outhouse in back garden (there's no reason the scale can't be as accurate as we know how)

and switch to some kind of streetview for his butcher trip, and then for his postoffice trip


what the heck, let's just do the whole thang:

Thursday, April 14, 2016


bloom avoiding streetcars?

"BLOOM (Halts erect stung by a spasm.) Ow.
(He looks round, darts forward suddenly. Through rising fog a dragon sandstrewer, travelling at caution, slews heavily down upon him, its huge red headlight winking, its trolley hissing on the wire. The motorman bangs his footgong.)
THE GONG Bang Bang Bla Bak Blud Bugg Bloo.
(The brake cracks violently. Bloom, raising a policeman's whitegloved hand, blunders stifflegged, out of the track. The motorman thrown forward, pugnosed, on the guidewheel, yells as he slides past over chains and keys.)
THE MOTORMAN Hey, shitbreeches, are you doing the hat trick?
(Bloom trickleaps to the curbstone and halts again. He brushes a mudflake from his cheek with a parcelled hand.)
BLOOM No thoroughfare. Close shave that but cured the stitch. Must take up Sandow's exercises again. On the hands down. Insure against street accident too. The Providential. (He feels his trouser pocket.) Poor mamma's panacea. Heel easily catch in track or bootlace in a cog. Day the wheel of the black Maria, peeled off my shoe at Leonard's corner. Third time is the charm. Shoe trick. Insolent driver. I ought to report him."

Trams and trains

dublin's complex network of trams and trains would take a lot of research to get right but would flesh out lots of hints about characters' movements

and the animation could be quite simple [demo]

traffic sim

modern ireland trains sim

Wednesday, April 13, 2016


collect all characters

items: potato, key, bike


speed, accuracy, evasiveness
effort, experience

friendship, affection


bloom triumphs

"A major subplot of each game is to defeat a criminal organization trying to take over the world through the misuse of Pokémon"

Tuesday, April 12, 2016

Animated storytelling

there's lots of simple apps that let kids create animated stories

joyce has filled episode one with minute stage directions that we're honor-bound to honor

Monday, April 11, 2016

September 12tth

A little farfetched (or not?) but imagine a game where the British assassinate Irish nationalists, in the process inspiring two new nationalists for each one killed?

Sunday, April 10, 2016


Before Doom there were partial implementations including Castle Wolfenstein [survey]

Choosing a 3D game engine to attempt will take research.  Dublin's streets are not all at right angles, and the sky is almost always visible.

Wireframe 3D might be more effective for the first try. Buildings would need basic dimensions in addition to streets and sidewalks.[typology of buildings] The census form 'House and Building Return (Form B1)' includes a count of windows in front.

there must have been open spaces: parks, rivers, vacant lots? calculating the view

boiling it down to a handful of standard blocks

interactive Flash demo

Friday, April 8, 2016

Emotional Street Fighter

random pedestrian interactions could be handled by Street-Fighter-like AI

instead of blows, each would have a menu of conversational gambits, including sharing gossip, trading compliments for favors, trying to end conversations quickly

visualise a panorama of dublin's streets with a full complement of pedestrians where every meeting is handled this way

Tuesday, April 5, 2016


could a very lo-res but broad Dublin map be laid out?

maybe one voxel per building?

voxel Paris

Saturday, April 2, 2016

Restaurant Empire


ulysses depicts dozens of ways that food and drink were sold

gamify these, to clarify the economics

- borrow money
- hire location
- decorate
- set menu
- hire employees
- advertise
- count profits
- move on up


starting at the very bottom:

Banbury cakes
Simnel cakes
cabman's shelter
north city dining rooms
Red Bank

Wednesday, March 30, 2016

Civilization VI

This 12min overview (narrated by Yorkshireman Sean Bean) discusses the technological evolution of a city, and threats from invaders, but I don't think it lets you play from the pov of a rebellious colony. (Teddy Roosevelt makes a cameo c1904)

Urban Empire


Friday, March 25, 2016

Second Life

The big problem here is monthly rental charges for an area big enough to map most of Dublin. If those can be guaranteed, the creative labor should be crowdsourceable.

that's 7 eccles in the distance, the tower in the foreground:

Creating all the characters should be fun.

Bloom's house will be full of detailed furniture and stuff like products in labelled packages.

Sunday, March 20, 2016

Unreal engine

The high resolution of this engine has the unfortunate side-effect that every detail takes much, much longer for the artist to get right.

InUlysses Game Preview from Eoghan Kidney on Vimeo.

The interactivity is minimal(cf 'Dinner Date')

Saturday, February 20, 2016

Cellular automata

The most conspicuous recurring motive in Ulysses is the urge for a drink, which can only be filled at one of the many, many drinking establishments in Dublin.  One needs money, or friends one can impose on.

A simple model could let thirsty characters wander from bar to bar by very simple rules.

- wander home after reaching preset max
- go on random bender
- get in fights when drunk

Unrelated themes to explore:
- spotting macintosh
- avoiding Boylan
- flirting, pseudonym
- seeking/avoiding law
- tempting females

promising parallel projects

Wednesday, February 17, 2016

Traffic maps

Since we know who lived where, can we experiment with varying average-daily-travel graphs, and see how much foot traffic and/or carriage traffic would be generated and where?

There are lots of unnamed characters-- can we calculate how close they probably are to their homes?

How extraordinary is Patsy Dignam's trek to the butcher's?

How common are Bloom's neighborhood convenience shops?

Monday, February 15, 2016


the pieces offer faint metaphors for the characters:

Bloom = king
Molly = queen

Boylan = black knight

Conmee = white bishop?

pawns = passersby

Tower = rook?

it might be fun to create mini-dramas like knight threatens queen

Friday, February 12, 2016

SMASS et al

SMASS is a PROLOG agent-sim

eg: "Each actor tries to find a neighbour who is physically weaker, and to take away
some part of that person's wealth."

EOS: leader/follower planning (Deasy is Stephen's leader, Bella is Zoe&co's; Molly is Bloom's, at end Bloomis Stephen's and Molly's?)

"Agents decide the resources to target, the number of agents needed to acquire them, and then seek to make an agreed allocation of agents to resources. A single agent and its following may be assigned several resources to harvest. Plans have explicit estimated numerical payoffs"
"Plan execution is also complex. It involves the setting of a rendezvous point and time, and
the pooling and sharing at the rendezvous of all the resources harvested. Further complex-
ity is created by the possible failure of some or all of the agents to perform the tasks they
have agreed to undertake, and the fact that the whole process is partly recursive -- thus a
subleader will execute its part of a plan by creating and recruiting to a subplan, and so on"
"Any inter-agent relationship is expressed in the EOS model by beliefs within the social
models of the agents concerned. Thus, to say that agents X and Y are in a leader/follower
relationship means that Agent X believes that Agent Y is its leader and vice versa. After
multiple instances of cooperation between two agents (an instance of cooperation occurs
when one agent agrees to take part in another’s plan) an instance of a leader/follower rela-
tionship may come into being. This happens if cooperation is consistently ‘one-way’. If
agent X is repeatedly recruited to agent Y’s plans over a limited period of time, then both
X and Y will come to see themselves as in a leader/follower relationship with Y as the
leader. Leaders tend to generate more highly valued plans, and they attempt to recruit their
followers first to their plan. Followers supply information to their leader about their needs
and awareness of resources, and will always wait for a plan to be proposed by their leader
(but may then reject the leader’s proposal in favour of an alternative). A leader/follower
relationship may dissolve if a follower loses contact with its leader or repeatedly rejects
the leader’s plans."
"to say that agents X and Y are in a leader/follower relationship means that Agent X believes that Agent Y is its leader and vice versa"
"agents’ misbeliefs about the existence of unreal ‘pseudo-agents’, and believed
relationships with them, may inhibit agents from attempting to ‘kill’ one another which
they would otherwise do. All other things equal, the effect is a substantially larger average
population size."

PECS: "These selfish agents belong to different neediness classes, i.e. they
have, for example, different levels  of  wealth, they are free to choose partners for
cooperation, and they typically act with their own interest in mind." (Henry and Martha?)

Wednesday, February 10, 2016

Planning paths

create a simple grid of cross streets

place a 'planner' at any point

assign them a random destination, with a schedule of rewards depending on when they reach it

let them calculate a route and realistic timeline
(ignore obstacles for now)

(could there just be a big table of distances between any two points,  and you plan by looking at the points you can move to and choose the one that's closest to your goal?)

let them follow the route, checking occasionally that they're on time

add other planners

if two planners cross paths, let them stop and 'socialise'

let socialising offer substitute rewards
(is balancing different kinds of rewards tricky?)

let them monitor that they're still on time

add other distractions (alcohol, gambling)

let planners allow for different margins of delay

(generate interior monologs for each, see below)

"i have to get to XY by Z o'clock"
"to get to XY by Z i need to be at xy by z"
"i can go via xxyy and still be on time"

simulation software can optimize paths
Defects, Overproduction, Waiting, Not Utilizing Talent, Transportation, Inventory Excess, Motion Waste, Excess Processing [pdf]

spreadsheet people's days [eg]

Monday, January 25, 2016

Building a master map

We badly need a sort of wiki that lets us gradually correlate the 1901 census data to the 1909 map.

We have to expect lots of missteps, and make sure it's easy to re-align sections.

This means first of all matching streetnames (which often vary), then matching map-properties to street numbers.

When we get a Thom's we can start putting in businesses too.

To make it practical (and free) we could do a block at a time starting with Eccles. [demo]

The censuses include a handy but untranscribed 'House and Building Return (Form B1)' [eg] that includes an exact count of how many windows each building has in front.