mmofacts.com

Litotex | OpenSource Browsergame-Engine

gepostet vor 16 Jahre, 1 Monat von ofliii

Über Litotex
Litotex
, erreichbar unter http://litotex.de,  ist eine OpenSource GameEngine, die vom FreeBG-Team entwickelt wird. Die Vorgängerversionen sind auch unter dem Namen Landkampf Lite bekannt, die ursprünglich vom Browsergame Landkampf, http://landkampf.net, entstammen. Wie bereits erwähnt ist der Quellcode unter der GNU General Public License v. 3 stehend OpenSource.
Funktionalität
Das FreeBG-Team war und ist bemüht, die GameEngine soweit wie möglich neutral zu halten. Manche Module eignen sich hierfür besser, andere wiederum schlechter. Doch Ziel des Projektes ist es, sich auf kein bestimmtes Genre zu fixieren.
Einige wenige zusammengefasste Infos:
- 4 unterschiedliche Rassen, mit jeweils unterschiedlichen Gebäudearten, Funktionen, Kampfeinheiten und natürlich verschiedenen Parametern (z.B.: Bauzeit, Kampfstärke,..)
- zur Zeit in 2 Sprachen verfügbar
- ein ACP erleichtert die Verwaltung des Spiels (z.B.: Einheiten-, Forschungs- & Gebäudeeditor)
- Allianzsystem mit integriertem Forum
- IGM
- dynamisches Kampfsystem
- Bauschleife für die Einheiten
Allerdings bieten wir weder für Gebäude, noch für Kampfeinheiten Bilder an. Falls Interesse besteht, können diese gegen Entgeld von der Grafikerin erstellt werden (Icons, Kampffeld, Karte,).
Entwicklung
Natürlich bieten wir im Entwicklerforum Support für alle Anfragen, die unsere GameEngine betreffen. Im Laufe der Zeit werden wir kompatible Updates anbieten, die die Funktionalität der Engine erweitern. Modifikationen dritter Hand, die von fremden Anwendern programmiert und veröffentlich werden, werden nach unserer Überprüfung natürlich auf Wunsch eingebaut oder zum Download angeboten.
Systemvoraussetzung
- Webspace mit FTP Zugriff
- PHP ab Version 4.0
- eine MySQL Datenbank ab Version 3.5x
- folgende PHP Konfigurationen:
--register_globals On*
--safe_Mode Off
*Wir sind daran bemüht, baldigst ein Update zur Verfügung zu stellen, die auch ohne register_globals auskommt.

gepostet vor 16 Jahre, 1 Monat von TheUndeadable

'Open your source'

Hört sich irgendwie bedrohlich an ;-)

Ansonsten noch viel Erfolg!

gepostet vor 16 Jahre, 1 Monat von ofliii

Wie meinst du "bedrohlich"?

Danke vielmals...

gepostet vor 16 Jahre, 1 Monat von tector

Finde ich gut, dass ihr sowas macht. Wünsche euch auch viel Erfolg!

EDIT: Lese grad bei euch im Forum:

Wir möchten erreichen, das es nicht 100 gleiche Spiele gibt, sondern sich jeder Admin mit SEINEM Spiel tiefgründig beschäftigt und auseinandersetzt.

 DAS finde ich sehr lobenswert!

gepostet vor 16 Jahre, 1 Monat von Fobby

Original von ofliii

[...]

Doch Ziel des Projektes ist es, sich auf kein bestimmtes Genre zu fixieren.
[...]
- 4 unterschiedliche Rassen, mit jeweils unterschiedlichen Gebäudearten, Funktionen, Kampfeinheiten und natürlich verschiedenen Parametern (z.B.: Bauzeit, Kampfstärke,..)

Und das lässt Freiheiten im Genre? ;)

Aber klingt nach einer interessanten Idee. Inwiefern es genutzt wird / funktioniert, ist eine andere Frage. Bedarf gibt es auf jeden Fall, ich stelle es mir aber aufwändig vor, die "Zielgruppe" zu erreichen.

gepostet vor 16 Jahre, 1 Monat von abuzeus

Original von tector

Finde ich gut, dass ihr sowas macht. Wünsche euch auch viel Erfolg!

EDIT: Lese grad bei euch im Forum:

Wir möchten erreichen, das es nicht 100 gleiche Spiele gibt, sondern sich jeder Admin mit SEINEM Spiel tiefgründig beschäftigt und auseinandersetzt.

 DAS finde ich sehr lobenswert!

Wenn ich das richtig sehe, ist so ein "Generator" aber genau der falsche Weg für sowas. Wer sich ein Spiel schnell zusammenklickt, steckt wohl nicht so in der Tiefe drin, oder?

gepostet vor 16 Jahre, 1 Monat von Klaus

Original von tector

EDIT: Lese grad bei euch im Forum:

Wir möchten erreichen, das es nicht 100 gleiche Spiele gibt, sondern sich jeder Admin mit SEINEM Spiel tiefgründig beschäftigt und auseinandersetzt.

 DAS finde ich sehr lobenswert!

Das wollte doch jedes OS-Projekt und was ist daraus geworden? Trotzdem viel Erfolg.

gepostet vor 16 Jahre, 1 Monat von faint

Wie finanzieren sich eigentlich solche OS-Projekte?

Ich mein von "mal eben ne Stunde programmieren" kann so ein Generator nicht entstehen

und von nichts leben geht meines wissens nach auch nicht.

klärt mich auf.

gepostet vor 16 Jahre, 1 Monat von TheUndeadable

> Ich mein von "mal eben ne Stunde programmieren" kann so ein Generator nicht entstehen

Die AGPL ist dafür prädestiniert. Zumindest fahre ich so bei meinem Konzept (http://fbk.depon.net/). Erstmal ist es als reines Hobby-Konzept ausgelegt und ich möchte eins/zwei/drei BGs damit betreiben. Release weiß ich noch nicht. Das wird sich zeigen.

Möchte ich nun kommerziell gehen, so veröffentliche ich bestimmte Module nicht mehr unter der AGPL, sondern unter einer kommerziellen Lizenz. Als Rechteinhaber darf ich dies.

Die GPL-Version wird dann eine Art Shareversion, genauso wie es zum Beispiel MySQL, Sleepycat und viele andere OpenSource-Buden machen. Möchte man eine Sache kommerziell und ohne Öffnung der eigenen Entwicklungen betreiben, so ist man gezwungen eine kommerzielle Lizenz zu verkaufen.

Man spekuliert halt einfach, dass man gezwungen ist für bestimmte Zwecke Support oder kommerzielle Lizenzen zu verkaufen, so dass der Hobbynutzer die Sache sinnvoll kostenlos nutzen kann, er würde sowieso kein Geld dafür ausgeben, aber man bei kommerzieller Nutzung einen Obolus abgibt.

gepostet vor 16 Jahre, 1 Monat von ofliii

@Fobby: Wenn du die Fragestellung noch etwas konkretisieren könntest, würde ich mich leichter tun, dir zu antworten. Ich glaube du spielst gerade die Rassen an, wieso gerade 4 oder überhaupt? 4 ist nur eine Dummyzahl, einfach aus dem ursprünglichen Landkampf-Game übernommen. Aber hier geht es nur um die Rassenfunktion, nicht darum, wieviele Rassen möglich sind, da diese innerhalb weniger Minuten x-fach erweitert werden können, da sind fast keine Grenzen gesetzt - allerdings sollte man die darauffolgende Arbeit im ACP nicht aus den Augen verlieren, schlussendlich müssen dann Parameter für diese festgelegt werden.

Nehmen wir folgendes an:

4 Rassen, 8 Gebäude, 8 Forschungen, 4 Rohstoffe & deren Bauzeit würde 384 Parameter bedeuten. Die Werte sind natürlich wiederum Dummys, sollte nur als Rechenbeispiel dienen. 384 Parameter, klingt nicht viel, allerdings sollte man hier besonders aufs Balancing achten, wobei hier das vereinfachte Kampfsystem noch gar nicht beinhaltet ist.

@abuzeus: Genau hier ist der springende Punkt. Es geht hier nicht dabei, jedem ein fertiges Browsergame unter die Nase zu jubeln, sondern ihnen die Möglichkeit anzubieten, sich beim Grundgerüst Zeit zu sparen, sich dafür z.B. im Konzept zu vertiefen. Das würde nach unseren Vorstellungen dazu führen, dass mehrere verschiedene Browsergamevarianten auf dem Markt erscheinen. Du wirst dir nämlich schnell mal ein Spiel zurechtklicken können, so simpel ist die Software nicht aufgebaut, schon gar nicht, wenn man es den persönlichen Anforderungen und Wünschen anpassen will.

@faint: Niemand wird die Finanzierung offenlegen, schlussendlich auch wir nicht. Aber ich kann soweit "plaudern", dass ein "privater Investor", der noch nicht genannt werden möchte, für unsere Infrastruktur aufgekommen ist, bis wir quasi auf unseren eigenen Beinen stehen. Zurzeit stehen noch einige Verhandlungen mit Unternehmen offen, mal sehen, was die Zukunft bringt...

Natürlich sind wir noch auf der Suche nach tatkräftigen Unterstützern, denen die Idee gefällt und am Projekt interessiert sind. Näheres besprechen wir dann bei Kontaktaufnahme.

gepostet vor 16 Jahre, 1 Monat von Nagila Hawa

Open Source-Projekte "finanzieren" sich dadurch, daß kaum Kosten anfallen. Die Mitarbeiter arbeiten aus Spaß an der Sache, aus ideologischen Gründen oder weil sie das Programm nutzen und eigene Verbesserungen wieder an das Hauptprojekt zurückgeben. Irgendwer spendet dann erstmal Server und Traffic. Ist halt ein Hobby, wie Browsergames entwickeln für viele hier auch, wo ebenfalls Serverkosten anfallen.

Wird das Projekt größer und die Serverkosten steigen, kann man auch schon Geld durch Spenden, Service, Support, oder Vertrieb in verschiedenen Lizenzen machen, die die steigenden Kosten auffangen.

gepostet vor 16 Jahre, 1 Monat von Sarge

Was mir noch nicht ganz klar geworden ist, soll der Generator wirklich Genre-Übergreifend (d.h. nicht nur build&raid sondern rpg etc spiele) eingesetzt werden oder meintest du mit genre-übergreifen eher was ich als Setting unabhängig (immer ein build&raid spiel aber unabhängig ob nun mittelalter oder zukunft, 1 oder 4 rassen etc.. )  bezeichnen würde?

gepostet vor 16 Jahre, 1 Monat von DrakeL

Zum Download muss man sich registrieren? Schade... :)

gepostet vor 16 Jahre, 1 Monat von ofliii

@Nagila Hawa: Deine Ausführungen sind ziemlich allgemein gehalten und kann nicht "einfach so mal" pauschalisiert werden. Einige Aspekte passen, einige wiederum nicht, sind wir aus diesem Grund kein OpenSource-Projekt?

@Sarge: Es ist natürlich klar, dass man von Heute auf Morgen nicht eine dermaßen komplexe Software auf die Beine stellen, die für alle Gengre grenzenlos einsetzbar (ob das überhaupt machbar ist, ist wiederum eine andere Frage). Allerdings sind wir gerade dabei, deine sogenannte "Build&Raid"-Version unseren Vorstellungen nach zu erweitern und auszubauen. Sofern es dann unseren Wünschen entsprechen sollte, werden wir dann vermutlich auch in die RPG-Szene einsteigen, allerdings ist es noch zu früh, darüber fixe Aussagen zu machen.

@DrakeL: Wenn du dich als Individuum wiedermal so aus der Menge abheben musst, könntest du mich kontaktieren, sodass ich dir die Software zuschicke...

gepostet vor 16 Jahre, 1 Monat von Kallisti

Müsste man sich nicht anmelden, hättest Du garantiert downloads im zweistelligen Bereich anstatt nur "zwei". Ist nun einmal eine sinnlose Hürde, wenn man neu auf den Markt möchte und schreckt absolut unnötig ab. Alle die "nur mal so gucken" möchten, werden es dann eher sein lassen.

Zur Engine selbst: Ist es denn ein Grundsystem (Registrierung, Login, Session Management, Templating, DB Abstraktion, etc.) in das man dann Plugins einklinken kann, so dass das System genreunabhängig bleibt oder versteht ihr unter "Engine" nur, dass man per ACP ein paar Werte in der Datenbank abändert?

gepostet vor 16 Jahre, 1 Monat von ofliii

Wie wäre es mal, wenn du dich zuvor erkundigst und erst dann Unwahrheiten in dein Posting einbringst? Im Downloadthread ist doch ganz klar ersichtbar, dass wir bereits das ACP gepatched haben (1. Neustart des Counters und dann beim Packen hatten wir versehentlich 1 Verzeichnis vergessen = 2. Neustart des Counters). Um dich aber zu beruhigen, wir sind bereits im zweistelligen Bereich. Sinnlose Hürde hin oder her, vielleicht sollte man mal etwas akzeptieren, als auf einer Kleinigkeit herumzureiten.

Anscheinend bist du auch einer derjenigen, die es "nur mal so gucken" wollten. Wie bereits erwähnt, steht bereits nur ein Bruchteil dessen auf den Beinen, was wir wirklich umsetzen wollen. Natürlich wird es dann in die Richtung gehen, in dieser man sich Module ein-/ausklinken kann. Allerdings ist die Software für ein derartiges Verfahren noch nicht bereit, was unter anderem auch den Entwicklungsstand betrifft.

gepostet vor 16 Jahre, 1 Monat von Kallisti

Nana, nicht so aggressiv. ;)

  • Litotex_0_6_0.zip (1,98 MB - 2 mal heruntergeladen - zuletzt: Gestern, 23:00)
  • patch_acp.zip (1,88 kB - 0 mal heruntergeladen)

Steht da nun einmal. Das hab ich mir nicht ausgedacht. Mag ja sein, dass es sich vorher mehr Leute angesehen haben, aber in den vergangenen 12 Stunden war es nun einmal niemand. Dass gegen 20 Uhr ein Reset statt fand, ist mir durchaus bewusst.

Und ja, klar bin ich einer derjenigen, die "nur mal so gucken" wollten. Benutzen würde ich es sowieso nicht, allein schon weil PHP nicht die Sprache meiner Wahl ist. Dennoch interessiert mich ja was ihr wie umsetzt und dennoch können auch wir, die wir es nicht einsetzen wollen, konstruktive Kritik geben.

Wenn es so ist, dass ihr in Richtung eines modularen Aufbaus gehen wollt, wäre doch Doku ganz interessant. Wie sehen die Schnittstellen aus, was genau plant ihr, wie schaut eure Roadmap aus? Der ganze Projekt-Management Kram eben. ;)

gepostet vor 16 Jahre, 1 Monat von abuzeus

Original von ofliii

@abuzeus: Genau hier ist der springende Punkt. Es geht hier nicht dabei, jedem ein fertiges Browsergame unter die Nase zu jubeln, sondern ihnen die Möglichkeit anzubieten, sich beim Grundgerüst Zeit zu sparen, sich dafür z.B. im Konzept zu vertiefen. Das würde nach unseren Vorstellungen dazu führen, dass mehrere verschiedene Browsergamevarianten auf dem Markt erscheinen. Du wirst dir nämlich schnell mal ein Spiel zurechtklicken können, so simpel ist die Software nicht aufgebaut, schon gar nicht, wenn man es den persönlichen Anforderungen und Wünschen anpassen will.

Ich hab da so meine Zweifel. So wie ich das verstehe, generalisiert ihr zum Beispiel das Konzept "Gebäude" oder "Forschung", aber es ändert nichts daran, dass im Kern das berühmte Build&Raid-Game steckt, alles was ich mache, ist mir neue Namen und Werte auszudenken und das ganze neu zu tapezieren. Sich daraus entwickelnde Browserspiele werden sich alle nicht viel voneinander abheben, wage ich zu behaupten. Zumal es einem einzelnen Entwickler dann aufgrund der mangelnden Vertrautheit mit dem Code schwer werden dürfte, eigene Erweiterungen (sagen wir mal eine Echtzeit-3D-Karte) einzubringen. (Caveat lector: Habe euere Software nicht angesehen)

Meiner Meinung nach greift hier sowohl euer Projekt als auch Undeads FBK einen Schritt zu kurz, indem jeweils nur auf Basis der eigenen Vorstellungen generalisiert wird. Wir hatten mal so was ähnliches vor (nicht um es zu einem BG-Maker zu machen, sondern aus anderen Gründen), die Software hätte nur die allgemeinen Grundkonzepte wie Datenspeicherung, Bedingungen und Datenänderungen implementiert, neben dem ganzen Kladderadatsch wie Persistenz, Eventqueue, Rechteverwaltung und so weiter. Man hätte sich dann das Spiel quasi in einem Baukastensystem zusammenklicken können. Aufgrund des Designs wäre dieses Baukastensystem vermutlich Turing-vollständig geworden, was gleichzeitig bedeutet hätte, dass wirklich nahezu jedes mögliche BG damit hätte implementiert werden können, ohne sich jedesmal neu um die grundlegenden Sachen kümmern zu müssen.
Wir haben das ganze niemals umgesetzt, aber ich finde die Idee immer noch spannend. Ich stell das mal hier so in den Raum.

