CommNews Forum Home  

Zurück   CnC Foren > Die C&C Spiele > Tiberium Wars (C&C3) > TW Maps und Mods

Antworten
 
Themen-Optionen Thema bewerten Ansicht
  #1  
Alt 28-07-2007, 11:54
Benutzerbild von Peda1983
Peda1983 Peda1983 ist offline
Terrordrohnenhirte

 
Registriert seit: Jun 2007
Beiträge: 115
Peda1983 hat noch keine Bewertung oder ist auf 0
Peda1983 eine Nachricht über Skype schicken
Maps generieren

Hat jemand von euch Ahnung in welchem Format Maps abgespeichert sind ? Hatte nämlich gerade die Idee einen Map-Generator wie in Yuri zu programmieren. Also ein Klick aufs Knöpfchen und eine neue Map ist da.

Die sind dann zwar sicher nicht so schön wie die die von Handarbeit hergestellt sind, aber bieten schnell mal ein bisschen Abwechslung.

Das Ziel hab ich mir gesetzt. Als Werkzeug würde ich C# nutzen. (Bin selbst Programmierer seit mehreren Jahren und habe damit auch einiges an praktischer Programmiererfahrung

Woran es noch fehlt ist das Wissen um ein map-file selbst zu erzeugen und eventuell auch die Zeit das ganze zu erstellen, also falls jemand mitmachen möchte

Vielleicht ist es aufgrund des map-file aufbaus auch gar nicht möglich... Das alles gilt es noch herausgefunden zu werden.
Mit Zitat antworten
  #2  
Alt 28-07-2007, 12:13
Benutzerbild von Matze I
Matze I Matze I ist offline
Æinfach da, gelegentlich

 
Registriert seit: Feb 2006
Ort: Harsefeld
Beiträge: 5.931
Matze I ist ein...
Matze I eine Nachricht über ICQ schicken Matze I eine Nachricht über Skype schicken
OL Nick: Matze I
So eine map besteht aus einer *.map datei 1-2 *tga datein und 2 *.xml dateien.

Ob das nun eine oder 2 TGA daeien sind liegt daran, ob man eine minimap eingebaut hat. (Der WB erstellt leider keine vernünftige)

Ich hab mal ne nette map für euch alle

http://z-karten.z-21.de/downloads.ph...id=11&act=down
__________________

vom 20.3.2006 - 20.3.2011 in der Zivilisation 21
Mit Zitat antworten
  #3  
Alt 28-07-2007, 12:16
Benutzerbild von Peda1983
Peda1983 Peda1983 ist offline
Terrordrohnenhirte

 
Registriert seit: Jun 2007
Beiträge: 115
Peda1983 hat noch keine Bewertung oder ist auf 0
Peda1983 eine Nachricht über Skype schicken
hab gerade leider keinen Zugriff auf meinen c&c computer. könntest du mal eben die .map datei mit einem normalen Editor öffnen und kucken ob es nach xml aussieht ?

Edit 1: Schonok... hab gerade deine sahara map downgeloadet. werd die mal durchkucken... danke
Edit 2: Autsch... die map datei ist eine Binärdatei... ohne genaue File-Doku wird das wohl nichts...


Last but not least: Edit 3: Scheint so als ob die.map Datei nur die benutzten Texturen enthält. Die map selbst ist in der map.xml datei gespeichert (also die ganzen Objekte , pfade usw).
Das heisst alles was in der map gerade benutzt wird, liesse sich auch bei einer generierten map benutzen. -> Sahara.map enthält einige Gebäude, Büsche, usw. Wenn ich dieselben in einer zufallsgenerierten map nutze und alle objekte in der .map datei enthalten sind sollte es ohne weiteres möglich sein eine map zu generieren. Der Aufbau der XML datei sieht auch relativ einfach aus:

