# Stratagus Version 2.1 - Data directory structure

Proposal for the new Stratagus data directory structure:

    {race}		: Replace with a race name: human, orc, alliance or mythical..
    {tileset}	: Replace with a tileset name: winter, summer, ...
    {unit}		: Replace with an unit name: footman, bowman, ...
    {building}	: Replace with a building name: goldmine, farm, ...
    {race-campaign} : Replace with a name of a campaign of a race: human-exp, ...

    $STRATAGUS_LIBRARY_PATH/data
    |   Contains all data files for the Stratagus game engine.
    |
    }-- data/campaigns
    |   |	Contains all available campaigns.
    |   |
    |   `-- data/campaigns/{race-campaign}
    |	|   Contains all data for a campaign: scripts, maps, texts, intros.
    |	|
    |	`-- data/campaigns/{race-campaign}/interface
    |		Contains special backgrounds images for the campaign.
    |
    }-- data/scripts
    |	Contains all global Configuration Language files.
    |
    }-- data/graphics
    |   |	Contains all available graphics.
    |   |
    |   }-- data/graphics/{race}
    |   |	|   Contains all graphics of a race, which could be used in any
    |   |	|   tileset.
    |   |	|
    |   |	}-- data/graphics/{race}/buildings
    |   |	|	Contains the building of the race, which could be used in
    |   |	|	any tileset.
    |   |	|
    |   |	`-- data/graphics/{race}/units
    |   |		Contains all units of the race, which could be used in any
    |   |		any tileset.
    |   |
    |   }-- data/graphics/neutral
    |   |	|   Contains all graphics that didn't belong to a special race and
    |   |	|   which could be used in any tileset.
    |   |	|
    |   |	}-- data/graphics/neutral/buildings
    |   |	|	Contains all buildings that didn't belong to a special race
    |   |	|	and which could be used in any tileset.
    |   |	|
    |   |	`-- data/graphics/neutral/units
    |   |		Contains all units that didn't belong to a special race and
    |   |		which could be used in any tileset.
    |   |
    |   }-- data/graphics/missiles
    |   |	    Contains all graphics of missiles.
    |   |
    |   }-- data/graphics/tilesets
    |   |	|   Contains the graphics special to a single tileset.
    |   |	|   Icons, buildings, units, tileset, decorations.
    |   |	|
    |   |	`-- data/graphics/tilesets/{tileset}
    |   |	    |	Contains the special graphics of this tileset of all races.
    |   |	    |
    |   |	    }-- data/graphics/tilesets/{tileset}/{race}
    |   |	    |	|   Contains all graphics of a race special to this tileset.
    |   |	    |	|
    |   |	    |	}-- data/graphics/tilesets/{tileset}/{race}/buildings
    |   |	    |	|	Contains all buildings graphics of a race and a tileset.
    |   |	    |	|
    |   |	    |	`-- data/graphics/tilesets/{tileset}/{race}/units
    |   |	    |		Contains all units graphics of a race and a tileset.
    |   |	    |
    |   |	    }-- data/graphics/tilesets/{tileset}/neutral
    |   |	    |	|   Contains the graphics not belonging to any race.
    |   |	    |	|
    |   |	    |	}-- data/graphics/tilesets/{tileset}/neutral/buildings
    |   |	    |	|	Contains the buildings graphics of the neutral race.
    |   |	    |	|
    |   |	    |	`-- data/graphics/tilesets/{tileset}/neutral/units
    |   |	    |		Contains the units graphics of the neutral race.
    |   |	    |
    |   |	    `-- data/graphics/tilesets/{tileset}/terrain
    |   |		    Contains the graphics for the tileset self.
    |   |
    |   |
    |   `-- data/graphics/ui
    |	|   Contains all user interface graphics.
    |	|
    |	}-- data/graphics/ui/cursors
    |	|	Contains all cursors not special to any race.
    |	|
    |	}-- data/graphics/ui/fonts
    |	|	Contains all fonts not special to any race.
    |	|
    |	`-- data/graphics/ui/{race}
    |	    |	Contains all user interface graphics special to a race.
    |	    |
    |	    }-- data/graphics/ui/{race}/640x480
    |	    |	    Contains the user interface graphics for this resolution.
    |	    |
    |	    `-- data/graphics/ui/{race}/cursors
    |		    Contains the cursors special to this race.
    |
    |
    }-- data/maps
    |   |	Contains all maps 'pud' format is used currently.
    |   |   Structure here is not required, you can use your own.
    |   |
    |   }-- data/maps/demo
    |   |	    Contains the demo levels.
    |   |
    |   }-- data/puds/multi
    |   |	    Contains multi-player levels.
    |   |
    |   }-- data/puds/single
    |   |	    Contains single player levels.
    |   |
    |   `-- data/puds/strange
    |	    Contains strange levels.
    |
    `-- data/sounds
        |	Contains all available sounds.
        |
        }-- data/sounds/buildings
        |	    Contains all general buildings sounds.
        |
        }-- data/sounds/{race}
        |	|   Contains all sounds special to a race.
        |	|
        |	}-- data/sounds/{race}/basic_voices
        |	|   |	Contains the general sounds of this race.
        |	|   |
        |	|   }-- data/sounds/{race}/basic_voices/acknowledgement
        |	|   |	    Contains the general acknowledgement sounds of this race.
        |	|   |
        |	|   }-- data/sounds/{race}/basic_voices/annoyed
        |	|   |	    Contains the general annoyed sounds of this race.
        |	|   |
        |	|   }-- data/sounds/{race}/basic_voices/help
        |	|   |	    Contains the general help sounds of this race.
        |	|   |
        |	|   `-- data/sounds/{race}/basic_voices/selected
        |	|	    Contains the general selected sounds of this race.
        |	|
        |	}-- data/sounds/{race}/buildings
        |	|	Contains the buildings sounds of this race.
        |	|
        |	}-- data/sounds/{race}/ships
        |	|   |	Contains all general ship sounds of this race.
        |	|   |
        |	|   }-- data/sounds/{race}/ships/acknowledgement
        |	|   |	    Contains the ship acknowledgement sound of this race.
        |	|   |
        |	|   }-- data/sounds/{race}/ships/annoyed
        |	|   |	    Contains the ship annoyed sound of this race.
        |	|   |
        |	|   `-- data/sounds/{race}/ships/selected
        |	|	    Contains the ship selected sound of this race.
        |	|
        |	`-- data/sounds/{race}/units
        |	    |	Contains the special sounds of a race and unit.
        |	    |
        |	    `-- data/sounds/{race}/units/{unit}
        |		|   Contains the special sounds of this units of the race.
        |		|
        |		}-- data/sounds/{race}/units/{unit}/acknowledgement
        |		|	Contains the acknowledge sound of this unit.
        |		|
        |		}-- data/sounds/{race}/units/{unit}/annoyed
        |		|	Contains the annoyed sound of this unit.
        |		|
        |		`-- data/sounds/{race}/units/{unit}/selected
        |			Contains the selected sound of this unit.
        |
        }-- data/sounds/misc
        |	|   Contains the sounds that didn't fit in any section.
        |	|
        |	}-- data/sounds/misc/building explosion
        |	|	Contains the building explosion sounds.
        |	|
        |	`-- data/sounds/misc/tree chopping
        |		Contains the tree chopping sounds.
        |
        }-- data/sounds/missiles
        |	|   Contains the fire and hit sounds of missiles.
        |	|
        |	`-- data/sounds/missiles/sword attack
        |		Contains different sounds of the same kind.
        |
        }-- data/sounds/neutral
        |	|   Contains the sounds of buildings or units not belonging to any race.
        |	|
        |	}-- data/sounds/neutral/buildings
        |	|	Contains the building sounds of the neutral race.
        |	|
        |	`-- data/sounds/neutral/units
        |	    |	Contains the units sounds of the neutral race.
        |	    |
        |	    `-- data/sounds/neutral/units/{unit}
        |		|   Contains the special sounds of the unit of the neutral race.
        |		|
        |		}-- data/sounds/neutral/units/{unit}/acknowledgement
        |		|	Contains the acknowledgement sound of the unit of
        |		|	the neutral race.
        |		|
        |		}-- data/sounds/neutral/units/{unit}/annoyed
        |		|	Contains the annoyed sound of the unit of the neutral
        |		|	race.
        |		|
        |		`-- data/sounds/neutral/units/{unit}/selected
        |			Contains the selected sound of the unit of the neutral
        |			race.
        |
        }-- data/sounds/spells
        |	    Contains the sounds of the different spells.
        |
        }-- data/sounds/ui
        |	    Contains the sounds for the user interface.
        |
        }-- data/sounds/ships
        |	|   Contains the sounds of ships common for all races.
        |	|
        |	`-- data/sounds/ships/{unit}
        |	    |	Contains the sounds of this unit.
        |	    |
        |	    }-- data/sounds/ships/{unit}/acknowledgement
        |	    |	    Contains the acknowledgement sound of this unit.
        |	    |
        |	    }-- data/sounds/ships/{unit}/annoyed
        |	    |	    Contains the annoyed sound of this unit.
        |	    |
        |	    `-- data/sounds/ships/{unit}/selected
        |		    Contains the selected sound of this unit.
        |
        `-- data/sounds/units
    	|   Contains the sounds of units common for all races.
    	|
    	`-- data/sounds/units/{unit}
    	    |	Contains the sounds of this unit.
    	    |
    	    }-- data/sounds/units/{unit}/acknowledgement
    	    |	    Contains the acknowledgement sound of this unit.
    	    |
    	    }-- data/sounds/units/{unit}/annoyed
    	    |	    Contains the annoyed sound of this unit.
    	    |
    	    `-- data/sounds/units/{unit}/selected
    		    Contains the selected sound of this unit.

(C) Copyright 1998-2004 by The Stratagus Project under the GNU General Public License.
All trademarks and copyrights on this page are owned by their respective owners.