gepostet vor 16 Jahre, 1 Monat von Fobby

Original von ofliii

@Fobby: Wenn du die Fragestellung noch etwas konkretisieren könntest, würde ich mich leichter tun, dir zu antworten. Ich glaube du spielst gerade die Rassen an, wieso gerade 4 oder überhaupt? 4 ist nur eine Dummyzahl, einfach aus dem ursprünglichen Landkampf-Game übernommen. Aber hier geht es nur um die Rassenfunktion, nicht darum, wieviele Rassen möglich sind, da diese innerhalb weniger Minuten x-fach erweitert werden können, da sind fast keine Grenzen gesetzt - allerdings sollte man die darauffolgende Arbeit im ACP nicht aus den Augen verlieren, schlussendlich müssen dann Parameter für diese festgelegt werden.

Nehmen wir folgendes an:

4 Rassen, 8 Gebäude, 8 Forschungen, 4 Rohstoffe & deren Bauzeit würde 384 Parameter bedeuten. Die Werte sind natürlich wiederum Dummys, sollte nur als Rechenbeispiel dienen. 384 Parameter, klingt nicht viel, allerdings sollte man hier besonders aufs Balancing achten, wobei hier das vereinfachte Kampfsystem noch gar nicht beinhaltet ist.

Dass das Dummyzahlen sind, war mir schon bewusst :) Auch ging es mir weniger um Rassen als um Forschungen, Ressourcen, Gebäude. Meinst du, da kommt man am Aufbau-Genre noch vorbei? Also klar, wenn man genug umprogrammiert, kommt man vielleicht bei einem Rollenspiel raus aber da ist die Frage ob es nicht leichter wär, einfach neu anzufangen ;)

gepostet vor 16 Jahre, 1 Monat von Nagila Hawa

Original von ofliii

@Nagila Hawa: Deine Ausführungen sind ziemlich allgemein gehalten und kann nicht "einfach so mal" pauschalisiert werden. Einige Aspekte passen, einige wiederum nicht, sind wir aus diesem Grund kein OpenSource-Projekt?

Nein, soll auch keine Pauschalisierung sein, nur eine Auflistung von Möglichkeiten, da ja einige Leute immer noch irgendwelche unseriösen Aktivitäten hinter quelloffener Software vermuten. Im Gegenteil, kann man sich bei quelloffener Software sehr viel sicherer sein, daß sie z.B. keine versteckte Spyware enthält oder allgemein versteckte unangenehme "Features". Zudem stecken da meistens Leute hinter, die völlig unentgeltlich Software schreiben, die jeder nutzen darf. Das verdient Respekt, finde ich.

gepostet vor 16 Jahre, 1 Monat von ofliii

@Kallisti: Ich bin nicht aggressiv, darüber brauchst du dir keine Gedanken machen, ich hab einen guten Therapeuten. Klar könnt ihr konstruktive Kritik abgeben, solltet ihr ja auch, genau aus diesem Grund hab ich ja unser Projekt im Forum vorgestellt. Aber es ist ja wohl nicht zuviel verlangt, sich dafür zu registrieren oder es gar als eine Hürde anzusehen *lol*

Bei Interesse können wir die Doku natürlich vorstellen, allerdings sind wir noch nicht soweit, sondern erst in der Planungsphase. Unser Step Nr. 1 haben wir erreicht, jetzt planen wir die weiteren Schritte, unter anderem auch die bereits angesprochenen Module.

@abuzeus: Wenn du meine Beiträge lesen würdest, hatte ich erwähnt, dass wir uns bei dieser Version vorerst nur auf "Build & Raid" konzentriert haben. Wir entwickeln die Software in unserer Freizeit und nicht hauptberuflich, aus welchem Grund wir auch nicht etliche Stunden am Tag in regelmäßigen Abständen investieren können. Wir bewegen uns langsam aber doch in die erwünschte, ich betone nochmal - in die von uns erwünschte, Richtung. Es mag natürlich auch sein, dass einige mit unserem Vorhaben oder Konzept nicht klarkommen. Schlussendlich müssen auch wir als Entwickler irgendwo Grenzen für uns setzen.

Andererseits schließt sich für mich hier der Kreis, denn wenn jemand an der Software interessiert ist und sich damit beschäftigen will, nehme ich auch an, dass er/sie sich in kürzester Zeit mit dem Code vertraut macht?

@Fobby: Nach unseren Vorstellungen ist es noch möglich, in die richtige Richtung zu lenken, werden wir auch demnächst machen, sobald wir uns dafür reif genug finden.

gepostet vor 16 Jahre, 1 Monat von tector

Original von ofliii

Aber es ist ja wohl nicht zuviel verlangt, sich dafür zu registrieren oder es gar als eine Hürde anzusehen *lol*

 Da muss ich Kallisti aber zustimmen: Überall herscht heutzutage dieser Registrierzwang... finde ich einfach nur lästig. Und vom "einfach mal ausprobieren" hält es mich persönlich sehr wohl ab. Und gerade bei OS - Projekten tut ein Registrierzwang doch nicht unbedingt not, oder?

gepostet vor 16 Jahre, 1 Monat von exe

Die User die sich nur für die Downloads registrieren willst du sowieso nicht haben weil es nur ein Haufen 0-Poster in deinem Forum sind die du früher oder später wieder aufräumst. Davon abgesehen ist eine Registrierung nur um eine Software mal auszuprobieren ein lästiges Hindernis. Nicht jeder hat sofort das Bedürfnis das Forum mit den eigenen Ergüssen zu fluten sondern will eine Software auch einfach nur mal ohne Hindernisse und unverbindlich runterladen und ausprobieren.

gepostet vor 16 Jahre, 1 Monat von ofliii

Da es bereits x-fach angesprochen wurde, ja wir haben den Download freigegeben, sodass auch Gäste, also nicht registrierte User, die Datei herunterladen können. Ich hoffe wenigstens dadurch mehr konsktruktive Kritik zu bekommen...

gepostet vor 16 Jahre, 1 Monat von Kallisti

ch hab es nun nur mal auf die Schnelle ueberflogen.. Anmerkungen folgen:

functions.php
L113: $password.=$array[rand(1,count($array))];

soll wohl eher 0 bis count($array)-1 sein... sonst kommt 'A' nie vor und ab und an ein Fehler. Allerdings ist die Zusammenstellung der Zeichen im Array wohl ziemlich willkuerlich.

Wieso behandelt ihr ASCII 160, also das 2te Leerzeichen explizit gesondert? Ich frage nur aus Interesse - hat das einen besonderen Grund? Vor allem wieso wird das bei jedem Readzugriff auf Strings aus der DB angewandt und nicht einfach beim Schreiben, wenn es einen Grund dafuer gibt?

functions.php

L643ff: Aus dem Ding werd ich nicht wirklich schlau... erst wird ein Leerzeichen vor den String gehaengt, dann kommen ein paar regex auf bbcodes und dann wird per substr das Leerzeichen wieder entfernt.. Sinn? Kaputte regex? (die schau ich mir nun nicht genauer an).

Wieso werden Backslashes entfernt? Wieso wird nur rausgefiltert? Wo ist da der Sinn? Ordentliches Escaping wuerde beides richtig beheben und nicht beides nur halbherzig filtern...

functions.php

L872ff: ouch! Viel Spass an der Stelle mit Race Conditions. Eine ID aus der Datenbank auslesen, einige Dinge berechnen, dann einen neuen DB Eintrag machen.. dann auf Basis der ID Dateien erstellen... Alles ohne locking.. gar nicht gut.

TemplateParser.php

L12ff: Das Ding ist ein Witz, oder?^^

Legendaer finde ich auch das Denglisch. xD Sogar mit Gross- und Kleinschreibung! Hier ein Auszug:

  • get_rang_from_user
  • is_erlaubt
  • get_kassen_res
  • get_rangnag_name_from_Allianz_rang
  • get_RangID_from_user
  • rassen_bit
  • rassen_choose

Spaetestens bei Dingen wie

    $neuer_rang=c_trim($_POST['new_rang']);
    if ($neuer_rang==""){
         msg_page ("Bitte gib einen Namen ein");
         exit();
   
    }

    $db->query("INSERT INTO cc".$n."_allianz_rang (allianz_id ,rangname ) VALUES ('$ali_id','$neuer_rang')");

Hoert dann der Spass wirklich auf... (c_trim macht nen str_replace auf ascii 160 und normales php trim).

   $text=c_trim($_POST['text']);
   $text_l=c_trim($_POST['descr']);
   $db->query("UPDATE cc".$n."_allianz SET text='$text',text_long='$text_l'  WHERE aid='$ali_id'");

Highlight:

   $username=strtolower(trim($_POST['username']));
   $password=c_trim($_POST['password']);
   if(!$username || !$password) {
    error_page($ln_login_e_1);
    exit();
   
   }
   $result=$db->query("SELECT * FROM cc".$n."_users WHERE username='$username'");
   $row=$db->fetch_array($result);

Der gesamte Code strotzt nur so vor moeglichen SQL Injections, Race Conditions, Cross-Site-Scripting, anderen Sicherheitsrisiken (hi, plain md5), sowie weiteren Logikfehlern.

Also euer Engagement in allen Ehren, aber loescht das bitte komplett und fangt noch einmal von vorn an. Danke. Ihr tut damit sowohl euch selbst, als auch allen anderen einen grossen Gefallen.

gepostet vor 16 Jahre, 1 Monat von TheUndeadable

@Kallisti:

Zusammengefasst: Es ist einer der besseren OpenSource-Projekte? *Sorry* ...

gepostet vor 16 Jahre, 1 Monat von Kallisti

Original von TheUndeadable

@Kallisti:

Zusammengefasst: Es ist einer der besseren OpenSource-Projekte? *Sorry* ...

xD

Es ist ein Paradebeispiel, wie man Dinge nicht machen sollte. ;)

gepostet vor 16 Jahre, 1 Monat von Kallisti

Das hat mit Respekt im Umgang wenig zu tun, ich schrieb bereits, ihr Engagement in allen Ehren, aber der Code ist schlicht Muell. Es ist weit aufwendiger, den Code noch einmal zu "fixen", als einfach neu anzufangen, bewaerte Patterns zu nutzen, mehr zu abstrahieren und dieselben Fehler nicht noch einmal zu machen.

Abgesehen davon hat es mit einer "Engine" herzlich wenig zu tun. Es ist halt yet another open source build&raid game + Einheiteneditor.

Und da muss man auch nichts besseres vorweisen, um es kritisieren zu koennen. Das Ding strotzt vor Sicherheitsluecken und sollte niemals auf irgendeinem Webserver produktiv laufen. Das waere ein Verbrechen an den unwissenden Usern. Ihr koennt das ganze nun gern gut reden, weil es ja ach so toller Open Source ist und unentgeldlich der Allgemeinheit zur Verfuegung gestellt wurde, aber scheiss Code bleibt scheiss Code.

Und das ist auch nicht persoenlich zu verstehen, mein noch laufendes Spiel hat ebenfalls scheiss Code (das uebliche, Uebernahme, historisch gewachsen, wenig Know-How zu Beginn, etc..). Aber man muss das eben auch einsehen und dazu stehen. ;) Erst dann kann man sich an eine ordentliche Neuentwicklung machen.

gepostet vor 16 Jahre, 1 Monat von abuzeus

Original von ofliii

@abuzeus: Wenn du meine Beiträge lesen würdest, hatte ich erwähnt, dass wir uns bei dieser Version vorerst nur auf "Build & Raid" konzentriert haben. Wir entwickeln die Software in unserer Freizeit und nicht hauptberuflich, aus welchem Grund wir auch nicht etliche Stunden am Tag in regelmäßigen Abständen investieren können. Wir bewegen uns langsam aber doch in die erwünschte, ich betone nochmal - in die von uns erwünschte, Richtung. Es mag natürlich auch sein, dass einige mit unserem Vorhaben oder Konzept nicht klarkommen. Schlussendlich müssen auch wir als Entwickler irgendwo Grenzen für uns setzen.

Warum denn so aggressiv? Mein Posting war weder eine Aufforderung an euch, das umzusetzen, was ich vorgeschlagen hatte, noch eine Herabwürdigung eurer Arbeit. Ich wollte schlicht und ergreifend mal einwerfen, was evtl. möglich wäre und wo eine Schwäche in eurem Projekt stecken könnte. Oder eine Anregung. Du musst dich mir gegenüber auch nicht verteidigen, ich habe weder vor, eure Software zu nutzen, noch in Konkurrenz zu euch zu treten. Ich hätte mich allerdings gefreut, wenn jemand meinen Vorschlag mal kommentiert hätte.

gepostet vor 16 Jahre, 1 Monat von ofliii

@Abuzeus: Ich bin nicht aggressiv, falls du nicht weißt, was aggressiv bedeutet, kannst du allerdings gerne im Duden nachschauen. Ich hasse es nur einfach, alles zweimal zu schreiben, nur weil jemand zu faul ist zu lesen? Ich hab es auch nicht als Aufforderungen aufgefasst, sondern nur als eine Anregung, allerdings wenn ich bereits ähnliches geschrieben hab, brauchst du dasselbe nicht zu wiederholen?

@Kallisti: Genau deswegen machen wir es OpenSource, damit jeder den Quellcode einsehen kann, und wir aus den Erfahrungen aller lernen, die Fehler verbessern und diese in Zukunft vermeiden. Schlussendlich haben wir ja nicht von prof. und fehlerloser Entwicklung gesprochen, es ist ein Hobbyprojekt, allerdings verstecken wir uns dahinter nicht, sondern im Gegenteil, wir stellen es der breiten Masse zur Verfügung und stellen uns den Kritiken und Anregungen.
Hast du eine Ahnung, wieviel BGs es gibt, die mehr oder weniger schlecht gecodet sind?
Hast du eine Ahnung davon, was auf vielen Webseiten ( BG's mit einbezogen) im Hintergrund mit den Daten passiert?
Es gibt mit Sicherheit genug Spiele, welche hunderte von Spieler haben, welche einfach nur lieblos zusammengeschrieben sind, immer getreu dem Motto 'Hauptsache es geht'.
Auch du kennst sicher das Problem, dass der Code mit der Zeit größer wird, und man im Verlaufe der Jahre immer wieder an die Stelle kommt, wo man sagt 'was hab ich da nur gemacht'.

Man sollte vielleicht in diesem Punkt etwas weiter ausholen und die Lage etwas aufklären: Nicht alles ist auf unserem Mist gewachsen, da das Projekt, wie oben bereits auch berichtet, von jemand anders betrieben worden ist und von uns erst später übernommen wurde. Wie du eingangs lesen konntest, beruht ein Teil auf einem OS Projekt, welches vor ungefähr 8 Jahren angefangen wurde.
Du selbst schreibst u.a. in deinem Blog, wie schlimm der Code aussehen kann, der 5 Jahre alt ist, und von verschiedenen Leuten geschrieben wurde.
Warum verlangst du dann von einem OS Projekt, das es hier anders ist ?
Wenn nur 10 Admins, ein Spiel mit unserer Basis aufbauen, diese jeweils 100 Spieler haben, dann können sich irgendwann 1000 Spieler hoffentlich in Sicherheit wiegen, und wir sind froh, dass es so ist *g
Wir legen den Code offen, um vernüftige Kritiken zu bekommen, und diesen gemeinsam weiterzuentwickeln.
Solche aussagen wie von dir, alles zu löschen, sind nicht wirklich nachvollziehbar.
Du löscht dein Game auch nicht, obwohl du selbst sagst, "...Fakt ist, der Code ist grausam ...."
Nicht nachvollziehbar, das du seit 2 Jahren davon weißt, und nichts dagegen unternommen hast ;)
Von daher, danke für deine Zeit, die du zu so später Stunde investiert hast, deine Ideen und Anregungen haben wir aufgenommen und werden dies ändern.

gepostet vor 16 Jahre, 1 Monat von Kallisti

Es gibt da nur zwei entscheidende Unterschiede:

1. Ich bin fuer mein Spiel selbst verantwortlich. Eure "Engine" hingegen werden Leute einsetzen, die sich mit der Materie noch viel weniger auskennen. Ihr koennt nun sagen, die sollen sich gefaelligst auch den Code ansehen, aber wenn ihr einmal die X-Nova/HTN Erfahrungen Revue passieren lasst, sollte euch absolut klar sein, welches Klientel ihr ansprecht und dass es eben absolut unverantwortlich gegen ueber den Endusern ist, sie diesem Code auszusetzen.

2. Mein Code ist zwar gruselig, aber nicht so grundlegend sicherheitskritisch in den verschiedensten Aspekten. Es gibt sicher auch ein paar Schwachstellen, allerdings ziehen sich diese nicht grundlegend durch das Gesamtkonzept.

