Main Introduction Tutorial Technical Status Download Links

Tutorial

Kokatrix is an application for generating and editing worlds for RPGs. Kokatrix also includes a simple game engine for moving in the created worlds.

Basic editing

Kokatrix has a modular architecture. The core part of Kokatrix defines the datatypes and editors for these datatypes. Extensions are used for more complex tasks.

Main menu

Main menu The main window has buttons to select what kind of elements to edit. It also has File-menu for loading and saving the world, and Plugin-menu for starting up extensions.

Short explanation of different kinds of elements:

There is some data in the world that is not related to elements. This data can be edited using Info-button in the main menu.

The current extensions in the plugin menu are:

Element editor

When a button in the main window is clicked, an editor for the elements with selected kind is started. Just select the element you want to edit, and you can edit it directly. If you want to create a new element, use the menu to create copies of the current element.

If you want to edit several items simultaneously, use the Complex Editor. The editor window has three parts. The leftmost part is a tree widget, which can be used for grouping the elements in a tree. In the middle, the elements of the current tree are shown. Many of these elements can be selected simultaneously. The right-most editor is different for different kinds of elements. The Apply-button sets all the selected elements to be equal to the value of the editor. The Set-buttons next to each field in the editor set that field to be the value of the currently edited value in every selected element. ?-button has a tooltip that tells the purpose of the associated field.

Complex element editor

Queries

Query

The elements of trees are queries. The queries are edited in or-of-ands normal form. For example the query in the screenshot selects adult males or unemployed people. An empty query selects nothing. A query where there is one and-element added but no atoms selects all elements of a kind. The check-boxes can be used to negate query atoms. Most of the query atoms are different for different kinds, but Prefix-query for selecting elements by name and Set-query for selecting elements from a set work for all kinds of elements. Sets can be constructed using queries, but elements can be removed from them.

Undoing

With the undo feature, old worlds can be restored. The dialog shows the editing actions, to select the world before an editing action, click on the name of the action and click Set state -button. Undo-button cancels last action. Limit-field sets the number of worlds stored. The worlds are stored quite efficiently, so even if the worlds are large, undo-feature doesn't take very much space.

Undo

Simulation

Simulation

The simulation plugin is used to populate the world with communities, people and buildings. Clicking Start-button runs the simulation forward. Clicking the map opens a window with statistics about communities.

Map

The world map can be changed using the field Map in the Map-tab of Info-editor dialog. In the same tab, the meanings of different colors can be specified. Every color has associated attributes for towns. Based on the location of a community it's color is looked up from the map, and the attributes associated with that color are added to the town.

Races, Professions and Countries

Races can be used to specify how long creatures should live and how many children will the creatures get when they give birth (twins etc.) When a new race element is added to world, a seed event is needed to get them into simulation.

Professions tell what the creatures do for living. Professions also determine how rich the persons are. The Lifestyle/Common/Building tab can be used to tell what kind of buildings the creatures with different kind of professions use. Different kinds of buildings can be defined with the building type editor. In this editor, it's possible to define how many inhabitants a building can have and what kind of workers the building needs.

Country of a creature determines the creature's culture. The tab Lifestyle/Country can be used for numeric parameters. Lifestyle/Common/Death Reasons -tab defines the reasons why the creatures die. Lifestyle/Common/Events -tab defines what kind of events happens to the creatures. Lifestyle/Common/Fallback -tab can be used to define what happens of the events fail. Lifestyle/Common/Names -tab can be used to set the names that these creatures give. Lifestyle/Common/Attributes -tab can be used to add special attributes.

Events for creatures

The life-event dialog tells how many times an event happens, when is the first time it happens, and how many times it happens.

Variables

In world generation, there is much randomness. The numeric variables can be exact or within a range. They can also be given by a gaussian distribution or with a list of probabilities. It is possible that for example wealth or other feature of a creature should be modified by a special attribute. Then a modifier can be used to multiply or increment the value. Sometimes a numeric value for a person depends on another numeric value. Then Variable or Attribute can be selected instead of Float. Date variables define a year and optionally a season.

World events

To make something happen in the world, select Events-tab from the Info-editor, and add some events. Some important events are Communities/Seed and World/Disaster.

See Hissim documentation (html pdf) for more information about world generation.

Generating towns

When the world is being simulated, some details are omitted. These details can be added after the simulation, or during the simulation incrementally.

Items

Some important items (artifacts) can be handled by the world simulator, but most items should be added later. Lifestyle/Common/Misc-tab has an item field that can be used to tell what kind of items the persons have. Building types have a similar field. Item types have information about how the items should be handled: do the creatures always carry them or do they keep them in some location of their homes or workplaces. When the items have been configured, the town-editor plugins Add items and Remove items can be used to add items to buildings and creatures of communities.

Buildings and roads

The buildings that the creatures build have to be added to the maps of the communities. In the town-editor, use Edit network plugin. This opens a graphical SDL view that shows the current road network of a community and a GUI dialog that can be used to launch other dialogs or to generate the community map automatically. The other dialogs can be used to edit the map by hand.

The SDL-view has few useful key bindings: Backspace restarts the gui dialog, 'f' add curves to the roads, 'u' connects some buildings that were left unconnected. '1' .. '0' and '+' and '-' change the scaling factor. Right mouse clicks move the view. Tab switches to the map object of the community. Another Tab switches back.

Town view

Obstacles

The communities can have other objects than buildings, for example stones or trees. They are called obstacles. These can be added by hand or be automatically generated from the information associated with town attributes.

Editing media

Media view

The objects can have different graphical states. Each state can have several animation frames. Each frame can be edited with a pixel editor. In the SDL-view, left click will do the selected action, and middle click can be used to select color from the image.

Editing map objects

Areas can be edited using the Edit graphically- plugin. Just like in the media editor, the left click will do the selected action, and middle click can be used to select cell from the map.

Placeholders

Some semantic information has to be included into the areas. For this purpose, the areas have the placeholder field. For example, the inhabitants of the buildings might have their own rooms. For this, there are Person placeholders. They can be used to give inhabitants and workers of a building default places. The owners for the places are given using Add building areas -plugin for towns. Otherwise the inhabitants would have random places.

Also it will help the NPCs if the areas include information about if they are doors etc.

Generating map object for communities

The graphics for background and roads need to be set first using the tab Map in the Town-editor. Then use Generate maps- plugin. To add areas for buildings in the communtity, use Add building areas -plugin. To add items for buildings and persons, use the Add items-plugin. To setup the item locations, use Setup item locations- plugin. To activate the map, use Activate- plugin. The graphical objects for creatures need to be added using queries.

Game engine

When everything has been generated, plugin Game can be started. Press ESC to start a menu, and then start character selection dialog. Then you can select a character to play with. If the screen stays black, the community where that character lives has not yet been loaded, or it doesn't have a map object. To be sure, load in all communities.

Game engine

Main Introduction Tutorial Technical Status Download Links

SourceForge Logo

Last modified: Sunday, May 9, 2004