Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: AnnoZone Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

CommanderKugel

Vollmatrose

  • »CommanderKugel« ist der Autor dieses Themas

Beiträge: 123

Registrierungsdatum: 17. Juni 2022

  • Nachricht senden

61

Samstag, 1. Oktober 2022, 23:35


“warum genau geht die Performance bei so hohen Bevölkerungszahlen eigentlich in die Knie?“...
Der größte Speicherfresser ist wahrscheinlich der Dom!
Aber auch der so genannte “Wuselfaktor“, Menschen, Tiere, ...
(Die Wolken kann man ja abstellen.)
Bei irgendeiner I.A.A.M. Version wurde auch mal am “Wuselfaktor“ gedreht.
Ergo, müßte es möglich sein.

Gruß,
Soricida

Auf den Dom wäre ich niemals gekommen, aber macht schon Sinn, das ist schon ein echt komplexes Gebilde und man kann wirklich überall durchgucken :scratch:
»CommanderKugel« hat folgendes Bild angehängt:
  • dom.png

Artey

SeeBär

Beiträge: 202

Registrierungsdatum: 15. August 2021

  • Nachricht senden

62

Sonntag, 2. Oktober 2022, 17:16

Zitat

Das überrascht mich sehr, kann man das mit verschiedenen Bevölkerungsgruppen machen? Also dass man einen Adligen, einen Patrizier, einen Bürger und einen Bauern setzt? Sodass diese eigentlich in Summe 1 kg/min verbrauchen würden, aber 4 mal 0 Tonnen abgebucht werden?
Ich würd denken, dass das einfach addiert wird, aber kann ich nicht sagen. Aber genau einen Adligen wirst du eh nicht auf die Insel kriegen.

Zitat

Übrigens bricht das schon ab dem zweiten Bauern ein :,) also nix mit Null-Verbrauchs-Politik, so wünschenswert das auch klingen mag.
Deswegen ja auch "Aber Spaß beiseite", auch wenn der Rundungsfehler mit zwei Bauern immer noch ziemlich hoch sein dürfte. Aber um etwas über das Spiel zu erfahren, hats mir gereicht. Und ich fands ganz cool.

Zitat

Da kommt mir gerade eine Idee: warum genau geht die Performance bei so hohen Bevölkerungszahlen eigentlich in die Knie? Wenn es daran liegt, dass viele Menschen auf den Straßen laufen und viele Schiffe animiert werden müssen, hat vielleicht mal jemand mit der Idee gespielt einen Rekordbauer Mod zu bauen, in der zB die Schiffe zu würfeln werden und keine Menschen auf den Straßen rumlaufen, um Rechenpower zu sparen? Das wäre dann ja quasi nur ein texture pack, auch wenn man dann dafür argumentieren könnte, dass man halt gemoddeten Rekordbau betreibt.
Wie gesagt, ich weiß es nicht. Ich hab Jesus mal gefragt, ob der die Berechnungen vereinfachen kann, aber das geht wohl nicht so einfach. Ich bin da auch nur ein Laie, aber hier meine Gedanken. Auf hoher Grafik läuft das Spiel bei mir ungefähr so wie auf niedriger Grafik. Das wird also wohl eher die CPU betreffen. Kosmetische Sachen wie herumlaufende Leute werden nicht immer sofort eingeblendet, wie man in der Zeitlupe sieht. Kann aber gut sein, dass deren Verhalten im Hintergrund berechnet wird. Ich schätze, man müsste in einer großen Partie einzelne Sachen (Wohnhäuser, Betriebe, Schiffe) entfernen und gucken, wie das die Performance beeinflusst.

Zitat

Der größte Speicherfresser ist wahrscheinlich der Dom!
Na ja, mehr als ein paar Megabyte werden das wohl nicht sein. Der Speicherfresser ist immer noch das memory leak.

Zitat

Auf den Dom wäre ich niemals gekommen, aber macht schon Sinn, das ist schon ein echt komplexes Gebilde und man kann wirklich überall durchgucken :scratch:
Ich glaub nicht, dass Computergrafik so funktioniert. Wir sind nicht mehr in den 90ern. Transparenz wird wohl nicht das Problem sein. Klar ist das ein großes Gebäude, aber an langfristige Performance-Einbußen, wenn ich den baue oder eine Phase vollendet ist, kann ich mich nicht erinnern.

Zitat

Wenn wir nur die Hälfte der benötigten Waren versorgen, also zB. 10/20 Tonnen Fisch, kommen natürlich ~45% bei raus, also das x/y stimmt bis auf einen gewissen Fehler. Nur haben wir 2 Probleme: Einmal kennen wir nicht den wirklichen Bedarf, da die Werte im Wiki nicht ganz stimmen und ich den Kram nicht in den RDA Dateien finden kann, da bräuchten wir Hilfe, vielleicht weiß das ja ein Modder?
Zum anderen können wir nie wirklich sicher sein, wie genau wir versorgen, da wir immer +-1% ablesefehler in der Versorgungstorte finden. Haben wir dann Leinenkutten bei Adligen macht es einen gewaltigen Unterschied, ob wir nun 10% oder 11% versorgt haben. Deswegen wird es mit ungenauen Messwerten eher schwer das ganze experimentell herauszufinden.

Also es gibt Messfehler bei der Versorgung, dem Verbrauch und der Zufriedenheit. Ja, da probieren wir einfach rum und nehmen das geringste Übel.


Mir sind noch ein paar Sachen eingefallen. Das Spiel scheut sich also vor Fließkommazahlen. Manchmal wird das meines Wissens wegen Geräteunabhängigkeit gemacht. Bei der Zufriedenheit wird dann wohl auch abgerundet. Anders als beim Verbrauch geht das leider zulasten des Spielers. Vielleicht wird deswegen mehr verbraucht, als die Zufriedenheit vermuten lässt.

Zitat

