C++ Daten Speichern

@DasBoeseLebt
Ich bin noch gerade am Rumprobieren. Das ist ja nur so ne vermutung. ich muss den Code ja auch erstmal "Verstehen".
 
Das Problem liegt einfach daran, das Lukas97 nicht wirklich Ahnung von Grundlagen in OOP hat, geschweige denn Grundlagen der Programmierung besitzt.

Im Internet über Google gibt es doch tausende Tuts usw. zu allen Dingen, die mit Programmierung zu tun haben. Da kannst du deine Probleme von ableiten und dazu lernen.
 
naja und 150 Panzer mit unterschiedlichen Werten, müssen irgendwie mit den Daten gefüttert werden. Wenn keine Datei vorliegt die diese Daten schon enthält, dann muss er das wohl per Hand eintragen.

@Lukas Möglich wäre es z.B., dass jeder neu erschaffene Panzer einen Schadenspunkt mehr hat als der Panzer davor. Wo hast du die Daten für die 150 Panzer her?
 
Lukas97 schrieb:
@DasBoeseLebt
Ich bin noch gerade am Rumprobieren. Das ist ja nur so ne vermutung. ich muss den Code ja auch erstmal "Verstehen".

Wenn du nicht weiter weißt oder was nicht verstehst, FRAGEN! ; )
btw: ich will wenn du fertig bist oder so mal dein Code sehen. :)


d0zer schrieb:
naja und 150 Panzer mit unterschiedlichen Werten, müssen irgendwie mit den Daten gefüttert werden. Wenn keine Datei vorliegt die diese Daten schon enthält, dann muss er das wohl per Hand eintragen.

@Lukas Möglich wäre es z.B., dass jeder neu erschaffene Panzer einen Schadenspunkt mehr hat als der Panzer davor. Wo hast du die Daten für die 150 Panzer her?

Ja, er muss natürlich für jeden Panzer Werte zuweisen, da haste Recht. Kenne WoT nicht, gibt es da echt so viele? Dann sry :> (ich dachte er hat das mit den struct-Array nicht verstanden)
 
@d0zer

Aus dem WolT-Wiki hier:
http://wiki.worldoftanks.com/USSR
Allerdings belaufen sich dort nicht alle Werte auf 100%, sondern meist nur auf 50%. Was bedeutet, dass ich InGame nachschaue oder es selbst ausrechne.
 
Mal vom Programmiertechnischen etwas ab, sowas kann man doch auch in wenigen Minuten per Excel lösen.

lg
fire
 
Erstmal: Viel Spaß dabei, alle 150*3 Werte von Hand einzugeben :evillol:

Ich sehe im Wiki außerdem gerade, dass 'rate of fire' keine ganzzahligen Werte sind, wodurch du für SchüsseProMinute float statt int verwenden solltest (damit erledigt sich übrigens auch die Frage, ob man auch nur mit Arrays an Stelle von structs auskommt ;))
 
@Styx
Wie gesagt, die Werte beziehen sich meist nur auf 50%. Bei 100% sind das meist Ganzzahlen, beispielsweiße bei der BL-19: 50% 3,5 schüsse (ca) 100% 4 schüsse (ca)
 
Wenn du aber 3.5 als Ganzzahl darstellen willst, so schneidest du ja einfach Zahlen ab und dann kommt ja eventuell etwas ganz anderes heraus. Gerade bei 150Panzern (oder so).

Daher wäre die Empfehlung schon richtig, dass man den Datentyp richtig wählt.
 
Warum bekommt die Applikation nicht einfach ne Datenbank hinter geklatscht, mit Bezug auf den jeweiligen Panzer und die Anwendung holt sich die Daten aus der Datenbank, die dann in einer Methode ausgerechnet werden und dem Anwender, dann das Ergebnis zurück gegeben wird ?
 
Es kommt jetzt eine vollkommen andere Sicht auf das Problem, wo man weiß, was du eigentlich genau willst.

WoT bietet dir direktk keine API, die man benutzen könnte. Es gibt aber Parser für das Wiki um die Stats auszulesen, soweit ich gelesen habe.

Jedenfalls wird deine Datenpflege ein riesen Problem werden, den du musst immer direkt in den Sourcecode rein, die Stelle finden und anpassen. Und das kann, ich kenne den Patchintervall nicht, jedes mal sein. Eventuell kommen auch Panzer dazu oder fliegen raus.

Daher wäre es wirklich gut, wenn die Daten von den Panzern nicht direkt in Source eingegeben werden müssen, sondern extern eingebunden werden um zu mindestens einen Teil zu erleichtern. Das ganze kann dann sogar dynamisch sein.

Man könnte XML-Dateien nehmen, simple Textdateien (flache Datenbank) oder eine richtige Datenbank dahinter hängen. Klar, du hättest am Anfang auch ein Pflegeaufwand, auf Dauer jedoch merklich weniger.
(Du öffnest einen Datensatz, änderst ihn und fertig).

Dein Programm liest dann die XML-Dateien(z.b. speziell dafür eingelegten Order Tanks) oder die DB und erstellt daraus von selbst die Klassen für die Panzer.

Deine Kämpfe sind ja auch noch wieder etwas, so kann sich ja ein Kampf aus 5mal PanzerA gegen 10mal PanzerZZ zusammensetzen.

Ich weiß, dass du gerade am Anfang von C++ bist und dir das deshalb als zu schwer erscheint, du solltest sowas aber im Hinterkopf haben. Es nimmt dir so viel Arbeit hab, sobald du es 1mal so umgesetzt hast und du lernst extrem viel. :P
 
Zuletzt bearbeitet:
@DasBoeseLebt
Die Kämpfe werden nur 1 vs 1, und nicht 10 vs 5. Im Spiel steht man sich auch meist 1 vs 1 gegenüber und beballert sich gegenseitig (Wobei ein Tiger II mit seiner 8,8cm gun ganz schnell das weite sucht gegen meine IS3 und die 122mm Gun :D)

OMG, ich werd nen Spaß haben, das zu verstehen und dann zu erstellen.

Kennt jemand nen gutes Tutorial dazu? (am besten Kostenlos...)
 
Ganz ehrlich: du hast vor 1-2 Tagen schon einen Thread erstellt, wo Leute versucht haben dir ein struct zu erklären. Hättest du da ein bisschen gegoogelt und selbst rumprobiert, dann hättest du diesen Thread nicht gebraucht. Ehrlich gesagt fürchte ich, dass du auf diese Art nicht besonders viel dabei lernen wirst.
 
Vllt. machst du jetzt erstmal deinen Lösungsansatz soweit fertig und testest ; ). Du musst ja nicht alle Panzer direkt eintragen, sondern vllt. erstmal nur 5 und schaust, ob dein Programm überhaupt funktioniert.

Und eine Sache wird der sicher auch auffallen, ... welcher Panzer ist im Array auf Position 0, welcher auf 1. Vllt. solltest du noch eine Variable für den Namen oder eine ID oder so im struct hinterlegen.
 
@DasBoeseLebt
Genau das wollte ich grade noch in der PN fragen ob das gehen würde! :D
Ergänzung ()

Wie erstelle ich den nun eine Config (.yml oder .cfg?) und hole werte daraus. es ist ja eine consolenanwendung.
 
Dazu gibt es doch bestimmt Methoden bzw. Klassen in C++ um Textdateien als Stream einzulesen.
Google einfach mal danach.
 
Zurück
Oben