forked from github/server
WDW_PHOENIX define removed:
- Der Initialisierungs-Code ist in LUA reimplementiert. - Ich habe das ganze spoils-Konzept etwas allgemeiner gemacht, man kann jetzt einfach ein equipment-objekt in XML definieren (siehe vinyambar-wdw.xml) der die spoils für eine Rassea angibt, (z.B. phonix_spoils nennen). - Das gleiche für Drachen und Seeschlange gemacht.
This commit is contained in:
parent
5fa56103cc
commit
657fc3d123
|
@ -21,6 +21,7 @@
|
||||||
#include "build.h"
|
#include "build.h"
|
||||||
#include "building.h"
|
#include "building.h"
|
||||||
#include "curse.h"
|
#include "curse.h"
|
||||||
|
#include "equipment.h"
|
||||||
#include "faction.h"
|
#include "faction.h"
|
||||||
#include "goodies.h"
|
#include "goodies.h"
|
||||||
#include "group.h"
|
#include "group.h"
|
||||||
|
@ -827,10 +828,18 @@ remove_troop(troop dt)
|
||||||
|
|
||||||
rmtroop(dt);
|
rmtroop(dt);
|
||||||
if (!df->alive && du->race->itemdrop) {
|
if (!df->alive && du->race->itemdrop) {
|
||||||
|
char eqname[64];
|
||||||
|
const struct equipment * eq;
|
||||||
item * drops = du->race->itemdrop(du->race, du->number-df->run.number);
|
item * drops = du->race->itemdrop(du->race, du->number-df->run.number);
|
||||||
|
|
||||||
if (drops != NULL){
|
if (drops != NULL){
|
||||||
i_merge(&du->items, &drops);
|
i_merge(&du->items, &drops);
|
||||||
}
|
}
|
||||||
|
sprintf(eqname, "%s_spoils", du->race->_name[0]);
|
||||||
|
eq = get_equipment(eqname);
|
||||||
|
if (eq!=NULL) {
|
||||||
|
equip_items(&du->items, eq);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -306,39 +306,6 @@ oldfamiliars(unit * u)
|
||||||
equip_unit(u, get_equipment(fname));
|
equip_unit(u, get_equipment(fname));
|
||||||
}
|
}
|
||||||
|
|
||||||
static item *
|
|
||||||
dragon_drops(const struct race * rc, int size)
|
|
||||||
{
|
|
||||||
item * itm = NULL;
|
|
||||||
switch (old_race(rc)) {
|
|
||||||
case RC_FIREDRAGON:
|
|
||||||
i_add(&itm, i_new(olditemtype[I_DRACHENBLUT], size));
|
|
||||||
break;
|
|
||||||
case RC_DRAGON:
|
|
||||||
i_add(&itm, i_new(olditemtype[I_DRACHENBLUT], size * 4));
|
|
||||||
i_add(&itm, i_new(olditemtype[I_DRAGONHEAD], size));
|
|
||||||
break;
|
|
||||||
case RC_WYRM:
|
|
||||||
i_add(&itm, i_new(olditemtype[I_DRACHENBLUT], size * 10));
|
|
||||||
i_add(&itm, i_new(olditemtype[I_DRAGONHEAD], size));
|
|
||||||
break;
|
|
||||||
case RC_SEASERPENT:
|
|
||||||
i_add(&itm, i_new(olditemtype[I_DRACHENBLUT], size * 6));
|
|
||||||
i_add(&itm, i_new(olditemtype[I_SEASERPENTHEAD], size));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return itm;
|
|
||||||
}
|
|
||||||
|
|
||||||
static item *
|
|
||||||
phoenix_drops(const struct race *rc, int size)
|
|
||||||
{
|
|
||||||
const item_type * it_phoenixfeather = it_find("phoenixfeather");
|
|
||||||
item *itm = NULL;
|
|
||||||
if (it_phoenixfeather!=NULL) i_add(&itm, i_new(it_phoenixfeather, size));
|
|
||||||
return itm;
|
|
||||||
}
|
|
||||||
|
|
||||||
static item *
|
static item *
|
||||||
default_spoil(const struct race * rc, int size)
|
default_spoil(const struct race * rc, int size)
|
||||||
{
|
{
|
||||||
|
@ -461,8 +428,6 @@ register_races(void)
|
||||||
/* function itemdrop
|
/* function itemdrop
|
||||||
* to generate battle spoils
|
* to generate battle spoils
|
||||||
* race->itemdrop() */
|
* race->itemdrop() */
|
||||||
register_function((pf_generic)dragon_drops, "dragondrops");
|
|
||||||
register_function((pf_generic)phoenix_drops, "phoenixdrops");
|
|
||||||
register_function((pf_generic)default_spoil, "defaultdrops");
|
register_function((pf_generic)default_spoil, "defaultdrops");
|
||||||
|
|
||||||
sprintf(zBuffer, "%s/races.xml", resourcepath());
|
sprintf(zBuffer, "%s/races.xml", resourcepath());
|
||||||
|
|
|
@ -544,17 +544,17 @@ race_compat(void)
|
||||||
/* required for old_race, do not change order! */
|
/* required for old_race, do not change order! */
|
||||||
const char * oldracenames[MAXRACES] = {
|
const char * oldracenames[MAXRACES] = {
|
||||||
"dwarf", "elf", "orc", "goblin", "human", "troll", "demon", "insect",
|
"dwarf", "elf", "orc", "goblin", "human", "troll", "demon", "insect",
|
||||||
"halfling", "cat", "aquarian", "uruk", "snotling", "undead", "illusion",
|
"halfling", "cat", "aquarian", "uruk", "snotling", "undead", "illusion",
|
||||||
"youngdragon", "dragon", "wyrm", "ent", "catdragon", "dracoid",
|
"youngdragon", "dragon", "wyrm", "ent", "catdragon", "dracoid",
|
||||||
"special", "spell", "irongolem", "stonegolem", "shadowdemon",
|
"special", "spell", "irongolem", "stonegolem", "shadowdemon",
|
||||||
"shadowmaster", "mountainguard", "alp", "toad", "braineater", "peasant",
|
"shadowmaster", "mountainguard", "alp", "toad", "braineater", "peasant",
|
||||||
"wolf", "lynx", "tunnelworm", "eagle", "rat", "songdragon", "nymph",
|
"wolf", "lynx", "tunnelworm", "eagle", "rat", "songdragon", "nymph",
|
||||||
"unicorn", "direwolf", "ghost", "imp", "dreamcat", "fairy", "owl",
|
"unicorn", "direwolf", "ghost", "imp", "dreamcat", "fairy", "owl",
|
||||||
"hellcat", "tiger", "dolphin", "giantturtle", "kraken", "seaserpent",
|
"hellcat", "tiger", "dolphin", "giantturtle", "kraken", "seaserpent",
|
||||||
"shadowknight", "centaur", "skeleton", "skeletonlord", "zombie",
|
"shadowknight", "centaur", "skeleton", "skeletonlord", "zombie",
|
||||||
"juju-zombie", "ghoul", "ghast", "museumghost", "gnome", "template",
|
"juju-zombie", "ghoul", "ghast", "museumghost", "gnome", "template",
|
||||||
"clone", "shadowdragon", "shadowbat", "nightmare", "vampunicorn",
|
"clone", "shadowdragon", "shadowbat", "nightmare", "vampunicorn",
|
||||||
"phoenix"
|
"phoenix"
|
||||||
};
|
};
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
|
|
@ -54,6 +54,5 @@
|
||||||
#undef ARENA_MODULE
|
#undef ARENA_MODULE
|
||||||
#undef WORMHOLE_MODULE
|
#undef WORMHOLE_MODULE
|
||||||
#undef XECMD_MODULE
|
#undef XECMD_MODULE
|
||||||
#define WDW_PHOENIX
|
|
||||||
#define WDW_PYRAMIDSPELL
|
#define WDW_PYRAMIDSPELL
|
||||||
#define WDW_PYRAMID
|
#define WDW_PYRAMID
|
||||||
|
|
|
@ -212,9 +212,6 @@
|
||||||
<Filter
|
<Filter
|
||||||
Name="Text Files"
|
Name="Text Files"
|
||||||
Filter="">
|
Filter="">
|
||||||
<File
|
|
||||||
RelativePath="..\commit.txt">
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\header.txt">
|
RelativePath="..\header.txt">
|
||||||
</File>
|
</File>
|
||||||
|
@ -370,6 +367,9 @@
|
||||||
<Filter
|
<Filter
|
||||||
Name="XML files"
|
Name="XML files"
|
||||||
Filter="">
|
Filter="">
|
||||||
|
<File
|
||||||
|
RelativePath="..\res\de\strings.xml">
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\res\terrains.xml">
|
RelativePath="..\res\terrains.xml">
|
||||||
</File>
|
</File>
|
||||||
|
|
|
@ -876,60 +876,6 @@ fix_road_borders(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WDW_PHOENIX
|
|
||||||
static region *
|
|
||||||
random_land_region(void)
|
|
||||||
{
|
|
||||||
region *r;
|
|
||||||
int c = 0;
|
|
||||||
|
|
||||||
/* count the available regions */
|
|
||||||
for(r=regions; r; r=r->next) {
|
|
||||||
if (r->land && rplane(r)==NULL) ++c;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* choose one */
|
|
||||||
c = rand()%c;
|
|
||||||
|
|
||||||
/* this is a bit obfuscated, but should be correct */
|
|
||||||
for(r=regions; c > 0; r=r->next) {
|
|
||||||
if (r->land && rplane(r)==NULL) --c;
|
|
||||||
}
|
|
||||||
|
|
||||||
return(r);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
check_phoenix(void)
|
|
||||||
{
|
|
||||||
const race * phoenix_race = rc_find("phoenix");
|
|
||||||
unit * phoenix;
|
|
||||||
region * r;
|
|
||||||
faction *f;
|
|
||||||
|
|
||||||
/* check if there is a phoenix in the world */
|
|
||||||
for(f=factions; f; f=f->next) {
|
|
||||||
unit *u;
|
|
||||||
|
|
||||||
for(u=f->units; u; u=u->nextF) {
|
|
||||||
if(u->race == phoenix_race) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
f = findfaction(MONSTER_FACTION);
|
|
||||||
if (f==NULL) return;
|
|
||||||
|
|
||||||
/* it is not, so we create it */
|
|
||||||
r = random_land_region();
|
|
||||||
phoenix = createunit(r, f, 1, phoenix_race);
|
|
||||||
phoenix->name = strdup("Der Phönix");
|
|
||||||
|
|
||||||
/* TODO: generate an appropriate region message */
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
fix_dissolve(unit * u, int value, char mode)
|
fix_dissolve(unit * u, int value, char mode)
|
||||||
{
|
{
|
||||||
|
@ -1146,10 +1092,6 @@ korrektur(void)
|
||||||
/* Immer ausführen! Erschafft neue Teleport-Regionen, wenn nötig */
|
/* Immer ausführen! Erschafft neue Teleport-Regionen, wenn nötig */
|
||||||
create_teleport_plane();
|
create_teleport_plane();
|
||||||
|
|
||||||
#ifdef WDW_PHOENIX
|
|
||||||
check_phoenix();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (global.data_version<TYPES_VERSION) fix_icastles();
|
if (global.data_version<TYPES_VERSION) fix_icastles();
|
||||||
#ifdef FUZZY_BASE36
|
#ifdef FUZZY_BASE36
|
||||||
enable_fuzzy = true;
|
enable_fuzzy = true;
|
||||||
|
|
|
@ -57,7 +57,7 @@ region_getterrain(const region& r) {
|
||||||
static const char *
|
static const char *
|
||||||
region_getname(const region& r) {
|
region_getname(const region& r) {
|
||||||
if (r.land) return r.land->name;
|
if (r.land) return r.land->name;
|
||||||
return r.terrain->_name;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
@ -331,5 +331,24 @@
|
||||||
<item name="rustychainmail" amount="1"/>
|
<item name="rustychainmail" amount="1"/>
|
||||||
</set>
|
</set>
|
||||||
|
|
||||||
|
<set name="dragon_spoils">
|
||||||
|
<item name="dragonblood" amount="4"/>
|
||||||
|
<item name="dragonhead" amount="1"/>
|
||||||
|
</set>
|
||||||
|
|
||||||
|
<set name="youngdragon_spoils">
|
||||||
|
<item name="dragonblood" amount="1"/>
|
||||||
|
</set>
|
||||||
|
|
||||||
|
<set name="wyrm_spoils">
|
||||||
|
<item name="dragonblood" amount="10"/>
|
||||||
|
<item name="dragonhead" amount="1"/>
|
||||||
|
</set>
|
||||||
|
|
||||||
|
<set name="seaserpent_spoils">
|
||||||
|
<item name="dragonblood" amount="6"/>
|
||||||
|
<item name="dragonhead" amount="1"/>
|
||||||
|
</set>
|
||||||
|
|
||||||
</equipment>
|
</equipment>
|
||||||
|
|
||||||
|
|
|
@ -67,7 +67,6 @@
|
||||||
<param name="database.gameid" value="3"/>
|
<param name="database.gameid" value="3"/>
|
||||||
<param name="globalreport" value="world"/>
|
<param name="globalreport" value="world"/>
|
||||||
<param name="rules.check_overload" value="1"/>
|
<param name="rules.check_overload" value="1"/>
|
||||||
<param name="report.mailit" value="/usr/sbin:$HOME/eressea/bin:/bin:/usr/bin:/usr/local/bin"/>
|
|
||||||
</game>
|
</game>
|
||||||
<xi:include href="eressea/de/strings.xml"/>
|
<xi:include href="eressea/de/strings.xml"/>
|
||||||
<xi:include href="eressea/en/strings.xml"/>
|
<xi:include href="eressea/en/strings.xml"/>
|
||||||
|
|
|
@ -71,7 +71,6 @@
|
||||||
<param name="database.gameid" value="6"/>
|
<param name="database.gameid" value="6"/>
|
||||||
<param name="globalreport" value="world"/>
|
<param name="globalreport" value="world"/>
|
||||||
<param name="rules.check_overload" value="1"/>
|
<param name="rules.check_overload" value="1"/>
|
||||||
<param name="report.mailit" value="/usr/sbin:$HOME/eressea/bin:/bin:/usr/bin:/usr/local/bin"/>
|
|
||||||
</game>
|
</game>
|
||||||
<xi:include href="eressea/de/strings.xml"/>
|
<xi:include href="eressea/de/strings.xml"/>
|
||||||
<xi:include href="eressea/en/strings.xml"/>
|
<xi:include href="eressea/en/strings.xml"/>
|
||||||
|
|
|
@ -658,7 +658,6 @@
|
||||||
</race>
|
</race>
|
||||||
<race name="catdragon" magres="0.900000" maxaura="1.000000" regaura="1.000000" recruitcost="500000" weight="20000" capacity="10000" speed="1.000000" hp="20" damage="2d40" unarmedattack="0" unarmeddefense="0" defensemodifier="50" fly="yes" walk="yes" teach="no" shapeshift="yes" giveitem="yes" giveperson="yes" getitem="yes">
|
<race name="catdragon" magres="0.900000" maxaura="1.000000" regaura="1.000000" recruitcost="500000" weight="20000" capacity="10000" speed="1.000000" hp="20" damage="2d40" unarmedattack="0" unarmeddefense="0" defensemodifier="50" fly="yes" walk="yes" teach="no" shapeshift="yes" giveitem="yes" giveperson="yes" getitem="yes">
|
||||||
<ai splitsize="1"/>
|
<ai splitsize="1"/>
|
||||||
<function name="itemdrop" value="dragondrops"/>
|
|
||||||
<attack type="4" damage="2d40"/>
|
<attack type="4" damage="2d40"/>
|
||||||
<attack type="4" damage="2d40"/>
|
<attack type="4" damage="2d40"/>
|
||||||
<attack type="4" damage="2d40"/>
|
<attack type="4" damage="2d40"/>
|
||||||
|
@ -673,7 +672,6 @@
|
||||||
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
||||||
<function name="name" value="namedragon"/>
|
<function name="name" value="namedragon"/>
|
||||||
<function name="move" value="movedragon"/>
|
<function name="move" value="movedragon"/>
|
||||||
<function name="itemdrop" value="dragondrops"/>
|
|
||||||
<skill name="magic" modifier="12"/>
|
<skill name="magic" modifier="12"/>
|
||||||
<skill name="tactics" modifier="12"/>
|
<skill name="tactics" modifier="12"/>
|
||||||
<skill name="perception" modifier="10"/>
|
<skill name="perception" modifier="10"/>
|
||||||
|
@ -687,7 +685,6 @@
|
||||||
<function name="name" value="namedragon"/>
|
<function name="name" value="namedragon"/>
|
||||||
<function name="age" value="agedragon"/>
|
<function name="age" value="agedragon"/>
|
||||||
<function name="move" value="movedragon"/>
|
<function name="move" value="movedragon"/>
|
||||||
<function name="itemdrop" value="dragondrops"/>
|
|
||||||
<skill name="magic" modifier="8"/>
|
<skill name="magic" modifier="8"/>
|
||||||
<skill name="tactics" modifier="8"/>
|
<skill name="tactics" modifier="8"/>
|
||||||
<skill name="perception" modifier="5"/>
|
<skill name="perception" modifier="5"/>
|
||||||
|
@ -701,7 +698,6 @@
|
||||||
<function name="name" value="namedragon"/>
|
<function name="name" value="namedragon"/>
|
||||||
<function name="age" value="agefiredragon"/>
|
<function name="age" value="agefiredragon"/>
|
||||||
<function name="move" value="movedragon"/>
|
<function name="move" value="movedragon"/>
|
||||||
<function name="itemdrop" value="dragondrops"/>
|
|
||||||
<skill name="magic" modifier="4"/>
|
<skill name="magic" modifier="4"/>
|
||||||
<skill name="tactics" modifier="4"/>
|
<skill name="tactics" modifier="4"/>
|
||||||
<skill name="stealth" modifier="2"/>
|
<skill name="stealth" modifier="2"/>
|
||||||
|
@ -1127,7 +1123,6 @@
|
||||||
<ai splitsize="6" killpeasants="yes" moverandom="yes" learn="yes"/>
|
<ai splitsize="6" killpeasants="yes" moverandom="yes" learn="yes"/>
|
||||||
<function name="name" value="namedragon"/>
|
<function name="name" value="namedragon"/>
|
||||||
<function name="move" value="moveswimming"/>
|
<function name="move" value="moveswimming"/>
|
||||||
<function name="itemdrop" value="dragondrops"/>
|
|
||||||
<skill name="tactics" modifier="4"/>
|
<skill name="tactics" modifier="4"/>
|
||||||
<attack type="4" damage="1d30"/>
|
<attack type="4" damage="1d30"/>
|
||||||
<attack type="4" damage="1d30"/>
|
<attack type="4" damage="1d30"/>
|
||||||
|
@ -1288,7 +1283,6 @@
|
||||||
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
||||||
<function name="name" value="namedragon"/>
|
<function name="name" value="namedragon"/>
|
||||||
<function name="move" value="movedragon"/>
|
<function name="move" value="movedragon"/>
|
||||||
<function name="itemdrop" value="dragondrops"/>
|
|
||||||
<skill name="tactics" modifier="20"/>
|
<skill name="tactics" modifier="20"/>
|
||||||
<skill name="perception" modifier="20"/>
|
<skill name="perception" modifier="20"/>
|
||||||
<attack type="4" damage="5d30"/>
|
<attack type="4" damage="5d30"/>
|
||||||
|
@ -1321,98 +1315,11 @@
|
||||||
<attack type="3" damage="1d4"/>
|
<attack type="3" damage="1d4"/>
|
||||||
<attack type="2" damage="2d60"/>
|
<attack type="2" damage="2d60"/>
|
||||||
</race>
|
</race>
|
||||||
<race name="phoenix" magres="0.900000" maxaura="1.000000" regaura="2.000000" recruitcost="50000" weight="50000" capacity="30000" speed="2.000000" hp="500" ac="6" damage="1d20" unarmedattack="0" unarmeddefense="0" attackmodifier="7" defensemodifier="7" scarepeasants="yes" fly="yes" walk="yes" teach="no" getitem="yes" resistbash="yes" resistcut="yes" resistpierce="yes">
|
|
||||||
<ai splitsize="2" learn="yes"/>
|
|
||||||
<function name="itemdrop" value="phoenixdrops"/>
|
|
||||||
<skill name="magic" modifier="16"/>
|
|
||||||
<skill name="tactics" modifier="8"/>
|
|
||||||
<skill name="perception" modifier="20"/>
|
|
||||||
<attack type="4" damage="1d12"/>
|
|
||||||
<attack type="4" damage="1d10"/>
|
|
||||||
<attack type="4" damage="1d10"/>
|
|
||||||
<attack type="6" spell="immolation"/>
|
|
||||||
</race>
|
|
||||||
<race name="sphinx" magres="0.900000" maxaura="1.000000" regaura="3.000000" recruitcost="250000" weight="180000" capacity="100000" speed="1.000000" hp="2700" ac="8" damage="2d60" unarmedattack="0" unarmeddefense="0" attackmodifier="10" defensemodifier="10" scarepeasants="yes" fly="yes" walk="yes" teach="no" getitem="yes" resistbash="yes" resistcut="yes" resistpierce="yes">
|
|
||||||
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
|
||||||
<skill name="magic" modifier="12"/>
|
|
||||||
<skill name="tactics" modifier="12"/>
|
|
||||||
<skill name="perception" modifier="10"/>
|
|
||||||
<attack type="4" damage="3d20"/>
|
|
||||||
<attack type="4" damage="3d20"/>
|
|
||||||
<attack type="4" damage="5d30"/>
|
|
||||||
<attack type="6" spell="powerful_dragonbreath"/>
|
|
||||||
<attack type="6" spell="aura_of_fear"/>
|
|
||||||
</race>
|
|
||||||
<race name="littlescarab" magres="0.000000" maxaura="0.000000" regaura="0.000000" recruitcost="50" weight="500" capacity="200" speed="1.000000" hp="25" ac="1" damage="2d6" unarmedattack="0" unarmeddefense="0" attackmodifier="6" defensemodifier="3" walk="yes" teach="no" giveitem="yes" getitem="yes">
|
|
||||||
<ai splitsize="5000"/>
|
|
||||||
<attack type="4" damage="2d6"/>
|
|
||||||
<attack type="4" damage="1d4"/>
|
|
||||||
<attack type="4" damage="1d4"/>
|
|
||||||
</race>
|
|
||||||
<race name="greenscarab" magres="0.000000" maxaura="0.000000" regaura="0.000000" recruitcost="50" weight="500" capacity="200" speed="1.000000" hp="25" ac="5" damage="2d6" unarmedattack="0" unarmeddefense="0" attackmodifier="6" defensemodifier="3" scarepeasants="yes" fly="yes" walk="yes" teach="no" giveitem="yes" getitem="yes">
|
|
||||||
<ai splitsize="50"/>
|
|
||||||
<skill name="magic" modifier="4"/>
|
|
||||||
<skill name="tactics" modifier="4"/>
|
|
||||||
<skill name="stealth" modifier="2"/>
|
|
||||||
<skill name="perception" modifier="2"/>
|
|
||||||
<attack type="4" damage="2d6"/>
|
|
||||||
<attack type="4" damage="1d6"/>
|
|
||||||
<attack type="4" damage="1d6"/>
|
|
||||||
<attack type="6" spell="acidrain"/>
|
|
||||||
</race>
|
|
||||||
<race name="bluescarab" magres="0.000000" maxaura="0.000000" regaura="0.000000" recruitcost="50" weight="500" capacity="200" speed="1.000000" hp="30" ac="5" damage="2d6" unarmedattack="0" unarmeddefense="0" attackmodifier="6" defensemodifier="3" scarepeasants="yes" fly="yes" walk="yes" teach="no" giveitem="yes" getitem="yes">
|
|
||||||
<ai splitsize="50"/>
|
|
||||||
<skill name="magic" modifier="4"/>
|
|
||||||
<skill name="tactics" modifier="4"/>
|
|
||||||
<skill name="stealth" modifier="2"/>
|
|
||||||
<skill name="perception" modifier="2"/>
|
|
||||||
<attack type="4" damage="2d6"/>
|
|
||||||
<attack type="4" damage="1d6"/>
|
|
||||||
<attack type="4" damage="1d6"/>
|
|
||||||
<attack type="6" spell="coldfront"/>
|
|
||||||
</race>
|
|
||||||
<race name="redscarab" magres="0.000000" maxaura="0.000000" regaura="0.000000" recruitcost="50" weight="500" capacity="200" speed="1.000000" hp="25" ac="5" damage="2d6" unarmedattack="0" unarmeddefense="0" attackmodifier="6" defensemodifier="3" scarepeasants="yes" fly="yes" walk="yes" teach="no" giveitem="yes" getitem="yes">
|
|
||||||
<ai splitsize="50"/>
|
|
||||||
<skill name="magic" modifier="4"/>
|
|
||||||
<skill name="tactics" modifier="4"/>
|
|
||||||
<skill name="stealth" modifier="2"/>
|
|
||||||
<skill name="perception" modifier="2"/>
|
|
||||||
<attack type="4" damage="2d6"/>
|
|
||||||
<attack type="4" damage="1d6"/>
|
|
||||||
<attack type="4" damage="1d6"/>
|
|
||||||
<attack type="6" spell="firestorm"/>
|
|
||||||
</race>
|
|
||||||
<race name="undeadpharaoh" magres="0.950000" maxaura="1.000000" regaura="3.000000" recruitcost="2500000" weight="100" capacity="100000" speed="1.000000" hp="2700" ac="10" damage="2d60" unarmedattack="0" unarmeddefense="0" attackmodifier="10" defensemodifier="12" scarepeasants="yes" cannotmove="yes" teach="no" getitem="yes" resistbash="yes" resistcut="yes" resistpierce="yes">
|
|
||||||
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
|
||||||
<skill name="tactics" modifier="20"/>
|
|
||||||
<skill name="perception" modifier="20"/>
|
|
||||||
<attack type="4" damage="5d30"/>
|
|
||||||
<attack type="4" damage="3d20"/>
|
|
||||||
<attack type="4" damage="3d20"/>
|
|
||||||
<attack type="4" damage="5d30"/>
|
|
||||||
<attack type="6" spell="drain_skills"/>
|
|
||||||
<attack type="6" spell="aura_of_fear"/>
|
|
||||||
<precombatspell spell="shadowcall"/>
|
|
||||||
</race>
|
|
||||||
<race name="mummy" magres="0.600000" maxaura="1.000000" regaura="1.000000" recruitcost="5" weight="1000" capacity="540" speed="1.000000" hp="60" ac="2" damage="1d7" unarmedattack="6" unarmeddefense="6" attackmodifier="6" defensemodifier="6" scarepeasants="yes" walk="yes" teach="no" noheal="yes" undead="yes" equipment="yes" nogive="yes">
|
|
||||||
<ai splitsize="10000" moverandom="yes"/>
|
|
||||||
<skill name="melee" modifier="1"/>
|
|
||||||
<skill name="polearm" modifier="1"/>
|
|
||||||
<skill name="tactics" modifier="1"/>
|
|
||||||
<skill name="stamina" modifier="1"/>
|
|
||||||
<skill name="unarmed" modifier="1"/>
|
|
||||||
<attack type="4" damage="2d8"/>
|
|
||||||
<attack type="3" damage="1d5"/>
|
|
||||||
<attack type="3" damage="1d5"/>
|
|
||||||
<attack type="2" damage="1d30"/>
|
|
||||||
<attack type="2" damage="1d30"/>
|
|
||||||
</race>
|
|
||||||
<!--
|
<!--
|
||||||
<race name="skeletal_wyrm" magres="0.900000" maxaura="1.000000" regaura="3.000000" recruitcost="250000" weight="180000" capacity="100000" speed="1.000000" hp="2700" ac="8" damage="2d60" unarmedattack="0" unarmeddefense="0" attackmodifier="10" defensemodifier="10" scarepeasants="yes" fly="yes" walk="yes" teach="no" getitem="yes" resistbash="yes">
|
<race name="skeletal_wyrm" magres="0.900000" maxaura="1.000000" regaura="3.000000" recruitcost="250000" weight="180000" capacity="100000" speed="1.000000" hp="2700" ac="8" damage="2d60" unarmedattack="0" unarmeddefense="0" attackmodifier="10" defensemodifier="10" scarepeasants="yes" fly="yes" walk="yes" teach="no" getitem="yes" resistbash="yes">
|
||||||
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
||||||
<function name="name" value="namedragon"/>
|
<function name="name" value="namedragon"/>
|
||||||
<function name="move" value="movedragon"/>
|
<function name="move" value="movedragon"/>
|
||||||
<function name="itemdrop" value="dragondrops"/>
|
|
||||||
<skill name="magic" modifier="12"/>
|
<skill name="magic" modifier="12"/>
|
||||||
<skill name="tactics" modifier="12"/>
|
<skill name="tactics" modifier="12"/>
|
||||||
<skill name="perception" modifier="10"/>
|
<skill name="perception" modifier="10"/>
|
||||||
|
|
|
@ -23,7 +23,6 @@
|
||||||
<param name="database.gameid" value="3"></param>
|
<param name="database.gameid" value="3"></param>
|
||||||
<param name="hunger.long" value="0"></param>
|
<param name="hunger.long" value="0"></param>
|
||||||
<param name="study.expensivemigrants" value="1"/>
|
<param name="study.expensivemigrants" value="1"/>
|
||||||
<param name="report.mailit" value="/usr/sbin:$HOME/bin:/bin:/usr/bin:/usr/local/bin"/>
|
|
||||||
<param name="alliance.restricted" value="fight guard stealth money"/>
|
<param name="alliance.restricted" value="fight guard stealth money"/>
|
||||||
<param name="alliance.auto" value="fight"/>
|
<param name="alliance.auto" value="fight"/>
|
||||||
<param name="alliance.transferquit" value="true"/>
|
<param name="alliance.transferquit" value="true"/>
|
||||||
|
|
|
@ -65,7 +65,6 @@
|
||||||
<param name="magic.power" value="0.5"/>
|
<param name="magic.power" value="0.5"/>
|
||||||
<param name="resource.factor" value="0.25"/>
|
<param name="resource.factor" value="0.25"/>
|
||||||
<param name="study.expensivemigrants" value="1"/>
|
<param name="study.expensivemigrants" value="1"/>
|
||||||
<param name="report.mailit" value="/usr/sbin:$HOME/bin:/bin:/usr/bin:/usr/local/bin"/>
|
|
||||||
<param name="alliance.skilllimit" value="15"/>
|
<param name="alliance.skilllimit" value="15"/>
|
||||||
<param name="alliance.restricted" value="fight guard stealth money"/>
|
<param name="alliance.restricted" value="fight guard stealth money"/>
|
||||||
<param name="alliance.auto" value="fight"/>
|
<param name="alliance.auto" value="fight"/>
|
||||||
|
@ -95,4 +94,10 @@
|
||||||
</resource>
|
</resource>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
||||||
|
<equipment>
|
||||||
|
<set name="phoenix_spoils">
|
||||||
|
<item name="phoenixfeather" amount="1"/>
|
||||||
|
</set>
|
||||||
|
</equipment>
|
||||||
|
|
||||||
</eressea>
|
</eressea>
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<races>
|
<races>
|
||||||
|
<!-- overrides of existing races -->
|
||||||
<race name="halfling" magres="0.050000" maxaura="1.000000" regaura="1.000000" recruitcost="80" maintenance="10" weight="1000" capacity="540" speed="1.000000" hp="18" ac="0" damage="1d5" unarmedattack="-2" unarmeddefense="-2" attackmodifier="0" defensemodifier="0" playerrace="yes" walk="yes" giveitem="yes" giveperson="yes" giveunit="yes" getitem="yes" equipment="yes">
|
<race name="halfling" magres="0.050000" maxaura="1.000000" regaura="1.000000" recruitcost="80" maintenance="10" weight="1000" capacity="540" speed="1.000000" hp="18" ac="0" damage="1d5" unarmedattack="-2" unarmeddefense="-2" attackmodifier="0" defensemodifier="0" playerrace="yes" walk="yes" giveitem="yes" giveperson="yes" giveunit="yes" getitem="yes" equipment="yes">
|
||||||
<ai splitsize="10000" attackrandom="yes" moverandom="yes" learn="yes"></ai>
|
<ai splitsize="10000" attackrandom="yes" moverandom="yes" learn="yes"></ai>
|
||||||
<skill name="crossbow" modifier="0"></skill>
|
<skill name="crossbow" modifier="0"></skill>
|
||||||
|
@ -31,39 +32,6 @@
|
||||||
<familiar race="eagle"></familiar>
|
<familiar race="eagle"></familiar>
|
||||||
<familiar race="rat"></familiar>
|
<familiar race="rat"></familiar>
|
||||||
</race>
|
</race>
|
||||||
<race name="apepsnake" magres="0.900000" maxaura="1.000000" regaura="1.000000" recruitcost="50000" weight="100" capacity="50" speed="1.000000" hp="20" ac="1" damage="0d0" unarmedattack="0" unarmeddefense="0" attackmodifier="6" defensemodifier="10" scarepeasants="yes" fly="yes" walk="yes" teach="no" canguard="yes" invinciblenonmagic="yes" giveitem="yes" giveperson="yes" giveunit="yes" getitem="yes">
|
|
||||||
<ai splitsize="500" attackrandom="yes" killpeasants="yes" moverandom="yes" learn="yes"/>
|
|
||||||
<attack type="2" damage="3d15"/>
|
|
||||||
<attack type="3" damage="1d1"/>
|
|
||||||
<attack type="4" damage="1d1"/>
|
|
||||||
</race>
|
|
||||||
<race name="anubis" magres="0.950000" maxaura="1.000000" regaura="3.000000" recruitcost="2500000" weight="100" capacity="100000" speed="1.000000" hp="2700" ac="10" damage="2d60" unarmedattack="0" unarmeddefense="0" attackmodifier="10" defensemodifier="12" scarepeasants="yes" fly="yes" walk="yes" teach="no" getitem="yes" resistbash="yes" shapeshift="yes">
|
|
||||||
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
|
||||||
<function name="move" value="movedragon"/>
|
|
||||||
<skill name="tactics" modifier="20"/>
|
|
||||||
<skill name="perception" modifier="20"/>
|
|
||||||
<attack type="4" damage="5d30"/>
|
|
||||||
<attack type="4" damage="3d20"/>
|
|
||||||
<attack type="4" damage="3d20"/>
|
|
||||||
<attack type="4" damage="5d30"/>
|
|
||||||
<attack type="6" spell="174"/>
|
|
||||||
<attack type="6" spell="175"/>
|
|
||||||
<precombatspell spell="176"/>
|
|
||||||
</race>
|
|
||||||
<race name="apophis" magres="0.950000" maxaura="1.000000" regaura="3.000000" recruitcost="2500000" weight="100" capacity="100000" speed="1.000000" hp="2700" ac="10" damage="2d60" unarmedattack="0" unarmeddefense="0" attackmodifier="10" defensemodifier="12" scarepeasants="yes" fly="yes" walk="yes" teach="no" getitem="yes" resistbash="yes" shapeshift="yes">
|
|
||||||
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
|
||||||
<function name="move" value="movedragon"/>
|
|
||||||
<skill name="tactics" modifier="20"/>
|
|
||||||
<skill name="perception" modifier="20"/>
|
|
||||||
<attack type="4" damage="5d30"/>
|
|
||||||
<attack type="4" damage="3d20"/>
|
|
||||||
<attack type="4" damage="3d20"/>
|
|
||||||
<attack type="4" damage="5d30"/>
|
|
||||||
<attack type="6" spell="174"/>
|
|
||||||
<attack type="6" spell="175"/>
|
|
||||||
<precombatspell spell="176"/>
|
|
||||||
</race>
|
|
||||||
|
|
||||||
<race name="ghast" magres="0.600000" maxaura="1.000000" regaura="1.000000" recruitcost="5" weight="1000" capacity="540" speed="1.000000" hp="60" ac="2" damage="1d7" unarmedattack="6" unarmeddefense="6" attackmodifier="6" defensemodifier="6" scarepeasants="yes" walk="yes" nolearn="yes" teach="no" absorbpeasants="yes" noheal="yes" undead="yes" equipment="yes" nogive="no">
|
<race name="ghast" magres="0.600000" maxaura="1.000000" regaura="1.000000" recruitcost="5" weight="1000" capacity="540" speed="1.000000" hp="60" ac="2" damage="1d7" unarmedattack="6" unarmeddefense="6" attackmodifier="6" defensemodifier="6" scarepeasants="yes" walk="yes" nolearn="yes" teach="no" absorbpeasants="yes" noheal="yes" undead="yes" equipment="yes" nogive="no">
|
||||||
<ai splitsize="2000" aggression="0.02" killpeasants="yes" moverandom="yes"/>
|
<ai splitsize="2000" aggression="0.02" killpeasants="yes" moverandom="yes"/>
|
||||||
<function name="name" value="nameghoul"/>
|
<function name="name" value="nameghoul"/>
|
||||||
|
@ -161,5 +129,124 @@
|
||||||
<skill name="unarmed" modifier="1"/>
|
<skill name="unarmed" modifier="1"/>
|
||||||
<attack type="1" damage="1d7"/>
|
<attack type="1" damage="1d7"/>
|
||||||
</race>
|
</race>
|
||||||
|
|
||||||
|
<!-- wdw-only races -->
|
||||||
|
<race name="apepsnake" magres="0.900000" maxaura="1.000000" regaura="1.000000" recruitcost="50000" weight="100" capacity="50" speed="1.000000" hp="20" ac="1" damage="0d0" unarmedattack="0" unarmeddefense="0" attackmodifier="6" defensemodifier="10" scarepeasants="yes" fly="yes" walk="yes" teach="no" canguard="yes" invinciblenonmagic="yes" giveitem="yes" giveperson="yes" giveunit="yes" getitem="yes">
|
||||||
|
<ai splitsize="500" attackrandom="yes" killpeasants="yes" moverandom="yes" learn="yes"/>
|
||||||
|
<attack type="2" damage="3d15"/>
|
||||||
|
<attack type="3" damage="1d1"/>
|
||||||
|
<attack type="4" damage="1d1"/>
|
||||||
|
</race>
|
||||||
|
<race name="anubis" magres="0.950000" maxaura="1.000000" regaura="3.000000" recruitcost="2500000" weight="100" capacity="100000" speed="1.000000" hp="2700" ac="10" damage="2d60" unarmedattack="0" unarmeddefense="0" attackmodifier="10" defensemodifier="12" scarepeasants="yes" fly="yes" walk="yes" teach="no" getitem="yes" resistbash="yes" shapeshift="yes">
|
||||||
|
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
||||||
|
<function name="move" value="movedragon"/>
|
||||||
|
<skill name="tactics" modifier="20"/>
|
||||||
|
<skill name="perception" modifier="20"/>
|
||||||
|
<attack type="4" damage="5d30"/>
|
||||||
|
<attack type="4" damage="3d20"/>
|
||||||
|
<attack type="4" damage="3d20"/>
|
||||||
|
<attack type="4" damage="5d30"/>
|
||||||
|
<attack type="6" spell="174"/>
|
||||||
|
<attack type="6" spell="175"/>
|
||||||
|
<precombatspell spell="176"/>
|
||||||
|
</race>
|
||||||
|
<race name="apophis" magres="0.950000" maxaura="1.000000" regaura="3.000000" recruitcost="2500000" weight="100" capacity="100000" speed="1.000000" hp="2700" ac="10" damage="2d60" unarmedattack="0" unarmeddefense="0" attackmodifier="10" defensemodifier="12" scarepeasants="yes" fly="yes" walk="yes" teach="no" getitem="yes" resistbash="yes" shapeshift="yes">
|
||||||
|
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
||||||
|
<function name="move" value="movedragon"/>
|
||||||
|
<skill name="tactics" modifier="20"/>
|
||||||
|
<skill name="perception" modifier="20"/>
|
||||||
|
<attack type="4" damage="5d30"/>
|
||||||
|
<attack type="4" damage="3d20"/>
|
||||||
|
<attack type="4" damage="3d20"/>
|
||||||
|
<attack type="4" damage="5d30"/>
|
||||||
|
<attack type="6" spell="174"/>
|
||||||
|
<attack type="6" spell="175"/>
|
||||||
|
<precombatspell spell="176"/>
|
||||||
|
</race>
|
||||||
|
|
||||||
|
<race name="phoenix" magres="0.900000" maxaura="1.000000" regaura="2.000000" recruitcost="50000" weight="50000" capacity="30000" speed="2.000000" hp="500" ac="6" damage="1d20" unarmedattack="0" unarmeddefense="0" attackmodifier="7" defensemodifier="7" scarepeasants="yes" fly="yes" walk="yes" teach="no" getitem="yes" resistbash="yes" resistcut="yes" resistpierce="yes">
|
||||||
|
<ai splitsize="2" learn="yes"/>
|
||||||
|
<skill name="magic" modifier="16"/>
|
||||||
|
<skill name="tactics" modifier="8"/>
|
||||||
|
<skill name="perception" modifier="20"/>
|
||||||
|
<attack type="4" damage="1d12"/>
|
||||||
|
<attack type="4" damage="1d10"/>
|
||||||
|
<attack type="4" damage="1d10"/>
|
||||||
|
<attack type="6" spell="immolation"/>
|
||||||
|
</race>
|
||||||
|
<race name="sphinx" magres="0.900000" maxaura="1.000000" regaura="3.000000" recruitcost="250000" weight="180000" capacity="100000" speed="1.000000" hp="2700" ac="8" damage="2d60" unarmedattack="0" unarmeddefense="0" attackmodifier="10" defensemodifier="10" scarepeasants="yes" fly="yes" walk="yes" teach="no" getitem="yes" resistbash="yes" resistcut="yes" resistpierce="yes">
|
||||||
|
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
||||||
|
<skill name="magic" modifier="12"/>
|
||||||
|
<skill name="tactics" modifier="12"/>
|
||||||
|
<skill name="perception" modifier="10"/>
|
||||||
|
<attack type="4" damage="3d20"/>
|
||||||
|
<attack type="4" damage="3d20"/>
|
||||||
|
<attack type="4" damage="5d30"/>
|
||||||
|
<attack type="6" spell="powerful_dragonbreath"/>
|
||||||
|
<attack type="6" spell="aura_of_fear"/>
|
||||||
|
</race>
|
||||||
|
<race name="littlescarab" magres="0.000000" maxaura="0.000000" regaura="0.000000" recruitcost="50" weight="500" capacity="200" speed="1.000000" hp="25" ac="1" damage="2d6" unarmedattack="0" unarmeddefense="0" attackmodifier="6" defensemodifier="3" walk="yes" teach="no" giveitem="yes" getitem="yes">
|
||||||
|
<ai splitsize="5000"/>
|
||||||
|
<attack type="4" damage="2d6"/>
|
||||||
|
<attack type="4" damage="1d4"/>
|
||||||
|
<attack type="4" damage="1d4"/>
|
||||||
|
</race>
|
||||||
|
<race name="greenscarab" magres="0.000000" maxaura="0.000000" regaura="0.000000" recruitcost="50" weight="500" capacity="200" speed="1.000000" hp="25" ac="5" damage="2d6" unarmedattack="0" unarmeddefense="0" attackmodifier="6" defensemodifier="3" scarepeasants="yes" fly="yes" walk="yes" teach="no" giveitem="yes" getitem="yes">
|
||||||
|
<ai splitsize="50"/>
|
||||||
|
<skill name="magic" modifier="4"/>
|
||||||
|
<skill name="tactics" modifier="4"/>
|
||||||
|
<skill name="stealth" modifier="2"/>
|
||||||
|
<skill name="perception" modifier="2"/>
|
||||||
|
<attack type="4" damage="2d6"/>
|
||||||
|
<attack type="4" damage="1d6"/>
|
||||||
|
<attack type="4" damage="1d6"/>
|
||||||
|
<attack type="6" spell="acidrain"/>
|
||||||
|
</race>
|
||||||
|
<race name="bluescarab" magres="0.000000" maxaura="0.000000" regaura="0.000000" recruitcost="50" weight="500" capacity="200" speed="1.000000" hp="30" ac="5" damage="2d6" unarmedattack="0" unarmeddefense="0" attackmodifier="6" defensemodifier="3" scarepeasants="yes" fly="yes" walk="yes" teach="no" giveitem="yes" getitem="yes">
|
||||||
|
<ai splitsize="50"/>
|
||||||
|
<skill name="magic" modifier="4"/>
|
||||||
|
<skill name="tactics" modifier="4"/>
|
||||||
|
<skill name="stealth" modifier="2"/>
|
||||||
|
<skill name="perception" modifier="2"/>
|
||||||
|
<attack type="4" damage="2d6"/>
|
||||||
|
<attack type="4" damage="1d6"/>
|
||||||
|
<attack type="4" damage="1d6"/>
|
||||||
|
<attack type="6" spell="coldfront"/>
|
||||||
|
</race>
|
||||||
|
<race name="redscarab" magres="0.000000" maxaura="0.000000" regaura="0.000000" recruitcost="50" weight="500" capacity="200" speed="1.000000" hp="25" ac="5" damage="2d6" unarmedattack="0" unarmeddefense="0" attackmodifier="6" defensemodifier="3" scarepeasants="yes" fly="yes" walk="yes" teach="no" giveitem="yes" getitem="yes">
|
||||||
|
<ai splitsize="50"/>
|
||||||
|
<skill name="magic" modifier="4"/>
|
||||||
|
<skill name="tactics" modifier="4"/>
|
||||||
|
<skill name="stealth" modifier="2"/>
|
||||||
|
<skill name="perception" modifier="2"/>
|
||||||
|
<attack type="4" damage="2d6"/>
|
||||||
|
<attack type="4" damage="1d6"/>
|
||||||
|
<attack type="4" damage="1d6"/>
|
||||||
|
<attack type="6" spell="firestorm"/>
|
||||||
|
</race>
|
||||||
|
<race name="undeadpharaoh" magres="0.950000" maxaura="1.000000" regaura="3.000000" recruitcost="2500000" weight="100" capacity="100000" speed="1.000000" hp="2700" ac="10" damage="2d60" unarmedattack="0" unarmeddefense="0" attackmodifier="10" defensemodifier="12" scarepeasants="yes" cannotmove="yes" teach="no" getitem="yes" resistbash="yes" resistcut="yes" resistpierce="yes">
|
||||||
|
<ai splitsize="1" killpeasants="yes" learn="yes"/>
|
||||||
|
<skill name="tactics" modifier="20"/>
|
||||||
|
<skill name="perception" modifier="20"/>
|
||||||
|
<attack type="4" damage="5d30"/>
|
||||||
|
<attack type="4" damage="3d20"/>
|
||||||
|
<attack type="4" damage="3d20"/>
|
||||||
|
<attack type="4" damage="5d30"/>
|
||||||
|
<attack type="6" spell="drain_skills"/>
|
||||||
|
<attack type="6" spell="aura_of_fear"/>
|
||||||
|
<precombatspell spell="shadowcall"/>
|
||||||
|
</race>
|
||||||
|
<race name="mummy" magres="0.600000" maxaura="1.000000" regaura="1.000000" recruitcost="5" weight="1000" capacity="540" speed="1.000000" hp="60" ac="2" damage="1d7" unarmedattack="6" unarmeddefense="6" attackmodifier="6" defensemodifier="6" scarepeasants="yes" walk="yes" teach="no" noheal="yes" undead="yes" equipment="yes" nogive="yes">
|
||||||
|
<ai splitsize="10000" moverandom="yes"/>
|
||||||
|
<skill name="melee" modifier="1"/>
|
||||||
|
<skill name="polearm" modifier="1"/>
|
||||||
|
<skill name="tactics" modifier="1"/>
|
||||||
|
<skill name="stamina" modifier="1"/>
|
||||||
|
<skill name="unarmed" modifier="1"/>
|
||||||
|
<attack type="4" damage="2d8"/>
|
||||||
|
<attack type="3" damage="1d5"/>
|
||||||
|
<attack type="3" damage="1d5"/>
|
||||||
|
<attack type="2" damage="1d30"/>
|
||||||
|
<attack type="2" damage="1d30"/>
|
||||||
|
</race>
|
||||||
</races>
|
</races>
|
||||||
|
|
|
@ -12,6 +12,7 @@ function process(orders)
|
||||||
|
|
||||||
-- set up the sphinx
|
-- set up the sphinx
|
||||||
-- init_sphinxhints()
|
-- init_sphinxhints()
|
||||||
|
update_phoenix()
|
||||||
sphinx_handler()
|
sphinx_handler()
|
||||||
sphinx_weekly()
|
sphinx_weekly()
|
||||||
|
|
||||||
|
@ -57,6 +58,7 @@ scripts = {
|
||||||
"extensions.lua",
|
"extensions.lua",
|
||||||
"write_emails.lua",
|
"write_emails.lua",
|
||||||
"wdw/sphinx.lua",
|
"wdw/sphinx.lua",
|
||||||
|
"wdw/phoenix.lua",
|
||||||
"wdw/standings.lua"
|
"wdw/standings.lua"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
function update_phoenix()
|
||||||
|
local f
|
||||||
|
for f in factions() do
|
||||||
|
local u
|
||||||
|
for u in f.units do
|
||||||
|
if u.race=="phoenix" then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
f = get_faction(0)
|
||||||
|
if (f~=nil) then
|
||||||
|
local r, nregions = 0
|
||||||
|
for r in regions() do
|
||||||
|
nregions = nregions+1
|
||||||
|
end
|
||||||
|
local rno = math.random(nregions)
|
||||||
|
for r in regions() do
|
||||||
|
rno = rno - 1
|
||||||
|
if rno <=1 then
|
||||||
|
if r.plane_id==0 and r.name~=nil then
|
||||||
|
local u = add_unit(f, r)
|
||||||
|
u.race = "phoenix"
|
||||||
|
u.name = "Der Phönix"
|
||||||
|
-- TODO: generate an appropriate region message
|
||||||
|
break
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
10
src/todo.txt
10
src/todo.txt
|
@ -21,7 +21,6 @@ Code cleanup:
|
||||||
|
|
||||||
Larger Features:
|
Larger Features:
|
||||||
- eressea (b/g)zip reports?
|
- eressea (b/g)zip reports?
|
||||||
- mailit-format ändern?
|
|
||||||
- NO_RUNNING
|
- NO_RUNNING
|
||||||
- ZERSTÖRE - Man sollte alle Materialien zurückkriegen können:
|
- ZERSTÖRE - Man sollte alle Materialien zurückkriegen können:
|
||||||
|
|
||||||
|
@ -46,20 +45,13 @@ Old Terrain still needed:
|
||||||
- monster.c, ent movement
|
- monster.c, ent movement
|
||||||
- economy.c, insekten
|
- economy.c, insekten
|
||||||
|
|
||||||
mailit-format ändern?
|
|
||||||
|
|
||||||
[11:01] <Enno`> am besten wäre, wenn mailit nur die optionen, nicht das ganze script enthielte
|
|
||||||
[11:01] <Enno`> und ein skript dann mailit als input nähme
|
|
||||||
[11:02] <Enno`> also nur enno@eressea.upb.de pka3 BZIP2 nr cr zv
|
|
||||||
|
|
||||||
unterschiede in vin3 + wdw per config statt defines?
|
unterschiede in vin3 + wdw per config statt defines?
|
||||||
|
|
||||||
#define NEWATSROI 1
|
#define NEWATSROI 1
|
||||||
#define ATSBONUS 2
|
#define ATSBONUS 2
|
||||||
#define ROIBONUS 4
|
#define ROIBONUS 4
|
||||||
|
|
||||||
#define WDW_PHOENIX
|
#define WDW_PYRAMIDSPELL
|
||||||
#define WDW_PYRAMIDSPE
|
|
||||||
|
|
||||||
#define ARENA_MODULE
|
#define ARENA_MODULE
|
||||||
#define WORMHOLE_MODULE
|
#define WORMHOLE_MODULE
|
||||||
|
|
Loading…
Reference in New Issue