Es wäre nicht undenkbar, dass die Zufriedenheit runtergeht, wenn die Ware (theoretisch) verbraucht wird und nicht vorhanden ist. Aber auch bei (exakt) 0 Tonnen Fisch geht die Zufriedenheit nicht runter.
Tja, Blödsinn. Zweimal falsch ist nicht einmal richtig. Bei 0,0 geht die Zufriedenheit runter. Ich hatte gedacht, ich könnte die Kommatonnen aufs Schiff laden, aber Schiffe tragen wohl nur ganze Tonnen. Also war noch was im Kontor und deswegen hat der Fisch gereicht. Das muss eben nicht der Fall sein, wie ich später gesehen hab. Dann ist das Experiment mit der zweiten Siedlung natürlich auch Schwachsinn. Die Tonne wurde einfach schnell verbraucht, da es eine ganze war und danach abgerundet wird. Schleichen sich also schnell Fehler rein, wenn man nicht aufpasst. Damit sollten wir nun näher an der Wahrheit sein.

CommanderKugel

Vollmatrose

  • »CommanderKugel« ist der Autor dieses Themas

Beiträge: 123

Registrierungsdatum: 17. Juni 2022

  • Nachricht senden

63

Samstag, 8. Oktober 2022, 23:23

So, ich habe schon wieder eine Weile nichts von mir hören lassen, leider ist mein halbes Jahr Leerlauf zu ende und mein Rekordbau ist zum Feierabendprojekt mutiert, das neben Sport und Freundin leider auf der Strecke bleibt. Ich sitze heute das erste mal diese Woche vor Anno. Nichtsdestotrotz habe ich mir den Endgegner vorgenommen und die Insel N_L03 bebaut. Ich hasse diese Insel, die ersten 3(!) Versuche sie zu bebauen sind die savefiles kaputt gegangen und ich musste immer auf halbem Wege neu anfangen. Den vierten habe ich abgebrochen, weil ich so wenig Lust auf diese doofe Insel hatte. Jetzt hab ichs beim 5ten Versuch durchgezogen und 992 Häuser drauf gekriegt. Zwar bin ich unzufrieden, weil die 1000 Häuser sicherlich in 2-3 Stunden da drauf stünden, aber ich will mir diese Insel nicht weiter antun müssen, vielleicht verfliegt mein Hass ja irgendwann mal und ich beende den Mist. Wer Lust hat kann gerne mal schauen wie die ganzen 2x3 Löcher gefüllt werden können oder einen Marktplatz wegbekommt.


Und zu dem ganzen "wie wird die Versorgung berechnet" Krams, da befürchte ich, dass wir uns über die falschen Sachen Gedanken machen und einfach 5% Puffer einrechnen sollten, man kann alternativ auch experimentell herausfinden wieviele Tonnen/min jede Insel von jeder Ware braucht, indem man an der Pfannkucheninsel testet. Man kann ja Häuser abreißen und die Verhältnisse anderer Inseln simulieren. So kann man dann, wenn man weiß wieviele Häuser drauf passen, die Routen schon im Vornherein einstellen. Das im laufenden Rekordversuch am Ende einstellen zu wollen dürfte sowieso ein Ding der Unmöglichkeit sein, mit dem ganzen Lagg und auf Zeitlupe. So hat man dann nicht das Problem, dass die Berechnung die wir glauben herausgefunden zu haben dann doch nicht stimmt und alles zusammenbricht.
Des Weiteren habe ich noch ein wenig mit der Versorgung rumgespielt und auch wenn alle Besitztorten "mangelhaft" versorgt werden, ist es möglich die Steuerschraube auf dunkelgrün zu setzen! Die Schraube auf grün haben kann helfen, dass die Häuser im späteren Spielverlauf nicht ausversehen absteigen, wenn sie unterversorgt werden und dann die ganze Insel im Eimer ist. Ich denke das werde ich, so gut es möglich ist, versuchen in meine Rekordbauversuch zu implementieren. Ob es nötig ist, dass die Versorgung auf dunkelgrün steht weiß ich nicht, jedenfalls werden ja zum grande Finale erst alle Häuser auf grün gezogen und evtl gesperrte Waren freigeschaltet, da sie ja nicht von anfang an voll bezogen sein sollten - je mehr Einwohner desto mehr Lagg. Da die bewohner auf dunkelgrün ja schneller einziehen als auf hellgrün, könnte das vielleich helfen die Zeit die man auf den ganz hohen Einwohnerzahlen verbringt zu verkürzen, da der Lagg ja leider gerne CTDs verursacht.
Selbstverständlich müssen Fleisch, Wein, Pelzmäntel, Brokat, Brillen und Kerzenhalter teilversorgt werden, damit die Steuerschraube über Gelb hinaus bewegt werden kann. Wieviel wovon weiß ich aber nicht, da Pelze bei mir mit <1% funktionieren, Kerzenhalter müssen aber >1% sein, das werde ich noch genauer testen. Jedenfalls läuft meine schnuckelige Siedlung mit unter einer Tonne Kerzenhalter pro Minute.
Auf 400k Adlige hochgerechnet würden dafür dann, um sie auf dunkelgrün zu kriegen, 5 Feinschmieden reichen.

Jedoch würde ich dann so knapp unter 50 Brillenmacher brauchen und die Idee mit Kerzenhalter-Zöllnern würde auch nicht mehr funktionieren, weil die Waren auf jeder Insel verbraucht werden. Vielleicht könnte man dann auf Brokatzoll umschwenken und so etwas Handelsbudget frei schaufeln um Kupfer und Quartz einzukaufen, aber das muss ich nochmal nachrechnen und testen.
Edit: ich hab das Textdokument jetzt ein paar Stunden offen und ich habe bereits getestet: das passt nicht ins Budget. Man kann wohl leider nicht alles haben :/
Hellgrün ist aber ohne weiteres machbar mit den Kupferminen der Map, 10% in der Besitztorte sind mit 10% Wein (den ich dann für die grüne Steuerschraube eh brauche) austauschbar. Besitz muss in Summe nur die 35% Hürde knacken. Ab 45 würde es dunkelgrün, aber an das Kupfer muss halt erstmal einer kommen...

Zur Einstellung der Waren benutze ich diesmal ein anderes System, das viel stumpfer ist als das alte. Ich lasse ein Schiff kontinuierlich am Zielhafen anlegen und ausladen, ein zweites fährt Waren holen. Wenn das zweite zurück ist, legt das erste Schiff ab und holt Waren, das zweite legt jetzt kontinuierlich an, bis das erste wieder da ist, dann tauschen die Rollen wieder.
So konnte ich die 25 Sekunden an Vollversorgung vermeiden, die ich im ersten System hatte und Versorgungen von Waren zwischen 0 und 1% sind möglich, hier angewendet auf Pelzmäntel. Da die Gesamtversorgung der Waren in der Torte aber abrundet, sind so null-Versorgungs-Prozente leider nicht möglich, ergo 1% pelze + 10% Kutten = 10% Versorgung wenn in Wirklichkeit unter 1% Pelze versorgt wird. Stellt sich bloß die Frage, ob das nicht Fehleranfälliger in laggendem Milleu ist, da 2 Schiffe ihre Route finden müssen, im Vergleich zum anderen System.
Genug für heute, gute Nacht!
»CommanderKugel« hat folgende Bilder angehängt:
  • lol.png
  • lol^2.png
  • N_L03-992.png

Artey

SeeBär

Beiträge: 202

Registrierungsdatum: 15. August 2021

  • Nachricht senden

64

Montag, 10. Oktober 2022, 10:43

Ich find die Idee an sich gut, bei jeder Insel festzuhalten, wie viele Häuser man raufgequetscht bekommen hat (vor allem beim kleinen Contest wird das kriegsentscheidend sein), aber beim Rekordbau ist das vielleicht doch nicht ganz so wichtig. Wenn man von 990 auf 1000 Häuser kommt, ist das nur ca. 1% Steigerung. Das ist nicht viel, find ich. Klar ist mehr besser, aber es ist ja auch nicht eindeutig, was man mit den Inseln macht. Wenn da Flüsse sind, will man die Bauplätze wohl benutzen. Oder man baut ne Orientstadt oder eine Mischung aus Nord und Süd. Da werden die Zahlen wohl etwas anders aussehen. Ich hab auf der Insel jedenfalls (noch) keine Stadt in meinem Rekordbau, also kann ich da nicht mit einer Zahl dienen. Bis jetzt hab ich da eh nur zwei ausgebaute Städte, nämlich n_l09 mit knapp 1200 Häusern und s_l04g mit 1340. Da hast du mich also ganz schön fertig gemacht. Das "g" soll heißen, dass es die Insel aus dem Grundspiel ist. Einige Namen da ja doppelt vor.

Ich finde, wir sollten erstmal loslegen und uns in den Dreck schmeißen. Auf was es im Rekordbau alles ankommt, wird man wohl nicht rausfinden, wenn man sich nur die Theorie anguckt, auch wenn das Spaß macht. Ich gehe aber schon davon aus, dass das Spiel die Rechnungen auch bei großen Bevölkerungszahlen (fast) richtig ausführt, falls du das meinst. Die Einstellung der Routen wird aber wohl eh etwas trial & error erfordern, schätz ich, weil das vom Schiffstyp und Routenlänge abhängt.

Deine Überlegungen zur Steuerschraube und Versorgung find ich gut, wenn auch etwas riskant. Wenn das alles so präzise funktioniert, wär das super, aber das sehen wir dann.

Und ja, auch ich spiele gerade nicht viel Anno. Das Leben hat noch viel mehr zu bieten.

CommanderKugel

Vollmatrose

  • »CommanderKugel« ist der Autor dieses Themas

Beiträge: 123

Registrierungsdatum: 17. Juni 2022

  • Nachricht senden

65

Montag, 10. Oktober 2022, 20:26


Ich find die Idee an sich gut, bei jeder Insel festzuhalten, wie viele Häuser man raufgequetscht bekommen hat (vor allem beim kleinen Contest wird das kriegsentscheidend sein), aber beim Rekordbau ist das vielleicht doch nicht ganz so wichtig. Wenn man von 990 auf 1000 Häuser kommt, ist das nur ca. 1% Steigerung. Das ist nicht viel, find ich. Klar ist mehr besser, aber es ist ja auch nicht eindeutig, was man mit den Inseln macht. Wenn da Flüsse sind, will man die Bauplätze wohl benutzen. Oder man baut ne Orientstadt oder eine Mischung aus Nord und Süd. Da werden die Zahlen wohl etwas anders aussehen. Ich hab auf der Insel jedenfalls (noch) keine Stadt in meinem Rekordbau, also kann ich da nicht mit einer Zahl dienen. Bis jetzt hab ich da eh nur zwei ausgebaute Städte, nämlich n_l09 mit knapp 1200 Häusern und s_l04g mit 1340. Da hast du mich also ganz schön fertig gemacht. Das "g" soll heißen, dass es die Insel aus dem Grundspiel ist. Einige Namen da ja doppelt vor.ich habe

Ich habe ja die Pfannkucheninsel und die N_L04-a nochmal neu aufgerollt (letztere ist noch nicht ganz fertig, Stand jetzt sinds 1424 Häuser, also +23) und bekonnte tatsächlich 2% mehr Häuser drauf. Also wenn du sagst 2% sind nicht viel, stimme ich dir bei der emotionalen Bewertung selbstverständlich zu. Bei der rationalen hingegen rechne ich dir einmal was vor.
Ich habe bis jetzt 22 Inseln bebaut und im Schnitt stehen je insel 577 Häuser (die mittleren fehlen hauptsächlich), 30 davon wären 17.310 Häuser.
Stell dir mal vor du baust jetzt 2% mehr drauf, haben wir 588,5 je Insel. Mit 30 Stück davon haben wir 17655 Häuser auf der Inselwelt. Das macht dann einen Unterschied von ~340 Häusern - das ist eine ganze kleine Insel! Wenn du mich fragst, ob ich auf einer Map mit 30 oder 31 Inseln spielen wollte, da sage ich selbstverständlich 31.

Da die Inselwelt am Ende bis in die letzte Ecke vollgebaut sein soll, finde ich es gerechtfertigt im Vornherein die Inseln bis ins kleinste Detail herein zu planen. Im Endlosspiel geht das schließlich nicht, weil der Speicherstand ja durch das abreißen von Häusern zugemüllt und größer wird, deswegen habe ich das ganze Gepopel an den Inseln auf eine Testmap ausverlagert. Je weniger man an dem eigentlichen Rekordspielstand probiert, umso größer sind die Chancen bis zum Ende spielen zu können. Hoffentlich ist das nicht durch irgendein update entfernt worden, da da schon lange niemand mehr drüber geschrieben hat, aber das gabs mal irgendwo im alten UBI Forum zu finden, ansonsten wäre mein Rekordversuch sicherlich schon halb fertig. :,)

Davon mal abgesehen bin ich einfach nicht der Typ für Trial and Error, ich mag es sehr gerne sachen bis zum Ende durchzudenken, sodass es irgendwann nurnoch eine Sache das nachbauens ist. Selbstverständlich bin ich auch Schachspieler im Verein ^^
Zu guter letzt hatte Wiesl in seinem Rekord 406360 Adlige angesiedelt, das sind 10159 Adligenhäuser, also mindestens 19537 Häuser Weltweit. Da der Gute aber Häuser für Produktionen abgerissen hat, waren es noch mehr. Wenn wir dem nicht nahe kommen, bekommen wir auch den Rekord nicht. (for the rekord: zusätzlich 77527 Bettler und 61000 Gesandte machen in Summe 544887 Einwohner, um einmal das total absurde Ziel nicht aus den Augen zu verlieren)
Davon mal abgesehen hatte Mondyto, der andere der auch über 500k Einwohner gekommen ist, mehr Adlige aber weniger gesandte, man kann die Zahl also bewiesener maßen knacken.

Artey

SeeBär

Beiträge: 202

Registrierungsdatum: 15. August 2021

  • Nachricht senden

66

Dienstag, 11. Oktober 2022, 00:32

Mag sein, dass eine kleine Insel an gespartem Bauplatz schon was ist, aber ich würde sagen, daran sieht man, dass eine kleine Insel nicht allzu viel wert ist. Es ist eben nur ein kleiner Teil. Die Itemslots wären bei einer 31. Insel wohl das Nützlichste. Aber ja, beim Rekordbau sollte man natürlich nicht faul werden, was die Bauplatzoptimierung angeht.

Zitat

Im Endlosspiel geht das schließlich nicht, weil der Speicherstand ja durch das abreißen von Häusern zugemüllt und größer wird, deswegen habe ich das ganze Gepopel an den Inseln auf eine Testmap ausverlagert. Je weniger man an dem eigentlichen Rekordspielstand probiert, umso größer sind die Chancen bis zum Ende spielen zu können.
Also entweder ist das falsch oder es macht praktisch keinen Unterschied. Mein Rekordbauversuch ist ein großes Schlachtfeld, bei dem ich alles doppelt und dreifach gebaut hab. Ob die Performance sonst besser wäre, weiß ich nicht.

Zitat

Davon mal abgesehen bin ich einfach nicht der Typ für Trial and Error, ich mag es sehr gerne sachen bis zum Ende durchzudenken, sodass es irgendwann nurnoch eine Sache das nachbauens ist. Selbstverständlich bin ich auch Schachspieler im Verein ^^
Klar machts Spaß, alles durchzuplanen, aber wenn man zielstrebig seinem Weg folgt, kann einem auch viel entgehen. Wie gesagt, wir werdens sehen. Schach wollt ich auch mal spielen. Da kenn ich nicht viel mehr als die Regeln.

CommanderKugel

Vollmatrose

  • »CommanderKugel« ist der Autor dieses Themas

Beiträge: 123

Registrierungsdatum: 17. Juni 2022

  • Nachricht senden

67

Sonntag, 16. Oktober 2022, 05:40

Habe ich mir die Kritik von Artey zu Herzen genommen und meinen Rekordversuch neu angefangen, anstelle weiter nur zu theoretisieren?
Ja.
Habe ich gestern morgen um 10 angefangen für die Gottverdammten Phiolen den Auftrag "rivalisierende Händler" zu resetten?
Ja.
Habe ich in den letzten 19 Stunden 16 damit verbracht Anno1404 zu quickloaden?
Ja.
Bin ich dumm und von diesem Spiel abhängig?
Selbstverständlich ja.
Habe ich mittlerweile das Item gläserne Phiolen?
Nein, was hast du denn bitte erwartet.
Werde ich weiter resetten und Stunden meiner Lebenszeit verschwenden?
Aber natürlich, ich bin schließlich jung und habe die Energie dazu. Wenn ich schon viel zeit in einen Rekordversuch pumpe, dann aber bitte richtig.

Kurze hochrechnung, 16H=960min, 45 sek pro Reset, => 960/0,75=1280 Resets.

War das nicht in irgendeinem Darksouls Teil so, dass man den ersten Boss nicht besiegen konnte? Fühlt sich gerade nach dem an. Ich glaube der droppt sogar die Phiolen, bloß falsches Spiel und unbesiegbar...

Artey

SeeBär

Beiträge: 202

Registrierungsdatum: 15. August 2021

  • Nachricht senden

68

Sonntag, 16. Oktober 2022, 07:26

Das Resetten scheint dich ja um den Schlaf zu bringen. Keine Sorge, dieser emotionale Tiefpunkt ist absolut normal und von den Entwicklern beabsichtigt. Auch ich bin nicht umhingekommen, meinen Frust über mein Pech im Forum auszulassen. Sei lieber froh, dass du das am Anfang machst, wo die Ladezeiten noch kurz sind.

So hab ich das in etwa gemacht: Erstmal das Spiel in den Fenstermodus schalten. Dann kann man parallel Videos gucken, die man seit Ewigkeiten auf der Liste hat und für die man sonst nicht die Geduld hat. Außerdem hab ich vor Auftragsabgabe bei den Hafeninseln gewürfelt. Die haben einige gute Items (kaiserliches Dekret), die sonst auch viele Versuche erfordern. Wenn ein gutes Item kommt, holt man sich das und wartet, bis man wieder würfeln kann. Wenn nicht, gibt man den Auftrag ab. Wenn auch da nichts Gutes bei rumkommt, lädt man neu. Damit grindet man effizienter. Und immer sofort speichern, wenn man ne gute Belohnung bekommt (ja, das hab ich einmal nicht gemacht).

Zitat

War das nicht in irgendeinem Darksouls Teil so, dass man den ersten Boss nicht besiegen konnte? Fühlt sich gerade nach dem an. Ich glaube der droppt sogar die Phiolen, bloß falsches Spiel und unbesiegbar...
Unter anderem in Demon's Souls war das in etwa so, ja.

CommanderKugel

Vollmatrose

  • »CommanderKugel« ist der Autor dieses Themas

Beiträge: 123

