BotE.log: Unterschied zwischen den Versionen

Aus BotE Wiki
Zur Navigation springen Zur Suche springen
(SystemAI::ChooseShip())
Zeile 119: Zeile 119:
  
 
{| class="wikitable" <hiddentext>generated with [[:de:Wikipedia:Helferlein/VBA-Macro for EXCEL tableconversion]] V1.8<\hiddentext>
 
{| class="wikitable" <hiddentext>generated with [[:de:Wikipedia:Helferlein/VBA-Macro for EXCEL tableconversion]] V1.8<\hiddentext>
|- style="font-size:11pt;font-weight:bold"  valign="bottom"
+
|- style="font-size:11pt;font-weight:bold"   
 
| Eintrag
 
| Eintrag
 
| Bemerkung
 
| Bemerkung
  
|-  valign="bottom"
+
|-   
| height="15" | CAIPrios::CalcShipPrios() begin...  
+
| CAIPrios::CalcShipPrios() begin...  
|style="font-size:11pt" align="right" | &nbsp;
+
|&nbsp;
  
|-  valign="bottom"
+
|-   
| height="15" | CAIPrios::CalcShipPrios(): max Combatship Priority is: 14919
+
| CAIPrios::CalcShipPrios(): max Combatship Priority is: 14919
|style="font-size:11pt" align="right" | &nbsp;
+
|&nbsp;
  
|-  valign="bottom"
+
|-   
| height="15" | Calc Shippowers: Race: MAJOR6 has a complete shippower of 8152 - all shippower is 8152
+
| Calc Shippowers: Race: MAJOR6 has a complete shippower of 8152 - all shippower is 8152
|style="font-size:11pt" align="right" | &nbsp;
+
|&nbsp;
  
|-  valign="bottom"
+
|-   
| height="15" | Calc Priorities: Race: MAJOR6 - CombatShipPrio: 3 - ColoshipPrio: 4 - TransportPrio: 8
+
| Calc Priorities: Race: MAJOR6 - CombatShipPrio: 3 - ColoshipPrio: 4 - TransportPrio: 8
|style="font-size:11pt" align="right" | &nbsp;
+
|&nbsp;
  
|-  valign="bottom"
+
|-   
| height="15" | Number of shiptypes: Race: MAJOR6 - Colonyships: 12 - Transporthips: 1
+
| Number of shiptypes: Race: MAJOR6 - Colonyships: 12 - Transporthips: 1
|style="font-size:11pt" align="right" | &nbsp;
+
|&nbsp;
  
|-  valign="bottom"
+
|-   
| height="15" | CAIPrios::CalcShipPrios() ... ready
+
| CAIPrios::CalcShipPrios() ... ready
|style="font-size:11pt" align="right" | &nbsp;
+
|&nbsp;
  
 
|}
 
|}
  
 +
== SystemAI::ChooseShip() ==
 +
 +
Die folgenden Meldungen aus der [[Programm-Code|SystemAI.cpp]] benützt die KI, um zu entscheiden, ob und welches Kriegsschiffe gebaut werden soll.
 +
 +
{| class="wikitable" <hiddentext>generated with
 +
|- style="font-size:11pt;font-weight:bold" 
 +
| Eintrag
 +
| Bemerkung
 +
 +
|- 
 +
| CSystemAI::GetShipBuildPrios(): Race MAJOR1 - System: Belamar - CombatShipPrio: 1 (max 4)
 +
|für jeden AI-Major wird System für System durchgegangen
 +
 +
|- 
 +
| CSystemAI::GetShipBuildPrios(): ... ready
 +
|das erfolgreiche Holen der ShipBuild-Prios ist ready
 +
 +
|- 
 +
| CSystemAI::ChooseBuilding(): min priority after ships: 1
 +
|&nbsp;
 +
 +
|- 
 +
| CSystemAI::ChooseBuilding(): min priority after ships, updates and workers: 1
 +
|&nbsp;
 +
 +
|- 
 +
| CSystemAI::ChooseShip(): build combatship in system: Belamar
 +
|Entscheidung, in Belamar ein Kampfschiff zu bauen
 +
 +
|- 
 +
| CSystemAI::ChooseShip(): buildable combatships Wolf - ID: 34 - Power: 9127
 +
| baubare Kampfschiffe werden aufgelistet, nach Power absteigend
 +
 +
|- 
 +
| CSystemAI::ChooseShip(): choosen combatship to build: Wolf
 +
| die Schiffsklasse mit der höchste Power (hier: Wolf) wird gewählt
 +
 +
|- 
 +
| CSystemAI::GetShipBuildPrios(): ... ready
 +
|nochmal wird ShipBuildPrios eingelesen
 +
 +
|- 
 +
| CSystemAI::ChooseBuilding(): min priority after ships: 0
 +
|nochmal festgestellt (verändert zu oben)
 +
 +
|- 
 +
| CSystemAI::ChooseBuilding(): min priority after ships, updates and workers: -13
 +
|nochmal festgestellt (verändert zu oben)
 +
 +
|- 
 +
| CSystemAI::ChooseBuilding(): choosen prio: 2
 +
|
 +
 +
|- 
 +
|'''jetzt wird das nächste System durchlaufen '''
 +
|
  
 
== KI: Geheimdienst ==
 
== KI: Geheimdienst ==

Version vom 29. April 2012, 10:38 Uhr

Englisch-Symbol.jpg for English just click here

Einleitung

Die Datei BotE.log liegt ab Version 0.81 im Verzeichnis des Windows-Users \Eigene Dateien\Birth of the Empires. Bis Version 0.80 lag sie im Programmverzeichnis von Birth of the Empires.

Sie dient zur Nachvollziehung von technischen Problemen. In ihr werden Ereignisse sowie Fehler-Meldungen festgehalten, die während des Spiels auftreten.


Gerne kann die BotE.log hier noch näher beschrieben werden - nur zu !


Sie wird bei jedem BotE-Start angelegt, die vorherige bote.log wird dabei überschrieben. Wer z.B. für die 70 Runden, die er zuvor gespielt hat, behalten will, kann diese ja dorthin kopieren, wo die Savegame sind und die BotE.log ähnlich benennen.

Das Modifizieren der BotE.log ist sinnlos, da sie bei jedem Spiel neu geschrieben wird und BotE aus ihr keine Informationen bezieht.

Info-Meldungen

Used seed for randomgenerator

?? benutzter Einstiegswert für Zufallsgenerator - wofür (oder generell??)

Major x

Ein Major = Imperium nach dem anderen wird durchgegangen - vom Menschen gespielte Majors bleiben außen vor.

Sectors to terraform or colonize

(im Original "colinize", weil Tippfehler)


Neben der Race-ID werden hier Ziel-Sektoren angezeigt. Beispiel:

POP: 22 - KO: 24/9

KO 24/9 = 24 rüber (horizontal), 9 runter (vertikal) = Sektor j25

(programm-intern wird bei null begonnen, nicht bei 1 oder bei a, insofern hat Sektor a1 die Koordinaten (KO) 0/0, b2 hat 1/1. Hilfreich ist diese Sektorenkarte)


Darin findet sich ein Ziel mit Rest-Kolonisierungs-Bevölkerungs-Potenzial POP (Population) = 24

(es kann 1 Mrd. zuwenig anzeigen sein, Beispiel: 17.000 Mrd. => POP 16).

Rest-Kolonisierungs-Bevölkerungs-Potenzial bedeutet: Besitzt das System z.B. Planeten mit insgesamt 36 Mrd., ist einer mit 19.800 bereits kolonisiert und die anderen mit 16.200 noch nicht, wird 16 angezeigt. Hinweis: Begonnenes Terraforming mit anschließendem Kolonisieren führt die KI immer bis zum Ende durch, so dass die KI relevante Systeme auch vollständig erkennt und kolonisiert. (Fraglich: wenn die KI ein System erobert mit einem nicht-kolonisiertem Planeten unter 6 Mrd., kolonisiert es den dann?)


Die Sortierung ist absteigend nach POP, d.h. Ziele mit höchstem Bevölkerungszuwachs stehen ganz oben.

Es werden keine Ziele unter 6 Mrd. angezeigt bzw. angesteuert.

Raumschlacht

Raumschlachten werden (nur) folgendermassen festgehalten (eigentlich selbsterklärend):

  Eintrag Bemerkung
1 Combat in Sector 18/11  
2 Server is sending CombatData to client...  
3 Client is receiving CombatData from server...  
4 Getting Message to Show CombatView...  
5 Showing CombatView  
6 Client 0 sending CombatData to server...  
7 Server receiving CombatData from client 1...  
8 COMBAT ROUND  
9 Race MAJOR1 is involved in combat. Tactic: User  
10 Race MAJOR6 is involved in combat. Tactic: Auto  


KI: CalcShipPrio

Die folgenden Meldungen aus der AIPrios.cpp benützt die KI, um zu entscheiden, ob Kolonie-, Transport- oder Kriegsschiffe gebaut werden sollen.

Eintrag Bemerkung
CAIPrios::CalcShipPrios() begin...  
CAIPrios::CalcShipPrios(): max Combatship Priority is: 14919  
Calc Shippowers: Race: MAJOR6 has a complete shippower of 8152 - all shippower is 8152  
Calc Priorities: Race: MAJOR6 - CombatShipPrio: 3 - ColoshipPrio: 4 - TransportPrio: 8  
Number of shiptypes: Race: MAJOR6 - Colonyships: 12 - Transporthips: 1  
CAIPrios::CalcShipPrios() ... ready  

SystemAI::ChooseShip()

Die folgenden Meldungen aus der SystemAI.cpp benützt die KI, um zu entscheiden, ob und welches Kriegsschiffe gebaut werden soll.

Eintrag Bemerkung
CSystemAI::GetShipBuildPrios(): Race MAJOR1 - System: Belamar - CombatShipPrio: 1 (max 4) für jeden AI-Major wird System für System durchgegangen
CSystemAI::GetShipBuildPrios(): ... ready das erfolgreiche Holen der ShipBuild-Prios ist ready
CSystemAI::ChooseBuilding(): min priority after ships: 1  
CSystemAI::ChooseBuilding(): min priority after ships, updates and workers: 1  
CSystemAI::ChooseShip(): build combatship in system: Belamar Entscheidung, in Belamar ein Kampfschiff zu bauen
CSystemAI::ChooseShip(): buildable combatships Wolf - ID: 34 - Power: 9127 baubare Kampfschiffe werden aufgelistet, nach Power absteigend
CSystemAI::ChooseShip(): choosen combatship to build: Wolf die Schiffsklasse mit der höchste Power (hier: Wolf) wird gewählt
CSystemAI::GetShipBuildPrios(): ... ready nochmal wird ShipBuildPrios eingelesen
CSystemAI::ChooseBuilding(): min priority after ships: 0 nochmal festgestellt (verändert zu oben)
CSystemAI::ChooseBuilding(): min priority after ships, updates and workers: -13 nochmal festgestellt (verändert zu oben)
CSystemAI::ChooseBuilding(): choosen prio: 2
jetzt wird das nächste System durchlaufen

KI: Geheimdienst

Die KI verwendet nur Sabotage. Eine Geheimdienstaktion wird gestartet, wenn die Geheimdienstpunkte + Punkte aus Depot größer sind als die gegnerische Innere Sicherheit + deren Inneres Depot. (Quelle+Details: IntelAI.cpp)

Eintrag Bemerkung
Intel-AI: Intel Prio of MAJOR6 is 3 Bei einer feindlichen Sabotage in den letzten 5 Runden erhöht sich die Prio zusätzlich um eins
Intel-AI: assigned intel victim of MAJOR2 is MAJOR5  
Intel-AI: our SP: 76 - enemies SP: 189 Der entscheidende Vergleich, ob eine Sabotage gestartet wird.

weitere Info-Meldungen

Bereich Befehl Bemerkung zugehöriger Befehl (Start/Ende der Aktion)
INFO storing savegame Speichern eines Spiel mit Angabe des Pfades  
INFO Begin preparing game data... Start eines Spieles (ab Runde 1) Preparing game data ready...
INFO Preparing game data ready...   Begin preparing game data...
INFO Server is sending NextRoundData to client... Zu Rundenbeginn und -ende werden alle 6 Spieler abgefragt/informiert/Daten übertragen ... serialization of NextRoundData succesfull
INFO ... serialization of NextRoundData succesfull Zu Rundenbeginn und -ende werden alle 6 Spieler abgefragt/informiert/Daten übertragen Server is sending NextRoundData to client...
INFO Client is receiving NextRoundData from server... Der jeweilige Spieler erhält die jeweiligen Daten ... serialization of NextRoundData succesfull
INFO ... serialization of NextRoundData succesfull Der jeweilige Spieler erhält die jeweiligen Daten Client is receiving NextRoundData from server...
INFO CNetworkHandler::OnNextRound ready Alle sind bereit für die nächste Runde ??  
INFO Init sound ready... Soundausgabe ist bereit  
INFO Client x sending EndOfRoundData to server... Client x sendet "Runde beenden" ... serialization of RoundEndData succesfull
INFO ... serialization of RoundEndData succesfull Client x sendet "Runde beenden" Client x sending EndOfRoundData to server...
INFO START NEXT ROUND (round: x) Beginn der nächsten Runde (Runden-Nummer in Klammern) NEXT ROUND calculation successfull
INFO NEXT ROUND calculation successfull Berechnung der nächsten Runde erfolgreich (nach "Rundenende") START NEXT ROUND (round: x)


Fehlermeldungen

WARNING Could not load graphic

Beispiel: "WARNING Could not load graphic: ...\Graphics\Planets\Gaspar 1.bop"

Das Thema ist bekannt. BotE versucht immer zuerst spezielle Planetennamen zu finden. Wenn es diese nicht gibt, werden zufällige Planetengrafiken genutzt.

Eigentlich bräuchten diese Meldungen nicht im Log stehen (tun sie aber im aktuellen Stand des Projekts).