|
You last visited: Today at 17:48
Advertisement
[MT2GS-Addon]Charnamen ändern via Coins
Discussion on [MT2GS-Addon]Charnamen ändern via Coins within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.
07/08/2011, 12:03
|
#1
|
elite*gold: 20
Join Date: Nov 2008
Posts: 741
Received Thanks: 716
|
[MT2GS-Addon]Charnamen ändern via Coins
Da Infinity letztens das Mini-Release bzw. nenne ich es mal so gemacht hat, zum einfachen Namechange hab ich mir gedacht, ich mach ein Addon drauß.
Das ganze sieht beim nächsten Login Ingame dann so aus:
Vorbereitung:
Zuerst Editiert ihr eure config.inc.php und fügt das unter $serverSettings['pass_mail'] ein:
PHP Code:
$serverSettings['cn_preis']='50'; //Preis einer Namensänderung
Den Preis solltet ihr entsprechend anpassen.
Geht in eure Homepagedatenbank und fügt folgende Query ein:
PHP Code:
DROP TABLE IF EXISTS `name_log`; CREATE TABLE `name_log` ( `id` int(20) NOT NULL auto_increment, `account_id` varchar(50) NOT NULL, `ip_adresse` varchar(50) NOT NULL, `charname` varchar(50) NOT NULL, `datum` datetime NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=latin1;
Die Query ist für das spätere Adminlog, welches ich noch rein editieren werde.
Einbau des Scriptes:
Danach öffnet ihr eure charaktere.php im pages Ordner und fügt folgendes ein:
PHP Code:
<?PHP
if(isset($_SESSION['user_admin']) && checkInt($_SESSION['user_admin']) && $_SESSION['user_admin']>=0) { echo'<h2>Charakter-Übersicht</h2>'; echo'<p>In diesem Bereich können alle Charaktere eingesehen werden. Falls ein Charakter unglücklicherweise in einer Map eingefangen ist, kann er mit Hilfe der "Entbuggen"-Funktion zurück auf die jeweilige Map 1 gesetzt werden.<br/><br/><b>Achtung: Der Charakter muss mindestens 5 Minuten ausgeloggt sein, damit das "Entbuggen" funktioniert!</b></p>'; $cmdChars = "SELECT player.id,player.name,player.job,player.level,player.playtime,guild.name AS guild_name FROM player.player LEFT JOIN player.guild_member ON guild_member.pid=player.id LEFT JOIN player.guild ON guild.id=guild_member.guild_id WHERE player.account_id='".$_SESSION['user_id']."'"; $qryChars = mysql_query($cmdChars,$sqlServ); $x=0; echo'<table> <tr> <th class="topLine">Charakter</th> <th class="topLine">Rasse</th> <th class="topLine">Level</th> <th class="topLine">Spielzeit (Minuten)</th> <th class="topLine">Gilde</th> <th class="topLine">Freundesliste</th> </tr>'; while($getChars = mysql_fetch_object($qryChars)) { $zF = ($x%2==0) ? "tdunkel" : "thell"; echo'<tr> <td class="'.$zF.'">'.$getChars->name.'<br> <a href="index.php?s=reset_char&char='.$getChars->id.'">[Entbuggen]</a><br><a href="index.php?s=cn_request&char='.$getChars->id.'&name='.$getChars->name.'">[Namensänderung (Preis: '.$serverSettings['cn_preis'].' Coins)]</a></td> <td class="'.$zF.'">'.$aRassen[$getChars->job].'</td> <td class="'.$zF.'">'.$getChars->level.'</td> <td class="'.$zF.'">'.$getChars->playtime.' Minuten</td> <td class="'.$zF.'">'.$getChars->guild_name.'</td> <td class="'.$zF.'"> <select name="freundesliste" size="8" style="width:100%;">'; $cmdFriends = "SELECT messenger_list.companion,UNIX_TIMESTAMP(player.last_play) FROM player.messenger_list INNER JOIN player.player ON player.name=messenger_list.companion WHERE account='".$getChars->name."'"; $qryFriends = mysql_query($cmdFriends,$sqlServ); while($getFriends = mysql_fetch_object($qryFriends)) { echo'<option>'.$getFriends->companion.'</option>'; } echo'</select> </td> </tr>'; $x++; } echo'</table>'; } else { echo'<p class="meldung">Sie müssen für diesen Bereich angemeldet sein.</p>'; } ?>
Als letztes erstellt ihr im Ordner pages eine Datei mit dem Name cn_request.php und fügt folgendes ein:
PHP Code:
<?PHP
if(isset($_SESSION['user_admin']) && checkInt($_SESSION['user_admin']) && $_SESSION['user_admin']>=0 && $_SESSION['user_coins']>=$serverSettings['cn_preis']) { echo'<h2>Namensänderung</h2>'; echo'Das ändern des Charakternamens von '.$_GET['name'].' war erfolgreich. Die entsprechenden Coins wurden abgezogen. Es kann sein, das du bis zum nächsten Reboot des Servers warten musst.'; echo'<p><a href="javascript:history.back()">Zurück zur Charakteransicht</a></p>'; $nCoins = $_SESSION['user_coins']-$serverSettings['cn_preis']; $sqlCmd="UPDATE account.account SET coins='".mysql_real_escape_string($nCoins)."' WHERE id='".mysql_real_escape_string($_SESSION['user_id'])."' LIMIT 1"; $sqlQry=mysql_query($sqlCmd,$sqlServ); $sqlUpdate = "UPDATE player.player SET change_name='1' WHERE id='".$_GET['char']."'"; $sqlQry=mysql_query($sqlUpdate,$sqlServ); $sqlLog="INSERT INTO ".SQL_HP_DB.".name_log (account_id,ip_adresse,charname,datum) VALUES ('".mysql_real_escape_string($_SESSION['user_id'])."','".$_SERVER['REMOTE_ADDR']."','".$_GET['name']."','".$sqlZeit."')"; $qryLog=mysql_query($sqlLog,$sqlHp); } else { echo'<p class="meldung">Sie sind nicht angemeldet für diesen Bereich oder sie verfügen nicht über genug Coins.</p>'; } ?>
€dit: Admin_Log:
Eine Datei im Ordner admin in pages erstellen mit dem Namen cn_log.php mit folgendem Inhalt:
PHP Code:
<?PHP if($_SESSION['user_admin']>=$adminRights['cn_log']) { echo'<h2>Admincenter - Namesänderungslog</h2>'; echo'Zur Kontrolle welcher User wann seinen Name geändert hat.'; ?> <table> <tr> <th class="topLine">ID</th> <th class="topLine">AccountID</th> <th class="topLine">IP-Adresse</th> <th class="topLine">Ex-Charname</th> <th class="topLine">Zeitpunkt</th> <th class="topLine">Aktion</th> </tr> <?PHP $sqlCmd="SELECT * FROM ".SQL_HP_DB.".name_log ORDER BY name_log.datum DESC LIMIT 100"; $sqlQry=mysql_query($sqlCmd,$sqlHp); $x=0; while($getName=mysql_fetch_object($sqlQry)) { echo'<tr> <td class="'.$zF.'">'.$getName->id.'</td> <td class="'.$zF.'"><a href="index.php?s=admin&a=users&acc='.$getName->account_id.'">'.$getName->account_id.'</td> <td class="'.$zF.'">'.$getName->ip_adresse.'</a></td> <td class="'.$zF.'">'.$getName->charname.'</td> <td class="'.$zF.'">'.$getName->datum.'</td> <td class="'.$zF.'"><a href="index.php?s=admin&a=name_delete&id='.$getName->id.'"><img src="./img/fail.gif" alt="Löschen"/></a></td> </tr>'; $x++; } ?> </table> <?PHP } else { echo'<p class="meldung">Kein Zugriff auf diesen Bereich!</p>'; } ?>
Eine Datei im selben Ordner wie die Datei cn_log.php erstellen mit dem Namen name_delete.php mit folgendem Inhalt:
PHP Code:
<?PHP if($_SESSION['user_admin']>=$adminRights['cn_log']) { ?>
<h2>Admincenter - Zeile aus dem Namenänderungslog löschen.</h2> <?PHP
if(isset($_GET['id']) && checkInt($_GET['id'])) { $sqlName = "SELECT id FROM ".SQL_HP_DB.".name_log WHERE id='".$_GET['id']."' LIMIT 1"; $qryName = mysql_query($sqlName,$sqlHp); if(mysql_num_rows($qryName)>0) { $sqlName = "DELETE FROM ".SQL_HP_DB.".name_log WHERE id='".$_GET['id']."' LIMIT 1"; if(mysql_query($sqlName,$sqlHp)) { echo'<p class="meldung">Die Namensänderung wurde erfolgreich gelöscht.</p>'; } else { echo'<p class="meldung">Die Namensänderung konnten nicht gelöscht werden.</p>'; }
} else { echo'<p class="meldung">Diese ID existiert nicht.</p>'; } } else { echo'<p class="meldung">Diese ID ist nicht gültig.</p>'; } echo'<p><a href="index.php?s=admin&a=cn_log">Zurück</a></p>'; } else { echo'<p class="meldung">Kein Zugriff auf diesen Bereich!</p>'; } ?>
Ihr müsst in der rights.inc.php im inc Ordner noch eine Zeile hinzufügen die wie folgt aussieht:
PHP Code:
'cn_log' =>4, //Namenänderungs Log ansehen
Die Stufe der Webrechte solltet ihr dementsprechend anpassen.
Fertig. Nun können die User für ihre Coins, eine Charakternamensänderung durchführen. Sie können sich außerdem nicht [GM], [GA] oder ähnliches nennen.
Viel Spaß mit dem Script.
Mit freundlichen Grüßen,
iSէуℓe.
|
|
|
07/08/2011, 12:05
|
#2
|
elite*gold: 0
Join Date: May 2009
Posts: 2,329
Received Thanks: 637
|
Nice
Gefällt mir sehr gut
lg
|
|
|
07/08/2011, 12:09
|
#3
|
elite*gold: 0
Join Date: Jan 2011
Posts: 2,903
Received Thanks: 1,262
|
wow das ist sehr nice
|
|
|
07/08/2011, 12:13
|
#4
|
elite*gold: 60
Join Date: May 2010
Posts: 766
Received Thanks: 1,025
|
when you do that by webpage dont get on the game on real time is bether if you sell the item to change the name only
|
|
|
07/08/2011, 12:15
|
#5
|
elite*gold: 2
Join Date: Sep 2010
Posts: 1,204
Received Thanks: 343
|
really nice^^
jetzt bräuchte man noch ingame einen item dafür^^
thx given!
|
|
|
07/08/2011, 12:17
|
#6
|
elite*gold: 3
Join Date: Jan 2010
Posts: 1,714
Received Thanks: 854
|
Gut wie Lexico schon sagte es wird nicht Direkt übernommen, aber nach ca 20-30 Minuten wird es Übernommen.
Von daher schreibt man einfach noch einenen Hinweis dazu und gut ist, danke dir ^^
|
|
|
07/08/2011, 12:38
|
#7
|
elite*gold: 20
Join Date: Nov 2008
Posts: 741
Received Thanks: 716
|
Soo, Adminlog hinzugefügt, einige Schreibfehler raus gemacht und naja^^ Wer weitere Fehler findet kann sie ja behalten^^
Quote:
Originally Posted by Lexico
when you do that by webpage dont get on the game on real time is bether if you sell the item to change the name only
|
The Player get's the New Name at ne next Login.
A Screen from Ingame what happen after pay Coins:
|
|
|
07/08/2011, 12:56
|
#8
|
elite*gold: 20
Join Date: Jun 2010
Posts: 2,237
Received Thanks: 956
|
Und keine Lücken ?? im script ??
|
|
|
07/08/2011, 12:57
|
#9
|
elite*gold: 20
Join Date: Nov 2008
Posts: 741
Received Thanks: 716
|
Nicht wirklich, weil es immer beim Aufruf Coins abzieht ^^
|
|
|
07/08/2011, 13:04
|
#10
|
elite*gold: 60
Join Date: May 2010
Posts: 766
Received Thanks: 1,025
|
forget lol i dont have read the scripts
UPDATE player.player SET change_name='1' ya with that is perfect for pages
good job
|
|
|
07/08/2011, 13:31
|
#11
|
elite*gold: 205
Join Date: Jun 2010
Posts: 5,334
Received Thanks: 2,510
|
nen item gibt es doch dafür tinktur des Namens
und ne quest bereits auch schon die den namen ändert
lediglich nen relog ist dazu nötig
und den item kann man doch genauso in its packen
hat doch dann den gleichen effekt oder net?
|
|
|
07/08/2011, 13:34
|
#12
|
elite*gold: 20
Join Date: Nov 2008
Posts: 741
Received Thanks: 716
|
Hat es, das Script ist halt für geldgeile ServerAdmins, wovon es ja sicher viele gibt..^^
|
|
|
07/08/2011, 13:36
|
#13
|
elite*gold: 205
Join Date: Jun 2010
Posts: 5,334
Received Thanks: 2,510
|
na ob ich das nun so mach oder die quest einfüg und dann das item in its haue hat doch weniger arbeit als das oO
|
|
|
07/08/2011, 13:37
|
#14
|
elite*gold: 0
Join Date: Jul 2011
Posts: 457
Received Thanks: 119
|
Schick das lässt sich gut ihn meien server einbauen thx given *freu*
|
|
|
07/08/2011, 13:46
|
#15
|
elite*gold: 0
Join Date: Jul 2008
Posts: 1,812
Received Thanks: 1,977
|
Super Sache endlich mal wieder ein brauchbares und gutes Release
Respekt weiter so !
|
|
|
|
|
Similar Threads
|
[ RELEASE / TIPP ] GM Rechte ohne IP @ 2010er Files /// Henniks MT2GS CMS AddOn
02/26/2013 - Metin2 PServer Guides & Strategies - 22 Replies
Ich dachte mir, ich schnorr' paar thx bevor das jemand anderes macht :> ...
Das neue AddOn ermöglicht euch ganz einfaches verwalten von Rechten inGame über das http://www.elitepvpers.com/forum/metin2-pserver-gui des-strategies/557402-release-mt2gs-cms-1-0-a.html #post5136702.
Geht zu euren htdocs oder bei Apache(kein XAMPP) sogenannte data Ordner
geht dann in den Ordner pages => admin
lädt euch den Anhang herunter und entpackt diesen
verschiebt die gadmins.php aus meinen Anhang in...
|
[MT2GS-Addon]Serverkontroll-System
07/28/2011 - Metin2 PServer Guides & Strategies - 32 Replies
Du hast einen Server ? Der Server ist Down, du bist in der Schule, auf der Arbeit oder sonst wo ohne Putty? Deine User regen sich auf, das der Server off ist? Die Zeiten sind vorbei, mit dem Script zum Serverstart über die Homepage!
Vorwort:
Ich bin mal wieder in Teilstimmung also mach ich das mit euch.
Mit der Hilfe dieses Scripts, lässt sich euer Server jederzeit starten oder wieder herunter fahren und das per Homepage. Dieses mal wird es etwas umfangreicher, aber ich kann versichern...
|
Biete Pn System Addon für MT2GS
05/10/2011 - elite*gold Trading - 3 Replies
Ich biete euch ein Pn-System Addon für die MT2GS Homepage von Hennik.+
Funktionen:
Der User hat die Möglichkeit andere Spieler und Teamler zu pnen.
Das ganze besitzt noch ein Profilsystem. Der Absender ist so geschrieben das ein eigener Charname der nur auf dem Acc ist ausgewählt wird, das niemand den Name eines Teamlers faken kann.
Was ist beim Kauf dabei?
Das Script, die Query
|
[MT2GS Erweiterung] eMail Ändern
03/29/2011 - Metin2 PServer Guides & Strategies - 12 Replies
Da mich ein User um ein solches Script gebeten hat, habe ich ganz schnell die passwort.php umgeschrieben und stelle sie natürlich für jeden zur verfügung.
kurzer Screen:
http://www.imageup.de/7065792/changemail.JPG
Download ist im Anhang.
How?
|
Charnamen Ändern ,wie??
08/19/2007 - World of Warcraft - 15 Replies
hi leute ich wollte fragen ob es eine möglichkeit gibt den namen zu ändern wenn man den gm anbetelllt xD
weil habe transfer gemacht vergessen davor auf den server den namen schon zu machen quasi selbst geownd xd
hat wer erfahrung damit?
und kann mir sagen welchen trick es gibt um den charnamen zu ändern??
kann ich z.b sagen
mein freund konnt ihn ändern beim chartransfer ich will auch die möglichkeit oda so=! xd
|
All times are GMT +2. The time now is 17:48.
|
|