<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki-test.cross-fire.org/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki-test.cross-fire.org/feed.php">
        <title>Crossfire Wiki - dev</title>
        <description></description>
        <link>https://wiki-test.cross-fire.org/</link>
        <image rdf:resource="https://wiki-test.cross-fire.org/_media/wiki:dokuwiki.svg" />
       <dc:date>2026-04-14T05:34:01+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:check?rev=1744999712&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:god_intervention?rev=1744999714&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:improved_monster_ai?rev=1744999713&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:levels?rev=1744999712&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:linux_mageia_1?rev=1744999712&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:linux_mageia_2?rev=1744999713&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:linux_mandriva_2009.0?rev=1744999713&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:linux_mandriva_2010.1?rev=1744999714&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:linux?rev=1744999712&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:media_updates?rev=1744999713&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:misc?rev=1744999713&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:object_fields_key_value?rev=1744999713&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:object_fields_living?rev=1744999712&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:object_fields?rev=1744999713&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:object_types?rev=1744999714&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:objects?rev=1744999713&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:random-maps?rev=1744999713&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:random-styles?rev=1744999713&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:runes?rev=1744999712&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:server_design?rev=1744999712&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:shared_strings?rev=1744999712&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:shops?rev=1744999714&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:skills?rev=1744999713&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:spells?rev=1744999712&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki-test.cross-fire.org/dev:weather?rev=1744999712&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki-test.cross-fire.org/_media/wiki:dokuwiki.svg">
        <title>Crossfire Wiki</title>
        <link>https://wiki-test.cross-fire.org/</link>
        <url>https://wiki-test.cross-fire.org/_media/wiki:dokuwiki.svg</url>
    </image>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:check?rev=1744999712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>check</title>
        <link>https://wiki-test.cross-fire.org/dev:check?rev=1744999712&amp;do=diff</link>
        <description>Check: A unit test framework for C

The Crossfire project specifies that developers shall create and run unit tests built with the check framework. The framework is often not packaged by *nix distributions, but it is not hard to install.

Installation</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:god_intervention?rev=1744999714&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>god_intervention</title>
        <link>https://wiki-test.cross-fire.org/dev:god_intervention?rev=1744999714&amp;do=diff</link>
        <description>God intervention uses a treasure list to specify the different possible outcomes. In particular, invisible books are used for many things.
The list&#039;s order is meaningful, since it&#039;s possible to put grace limits (minimum grace the player should have) for interventions to take place.
If any effect is successfully applied (for instance if for healing if the player isn&#039;t at maximum hp), processing stops.
{</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:improved_monster_ai?rev=1744999713&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>improved_monster_ai</title>
        <link>https://wiki-test.cross-fire.org/dev:improved_monster_ai?rev=1744999713&amp;do=diff</link>
        <description>Improved Monster AI

This is just some quick notes on ways monster intelligence could be improved.  These are really just quick thoughts without any real design behind them.

	*  Better use of spells (if getting hit by fire damage, protection from fire would be good.  If damaged, healing is good, if not damaged, not so get)</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:levels?rev=1744999712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>levels</title>
        <link>https://wiki-test.cross-fire.org/dev:levels?rev=1744999712&amp;do=diff</link>
        <description>Reference Player Levels

For purposes of balancing monster combat and experience rewarded, it is useful to have reference statistics for a typical level N player.

Goal: Two monsters have the same level if it is just as likely as one monster to kill the other and vice versa. For a player to level up from level</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:linux_mageia_1?rev=1744999712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux_mageia_1</title>
        <link>https://wiki-test.cross-fire.org/dev:linux_mageia_1?rev=1744999712&amp;do=diff</link>
        <description>Development Environment Setup for Mageia 1

This page presently references resources (like scripts) currently located on KBulgrien&#039;s page.

Trunk Client
$ urpmq --whatprovides libglade2
No package named libglade2
The following packages contain libglade2: libglade2.0_0, libglade2.0_0-devel
You should use &quot;-a&quot; to use all of them
urpmq --whatprovides -a libglade2
libglade2.0_0
libglade2.0_0
libglade2.0_0-devel
libglade2.0_0-devel
$ sudo urpmi libglade2.0_0-devel
In order to satisfy the &#039;devel(libca…</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:linux_mageia_2?rev=1744999713&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux_mageia_2</title>
        <link>https://wiki-test.cross-fire.org/dev:linux_mageia_2?rev=1744999713&amp;do=diff</link>
        <description>Development Environment Setup for Mageia 2

This page presently references resources (like scripts) currently located on KBulgrien&#039;s page.

Note that this guide was created using an x86_64 operating system.  In general, simply remove “64” from the lib file names to convert it to a 32-bit operating system.</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:linux_mandriva_2009.0?rev=1744999713&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux_mandriva_2009.0</title>
        <link>https://wiki-test.cross-fire.org/dev:linux_mandriva_2009.0?rev=1744999713&amp;do=diff</link>
        <description>Development Environment Setup for Mandriva 2009.0

This page presently references resources (like scripts) currently located on KBulgrien&#039;s page.

Trunk Client
$ urpmq --whatprovides libglade2
No package named libglade2
The following packages contain libglade2: libglade2.0_0, libglade2.0_0-devel, ruby-libglade2
You should use &quot;-a&quot; to use all of them
$ sudo urpmi libglade2.0_0-devel
To satisfy dependencies, the following packages are going to be installed:
  Package                        Version…</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:linux_mandriva_2010.1?rev=1744999714&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux_mandriva_2010.1</title>
        <link>https://wiki-test.cross-fire.org/dev:linux_mandriva_2010.1?rev=1744999714&amp;do=diff</link>
        <description>Development Environment Setup for Mandriva 2010.1 (Sprint)

This page presently references resources (like scripts) currently located on KBulgrien&#039;s page.

Trunk Client
$ urpmq --whatprovides libglade2
No package named libglade2
The following packages contain libglade2: libglade2.0_0, libglade2.0_0-devel, ruby-libglade2
You should use &quot;-a&quot; to use all of them
$ sudo urpmi libglade2.0_0-devel
In order to satisfy the &#039;devel(libstdc++)&#039; dependency, one of the following packages is needed:
 1- libstd…</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:linux?rev=1744999712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux</title>
        <link>https://wiki-test.cross-fire.org/dev:linux?rev=1744999712&amp;do=diff</link>
        <description>Use of Linux for Crossfire Development

An index of Linux-specific information.

Development Environment Setup

Unit Test Guides

The Crossfire project specifies that developers shall create and run unit tests built with the  check framework.  The framework is often not packaged by Linux distributions, but it is not hard to install:</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:media_updates?rev=1744999713&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>media_updates</title>
        <link>https://wiki-test.cross-fire.org/dev:media_updates?rev=1744999713&amp;do=diff</link>
        <description>The basic idea is that the client and server could be a lot smarter about getting updated images to the client.  This may be related to dynamic content.

Currently, images are handled by sending a checksum for each image, and then client downloads those that are new.  This works, but makes doing all this checking at start up too slow to be feasible, even on fast links.  And for the most part, this isn&#039;t very efficient - images do not change very often.</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:misc?rev=1744999713&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>misc</title>
        <link>https://wiki-test.cross-fire.org/dev:misc?rev=1744999713&amp;do=diff</link>
        <description>Those are some tips &amp; tricks &amp; info for people wanting to do development.

FIXME should be put in other pages, more adapted to the subject :)

	*  to make the client-side images archives: in server sources, run adm/lib/collect_images.pl -archive. This will generate</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:object_fields_key_value?rev=1744999713&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>object_fields_key_value</title>
        <link>https://wiki-test.cross-fire.org/dev:object_fields_key_value?rev=1744999713&amp;do=diff</link>
        <description>Key Value fields

Those fields are not part of the Object or Stats structures of struct obj {} object; but used through the key / value mechanism in that struct. 

See page Object Fields about struct obj .

This mechanism seems to be a fallback handler for new and unknown attributes listed in .arc archetype files.</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:object_fields_living?rev=1744999712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>object_fields_living</title>
        <link>https://wiki-test.cross-fire.org/dev:object_fields_living?rev=1744999712&amp;do=diff</link>
        <description>Living

The structure 

typedef struct liv { /* several stats here */ } living;

is found in the file server/include/living.h .

It contains the various “statistics” that are visible to the player in the client .


/**
 * Various statistics of objects.
 */
typedef struct liv {
    sint8         Str, Dex, Con, Wis, Cha, Int, Pow;
    sint8         wc;         /**&lt; Weapon Class, how skilled, the lower the better. */
    sint8         ac;         /**&lt; Armour Class, how hard to hit, the lower the be…</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:object_fields?rev=1744999713&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>object_fields</title>
        <link>https://wiki-test.cross-fire.org/dev:object_fields?rev=1744999713&amp;do=diff</link>
        <description>Object Fields

This is the description of fields of the object structure, and what they are used to.

The struct living and struct key_value have their own pages. 

The term Shared Strings has it&#039;s own page, too. 

See also page Objects .

Issues

FIXME 

These Object Fields are for now sorted alphabetically</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:object_types?rev=1744999714&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>object_types</title>
        <link>https://wiki-test.cross-fire.org/dev:object_types?rev=1744999714&amp;do=diff</link>
        <description>Notice

	*  This content was extracted from source code and may not be up-to-date.
		*  SVN Revision 8051;  2007-12-27 18:17:01 -0600 (Thu, 27 Dec 2007)


See Also

	*  Wiki
		*  Types (type) &amp; Subtypes (subtype)

	*   SVN
		*  If you have a copy of the source, the define.h file can be found in server/include/define.h, or</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:objects?rev=1744999713&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>objects</title>
        <link>https://wiki-test.cross-fire.org/dev:objects?rev=1744999713&amp;do=diff</link>
        <description>This so far only concerns how to make archetypes, treasure and NPC&#039;s

	*  The most up-to-date information regarding archetype properties can be accessed from the [types.xml] file associated with gridarta
	*  There is also a page on the format for fields of the</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:random-maps?rev=1744999713&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>random-maps</title>
        <link>https://wiki-test.cross-fire.org/dev:random-maps?rev=1744999713&amp;do=diff</link>
        <description>Random Map Deployment Guide

Using random maps

Any exit with “/!” as the destination map will generate a random map.

To specify random map parameters, you put parameters in the message field
for the exit.

To use the standalone random map generator, you do this:</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:random-styles?rev=1744999713&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>random-styles</title>
        <link>https://wiki-test.cross-fire.org/dev:random-styles?rev=1744999713&amp;do=diff</link>
        <description>Random Map Styles

Some comments are necessary on the various styles.

A style is always a crossfire map, like any other crossfire map. However, they are treated differently.  So some care is required for what goes into the styles directories.

Following is the contents of maps/styles</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:runes?rev=1744999712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>runes</title>
        <link>https://wiki-test.cross-fire.org/dev:runes?rev=1744999712&amp;do=diff</link>
        <description>Map Maker&#039;s Guide to Runes and Traps	(by peterm@soda.berkeley.edu)

In this document, &#039;rune&#039; and &#039;trap&#039; are interchangeable terms.

A rune is a magical inscription on the dungeon floor.  Traps are just like runes except they are not magical in nature, and generally have a physical attack.</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:server_design?rev=1744999712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>server_design</title>
        <link>https://wiki-test.cross-fire.org/dev:server_design?rev=1744999712&amp;do=diff</link>
        <description>Server redesign goals

Put down your goals here, till let&#039;s say the 15th of december :)

Player-wise

	*  fun game!
		*  coherent and content-rich world
		*  no senseless hacking
		*  enough sugar around quests to they are more than &#039;kill this guy&#039; or &#039;bring me X of this thing&#039;</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:shared_strings?rev=1744999712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>shared_strings</title>
        <link>https://wiki-test.cross-fire.org/dev:shared_strings?rev=1744999712&amp;do=diff</link>
        <description>Shared String

To minimize memory use, Crossfire uses a shared string mechanism. 

This is intended to be used for strings whose contents are not expected to change during the server&#039;s life. 

Using shared strings saves memory and improved performance.</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:shops?rev=1744999714&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>shops</title>
        <link>https://wiki-test.cross-fire.org/dev:shops?rev=1744999714&amp;do=diff</link>
        <description>This guide explains how to implement shop headers on maps.

Shop headers

There are 5 headers related to shops that can be present in a map. Any given map may have some, all or none of them (although in the later case, it isn&#039;t considered to be a shop).</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:skills?rev=1744999713&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>skills</title>
        <link>https://wiki-test.cross-fire.org/dev:skills?rev=1744999713&amp;do=diff</link>
        <description>Skills/experience documentation for developers

Players read here and Guide Skills

Introduction

Skills were redone to a large extent in April 2003.  This document has been
updated to reflect how the skills work.

The main change is that experience categories were removed from the game.
Instead, experience goes to the skill itself.  Thus. how good a player is at
the skills is directly proportional to how good they are at that skill, and
not the category itself.</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:spells?rev=1744999712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>spells</title>
        <link>https://wiki-test.cross-fire.org/dev:spells?rev=1744999712&amp;do=diff</link>
        <description>Spells

Background

This document describe all things spell and spell related that developers need to know.  This document outlines the new spell objects and how this all works.

Spell objects

In the old model, each spell had a specific number associated with it.
Monster spell abilities, while objects, just said to use spell number
X.  Given that everything else in the game is object, this hardcoding
of spells was less than ideal.</description>
    </item>
    <item rdf:about="https://wiki-test.cross-fire.org/dev:weather?rev=1744999712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-18T18:08:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>weather</title>
        <link>https://wiki-test.cross-fire.org/dev:weather?rev=1744999712&amp;do=diff</link>
        <description>Guide to basic crossfire weather system

:!: Due to a number of reasons (code complexity, original developer no longer involved with the project, lack of use, etc.) the weather feature was officially removed from Crossfire in Feb-2008 after the release of version 1.11.0 .</description>
    </item>
</rdf:RDF>