Registrierungsdatum: 17. Juni 2022

  • Nachricht senden

69

Sonntag, 16. Oktober 2022, 11:29

Hab sie, die gläsernen Phiolen. Habe vor über 24 stunden angefangen und laden und keine Minute geschlafen heute Nacht. Mit ein wenig Pause hier und da waren das locker 20 Stunden fleißiges neu laden.
»CommanderKugel« hat folgendes Bild angehängt:
  • Phiolen.png

CommanderKugel

Vollmatrose

  • »CommanderKugel« ist der Autor dieses Themas

Beiträge: 123

Registrierungsdatum: 17. Juni 2022

  • Nachricht senden

70

Donnerstag, 10. November 2022, 13:34

Passivhandel

So, ganz untätig war ich in letzter Zeit ja nicht, auch wenn ich wenig von mir habe hören lassen.
Und Zwar habe ich in den letzten 2 Wochen Python gelernt und einen Rechner für den Passivhandel mit dem NPC gebaut.
Der Rechner ist noch nicht perfekt, weil ich den Passivhandel noch nicht zu 100% verstehe und der Handel auch immer ein klein wenig zufällig ist, manchmal verscheuert der NPC halt eine Tonne mehr oder weniger, als er eigentlich sollte.

Nichtsdesto trotz geben einem die Werte des Rechners eine Idee, wie der Handel mit NPCs aussehen könnte und kann eventuelles ewiges Testen ingame verkürzen, indem man schonmal ein wenig mit den Preisen rumprobieren kann. Das fine tuning sollte jedoch immernoch ingame stattfinden.
Wie benutzt man das ganze? Erstmal muss der Dateityp von .txt zu .py geändert werden, ansonsten darf ich das hier im Forum nicht hochladen.
Danach benutze ich PyCharm, das Programm in dem ich den Rechner geschrieben habe um den Code einsehen und ändern zu können oder Windows einen eigenen Python executor, mit dem man den Code einfach nur ausführen kann.
Hat man das Ganze einmal gestartet, findet man leider kein GUI, der Bums wäre quasi nochmal eine ganz neue Programmiersprache, da setze ich mich vielleicht ein andermal nochmal dran.Jedenfalls sollte man aufgefordert werden einen Warennamen als Input zu gebenn, den Tippt man einfach ein. Hierbei muss der erste Buchstabe groß geschrieben sein, bei Schreibfehlern muss man nur diese eine Wareneingabe wiederholen.
Ist der Name getippt, drückt man Enter und darf dann den Preis der Ware eingeben. Falls man Buchstaben eingibt, oder der Preis nicht möglich ist, kriegt man Fehlermeldungen, dass das funktioniert macht mich sehr stolz :D

Willst du keine Ware mehr einstellen, drücke einfach Enter.

Hast du nun alle Waren eingestellt oder ist an Das Limit von 8 gestoßen, ist die Eingabe beendet und der Rechner sollte die Output der NPCs ausspucken.
Wo liegt denn nun der Fehler an dem Programm?
  • Es berücksichtigt noch nicht den Bonus eines NPCs, das sind 100 Gold je Händler
  • Es wird ungenau bei geringen Preisen, da ich nicht sicher wusste wie "MinTradeModifier = -90" für Waren mit einer Trade Emphasis von 50 zu deuten war, weil 50 - 90 < 0 und dann sollte die Ware ja nicht mehr verkauft werden...
  • Beim Giacumo haben Datteln die Trade Emphasis von "0", sodass sie mit erhöhtem Preis tatsäächlich verkauft werden, bei niedrigem jedoch nicht. Das habe ich einfach weggelassen, we verkauft sie bei mir nicht.

Wenn jemand Lust hat sich durch den Code zu wühlen... Er ist nicht schön, aber konstruktive Kritik ist immer willkommen!

Fehler gerne schnell melden, damit ich den Rechner updaten und die neuere Version zur Verfügung stellen kann.
Viel Spaß damit
»CommanderKugel« hat folgende Datei angehängt:

Artey

SeeBär

Beiträge: 202

Registrierungsdatum: 15. August 2021

  • Nachricht senden

71

Donnerstag, 10. November 2022, 18:52

Find ich gut, dass mans nun auch ohne Editor ausführen kann. Trotzdem kannst du ja nochmal versuchen, die leeren Einträge vor Ausgabe zu entfernen, denn die irritieren ganz schön, find ich.

CommanderKugel

Vollmatrose

  • »CommanderKugel« ist der Autor dieses Themas

Beiträge: 123

Registrierungsdatum: 17. Juni 2022

  • Nachricht senden

72

Montag, 30. Januar 2023, 10:04

Der Seedfinder

So liebe Leuts,
da bin ich mal wieder. Nach dem
Wochenende das ich in die Phiole investiert hatte, war meine Motivation
für den Rekordbau auf einem Rekordtief, also hab ich da ein weilchen die
Finger von gelassen, ob ich jetzt schon das große Comeback hinlege sei
aber mal dahingestellt.
In den letzten paar Tagen habe ich zwar nicht wieder Inseln bebaut, sondern eine weitere kleine Python Anwendng geschrieben.
Nachdem
ich auf "PyAutoGUI" gestoßen bin kam mir die Idee dazu. Mit PyAutoGUI
kann man nämlich Mausklicks und Tastendrücke auf der Tastatur
simulieren. Darüber hinaus legt man vorher die dazu gewollten
Koordinaten auf dem Bildschirm (also Pixel) fest. Des Weiteren kann
PyAutoGUI auch noch den Bildschirm, pixel für Pixel, nach .png (also
Bild-)Dateien absuchen.
Auf diese Weise kann ich mit dem
Programm vollautomatisiert im Worldeditor eine neue Inselwelt generieren
lassen und vorher Inselgrößen, -schwierigkeiten und am
allerwichtigsten: den Seed einstellen. Den Vulkan kann man leider nicht
ausstellen, aber den habe ich sowieso meistens an.

Somit ist es mir jetzt theoretisch möglich den "besten" Seed zu finden, solange der Vulkan an bleibt.
Das ganze habe ich bis jetzt auf folgende Weise getestet:
  • Für kleine Inselwelten, deren Generierungszeit liegt im WE bei nur ca. 2 Sekunden,
  • Inselgröße Groß und Schwierigkeit auf einfach,
  • Korsaren auf aus, da ich auf kleinen Welten schonmal auf Gesandte gespielt habe und das toppen möchte,
  • Den Seed lasse ich über die Variable i eintragen. Diese Wariable wird nach jeder Genereierung um 1 nach oben gezählt.

