Seite 54 von 70 ErsteErste ... 44450515253545556575864 ... LetzteLetzte
Ergebnis 796 bis 810 von 1046

Thema: [TAC] Europäische Fraktionen: Oberhäupter, Diplomatie

  1. #796
    Talking Bull Avatar von Writing Bull
    Registriert seit
    01.10.08
    Beiträge
    21.376
    Zitat Zitat von Ronnar Beitrag anzeigen
    Ich fürchte sinnvolle Bemerkungen wirst du von uns erst nach Testspielen bekommen können.

  2. #797
    hat den Blues Avatar von Elwood
    Registriert seit
    05.11.07
    Beiträge
    4.352
    Zitat Zitat von Fankman Beitrag anzeigen
    Unglaublich, ihr seit ja echt Freaks Lasst euch mal von Firaxis ein anständiges Salär auszahlen
    Danke, danke! ... das wäre natürlich eine zu befürwortende Lösung, auf ihren Rechnungen tauchen dann plötzlich zwei "TaCler" auf --- Total Alternativ Chief Leisure Enhanced Rebalancer .... *seufz*

    Zitat Zitat von Writing Bull Beitrag anzeigen
    Unglaublich, Elwood, wie du dich mit rays Unterstützung in den letzten Monaten zur Experteneinheit Routinierter Modder entwickelt hast, der die xml-Sümpfe unbeirrt aller Nebel und morastigen Untiefen durchstapft ...
    ... noch mals Danke! Das münze ich aber zu mindestens gleichen Teilen auf ray um, mittlerweile wate ich zwar durch xml Sümpfe, aber ohne Yodas Einblicke in die Tiefen der Macht, könnte ich oft einen X-Wing nicht von ner Liane unterscheiden

    Zitat Zitat von Akropolis Beitrag anzeigen
    Ehrlich gesagt hab ich bei euren tausenden KI-Werten langsam den Überblick verloren, welche Werte es gibt, wie sie wirken, ...

    Ich bin aber schon gespannt, wie die KI nach der Runderneuerung funktioniert.
    Zitat Zitat von Ronnar Beitrag anzeigen
    Gelesen habe ich's, die Einzelwerte auch so halbwegs verstanden. Aber welche Auswirkung die Werte in der Gesamtheit auf eine TAC-Partie haben, ist mir nicht ganz ersichtlich - da ich nicht so tief im Thema drinstecke wie du oder Ray.
    Ich fürchte sinnvolle Bemerkungen wirst du von uns erst nach Testspielen bekommen können.
    Zitat Zitat von Writing Bull Beitrag anzeigen
    Das geht mir im Wesentlichen ähnlich! Ich bin sehr gespannt, wie sich alles auswirken wir, und der Upload ist ja nicht mehr fern! Ich freue mich trotzdem sehr, wenn ihr hier mitlest und Anteil nehmt! Schon allein dass bewahrt vor gravierenden Logik-Bugs, die man doch hier und da vielleicht verzapft (Ich sage nur + oder - ...)). Außerdem habt ihr das alles schon z.T. mit Pfeffersack durch. Ich glaube einfach, wenn ich einen Wert XYZ veränder, der damals nach heißen Diskussionen oder gravierenden Problemen schon auf ABC festgelegt wurde, dann würde dass irgendjemandem auffallen, und ich bekäme hier Meldung.


    ... und nicht zu letzt ist es ein prima Archiv für das eigen Tun ... was glaubt ihr denn, wieviel ich noch von Werten im Kopf habe, die ich vor 3 Monaten gemacht habe ... aber ich kann´s wieder nachlesen, wenn´s raucht
    Geändert von Elwood (04. Oktober 2011 um 21:08 Uhr)
    Geschichten zum Lesen ...

    Der seltsame Fall des William Penn | Col II --- TaC-Mod | abgebrochen
    Wahnsinn mit Methode? | Col II --- TaC-Mod | beendet | SdM April 2012
    Visiting Vvardenfell | TES III Morrowind | pausiert
    Es war einmal (noch) kein Portugal | Civ IV --- PAE-Mod | beendet
    Pack die Thermohose ein ... | Icewind Dale --- Trials of the Luremaster | läuft
    NEU: [RL] ... wie Gott nach Frankreich - Elwoods ??? | Modellbaubericht | läuft

  3. #798
    hat den Blues Avatar von Elwood
    Registriert seit
    05.11.07
    Beiträge
    4.352
    die LeaderHeads.xml wurde wieder eifrig gepflügt und mit neuen Werten besät ... viel Spass beim ausprobieren in der aktuellen Arbeitsversion.

    Jetzt fehlen nur noch einige AttitudeThresholds ... dann ist der erste Block komplett durch ... 48 Werte, Junge, Junge
    Geändert von Elwood (05. Oktober 2011 um 20:20 Uhr)
    Geschichten zum Lesen ...

    Der seltsame Fall des William Penn | Col II --- TaC-Mod | abgebrochen
    Wahnsinn mit Methode? | Col II --- TaC-Mod | beendet | SdM April 2012
    Visiting Vvardenfell | TES III Morrowind | pausiert
    Es war einmal (noch) kein Portugal | Civ IV --- PAE-Mod | beendet
    Pack die Thermohose ein ... | Icewind Dale --- Trials of the Luremaster | läuft
    NEU: [RL] ... wie Gott nach Frankreich - Elwoods ??? | Modellbaubericht | läuft

  4. #799
    Talking Bull Avatar von Writing Bull
    Registriert seit
    01.10.08
    Beiträge
    21.376
    Prima! Vielen, vielen Dank. Das ist ein toller Zwischenerfolg.

  5. #800
    Col-Modder Avatar von raystuttgart
    Registriert seit
    19.03.10
    Ort
    Stuttgart
    Beiträge
    4.585
    Zitat Zitat von Elwood Beitrag anzeigen
    Jetzt fehlen nur noch einige AttitudeThresholds ...
    Bis zum Sonntag habe ich die komplett erklärt.
    Teammitgleid dieses Projekt für Colonization:
    [Mod] We The People
    (Nachfolgerprojekt von Religion and Revolution)

    Davor Teammitgleid dieses Projekt für Colonization:
    [Mod] Religion and Revolution

    Vor-Vorheriges Projekt für Colonization:
    [ModMod] ray's Wunschliste

    Und wiederum davor Teammitglied von:
    [Mod] The Authentic Colonization (TAC)

  6. #801
    hat den Blues Avatar von Elwood
    Registriert seit
    05.11.07
    Beiträge
    4.352
    Da sag ich nur: ... man freu ich mich auf die erste Testpartie!
    Geschichten zum Lesen ...

    Der seltsame Fall des William Penn | Col II --- TaC-Mod | abgebrochen
    Wahnsinn mit Methode? | Col II --- TaC-Mod | beendet | SdM April 2012
    Visiting Vvardenfell | TES III Morrowind | pausiert
    Es war einmal (noch) kein Portugal | Civ IV --- PAE-Mod | beendet
    Pack die Thermohose ein ... | Icewind Dale --- Trials of the Luremaster | läuft
    NEU: [RL] ... wie Gott nach Frankreich - Elwoods ??? | Modellbaubericht | läuft

  7. #802
    Col-Modder Avatar von raystuttgart
    Registriert seit
    19.03.10
    Ort
    Stuttgart
    Beiträge
    4.585
    DeclareWarRefuseAttitudeThreshold und DeclareWarThemRefuseAttitudeThreshold

    Achtung Spoiler:

    Code:
    DenialTypes CvTeamAI::AI_declareWarTrade(TeamTypes eWarTeam, TeamTypes eTeam, bool bConsiderPower) const
    {
    	PROFILE_FUNC();
    
    	AttitudeTypes eAttitude;
    	AttitudeTypes eAttitudeThem;
    	bool bLandTarget;
    	int iI;
    
    	FAssertMsg(eTeam != getID(), "shouldn't call this function on ourselves");
    	FAssertMsg(eWarTeam != getID(), "shouldn't call this function on ourselves");
    	FAssertMsg(GET_TEAM(eWarTeam).isAlive(), "GET_TEAM(eWarTeam).isAlive is expected to be true");
    	FAssertMsg(!isAtWar(eWarTeam), "should be at peace with eWarTeam");
    
    	if (GET_TEAM(eWarTeam).isDefensivePact(eTeam))
    	{
    		return DENIAL_JOKING;
    	}
    
    	if (isHuman())
    	{
    		return NO_DENIAL;
    	}
    
    	if (!canDeclareWar(eWarTeam))
    	{
    		return DENIAL_WAR_NOT_POSSIBLE_US;
    	}
    
    	if (getAnyWarPlanCount() > 0)
    	{
    		return DENIAL_TOO_MANY_WARS;
    	}
    	
    	if (AI_isNative())
    	{
    		if (GET_TEAM(eWarTeam).isParentOf(eTeam))
    		{
    			if (atWar(eWarTeam, eTeam))
    			{
    				if (AI_getAttitude(eTeam) >= ATTITUDE_FRIENDLY)
    				{
    					return NO_DENIAL;
    				}
    			}
    		}
    	}
    
    	if (bConsiderPower)
    	{
    		bLandTarget = AI_isAllyLandTarget(eWarTeam);
    
    		if ((GET_TEAM(eWarTeam).getDefensivePower() / ((bLandTarget) ? 2 : 1)) >
    			(getPower() + ((atWar(eWarTeam, eTeam)) ? GET_TEAM(eTeam).getPower() : 0)))
    		{
    			if (bLandTarget)
    			{
    				return DENIAL_POWER_THEM;
    			}
    			else
    			{
    				return DENIAL_NO_GAIN;
    			}
    		}
    	}
    	
    	bool bConcerned = false;
    	bool bVeryConcerned = false;
    	if (hasColonialPlayer())
    	{
    		CvTeamAI& kWarTeam = GET_TEAM(eWarTeam);
    		if (kWarTeam.AI_getAttitude(getID()) < ATTITUDE_CAUTIOUS)
    		{
    			bConcerned = true;
    			if (kWarTeam.AI_getAttitude(getID()) < ATTITUDE_ANNOYED)
    			{
    				bVeryConcerned = true;
    			}
    		}
    	}
    	
    	if (!bConcerned)
    	{
    		eAttitude = AI_getAttitude(eTeam);
    
    		for (iI = 0; iI < MAX_PLAYERS; iI++)
    		{
    			if (GET_PLAYER((PlayerTypes)iI).isAlive())
    			{
    				if (GET_PLAYER((PlayerTypes)iI).getTeam() == getID())
    				{
    					if (eAttitude <= GC.getLeaderHeadInfo(GET_PLAYER((PlayerTypes)iI).getPersonalityType()).getDeclareWarRefuseAttitudeThreshold())
    					{
    						return DENIAL_ATTITUDE;
    					}
    				}
    			}
    		}
    	}
    
    	if (!bVeryConcerned)
    	{
    		eAttitudeThem = AI_getAttitude(eWarTeam);
    
    		for (iI = 0; iI < MAX_PLAYERS; iI++)
    		{
    			if (GET_PLAYER((PlayerTypes)iI).isAlive())
    			{
    				if (GET_PLAYER((PlayerTypes)iI).getTeam() == getID())
    				{
    					if (eAttitudeThem > GC.getLeaderHeadInfo(GET_PLAYER((PlayerTypes)iI).getPersonalityType()).getDeclareWarThemRefuseAttitudeThreshold())
    					{
    						return DENIAL_ATTITUDE_THEM;
    					}
    				}
    			}
    		}
    	}
    	
    	return NO_DENIAL;
    }


    Die Einstellungen bestimmen Beziehungsgrenzwerte, bei denen die KI noch bereit, ist sich im Diplo-Menü -gegen einen entsprrechenden Gegenwert natürlich-
    zum Krieg gegenüber einer anderen Nation überreden zu lassen.
    (Der eine stellt den Grenzwert zum Handelspartner dar, der andere zum Ziel der Kriegserklärung.)

    Natürlich werden noch diverse andere Bedingungen geprüft.
    (Hat die KI bereits viele Kriege, ist die KI mit dem Ziel verbündet, ist das Ziel zu stark, ist das Ziel über Land erreichbar ...)

    Übrigens mischen sich Ureinwohner nur in den Unabhängigkeitskrieg mit ein, wenn man deren Attitude bis auf ATTITUDE_FRIENDLY gebracht hat.

    Sind alle diese Prüfugen "positiv" verlaufen, dann kommen die 2 genannten Werte bei weiteren Prüfungen ins Spiel.

    Bei diesen Prüfungen wird vorweg betrachtet, wie das Ziel gegenüber der KI eingestellt ist.

    Ist die Attitude des Ziels gegenüber der KI schlechter als ATTITUDE_CAUTIOUS, dann ist die KI beunruhigt.
    Ist die Attitude des Ziels gegenüber der KI schlechter als ATTITUDE_ANNOYED, dann ist die KI sogar sehr beunruhigt.

    Es gibt 2 Prüfungen:

    A) Die KI betrachtet die Beziehungen zum Angebotssteller
    --> DeclareWarRefuseAttitudeThreshold
    (muss überschritten sein, sonst weigert sich die KI den Kriegshandel einzugehen)

    B) Die KI betrachtet die Beziehungen zum möglichen Kriegsgegner
    --> DeclareWarThemRefuseAttitudeThreshold
    (muss erreicht oder unterschritten sein, sonst weigert sich die KI den Kriegeshandel einzugehen)

    Ist die KI beunruhigt, wird, sie die Beziehungen zum Angebotssteller gar nicht betrachten.
    (A ist also egal)

    Ist die KI sogar sehr beunruhigt, wird sie gar keine Beziehungen betrachten.
    (Sowohl A, wie auch B sind egal.)

    Ist die KI gar nicht beunruhigt (sprich die Attitude des Ziels ihr gegenüber ist einigermaßen gut), dann betrachtet sie die beiden Aspekte aber.

    Je beunruhigter die KI gegenüber dem Kriegsziel ist, desto weniger Faktoren berücksichtigt sie also bei ihrer Entscheidung, sprich sie ist eher bereit das Kriegsangebot anzunehmen.

    Fazit:

    Beim einen Wert wird gesteuert, wie die Beziehung zu demjenigen sein muss, der das Kriegsangebot macht, damit das Angebot noch Erfolgsaussichten hat.

    Beim anderen Wert wird gesteuert, wie die Bezeihung zum Ziel des Kriegsangebots maximal sein darf, damit das Angebot noch Erfolgsaussichten hat.

    Ob diese Werte aber überhautpt eine Rolle spielen, hängt davon ab, wie die Attiude des Ziels gegenüber der KI ist.
    Geändert von raystuttgart (08. Oktober 2011 um 21:06 Uhr)
    Teammitgleid dieses Projekt für Colonization:
    [Mod] We The People
    (Nachfolgerprojekt von Religion and Revolution)

    Davor Teammitgleid dieses Projekt für Colonization:
    [Mod] Religion and Revolution

    Vor-Vorheriges Projekt für Colonization:
    [ModMod] ray's Wunschliste

    Und wiederum davor Teammitglied von:
    [Mod] The Authentic Colonization (TAC)

  8. #803
    Col-Modder Avatar von raystuttgart
    Registriert seit
    19.03.10
    Ort
    Stuttgart
    Beiträge
    4.585
    StopTradingRefuseAttitudeThreshold und StopTradingThemRefuseAttitudeThreshold

    Achtung Spoiler:

    Code:
    DenialTypes CvPlayerAI::AI_stopTradingTrade(TeamTypes eTradeTeam, PlayerTypes ePlayer) const
    {
    	AttitudeTypes eAttitude;
    	AttitudeTypes eAttitudeThem;
    	int iI;
    
    	FAssertMsg(ePlayer != getID(), "shouldn't call this function on ourselves");
    	FAssertMsg(GET_PLAYER(ePlayer).getTeam() != getTeam(), "shouldn't call this function on ourselves");
    	FAssertMsg(eTradeTeam != getTeam(), "shouldn't call this function on ourselves");
    	FAssertMsg(GET_TEAM(eTradeTeam).isAlive(), "GET_TEAM(eTradeTeam).isAlive is expected to be true");
    	FAssertMsg(!atWar(getTeam(), eTradeTeam), "should be at peace with eTradeTeam");
    
    	if (isHuman())
    	{
    		return NO_DENIAL;
    	}
    
    	eAttitude = GET_TEAM(getTeam()).AI_getAttitude(GET_PLAYER(ePlayer).getTeam());
    
    	for (iI = 0; iI < MAX_PLAYERS; iI++)
    	{
    		if (GET_PLAYER((PlayerTypes)iI).isAlive())
    		{
    			if (GET_PLAYER((PlayerTypes)iI).getTeam() == getTeam())
    			{
    				if (eAttitude <= GC.getLeaderHeadInfo(GET_PLAYER((PlayerTypes)iI).getPersonalityType()).getStopTradingRefuseAttitudeThreshold())
    				{
    					return DENIAL_ATTITUDE;
    				}
    			}
    		}
    	}
    
    	eAttitudeThem = GET_TEAM(getTeam()).AI_getAttitude(eTradeTeam);
    
    	for (iI = 0; iI < MAX_PLAYERS; iI++)
    	{
    		if (GET_PLAYER((PlayerTypes)iI).isAlive())
    		{
    			if (GET_PLAYER((PlayerTypes)iI).getTeam() == getTeam())
    			{
    				if (eAttitudeThem > GC.getLeaderHeadInfo(GET_PLAYER((PlayerTypes)iI).getPersonalityType()).getStopTradingThemRefuseAttitudeThreshold())
    				{
    					return DENIAL_ATTITUDE_THEM;
    				}
    			}
    		}
    	}
    
    	return NO_DENIAL;
    }


    Ähnlich wie die beiden vorher erklärten Werte zur Kriegsaufforderung, bestimmen diese Werte, die Beziehungsgrenzwerte einer KI, um einer Aufforderung (auch wieder gegen einen bestimmten Gegenwert) zur zum Kündigen der bereits geschlossenen Verträge folge zu leisten.
    (Offene Grenzen, Defensiv Pakt, ...)

    StopTradingRefuseAttitudeThreshold -> Beziehung zum "Aufforderer"
    (muss überschritten sein)

    StopTradingThemRefuseAttitudeThreshold -> Beziehung zum Ziel
    (muss erreicht oder unterschritten sein)

    Bei dieser Prüfung werden keine weiteren Aspekte außer den Beziehungswerten betrachtet.
    Es gibt auch nicht sowas wie "Beunruhigung".
    Geändert von raystuttgart (08. Oktober 2011 um 21:41 Uhr)
    Teammitgleid dieses Projekt für Colonization:
    [Mod] We The People
    (Nachfolgerprojekt von Religion and Revolution)

    Davor Teammitgleid dieses Projekt für Colonization:
    [Mod] Religion and Revolution

    Vor-Vorheriges Projekt für Colonization:
    [ModMod] ray's Wunschliste

    Und wiederum davor Teammitglied von:
    [Mod] The Authentic Colonization (TAC)

  9. #804
    Col-Modder Avatar von raystuttgart
    Registriert seit
    19.03.10
    Ort
    Stuttgart
    Beiträge
    4.585
    OpenBordersRefuseAttitudeThreshold

    Achtung Spoiler:

    Code:
    DenialTypes CvTeamAI::AI_openBordersTrade(TeamTypes eTeam) const
    {
    	PROFILE_FUNC();
    
    	AttitudeTypes eAttitude;
    	int iI;
    
    	FAssertMsg(eTeam != getID(), "shouldn't call this function on ourselves");
    
    	if (isHuman())
    	{
    		return NO_DENIAL;
    	}
    
    	if (AI_shareWar(eTeam))
    	{
    		return NO_DENIAL;
    	}
    	
    	if (AI_getMemoryCount(eTeam, MEMORY_CANCELLED_OPEN_BORDERS) > 0)
    	{
    		return DENIAL_RECENT_CANCEL;
    	}
    
    	if (AI_getWorstEnemy() == eTeam)
    	{
    		return DENIAL_WORST_ENEMY;
    	}
    
    	eAttitude = AI_getAttitude(eTeam);
    
    	for (iI = 0; iI < MAX_PLAYERS; iI++)
    	{
    		if (GET_PLAYER((PlayerTypes)iI).isAlive())
    		{
    			if (GET_PLAYER((PlayerTypes)iI).getTeam() == getID())
    			{
    				if (eAttitude <= GC.getLeaderHeadInfo(GET_PLAYER((PlayerTypes)iI).getPersonalityType()).getOpenBordersRefuseAttitudeThreshold())
    				{
    					return DENIAL_ATTITUDE;
    				}
    			}
    		}
    	}
    
    	return NO_DENIAL;
    }


    Der Wert bestimmt den Grenzwert der Attitude einer KI zu einem Angebotssteller (über Diplo) um grundsätzlich bereit zu sein einen "Offene Grenze"-Vertrag anzunehmen.
    (Der Wert muss überschritten sein, damit das Angebot Aussichten hat.)

    Dabei gibt es aber 2 Ausnahmen:

    1. Kämpft man gemeinsam gegen einen anderen Gegner, wird die KI den Vertrag immer annehmen.
    (Der Wert ist da also egal.)

    2. Hat man erst kürzlich einen solchen Vertrag gebrochen, bzw. erinnert sich die KI da noch dran, dann zieht die KI einen solchen Vertrag grundsätzlich nicht in Betracht.
    Geändert von raystuttgart (08. Oktober 2011 um 21:41 Uhr)
    Teammitgleid dieses Projekt für Colonization:
    [Mod] We The People
    (Nachfolgerprojekt von Religion and Revolution)

    Davor Teammitgleid dieses Projekt für Colonization:
    [Mod] Religion and Revolution

    Vor-Vorheriges Projekt für Colonization:
    [ModMod] ray's Wunschliste

    Und wiederum davor Teammitglied von:
    [Mod] The Authentic Colonization (TAC)

  10. #805
    Col-Modder Avatar von raystuttgart
    Registriert seit
    19.03.10
    Ort
    Stuttgart
    Beiträge
    4.585
    DefensivePactRefuseAttitudeThreshold

    Achtung Spoiler:

    Code:
    int CvTeamAI::AI_defensivePactTradeVal(TeamTypes eTeam) const
    {
    	return ((getNumCities() + GET_TEAM(eTeam).getNumCities()) * 3);
    }
    
    
    DenialTypes CvTeamAI::AI_defensivePactTrade(TeamTypes eTeam) const
    {
    	PROFILE_FUNC();
    
    	AttitudeTypes eAttitude;
    	int iI;
    
    	FAssertMsg(eTeam != getID(), "shouldn't call this function on ourselves");
    
    	if (isHuman())
    	{
    		return NO_DENIAL;
    	}
    
    	if (GC.getGameINLINE().countCivTeamsAlive() == 2)
    	{
    		return DENIAL_NO_GAIN;
    	}
    
    	if (AI_getWorstEnemy() == eTeam)
    	{
    		return DENIAL_WORST_ENEMY;
    	}
    
    	eAttitude = AI_getAttitude(eTeam);
    
    	for (iI = 0; iI < MAX_PLAYERS; iI++)
    	{
    		if (GET_PLAYER((PlayerTypes)iI).isAlive())
    		{
    			if (GET_PLAYER((PlayerTypes)iI).getTeam() == getID())
    			{
    				if (eAttitude <= GC.getLeaderHeadInfo(GET_PLAYER((PlayerTypes)iI).getPersonalityType()).getDefensivePactRefuseAttitudeThreshold())
    				{
    					return DENIAL_ATTITUDE;
    				}
    			}
    		}
    	}
    
    	return NO_DENIAL;
    }


    Der Wert bestimmt den Grenzwert der Attitude einer KI zu einem Angebotssteller (über Diplo) um grundsätzlich bereit zu sein einen "Defensivpakt"-Vertrag anzunehmen.
    (Der Wert muss überschritten sein, damit das Angebot Aussichten hat.)

    Es gibt hier keine nennenswerte Prüfung.
    (Außer ob der Angebotssteller nicht gerade der schlimmste Feind der KI ist oder ob es noch mehr als 2 Spieler gibt.)
    Geändert von raystuttgart (08. Oktober 2011 um 21:41 Uhr)
    Teammitgleid dieses Projekt für Colonization:
    [Mod] We The People
    (Nachfolgerprojekt von Religion and Revolution)

    Davor Teammitgleid dieses Projekt für Colonization:
    [Mod] Religion and Revolution

    Vor-Vorheriges Projekt für Colonization:
    [ModMod] ray's Wunschliste

    Und wiederum davor Teammitglied von:
    [Mod] The Authentic Colonization (TAC)

  11. #806
    hat den Blues Avatar von Elwood
    Registriert seit
    05.11.07
    Beiträge
    4.352
    Kleine Zwischenfrage zu StopTradingRefuseAttitudeThreshold und StopTradingThemRefuseAttitudeThreshold:

    Was heißt den "Handelsbeziehungen"? ... Es gibt ja keine Handelspäkte wie in Civ4 ... was soll sich denn die KI verbitten können? Offene Grenzen einstellen wird doch sicher sepperat abgehandelt? Merkt sich die KI wirklich, ob ich mit Planwagen oder Schiff handel betreibe?
    Geschichten zum Lesen ...

    Der seltsame Fall des William Penn | Col II --- TaC-Mod | abgebrochen
    Wahnsinn mit Methode? | Col II --- TaC-Mod | beendet | SdM April 2012
    Visiting Vvardenfell | TES III Morrowind | pausiert
    Es war einmal (noch) kein Portugal | Civ IV --- PAE-Mod | beendet
    Pack die Thermohose ein ... | Icewind Dale --- Trials of the Luremaster | läuft
    NEU: [RL] ... wie Gott nach Frankreich - Elwoods ??? | Modellbaubericht | läuft

  12. #807
    Col-Modder Avatar von raystuttgart
    Registriert seit
    19.03.10
    Ort
    Stuttgart
    Beiträge
    4.585
    PermanentAllianceRefuseAttitudeThreshold

    Achtung Spoiler:

    Code:
    DenialTypes CvTeamAI::AI_permanentAllianceTrade(TeamTypes eTeam) const
    {
    	PROFILE_FUNC();
    
    	AttitudeTypes eAttitude;
    	int iI;
    
    	FAssertMsg(eTeam != getID(), "shouldn't call this function on ourselves");
    
    	if (isHuman())
    	{
    		return NO_DENIAL;
    	}
    
    	if (AI_getWorstEnemy() == eTeam)
    	{
    		return DENIAL_WORST_ENEMY;
    	}
    
    	if ((getPower() + GET_TEAM(eTeam).getPower()) > (GC.getGameINLINE().countTotalCivPower() / 2))
    	{
    		if (getPower() > GET_TEAM(eTeam).getPower())
    		{
    			return DENIAL_POWER_US;
    		}
    		else
    		{
    			return DENIAL_POWER_YOU;
    		}
    	}
    
    	if ((AI_getDefensivePactCounter(eTeam) + AI_getShareWarCounter(eTeam)) < 40)
    	{
    		return DENIAL_NOT_ALLIED;
    	}
    
    	eAttitude = AI_getAttitude(eTeam);
    
    	for (iI = 0; iI < MAX_PLAYERS; iI++)
    	{
    		if (GET_PLAYER((PlayerTypes)iI).isAlive())
    		{
    			if (GET_PLAYER((PlayerTypes)iI).getTeam() == getID())
    			{
    				if (eAttitude <= GC.getLeaderHeadInfo(GET_PLAYER((PlayerTypes)iI).getPersonalityType()).getPermanentAllianceRefuseAttitudeThreshold())
    				{
    					return DENIAL_ATTITUDE;
    				}
    			}
    		}
    	}
    
    	return NO_DENIAL;
    }


    Der Wert bestimmt den Grenzwert der Attitude einer KI zu einem Angebotssteller (über Diplo) um grundsätzlich bereit zu sein einen "Permanente Allianz"-Vertrag anzunehmen.
    (Der Wert muss überschritten sein, damit das Angebot Aussichten hat.)

    Die KI prüft hierbei auch, ob die gemeinsame / vereinte Macht größer ist, als die Macht aller andere Civs.
    (Wenn man also mehr als 50% der gesamten "Macht" hat.)

    In dem Fall lehnt sie das Angebot grundsätzlich ab.
    (Hat wohl mit der Spielbalance zu tun.)

    Weiterhin prüft die KI, ob man auch lange genug miteinander gekämpft hat.
    (Defensivpaktcounter + ShareWarCounter > 40)
    Geändert von raystuttgart (08. Oktober 2011 um 21:41 Uhr)
    Teammitgleid dieses Projekt für Colonization:
    [Mod] We The People
    (Nachfolgerprojekt von Religion and Revolution)

    Davor Teammitgleid dieses Projekt für Colonization:
    [Mod] Religion and Revolution

    Vor-Vorheriges Projekt für Colonization:
    [ModMod] ray's Wunschliste

    Und wiederum davor Teammitglied von:
    [Mod] The Authentic Colonization (TAC)

  13. #808
    Col-Modder Avatar von raystuttgart
    Registriert seit
    19.03.10
    Ort
    Stuttgart
    Beiträge
    4.585
    Zitat Zitat von Elwood Beitrag anzeigen
    Kleine Zwischenfrage zu StopTradingRefuseAttitudeThreshold und StopTradingThemRefuseAttitudeThreshold:

    Was heißt den "Handelsbeziehungen"? ... Es gibt ja keine Handelspäkte wie in Civ4 ... was soll sich denn die KI verbitten können?
    Gute Frage.
    (Könnte sein, dass es sich um Codereste aus Civ4 oder ein geplantes und dann nie beendetes Feature von CivCol handelt. )

    Zitat Zitat von Elwood Beitrag anzeigen
    Offene Grenzen einstellen wird doch sicher sepperat abgehandelt?
    Edit:
    Nein, genau darum geht es hier auch.

    Zitat Zitat von Elwood Beitrag anzeigen
    Merkt sich die KI wirklich, ob ich mit Planwagen oder Schiff handel betreibe?
    Eigentlich nicht.

    Ich versuche mal rauszufinden, ob die Funktionen überhaupt verwendet werden ...

    Edit:

    Doch, doch, das wird verwendet.
    Da geht es darum, dass man die KI überredet alle existierenden Verträge mit dem Ziel zu kündigen.
    (Offene Grenzen, DefensivPakt, ...)

    Hat also nix mit "Handelsvertägen" wie in Civ4 zu tun, da es diese ja bekanntlich in CivCol gar nicht gibt.
    Geändert von raystuttgart (08. Oktober 2011 um 21:46 Uhr)
    Teammitgleid dieses Projekt für Colonization:
    [Mod] We The People
    (Nachfolgerprojekt von Religion and Revolution)

    Davor Teammitgleid dieses Projekt für Colonization:
    [Mod] Religion and Revolution

    Vor-Vorheriges Projekt für Colonization:
    [ModMod] ray's Wunschliste

    Und wiederum davor Teammitglied von:
    [Mod] The Authentic Colonization (TAC)

  14. #809
    Col-Modder Avatar von raystuttgart
    Registriert seit
    19.03.10
    Ort
    Stuttgart
    Beiträge
    4.585
    @Elwood:

    So, dann sind wir mal soweit wie geplant durch.

    Offen wären dann noch:

    <ContactRands>
    <ContactDelays>
    <MemoryDecays>
    <MemoryAttitudePercents>

    Hier war ja aber eher nur ganz selektiv eine Anpassung gewünscht.
    Wir können ja einfach mal sehen, wie es bei denen dann läuft.

    Für heute lasse ich es gut sein.
    Teammitgleid dieses Projekt für Colonization:
    [Mod] We The People
    (Nachfolgerprojekt von Religion and Revolution)

    Davor Teammitgleid dieses Projekt für Colonization:
    [Mod] Religion and Revolution

    Vor-Vorheriges Projekt für Colonization:
    [ModMod] ray's Wunschliste

    Und wiederum davor Teammitglied von:
    [Mod] The Authentic Colonization (TAC)

  15. #810
    hat den Blues Avatar von Elwood
    Registriert seit
    05.11.07
    Beiträge
    4.352
    Wunderbar, danke für die Aufdröselung, ich packe alles in die Übersicht, feile an den Werten, und dann ist das erste große Update fertig!

    Ich denke bis auf Weiteres hast du dir eine Pause redlich verdient, ich denke, nachdem die ersten Testspiele und Erfahrungen mit der neuen LeaderHeadsInfo eingegangen und ausgewertet sind, werden wir uns überlegen, wie wir weiter vorgehen.
    Geschichten zum Lesen ...

    Der seltsame Fall des William Penn | Col II --- TaC-Mod | abgebrochen
    Wahnsinn mit Methode? | Col II --- TaC-Mod | beendet | SdM April 2012
    Visiting Vvardenfell | TES III Morrowind | pausiert
    Es war einmal (noch) kein Portugal | Civ IV --- PAE-Mod | beendet
    Pack die Thermohose ein ... | Icewind Dale --- Trials of the Luremaster | läuft
    NEU: [RL] ... wie Gott nach Frankreich - Elwoods ??? | Modellbaubericht | läuft

Seite 54 von 70 ErsteErste ... 44450515253545556575864 ... LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •