|
You last visited: Today at 11:31
Advertisement
[Release] Startlevel / Anfangsmap setzen (ohne Source, ohne Quest)
Discussion on [Release] Startlevel / Anfangsmap setzen (ohne Source, ohne Quest) within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.
08/03/2015, 06:09
|
#16
|
elite*gold: 0
Join Date: Aug 2012
Posts: 749
Received Thanks: 188
|
Ressourcen schmecken gut.
|
|
|
08/03/2015, 06:29
|
#17
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by Jоe
Ressourcen schmecken gut.
|
Ich denke mal das soll eine Anspielung auf Performance fressend sein.
Gut, wenn du der Meinung bist, dass das Verändern von einzelnen Werten beim Insert viel Leistung kostet, dann liegst du richtig.
Der Trigger wird nur ausgeführt, wenn ein neuer Spieler in die Datenbank eingetragen wird. Danach nicht mehr.
Ein Trigger muss ja auch nicht jedes mal neu verarbeitet werden. Die Datenbank verarbeitet den Trigger beim Erstellen des Triggers. Deshalb kostet ein solcher Trigger der Datenbank kaum einen messbaren Mehraufwand.
|
|
|
08/03/2015, 07:15
|
#18
|
elite*gold: 399
Join Date: Sep 2011
Posts: 5,323
Received Thanks: 3,938
|
Quote:
Originally Posted by Jоe
Ressourcen schmecken gut.
|
Da frisst es vermutlich mehr Ressourcen per Quest eine Schleife laufen zu lassen, die 105 Level lang die EXP für das passende Level gibt..
|
|
|
08/03/2015, 18:20
|
#19
|
elite*gold: 0
Join Date: Jan 2014
Posts: 1,583
Received Thanks: 2,397
|
Wie immer ein sehr nützliches release danke
mfg
|
|
|
08/03/2015, 18:45
|
#20
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by Seחsi
Anfangsmap:
Zuerst muss diese Tabelle erstellt werden:
Code:
CREATE TABLE startmaps (
empire int(1) NOT NULL,
x int(11) NOT NULL,
y int(11) NOT NULL,
map_index int(11) NOT NULL,
PRIMARY KEY(empire)
);
in diese Tabelle kann für jedes Reich eine Startmap eingetragen werden. Der Trigger liest immer aus dieser Tabelle aus, er muss also zum Ändern der Map nicht bearbeitet werden. Wenn der Trigger keine Werte in der Tabelle findet, nimmt er die Standardmaps.
Code:
delimiter //
CREATE TRIGGER startmap
BEFORE INSERT ON player
FOR EACH ROW
BEGIN
DECLARE playerEmpire INT;
SET playerEmpire = (SELECT empire FROM player_index WHERE id = NEW.account_id LIMIT 1);
DECLARE new_x INT;
DECLARE new_y INT;
DECLARE new_map_index INT;
SET new_x = (SELECT x FROM startmaps WHERE empire = playerEmpire LIMIT 1);
SET new_y = (SELECT y FROM startmaps WHERE empire = playerEmpire LIMIT 1);
SET new_map_index = (SELECT map_index FROM startmaps WHERE empire = playerEmpire LIMIT 1);
IF new_x IS NOT NULL AND new_y IS NOT NULL AND new_map_index IS NOT NULL THEN
SET NEW.x = new_x;
SET NEW.y = new_y;
SET NEW.map_index = new_map_index;
SET NEW.exit_x = NEW.x;
SET NEW.exit_y = NEW.y;
SET NEW.exit_map_index = NEW.map_index;
END IF;
END;//
delimiter ;
Einfügen einer Startmap:
Code:
INSERT INTO startmaps (empire, x, y, map_index) VALUES (EMPIRE_ID, GLOBAL_X, GLOBAL_Y, MAP_INDEX) ON DUPLICATE KEY UPDATE x = GLOBAL_X, y = GLOBAL_Y, map_index = MAP_INDEX;
Text | ersetzen durch |
---|
EMPIRE_ID | Empire ID | GLOBAL_X | Die globale X-Koordinate für den Start | GLOBAL_Y | Die globale Y-Koordinate für den Start | MAP_INDEX | Der Mapindex der Startmap |
das Ganze auf der Datenbank "player" ausführen.
|
Das ists
|
|
|
08/04/2015, 03:11
|
#21
|
elite*gold: 0
Join Date: Jun 2013
Posts: 81
Received Thanks: 33
|
thats nice
|
|
|
08/04/2015, 10:41
|
#22
|
elite*gold: 534
Join Date: Mar 2014
Posts: 1,614
Received Thanks: 983
|
Sauber, Sensiskills eben ;P
|
|
|
08/04/2015, 11:42
|
#23
|
elite*gold: 0
Join Date: Aug 2012
Posts: 974
Received Thanks: 89
|
das funkt jetzt wie und wie bring ich das zum laufen^^
|
|
|
08/04/2015, 12:41
|
#24
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by thespeedyy
das funkt jetzt wie und wie bring ich das zum laufen^^
|
Einfach die Query ausführen
|
|
|
08/08/2015, 11:54
|
#25
|
elite*gold: 0
Join Date: Feb 2014
Posts: 269
Received Thanks: 114
|
Thanks Sensi, echt fresh von dir :-)
|
|
|
08/22/2015, 21:47
|
#26
|
elite*gold: 0
Join Date: Aug 2015
Posts: 24
Received Thanks: 2
|
Also habe beides in die Player gemacht aber geht trd net ka was ich flasch mach
|
|
|
08/22/2015, 23:34
|
#27
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Hast du auch die Tabelle mit den Werten gefüllt?
|
|
|
08/22/2015, 23:36
|
#28
|
elite*gold: 0
Join Date: Aug 2015
Posts: 24
Received Thanks: 2
|
*** sind gefüllt
|
|
|
08/23/2015, 01:52
|
#29
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Zeig mir mal die gefüllte tabelle
|
|
|
08/23/2015, 12:31
|
#30
|
elite*gold: 0
Join Date: Aug 2015
Posts: 24
Received Thanks: 2
|
|
|
|
Similar Threads
|
[Release] Itemzerstörer-Quest (für die, die ohne Source arbeiten)
03/29/2015 - Metin2 PServer Guides & Strategies - 4 Replies
Vorweg muss gesagt werden, dass es natürlich mit dem Source viel schöner geht (siehe Inception2). Allerdings gibt es immernoch sehr viele Leute, die ohne diesen arbeiten. Für genau diese Leute könnte folgende Quest ein guter ersatz für die normalen Itemzerstörer über NPCs sein.
75%
video: https://www.youtube.com/watch?v=giQtvfSASks
75%
Die Quest:
|
[How to]Anfangsmap setzen
04/16/2011 - Metin2 PServer Guides & Strategies - 22 Replies
Hey,
da iMer seine Anfangsmap gepubbt hat, will ich mal zeigen wie man man es schafft das man am Anfang dadrauf kommt!
1. Methode:
Für z.B. Blaues Reich:
Einfach die Anfangsmap mit der Map ersetzen sprich: outdoor_c1.epk entpacken alles ersetzen und wieder packen!
Nun noch Serverside anpassen und fertig ;)
2.Methode:
Quest!
|
All times are GMT +2. The time now is 11:31.
|
|