Wie eigene Lib einbauen?



  • Also einen Editor wo ich alles einstellen kann will ich gar nicht!

    Ich mag diese Situation nicht:
    Leveldesigner1 : "Ich hab Monster xxx verändert"
    Leveldesigner2 : "Ich auch"
    Leveld.1 : "Mein geniales grad gebautes Level läuft nur mit den von mir eingestellten Werten"
    Leveld.2 : "Meins auch"
    Leveld.1 : "Also gut dann versuchen wir uns jetzt zu töten und wer am Ende noch lebt dessen Einstellungen werden übernommen"

    Oder man stelle sich vor 2 Leute fügen ein neues Monster hinzu, jeder in seiner Textdatei... was dann wenn man den Kram zusammenfügen will?
    Lustiges Textdateienzusammenkopieren?

    Da findich den Ansatz über die Webseite schon ganz gut, dann muss man das zentral ändern.
    Ausserdem kann man es überall machen, auch unter Linux oder sonstwas wenns sein muss und vorallem ohne Fremdprogramme ^^



  • Schon an Kosten, die dabei entstehen können, gedacht? 😉



  • Was für Kosten 😕

    Also ums Trafficlimit mach ich mir keine Sorgen, das bisschen cpp Datei runterladen kostet nix 😃

    Man braucht ja auch immer nur die die man verändert hat. (wieso monster.cpp runterladen wenn man eine neue Rasse gemacht hat)

    Ausserdem dürfen eh nur staffies die Dateien neu erzeugen und das sind nicht soviele als das das auffallen würde selbst wenn die die Dateien 30 Tage im Monat jede Stunde generieren und runterladen würden.



  • wenn es nur um Konstanten geht, dann würde ich aber auch eine Textdatei nehmen, da man diese leichter editieren kann

    Lustiges Textdateienzusammenkopieren?

    das gleiche passiert auch, wenn 2 Leute die DLL ändern. Aber dafür gibt es mittlerweile ausgeklügelte Lösungen (siehe CVS, GNU/patch, GNU/diff), so dass du dir darum keine Sorgen machen musst



  • Das ganze ist ein ziemlich komplexes Klassensystem mit allerlei Methoden und wird sehr oft gebraucht werden.

    Die Methoden bau allerdings nur ich und die bleiben auch gleich ausser wenn ICH die ändere oder erweitere.

    Und das mit dem dll auseinanderlaufen geht eben NICHT weil jeder der eine Änderung vornimmt diese erst in der Datenbank auf dem Webserver eintragen muss.
    Da kann dann nichts auseinander laufen.
    Noch weniger als bei CVS Nutzung.

    Ich kann da im Konstruktor zwar genauso sagen
    "load_from_file(MONSTER_WALDWOLF, "monster.dat")" aber dann wird das ganze auf jeden Fall um einiges langsamer und jeder kann mit der monster.dat komische Sachen anstellen, im Zweifelsfalle ich selber(oops wegen Konstallation xxx sind alle Monster jetzt um einen versetzt son mist).
    Das ganze kann ja mal locker auf 300 Monster anwachsen und wenn ich dann Monster 300 haben will.. soll ich dann erst die vorigen 299 durchsuchen?
    Ein Monster pro Zeile wird nix, dazu hab ich zu lange Kommentare dazu.
    und ein "du bist nicht das Monster was ich haben will, nächster, du auchnicht, nächster" ist auch blöd.



  • hö? Du benutzt einfach ein anderes Format und machst dann eine Funktion

    std::map<std::string,std::auto_ptr<monster> > lade_monster(const char *dateiname);
    //oder vielleicht (wenn monster nicht polymorph ist)
    std::map<std::string,monster> lade_monster(const char *dateiname);
    

    die dir einfach alle Monster aus der Datei lädt. Die Lösung ist fürs Editieren auf jeden Fall komfortabler.

    Das mit dem Eintrag in der DB versteh ich nicht, ist doch das gleiche bei einer Text Datei



  • Ja nur ist die Datenbank zentral und nur ein mal(!) auf www.die-gaming.de

    Könnte man die Offline editieren , sprich holt sich jeder die grad aktuelle (Text)Datei ab, wurstelt die fleissig um und ich weiss dann nicht mehr wie ich die wieder in die Datenbank bekomme.

    Die muss aber in die Datenbank rein, erstens weil ich auch an einem Browsergame arbeite was darauf basiert und zweitens weil die Seite als Nachschlagewerk dient was es denn so für Monster gibt usw.



  • dreaddy schrieb:

    Was für Kosten 😕

    Nicht jeder hat eine Direktverbindung zum Internet, bzw. eine Flatrate, bzw. DSL-Volumentarif.



  • wenn es sich eh um ein Online Spiel handelt, dann kann das Programm die Monster Informationen direkt aus der DB runterladen. Ist doch sogar noch besser, dann hast du kein Problem mit Leuten, die ihr Programm nicht updaten etc.



  • Jeder der mir hilft hat eine flat, also das passt schon, ausserdem soll sich da nachher gar nicht mehr soviel ändern.
    Und eine Idee ist ja auch das jeder Fremde der Lust hat mal im www schnell ein Monster adden kann(das natürlich erst freigeschaltet werden muss).

    Und nein es ist kein Online Rollenspiel sondern ein "normales" 2d Offline Rollenspiel.
    Aber ein Browsergame habe ich in meinem grenzenlosen Optimimus auch noch vor zu bauen, deshalb müssen die Daten sowohl Online(für Online game, Handbuch) und Offline(fürs Offline game) verfügbar sein und vor allem überall gleich sein.



  • dreaddy schrieb:

    Jeder der mir hilft hat eine flat, also das passt schon

    Auch jeder der das Spiel spielt?, oder werden sie lokal eine Kopie der Datenbank haben, die man dann manuell downloaden kann.



  • Nein, die Datenbank brauch ich nur für folgendes:
    - Zur Entwicklungszeit um neue Monstertypen, Heldentypen, Rassen, Klassen, Items usw hinzuzufügen
    - zum Handbuch generieren(also die Monsterlisten usw)
    - fürs Browsergame wenns denn mal soweit kommt

    Aber NICHT für das PC Spiel

    Das erzeugt nämlich aus der Datenbank einmalig auf Knopfdruck mehrere cpp und h Dateien (oder halt ein eigenes Format) die dann reincompiliert werden.
    Und die enthalten dieselben Daten wie in der Datenbank stehen, also die Werte der MOnster, Items usw.
    Ausser zum Updaten neuer Monster usw braucht das Internet dann keine Sau mehr fürs PC Game.


Anmelden zum Antworten