Bei
kleinen Inselwelten ist das Auswahlkriterium ganz einfach: Es müssen
die großen Inseln L_01 und L_03 aus dem addon im Norden und die mittlere
Insel M_01 im Süden vorhanden sein. Wie schonmal angesprochen sind die
größten Inseln bei weitem am wichtigsten.
Ob die Inseln auf
dem Seed vorhanden sind lasse ich per .png-Suche auslesen, indem ich auf
der Linken Seite die Namen der Inseln durchsuche. Dort kann ich dann
kleinere .png's nehmen und der Suchalgorithmus wird schneller und
genauer.
Trotz einiger optimierungsarbeit
braucht das Programm so 5.2 Sekunden pro Seed, das sind zwischen 9 und
10 Minuten für 100 Seeds. Da es 100.000 Seeds gibt (0 ist auch ein
Seed), würde das Programm 9-10.000 Minuten laufen müssen, also knapp
unter einer Woche. Von diesen 5 Sekunden pro Seed brauchen wir schon 2
bis dass die Inselwelt nach allen Eingaben geladen wird. Die restlichen
Funktionen sind leider recht langsam und um das Programm großartig zu
beschleunigen müsste vermutlich von einer anderen library oder gar einer
anderen Programmiersprache gebrauch gemacht werden.
Jedanfalls habe ich das Programm bereits 2200 Seeds durchgegucken lassen und die "guten" Seeds sind im Anhang.
Als
nächstes würde noch ein Algorithmus anstehen die Seeds mit den 3
größten Inseln weiter auszuwerten, vermutlich wird das auch wieder
komplett über Inseln geschehen, Gesandte brauchen halt schlichtweg nur
Platz. Für Adlige müsste man dann noch auf Ressourcen gucken und den
Hassan wieder an schalten, da habe ich mir tatsächlich aber noch keine
Gedanken zu gemacht.
Viel Spaß mit den Seeds,Kugel
»CommanderKugel« hat folgende Datei angehängt:
  • Ergebnisse.txt (340 Byte - 34 mal heruntergeladen - zuletzt: 22. April 2024, 19:57)

CommanderKugel

Vollmatrose

  • »CommanderKugel« ist der Autor dieses Themas

Beiträge: 123

Registrierungsdatum: 17. Juni 2022

  • Nachricht senden

73

Montag, 30. Januar 2023, 13:35

So, ich habe mir noch einen Auswertungsalgorithmus zurechtgelegt, um die kleine Inselwelt mit dem meisten Bauplatz zu finden.
Dazu habe ich die Liste mit sämtlichen Inselwelten die N_L01, N_L03 und S_M01 enthalten nach folgendem Schema ausgewertet:
  • Es bleiben keine großen oder mittleren Inseln mehr übrig, also müssen wir nach kleinen Inseln auswerten.
  • Ich habe die kleinen Inseln N_S01, S_S02, N_S03 und N_S08 im Norden und S_S01, S_S02, S_S03 und S_S04 im Süden als die größten kleinen Inseln festgestellt.
  • Dann lasse ich den Code die Inselwelten im WE generieren um an die Inselliste zu kommen.
  • Danach wird nach jeder der 8 "guten" Inseln gesucht.
  • Ich halte fest wieviele Inseln auf der Welt vorhanden sind.
  • In einer Liste sammle ich die Ergebnisse und ordne jedem Seed die Anzahl an vorhandenen "guten" Inseln zu.
  • Diese Liste kann man jetzt nach der Menge an guten Inseln sortieren.

Der beste score war tatsächlich eine einzelne 5! Aber jetzt ergibt sich ein neues Problem:
Der Inselliste an der Seite des WE kann man nicht entnehmen, ob die Insel aus dem Pool des Grundspiels oder des Addons kommt.
Das ist für N_L01 und N_L03 egal, da N_L01 aus dem Grundspiel für Inselgröße "groß" und Schwierigkeit "einfach" niemals generiert wird und S_M01 gibt es kein zweites mal. Bei N_L03 hingegen doppelt sich die Benennung und beide Inseln sind im Inselpool.
Demnach war der Seed 1878 leider für die Tonne, obwohl er 5 gute kleine Inseln beherbergte.
Alle Seeds mit 4 guten kleinen Inseln habe ich dann händisch überprüfen können und musste leider die meisten ebenfalls entsorgen, sodass am Ende nur 2 übrig blieben: das sind dann die Seeds "6" und "914", von welchen die "6" deutlich besser ist.
Fazit:
Mein Programm speichert leider noch einige false-positives, die ich händisch aussortieren musste. Die Liste im vorherigen Post ist also Fehlerhaft!
Des Weiteren habe ich jetzt auf diese Weise 2199 Seeds ausgewertet und bin zu keinem neuen Ergebnis gekommen, die Nr. 6 bleibt weiterhin an der Spitze. Wäre lustig, wenn es tatsächlich keinen besseren Seed gibt. Als ich einmal mit Wiesl über die Weltengenerierung gesprochen habe, hat er mir erklärt, dass das Spiel nur vorgegeben bekommt, wieviele Inseln groß, mittel oder klein sein müssen und wo sie sich auf der Karte befinden müssen, das fällt einem auch recht schnell auf, wenn man einige Seeds durchguckt. Eine Zusatzbedingnug gibt es jedoch noch und zwar dürfen sich die Inseln nicht überschneiden (offensichtlich).
Jedoch befürchte ich, dass es noch ein weiteres "Punktesystem", wie für die Ressourcen der Welt, geben sollte, da die meisten Seeds, die eine guter Verteilung der großen Inseln aufweisen, schlechte kleine Inseln als Ausgleich beherbergen. Umgekehrt liegen auf Welten mit schlechten großen Inseln (hier die false positives mit der schlechteren N_L03, oder auch oftmals wenn man Seeds mit Vulkan an/aus vergleicht, dieser scheint als schlecht zu gelten) öfters gute kleine Inseln. Ob es einen besseren Seed als die 6 gibt wird sich hoffentlich noch zeigen, ich habe ja knapp 98.000 noch nicht erkundet)