Ganz oben eine Include section die angibt welche XML ressourcen verwendet werden.
Danach eine Game Map section die die Player Start Positions enthält und dann der Reihe nach die einzelnen Objekte.
Structures -> die gebäude
Prop -> sowas wie Büsche Bäume usw... (davon sind unglaublich viele in der Sahara Map enthalten...)
MapMetaData -> Map Name, Grösse, obs eine Offizielle map ist, ob multiplayer oder nicht, ... + Start Positionen der Kamerasicht der einzelnen player
EnvironmentData -> Umgebungseinstellungen wie standardenvironment + geräusche...
WorldDict -> Standard Musikpalette, Wie weit man raus / reinzoomen kann, standardwetter
TerrainTextureAtlas -> Wo die einzelnen Texturen gefunden werden können
GameScriptList -> Hier sind nur Player id's vorhanden.

Ich denke mit dem vorhandenen Material lässt sich schon einiges bewerkstelligen...

Geändert von Peda1983 (28-07-2007 um 12:41 Uhr).
Mit Zitat antworten
  #4  
Alt 28-07-2007, 13:27
Benutzerbild von RedBasti
RedBasti RedBasti ist offline
Pyro

 
Registriert seit: Feb 2002
Ort: Berlin
Beiträge: 9.911
RedBasti ist ein C...
RedBasti eine Nachricht über ICQ schicken
OL Nick: RedBasti
@ Matze: Dann pack doch deine Map auch in den Vorstellungs-Thread und leg ein paar Bilder dazu.

@Topic:
Ich denke es gibt viele die einen echten Zufallsgenerator zum Erstellen von Karten begrüßen würden. Prinzipiell sehe ich jedoch einen großen optischen Nachteil darin. Die erstellten Karten werden im Vergleich zu konventionell editierten recht schlecht aussehen, da z.B. Straßen und Wege nicht vorhanden sind und wenn doch dann nicht zu den vorhandenen Gebäuden passen (nur mal als Beispiel). Ebenso wird es auch bei den Texturen sein. Selbst wenn ein Generator viele Details erstellen würde, dann würde dieser vermutlich Stunden lang laufen bis eine Map fertig ist.

Das eigentliche Problem ist eben das die Komplexität einer heutigen 3D-Map nicht einmal ansatzweise mit der einer 2D-Map zu vergleichen ist. Das wird auch der Grund sein warum eigentlich kaum noch ein Spiel einen solchen Generator einsetzt. Aber Hut ab wenn sich da einer rantraut.

Sicherlich ist es aber dennoch eine gute Alternative wenn man schon alles durchgespielt hat was es so gibt.
__________________
-->Reviews von Gamern für Gamer bei Gamer-Oase.de<--
Oh, isn't there someone else you can annoy? Friends? Family? Poisonous reptiles? - Manfred in Ice Age

Mit Zitat antworten
  #5  
Alt 28-07-2007, 13:57
Benutzerbild von Peda1983
Peda1983 Peda1983 ist offline
Terrordrohnenhirte

 
Registriert seit: Jun 2007
Beiträge: 115
Peda1983 hat noch keine Bewertung oder ist auf 0
Peda1983 eine Nachricht über Skype schicken
Ich habe da eher an ein paar Sekunden Erstellungszeit pro map gedacht

Genau wie du geschrieben hast sehe ich das grösste problem in zusammenhängenden objekten -> strassen, flüsse, gebirgsverläufe. Deshalb die ersten versuche mit einzelnen Objekten wie Gebäude, Bäume usw. Wenn ichs mal geschafft habe die Bäume zu Wäldchen zu gruppieren wirds interessanter

Die 3D Map hat nur einen Unterschied zu anderen maps: die z-achse. deshalb werde ich anfangs nur 2d arbeiten (so wie in der sahara beispiel map deren Z-Achse stets 0 ist, also keine hügelaufweist).

mal sehn was draus wird, kann frühestens sonntag Abend damit beginnen, werde aber bis dahin schon mal einige überlegungen anstellen
Mit Zitat antworten
  #6  
