Forum



Runners19872 am 22.07.2015 12:41 #13602


Mehr Farben zum auswählen für die Spieler und das Lila zurück ;)

mfG


Spike am 22.07.2015 17:55 #13603

Im Ruhestand
RGB werte und das ist kein Problem.

---



Runners19872 am 28.07.2015 15:18 #13609


Wo ist die Farbpalette für die Spieler ? Kann man doch auch bestimmt per Hand ändern


Spike am 28.07.2015 16:41 #13610

Im Ruhestand
Ändern bedeutet aber nicht, dass es mehr Farben werden. Wenn du es ändern möchtest, kannst du doch einfach die
Werte aufschreiben und sie können hinzugefügt werden, was spricht dagegen?

---



Runners19872 am 28.07.2015 18:24 #13613


Wie kann ich das selber ändern?


Runners19872 am 28.07.2015 19:06 #13614


Wie kann ich das selber ändern?


Spike am 28.07.2015 19:22 #13616

Im Ruhestand
RttR gar nicht soweit ich weiß, siedler 2 verweise ich auf http://www.settlers2.net

---



qUiXui am 28.07.2015 21:16 #13617


Zitat von Runners19872:
Wie kann ich das selber ändern?

colors.h Zeile 55ff, Werte als ARGB


Flamefire am 29.07.2015 11:54 #13618


Hab da ne Idee: Hab den XMLSerializer schon vorbereitet, der dann für die Nationen zum Einsatz kommen soll. Kann den auch so einsetzen, dass man die Farben in einer XML Datei definieren kann und RTTR nimmt dann alle, die er findet. Dann kann man sogar Farben austauschen und hinzufügen ohne was am Code zu ändern. Änderung sollte relativ trivial sein.

Einziges: Was macht er, wenn jmd Farben gelöscht hat, die in nem Savegame o.ä. sind? Bin ja für eine Exception. Die sollte im Log auftauchen und alles ist gut.

---
Github: https://github.com/Flamefire


~Runners19872 am 29.07.2015 12:18 #13619


Flamefire kannst du mir das evtl so erklären dass ich das auch machen kann?
Ich probier das erstmal mit der color.h aber dafür brauch ich dann doch einen compiler oder


~Runners19872 am 29.07.2015 12:29 #13620


Und wo ist die colors.h? :)


~Runners19872 am 29.07.2015 12:58 #13621


Ich sehe gra im launchpad aber wie kann ich alles auf einmal herunterladen ich kann immer n ur einzelne Dateien herunterladen...


Flamefire am 29.07.2015 16:24 #13623


Code ist auf github, nicht (mehr) Launchpad: https://github.com/Return-To-The-Roots/

Erklären ist schwierig, da ich das wenn dann so haben möchte, dass man das nicht noch 3 mal ändern muss.
Im Prinzip: Ein Singleton für das laden von "GameData" wobei GameData (später mal) alle Konstanten sind, die jetzt frei im Code rumirren.
Für die Farben braucht man eine Klasse/struktur PlayerColors, die in dem Fall ein einfacher Vektor(-ReadOnly-Wrapper) sein kann. Beim Laden (im GameData objekt) öffnet er dann eine playerColors.xml und lädt die Einträge in den Vektor. Dazu kann die xml so aussehen, dass unter dem root-node "PlayerColors" je ein "Color" Node ist, mit dem Farbwert in Hex.
Beim Laden eines Spiels muss überprüft werden, dass für alle verwendeten color-indizes auch ein eintrag in dem Vektor ist ( size() )
Ansonsten sind die verwendbaren Farben einfach die Einträge im Vektor.
Beim Spiel eröffnen muss der Host noch vorgeben, wieviele Farben möglich sind und die Clients müssen prüfen, dass die genug Farben haben.

Für den XMLSerializer und dessen Verwendung kann mein Branch "dynamicNations" angeguckt werden. (Den branch selbst noch nicht verwenden!)

Aber wie gesagt, dass kann ich auch machen. Wenn du nur Farben ändern willst, änder die colors.h und compilier neu, oder warte, bis die Änderung fertig ist.

---
Github: https://github.com/Flamefire


qUiXui am 29.07.2015 20:11 #13625


Zitat von ~Runners19872:
[...]dafür brauch ich dann doch einen compiler oder

Ja, das is derzeit die einzige einfache Option es zu ändern.

Ohne recompile die Farben austauschen geht nur wenn du mit nem Debugger in der Binary rumpfuschen magst...nicht besonders praktikabel.

Zitat:
Und wo ist die colors.h?

Hatte ich dir verlinkt -> https://github.com/Return-To-The-Roots/libutil/blob/master/src/colors.h

Zitat:
[...]wie kann ich alles auf einmal herunterladen[...]

Du brauchst git (http://git-scm.com/) dafür. Wenn du nur den aktuellen Stand willst kannst du den unter https://github.com/Return-To-The-Roots/s25client/archive/master.zip herunterladen.

Edit @ Flamefire:
Ich würd, wenn es eine Farbe nicht gibt, einfach die erste freie verwenden.

Will heißen, wenn in nem Spiel die Farben 1, 3, 23, 5, 24 verwendet wurden (und die 20er-Farben custom sind, die dann fehlen), einfach das ganze mit 23->2, 24->4 zu 1, 3, 2, 5, 4 ändern.

Editiert von qUiXui am 29.07.2015 20:20

~Gast am 30.07.2015 14:23 #13626


Hallo qUiXui, erstmal danke für die Hilfe.
Ich habe allerdings noch Schwierigkeiten, die colors.h war im master nicht dabei ich habe sie jetzt manuell hinzugefügt.
Wie kann ich das ganze jetzt compilen? Die start bring tmich wieder auf den Desktop...

LG


qUiXui am 31.07.2015 08:54 #13627


Oje...sorry, daran habe ich nicht gedacht. Beim Wechsel auf Github hat Flo das Projekt in mehrere Submodule aufgespalten (siehe die Liste unter https://github.com/Return-To-The-Roots), du brauchst die anderen auch - in dem Zip war wohl nur der Code für den Client vorhanden (imo ist die Aufteilung nicht besonders gut gemacht).

Compilieren kann leider eine fürchterlich mühsame Angelegenheit sein wenn du wenig Erfahrung auf dem Gebiet hast. Du müsstest entweder die anderen Teile auch manuell runterladen + die Abhängigkeiten (ein paar Bibliotheken, möglicherweise sind die aber in deinem Zip schon dabei) und in die entsprechenden Ordner kopieren, oder das ganze doch mittels git machen. Wenn du das hast, kannst du es compilieren - wobei das unterschiedlich abläuft, abhängig davon welches Programm du dafür verwendest (Visual Studio, gcc?)


Flamefire am 31.07.2015 11:24 #13628


Git und CMake nutzen. Das geht echt einfach. Anleitung dazu sind im Readme

---
Github: https://github.com/Flamefire




Feel free to post in English!

Antwort schreiben

Username:
Security code:
Text:

   
  Convert smilies like :), ;) etc. into small graphics?
  Convert WWW-addresses into clickable links?
  Soll Boardcode in ihrer Nachricht aktiviert werden?