How do I stop players from spawning in Crescent Reach?
I don't even see it as an option in the start_zones table!
I changed it so that players start in the old Freeport rather than the new one, and now they spawn in Crescent Reach whenever you try to create one in Freeport! |
Titanium clients will spawn wherever it says in startzone in the Variables table. There are also start zone variables in rule_values.
|
I don't see anything in rule_values or variables that lets me select player start zones.
|
Its a custom rule..
To enable it you need to insert it into your db.. If you set SOFstartzone to -1 and remove the tutorial option then whatever you set in the "variables" table for startzone will send "everybody" there, to the zones safe coords.. ie... Code:
Code:
|
Quote:
Also, I'm getting an issue where new players that pick "East Freeport" or "West Freeport" on the character creation menu start in Crescent Reach. |
errr. you can put whatever zone name you want there, and my example is tutorial A not B, because thats where I send players too, remember tutoriala, the small jail cell where you first meet Arias and have to kill the kobold.......Again if you want Crescent Reach, put Crescent Reach...Put whatever you want, sorry if I wasnt clear...
|
Another example:
Code:
INSERT INTO `variables` (`varname`,`value`,`information`) VALUES |
Quote:
Maybe I'm the one that's not being clear... I do not want players to spawn in Crescent Reach. At all. Ever. I went through and replaced all of the starting zone entries that pointed to the new Freeport to Zone ID 9, which is freportw, the old classic Freeport. When I create a new human warrior, even if I pick East Freeport, the new character starts in Crescent Reach. I do not know why they are starting there or how to make them start where I told them to start. |
Apologies...Have you shut down and restarted the server after making your db changes?
If so, perhaps there is an issue in your tables as the server will default you to Crescent Reach if it cant find good info in the db: Code:
{ |
That's the thing, I don't THINK there's an error. I changed the start_zone and zoneid fields from 382 (or 383) to 9 and got the xyz coordinates from in-game. There's no reason I can think of why players shouldn't be able to spawn there.
|
You can use this to see how your rules are set, these must be set to the zone you want people to start in.
Code:
SELECT * FROM rule_values WHERE rule_name IN ("World:SoFStartZoneID", "World:TutorialZoneID"); Code:
UPDATE start_zones SET x = 'VALUE', y = 'VALUE', z = 'VALUE', heading = 'VALUE', zone_id = 'VALUE', start_zone = zone_id, bind_x = x, bind_y = y, bind_z = z; |
Quote:
|
By chance is the "tutorial" button enabled when the character is created, I assume you may have reassigned the tutorial zone to 0 and its trying to send your characters to tutorial, but when it cant find a proper zone id it craps out to its last choice which is Crescent Reach. Perhaps try disabling the tutorial button as well..
I built a new peq today, and created a human agnostic monk. If I have tutorial enabled, world will spit out: Code:
No starts_zones entry in database, using defaults Then created new human agnostic monk and unclicked tutorial: Code:
Found starting location in start_zones What does your world report after creating new chars, and by chance have you changed the WorldTutorialZoneID? |
Quote:
People aren't spawning in the tutorial zone, they're spawning in Crescent Reach when I choose to spawn in Freeport. This issue only happens when I try to have someone spawn in the OLD Freeport. Spawning in Qeynos works just fine for human characters, but any time I pick either West Freeport or East Freeport off of the list of starting zones, I spawn in Crescent Reach instead. The tutorial button is not clicked. To reiterate: I changed all of the start_zone entries that were aimed at the NEW Freeport zones to the OLD Freeport zones, and I updated the XYZ coordinates to a valid location. Attempting to start in Freeport instead spawns players in Crescent Reach. There is no server error feedback indicating why this is happening, and I cannot find anything in the start_zones entries pointing to Crescent Reach either. |
FFS read what IIIIIIIII IIII TYPE....
Im done with you |
Are you sure the client you're using has the old zones? Would you mind using #zone to go there and see if it works, if it doesn't, that's why it's putting you in Crescent Reach, if you can go there, the problem lies elsewhere.
|
Quote:
Quote:
As per the piece of code you quoted earlier: Code:
in_pp->x = atof(row[0]); Quote:
|
Update
Okay, I'm getting an error message now (or, at least, I'm looking at the correct window now) and I can see what's screwing up, but have no idea why, unless it's something hardcoded into the client or server? Code:
[Status] SoF Start zone query: SELECT x,y,z,heading,bind_id FROM start_zones WHERE zone_id=383 AND player_class=2 AND player_deity=204 AND player_race=1 |
Can you post some pictures of your rule_values and start_zones settings perhaps?
|
Quote:
http://i.imgur.com/5oExaqE.png There's the relevant part of my rules. As you can see, I have SOFStartZoneID set to -1, so the server shouldn't care if the player is using an SOF+ client or a Titanium client. http://i.imgur.com/ulEPyqS.png These were all previously set to either 382 or 383 (the newer Freeport zones). I changed them all to 9 (freportw, the classic West Freeport). As I indicated above, I am receiving an error output from my server because, for some reason, it is still trying to spawn players in zone 383, and is erroring out because it cannot find an entry for 383, which make sense, because I removed it, because I don't want players spawning in 383. An idea just occurred to me... There are two entries...a zone_id, and a start_zone....which one of those ACTUALLY controls where you spawn? Is it possible that start_zone is just what the server looks for, but zone_id is the actual zone it attempts to spawn you in? Edit: Nevermind, that's not it. zone_id is what it looks for AND where it spawns you. I just checked. So the real question is WHY is it asking for 383? Is the CLIENT asking for 383? If so, how do I change that? I don't want ALL of my players spawning in the same zone, so using that sort of workaround isn't really acceptable. |
Here is what my settings look like:
Rule Values: http://i.imgur.com/VtujPC1.png Start Zones: http://i.imgur.com/PezjdS7.png |
Some "people" dont appreciate being referred to as "people" when said "person" is trying to help, instead they get this rude note,
Quote:
Quote:
Quote:
|
Quote:
This seems like a really stupid problem to have, and simply changing the start_zone should work, but it doesn't, and I'm at a loss as to why specifically because I'm new to this and don't have all of the answers. Kingly_Krab You seem to have everyone spawn in the same zone, though. That's fine, but what I want to do is simply make it so that newbies start in the old Freeport instead of the new one, and I'm starting to suspect that it may require a source code change to do that. I still don't know why my server is still saying "WHERE zone_id = 383", but that's why it's not working. It's still looking for the Freeport revamp, and when it fails to find that, it defaults to Crescent Reach. |
What client are you using? I know on live you can no longer start in anywhere but CR, and I'm not sure if RoF acts like this and it could be causing problems?
|
Last resort question, did you restart your server or #reloadallrules after doing all of this? Or are you doing it live without reloading or anything?
|
char_create_combinations table is what your looking for, change that plus the start_zones table
|
Quote:
|
Quote:
|
Quote:
|
Here is the code that processes the create character zone selection: https://github.com/EQEmu/Server/blob...ient.cpp#L1473
I don't have a database in front of me or I'd trace the logic... |
Quote:
Edit: Also, would expanding that table allow clients to perform more race/class combinations at character creation? |
Quote:
|
Success!
Changing the value in the char_create_combinations table fixed the issue! That's where the server was pulling that value from! Thanks Furniture! And thanks Kingly_Krab, too! I will experiment with more race/class combinations next! |
Are you able to get humans with underfoot to spawn in old west freeport? I am trying this now and Im having issues.
|
Quote:
What I did was change the entry in char_create_combinations to 9, then changed the same values to 9 in start_zones, along with providing the correct xyz coordinates. The trick is that it searches for an entry in start_zones that matches the entry found in char_create_combinations. Those two have to match. |
All times are GMT -4. The time now is 02:04 PM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.