Ach du lieber Gott, wo immer sich das nun wieder verbergen mag..
Ach so... aber die Mapsize wird doch dann in die Civilization4.ini geschrieben, oder steht das danach noch irgendwo?
Ach du lieber Gott, wo immer sich das nun wieder verbergen mag..
Ach so... aber die Mapsize wird doch dann in die Civilization4.ini geschrieben, oder steht das danach noch irgendwo?
Geändert von raystuttgart (14. November 2012 um 16:14 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)
Ähnliches gilt übrigens auch für Mapskripte.
(Da legt es Mods auch öfters mal hin, wenn du vorher ein Mapskript einer Mod gespielt hast, die die andere nicht kennt.)
Edit:
Für Victory Conditions oder Gamespeeds gilt das gleiche.
Geändert von raystuttgart (14. November 2012 um 16:38 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)
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)
Guck mal, wer da postet...
Ich habe gerade spaßeshalber versucht, eine RaR(1.2-neueste Version)-DLL zu kreieren.
Dabei erhalte ich in VS2008 folgenden Warnhinweis (mal komplett gespoilert):Achtung Spoiler:
Wenn ich versuche, einen bestehenden Spielstand mit meiner neu kreierten DLL aufzurufen, startet das Spiel, beginnt die XML-Dateien einzulesen und bricht dann mit einer Fehlermeldung "Die Spieldateien konnten nicht dekomprimiert werden" ab.
Wenn ich mit dieser DLL ein Spiel neu starte, scheint es aber zu funktionieren (jedenfalls die ersten 5 Runden).
Frage:
a) ist das normal?
Eigentlich ist die DLL ja die gleiche, nur halt noch mal kompiliert worden
b) falls nein, wo könnte der Fehler liegen?
Hier vermute ich, dass die "/OPT:REF" etwas damit zu tun, was mir nur leider gar nichts sagt...
Nachtrag:
Falls wichtig sein sollte, die DLLs unterscheiden sich auch bzgl. der Größe, wobei das wohl (vermute ich) auf die verwendeten Umgebungen zurückgeführt werden könnte?
(rot: meine, grün: Original-RaR-DLL)
Geändert von Commander Bello (27. November 2012 um 19:52 Uhr)
Nein, ist es nicht.
(Solange du an der Mod nichts geändert hast.)
Richtig, so sollte es sein.
Ehrlich gesagt, keine Ahnung.
Außer natürlich, ich hätte aus Versehen zwar die aktuelle DLL aber nicht den aktuellen Stand der Sourcen ausgeliefert.
(Kann ich jetzt nicht mehr nachvollziehen. Glaube ich aber auch nicht.)
Die Größe ist kein Indiz das irgendwas nicht stimmt.
Wie gesagt, wenn ich, Robert oder andere Teammitglieder / Partner die DLL kompilieren unterscheiden die sich viel deutlicher bezüglich Größe.
(Auf dem selben Stand der Sourcen natürlich.)
-------
Edit:
In kurzer Zeit kommt sowieso das Release 1.3 raus.
(Da gibts dann natürlich auch wieder eine neue DLL mit neuen Sourcen.)
Edit 2:
Solange Religion and Revolution noch so aktiv ist wie jetzt, macht es fast gar keinen Sinn daran eigenständig zu Modden.
Du müsstest praktisch ständig deine eigenen Änderungen von Release zu Release nachziehen ...
(Das kann ziemlich nervig werden.)
Geändert von raystuttgart (27. November 2012 um 21:27 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)
Noch eine grundsätzliche Bemerkung zur Entwicklungsumgebung für DLL-Programmierung:
mein derzeitiger (Spiele-)Rechenknecht läuft mit Windows 8 (64Bit)
Das Microsoft Visual C++ Toolkit 2003 konnte ich erfolgreich installieren.
Bei der Version von Visual Studio Express hatte ich Probleme.
Achtung Spoiler:
Edit: Anleitung für Dummies wie mich
Auf Windows 8 lässt sich Visual C++ Express 2008 problemlos installieren. Bei MS habe ich das nicht mehr bekommen.
Eine funktionierende ISO-Version (Voller Installer mit integriertem SP1) habe ich hier gefunden:
http://www.computerbase.de/downloads...l-studio-2008/
ich habe diese Version genommen:
http://www.computerbase.de/downloads...io-2008/21765/
Tipp: Man kann die ISO mit einem Packer (z.B 7-Zip) entpacken oder als Image mounten (z.B. mit Daemon-Tools oder ähnlichem)
Falls der Autostart nicht funktionieren sollte:
Setup.hta starten (sollte mit microsoft (R)-HTML-Anwendugshost geöffnet werden) und Visual C++ 2008 wählen
(ich hatte zunächst eine Fehlermeldung im Auswahlmenu, Java wollte da noch eine Freigabe, danach hat er die Installationsdaten gefunden)
oder für die Puristen:
einfach mit dem Explorer ins Verzeichnis VCExpress/autorun.exe ausführen
Wird standardmässig auf 64Bit unter Programme(x86)/Microsoft Visual Studio 9.0 installiert.
Wer von Hand eine Desktopverknüpfung machen will:
Programme(x86)/Microsoft Visual Studio 9.0/Common7/IDE/VCExpress.exe
Mit dieser Version kann man wie erforderlich problemlos ein makefile-Pprojekt erstellen
Hoffe, dass dies für Neulinge nützlich ist.
Falls sinnvoll, kann der relvante Teil gerne bei den Tutorials und Dokumentationen eingestellt werden)
Falls jemand VS Studio Express 11.0 erfolgreich für das Editieren der CvGameCoreDll von Col2/Civ4 verwendet, wäre übrigens eine Kurzanleitung hilfreich.
Ich jedenfalls werde jetzt mit der Version Visual C++ Express 2008 arbeiten.
Lieb Grüsse, Bookaneer
Edith meint, man könne auch die Version aus VS Express 10.0 / 2010 nehmen: Visual C++ 2010 Express
Da habe ich leider keinen Offline-Installer gefunden, derzeit gibt es ihn aber noch offiziell bei Microsoft als Online-Instant-install:
http://www.microsoft.com/visualstudio/deu/downloads
http://go.microsoft.com/?linkid=9709943
Diese Version hat unregistriert eine Laufzeit von 30 Tagen, die Registrierung ist aber kostenlos und verursacht auch nach meinem Kenntnisstand keine weiteren Kosten.
Achtung Spoiler:
Falls jemand die 2012 Version nutzen möchte: man muss die DESKTOP-Version installieren, da gibt es dann auch das gewohnte template Makefile-Projekt
(ich hatte ursprünglich die Windows 8 Version installiert, die scheint aber "nur" für (metro)-Apps gedacht zu sein ??)
Geändert von bookaneer69 (04. März 2013 um 17:37 Uhr)
Ich hab aktuell Windows 7.
(Hab mich gegen Windows 8 gestreubt als ich mir meinen neuen Rechner gekauft habe.)
Dazu benutze ich Visual Studio C++ Express 2010.
(Auf meiner alten Kiste hatte ich Visual Studio C++ Express 2008.)
Ich hab (beim Wechsel auf meine neue Kiste) einfach folgendes getan:
1. PSDK und Microsoft Visual C++ Toolkit 2003 auf meine neue Kiste kopiert.
2. Meinen kompletten Workspace auf meine neue Kiste kopiert. (incl. Projektfile, Makefile, Bats, ... )
3. Pfade im Makefile noch ein wenig an die neue Ordnerstruktur angepasst.
4. Visual Studio C++ Express 2010 gestartet.
5. Das Projektfile geladen und von 2008 auf 2010 Format konvertieren lassen.
Fertig.
(War in wenigen Minuten alles erledigt.)
Geändert von raystuttgart (04. März 2013 um 16: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)
Hallo Ray:
Mit dem Laden des vorhandenen Projektfile hatte ich es auch versucht, Er hat beim Konvertieren ins Format von VS 2012 dann nur jede Menge Meldungen ausgespuckt. Die Code-Dateien konnte ich ansehen, nur eine sielbare dll konnte ich nicht erzeugen. Wahrscheinlich habe ich einfach einige Dinge nicht richtig eingestellt. in den Guides steht aber auch immer drin, man solle die VS-Projektdaten löschen und ein neues Projekt anlegen.
Und das geht doch wohl nur korrekt über das template "Makefile Project". Und genau das habe ich bei der CS 2012 nicht gefunden.
Noch eine Frage, da ich RaR 1.3 + Commander Bellos Modmerge RaR+2CPR als Basis nutzen will:
ich nehme die Basisdaten von Vanilla aus dem Ordner "CvGameCoreDll" und kopiere den in meinen Workspace
Dann kopiere ich den Inhalt von RaR/DL_Sources und überschreibe damit den Zielordner
Dann kopiere ich den Inhalt von RaR+2PCR/DLL und überschreibe damit den Zielordner
Oder muss ich nach Vanilla und VOR RaR noch die DLL-Sourcen von TAC einfügen?
(ich bin mir da nicht sicher, weil ich weiss, dass Ihr für RaR als Basis TAC verwendet habt, aber da man die dll nicht dekompillieren, sondern nur neu kompillieren kann, müssten die Sourcen von TAC ja in den Sourcen von RaR enthalten sein. Andererseits: Sourcen aus TAC, die in RaR NICHT geändert wurden, müssen dann ja nicht zwangsläufig in den Sourcen von RaR enthalten sein (analog ist das ja bei Commander Bellos ModMerge so, da sind ja uch nur die GEÄNDERTEN Sourcen beigelegt.)
Für eine kurze Hilfestellung wäre ich dankbar. Falls ich die Sourcen von TAC brauche, sind das dann die aus dem TAC 2.03_final Release ? Muss ich grade neu runterladen, zu meiner Schande muss ich gestehen, dass ich die auf meinem neuen Win8-Rechner gar nicht habe und mein "alter" Spielerechner ist momentan nicht aktiv, auf dem "Internet"-PC, den ich hier zum posten verwende, hatte ich den DL schon wieder gelöscht.
PS: ich hatte auch lange überlegt, ob ich noch Win7 nehmen soll, mich dann aber doch für das neue BS entschieden. Nach einigen Anfangsschwierigkeiten lässt sich aber auch mit Win8 arbeiten
Du kannst natürlich ständig Sourcen über Sourcen kopieren.
Eigentlich beinhaltet RaR, aber die vollständigen Sourcen für die RaR-DLL.
(Vanilla oder TAC als Basis zu nehmen ist vollkommen unnötig.)
Was Commander Bello in seinem ZIP liefert, weiß ich nicht.
Edit:
In den RaR-Sourcen sind aber natürlich nur die Sourcen. (Also keine Bats usw.)
Vielleicht nimmst du daher tatsächlich erstmal TAC als Basis und kopierst RaR drüber.
Das RaR-Packet ist weniger für Anfänger gedacht, die ihren Workspace zum ersten Mal einrichten, sondern für Leute, die bereits einen funktionieren Workspace haben.
Daher sind da eben nur Sourcefiles drin und keine Projektfiles, die einen existierenden / funktionierenden Workspace kaputt machen könnten.
Edit 2:
Wenn ich mal Zeit habe - vielleicht am Wochenende - erstelle ich ein "RaR-Workspace-in-10min-einrichten" Packet mit einer kurzen Anleitung.
(Das wäre dann aber nicht RaR 1.3 sondern eher "RaR 1.3 ray's Edition".)
Geändert von raystuttgart (04. März 2013 um 12:58 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)
Lieber Ray, Danke für die Klärung. Dann reicht es mir, wenn ich RaR als Basis nehme und die Änderungen von CB drüberkopiere (sind nur 2 Files: CvDefines.h und CvGlobals.cpp, dort sind wohl die Einstellungen drin, um den 2. Stadtring zu besiedeln und die Grafiken für die Arbeiter verkleinert darzustellen)
Spieltechnisch funktionert das dann wohl so: Wird ein Mod geladen, verwendet das Spiel die Vanilla dll als Basis und lädt die Mod-dll nach für die Veränderungen. Diese hat dann eine höherere Priorität und "überschreibt" gewissermassen die Anweisungen aus der Vanilla dll wo nötig. Daher müssen in einer Mod-dll nur die Dateien enthalten sein, die von den Eintragungen in der Vanilla-dll abweichen oder neu hinzugefügt wurden. habe ich das ungefähr richtig wiedergegeben?
Edith hat gerade erst Dein Edit gelesen
Ok, Dann werde ich das mal berücksichtigen. Evtl wäre es tatsächlich clever von mir, erstmal auf Dein anwenderfreundliches Paket zu warten
Danke, dass Du Dir hier soviel Mühe machst
Warte vielleicht einfach mal bis zum Wochenende.
Nein.
Die RaR-DLL erstetzt komplett die Vanilla-DLL.
Im Download von RaR sind aber dennoch alle Sourcen beinhaltet, die es zum Erstellen der RaR-DLL benötigt.
(Der vollständige Satz des gesamten Source-Codes.)
Es kann im Spiel nur eine einzige CvGameCore.dll geladen sein.
Nein.
Siehe oben.
Du brauchst immer den Gesamtsatz an Sourcen um eine DLL zu kompilieren.
Wie du den zusammengebastelt bekommst ist eine andere Sache.
C.B. hat in seinem Download dann eben nur den Diff der Sourcen zu RaR 1.3. hinterlegt.
Geändert von raystuttgart (05. März 2013 um 14:29 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)
Ok, da lag ich wohl falsch. Ich hab mir das nur so zusammengereimt, da ja die Vanilla-Sourcen-Ordner ca 26.6 Mb hat, während RaR auf schlappe 5,53 MB kommt und TAC auf 5,32 MB. Aber im Vanilla-Ordner sind ja noch 2 Unterordner Boost-1.32.0 und Phyton24. Die werden ja nicht in die dll kompiliert. Und die restlichen Dateien scheinen ja vollständig im jeweiligen Modordner wieder aufzutauchen. Mein Fehler. Das habe ich falsch interpretiert.
Wobei es ja bei Mods häufig schon so ist, dass unveränderte Teile aus dem Original abgerufen werden. Aber da die dll wohl die "zentrale Steuereinheit" ist, können wohl nicht zwei hierarchisch angesprochen werden
Ich glaube es ist wirklich sinnvoll, auf Dein Paket zu warten, bevor ich das Thema dll anfasse . Momenan schwirren mir halt eine menge Ideen relativ unsortiert im Kopf herum, was ich am Spiel gerne ändern / hinzufügen möchte. Und vieles davon berührt offensichtlich dll-Programmierung, da ich z.B. Ideen für neue Yields habe ...
Die brauchst du auch.
Entweder du referenzierst die nur über das Makefile im Ordner der Vanilla oder du kopierst die in deinen Workspace und referenzierst die da über das Makefile.
Nochmal zum Verständnis:
Achtung Spoiler:
Wie gesagt, ich stelle mal ein "Anfängerpacket RaR-DLL" zusammen und lasse es dir über mein SVN zukommen.
Edit:
Besorge dir bitte Visual Studio C++ Express 2010.
(PSDK und Microsoft Visual C++ Toolkit 2003 hast du ja schon.)
Geändert von raystuttgart (04. März 2013 um 16:04 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)