Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Database/World Building

Development::Database/World Building World Building forum, dedicated to the EQEmu MySQL Database. Post partial/complete databases for spawns, items, etc.

Reply
 
Thread Tools Display Modes
  #1  
Old 06-12-2015, 05:01 PM
freakydeekey
Fire Beetle
 
Join Date: Jan 2003
Posts: 15
Default Rec/Req levels

Is there a way to remove the req and rec level from items, i have tried creating, modifing items through phpeditor and the EOC and even though the editor shows it removed, it still has it listed in game... have also done direct sql queries, no dice.. any help would be appreciated
Reply With Quote
  #2  
Old 06-12-2015, 05:04 PM
Shendare
Dragon
 
Join Date: Apr 2009
Location: California
Posts: 814
Default

Did you restart your server after making the changes?
Reply With Quote
  #3  
Old 06-12-2015, 05:18 PM
freakydeekey
Fire Beetle
 
Join Date: Jan 2003
Posts: 15
Default

yes, i did, even went as far as restarting entire OS. no dice.
Reply With Quote
  #4  
Old 06-12-2015, 05:23 PM
Shendare
Dragon
 
Join Date: Apr 2009
Location: California
Posts: 814
Default

So, pretending you're attempting to make Item 50153 available at full stats to characters of any level, you changed both reclevel and reqlevel to 0, and restarted the server, but they're still showing as required and recommended levels for that item in-game?

Relevant SQL code would be:

Code:
UPDATE `items` SET `reclevel`=0, `reqlevel`=0 WHERE `id`=50153;
Reply With Quote
  #5  
Old 06-12-2015, 05:30 PM
freakydeekey
Fire Beetle
 
Join Date: Jan 2003
Posts: 15
Default

right, i was trying to do query for entire server thus i did

UPDATE `items` SET `reclevel`=0, `reqlevel`=0 WHERE `id`=%;


i am newb to this, but learning fast, this is tripping me up though
Reply With Quote
  #6  
Old 06-12-2015, 05:34 PM
Shendare
Dragon
 
Join Date: Apr 2009
Location: California
Posts: 814
Default

Ahh, gotcha. Just drop the WHERE `id`=% bit.

I can see what you were attempting, but it wasn't quite right. % is used for text fields, and is accompanied by the LIKE keyword.

You could use it for things like matching on item name.

Code:
UPDATE `items` SET `reclevel`=0, `reqlevel`=0 WHERE `name` LIKE '% defiant %';
But when it comes to numbers, there's no such matching. You can use "WHERE `id` IN (1, 2, 3, 4, 5, 6)" or "WHERE `id` BETWEEN 1001 AND 1009" or "WHERE `id`>0", but the percent sign isn't used for number field matching.
Reply With Quote
  #7  
Old 06-12-2015, 05:35 PM
freakydeekey
Fire Beetle
 
Join Date: Jan 2003
Posts: 15
Default

ok thanks, im going to give it a try right now, ill update once tested
Reply With Quote
  #8  
Old 06-12-2015, 05:40 PM
freakydeekey
Fire Beetle
 
Join Date: Jan 2003
Posts: 15
Default

I ran that query without the WHERE portion, i also ran it directly on the item i created. no errors, EOC shows the item without the level restrictions, but once i load into game and #si the item it has the level restrictions...im truly not getting it.
Reply With Quote
  #9  
Old 06-12-2015, 05:47 PM
Shendare
Dragon
 
Join Date: Apr 2009
Location: California
Posts: 814
Default

The statement to run is:

Code:
UPDATE `items` SET `reclevel`=0, `reqlevel`=0
If you:

1. Run it on the correct database in Navicat/HeidiSQL
2. Restart the server (including shared_memory)
3. Log into the game and summon the item

Then I don't think there is any way to not see the updated results.

It has to be the same database in #1 that your server is using in eqconfig.xml. And you have to do #2 after verifying #1.
Reply With Quote
  #10  
Old 06-12-2015, 05:59 PM
freakydeekey
Fire Beetle
 
Join Date: Jan 2003
Posts: 15
Default

Thank you much, apparently i did all the DB stuff correct, but shared_memory was a step i was forgetting! i literally just set this linux server up, and have been typing the commands in manually. havent set up a script to start the server. ill have to learn a bit more linux before i get into BASH :P

Thanks again!
Reply With Quote
  #11  
Old 06-12-2015, 06:06 PM
Shendare
Dragon
 
Join Date: Apr 2009
Location: California
Posts: 814
Default

Glad you found the problem!

Yeah, shared_memory is a necessary step whenever the database is changed, so it's generally at the top of the list in load scripts.

It loads the server-wide data from the DB and makes it available to each zone instance so they don't have to load their own separate copies to work from.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 10:37 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3