Register for your free account! | Forgot your password?

You last visited: Today at 19:42

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[Release] mySQL in Quest ausgeben

Discussion on [Release] mySQL in Quest ausgeben within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.

Reply
 
Old   #1
 
ThinSmoke's Avatar
 
elite*gold: 49
Join Date: Sep 2008
Posts: 906
Received Thanks: 600
Exclamation [Release] mySQL in Quest ausgeben

Alsooo, es ist eine sehr Umständliche Lösung, ein Server hatte bei mir angefragt ob ich es ihm machen könnte, da io.popen nicht funktioniert musste eine andere Lösung her, zuerst dachte ich an Perl (Wegen der Leistung) doch dann habe ich mich einfach für Shell PHP entschieden, na nächstes Problem ohne io.popen kann ich auch dies nicht auslesen - nungut - ich habe nun doch eine Lösung gefunden - SEHR UMSTÄNDLICH aber es funktioniert.


Wir erstellen zuerst eine neue Quest Funktion

in die Questlib.lua schreiben wir
Code:
function pit_mysql()
os.execute("/usr/local/bin/php test.php")
for line in io.lines("test.txt") do say(line) end
end
Diese Funktion schreiben wir auch am Ende der folgenden Datei: quest_functions
Code:
pit_mysql
nun erstellen wir im Channel Ordner eine Datei Namens: test.php
In diese Datei schreibt ihr:
PHP Code:
<?php

$dbhost 
'localhost';    //mySQL IP
$dbuser 'root';       //mySQL Username
$dbpassword '';   //mySQL Passwort
$database 'account';       //mySQL Datenbank

$conn mysql_connect($dbhost$dbuser$dbpassword) or die ('mySQL Connecting Error'); 
mysql_select_db($database); 


$sqlIProto "SELECT account, status from account.account LIMIT 10";
$qryIProto mysql_query($sqlIProto);
$ipOut NULL;
while(
$getIProto mysql_fetch_object($qryIProto))
{
$ipOut .= $getIProto->account "|" $getIProto->status "\n";
}
$datei fopen("test.txt","w+");
fwrite($datei$ipOut);
fclose($datei);
        
?>

nun noch fix eine Quest erstellen, die wie folgt heißt test.quest
die Quest sieht wie folgt aus:
Code:
quest test2 begin
	state start begin
		when 30121.chat."Test 2" begin 
		say(pit_mysql())
		end
	end
end
sh make.sh ausführen, fertig.




-> Ich sagte ja, sehr umständlich doch es erfüllt seinen Zweck
(Nicht zu empfehlen bei login quests - da die Festplatte sehr belastet werden kann!)

-> So wie das Beispiel ist, solltet ihr es nicht einfügen. Es sollte nach euren Wünschen angepasst werden.

Ich kann Quests, Scripte euren Wünschen entsprechend erstellen, gegen eine gerige Zeitaufwands Entschädigung.
ThinSmoke is offline  
Thanks
16 Users
Old 10/13/2011, 05:44   #2

 
passy305's Avatar
 
elite*gold: 23
Join Date: Oct 2007
Posts: 1,462
Received Thanks: 1,967
Nice
Können bestimmt viele gebrauchen
passy305 is offline  
Old 10/13/2011, 07:38   #3
 
.2good4you111's Avatar
 
elite*gold: 20
Join Date: Oct 2010
Posts: 1,303
Received Thanks: 457
Nice Nice,

nur ich würde die Querrie in der Quest festlegen.
Wäre viel mehr möglich, update, insert, delete, drop (xD), Ingame Registrierung
.2good4you111 is offline  
Old 10/13/2011, 07:45   #4
 
~LuckyStrike~'s Avatar
 
elite*gold: 0
Join Date: Jul 2008
Posts: 1,812
Received Thanks: 1,977
Quote:
Originally Posted by .2good4you111 View Post
Nice Nice,

nur ich würde die Querrie in der Quest festlegen.
Wäre viel mehr möglich, update, insert, delete, drop (xD), Ingame Registrierung
höhöhö würdeste das machen könntest du mob_proto
leeren und die values in der quest angeben und wenn
der run oder sowas fertig ist die query wieder entfernen lassen
höhööhöhö ....

b2t: nice sicherlich hilfreich für die, dies brauchen können.
~LuckyStrike~ is offline  
Old 10/13/2011, 07:51   #5
 
-TÜRK-'s Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 328
Received Thanks: 434
false;

Quote:
os.execute("/usr/local/bin/php test.php")
true;

Quote:
os.execute("/usr/local/bin/php/test.php")
-TÜRK- is offline  
Old 10/13/2011, 07:52   #6
 
ThinSmoke's Avatar
 
elite*gold: 49
Join Date: Sep 2008
Posts: 906
Received Thanks: 600
Quote:
Originally Posted by -TÜRK- View Post
false;



true;
Falsch, /usr/bin/local/php ruft erstmal die PHP Klasse auf, und test.php ist dann das Script.
ThinSmoke is offline  
Thanks
1 User
Old 10/13/2011, 08:00   #7
 
-TÜRK-'s Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 328
Received Thanks: 434
Quote:
Originally Posted by xPit View Post
Falsch, /usr/bin/local/php ruft erstmal die PHP Klasse auf, und test.php ist dann das Script.
hmm, okay I get it. Danke.
Aufruf von PHP-Skript

edit: * THANKS GIVEN *

Schönes System
-TÜRK- is offline  
Old 10/13/2011, 11:48   #8
 
.Risan.'s Avatar
 
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
hatte eben angst... Aber nette alternative..
.Risan. is offline  
Old 10/13/2011, 12:15   #9
 
.Nagato's Avatar
 
elite*gold: 1
Join Date: Mar 2011
Posts: 1,473
Received Thanks: 1,382
Wieso muss immer nur immer pub werden.
Aber ist ok..
.Nagato is offline  
Old 10/13/2011, 12:16   #10
 
ThinSmoke's Avatar
 
elite*gold: 49
Join Date: Sep 2008
Posts: 906
Received Thanks: 600
Quote:
Originally Posted by .Nagato View Post
Wieso muss immer nur immer pub werden.
Aber ist ok..
Nenn mir nen Grund, warum nicht?
ThinSmoke is offline  
Old 10/13/2011, 12:20   #11
 
.Nagato's Avatar
 
elite*gold: 1
Join Date: Mar 2011
Posts: 1,473
Received Thanks: 1,382
Manche haben es sich durch's logische denken angeeignet, andere kriegen es wiederum nur in den ***** geschoben.
Ich weiß, dass einige damit vielleicht nichts anfangen können, aber es wär schon schade drum, wenn jeder X-beliebige Server alles in den ***** geschoben bekommt.
Bei manchen Sachen, k, but ich finde, dass man eine gewisse Grenze einhalten sollte, zwischen Pub und Nonpub.
.Nagato is offline  
Old 10/13/2011, 12:25   #12
 
ThinSmoke's Avatar
 
elite*gold: 49
Join Date: Sep 2008
Posts: 906
Received Thanks: 600
Quote:
Originally Posted by .Nagato View Post
Manche haben es sich durch's logische denken angeeignet, andere kriegen es wiederum nur in den ***** geschoben.
Ich weiß, dass einige damit vielleicht nichts anfangen können, aber es wär schon schade drum, wenn jeder X-beliebige Server alles in den ***** geschoben bekommt.
Bei manchen Sachen, k, but ich finde, dass man eine gewisse Grenze einhalten sollte, zwischen Pub und Nonpub.
Ach, ich weiß was du meinst .]
Ich veröffentliche auch nicht alles was ich erstellt habe.

Stell dir vor was los wäre, wenn ich eine Comboliste mit 1.000.000 Combos mit nem Account Hack (Client Mod) publizieren würde? funktioniert auf jedem Server (Auch Offiziellen) ... Es würde so eine Welle von geklauten Acc´s geben, so nutze ich es für eigen gebrauch oder verkaufe es an vertrauenswürdige Personen damit es nicht in Umlauf gerät ... :]


Oder, ich arbeite an einem InGame Auktionshaus welches über Website & InGame funktioniert, das sind Sachen die ich nicht veröffentlichen werde - sondern nur für eigen Gebrauch oder an eng- Vertraute weitergebe.

Doch das.. Hrm naja wie soll ich sagen, wenn die Server ~2000 Spieler ON haben mit nem Login Event wird es die Server in die Knie treiben, eigentlich müsste es reichen wenn man sagt, FreeBSD, Ports, mysql-lua ... sollte auch funktionieren .. nur leider ist die LUA Version von Metin ein wenig alt
ThinSmoke is offline  
Old 10/13/2011, 13:19   #13
 
.Risan.'s Avatar
 
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
Quote:
Originally Posted by xPit View Post
Ach, ich weiß was du meinst .]
Ich veröffentliche auch nicht alles was ich erstellt habe.

Stell dir vor was los wäre, wenn ich eine Comboliste mit 1.000.000 Combos mit nem Account Hack (Client Mod) publizieren würde? funktioniert auf jedem Server (Auch Offiziellen) ... Es würde so eine Welle von geklauten Acc´s geben, so nutze ich es für eigen gebrauch oder verkaufe es an vertrauenswürdige Personen damit es nicht in Umlauf gerät ... :]


Oder, ich arbeite an einem InGame Auktionshaus welches über Website & InGame funktioniert, das sind Sachen die ich nicht veröffentlichen werde - sondern nur für eigen Gebrauch oder an eng- Vertraute weitergebe.

Doch das.. Hrm naja wie soll ich sagen, wenn die Server ~2000 Spieler ON haben mit nem Login Event wird es die Server in die Knie treiben, eigentlich müsste es reichen wenn man sagt, FreeBSD, Ports, mysql-lua ... sollte auch funktionieren .. nur leider ist die LUA Version von Metin ein wenig alt
Metin2 und Lua SQL funktioniert bestens...
Das mit dem ingame auktionhaus kamm mir auch schon in den Sinn...
.Risan. is offline  
Old 10/13/2011, 13:21   #14
 
ThinSmoke's Avatar
 
elite*gold: 49
Join Date: Sep 2008
Posts: 906
Received Thanks: 600
Quote:
Originally Posted by ..Xao View Post
Metin2 und Lua SQL funktioniert bestens...
Das mit dem ingame auktionhaus kamm mir auch schon in den Sinn...
Dafür werde ich aber dann kein Tutorial schreiben. Ich hoffe das wird auch kein anderer tun. XD
ThinSmoke is offline  
Old 10/13/2011, 14:53   #15
 
elite*gold: 0
Join Date: Feb 2011
Posts: 258
Received Thanks: 233
Ist nicht wirklich schwer gescriptet.
Was mich eher interessiert, ob es wohl möglich ist, einen Butto in der Quest mit einer
MySQL Funktion zu belegen oder einer sonstigen Funktion?
Würd' das wohl gehen? o.O

Vielleicht mit when button begin? D:
.SoNiice' is offline  
Reply

Tags
lua, metin2, mysql, os.execute, quest


Similar Threads Similar Threads
[Release] Mysql - Firewall
09/24/2020 - Metin2 PServer Guides & Strategies - 16 Replies
Sooo, das erste mal das ich hier etwas release... ich werde KEIN How To machen, sondern nur sagen was möglich ist, und was es bringt! Mysql - Firewall Ich möchte euch hier GreenSQL zeigen. Es schützt euch vor Mysql-Injectionen und andere Datenbanken attacken.
[Release]Besserer OX-Manage quest mit OX-Verlassen quest usw.
05/08/2012 - Metin2 PServer Guides & Strategies - 27 Replies
Da mich es immer aufregt, dass mann beim OX immer erst die Blume rufen muss und dann drauf klicken, habe ich mal eine quest für eine oxerleicterung geschrieben. (© by BestKilla && Der quest darf nur unter genehmigung geändert werden.) (Sollte diese Quest fiels als eure ausgegeben werden, wird sofort der quest rausgenommen.) OX STARTEN: Ihr müsst euch mit '/go ox' erst nach ox porten, dann mit quest ox starten. Die Queste: +Diese Quest ermölichen eine OX-Wettbewerb ohne die Umständlige...
[Release]Upp-Stuff Quest + Neue Bio Quest ->Testlauf
06/08/2010 - Metin2 PServer Guides & Strategies - 13 Replies
Hey und guten Morgen, Ich hatte grade bissl langeweile und hab mir gedacht man könnte doch seine Waffen auch mit 100% Uppchance gg bessere Waffen tauschen oder? Das heißt: Die Quest sieht so aus: Ihr geht zu Baek-Go. Wenn ihr jetzt zum Beispiel einen Krähenstahlbogen+9 und 2x Gegenangriffstrategien habt könnt ihr Ihn gg einen Geisterbogen+0 eintauschen! Die Quest funktioniert wunderbar und wurde auch schon getestet.
[Release]Keine Promocodes mehr (beim Ausgeben von 400 G1-Credits)!!
06/02/2010 - WarRock - 20 Replies
Liebe WarRock Community, Wollte euch nur darüber informieren, das man nach dem Ausgeben von 400 G1-Credits, keine Promocodes mehr bekommt! Der Counter ist noch da! Das Feld, das man einen bekommen hat, kommt zwar, aber man kriegt keinen! Vielleicht ist es auch nur ein Bug von Gamersfirst, was ich aber nicht glaube! Die Codes sind aber noch nicht abgelaufen. Sie laufen erst heute in einem Monat ab, sprich am 1.07!
[RELEASE]MySQL TableEditor
07/25/2009 - CO2 PServer Guides & Releases - 17 Replies
Hello e*pvper's! Here is my first C# tool. I have made this lite tool for people's who dont know how to use NativCat (or ther program's like this) For the initial release this tool have the next feature's: Connect To MySQL Server via IP,User and Password.* View and Edit table's. Alter Table's. Open Close DataBase's (DB's)



All times are GMT +1. The time now is 19:43.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.