VERKAUFE ALLES verbessert
- http://eressea.upb.de/mantis/bug_view_page.php?bug_id=0000192
Keine opponent-Auswahl mehr im Kampf
- LUA:
unit.weight und unit.capacity (read-only)
- Reporterzeugung:
Parteiliste nur noch in parteien.full
Stringfix (Fräcke)
Bugfix leave_trail. Aufsplitten von move_ship
- Änderung von get_param (liefert NULL für undeklarierte params) in Vorbereitung auf "mehr config, weniger define"
Diverse indenting-anpassungen (space statt tabs)
- alle xml dateien sind echtes XML
- alle alten XML Leseroutinen sind raus
- Daten werden mit dem libxml DOM parser gelesen
- der alte XML Parser ist weg
- libraries required: libxml2, iconv
==32343== Source and destination overlap in memcpy(0x4192492c, 0x4192492c, 20)
==32343== at 0x40020351: memcpy (mac_replace_strmem.c:95)
==32343== by 0x80BC95B: scramble (common/gamecode/economy.c:132)
==32343== by 0x80BCA71: expandorders (common/gamecode/economy.c:169)
==32343== by 0x80BCB75: expandrecruit (common/gamecode/economy.c:199)
==32343==
==32343== Source and destination overlap in memcpy(0x443f3de0, 0x443f3de0, 20)
==32343== at 0x40020351: memcpy (mac_replace_strmem.c:95)
==32343== by 0x80BC95B: scramble (common/gamecode/economy.c:132)
==32343== by 0x80BCA71: expandorders (common/gamecode/economy.c:169)
==32343== by 0x80C31A4: expandtax (common/gamecode/economy.c:3108)
==32343==
==32343== Source and destination overlap in memcpy(0x425a5b4c, 0x425a5b4c, 20)
==32343== at 0x40020351: memcpy (mac_replace_strmem.c:95)
==32343== by 0x80BC95B: scramble (common/gamecode/economy.c:132)
==32343== by 0x80BCA71: expandorders (common/gamecode/economy.c:169)
==32343== by 0x80C09C3: expandbuying (common/gamecode/economy.c:1949)
==32343==
==32343== Source and destination overlap in memcpy(0x425a78e0, 0x425a78e0, 20)
==32343== at 0x40020351: memcpy (mac_replace_strmem.c:95)
==32343== by 0x80BC95B: scramble (common/gamecode/economy.c:132)
==32343== by 0x80BCA71: expandorders (common/gamecode/economy.c:169)
==32343== by 0x80C10A3: expandselling (common/gamecode/economy.c:2180)
==32343==
-- implementiert. Kann nur einmal pro Partei verwendet werden, und nur von einem Magier. Müssen wir erklären.
Amulett des wahren Sehens und Ring der Unsichtbarkeit geben lediglich einen Bonus auf Wahrnehmung (+2) und Tarnung (+4).
-- das define war nicht aktiviert
Halblinge haben Armbrustschiessen +0 (statt +1).
-- spearates Rassenfile für WDW
Es gibt spezielle Regeln für Allianzen, und der HELFE und KONTAKTIERE Befehl sind eingeschränkt. Konkret kann kein HELP_FIGHT HELP_GUARD HELP_FSTEALTH HELP_MONEY gegeben werden (die anderen sind erlaubt).
-- mit #defeine ALLIES_ONLY definiert
Jede Allianz kann bis zu 15 Magier und 15 Alchemisten haben. Jede einzelne Partei der Allianz kann dabei nicht mehr als 15/Anzahl_Parteien (aufgerundet) Magier bzw. Alchemisten haben, und die Gesamtsumme darf 15 nicht übersteigen.
-- mit #define ALLIANCE_LIMITS gemacht.
Die Startgeschenke (Personen, Silber, ...) werden pro Allianz, nicht pro Spieler verteilt. Größere Allianzen bekommen also weniger pro Spieler.
-- Nochmal geändert: Die Allianzen kriegen jede 168 Personen zum Start, weil sich das gut aufteilen lässt. Das wird auf 28 Einheiten pro Partei gesplittet, jede Einheit hat eines der Talente, außer der Starteinheit, die hat den magicskillboost. Einige Skills kommen öfter vor als andere, das ist nicht einfach vermeidbar. Sollte aber auch wurscht sein, es geht primär darum, lehren zu können.
Es gibt ein Einheitenlimit von 1000 Einheiten pro Allianz.
-- die Regel sparen wir uns einfach mal.
Neue allgemeine Eigenschaften für Gebäude:
- Magieresistenz,
- Magieresistenz für insassen,
- Auraregenerationsmodifikator für Insassen,
- Schutz im Kampf,
- Magisch
* PFLANZE repariert
* Kampfzaubernutzung von statusrow repariert
* Alte Orks sind keine playerrrace mehr.
* Auch Snotlinge, die Magie/Alchemie gelernt haben, aber noch T0 sind, werden konvertiert.
* Das Erstrundenpasswort erscheint im CR.
* Anzeige von Parteitarnung im CR repariert.
* mapper-makros auf pdcurses-kompatibilität angepasst.
* mapper: SeedPartei ('s') entfernt.
Das linkt momentan wegen zwei fehlenden Funktionen noch nicht, die ich morgen nachreiche. Alte Varainte kompoiliert und linkt aber, also einfach nicht an den defines spielen im Moment.
* RACE_ADJUSTMENT korrekt deaktiviert.
* Schiffe werden nur noch beschädigt, wenn der Kampf für sie relevant war.
* Erneute Reparatur für Regionen ohne demand.
* KÄMPFE HELFE NICHT repariert.
* Setzen des Kampfzaubers ohne Stufenangabe setzt die Stufe auf 0 (=max)
* Übersetzung des HP-Status im Report
* Teilübersetzung der Spionage-Reports.
* locale_string() liefert auf NULL wieder NULL zurück (statt crash).
GIB xyz EINHEIT
GIB 0 ALLES SILBER
--> ALLE Befehle der übergebenen Einheit werden gelöscht.
* neue Funktion (convenience): ucansee(f, u1, u2)
liefert u1, wenn cansee(f,u1), sonst u2
* neue mistakes eingefügt uns übersetzt
* message bugfix:
u->htisorder kann gelöscht werden (z.b. NACH). Daher muss ein pointer auf
einen befehl in einer message immer auf den u->order Eintrag zeigen, damit er
zeit der auswertung noch existiert.
findorder(u, u->thisorder) tut das. Ist an mehreren Stellen nicht benutzt
worden. assert eingebaut, das das prüft.
* RESERVE_DONATIONS
Gegenstände, die von einer anderen Partei übergeben wurden, werden nicht
reserviert.
* TWOPASS_GIVE:
GIB Befehle werden zuerst an fremde Einheiten, danach in einem zweiten
Durchlauf an eigene Einheiten, ausgeführt.
* msg_message
An einigen messages ausprobiert, ob man die gleiche Message mehreren
Parteien einhängen kann - klappt, spart Speicher.
Allerdings fehlt dazu ein ordentliches memory-management (refcounter)
- STRINGS
strings.txt für deutsch und englisch um einen Haufen fehlender Einträge
erweitert.language.c schreibt jetzt auf Wunsch ein logfile aller fehlender
strings, was extrem hilfreich beim ergänzen ist.
- LOKALISIERUNG
Man kann jetzt Befehle komplett in einer anderen Sprache geben. Der NR macht
Talente, Zugvorlage und Gegenstände in der eigenen Sprache.
- monster.h
zu monster.c nach gamecode verschoben
- locale_string(key, NULL)
NULL-locale liefert jetzt den key selbst zurück.
- CR:
1. Anzeige der hashes statt der lokalisierten strings
2. TRANSLATION Block
- Messages:
make_message heisst jetzt msg_message
msg_error() ist eine neue funktion für fehlermeldungen
- strings.txt, messages.xml
Einen Haufen neuer Einträge gemacht.