Artey

SeeBär

Beiträge: 202

Registrierungsdatum: 15. August 2021

  • Nachricht senden

74

Montag, 30. Januar 2023, 17:22

Das ist doch mal was. Ich bin zwar grad noch in der Ruhephase, was 1404 angeht, aber da keimt die Versuchung auf.

Mich interessiert vor allem, welche Inseln pro Seed generiert werden, anstatt die besten Seeds auszuwählen. Gibt es vielleicht Inseln, die besonders oft vorkommen? Wie oft passiert es, dass die Liste der Inseln bei verschiedenen Seeds gleich ist?

Um den Bauplatz präzise einzuschätzen, werden wir wohl die (nahezu) exakte Größe der Inseln brauchen. Die hab ich für die Inseln in meinem Rekordbauversuch zwar schon mal gemessen, aber nur ungenau. Bei kleinen Inseln sollte das schnell gehen.

Noch cooler wärs natürlich, wenn wir das Format der Spielstände inklusive Prüfsummen knacken würden, aber das dürfte eine andere Liga sein. Sollte aber auch so möglich sein, Rohstoffe und co. zu messen.

CommanderKugel

Vollmatrose

  • »CommanderKugel« ist der Autor dieses Themas

Beiträge: 123

Registrierungsdatum: 17. Juni 2022

  • Nachricht senden

75

Montag, 30. Januar 2023, 19:46

Mich interessiert vor allem, welche Inseln pro Seed generiert werden, anstatt die besten Seeds auszuwählen. Gibt es vielleicht Inseln, die besonders oft vorkommen? Wie oft passiert es, dass die Liste der Inseln bei verschiedenen Seeds gleich ist?

Gute Fragen, aber ich denke, dass zumindest der erste Teil unmöglich zu beantworten ist. Beim zweiten kann man ja gucken welche die Gesamtzahl an Inseln ist und wie groß die Anzahl an Kombinationen, das sollte dann immerhin näherungsweise stimmen.
Wie man den Algorithmus umdreht dürfte für Menschen die das nicht zufällig gerade studieren eher ein Ding der Unmöglichkeit sein... Da ist mir meine praktisch anwendbare Methode lieber, auch wenn sie niemals zu Ende laufen wird
Um den Bauplatz präzise einzuschätzen, werden wir wohl die (nahezu) exakte Größe der Inseln brauchen. Die hab ich für die Inseln in meinem Rekordbauversuch zwar schon mal gemessen, aber nur ungenau. Bei kleinen Inseln sollte das schnell gehen.

Das Ding mit dem messen ist halt, dass Inseln ohne Fluss bedeutend mehr Häuser beherbergen können, auch wenn sie eigentlich ein wenig kleiner sind. Und dazu habe ich halt bis jetzt:
  • N_S02 = 279 Häuser
  • N_S03 fehlt
  • N_S04 = 284 Häuser
  • N_S08 = 243 Häuser
  • S_S01 = 323 Häuser
  • S_S02 = 289 Häuser
  • S_S03 fehlt
  • S_S04 = 318 Häuser

Also jeweils Süden und Norden sind die Inseln relativ nah bei einander, wobei Südinseln eigentlich immer wertvoller sind als nördliche.
Noch cooler wärs natürlich, wenn wir das Format der Spielstände inklusive Prüfsummen knacken würden, aber das dürfte eine andere Liga sein. Sollte aber auch so möglich sein, Rohstoffe und co. zu messen.

Viel Spaß, keine Ahnung was diese Prüfnummer ist und welches Format du knacken willst ^^

Rohstoffe zu messen fehlt tatsächlich noch, das kommt dann wenn ich das ganze auf Adlige anpasse. Bei Gesandten zählen wenn überhaupt Perlenriffe. Da könnte man vielleicht auch mal irgendwo aufschreiben wieviele Riffe auf die verschiedenen Riffe auf den Inseln passen, dann kann ich das vielleicht auch automatisiert abfragen lassen, aber bis das wichtig wird brauchen wir noch weitere Seeds die 4 oder gar mehr scoren.

Update: habe das Programm auf Erkennung der verschiedenen L_N03 Inseln geupdated und bis 3999 laufen lassen.
Es gibt immernoch nur 4 Inseln mit einem kleine-Inseln-score von 4 und einen neuen platzreichsten Seed: die "2830", welche die "6" nur ganz knapp überboten hat.
die anderen sind übrigens 2654 und 914.
Die Gesamtliste mit allen Seeds die die 3 großen Inseln beherbergen werde ich nicht noch updaten, da mir der Aufwand für keinen Gegenwert zu gering ist.

CommanderKugel

Vollmatrose

  • »CommanderKugel« ist der Autor dieses Themas

Beiträge: 123

Registrierungsdatum: 17. Juni 2022

  • Nachricht senden

76

Donnerstag, 2. Februar 2023, 17:55

So, wir haben einen neuen könig der kleinen Insel Seeds! Und zwar wurde die 2830 von 4386 abgelöst.
Mein Programm hat gerade bis 4999 ausgewertet.

Bei all den Seeds die ich mir bis jetzt angeschaut habe, scheinen mir nicht alle kleinen Inseln gleich "klein". Sondern es scheint immer mindestens eine klein-kleine Insel im Süden und eine klein-kleine Insel im Norden zu geben - bis jetzt gab es keine Inselwelt die ich gesehen habe, bei der alle 4 kleinen Inseln im Süden aus meinen 4 gesuchten Inseln waren. Die beste der klein-kleinen Inseln im Süden ist mmn. die dreieckige die bei der 4120 dabei ist, mit genug bauplatz für die weltweite Zuckerrphrproduktion & obendrein noch Platz für 2599 Gesandte und als wäre das noch nicht genug noch 4 Flussbauplätze.

