Legends: Freeware Software License 31st Jan 2007 -
http://license.legendsthegame.net/

Legends: The Game's software license and distribution license

This software is provided free of charge.

"You" are the reader/business/corporation, the "software" is Legends (a
computer game for Linux and Windows OS), a "project" is anything e.g.
software, games, multimedia, show, movie etc.

You are allowed to distribute unaltered copies, you are not allowed to
distribute altered versions of our software. You should copy it for your
friends, give it away on CDs, share it on P2P networks.

You are allowed to include our software in Linux distributions, such as
Debian, Gentoo etc if there is no current version for this software,
please ask us first though incase it causes conflicts.

You are allowed to create and distribute "mods" for our software. You
are allowed to install shortcut icons and scripts along-side our
software as long as the original software is still easily accessible and
usable. ie you can make a "Total Conversion mod installer package" (into
a mod folder if you like) as long as players can still play a regular
game of Legends. ie, you are not allowed to completely re-badge the
software to look like something else.

You are allowed to make and distribute scripts, texture packs, map
packs, Interface skins, HUDs, voice packs etc as ".unf".

You are not allowed to write hacks or attempt to bypass game elements in
order to give yourself an unfair advantage. e.g. Autoaim, HappyFlag,
run-time hacks, server crashing, god mode etc. Do not post hacks in
public, inform the developers privately of any exploits - posting hacks
in public is hostile.

You are not allowed to sell our software. Minimal distribution costs are
okay, magazine cover discs are okay too.

If You contribute your original work to our software project, we are
free to use it as we want (in-game, website, trailer, modify it, forget
to give credit for it etc). Also, You are free to use Your own
contribution as you want in other projects. This means you can not use
ANYTHING in our software in other projects unless YOU made it yourself
or you have permission from the original author (not the current
developers or current owners of the software) of the exact pieces you
want to use. You will most likely need to give us a lot of credit too.
