anpera.net https://anpera.dyndns.org/phpbb3/ |
|
Midgars RPG-Schule https://anpera.dyndns.org/phpbb3/viewtopic.php?f=43&t=3756 |
Seite 1 von 2 |
Autor: | Laserian [ Fr 29 Jun, 2007 01:54 ] | ||
Betreff des Beitrags: | Midgars RPG-Schule | ||
So dann veröffentliche ich hier mal mein erstes Mod. Ist nicht komplett von mir gemacht worden aber egal. Ich beanspruche keine Copyrightrechte für mich ich stehe in der Box drin (die bitte nicht entfernt wird) zusammen mit allen anderen die daran beteiligt waren. Ist ein Gemeinschaftsprojekt von Midgar, ich und ein weiterer Progger haben lediglich das Coden übernommen. Es handelt sich dabei um eine RPG-Schule die mit einigen Räumen ausgestattet wurde um Spielern ein paar Räume zu geben wo sie von anderen Spielern RP lernen können. Dazu gibt es zwei neue Stati für die Spieler, RP-Lehrer und RP-Schüler. Die RP-Lehrer haben Zutritt zu einem Lehrerzimmer in dem sie einige Sachen einstellen können. Sie können Spielern den RP-Schüler Status verpassen dass sie vollen Zutritt in der Schule bekommen, die einzelnen Räume von Kommentaren säubern sowie einzelne Kommentare löschen, desweiteren gibt es auch einen Terminplaner für die Lehrer wo sie Termine setzen können um für ein wenig Übersicht zu sorgen. Normale Spieler haben in der RP-Schule nur zu einem Raum Zutritt in dem sie von Spieler zu Spieler ein wenig miteinander üben können. Es gibt eine Bewerbungsfunktion bei der die Spieler ihren Wunschlehrer angeben können. RP-Schüler haben Zutritt zur ganzen Schule, das Lehrerzimmer ausgenommen. In jedem Ort gibt es auch einen Offtopicbereich für OT-chat mit den Lehrern. In Midgar hat es regen Andrang gefunden und musste vom Umfang her verdoppelt werden von 3 auf 6 Übungsräume. In jedem Übungsraum gibt es zudem noch einen See und eine Schenke und einen Dorfplatz (dieser ist bei allen Übungsräumen der selbe) damit verschiedene Situationen geübt werden können. Mfg Laserian Und jetzt hier die Einbauanleitung (ist auch im Ordner nochmal drinne): $this->bbcode_second_pass_code('', ' SQL: CREATE TABLE `rpschule`( `id` int(11) unsigned NOT NULL auto_increment, `lehrer` varchar(50) NOT NULL default '', `schueler` varchar(50) NOT NULL default '', `date` varchar(50) NOT NULL default '', `raum` int(11) unsigned NOT NULL default '0', `regeln` enum('0','1') NOT NULL default '0', `status` text NOT NULL, PRIMARY KEY (`id`) )TYPE=MyISAM; CREATE TABLE `rpbewerb`( `id` int(11) unsigned NOT NULL auto_increment, `name` varchar(50) NOT NULL default '', `lehrer` varchar(50) NOT NULL default '', `angenommen` enum('0','1') NOT NULL default '0', `wunsch` varchar(50) NOT NULL default '', PRIMARY KEY (`id`) )TYPE=MyISAM; ALTER TABLE `accounts` ADD `rplehrer` enum('0','1') default '0'; ALTER TABLE `accounts` ADD `rpschueler` enum('0','1') default '0'; Öffne dragon.php und suche (2x) nach $nochange=array( und füge ,"rplehrer"=>1 ,"rpschueler"=>1 hinzu abspeichern. Dann noch die Dateien hochladen und verlinken wo ihr die Schule haben wollt addnav("RPG-Schule","rpschule.php"); und fertig ist die Schule. Optional kann man noch im Usereditor die Einträge RP-Schüler RP-Lehrer einfügen: (RP-Lehrer sollte auf jeden Fall eingefügt werden, da ansonsten die RP-Lehrer für die Schule über die Datenbank eingesetzt werden müssten) user.php suche nach $userinfo = array( und füge an gewünschter Stelle folgendes hinzu "rplehrer"=>"Rp-Lehrer?,bool", "rpschueler"=>"Rp-Schüler?,bool", ')
|
Autor: | Rene [ Fr 29 Jun, 2007 12:21 ] |
Betreff des Beitrags: | |
ist super habe es sofort eingebaut! ![]() |
Autor: | Freya [ Fr 29 Jun, 2007 14:30 ] |
Betreff des Beitrags: | |
Hallo, ich habe die schule auch einmal eingebaut, und das was ich bis jetzt gesehen habe ist wirklich klasse!!! Super!! Freya |
Autor: | Rene [ Fr 29 Jun, 2007 20:35 ] |
Betreff des Beitrags: | |
em könnte mir einer von euch schnell helfen addet mich in ICQ oder MSN den ich habe ein kleines prob mit der Datenbank beim dem befehl |
Autor: | Dennis684 [ Fr 29 Jun, 2007 22:22 ] |
Betreff des Beitrags: | |
wie wäre es wenn du einfach den fehler hier postest?;) so würdest du auch anderen die das gleiche problem haben helfen;) |
Autor: | Laserian [ Fr 29 Jun, 2007 23:51 ] |
Betreff des Beitrags: | |
ja wär auf jeden fall besser wenn du hier postest so können sich zum einen mehrere Leute mit dem Problem befassen und zum anderen können Leute die das selbe Problem haben dann hier nachlesen wie mans ändern kann |
Autor: | Rene [ Sa 30 Jun, 2007 07:09 ] |
Betreff des Beitrags: | |
mhhhh ok also bei mir kommt in der datenbank immer das hier: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'unsigned NOT NULL default '0', `status` text NOT NULL, PRIMARY KEY (`id`) ' at line 7 für euch klingt das vielleicht ein doofer fehler der gleich zum beheben ist aber ich bin noch net so gut ![]() |
Autor: | Harthas [ Sa 30 Jun, 2007 08:30 ] |
Betreff des Beitrags: | |
$this->bbcode_second_pass_code('', ' CREATE TABLE `rpschule`( `id` int(11) unsigned NOT NULL auto_increment, `lehrer` varchar(50) NOT NULL default '', `schueler` varchar(50) NOT NULL default '', `date` varchar(50) NOT NULL default '', `raum` int(11) unsigned NOT NULL default '0', `regeln` enum('0','1') NOT NULL default '0', `status` text NOT NULL, PRIMARY KEY (`id`) )TYPE=MyISAM; ') Versuchs mal so. Könnte daran liegen, dass man enum wohl kein unsigned zuweisen kann. |
Autor: | Laserian [ Sa 30 Jun, 2007 09:41 ] |
Betreff des Beitrags: | |
oh pardon ja daran wirds wohl liegen habs ausgebessert hab ich iwie verpeilt das in der anleitung noch zu aktualisieren |
Autor: | Rene [ Sa 30 Jun, 2007 09:44 ] |
Betreff des Beitrags: | |
Vielen Dank jetzt klappt es! ![]() |
Autor: | Laserian [ Sa 30 Jun, 2007 09:51 ] |
Betreff des Beitrags: | |
jop sry für den Fehler in der Einbauanleitung das ist mir direkt peinlich ich habs mit demselben Befehl gemacht und der hat nicht gefunzt wegen dem unsigned aber ausgebessert hab ichs nicht ![]() Edit: Geänderte Version oben. Änderungen beziehen sich nur auf die rpcomment.php Fehler wurden ausgebessert (Die Schenken und Seen der Räume 4 - 6 waren noch nicht implementiert -.-) Und der Script für die commentdelete in den Räumen wurde verkleinert ist nur noch ein case und nicht mehr für jeden Ort eine eigene. |
Autor: | Squall [ Sa 07 Jul, 2007 19:13 ] |
Betreff des Beitrags: | |
Hallo, nettes script, werde es sicher gut gebrauchen können.. aber beide sqls befehle sind leider nicht kompatibel mit allen Versionen.. dies sollte vtl nochmal angepasst werden.. mfg |
Autor: | Kamui [ Sa 07 Jul, 2007 20:11 ] |
Betreff des Beitrags: | |
Kleiner Optimierungsvorschlag von mir. Die beiden DBFelder für die accounts zu einem zusammenpacken und das als Array verarbeiten so spart man sich wenigstens wieder ein lästiges Feld in den Accounts ![]() |
Autor: | Eliwood [ So 08 Jul, 2007 14:12 ] |
Betreff des Beitrags: | |
Kamui hat geschrieben: Kleiner Optimierungsvorschlag von mir.
Die beiden DBFelder für die accounts zu einem zusammenpacken und das als Array verarbeiten so spart man sich wenigstens wieder ein lästiges Feld in den Accounts ![]() .. und hat dafür ne Krampfarbeit und unsinnige Bearbeitungen, wenn man z.B. alle Lehrer auflisten will. Mit nem einfachen Query gehts dann nämlich nicht mehr (so einfach). Also geht die winzige Zeit, die du gewonnen hast, wieder verloren. Wenn schon optimieren, dann richtig. Man braucht z.B. kein Feld, das aussagt, ob man Schüler ist, wenn man ohnehin nur Schüler ist, wenn man anderswo bereits in der Datenbank steht. (Ein anderes, konkreteres Beispiel: Wozu die GIlden-ID in den Accounts angeben, wenn man eine Tabelle machen kann, die Account-ID, Gilden-ID, Rang-ID und Rechte assoziiert?) |
Autor: | Kamui [ So 08 Jul, 2007 20:46 ] |
Betreff des Beitrags: | |
Das wird aber nur dort der Fall sein wo man die Queries dafür benötigt aber du vergisst das jedes Feld egal wo man sich befindet aus der DB ausgelesen wird und daher ist es im großen und ganzen besser ![]() Nehmen wir an du befindest dich auf dem Dorfplatz und dort brauchst du die beiden Felder garnicht. Trotzdem werden beide Felder in die Session geladen. Macht man aus ein zwei Feldern eins wird nur eins in die Session geladen. Und nur dort wo du das Feld brauchst wird sich das verarbeiten des Arrays und den zwei Feldern ausgleichen ^^ |
Autor: | Eliwood [ So 08 Jul, 2007 21:26 ] |
Betreff des Beitrags: | |
Kamui hat geschrieben: Das wird aber nur dort der Fall sein wo man die Queries dafür benötigt
aber du vergisst das jedes Feld egal wo man sich befindet aus der DB ausgelesen wird und daher ist es im großen und ganzen besser ![]() Nehmen wir an du befindest dich auf dem Dorfplatz und dort brauchst du die beiden Felder garnicht. Trotzdem werden beide Felder in die Session geladen. Macht man aus ein zwei Feldern eins wird nur eins in die Session geladen. Und nur dort wo du das Feld brauchst wird sich das verarbeiten des Arrays und den zwei Feldern ausgleichen ^^ Und 2 Bytes rechtfertigen diesen Aufwand, mit serialize und unserialize zu arbeiten? Eine Spalte mehr oder weniger macht wirklich nicht viel aus pro Query, solange die Spalten klein sind! (Zum Vergleich: 2 Spalten, 0.0003s, 50 Spalten, 0.0005s bei Null Zeilen!) Man kanns auch übertreiben. Wirklich. |
Autor: | Kamui [ So 08 Jul, 2007 21:28 ] |
Betreff des Beitrags: | |
Naja es war auch nur Theorie und getestet hab ich es bisher noch nicht da es noch nicht nötig war. ^^ Und in manchen Punkten lässt sich über Performance streiten. |
Autor: | Rantanplan [ Fr 13 Jul, 2007 06:12 ] |
Betreff des Beitrags: | |
Morgen...Bei mir funzt dieser Befehl nicht...?! Mfg Rantanplan SQL-Befehl: CREATE TABLE `rpschule` ( `id` int( 11 ) unsigned NOT NULL AUTO_INCREMENT , `lehrer` varchar( 50 ) NOT NULL default '', `schueler` varchar( 50 ) NOT NULL default '', `date` varchar( 50 ) NOT NULL default '', `raum` int( 11 ) unsigned NOT NULL default '0', `regeln` enum( '0', '1' ) unsigned NOT NULL default '0', `status` text NOT NULL , PRIMARY KEY ( `id` ) ) TYPE = MYISAM ; MySQL meldet: Dokumentation #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'unsigned NOT NULL default '0', `status` text NOT NULL, PRIMA |
Autor: | Naria [ Fr 13 Jul, 2007 09:53 ] |
Betreff des Beitrags: | |
Versuch es mal so, ohne unsigned bei regeln [php]CREATE TABLE `rpschule` ( `id` int( 11 ) unsigned NOT NULL AUTO_INCREMENT , `lehrer` varchar( 50 ) NOT NULL default '', `schueler` varchar( 50 ) NOT NULL default '', `date` varchar( 50 ) NOT NULL default '', `raum` int( 11 ) unsigned NOT NULL default '0', `regeln` enum( '0', '1' ) NOT NULL default '0', `status` text NOT NULL , PRIMARY KEY ( `id` ) ) TYPE = MYISAM ; [/php] |
Autor: | Rantanplan [ Fr 13 Jul, 2007 11:22 ] |
Betreff des Beitrags: | |
Danke klappt^^ |
Seite 1 von 2 | Alle Zeiten sind UTC + 1 Stunde |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |