diff --git a/src/common/gamecode/laws.c b/src/common/gamecode/laws.c
index 7a6421282..03783b707 100644
--- a/src/common/gamecode/laws.c
+++ b/src/common/gamecode/laws.c
@@ -1163,7 +1163,7 @@ quit(void)
continue;
}
if (u->faction->age > 3 || fval(u->faction, FFL_RESTART)) {
- cmistake(u, S->s, 305, MSG_EVENT);
+ cmistake(u, S->s, 314, MSG_EVENT);
continue;
}
diff --git a/src/common/kernel/battle.c b/src/common/kernel/battle.c
index fe6888fc2..67da406b8 100644
--- a/src/common/kernel/battle.c
+++ b/src/common/kernel/battle.c
@@ -1051,7 +1051,7 @@ terminate(troop dt, troop at, int type, const char *damage, boolean missile)
}
#if CHANGED_CROSSBOWS == 1
- if(fval(awtype,WTF_ARMORPIERCING)) {
+ if(awtype && fval(awtype,WTF_ARMORPIERCING)) {
/* crossbows */
ar /= 2;
an /= 2;
diff --git a/src/common/settings-eressea.h b/src/common/settings-eressea.h
index ab9f01cb3..093f94acc 100644
--- a/src/common/settings-eressea.h
+++ b/src/common/settings-eressea.h
@@ -30,10 +30,10 @@
#define SKILLPOINTS 0
#define NEW_MIGRATION 1
#define PEASANTS_DO_NOT_STARVE 0
-#define GUARD_DISABLES_RECRUIT 0
-#define GUARD_DISABLES_PRODUCTION 0
-#define RESOURCE_QUANTITY 1.0
-#define RECRUITFRACTION 20 /* 100/RECRUITFRACTION% */
+#define GUARD_DISABLES_RECRUIT 1
+#define GUARD_DISABLES_PRODUCTION 1
+#define RESOURCE_QUANTITY 0.5
+#define RECRUITFRACTION 40 /* 100/RECRUITFRACTION% */
#define CATAPULT_AMMUNITION 0 /* Gebaut werden kann sie auch mit 0! */
-#define CHANGED_CROSSBOWS 0
+#define CHANGED_CROSSBOWS 1
diff --git a/src/corwin.mk b/src/corwin.mk
index 49d389cab..64e1a4837 100644
--- a/src/corwin.mk
+++ b/src/corwin.mk
@@ -4,7 +4,7 @@ ifndef ERESSEA
endif
# Hier definieren, damit nicht '@gcc'
-CC = gcc-3.0 -D_GNU_SOURCE -ansi -pedantic
+CC = gcc-3.0 -D_GNU_SOURCE -ansi -pedantic -W
DEPEND = @gcc-3.0 -MM -MG -r
# CC = gcc -D_GNU_SOURCE
AR = ar
diff --git a/src/eressea/korrektur.c b/src/eressea/korrektur.c
index 3bea760d2..61e9790e0 100644
--- a/src/eressea/korrektur.c
+++ b/src/eressea/korrektur.c
@@ -2801,6 +2801,18 @@ xe_init(void)
return 0;
}
+static int
+fix_restart_flag(void)
+{
+ faction *f;
+
+ for(f=factions; f; f=f->next) {
+ freset(f, FFL_RESTART);
+ }
+
+ return 0;
+}
+
extern border *borders[];
static void
@@ -2894,6 +2906,7 @@ korrektur(void)
do_once("guac", guard_conversion());
do_once("qpoi", questportal_init());
do_once("xini", xe_init());
+ do_once("rest", fix_restart_flag());
warn_password();
fix_road_borders();
diff --git a/src/res/de/messages.xml b/src/res/de/messages.xml
index fd7b18d90..c07362d56 100644
--- a/src/res/de/messages.xml
+++ b/src/res/de/messages.xml
@@ -4430,6 +4430,17 @@
+
+
+
+
+
+
+
+ "$unit($unit) in $region($region): '$command' - Eine Partei kann nur einmal neu starten."
+ "$unit($unit) in $region($region): '$command' - Restart can only be used once."
+
+