Ihr tut euch selbst einen Gefallen, je frueher ihr das Ding neu entwickelt. Ein laufendes Browsergame einfach mal herunterfahren und eine Neuentwicklung starten ist ein anderes Kaliber als eine Engine neu zu schreiben, die bislang eher nicht produktiv eingesetzt wird. Das hat eben vor allem mit Community zu tun.

Wieso benutzt ihr denn 8 Jahre alten Code, wenn ihr ein neues OS Projekt startet? Gut, mangelndes Wissen mag ein Grund sein, aber dann empfehle ich euch wirklich dringend, dass ihr euch mit den Luecken, Risiken und Fehlern im Deisgn auseinandersetzt und dann in ein paar Monaten auf Basis der neuen Erfahrungen von vorn anfangt.

Wenn ihr naemlich nun versucht den Code zu flicken und benutzbar zu machen, wird da ein Konstrukt draus, dass am Ende niemand mehr vernuenftig warten kann. Da sind ja jetzt schon Dinge drin, die ich beim ersten Ueberfliegen sehe, die einfach nicht sein duerfen. D.h. der Code ist jetzt schon ausser Kontrolle.

Letztendlich ist es aber wirklich der Unterschied aus meiner Einstellung "hey, mein Code ist zu grossen Teilen Mist, das weiss ich und ich bemueh mich moeglichst schnell eine Neuentwicklung durchzuziehen" gegenueber eurer Einstellung "hey wir haben hier nen Projekt dessen Code mies ist, aber wir releasen das nun und ihr duerft es alle benutzen!".

Ihr habt das Ganze hier nun einmal nicht als "Lernprojekt" angepriesen, das dafuer gedacht ist, eure Skills zu verbessern, sondern ihr habt es so released, als sollten andere eure Engine auch nutzen. Und genau das ist der Punkt erreicht an dem ich das Verhalten absolut unverantwortlich finde.

gepostet vor 16 Jahre, 1 Monat von Klaus

Original von ofliii

@Abuzeus: Ich bin nicht aggressiv, falls du nicht weißt, was aggressiv bedeutet, kannst du allerdings gerne im Duden nachschauen.

Dieser Satz strotzt ja nur vor Aggressivität.

Von der Intention her muss ich Kallistis Beitrag zustimmen. Ihr könnt ruhig weiterbasteln und Erfahrungen sammeln, aber um Gottes Willen macht den Code nicht öffentlich! Dann ist nämlich jeder Webserver in Gefahr und wie sollen andere auf dieser Basis lernen, wenn ihr nur eine Mischung aus uralt-Schrott und "learning b doing" raushaut? Ich bitte euch das nochmal zu überdenken: 8 Jahre alter Code... was war da? PHP3?

Also noch schön Erfahrungen sammeln und dann ein ernstes Open Source-Projekt starten. Wenn sich das jetzige erstmal richtig unter Admin-geilen Kiddies verteilt hat, bekommt ihr es nie mehr aus dem Web und ihr werdet es immer bereuen.

gepostet vor 16 Jahre, 1 Monat von ofliii

Ich habe zwar erwähnt, dass wir mit dem Projekt Erfahrung sammeln wollen, allerdings nicht, was die Programmierung größerer Software betrifft, sondern eher im Bereich Projektplanung und Projektführung. Wir haben zwar bereits eine Litotex-Version veröffentlicht, allerdings muss ich sagen, dass hier bereits einige Module komplett überarbeitet worden sind, was die Vorgängerversionen betrifft (glaubt mir, ihr würdet diese Software nicht sehen wollen). Also haben wir uns eher die Aufgabe gestellt, eine alte verbugte Software wieder auf den vordersten Stand der Dinge zu bringen. Zwar kann es sein, dass ein Neuanfang womöglich schneller und sinnvoller wäre, das wollen wir allerdings vorerst nicht in Betracht ziehen, da wir zur Zeit gut vorankommen.

gepostet vor 16 Jahre, 1 Monat von tector

lol, erst wird rumgemeckert, dass ein Download ohne Registrierung nicht möglich ist (ja, ich war auch dabei) - und dann wird rumgemeckert, dass dieser Code nicht frei in Umlauf gelangen sollte...

Kann man sich nicht rechtlich absichern, dass jeder der den Code runterlädt und verwendet bzw. evtl. sogar auf Servern betreibt, dies auf eigene Gefahr macht und alle Verantwortung bei ihm selbst liegt???

gepostet vor 16 Jahre, 1 Monat von Nerosmeel

Ja man kann, hab mal mit meinem Anwalt drüber geredet und der meinte das, dass geht, weil ja jeder Server anderes ist.

Haben die das nich auch im Quell code stehen?

EDIT: Faulheit überwunden:

#    Hinweis:                                                    #
# Diese Software ist urheberechtlich geschützt.          #
#                                                                   #
# Für jegliche Fehler oder Schäden,                       #
# die durch diese Software auftreten könnten,         #
# übernimmt der Autor keine Haftung.   

gepostet vor 16 Jahre, 1 Monat von Kallisti

Original von tector

lol, erst wird rumgemeckert, dass ein Download ohne Registrierung nicht möglich ist (ja, ich war auch dabei) - und dann wird rumgemeckert, dass dieser Code nicht frei in Umlauf gelangen sollte...

Entweder man veroeffentlicht etwas oder man tut es nicht, aber alles dazwischen ist nun einmal unnoetige Gaengelung.

Kann man sich nicht rechtlich absichern, dass jeder der den Code runterlädt und verwendet bzw. evtl. sogar auf Servern betreibt, dies auf eigene Gefahr macht und alle Verantwortung bei ihm selbst liegt???

Imho hat man abseits der rechtlichen aber auch eine moralische Verantwortung.

gepostet vor 16 Jahre, 1 Monat von ofliii

Für die einen eine Gängelung, für die anderen wiederum nicht, aber die Diskussion hatten wir bereits in den anderen Postings.

Jeder wird hierzu andere Vorstellungen von der moralischen Verantwortung haben, und darüber werden wir jetzt nicht diskutieren, da es hier rein um die Software geht und wie wir diese verbessern können. Tipps und Anregungen haben wir, wie bereits auch erhalten, da wir größtenteils die functions.php "überflogen" hatten, allerdings ist hier mal eine Generalsanierung auf der Tagesordnung. Wir hoffen in kurzer Zeit diese Lücken zu schließen und vom "alten Schrott PHP3-Image" wegzukommen oO

Unterstützung ist gerne willkommen :P

gepostet vor 16 Jahre, 1 Monat von Nerosmeel

mein ichOriginal von ofliii

Tipps und Anregungen haben wir, wie bereits auch erhalten, da wir größtenteils die functions.php "überflogen" hatten, allerdings ist hier mal eine Generalsanierung auf der Tagesordnung. Wir hoffen in kurzer Zeit diese Lücken zu schließen und vom "alten Schrott PHP3-Image" wegzukommen oO

Unterstützung ist gerne willkommen :P

 was uns wieer zu der Frage führen würde, wie sinnvoll ist das ganze ^^

hab ihr mal überlegt dem ganzen ein Framework in den Hintergrund zu stellen?

gepostet vor 16 Jahre, 1 Monat von TheUndeadable

> Kann man sich nicht rechtlich absichern, dass jeder der den Code runterlädt und verwendet

Yep, ausgenommen grobe Fahrlässigkeit oder Vorsatz bei Körper, Leib und Leben!

gepostet vor 16 Jahre, 1 Monat von Sarge

Also von Grund an neuanzufangen kann hier sicher keiner von euch fordern, denn das ist eure Entscheidung. Und offensichtlich habt ihr ja sie schon getroffen.

Aber das ist keine Entschuldigung diese grundlegenden Sicherheitsprobleme zu ignorieren. Nehmt euch wenigstens die 2h Zeit um all eure Eingaben in dem Code zu refaktoren. Und das als aller erstes, bevor ihr auf die Idee kommt irgendein Modul neuzuschreiben. Das ist nämlich ansonsten wirklich fahrlässig und moralisch gegenüber evtl. Nutzern nicht zu verantworten.

Ich habe das Gefühl, euch ist garnicht bewusst wie gravierend eure schludrige Eingaben-behandlung ist?

gepostet vor 16 Jahre, 1 Monat von DrakeL

Original von ofliii

Unterstützung ist gerne willkommen :P

Ich kann dir gerne mal Auszüge aus meinem Framework schicken, wenn dich dieses interessiert. ich leg bei mir sehr viel Wert auf sauberes Design und Dokumentation. Einfach E-Mail Adresse per PN. Veröffentlichung dauert leider noch etwas, da ich im Moment wenig Zeit hab für die noch fehlenden letzten Teile und die Homepage für das Projekt... :)