Alt 28-07-2007, 19:36
Benutzerbild von RedBasti
RedBasti RedBasti ist offline
Pyro

 
Registriert seit: Feb 2002
Ort: Berlin
Beiträge: 9.911
RedBasti ist ein C...
RedBasti eine Nachricht über ICQ schicken
OL Nick: RedBasti
Zitat:
Zitat von Peda1983 Beitrag anzeigen
Die 3D Map hat nur einen Unterschied zu anderen maps: die z-achse. deshalb werde ich anfangs nur 2d arbeiten (so wie in der sahara beispiel map deren Z-Achse stets 0 ist, also keine hügelaufweist).
Das stimmt nicht ganz. Bei 2d hast du ein festes Hexfeld und kannst das Spielfeld einteilen wie ein Schachbrett, das ist bei 3d nicht mehr der Fall. Hier musst du präzise Koordinaten angeben. Das heißt auch das Objekte miteinander kollidieren können. Während du bei 2d schlicht abfragen könntest ob ein Feld von einem Objekt belegt ist müsste man bei 3d alle möglichen Koordinaten in der Umgebung absuchen..... und jetzt wirds kompliziert.
__________________
-->Reviews von Gamern für Gamer bei Gamer-Oase.de<--
Oh, isn't there someone else you can annoy? Friends? Family? Poisonous reptiles? - Manfred in Ice Age

Mit Zitat antworten
  #7  
Alt 28-07-2007, 19:48
Benutzerbild von Peda1983
Peda1983 Peda1983 ist offline
Terrordrohnenhirte

 
Registriert seit: Jun 2007
Beiträge: 115
Peda1983 hat noch keine Bewertung oder ist auf 0
Peda1983 eine Nachricht über Skype schicken
da hast du recht. im xml file steht nirgendwo drin wie gross ein Element ist. da drin gibts bloss die rotation und die position. Hab überlegt mir meinen eigenen "Raster" über die map zu legen und danach dann die objekte zu verteilen. dieser raster sollte grob genug sein damit nichts kollidiert, aber auch nicht zu grob, sonst siehts nicht gut aus.

die ersten paar tests werden hoffentlich zeigen was geht und was nicht...
Mit Zitat antworten
  #8  
Alt 28-07-2007, 23:16
Benutzerbild von RedBasti
RedBasti RedBasti ist offline
Pyro

 
Registriert seit: Feb 2002
Ort: Berlin
Beiträge: 9.911
RedBasti ist ein C...
RedBasti eine Nachricht über ICQ schicken
OL Nick: RedBasti
Kann man in der XML File erkennen um welches Objekt es sich handelt? Wenn ja müsste man die Größe des Objektes erfassen und dann den entsprechenden Bereich für neue Objekte sperren. Und genau das ist der Grund weshalb ich denke das aufwendige Maps sehr lange brauchen um generiert zu werden.

Ich denke da mal gerade an meine bisher aufwendigste Map Amazon Rainforest mit ca. 3000 Objekten. Da muss sehr viel berechnet und getestet werden. Wenn dann noch das Gelände hinzukommt........ ich brauch nen Quad-Core
__________________
-->Reviews von Gamern für Gamer bei Gamer-Oase.de<--
Oh, isn't there someone else you can annoy? Friends? Family? Poisonous reptiles? - Manfred in Ice Age

Mit Zitat antworten
  #9  
Alt 29-07-2007, 09:07
Benutzerbild von Peda1983
Peda1983 Peda1983 ist offline
Terrordrohnenhirte

 
Registriert seit: Jun 2007
Beiträge: 115
Peda1983 hat noch keine Bewertung oder ist auf 0
Peda1983 eine Nachricht über Skype schicken
Ja, man kann sehen um welches Objekt es sich handelt, wieviel HP es hat, an welcher Position es steht, welchem Player es gehört, aber grösse ist leider nicht dabei.
Das müsste man selbst mal pro Objekt definieren.

Hier Beispielcode für ein Haus + einen Tiberium Spike:

Code:
      <Structure
	Angle="0"
	EventList=""
	Faction="PlyrNeutral/teamPlyrNeutral"
	Health="100"
	Team="PlyrNeutral"
	ThingTemplate="TiberiumSpike"
	id="TiberiumSpike">
	<Position
		x="2011.48"
		y="2546.55"
		z="0"/>
</Structure>
<Structure
	Angle="2.41606"
	EventList=""
	Faction="PlyrCivilian/teamPlyrCivilian"
	Health="100"
	Team="PlyrCivilian"
	ThingTemplate="North_Carolina_House_02"
	id="North_Carolina_House_02">
	<Position
		x="421.119"
		y="616.583"
		z="0"/>
</Structure>
Hab schon aufwändigere Programme geschrieben, denke nicht dass das bisschen Berechnung lange dauert. Denke eher dass der Grösste Aufwand das definieren der Strukturgruppen wird. Damit meine ich dass zb alle Laubbäume gruppiert werden, damit in einem generierten Wald nicht ein einzelner NadelBaum zwischen lauter Laubbäumen steht. Sowas würde sehr komisch aussehen

3000 Objekte sind für generierten Code ja praktisch nichts.

Hab da eher das kleine Problem mit der Mapgrösse. Deswegen bräuchte ich diese map mit je einem Objekt in jeder Ecke um die grösse + positionierung herauszufinden.
Vergleich mal die Map: Height, Width mit den Player Start Positions X Y Werten. Denk dass das um den Faktor 10 verschoben wurde.

Code:
<MapMetaData
	BorderSize="2"
	CRC="0"
	Description="Map:Sahara/Desc"
	DisplayName="Sahara"
	FileName="Data"
	Height="324"
	IsMultiplayer="true"
	IsOfficial="false"
	NumPlayers="2"
	Width="224">
	<StartPosition
		Name="InitialCameraPosition">
		<Position
			x="0"
			y="0"
			z="0"/>
	</StartPosition>
	<StartPosition
		Name="Player_1_Start">
		<Position
			x="1329.96"
			y="379.811"
			z="0"/>
	</StartPosition>
	<StartPosition
		Name="Player_2_Start">
		<Position
			x="836.264"
			y="2658.04"
			z="0"/>
	</StartPosition>
</MapMetaData>

Geändert von Peda1983 (29-07-2007 um 09:16 Uhr).
Mit Zitat antworten
  #10  
Alt 29-07-2007, 12:38
Benutzerbild von Matze I
Matze I Matze I ist offline
Æinfach da, gelegentlich

 
Registriert seit: Feb 2006
Ort: Harsefeld
Beiträge: 5.931
Matze I ist ein...
Matze I eine Nachricht über ICQ schicken Matze I eine Nachricht über Skype schicken
OL Nick: Matze I
Das mit der Verschiebung um den Faktor 10 von dem du sprachst liegt glaub ich daran, das die Map immer etwas größer ist als wie ingame. 10 nahm ich immer zu der zeit als ständert.

Ich hab mal eben 2 Bäume auf einer testmap gesetzt. Einen außerhalb der ingamemap aber sonst noch auf der map. als X/Y Postion hat dieser
-13.63, 4005.91
Ein anderer Baum steht innerhalb der ingamemap und hat die X/Y
31.14, 3964.45

hier noch n bild der beiden Bäume
Baum1 ist oben links Baum 2 der unten rechts
Angehängte Grafiken
 
__________________

vom 20.3.2006 - 20.3.2011 in der Zivilisation 21
Mit Zitat antworten
  #11  
Alt 29-07-2007, 13:30
Benutzerbild von Peda1983
Peda1983 Peda1983 ist offline
Terrordrohnenhirte

 
Registriert seit: Jun 2007
Beiträge: 115
Peda1983 hat noch keine Bewertung oder ist auf 0
Peda1983 eine Nachricht über Skype schicken
super danke...

könntest du mir die map selbst bitte auch posten ? dann kann ich die xml files durchkucken
Mit Zitat antworten
  #12  
