Division of tasks between server and client
+======= +Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Division of tasks between server and client (unfinished)
+>>>>>>> developAn alternative nomentclature I may use for this dichotomy would be planner and performer; it would be the same dichotomy. ‘Planner’ and ‘server’ are synonyms; ‘performer’ and ‘client’ are synonyms.
What do I mean by the ‘server’?
There is something which manages game state and things like the gossip network, merchant network, and major world events. This something is almost certainly written in some form of Lisp; I’d prefer Clojure but I don’t think it’s performant enough so probably Common Lisp. This means that it has inevitable pauses for garbage collection. Underneath this is a database which handles persistent storage of game state, which is probably an SQL database and quite likely SQLite.
diff --git a/docs/codox/Dynamic-consequences.html b/docs/codox/Dynamic-consequences.html index b820457..dc05c83 100644 --- a/docs/codox/Dynamic-consequences.html +++ b/docs/codox/Dynamic-consequences.html @@ -1,6 +1,10 @@ +<<<<<<< HEADGenerated by Codox
The-great-game 0.1.3
On the consequences of a dynamic game environment for storytelling
+======= +Generated by Codox
The-great-game 0.1.3-SNAPSHOT
On the consequences of a dynamic game environment for storytelling
+>>>>>>> developFirst, a framing disclaimer: in Racundra’s First Cruise, Arthur Ransome describes coming across a half built — and by the time he saw it, already obsolete — wooden sailing ship, in a Baltic forest. An old man was building it, by himself. He had been building it since he had been a young man. It’s clear that Ransome believed the ship would never be finished. It’s not clear whether the old man believed that it would, but nevertheless he was building it.
I will never build a complete version of The Great Game; it will probably never even be a playable prototype. It is a minor side-project of someone who
-
diff --git a/docs/codox/Economy.html b/docs/codox/Economy.html
index 37a2e66..809bb46 100644
--- a/docs/codox/Economy.html
+++ b/docs/codox/Economy.html
@@ -1,6 +1,10 @@
+<<<<<<< HEAD
-
diff --git a/docs/codox/Genetic-buildings.html b/docs/codox/Genetic-buildings.html
index 8d4964c..9c1d214 100644
--- a/docs/codox/Genetic-buildings.html
+++ b/docs/codox/Genetic-buildings.html
@@ -1,6 +1,10 @@
+<<<<<<< HEAD
Genetic Buildings Generated by Codox
The-great-game 0.1.3
Genetic Buildings
+======= +Genetic Buildings Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Genetic Buildings
+>>>>>>> developBuilding selection based on location
The objective of this note is to create a landscape with varied and believable buildings, with the minimum possible data storage per instance.
Like plants, buildings will ‘grow’ from a seed which has northing and easting attributes. These locate a position on the map. Again, like trees, some aspects of the building type selector are location based. Aspects of the location which are relevant to building type are
diff --git a/docs/codox/Gossip_scripted_plot_and_Johnny_Silverhand.html b/docs/codox/Gossip_scripted_plot_and_Johnny_Silverhand.html index 56a783d..f27b20a 100644 --- a/docs/codox/Gossip_scripted_plot_and_Johnny_Silverhand.html +++ b/docs/codox/Gossip_scripted_plot_and_Johnny_Silverhand.html @@ -1,6 +1,10 @@ +<<<<<<< HEADGossip, scripted plot, and Johnny Silverhand Generated by Codox
The-great-game 0.1.3
Gossip, scripted plot, and Johnny Silverhand
+======= +Gossip, scripted plot, and Johnny Silverhand Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Gossip, scripted plot, and Johnny Silverhand
+>>>>>>> developI’ve been writing literally for years — since Voice acting considered harmful in 2015 — about game worlds in which the player speaks to non-player characters just by speaking the words they choose in their normal voice, and the non-player character replies using a pipeline that goes, essentially,
- Alexa/Siri style speech interpretation; diff --git a/docs/codox/MVP-Roadmap.html b/docs/codox/MVP-Roadmap.html index 4868c57..72ea821 100644 --- a/docs/codox/MVP-Roadmap.html +++ b/docs/codox/MVP-Roadmap.html @@ -1,6 +1,10 @@ +<<<<<<< HEAD
- Kill quests diff --git a/docs/codox/Pathmaking.html b/docs/codox/Pathmaking.html index 9d96302..d6aafb7 100644 --- a/docs/codox/Pathmaking.html +++ b/docs/codox/Pathmaking.html @@ -1,6 +1,10 @@ +<<<<<<< HEAD
Minimum Viable Product, and a road map Generated by Codox
The-great-game 0.1.3
Minimum Viable Product, and a road map
+======= +Minimum Viable Product, and a road map Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Minimum Viable Product, and a road map
+>>>>>>> developRight, I’m bogged down thinking about the immensity of what I want to build, so I’m achieving nothing. So the first thing I need to state is what the Minimum Viable Product is, and the second is to outline a rough road map which takes us forwards a few steps from the MVP.
The core idea here is to have a game world in which you can just say anything you like to game characters, and they can say sensible things back.
But actually, I know that speech to text can be reasonably effectively done; and I believe with a slightly lower degree of confidence that text to convincing speech can also be done.
diff --git a/docs/codox/Modelling_democracy_and_morale.html b/docs/codox/Modelling_democracy_and_morale.html index a052ceb..790e8c5 100644 --- a/docs/codox/Modelling_democracy_and_morale.html +++ b/docs/codox/Modelling_democracy_and_morale.html @@ -1,6 +1,10 @@ +<<<<<<< HEADThe Red Company: modelling democracy and morale (unfinished) Generated by Codox
The-great-game 0.1.3
The Red Company: modelling democracy and morale (unfinished)
+======= +The Red Company: modelling democracy and morale (unfinished) Generated by Codox
The-great-game 0.1.3-SNAPSHOT
The Red Company: modelling democracy and morale (unfinished)
+>>>>>>> developBackground
The Great Game exists as a project on two levels. One one level, it’s a framework for building algorithms to build much more vibrant, and thus enjoyable game worlds; at another level, it’s about building a particular world, in which I want to tell stories.
The world in which I want to tell stories is a world which is based roughly on late bronze age to medieval Europe. It’s a world in which the region known as ‘The Coast’ — the southern littoral of the continent — had been a mostly-peaceful matrideic dispersed agrarian tribal society, which had been invaded some hundreds of years past by a warrior tribe with substantially better military technology.
diff --git a/docs/codox/Modelling_trading_cost_and_risk.html b/docs/codox/Modelling_trading_cost_and_risk.html index a3818b0..7175e52 100644 --- a/docs/codox/Modelling_trading_cost_and_risk.html +++ b/docs/codox/Modelling_trading_cost_and_risk.html @@ -1,6 +1,10 @@ +<<<<<<< HEADModelling trading cost and risk (unfinished) Generated by Codox
The-great-game 0.1.3
Modelling trading cost and risk (unfinished)
+======= +Modelling trading cost and risk (unfinished) Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Modelling trading cost and risk (unfinished)
+>>>>>>> developIn a dynamic pre-firearms world with many small states and contested regions, trade is not going to be straightforward. Not only will different routes have different physical characteristics - more or less mountainous, more or fewer unbridged river crossings - they will also have different political characteristics: more of less taxed, more or less effectively policed.
Raids by outlaws are expected to be part of the game economy. News of raids are the sort of things which may propagate through the gossip system. So are changes in taxation regime. Obviously, knowledge items can affect merchants’ trading strategy; in existing prototype code, individual merchants already each keep their own cache of known historical prices, and exchange historical price data with one another; and use this price data to select trades to make.
So: to what extent is it worth modelling the spread of knowledge of trade cost and risk?
diff --git a/docs/codox/Naming-of-characters.html b/docs/codox/Naming-of-characters.html index bfc3110..a95c454 100644 --- a/docs/codox/Naming-of-characters.html +++ b/docs/codox/Naming-of-characters.html @@ -1,6 +1,11 @@ +<<<<<<< HEADNaming of Characters Generated by Codox
The-great-game 0.1.3
Naming of Characters
+======= +Naming of Characters Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Naming of Characters
+ +>>>>>>> developGenerally speaking, in modern RPGs, every character with any impact on the plot has a distinct name. But if we are going to give all non-player characters sufficient agency to impact on the plot, then we must have a way of naming tens or hundreds of thousands of characters, and distinct names will become problematic (even if we’re procedurally generating names, which we shall have to do. So this note is about how characters are named.
The full name of each character will be made up as follows:
epithet clan personal-name the trade-or-rank of location, son/daughter of parent
diff --git a/docs/codox/Not_my_problem.html b/docs/codox/Not_my_problem.html index edc8046..affc67b 100644 --- a/docs/codox/Not_my_problem.html +++ b/docs/codox/Not_my_problem.html @@ -1,6 +1,10 @@ +<<<<<<< HEADNot my problem Generated by Codox
The-great-game 0.1.3
# Not my problem
+======= +Not my problem Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Not my problem
+>>>>>>> developIntroduction
This document is essentially a catalogue of side-tracks which I do not have to go down when implementing The Great Game. Solved problems; or problems which are common to many other games, so if I don’t solve them someone else will. The object of doing this is to work down to a constrained set of problems which are genuinely things I’m trying to innovate, which I should focus on; which essentially come down to
-
diff --git a/docs/codox/On-dying.html b/docs/codox/On-dying.html
index 6bf6de6..9e8a781 100644
--- a/docs/codox/On-dying.html
+++ b/docs/codox/On-dying.html
@@ -1,6 +1,10 @@
+<<<<<<< HEAD
On Dying, and Injury Generated by Codox
The-great-game 0.1.3
On Dying, and Injury
+======= +On Dying, and Injury Generated by Codox
The-great-game 0.1.3-SNAPSHOT
On Dying, and Injury
+>>>>>>> developDeath is the end of your story. One of the tropes in games which, for me, most breaks immersion is when you lose a fight and are presented with a screen that says ‘you are dead. Do you want to reload your last save?’ Life is not like that. We do not have save-states. We die.
So how could this be better handled?
You lose a fight. Switch to cutscene: the battlefield, after the fight, your body is there. Probably no sound. A party of non-enemies crosses the battlefield and finds your body. We see surprise and concern. They gather around you. Cut to interior scene, you are in a bed, unconcious, being tended; cut to similar interior scene, you are in a bed, conscious, being tended; cut to exterior scene, you are sitting with some of your saviours, and the game restarts.
diff --git a/docs/codox/On-sex-and-sexual-violence.html b/docs/codox/On-sex-and-sexual-violence.html index 3683b1b..c0760b9 100644 --- a/docs/codox/On-sex-and-sexual-violence.html +++ b/docs/codox/On-sex-and-sexual-violence.html @@ -1,6 +1,10 @@ +<<<<<<< HEADOn Sex, and Sexual Violence, in Games Generated by Codox
The-great-game 0.1.3
On Sex, and Sexual Violence, in Games
+======= +On Sex, and Sexual Violence, in Games Generated by Codox
The-great-game 0.1.3-SNAPSHOT
On Sex, and Sexual Violence, in Games
+>>>>>>> developFor me the purpose of games is to provide worlds in which players can explore moral actions, and the consequences of moral actions. Sexual violence is something that happens in the real world, and which happens, even within the real world, more frequently in areas of poor governance and open conflict; and those are areas in which there are important moral actions, and important moral consequences, so they are areas in which it is interesting to set games.
It would be ludicrous to argue ‘sexual violence is wrong, therefore we should not represent it in games.’ Killing people is also wrong, yet it is extremely common in games. However, sexual violence — and in particular the representation of sexual violence — does pose some specific problems that need to be addressed.
Firstly, sexual violence is extremely gendered. Yes, male people are sometimes subjected to sexual violence, but nevertheless the overwhelming majority of victims of sexual violence are female. Yes, female people are sometimes — extraordinarily rarely, but sometimes — perpetrators of sexual violence, but nevertheless perpetrators of sexual violence are almost exclusively male.
diff --git a/docs/codox/Organic_Quests.html b/docs/codox/Organic_Quests.html index 1f6dac8..63c490e 100644 --- a/docs/codox/Organic_Quests.html +++ b/docs/codox/Organic_Quests.html @@ -1,6 +1,10 @@ +<<<<<<< HEADOrganic Quests Generated by Codox
The-great-game 0.1.3
Organic Quests
+======= +Organic Quests Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Organic Quests
+>>>>>>> developThe structure of a modern Role Playing Came revolves around ‘quests’: tasks that the player character is invited to do, either by the framing narrative of the game or by some non-player character (‘the Quest Giver’). Normally there is one core quest which provides the overarching narrative for the whole game. Wikipedia offers a typology of quests as follows:
Pathmaking Generated by Codox
The-great-game 0.1.3
Pathmaking
+======= +Pathmaking Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Pathmaking
+>>>>>>> developNOTE: this file is called ‘pathmaking’, not ‘pathfinding’, because ‘pathfinding’ has a very specific meaning/usage in game design which is only part of what I want to talk about here.
NOTE: Work on this is being carried on in a separate library, Walkmap, q.v.
Stages in creating routes between locations
diff --git a/docs/codox/Populating-a-game-world.html b/docs/codox/Populating-a-game-world.html index 8d3232d..c828173 100644 --- a/docs/codox/Populating-a-game-world.html +++ b/docs/codox/Populating-a-game-world.html @@ -1,6 +1,10 @@ +<<<<<<< HEADPopulating a game world Generated by Codox
The-great-game 0.1.3
Populating a game world
+======= +Populating a game world Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Populating a game world
+>>>>>>> developSaturday, 6 July 2013
(You might want to read this essay in conjunction with my older essay, Settling a game world, which covers similar ground but which this hopefully advances on)
For an economy to work people have to be able to move between occupations to fill economic niches. In steady state, non player character (NPC) males become adult as ‘vagrants’, and then move through the state transitions described in this document. The pattern for females is different.
diff --git a/docs/codox/Pseudo-object-inheritance.html b/docs/codox/Pseudo-object-inheritance.html index f65f35b..ece18fc 100644 --- a/docs/codox/Pseudo-object-inheritance.html +++ b/docs/codox/Pseudo-object-inheritance.html @@ -1,6 +1,10 @@ +<<<<<<< HEADPseudo object inheritance Generated by Codox
The-great-game 0.1.3
Pseudo object inheritance
+======= +Pseudo object inheritance Generated by Codox
The-great-game 0.1.3-SNAPSHOT
\ No newline at end of file diff --git a/docs/codox/Roadmap.html b/docs/codox/Roadmap.html index b4e2a64..d8fa01c 100644 --- a/docs/codox/Roadmap.html +++ b/docs/codox/Roadmap.html @@ -1,6 +1,10 @@ +<<<<<<< HEADPseudo object inheritance
+>>>>>>> developThis is simply to document how I’m doing type inheritance for game objects, since Clojure does not provide type inheritance for records and I’m currently building game objects on Clojure records.
It’s possible that I should instead build game objects on Java beans, which do have type (class) inheritance, and would work transparently; however, that isn’t my current approach.
Roadmap (obsolete) Generated by Codox
The-great-game 0.1.3
Roadmap (obsolete)
+======= +Roadmap (obsolete) Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Roadmap (obsolete)
+>>>>>>> developThis document outlines a plan to move forward from where I am in June 2021.
NOTE: this document has been superceded.
JMonkeyEngine
diff --git a/docs/codox/Sandbox.html b/docs/codox/Sandbox.html index b3bf5dc..b0b8f3e 100644 --- a/docs/codox/Sandbox.html +++ b/docs/codox/Sandbox.html @@ -1,6 +1,10 @@ +<<<<<<< HEADSandbox Generated by Codox
The-great-game 0.1.3
Sandbox
+======= +Sandbox Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Sandbox
+>>>>>>> developUp to now I’ve been thinking of the Great Game as essentially an RPG with some sandbox-like elements; but I think it may be better to think of it as a sandbox game with some RPG like elements.
Why?
The core of the game is a world in which non-player characters have enough individual knowledge of the world and their immediate surroundings that they can sensibly answer questions like
diff --git a/docs/codox/Selecting_Character.html b/docs/codox/Selecting_Character.html index a921897..4ae05ec 100644 --- a/docs/codox/Selecting_Character.html +++ b/docs/codox/Selecting_Character.html @@ -1,6 +1,10 @@ +<<<<<<< HEADSelecting the Player Character Generated by Codox
The-great-game 0.1.3
Selecting the Player Character
+======= +Selecting the Player Character Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Selecting the Player Character
+>>>>>>> developBackground
Many computer role playing games, particularly older ones such as Neverwinter Nights, allow you to ‘design’ your player character from a fairly broad canvas. Race, class, attributes, gender and appearance are all selectable.
Choice has eroded over time. For example the Dragon Age series, where you can chose between three races, two genders, and a small number of classes. In the Mass Effect trilogy, you play as Shepard, who is human and essentially a Fighter, but can be either male or female and whose appearance you can customise. You can play as either lawful good or chaotic neutral. In Cyberpunk 2077, you play as V, who is human, either male or female, essentially a Fighter, and chaotic neutral.
diff --git a/docs/codox/Settling-a-game-world.html b/docs/codox/Settling-a-game-world.html index 4229b32..3baf213 100644 --- a/docs/codox/Settling-a-game-world.html +++ b/docs/codox/Settling-a-game-world.html @@ -1,6 +1,10 @@ +<<<<<<< HEADSettling a game world Generated by Codox
The-great-game 0.1.3
Settling a game world
+======= +Settling a game world Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Settling a game world
+>>>>>>> developWednesday, 30 December 2009
This essay is part of a series with ‘Worlds and Flats’ and ‘The spread of knowledge in a large game world’; if you haven’t read those you may want to read them before reading this. This essay describes how a large world can come into being and can evolve. I’ve written again on this subject since - see ‘Populating a game world’)
Microworld
diff --git a/docs/codox/Sexual-dimorphism.html b/docs/codox/Sexual-dimorphism.html index c83ab79..bc6d1a5 100644 --- a/docs/codox/Sexual-dimorphism.html +++ b/docs/codox/Sexual-dimorphism.html @@ -1,6 +1,10 @@ +<<<<<<< HEADSexual dimorphism Generated by Codox
The-great-game 0.1.3
Sexual dimorphism
+======= +Sexual dimorphism Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Sexual dimorphism
+>>>>>>> developThis essay is going to upset a lot of people, so let’s start with a statement of what it is about: it is an attempt to describe the systematically different behaviours of men and women, in sufficient detail that this can be represented by agents in a game world. It’s trying to allow as broad as possible a range of cultures to be represented, so when I’m talking about what I consider to be behaviours of particular cultures, I’ll say that.
Of course, I’m writing this from the view point of an old white male. It’s not possible to write about these things from a totally neutral viewpoint, and every one of us will have prejudices.
OK? Let’s start.
diff --git a/docs/codox/Simulated-genetics.html b/docs/codox/Simulated-genetics.html index b36fe87..7a32889 100644 --- a/docs/codox/Simulated-genetics.html +++ b/docs/codox/Simulated-genetics.html @@ -1,6 +1,10 @@ +<<<<<<< HEADSimulated Genetics Generated by Codox
The-great-game 0.1.3
Simulated Genetics
+======= +Simulated Genetics Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Simulated Genetics
+>>>>>>> developIf we’re going to have a world with a multi-generational population of hundreds of thousands of procedurally generated characters, and we’re to persuasively represent each character as being related to others, then we have to have a mechanism for making children look reasonably like their parents, to have family resemblances among cousins, and so on. We need to do this at reasonably low data storage and algorithmic cost, firstly because we have to store all these characters, and secondly because (especially when the player approaches an urban centre), we may need to instantiate models for a lot of them in limited time.
This note discusses how this might be done.
The pseudo-genome
diff --git a/docs/codox/Simulation-layers.html b/docs/codox/Simulation-layers.html index c942609..59dcb6c 100644 --- a/docs/codox/Simulation-layers.html +++ b/docs/codox/Simulation-layers.html @@ -1,6 +1,10 @@ +<<<<<<< HEADSimulation layers Generated by Codox
The-great-game 0.1.3
Simulation layers
+======= +Simulation layers Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Simulation layers
+>>>>>>> developIn essence, the environment for The Great Game is broadly descended from games like the original Elite space trading game, and Sid Meier’s Pirates!, with some elements from political simulations like for example SimCity.
That is to say there is
An economy simulation
diff --git a/docs/codox/The-spread-of-knowledge-in-a-large-game-world.html b/docs/codox/The-spread-of-knowledge-in-a-large-game-world.html index 8a66759..9546e12 100644 --- a/docs/codox/The-spread-of-knowledge-in-a-large-game-world.html +++ b/docs/codox/The-spread-of-knowledge-in-a-large-game-world.html @@ -1,6 +1,10 @@ +<<<<<<< HEADThe spread of knowledge in a large game world Generated by Codox
The-great-game 0.1.3
The spread of knowledge in a large game world
+======= +The spread of knowledge in a large game world Generated by Codox
The-great-game 0.1.3-SNAPSHOT
The spread of knowledge in a large game world
+>>>>>>> developSaturday, 26 April 2008
Note
This version of this essay has been adapted to use the code in
diff --git a/docs/codox/Things_Voice_Interaction_Enables.html b/docs/codox/Things_Voice_Interaction_Enables.html index c064b92..40dc4b2 100644 --- a/docs/codox/Things_Voice_Interaction_Enables.html +++ b/docs/codox/Things_Voice_Interaction_Enables.html @@ -1,6 +1,10 @@ +<<<<<<< HEADthe-great-game.gossip.news-items
, q.v.. The original version of the essay is still available on my blog.Things Voice Interaction Enables Generated by Codox
The-great-game 0.1.3
Things Voice Interaction Enables
+======= +Things Voice Interaction Enables Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Things Voice Interaction Enables
+>>>>>>> developOrganic quest routing
In a world in which you can talk to non-player characters, and in which non-player characters know the directions to things which are local to their homes (and some, travellers, will be able to give you routes to things further away), when you need to get to your next waypoint you can just ask for directions. That much is easy.
But something much richer occurred to me.
diff --git a/docs/codox/Tree-library-evaluation.html b/docs/codox/Tree-library-evaluation.html index bff9293..04305d9 100644 --- a/docs/codox/Tree-library-evaluation.html +++ b/docs/codox/Tree-library-evaluation.html @@ -1,6 +1,10 @@ +<<<<<<< HEADTree library evaluation Generated by Codox
The-great-game 0.1.3
Tree library evaluation
+======= +Tree library evaluation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Tree library evaluation
+>>>>>>> developThis is a comparative evaluation of open source tree libraries that I have found that I could make use of. It’s entirely personal and subjective!
SimArboreal
Overview
diff --git a/docs/codox/Uncanny_dialogue.html b/docs/codox/Uncanny_dialogue.html index 6d326e5..346a237 100644 --- a/docs/codox/Uncanny_dialogue.html +++ b/docs/codox/Uncanny_dialogue.html @@ -1,6 +1,10 @@ +<<<<<<< HEADThe Uncanny Valley, and dynamically generated dialogue Generated by Codox
The-great-game 0.1.3
The Uncanny Valley, and dynamically generated dialogue
+======= +The Uncanny Valley, and dynamically generated dialogue Generated by Codox
The-great-game 0.1.3-SNAPSHOT
The Uncanny Valley, and dynamically generated dialogue
+>>>>>>> developIf the player is allowed to just speak arbitrary dialogue, then the conversation animation of the player character cannot be designed. If non-player characters are able to engage dynamically generated dialogue, in response to events in the game which are not scripted, then their conversation animation for those dialogues cannot be designed. So conversation animation must almost always be dynamically generated, largely from an augmented text of the speech act. With non-player characters, emotional content of a speech act can be generated by exactly the same process which generates the text. Extracting emotional content information from the player character’s voice may be more challenging.
It would be possible to avoid animating the player character’s face by using a first-person camera. However, I don’t personally find this makes for a very engaging game experience.
These thoughts were prompted by a very interesting video and Twitter thread about the perceived failings in the character animation system of Mass Effect Andromeda.
diff --git a/docs/codox/Voice-acting-considered-harmful.html b/docs/codox/Voice-acting-considered-harmful.html index b2aa4b4..7cbeeda 100644 --- a/docs/codox/Voice-acting-considered-harmful.html +++ b/docs/codox/Voice-acting-considered-harmful.html @@ -1,6 +1,10 @@ +<<<<<<< HEADVoice acting considered harmful Generated by Codox
The-great-game 0.1.3
Voice acting considered harmful
+======= +Voice acting considered harmful Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Voice acting considered harmful
+>>>>>>> developWednesday, 25 February 2015
Long, long, time ago, I can still remember when… we played (and wrote) adventure games where the user typed at a command line, and the system printed back at them. A Read-Eval-Print loop in the classic Lisp sense, and I wrote my adventure games in Lisp. I used the same opportunistic parser whether the developer was building the game
diff --git a/docs/codox/Worlds-and-flats.html b/docs/codox/Worlds-and-flats.html index 6ac6527..c0be1c9 100644 --- a/docs/codox/Worlds-and-flats.html +++ b/docs/codox/Worlds-and-flats.html @@ -1,6 +1,10 @@ +<<<<<<< HEADWorlds and flats [obsolete] Generated by Codox
The-great-game 0.1.3
Worlds and flats obsolete
+======= +Worlds and flats [obsolete] Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Worlds and flats obsolete
+>>>>>>> developThis essay is from 2008, and is now at least partly obsolete; but there’s useful stuff in it which is worth holding onto.
Of Compartmented Worlds
Playing The Witcher has got me thinking again about an algorithm for rendering a world which I first thought of twenty-five years ago. Then, it was a hack for dealing with the fact that the computers of the day didn’t have much memory or horsepower. Now, it’s a hack for dealing with the fact that — when considered against the complexity of a world — the computers of today still don’t have enough memory and horsepower. Mind you, today I’m contemplating photorealistic scenes, whereas then simple line and wash would have been good enough, but…
diff --git a/docs/codox/cc.journeyman.the-great-game.buildings.rectangular.html b/docs/codox/cc.journeyman.the-great-game.buildings.rectangular.html index b4a0f47..3abb75a 100644 --- a/docs/codox/cc.journeyman.the-great-game.buildings.rectangular.html +++ b/docs/codox/cc.journeyman.the-great-game.buildings.rectangular.html @@ -1,6 +1,10 @@ +<<<<<<< HEADcc.journeyman.the-great-game.buildings.rectangular documentation Generated by Codox
The-great-game 0.1.3
cc.journeyman.the-great-game.buildings.rectangular
Build buildings with a generally rectangular floow plan.
+======= +cc.journeyman.the-great-game.buildings.rectangular documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
cc.journeyman.the-great-game.buildings.rectangular
Build buildings with a generally rectangular floow plan.
+>>>>>>> developMotivations
Right, the idea behind this namespace is many fold.
-
diff --git a/docs/codox/cc.journeyman.the-great-game.character.sex.html b/docs/codox/cc.journeyman.the-great-game.character.sex.html
index cae5dc9..9694518 100644
--- a/docs/codox/cc.journeyman.the-great-game.character.sex.html
+++ b/docs/codox/cc.journeyman.the-great-game.character.sex.html
@@ -1,4 +1,8 @@
+<<<<<<< HEAD
cc.journeyman.the-great-game.character.sex documentation Generated by Codox
The-great-game 0.1.3
cc.journeyman.the-great-game.character.sex
TODO: write docs
+======= +cc.journeyman.the-great-game.character.sex documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
\ No newline at end of file diff --git a/docs/codox/cc.journeyman.the-great-game.gossip.gossip.html b/docs/codox/cc.journeyman.the-great-game.gossip.gossip.html index 37d81df..5447efd 100644 --- a/docs/codox/cc.journeyman.the-great-game.gossip.gossip.html +++ b/docs/codox/cc.journeyman.the-great-game.gossip.gossip.html @@ -1,6 +1,10 @@ +<<<<<<< HEADcc.journeyman.the-great-game.character.sex
TODO: write docs
+>>>>>>> developcc.journeyman.the-great-game.gossip.gossip documentation Generated by Codox
The-great-game 0.1.3
cc.journeyman.the-great-game.gossip.gossip
Interchange of news events between gossip agents.
+======= +cc.journeyman.the-great-game.gossip.gossip documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
cc.journeyman.the-great-game.gossip.gossip
Interchange of news events between gossip agents.
+>>>>>>> developNote that habitual travellers are all gossip agents; specifically, at this stage, that means merchants. When merchants are moved we also need to update the location of the gossip with the same key.
Innkeepers are also gossip agents but do not typically move.
dialogue
(dialogue enquirer respondent world)
Dialogue between an
diff --git a/docs/codox/cc.journeyman.the-great-game.gossip.news-items.html b/docs/codox/cc.journeyman.the-great-game.gossip.news-items.html index ff39c67..666ecd2 100644 --- a/docs/codox/cc.journeyman.the-great-game.gossip.news-items.html +++ b/docs/codox/cc.journeyman.the-great-game.gossip.news-items.html @@ -1,6 +1,10 @@ +<<<<<<< HEADenquirer
and anagent
in thisworld
; returns a map identical toenquirer
except that its:gossip
collection may have additional entries.cc.journeyman.the-great-game.gossip.news-items documentation Generated by Codox
The-great-game 0.1.3
cc.journeyman.the-great-game.gossip.news-items
Using news items (propositions) to transfer knowledge between gossip agents.
+======= +cc.journeyman.the-great-game.gossip.news-items documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
cc.journeyman.the-great-game.gossip.news-items
+======= +Using news items (propositions) to transfer knowledge between gossip agents.
+>>>>>>> developStatus
What is here is essentially working. It’s not, however, working with the rich data objects which will be needed, and it’s not yet nearly efficient enough, but it allows knowledge to propagate through the world procedurally, at a rate limited by the speed of movement of the gossip agents.
Discussion
diff --git a/docs/codox/cc.journeyman.the-great-game.holdings.holding.html b/docs/codox/cc.journeyman.the-great-game.holdings.holding.html index f4fc986..eedd782 100644 --- a/docs/codox/cc.journeyman.the-great-game.holdings.holding.html +++ b/docs/codox/cc.journeyman.the-great-game.holdings.holding.html @@ -1,6 +1,10 @@ +<<<<<<< HEADcc.journeyman.the-great-game.holdings.holding documentation Generated by Codox
The-great-game 0.1.3
cc.journeyman.the-great-game.holdings.holding
TODO: write docs
+======= +cc.journeyman.the-great-game.holdings.holding documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
\ No newline at end of file diff --git a/docs/codox/cc.journeyman.the-great-game.launcher.html b/docs/codox/cc.journeyman.the-great-game.launcher.html index fe1ad4f..df15a62 100644 --- a/docs/codox/cc.journeyman.the-great-game.launcher.html +++ b/docs/codox/cc.journeyman.the-great-game.launcher.html @@ -1,8 +1,17 @@ +<<<<<<< HEADcc.journeyman.the-great-game.holdings.holding
TODO: write docs
+>>>>>>> developProtoHolding
protocol
members
building-origin
(building-origin holding)
Returns an oriented location - normally the right hand end of the frontage, for an urban holding - from which buildings on the holding should be built.
frontage
(frontage holding)
Returns a sequence of two locations representing the edge of the polygon which defines this holding which is considered to be the front.
cc.journeyman.the-great-game.launcher documentation Generated by Codox
The-great-game 0.1.3
\ No newline at end of file +cc.journeyman.the-great-game.launcher
Launcher for the game
cli-options
I haven’t yet thought out what command line arguments (if any) I need. This is a placeholder.
init
(init)
Again, placeholder. This initialises a bit of standard jMonkeyEngine terrain, just to check I have things wired up correctly.
-cc.journeyman.the-great-game.launcher documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
+>>>>>>> develop diff --git a/docs/codox/cc.journeyman.the-great-game.location.location.html b/docs/codox/cc.journeyman.the-great-game.location.location.html index 86d5e3d..d77e5b7 100644 --- a/docs/codox/cc.journeyman.the-great-game.location.location.html +++ b/docs/codox/cc.journeyman.the-great-game.location.location.html @@ -1,6 +1,10 @@ +<<<<<<< HEADcc.journeyman.the-great-game.launcher
Launcher for the game
+cc.journeyman.the-great-game.location.location documentation Generated by Codox
The-great-game 0.1.3
cc.journeyman.the-great-game.location.location
TODO: write docs
+======= +cc.journeyman.the-great-game.location.location documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
cc.journeyman.the-great-game.location.location
TODO: write docs
+>>>>>>> developProtoLocation
protocol
members
altitude
(altitude location)
Return the absolute altitude of this location, which may be different from the terrain height at this location, if, for example, the location is underground or on an upper floor.
easting
(easting location)
Return the easting of this location
northing
(northing location)
Return the northing of this location
diff --git a/docs/codox/cc.journeyman.the-great-game.lore.digester.html b/docs/codox/cc.journeyman.the-great-game.lore.digester.html index 24eae06..85c0c59 100644 --- a/docs/codox/cc.journeyman.the-great-game.lore.digester.html +++ b/docs/codox/cc.journeyman.the-great-game.lore.digester.html @@ -1,4 +1,8 @@ +<<<<<<< HEADcc.journeyman.the-great-game.lore.digester documentation Generated by Codox
The-great-game 0.1.3
cc.journeyman.the-great-game.lore.digester
TODO: write docs
+======= +cc.journeyman.the-great-game.lore.digester documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
\ No newline at end of file diff --git a/docs/codox/cc.journeyman.the-great-game.merchants.markets.html b/docs/codox/cc.journeyman.the-great-game.merchants.markets.html index 472ba1c..04bc9e6 100644 --- a/docs/codox/cc.journeyman.the-great-game.merchants.markets.html +++ b/docs/codox/cc.journeyman.the-great-game.merchants.markets.html @@ -1,6 +1,10 @@ +<<<<<<< HEADcc.journeyman.the-great-game.lore.digester
TODO: write docs
+>>>>>>> developcc.journeyman.the-great-game.merchants.markets documentation Generated by Codox
The-great-game 0.1.3
cc.journeyman.the-great-game.merchants.markets
Adjusting quantities and prices in markets.
+======= +cc.journeyman.the-great-game.merchants.markets documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
cc.journeyman.the-great-game.merchants.markets
Adjusting quantities and prices in markets.
+>>>>>>> developadjust-quantity-and-price
(adjust-quantity-and-price world city commodity)
Adjust the quantity of this
commodity
currently in stock in thiscity
of thisworld
. Return a fragmentary world which can be deep-merged into this world.new-price
(new-price old stock supply demand)
If
stock
is greater than the maximum ofsupply
anddemand
, then there is surplus andold
price is too high, so shold be reduced. If lower, then it is too low and should be increased.run
(run world)
Return a world like this
diff --git a/docs/codox/cc.journeyman.the-great-game.merchants.merchant-utils.html b/docs/codox/cc.journeyman.the-great-game.merchants.merchant-utils.html index bc80971..17f2d2c 100644 --- a/docs/codox/cc.journeyman.the-great-game.merchants.merchant-utils.html +++ b/docs/codox/cc.journeyman.the-great-game.merchants.merchant-utils.html @@ -1,6 +1,10 @@ +<<<<<<< HEADworld
, with quantities and prices in markets updated to reflect supply and demand.cc.journeyman.the-great-game.merchants.merchant-utils documentation Generated by Codox
The-great-game 0.1.3
cc.journeyman.the-great-game.merchants.merchant-utils
Useful functions for doing low-level things with merchants.
+======= +cc.journeyman.the-great-game.merchants.merchant-utils documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
cc.journeyman.the-great-game.merchants.merchant-utils
Useful functions for doing low-level things with merchants.
+>>>>>>> developadd-known-prices
(add-known-prices merchant world)
Add the current prices at this
merchant
’s location in theworld
to a new cache of known prices, and return it.add-stock
(add-stock a b)
Where
a
andb
are both maps all of whose values are numbers, return a map whose keys are a union of the keys ofa
andb
and whose values are the sums of their respective values.burden
(burden merchant world)
\ No newline at end of file diff --git a/docs/codox/cc.journeyman.the-great-game.merchants.planning.html b/docs/codox/cc.journeyman.the-great-game.merchants.planning.html index 1d782dd..ca1520c 100644 --- a/docs/codox/cc.journeyman.the-great-game.merchants.planning.html +++ b/docs/codox/cc.journeyman.the-great-game.merchants.planning.html @@ -1,6 +1,10 @@ +<<<<<<< HEADThe total weight of the current cargo carried by this
diff --git a/docs/codox/cc.journeyman.the-great-game.merchants.merchants.html b/docs/codox/cc.journeyman.the-great-game.merchants.merchants.html index 04c53b4..2d46f86 100644 --- a/docs/codox/cc.journeyman.the-great-game.merchants.merchants.html +++ b/docs/codox/cc.journeyman.the-great-game.merchants.merchants.html @@ -1,5 +1,5 @@ -merchant
in thisworld
.cc.journeyman.the-great-game.merchants.merchants documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
cc.journeyman.the-great-game.merchants.merchants
Trade planning for merchants, primarily.
+cc.journeyman.the-great-game.merchants.merchants documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
\ No newline at end of file +cc.journeyman.the-great-game.merchants.merchants
Trade planning for merchants, primarily.
run
(run world)
Return a partial world based on this
-world
, but with each merchant moved.cc.journeyman.the-great-game.merchants.planning documentation Generated by Codox
The-great-game 0.1.3
cc.journeyman.the-great-game.merchants.planning
Trade planning for merchants, primarily. This follows a simple-minded generate-and-test strategy and currently generates plans for all possible routes from the current location. This may not scale. Also, routes do not currently have cost or risk associated with them.
+======= +cc.journeyman.the-great-game.merchants.planning documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
cc.journeyman.the-great-game.merchants.planning
Trade planning for merchants, primarily. This follows a simple-minded generate-and-test strategy and currently generates plans for all possible routes from the current location. This may not scale. Also, routes do not currently have cost or risk associated with them.
+>>>>>>> developaugment-plan
(augment-plan merchant world plan)
Augment this
plan
constructed in thisworld
for thismerchant
with the:quantity
of goods which should be bought and the:expected-profit
of the trade.Returns the augmented plan.
generate-trade-plans
(generate-trade-plans merchant world commodity)
\ No newline at end of file diff --git a/docs/codox/cc.journeyman.the-great-game.objects.character.html b/docs/codox/cc.journeyman.the-great-game.objects.character.html index 351c1c0..00cd4c8 100644 --- a/docs/codox/cc.journeyman.the-great-game.objects.character.html +++ b/docs/codox/cc.journeyman.the-great-game.objects.character.html @@ -1,4 +1,8 @@ +<<<<<<< HEADGenerate all possible trade plans for this
diff --git a/docs/codox/cc.journeyman.the-great-game.merchants.strategies.simple.html b/docs/codox/cc.journeyman.the-great-game.merchants.strategies.simple.html index bdacf8c..6d9f9a3 100644 --- a/docs/codox/cc.journeyman.the-great-game.merchants.strategies.simple.html +++ b/docs/codox/cc.journeyman.the-great-game.merchants.strategies.simple.html @@ -1,9 +1,9 @@ -merchant
and thiscommodity
in thisworld
.cc.journeyman.the-great-game.merchants.strategies.simple documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
cc.journeyman.the-great-game.merchants.strategies.simple
Default trading strategy for merchants.
+cc.journeyman.the-great-game.merchants.strategies.simple documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
\ No newline at end of file +cc.journeyman.the-great-game.merchants.strategies.simple
Default trading strategy for merchants.
The simple strategy buys a single product in the local market if there is one which can be traded profitably, trades it to the chosen target market, and sells it there. If there is no commodity locally which can be traded profitably, moves towards home with no cargo. If at home and no commodity can be traded profitably, does not move.
move-merchant
(move-merchant merchant world)
Handle general en route movement of this
-merchant
in thisworld
; return a (partial or full) world like thisworld
but in which the merchant may have been moved ot updated.plan-and-buy
(plan-and-buy merchant world)
Return a world like this
-world
, in which thismerchant
has planned a new trade, and bought appropriate stock for it. If no profitable trade can be planned, the merchant is simply moved towards their home.re-plan
(re-plan merchant world)
Having failed to sell a cargo at current location, re-plan a route to sell the current cargo. Returns a revised world.
-sell-and-buy
(sell-and-buy merchant world)
Return a new world like this
-world
, in which thismerchant
has sold their current stock in their current location, and planned a new trade, and bought appropriate stock for it.plan-and-buy
(plan-and-buy merchant world)
Return a world like this
+world
, in which thismerchant
has planned a new trade, and bought appropriate stock for it. If no profitable trade can be planned, the merchant is simply moved towards their home.re-plan
(re-plan merchant world)
Having failed to sell a cargo at current location, re-plan a route to sell the current cargo. Returns a revised world.
+sell-and-buy
(sell-and-buy merchant world)
Return a new world like this
+world
, in which thismerchant
has sold their current stock in their current location, and planned a new trade, and bought appropriate stock for it.cc.journeyman.the-great-game.objects.character documentation Generated by Codox
The-great-game 0.1.3
cc.journeyman.the-great-game.objects.character
TODO: write docs
+======= +cc.journeyman.the-great-game.objects.character documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
\ No newline at end of file diff --git a/docs/codox/cc.journeyman.the-great-game.objects.container.html b/docs/codox/cc.journeyman.the-great-game.objects.container.html index b94fb5f..68597e3 100644 --- a/docs/codox/cc.journeyman.the-great-game.objects.container.html +++ b/docs/codox/cc.journeyman.the-great-game.objects.container.html @@ -1,6 +1,10 @@ +<<<<<<< HEADcc.journeyman.the-great-game.objects.character
TODO: write docs
+>>>>>>> developcc.journeyman.the-great-game.objects.container documentation Generated by Codox
The-great-game 0.1.3
cc.journeyman.the-great-game.objects.container
TODO: write docs
+======= +cc.journeyman.the-great-game.objects.container documentation Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Generated by Codox
The-great-game 0.1.3
Game world economy
+======= +Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Game world economy (unfinished)
+>>>>>>> developBroadly this essay extends ideas presented in Populating a game world, q.v.
Primary producers
Herdsfolk
diff --git a/docs/codox/Further-reading.html b/docs/codox/Further-reading.html index 0c10ec6..6d9457d 100644 --- a/docs/codox/Further-reading.html +++ b/docs/codox/Further-reading.html @@ -1,6 +1,10 @@ +<<<<<<< HEADGenerated by Codox
The-great-game 0.1.3
Further Reading (and watching)
+======= +Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Further Reading (and watching)
+>>>>>>> developWork by other people which is relevant to what I’m doing, and which I should study.
## Modelling the natural environment
Forests
diff --git a/docs/codox/Game_Play.html b/docs/codox/Game_Play.html index cb58e6c..d9a5f5c 100644 --- a/docs/codox/Game_Play.html +++ b/docs/codox/Game_Play.html @@ -1,6 +1,10 @@ +<<<<<<< HEADGenerated by Codox
The-great-game 0.1.3
Game Play
+======= +Generated by Codox
The-great-game 0.1.3-SNAPSHOT
Game Play (unfinished)
+>>>>>>> developThe principles of game play which I’m looking for are a reaction against all I see as wrong in modern video games. So let’s set out what these are: