SimCity4 Crash beim Laden einer Stadt

Fluggi

Member
Registriert
Dezember 2008
Ort
... bei Köln ;)
Geschlecht
m

Seit einigen Tagen habe ich das Problem, dass meine Stadt manchmal beim Laden crashte - nicht nur bei mir, sondern auch bei anderen, denen ich die Stadt gab. Zum Glück hatte ich Backups.
Ich hab mich wie blöd durch meinen Pluginordner gewühlt (den ich von früher übernommen habe, als ich letztens wieder SC4 aus der Mottenkiste holte - dementsprechend schlecht bin ich über seinen Inhalt informiert :ohoh:), auf dass mir vielleicht zufällig was ins Auge springt. Ich hatte die Befürchtung, dass einfach immer etwas wächst, was die Stadt dann nicht mehr laden lässt, was dann natürlich zu einer Suche nach der Nadel im Heuhaufen geworden wäre.
Dummerweise kann man auch nicht mit "Hilfe, meine Stadt crasht manchmal beim Laden!" nicht in ein Forum rennen, da kommt ja außer im Sande verlaufenden Suchen nach Hafencontrollern nicht viel bei rum.

Vorhin ist es mir jedoch gelungen, den Crash eindeutig zu reproduzieren.
Gegeben ist folgende Situation:
BSZlHu5.jpg


Der markierte Lot ist der SFBT Flughafen-Shuttlebus aus dem Kurier (bei dem, wie ich gerade feststelle, die SFBT-Parkplätze fehlen %)), der Bahnhof ist der Hbf Amsterdam von xannepan, ebenfalls aus dem Kurier.
Der Shuttlebus-Lot steht dort nur provisorisch, der soll noch woanders hin. Dann fiel mir auf, dass rechts am Amsterdamer Hbf noch TE-Eingänge frei sind, wo ich die Shuttlebusse super dranbauen könnte:

aYra2a4.jpg


Speichere ich die Stadt so ab (ohne eine einzige andere Änderung an der Stadt), stürzt das Spiel beim nächsten Laden der Stadt ab.
Edit: Um an dieser Stelle für Klarheit zu sorgen: die Straße zwischen dem Hbf und dem Shuttlebus ist eine graue Straße, sie gehört zu keinem der Lots.


Folgende Erklärungsversuche habe ich:

  • Ich nutze den neuen SC4Fix, der einige Crashes fixt, z.B. den Crash beim Hovern eines Puzzleteils über einen TE-Lot. Eventuell hängt mein Problem damit zusammen.
  • Beim Shuttlebus handelt es sich um einen funktionalen Flughafen - vielleicht kann man den ja nicht einfach so mirnichtsdirnichts umsetzen? (Ich habe keine anderen funktionalen Flughäfen im Pluginordner, das Flughafenmenü enthält nur den Shuttlebus und die drei Maxis-Flughäfen.)
  • Vielleicht ist das auch nur irgendein bescheuerter Fehler mit TE-Lots, der allein mit dem Anschluss des Lots zusammenhängt.
Am stärksten im Verdacht habe ich den SC4Fix - bevor dort aber aufschlagen wollte, möchte ich hier gern noch ein wenig Expertise einholen.
Da der Amsterdamer Hbf eine Belohnung ist, ist das mit dem Testen in einem leeren Pluginordner (oder einer leeren Stadt) etc. nicht so einfach, sonst hätte ich damit bereits angefangen.
 
Zuletzt bearbeitet:
Hmm, da bin ich auf Anhieb auch überfragt, könnte natürlich alles mögliche sein. Wenn Du den Bahnhof per Cheat baust und dann den Busbahnhof auf diese Art und Weise daneben baust, stürzt das Spiel in einer Teststadt dann beim Start auch so ab? Ansonsten den Lot mal mit dem Reader öffnen und "Conditional Building: True" löschen, dann kann man ihn so bauen. Es könnte natürlich tatsächlich an dieser speziellen Konfiguration liegen, weil der Busbahnhof nicht an der Straße angeschlossen ist, sondern an einem anderen TE-Lot. Flughäfen benötigen vermutlich einen Straßenanschluss, und so eine Konfiguration könnte das Spiel aus dem Tritt bringen. Klappt es, wenn Du die graue Straße zusätzlich auch noch mit der Allee verbindest?
 
Oh. Die Stadt crasht schon, wenn ich den Shuttlebus nur drei Meter weiter nach Süden pflanze.
Nach einem weiteren Test stellt sich heraus, dass die Stadt schon crasht, wenn ich den Shuttlebus lediglich abreiße, ohne ihn woanders neu zu bauen.

Die Stadt ist in einer Multiplayer-Region (der gute alte FTP-Kartenaustausch-Multiplayer); ein anderer Spieler hat auf einer anderen Karte so einen gigantischen modularen Flughafen angefangen. Die Stadt kann ich selbstverständlich nicht laden, weil anderer Flughafencontroller.
Eventuell liegt's daran? Ich glaube, ich habe den Shuttlebus platziert, bevor der modulare Flughafen angefangen wurde.

Edit:
Ich habe mal testweise alle anderen Städte aus der Region gelöscht. Auch dann kann ich den Shuttlebus nicht abreißen.
 
Zuletzt bearbeitet:
Es kann sein, dass es an dem besagten Flughafen liegt, denn es ist unerheblich, ob der in der gleichen Stadt existiert oder nicht, allein das Vorhandensein (oder auch das Fehlen) des passenden Flughafencontrollers reicht aus, damit ein Konflikt entsteht. Das liegt womöglich daran, dass Flughäfen "upgradefähig" sind, wenn die Auslastung steigt. Die IDs für die weiteren Lots sind im Controller hinterlegt. Ich denke mal, im Savegame jeder Stadt wird eine Kopie der Liste der unterstützten Flughäfen gespeichert, und wenn die nicht mit dem verwendeten Controller übereinstimmt, stürzt das Spiel ab.

Erweitern mit neuen IDs kann man den Controller immer, aber wehe, man nimmt welche weg. Die Städte in der Region dürfen also nie mit einem anderen Controller auch nur in Berührung gekommen sein. Vielleicht würde es helfen, wenn Du den für den großen Flughafen verwendeten Controller nimmst und dort noch die ID vom Shuttle-Lot hinzufügst, aber ob das nachträglich funktioniert, kann ich nicht sagen.
 
Okay, ich habe das mal versucht.
Ich nehme an, dass der Flughafen-Controller das Exemplar File mit dem Type Developer und dem Exemplar Name Airports ist, das findet sich sowohl in der SC4_Functional_Airports_V2.2.dat als auch in dem Shuttlebus.
Dadrin ist eine Liste, "Port Type Exemplar IDs". Im Flughafenset sind da 26 Einträge drin, im Shuttlebus 4 - jeweils 3 stimmen überein, das müssen die Maxis-Flughäfen sein.
Die vierte aus dem Shuttlebus habe ich dann zu den funktionalen Flughäfen hinzugefügt und gespeichert. Habe dann den Reader neugestartet und die Datei nochmal geladen, der Eintrag war noch da (ich habe also keinen Apply-Button übersehen oä).
Außerdem habe ich den Controller aus der Shuttlebus-Datei entfernt.

Hat leider nicht geholfen, ich kann den Shuttlebus immer noch weder abreißen noch umsetzen. :ciao:

Edit:
Ich habe noch einige Testfortschritte gemacht. Ich kann einen neuen Shuttlebus setzen (und speichern und neu laden), ich kann den neuen jedoch nicht abreißen.
Außerdem habe ich mal die Stadt komplett aufgelöst. Auch in einer komplett leeren / neuen Stadt kann ich zwar Shuttlebusse setzen, diese aber nicht abreißen.

Edit2: Ich habe mal eine komplett neue Region erstellt und meinen Pluginordner bis auf die Flughäfen und den Shuttlebus geleert, selbes Ergebnis.

Edit3: Okay, jetzt wird es schräg. Ich habe folgendes getan:

  • Den PC neugestartet. Man weiß ja nie. :D
  • Sichergestellt, dass der Pluginordner im Programmordner leer ist. Man weiß ja nie.
  • Einen neuen Pluginordner erstellt.
  • Das Setup des Shuttlebusses ausgeführt.
  • SC4 gestartet.
  • Eine neue Region gegründet.
  • Stadt gegründet, Shuttlebus gebaut, gespeichert, neu geladen, abgerissen, neu geladen - Crash.
 
Zuletzt bearbeitet:
In einem höchst wissenschaftlichen Verfahren unter der Laborleitung von Dr. Klenk wurde am 9. September in mehreren experimentellen Aufbauten (bestehende Stadt, neue Region, leerer Pluginordner, voller Plugionordner) das Fluggsche Ergebnis reproduziert.

(auf Deutsch: Egal was ich tu, der Fehler von Fluggi ist beständig)
 
Stadt gegründet, Shuttlebus gebaut, gespeichert, neu geladen, abgerissen, neu geladen - Crash.
Danke fürs intensive Testen, ich habe das mal so nachvollzogen, und jetzt stürzt meine Teststadt auch ab. Es hängt also offenbar daran, dass SC4 in der Stadt, wo man den Lot abgerissen hat, beim Neuladen aus dem Tritt gerät. Ich habe daher meinen Lot noch einmal minutiös mit den anderen Flughäfen verglichen, und mir ist ein klitzekleiner Unterschied aufgefallen: Ich hatte im Lot Exemplar file das "LotConfigPropertyZoneTypes"-Property auf 0x0F stehen (setzbare Lots), die Maxis-Flughäfen verwenden aber 0x0B. Also im Reader geändert, abgespeichert, und den Test nochmal durchgeführt. Jetzt kann ich den Lot abreißen, ohne dass die Stadt beim nächsten Laden abstürzt. Wäre nett, wenn Ihr das auch mal in der Teststadt probiert - und womöglich klappt es sogar in der beschädigten Stadtdatei?

EDIT: Ok, ich glaube, ich habe eine einigermaßen geeignete Lösungsstrategie zur Fehlerbehebung gefunden, die aber leider nur funktioniert, solange man den Lot vorher noch nicht abgerissen hat: Zuerst tauscht man im Pluginordner den Shuttle-Lot gegen die reparierte Version mit 0x0B aus, dann lädt man die Stadt bzw. die Städte, wo der alte Lot gebaut wurde, reißt ihn ab, baut ihn wieder neu und speichert. Danach kann man gefahrlos die Stadt jederzeit neu laden, auch wenn man den Lot zwischendurch wieder abreißt.
 
Ich hab jetzt mal 0x0B eingetragen (der Reader kennt das sogar als Airport), und es funktioniert.
Ich hatte bei früheren Tests schon festgestellt, dass man das Exemplar file problemlos aus der Stadtdatei löschen kann, der zieht sich dann anscheinend ein neues aus dem Pluginordner. Das hab ich also getan, er hat sich ein repariertes gezogen und dann konnte ich den Shuttlebus ohne aufhebens bulldozen und neben den Bahnhof setzen. Funktioniert, danke dafür :hallo:

So ein verteiltes Backupsystem aka Multiplayer ist schon was tolles, sonst wäre meine Stadt jetzt einfach im Eimer und ich wüsste nie warum :lalala:
Schade nur, dass es bestimmt schon ein paar Städte gibt, die deswegen kaputtgegangen sind - auf LEX und Kurier sinds schon fast 700 Downloads :argh:

Seltsam ist nur, dass Danny meine Stadt problemlos laden konnte, wo doch eigentlich die modularen Flughäfen und der Shuttlebus wegen der Controller miteinander inkompatibel sind. Ich hingegen kann die Stadt mit dem großen Flughafen ohne den entsprechenden Controller nicht laden.
 
Zuletzt bearbeitet:
Interessant, das mit dem Löschen des Exemplar files in der Stadtdatei muss ich mal testen, eigentlich wäre ja anzunehmen, dass SC4 das beim Abreißen entfernt, aber das ist offenbar nicht der Fall - und womöglich kommt es genau deshalb durch die falsche Zonenzuweisung zum Absturz, weil vielleicht erst so überhaupt ein Vergleich "Feld xyz mit abgerissenem Lot = aufgehobene Flughafen-Zone" stattfindet.

Ich hoffe, dass der Schaden bei den Usern bisher nicht so hoch ist; in der Regel wird man ja so einen Lot auch nur einmal bauen und nicht wieder abreißen (oder nach dem Abriss gleich wieder an der richtigen Stelle bauen, ohne vorher zu speichern), zumindest habe ich bisher keine Anfragen bzgl. Abstürzen bekommen.

Warum Danny die Stadt laden konnte, kann ich im Moment auch nicht nachvollziehen; ist vielleicht die Ladereihenfolge bei ihm eine andere? Oder hat es etwas damit zu tun, dass SC4 eine Kopie der Exemplar files in der Stadtdatei speichert, und diese ggf. den Exemplar files im Pluginordner vorzieht? Leider gibt es dafür ja keine definitiven Antworten, man kann nur herumprobieren (ähnlich wie bei Prop Pox und Co., wo man auch mehr oder weniger auf sein Glück angewiesen ist).
 

Zur Zeit aktive Besucher

Zurück
Oben Unten