Welche Inseln im Norden im klein-klein pool zu sein scheinen weiß ich nicht, aber die sind ja auch für Gesandte nicht so wichtig wie die Südinseln. Wie schonmal gesagt, keine Ahnung ob die Seeds auch gut für Adlige sind, da müsste ich einen neuen Auswertungsalgorithmus für schreiben, dass er auf Salz, Gold, Kupfer und Quarz guckt, sowie ob die Inseln sich mit Hassan aktiviert großartig verändern.
Zu guter letzt ist mir schon ein paar Mal eine Fehlermeldung im WE aufgetaucht, die ich vermutlich als erster Mensch der Welt sehe: "Ein Assert ist aufgetreten"
Der kommt aber erst wenn der WE so 800+ Welten geladen hat. Das erste mal war es nach so 1200 Seeds, dann mal nach 800 und vorhin nach 831. Also für normalsterbliche total irrelevant. Code ich vielleicht noch, dass mein Seed-finder den Fehler eigenständig erkennt und den WE neu startet, aber habe gerade erstmal anderes zu tun und der Seed-finder kann schön nebenher laufen. Wobei es bei den Seeds die bis jetzt schon raus gekommen sind kaum noch Verbesserungen geben kann... aber mal schauen, vielleicht gibts ja doch noch den magischen Seed mit nem Insel score von 5 ^^ träumen darf man ja.
»CommanderKugel« hat folgende Bilder angehängt:
  • 2830.png
  • 4120.png
  • img.png

CommanderKugel

Vollmatrose

  • »CommanderKugel« ist der Autor dieses Themas

Beiträge: 123

Registrierungsdatum: 17. Juni 2022

  • Nachricht senden

77

Donnerstag, 2. Februar 2023, 20:02

Okay, der Seed 4835 hat mich da jetzt vom Gegenteil überzeugt, es kann DEN einen besten Seed geben. Man beachte die 4 Orient Inseln: Sie sind perfekt. Ob das jetzt der beste Seed ist müsste man noch herausfinden, keine Ahnung wie viel auf die nordinseln passt.
»CommanderKugel« hat folgendes Bild angehängt:
  • 4835.png

Wolfman

SeeBär

Beiträge: 233

Registrierungsdatum: 6. Januar 2012

  • Nachricht senden

78

Samstag, 4. Februar 2023, 18:15

Warum macht ihr euch die Seeds nicht selber, gerade für einen Rekordbau?
Mit "der" Insel habe ich über 2 Millionen Einwohner geschafft.
»Wolfman« hat folgendes Bild angehängt:
  • Big54.png

CommanderKugel

Vollmatrose

  • »CommanderKugel« ist der Autor dieses Themas

Beiträge: 123

Registrierungsdatum: 17. Juni 2022

  • Nachricht senden

79

Samstag, 4. Februar 2023, 20:23

Hallo Wolfman

Warum macht ihr euch die Seeds nicht selber, gerade für einen Rekordbau?
Mit "der" Insel habe ich über 2 Millionen Einwohner geschafft.

Das hat ne ganz einfache Antwort: Weil Xybotchens Wettbewerb das früher in den Regeln so aufgestellt hat. Außerdem sind selbst kreierte Maps ähnlich wie Drogen im Sport: Man muss immernoch selbst die Leistung bringen, aber die Vergleichbarkeit ist einfach nicht mehr gegeben, weil der eine einen unfairen Vorteil hat.
Mal ganz davon abgesehen habe ich schon so oft die Pfannkucheninsel besiedelt, dass ich die bald nicht mehr sehen kann - u.a. deswegen hab ich im kleinen Contest auch die Inselschwierigkeit auf schwer gesetzt. Einige Inseln da hatten die meisten vermutlich nicht so häufig auf dem Bildschirm.
Davon mal abgesehen... Auf deiner Karte befinden sich 12 Pfannkucheninseln, 12 große Orientinseln, 2 große grüne Orientinseln und 2 große Vulkane. Das macht grobgalaktisch 12x1850 + 12x1400 + 2x1450 + wasauchimmeraufdievulkane geht = 41.900 Häuser + Vulkane. Angenommen du müsstest die Einwohner nicht versorgen wären das so ~870k Adlige und 502k Patrizier, in Summe keine 1.3Mio Leute. Schick mir doch bitte mal den Spielstand, damit ich sehen kann wo wohl mein Rechenfehler liegt ^^
Aber mehr dazu, warum 2Mio unrealistisch klingt: Wiesl hat in seinem Rekord damals nicht optimal platzeffizient gebaut, denn er hat auch Wein produziert. Auf der anderen Seite hat das aber an Schiffen gespart, Wein ist halt sehr Sloteffizient. Trotzdem war sein Spiel am Ende so stark am laggen, dass er keine Bettler mehr aufnehmen wollte/konnte. Das Spiel ist dabei halt einfach abgeschmiert. Deswegen war ich halt skeptisch mit deinen 2Mio und hab eben überschlagen, das Spiel packt die vermutlich nicht. Jetzt durch die HE ist das Spiel aber ein wenig optimiert worden, ob dadurch die Beschränkung durch Performance aufgehoben wurde ist trotzdem fraglich. Aber es ist es auf jeden Fall machbarER geworden Wiesls Rekord zu knacken, indem man halt platzeffizientere Waren produzieren kann.
Ach und wenn ich meine eigene Map bauen würde die sich nicht an die Anno internen Generierungsgesetze halten muss, würde ich mehr Häfen der NPCs setzen, insbesondere Garibaldi. Die schicken nämlich alle Handelsschiffe los, die wiederum an jedem Kontor einmal halt machen.

nordstern84

Schatzjäger

Beiträge: 1 326

Registrierungsdatum: 11. Juli 2016

  • Nachricht senden

80

Samstag, 4. Februar 2023, 20:23

Weil das als cheaten gewertet wird und im Rekordbau verboten ist. zumindest im offiziellen. Zudem muss der Rekordbau vergleichbar sein. Selbst erstellte Seeds sind ein massiver Nachteil gegenüber allen anderen bisherigen Rekordbauern.

Man hätte das mal machen können am Anfang, jetzt nicht mehr. Und auch generell hat man sowas vor 2 Jahren mal in Anno1800 versucht, und hat sich nie durchgesetzt. Wurde einfach flächendeckend nicht angenommen.
  Ich bin Legastheniker.

Wer also Rechtschreibfehler oder unklare Formulierungen findet, soll bitte versuchen die Grundaussage zu verstehen oder darf sie gerne behalten :)

Danke für euer Verständnis.

Zurzeit ist neben Ihnen 1 Benutzer in diesem Thema unterwegs:

1 Besucher