Alt 29-07-2007, 14:57
Benutzerbild von Matze I
Matze I Matze I ist offline
Æinfach da, gelegentlich

 
Registriert seit: Feb 2006
Ort: Harsefeld
Beiträge: 5.931
Matze I ist ein...
Matze I eine Nachricht über ICQ schicken Matze I eine Nachricht über Skype schicken
OL Nick: Matze I
Also die map mit den beiden bäumen ist keine map, das war eben nur ne schnell erstellte mini karte wo nur diese beiden bäume drauf waren. Da ist nicht mehr.

Mal ne frage, hast du eigentlich auch den TWEditor?
__________________

vom 20.3.2006 - 20.3.2011 in der Zivilisation 21
Mit Zitat antworten
  #13  
Alt 29-07-2007, 18:07
Benutzerbild von Peda1983
Peda1983 Peda1983 ist offline
Terrordrohnenhirte

 
Registriert seit: Jun 2007
Beiträge: 115
Peda1983 hat noch keine Bewertung oder ist auf 0
Peda1983 eine Nachricht über Skype schicken
nein hab ich nicht, benötige ich aber auch nicht wenn alles glattgeht...
muss heute noch n paar std arbeiten, danach leg ich los
Mit Zitat antworten
  #14  
Alt 30-07-2007, 23:11
Benutzerbild von Cabal...
Cabal... Cabal... ist offline
Avatar

 
Registriert seit: Dec 2000
Ort: Im Kern
Beiträge: 1.907
Cabal... hat noch keine Bewertung oder ist auf 0
Cabal... eine Nachricht über ICQ schicken
Naja, aber wenn du dir den TW Editor saugst, kannsten dir solche Maps fix selber erstellen und schauen

Aber dennoch auf dem laufenden halten, bin sehr gespannt über das Endprodukt.
__________________
Zitat:
You weak pathetic fool, it`s all to easy
(Klick mich)
Mit Zitat antworten
  #15  
Alt 31-07-2007, 17:39
Benutzerbild von Peda1983
Peda1983 Peda1983 ist offline
Terrordrohnenhirte

 
Registriert seit: Jun 2007
Beiträge: 115
Peda1983 hat noch keine Bewertung oder ist auf 0
Peda1983 eine Nachricht über Skype schicken
hab scho bisserl rumprobiert. Irgendwie komm i mit den positionsangaben bzw der mapgrösse auf keinen grünen Zweig... werd mal weiterprobieren...
Mit Zitat antworten
  #16  
Alt 31-07-2007, 21:21
Benutzerbild von Cabal...
Cabal... Cabal... ist offline
Avatar

 
Registriert seit: Dec 2000
Ort: Im Kern
Beiträge: 1.907
Cabal... hat noch keine Bewertung oder ist auf 0
Cabal... eine Nachricht über ICQ schicken
Viel glück !
__________________
Zitat:
You weak pathetic fool, it`s all to easy
(Klick mich)
Mit Zitat antworten
  #17  
Alt 05-08-2007, 23:51
Benutzerbild von Cabal...
Cabal... Cabal... ist offline
Avatar

 
Registriert seit: Dec 2000
Ort: Im Kern
Beiträge: 1.907
Cabal... hat noch keine Bewertung oder ist auf 0
Cabal... eine Nachricht über ICQ schicken
Und, schon neue Erkenntnisse ?
__________________
Zitat:
You weak pathetic fool, it`s all to easy
(Klick mich)
Mit Zitat antworten
  #18  
Alt 07-11-2007, 13:29
Benutzerbild von [UCD] JD
[UCD] JD [UCD] JD ist offline
Terrordrohnenhirte

 
Registriert seit: Dec 2001
Ort: verden
Beiträge: 153
[UCD] JD hat noch keine Bewertung oder ist auf 0
[UCD] JD eine Nachricht über ICQ schicken
OL Nick: ucdjd
Style: cncboard
bump!
__________________
Mit Zitat antworten
Antworten

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:42 Uhr.


Powered by vBulletin Version 3.7.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template-Modifikationen durch TMS

Affiliates
United Forum GetBoinKeD cnc.onlinewelten.de