Avatarius
11-08-2003, 09:45 AM
Hi,
if not already done, i've fixed the source code for "Start_zones and BindPoints". I've testet it for example with "all" Human Wizards possibilities and it works 100%
so if any of the developers wants to save time, i would be glad to give out the code fixes....
Avatarius
(bad english....i know :)
PS: just forgot....it's for the newest CVS version of EQEmu
Trumpcard
11-08-2003, 11:46 AM
Post the code diffs in this thread and we'll take a look at it..
Thanks
Avatarius
11-08-2003, 12:22 PM
CVS (Original) database.cpp -> Line 12815
if (RunQuery(query, MakeAnyLenString(&query, "SELECT x,y,z,zone_id FROM start_zones WHERE player_choice=%i and player_class=%i and player_deity=%i and player_race=%i", in_cc->start_zone, in_cc->class_, in_cc->deity, in_cc->race), errbuf, &result)) {
CVS (Original) databse.cpp -> Line 12819
if (mysql_num_rows(result) == 4) {
row = mysql_fetch_row(result);
in_pp->x = atoi(row[0]);
in_pp->y = atoi(row[1]);
in_pp->z = atoi(row[2]);
in_pp->zone_id = atoi(row[3]);
mysql_free_result(result);
return true;
}
My suggestion:
if (RunQuery(query, MakeAnyLenString(&query, "SELECT x,y,z,zone_id,bind_id FROM start_zones WHERE player_choice=%i and player_class=%i and player_deity=%i and player_race=%i", in_cc->start_zone, in_cc->class_, in_cc->deity, in_cc->race), errbuf, &result)) {
safe_delete_array(query);
if (mysql_num_rows(result) != 0) {
row = mysql_fetch_row(result);
in_pp->y = atoi(row[0]);
in_pp->x = atoi(row[1]);
in_pp->z = atoi(row[2]);
in_pp->zone_id = atoi(row[3]);
in_pp->bind_zone_id = atoi(row[4]);
mysql_free_result(result);
return true;
}
MYSQL Table for "start_zones" must be changed also:
CREATE TABLE start_zones (
x float NOT NULL default '0',
y float NOT NULL default '0',
z float NOT NULL default '0',
zone_id int(4) NOT NULL default '0',
bind_id int(4) NOT NULL default '0',
player_choice int(2) NOT NULL default '0',
player_class int(2) NOT NULL default '0',
player_deity int(4) NOT NULL default '0',
player_race int(4) NOT NULL default '0'
) TYPE=MyISAM;
-- Values for Human Wizards
INSERT INTO start_zones VALUES (314,-653,3.75,1,2,1,12,396,1);
INSERT INTO start_zones VALUES (138,-710,17.75,9,9,4,12,396,1);
INSERT INTO start_zones VALUES (309,-353,-38.22,45,2,1,12,201,1);
INSERT INTO start_zones VALUES (-38,-250,-94.22,10,9,4,12,206,1);
INSERT INTO start_zones VALUES (314,-653,-3.75,1,2,1,12,207,1);
INSERT INTO start_zones VALUES (138,-710,17.75,9,9,4,12,204,1);
INSERT INTO start_zones VALUES (138,-710,17.75,9,9,4,12,208,1);
INSERT INTO start_zones VALUES (314,-653,-3.75,1,2,1,12,212,1);
INSERT INTO start_zones VALUES (314,-653,-3.75,1,2,1,12,213,1);
INSERT INTO start_zones VALUES (138,-710,-17.75,9,9,4,12,213,1);
and it works :)
--kathgar: I added [CODE] tags
bud9weiser
11-16-2003, 04:46 PM
ok 2 qestions.
1. will this be going into the release
2. if so, what does bind_id equal?
Trumpcard
11-16-2003, 11:38 PM
This didnt make it into the 0.5.0 release, but we can add it for the next one.
What should bind_id equal? What will change this bind_id field when you have your character somewhere else, how does this value change?
Initially , shouldnt all the bind id's be the same as the zone_ids?
Initially , shouldnt all the bind id's be the same as the zone_ids?
As I remember (it was a long time ago, so I may be wrong), when I created my Half-Elf ranger, he first appeared in Surefall Glade, but when he died he would respawn in Qeynos Hills. I don't have access to live any more to confirm this.
Trumpcard
11-17-2003, 12:50 AM
worked that way in halas too.. now i remember..
mangoo
11-17-2003, 03:08 AM
freeport iirc you start by your class guild and then respawn just outside the gates
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.