Romans

From Tootsville Wiki-Wiki
Jump to: navigation, search

The Romance 1.0 suite was originally going to be called “Romans,” as the first two components — Appius Claudius Cæcus and Gaius Valerius Catullus — were Romans.

In an ironic move, Sprinkles created the directory for the new project as Romance instead, and the name stuck — partially excused by the definition of Romance as used in the phrase, “romance languages.”

Meet The Romans[edit]

The following summaries are taken from an older version of Romance II and may not 100% reflect their current capabilities.


  • APPIUS: Appius Claudius Caecus, the main networking component or "socket server." Appius manages network listening sockets, using a few different possible communications channels.
  • ASINIUS: Gaius Asinius Pollio, the database module. While Romance II does not "constantly ride the database," for purposes of failure-proofing and conserving RAM, it does rely upon a Postgres database back-end for its persistent storage of game-world data, which can also be used by reporting tools to generate ad-hoc queries about the game world.
  • CAESAR: Gaius Julius Caesar, the module which monitors and controls all other components. Caesar is being extended to have the ability to bring up and down other services, as well as provide "health" monitoring of them.
  • CATULLUS: Gaius Valerius Catullus, which translates between plain written text forms of language and the internal "propositions" used by the game. It enables the game server (and particularly, AI characters) to create English (and someday, other languages) sentences from these "propositions," and parses human text back into "propositional" form.
  • CLODIA: Clodia Metelli Pulcher, the server for "real" AI characters. "Real AI" meaning that these are artificially intelligent logical agents, capable of establishing and seeking goals for themselves, operating upon the game world in the same way as a player-character might; these are not "scripted AI's" of the sort which carry out a fixed task repeatedly.
  • FRONTINUS: Frontinus handles water cycles and weather for the game world, and (somewhat tangentially) heavenly bodies of the sky (i.e. phases of the moon, apparent motion of the sun, moon(s), stars) as well. Frontinus applies a basic model to the flow and current of rivers and streams, waves in lakes and seas, and cloud and precipitation patterns, as well as wind forces.
  • GALEN: Aelius Galenus, a system for quiescing and burgeoning areas of the game world; that is, it stops actively performing simulations upon areas that no-one can see, but then "spins up," or burgeons, that area before a character enters it, performing some "fast-forward" actions to bring it up to date. This works with Vitruvius, Rabirius, and Frontinus.
  • LUTATIUS: Gaius Lutatius Catulus, the module which handles "equipment" of various kinds; this is the inventory, "use item," and so forth controller.
  • NARCISSUS: Narcissus is an adapter/wrapper for the Bullet physics system, and applies Bullet's rigid- and soft-body physics to objects in the game world. This replaces the Dawson-Pocock physics model, but some elements of that model are being re-introduced to reduce the potential CPU overhead.
  • RABIRIUS: Rabirius is the module responsible for handling the geometry of the game world's "map," i.e. inanimate objects, such as the ground, rocks, and (in concert with Vitruvius) plants. Rabirius can also automatically generate terrain areas based upon vague details, allowing a game designer to "sketch" a loose map and have the game system fill in the finer points. This works together with Frontinus.
  • REGILLUS: Lucius Aemilius Regillus, which performs pathfinding through the game's 3D environment. Regillus understands "difficult terrain" and can provide pathfinding using "acrobatics" when necessary (e.g. jumping)
  • VITRUVIUS: Marcus Vitruvius Pollio, which manages the biological simulation for plants and animals. Vitruvius handles "biological stats" like health, strength, and stamina, as well as morphology of the animal/plant's body, and can use a simple genetics/heredity model to produce new life-forms based upon their parentage.