gepostet vor 16 Jahre, 1 Monat von ofliii

@Nerosmeel: Nein haben wir nicht, wird aber wohl demnächst auf der Tagesliste stehen, sobald wir wieder ein bisschen Zeit haben. Allerdings falls wir diese Frage auch bejahen sollten, fehlt es im Augenblick an tatkräftiger Unterstützung in dieser Hinsicht, denn einbauen lässt sich sowas ja nicht von alleine ;)

@Sarge: Wer spricht denn bitte davon, dass wir die Sicherheitslücken ignorieren? Seitdem wir auf diese Lücken aufmerksam geworden sind, sind wir bemüht, diese zu schließen, was auch der Grund dafür war, dass ich hier vorerst nicht gepostet habe.

@Drakel: Sofern Interesse besteht und wir dann wirklich mal soweit sind, werde ich mich dann bei dir melden *notier*

Durch einige Beiträge im Thread sind wir auf grundlegende Fehler gestoßen, die wir sogleich versucht haben, zu verbessern und die Fehler im vorhinein zu vermeiden. Aus diesem Grund waren wir gezwungen, einige Änderungen durchzuführen, die zwar für die "Spieler" kaum bedeutende Neuerungen mit sich bringt, den Entwickler aber im Gegensatz zur ersten Version (0.6.0) besser bedient.

Am Freitag haben wir die neue Version 0.6.1 veröffentlicht, ich denke, dass es nicht viel Sinn hat, den Changelog jetzt in den Beitrag zu kopieren, aus diesem Grund verweise ich einfach mal auf unser Forum.

Forum - http://litotex.de

Downloadlink & Changelog - http://litotex.de/wbb/litotex-gameengine/downloads/358-aktuelle-version-litotex-0-6-1/

Würden uns über neue Anregungen freuen, vlt finden sich sogar einige Interessenten, die sogar an der Entwicklung kräftig anpacken würden ;)

gepostet vor 16 Jahre, 1 Monat von leitstelle

Ich finde das Projekt nicht schlecht.

Natürlich gibt es Fehler, wer hat die Anfangs nicht gemacht? Leider fehlt mir die Zeit da mitzumachen, aber ich schau da gern rein und verfolge die Entwicklung

gepostet vor 16 Jahre, 1 Monat von knalli

Vorneweg: Falls irgendwas zu sehr negativ-kritisch rüberkommt, möge man drüber hinwegsehen.. ist durchgehend normal-kritisch gedacht :)

Könntet ihr eine Übersichtsseite gestalten? Features, Screenshots, Module? Würde vielen glaube ich sehr helfen.. oder ich habe diese Seite schlichtwenig nicht gefunden (es gibt doch nur dieses Forum, oder?)

Kann man eigentlich ein neutrales BG-Framework (anderer Name, gleicher Sinn) entwickeln? Also, ich hätte ja prinzipiell nichts gegen das Verwenden eines soliden Frameworks, aber welche Vorteile soll ich daraus zielen? In unserem BG (Gangwars) gibt es keine Stämme oder Rassen.. wir brauchen im derzeitigen Konzept keine Bauschleifen, weil wir eben keine Forschungsbäume wie andere Spiele zu bieten haben.

Dagegen hört sich - auf den ersten Blick, mal ohne Details - IGM, Allianzverwaltung und dyn. Kampsystem gut an; was auch immer das heißt.

Worauf ich hinaus will: Müsste man so eine neutrale Engine nicht erst mal weiter unten ansiedeln? Also ein "CMS"-Framework für Browsergames? Ich denke da an grundlegende Spieler/Benutzerfunktionen (dazu kann, muss aber nichtmal IGM zählen) und ein solides technisches Arsenal von Funktionen/Komponenten. Dazu würde ich spontan auch ein Backend-Framework zuzählen.

gepostet vor 16 Jahre, 1 Monat von ofliii

@leitstelle: Wenn du keine Zeit hast mitzuwirken, könntest du uns aber auf die von dir genannten Fehler aufmerksam machen, würde uns auch schon erfreuen. Wie bereits erwähnt freuen für uns über jeden Tipp, jede Idee & Anregungen, die wir erhalten.

@knalli: Wir haben bereits über eine Übersichtsseite nachgedacht, wo die Basic Informationen zusammengefasst sind, inklusive Screenshots und kleinere Dokumentationen, allerdings sind wir zum Entschluss gekommen, dass es noch deutlich zu früh ist. Wir wollen mal eine vernünftige Basis erschaffen, die wirklich stabil und fehlerfrei läuft, erst dann wäre es Zeit, derartiges zu gestalten.

Die restlichen Fragen wurden zum Teil bereits auf den anderen Seiten angesprochen beziehungsweise zum Teil beantwortet. Schlussendlich sind irgendwo Grenzen zu setzen und diese sollte man dann nicht überschreiten bzw. beachten, aus diesem Grund ist es sicherlich keine 100%ige neutrale Engine, aber allerdings mit wenig Programmieraufwand den persönlichen Ansprüchen anpassbar.

gepostet vor 16 Jahre, 1 Monat von ofliii

Gibt's hinsichtlich der Verbesserungen zur vorherigen Version sonstige Rückmeldungen?

gepostet vor 16 Jahre, 1 Monat von Kallisti

Das Interesse dürfte sich aufgrund der Code Qualität und der Tatsache dass es einfach keine "Engine", sondern lediglich ein Browsergame mit Einheiteneditor ist, bei den meisten wohl gelegt haben. ;)

Naja, was soll man schon sagen? Ich muss mich "bedanken", um das Changelog zu lesen? WTF?! Und beim zweiten Pageload wird mir der "Bedankenlink" nun nicht einmal mehr angezeigt. Großes Kino unsinniger Gängelung und überflüssiger Forenfunktionen (ja, so was macht Sinn wenn man z.B. illegale Links veröffentlicht, um herauszufinden, welche Adress-Range "gepetzt" hat, dafür wurden die Mods ja zumeist entwickelt, aber doch nicht für ein Browsergame Oo).

Von den kritischen Punkten wie SQL Injection, XSS, gruseliger "Templating-Engine", mangelnder Abstraktion, etc.. hat sich laut Changelog ja nichts geändert. Oder hab ich das überlesen? Den Code schau ich mir nicht nochmal an, dazu ist mir meine Zeit dann doch zu schade. ;) Bin weiterhin der Meinung, dass es absolut nichts bringt daran herumzudoktorn, aber gut, euer Ding..

Nur sollte man dann mal überlegen ob die Security Probleme nicht vielleicht doch wichtiger sind, als irgendwelche optischen Kleinigkeiten.

gepostet vor 16 Jahre von Phoscur

- PHP ab Version 4.0
- eine MySQL Datenbank ab Version 3.5x
- folgende PHP Konfigurationen:
--register_globals On
--safe_Mode Off

*hust*

Moment FreeBG.. das hab ich schonmal gehört, ihr hattet schonmal sowas ähnliches wie UGamela gemacht... habt ihr denn nicht daraus gelernt?

PHP4 finde ich noch das geringste Übel, aber warum kein PHP5 wenn es schon überall zur Verfügung steht. Habt ihr Klassen drin? Dann bitte auf PHP5 umsteigen...

MySQL 3.5 ... Da scheint ja wirklich was abzugehen, da wird das Potenzial von Subqueries und Prozeduren voll ausgenutzt.

register_globals On .. Das is ein Witz oder? Das schreibt ihr hoffentlich nur zum Spaß! Ich will nicht den Code sehen!!

safe_Mode Off .. genau, durch die register_globals war es ja noch nicht unsicher genug. Danke.

Bitte fangt nochmal von vorn an.

gepostet vor 16 Jahre von Dunedan

Original von Phlegma

MySQL 3.5 ... Da scheint ja wirklich was abzugehen, da wird das Potenzial von Subqueries und Prozeduren voll ausgenutzt.

Muss man das Potenzial denn ausnutzen wenn die Rechenleistung auch so reicht?

register_globals On .. Das is ein Witz oder? Das schreibt ihr hoffentlich nur zum Spaß! Ich will nicht den Code sehen!!

Laut Litotex-Leuten ist das seit dem letzten Update keine Voraussetzung mehr. Steht zumindest im Changelog. Erst lesen, dann flamen.

safe_Mode Off .. genau, durch die register_globals war es ja noch nicht unsicher genug. Danke.

Dir ist hoffentlich bewusst, dass der Safe Mode mit PHP6 rausfallen wird. Und das nicht ohne Grund. Also kein Grund sich über safe_mode=off als Voraussetzung aufzuregen.

Nicht, dass mich hier jemand falsch versteht: Ich will hier nicht Litotex verteidigen o.ä.. Aber Flame könnte bitte auf _sinnvollen_ Fakten beruhen.

gepostet vor 16 Jahre von Phoscur

Original von Dunedan

Original von Phlegma

MySQL 3.5 ... Da scheint ja wirklich was abzugehen, da wird das Potenzial von Subqueries und Prozeduren voll ausgenutzt.

Muss man das Potenzial denn ausnutzen wenn die Rechenleistung auch so reicht?

PHP ist lahm genug, dann braucht man nicht noch Resourcen vergeuden

register_globals On .. Das is ein Witz oder? Das schreibt ihr hoffentlich nur zum Spaß! Ich will nicht den Code sehen!!

Laut Litotex-Leuten ist das seit dem letzten Update keine Voraussetzung mehr. Steht zumindest im Changelog. Erst lesen, dann flamen.

Meiner Meinung nach kann Code, der auf register_globals basiert nicht gut sein, auch nicht zurechtgebogener Code der mal darauf basiert hat.

Nicht, dass mich hier jemand falsch versteht: Ich will hier nicht Litotex verteidigen o.ä.. Aber Flame könnte bitte auf _sinnvollen_ Fakten beruhen.

Tut mir Leid, mir gefiel das ganze Ding nicht. Ich hab mir nur was gesucht auf dem ich rumhacken konnte. Hatte mich sowieso schon gewundert worum darüber noch niemand hergezogen war.

Zudem sollte es kein Flame sein, sondern eher abwertende aber immernoch kontruktive Kritik (hoffentlich gibt es sowas überhaupt -.-)..

Aber diejenigen hier, die sich bisher den Code angesehen hatten fanden den doch auch nicht so überragend oder?

Ich habe schon seit einem Jahr mit schlechtem Code zu tun und will das einfach nicht mehr sehn und umbedingt besser machen.

gepostet vor 16 Jahre von Kampfhoernchen

Ganz spontan fält mir mal das auf:

PHP:
  if($action=="main") {
  eval("\$tpl->output(\"".$tpl->get("admin_menu")."\");");
  exit();
 }
 if($action=="newsletter") {
 ...
  if($action=="xyz")

Zwei Fragen:

1. warum kein switch

2. WARUM da ein Eval?

gepostet vor 16 Jahre von Phoscur

Original von Kampfhoernchen

2. WARUM da ein Equal?

 Du meinst EVAL()? Sonst stellst du ja zweimal die gleiche Frage?

Ich denk mal aus dem selben Grund wieso ich mich schon aufgeregt hab. Weil der Code nicht so gut ist. Und das ist schade bei einem OS Game.

gepostet vor 16 Jahre von DrakeL

Original von Phlegma

Aber diejenigen hier, die sich bisher den Code angesehen hatten fanden den doch auch nicht so überragend oder?

Ich habe schon seit einem Jahr mit schlechtem Code zu tun und will das einfach nicht mehr sehn und umbedingt besser machen.

eher das Gegenteil von überragend, aber man merkt ja dass der OP lediglich an den Symptomen rumdoktern will und nicht das Projekt sauber von Grund auf aufbauen will. Da ich das Rumdoktern für relativ sinnlos halte in solch schwerwiegenden Fällen halte ich mich lieber raus. Der OP muss anscheinend erst gegen die Wand laufen bevor er anfängt drüber nachzudenken (musste ich auch, so ist es nicht). :)

Zum Thema besser machen, gleichfalls. :)

gepostet vor 16 Jahre von Phoscur

Original von DrakeL

eher das Gegenteil von überragend, aber man merkt ja dass der OP lediglich an den Symptomen rumdoktern will und nicht das Projekt sauber von Grund auf aufbauen will. Der OP muss anscheinend erst gegen die Wand laufen bevor er anfängt drüber nachzudenken (musste ich auch, so ist es nicht). :)

Oja, das hast du recht. Das hab ich jetzt schon öfter gesehn. Zudem hab ich selbst ein paar Monate gebraucht um das zu verstehen.

Mich wundert nur warum die nicht schon darüber hinweg sind, sie haben doch schon dieses FreeBG gemacht, das war auch nicht so ueber. Ich hoffe das jetzige Teil basiert nicht auf dem alten Kram..

Da ich das Rumdoktern für relativ sinnlos halte in solch schwerwiegenden Fällen halte ich mich lieber raus.

Gute Idee. Auch da schließe ich mich an.

Viel Spaß noch dem FreeBG Team!

gepostet vor 15 Jahre, 3 Monate von ofliii

So nach "kurzer" Abwesenheit konnte ich etwas Zeit finden, hier eure Fragen zu beantworten, Stellung zu nehmen und von Neuigkeiten zu berichten.

@Phoscur: Also mit Ugamela oder ähnlichen Projekten haben wir nichts am Hut. Das ist definitiv unser erstes Projekt in diesem Bereich, kann aber sein, dass du uns verwechselt oder Namensähnlichkeiten bestehen.

Nachdem diese Aussage nicht zutrifft, treffen die Schlussfolgerungen auch nicht zu.

@Kampfhoernchen: Wie bereits schon in einem früheren Beitrag geschrieben, hatten wir das Projekt in einem frühen Alpha-Stadium übernommen, da ist uns wohl diese und andere Passage durch die Finger geraten. Ist natürlich mit der neuen Version bereinigt.

----

Desweiteren darf ich verkündigen, dass die Version 0.7 vor einigen Wochen erschienen ist, hier die Ankündigung: http://www.freebg.de/wbb/allgemeines/news-ankündigungen/1298-version-0-7-ist-da/

Changelog und Downloadmöglichkeit: http://www.freebg.de/wbb/index.php?page=DownloadDBData&dataID=5

Freue mich über konstruktive Rückmeldungen.

gepostet vor 15 Jahre, 3 Monate von Hisoka

ok, ich bin mal sehr konstruktiv.

Am Anfang des Threads wurde schonmal gesagt, dass sich niemand freiwillig für einen Download bei euch anmelden will. Außerdem passt der Link zum Diskussions-Thread in eurer DB nicht.

Warum nutzt ihr eigendlich nicht einen ordentlichen OSS Hosting Dienst? z.B. Google-Code,Berlios oder Sourceforge

Dann könnte man die Anwendung wenigstens ohne Probleme runterladen.

Auch würde mir als potentieller "Nutzer" eine offene Entwicklung fehlen. z.B. Entwicklerversionen, Bugtracker,...

gepostet vor 15 Jahre, 3 Monate von FrozenShade

Da stimme ich Hisoka zu (besonders wegen Google-Code/Sourceforge), außer in folgendem Punkt: "dass sich niemand freiwillig für einen Download bei euch anmelden will."

Wer sich für das Browsergame-Engine interessiert, wird früher oder später eine Frage haben, die er im Forum stellen kann, wenn er das Engine aktiv benutzt. Es ist sehr selten, dass jemand eine Software benutzt die noch in der Entwicklungsphase ist, und nicht irgendwann auf ein Problemchen stößt, eine Frage oder ein Verbesserungsvorschlag hat. :) Ich finde es korrekt, wenn man potenzielle Nutzer der Software dazu animiert, sich im Forum zu registrieren, da sie wie schon gesagt noch in der Entwicklungsphase ist. So eine Software entwickelt sich ja schließlich nicht von selbst.

gepostet vor 15 Jahre, 3 Monate von Hisoka

Original von FrozenShade

Da stimme ich Hisoka zu (besonders wegen Google-Code/Sourceforge), außer in folgendem Punkt: "dass sich niemand freiwillig für einen Download bei euch anmelden will."

Wer sich für das Browsergame-Engine interessiert, wird früher oder später eine Frage haben, die er im Forum stellen kann, wenn er das Engine aktiv benutzt. Es ist sehr selten, dass jemand eine Software benutzt die noch in der Entwicklungsphase ist, und nicht irgendwann auf ein Problemchen stößt, eine Frage oder ein Verbesserungsvorschlag hat. :) Ich finde es korrekt, wenn man potenzielle Nutzer der Software dazu animiert, sich im Forum zu registrieren, da sie wie schon gesagt noch in der Entwicklungsphase ist. So eine Software entwickelt sich ja schließlich nicht von selbst.

Der jenige wird die Engine aber erst testen und wenn er sie für untauglich befindet, dann wird er sie wohl eher löschen und nicht noch im Forum Fragen stellen.

Fragen hab ich erst wenn ich die Software nutze und dazu muss sie einen eben überzeugen, wenn sie am Anfang nicht überzeugt, dann werde ich mir eher eine alternative suchen.

Aber jedem das seine, ich werde mich wie viele andere nicht freiwillig registrieren und das nur für einen blöden Download.

Solch ein Forum ist für die entwicklung nur bedingt zu gebrauchen. Man sieht weder den aktuellen Status, den Fortschritt noch die aktuellen Änderungen. Klar dafür kann man 10 Threads auf machen und dann noch 100 Bug Threads, aber ein Issue-Tracking System wie Track oder Mantis ist für sowas weit besser geeignet.

gepostet vor 15 Jahre, 3 Monate von Kelen

Schau dir Woltlab an, das funktioniert auch. Nur Foren und eben diese DB für Erweiterungen, wo kaum ein Entwickler aktiv ist..

Ich denke früher oder später ist Litotex eine BG Engine die jeder Depp installieren wird wie eben ein Forum. Diese "Deppen" :D kennen Mantis wahrscheinlich garnicht und müssten sich da erst einmal zurecht finden - werden vielleicht hier schon abgeschreckt. Hätten dieser Eine vorgehabt einen Fehler zu melden, worauf das Team angewiesen sein wird, so wurde er aufgrund von dem für die Masse unbekannten Mantis nicht gemeldet - schade..

Ein Forum kennt jeder. Die Anmeldung ist schnell und unkompliziert, die Struktur und alles ist bekannt - wunderbar. Für ein solches Projekt finde ich ein Forum eindeutig sinnvoller.

Der Code ist nach wie vor teilweise echt schlecht.

Kommt aber wohl davon, wenn mehrere an einer Stelle arbeiten.

Funktionen fallen durch schlechte Englischkenntnisse auf, im CSS werden zwei exakt gleiche Elemente mal als ID und mal als Klasse angegeben, die Templatearbeit ist auch nicht so dufte wenn eine fest Grafik für eine 1px Linie benutzt wird...

gepostet vor 15 Jahre, 3 Monate von Hisoka

Original von Kelen

Schau dir Woltlab an, das funktioniert auch. Nur Foren und eben diese DB für Erweiterungen, wo kaum ein Entwickler aktiv ist..

Ich denke früher oder später ist Litotex eine BG Engine die jeder Depp installieren wird wie eben ein Forum. Diese "Deppen" :D kennen Mantis wahrscheinlich garnicht und müssten sich da erst einmal zurecht finden - werden vielleicht hier schon abgeschreckt. Hätten dieser Eine vorgehabt einen Fehler zu melden, worauf das Team angewiesen sein wird, so wurde er aufgrund von dem für die Masse unbekannten Mantis nicht gemeldet - schade..

Ein Forum kennt jeder. Die Anmeldung ist schnell und unkompliziert, die Struktur und alles ist bekannt - wunderbar. Für ein solches Projekt finde ich ein Forum eindeutig sinnvoller.

naja darüber kann man wohl streiten. Aber es haben  eben schon einige angemerkt das sie sich für den Download nicht anmelden wollen. Alleine weil man dann von einer weiteren Seite mit Newslettern und co zugemüllt wird.

Auch bei Woltlab sieht man das sich niemand anmelden muss. Man kann das Produkt(Lite Version) sowie viele Addons ohne eine Anmeldung herunter laden. Neben dem das auch sie im Hintergrund die klassischen Techniken wie SVN zur Entwicklung nutzen.

Ein Forum ist keine Projektverwaltung und der Missbrauch einer solchen Software für solche Zwecke ist eher nicht produktiver. Man bedenke immer hier sollen sich Browsergame Entwickler bei den Litotex Entwicklern melden und nicht die Spieler. Gerade wenn Sachen wie Meilensteine,Versionen, Eintragstypen und mehr hinzukommen, dann wird eine Forensoftware schnell unübersichtlich. So müssen extra übersichten Verwaltet werden auf denen man den aktuellen Stand sieht. Sowas ist nicht gerade produktiv. Auch lässt sich ein solches Forensystem z.B. nicht ohne weiteres in eine IDE einbinden.

Ein Browsergame besteht eben nicht nur aus fertigen Komponenten, somit wird ein Betreiber irgendwann zwangsweise das Spiel anpassen müssen um nicht im Sumpf der ewig gleichen Spielen hängen zubleiben.

Ob die Administration eines Browsergames in die Hände eines Anfängers gehört will ich hier bei mal nicht weiter besprechen.

Aber jedem das seine.

gepostet vor 15 Jahre, 3 Monate von Quix0r

Daher biete ich weiterhin Support im Forum an. :) Und wenn sie Bugs reporten wollen - ob Mantis (PHP) oder Trac (Python) ist ja prinzipiell Pott wie Deckel, fuer Trac muesste ich das Python-Modul fuer Apache mitinstallieren - und sich mit gut auskennen, dann tun die das auch. Da habe ich schon Erfahrungen mit gemacht. :)

Und irgentwann kommt man mit Mantis auch klar. ;)

gepostet vor 15 Jahre, 3 Monate von Yuri

Ähm, wenn ich mich auch mal zu eurem "Projektchen" äußern darf.... Danke^^

Also ich hab mir eure "Engine" mal runtergeladen und bin gerade dabei, den Quellcode zu betrachten.

Dabei ist mir aufgefallen, das ihr gerne mal Code-Dokumentation vermissen lässt und auch sonst eher weniger Wert auf Coding Standards legt. Außerdem scheint mir eure  "veraltete" Technik ein klein wenig sinnlos zu sein.

Ich mein, der Browsergame-Markt ist ein Markt, der verstärkt auf neue Technologien aufbaut. Es ist kein Markt, indem alt bewährtes so stehen gelassen wird. Heutzutage sollte man min. PHP in der Version 5.2 oder höher voraussetzen. In einigen Monaten kann man sogar schon auf PHP 5.3 aufsetzen und endlich von Namespaces, Closures etc. profitieren.

Und MySQL sollte man sowieso in min. Version 5 voraussetzen, denn die Version 5 bietet erstmal Views (für Browsergames sowieso äußerst nützlich), Trigger, Stored Procedures und UDF (User Defined Function). Glaubt mir, auch das Arbeiten mit MySQL kann sehr viel Spaß machen ;)

Nur leider ist euer vielversprechendes Projekt nicht wirklich gut gelungen. Die Umsetzung ist (ohne Übertreibung) nunmal absolut indiskutabel und eine Schande für Programmierer. Sorry, wenn ich das jetzt so hart verdeutlichen muss, aber selbst heutzutage lässt einen die foranschreitende Entwicklung noch genügend Luft, um sich zumindest einmal mit MySQL 5 sowie PHP 5 inkl. OOP auseinander zu setzen. Vor allem im TEAM (dabei sollte man drauf schauen, das nicht alle alles können)!

Ich hab wirklich nichts gegen gute Ideen, nur ist eure Umsetzung auch ein gewaltiges Datenschutzproblem, wenn sich einer bei euch anmeldet. Es gibt sehr viele Mittel und Wege, Userdaten zu schützen. Ich bezweifle, das ihr Salts zur zusätzlichen Passwort-Verschlüsselung verwendet (wenns geht, einen dynamischen und statischen Salt). Ansonsten könnt ihr davon ausgehen (vor allem durch die jüngsten Entwicklung in GPU-Bruteforcing), das in naher Zukunft jedes erdenkliche Passwort als md5-Hashwert in einer Rainbowtable zu finden ist.

Ich schlage euch also vor, euer Projekt einer Neuentwicklung zu unterziehen. Der alte Quellcode sollte dann aber möglichst nicht kopiert werden. Und als aller erstes solltet ihr euch ein globales Sicherheitskonzept für eure Engine überlegen. Im Übrigen bieten sich so einige Patterns an, die euch viele Lösungen für Probleme bereits präsentieren und auch lösen, bevor sie überhaupt auftreten können. In diesem Fall sei mal das Front-Controller-Pattern zu erwähnen, welches vor allem bei dieser Art von Projekt eine enorme Stütze sein kann ;)

Mehr gibst dazu jetzt auch nichts zu sagen.

Mfg

gepostet vor 10 Jahre, 4 Monate von Bigpapa1990

Kann das einer noch mall als download anbieten das

Litotex | OpenSource Browsergame-Engine

gepostet vor 9 Jahre, 8 Monate von ChristianNeff

Das Projekt ist wieder dabei aktiv zu werden. Mit neuen und überarbeiteten Versionen.

http://forum.litotex.org/

Auf diese Diskussion antworten