Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::Windows Servers

Support::Windows Servers Support forum for Windows EQEMu users.

Reply
 
Thread Tools Display Modes
  #1  
Old 05-17-2009, 04:01 PM
Lillu
Hill Giant
 
Join Date: Sep 2008
Posts: 204
Unhappy Restoring custum content after server update..

I'm sorry if I ask something trival, but I can't seem to find information about this and I'm stuck with this..

I have a custom server what I would like to keep up to date with newer eqemu revs. I would like to also keep my peq up to date with the newest peq revs.

How to do these updates without wiping all the custom content of my server?

Thanks in advance!
Lillu
Reply With Quote
  #2  
Old 05-17-2009, 04:42 PM
core
Sarnak
 
Join Date: Aug 2005
Posts: 32
Default

If I understand this correctly your using TortoiseSVN to update right? If you made NPC's and quests you like to save just right click on the appropriate quest/npc in the directories such as /eqemu/quest/zonenamehere/questcharname and chose the TortoisSVN and ADD TO IGNORE LIST. When you update the files next time it will ignore any updates on this item.

If it is items such as new sword etc you need to save the SQL info and such.
Reply With Quote
  #3  
Old 05-17-2009, 04:59 PM
Lillu
Hill Giant
 
Join Date: Sep 2008
Posts: 204
Default

thaks for the quick reply. sorry if I wasn't clear. my question was regarding the db entries. how can I save all the custom db information (npcs, items, zone information, etc) to a sql file? doing so I could just re-source custom content after peq update right? or any other way to stay up to date with peq and still keep my (always changing) custom content?
Reply With Quote
  #4  
Old 05-17-2009, 07:21 PM
LeftRoad
Sarnak
 
Join Date: Aug 2005
Location: Maine
Posts: 38
Default

My brother wrote a tool to do this. It works great for our custom server because we like to cripple things like Death Touch, since it is usually just the two of us playing.

Here's the post...
http://www.eqemulator.net/forums/showthread.php?t=27462

The tool is free. Enjoy

As far as saving and resourcing custom content, my SQL skills are not up to explaining that. We have custom merchants that we have scripts to recreate. Hopefully someone has better instructions for that.
Reply With Quote
  #5  
Old 05-18-2009, 06:02 AM
Lillu
Hill Giant
 
Join Date: Sep 2008
Posts: 204
Default

thanks for the tool, seems great to run scripts. the problem is, I'm missing the knowledge to make those scripts, and this is why I'm hoping for help from an expert server op, how they do save customization, and how they restore it after a eqemu/peq update.

please, anyone?
Reply With Quote
  #6  
Old 05-18-2009, 08:47 AM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

http://www.eqemulator.net/forums/sho...907#post169907
__________________
The Realm
Reply With Quote
  #7  
Old 05-18-2009, 11:12 AM
Lillu
Hill Giant
 
Join Date: Sep 2008
Posts: 204
Default

Thanks Congdar. No wonder I haven't found this post, it was a tad offtopic in that thread..

I'll look into this tonight. Thank again for the help.
Reply With Quote
  #8  
Old 05-18-2009, 02:58 PM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

on windows, you can right click just about anywhere and it brings up a menu that you can select New->Text Document
Do that and rename it to MyUpdates.sql
then inside it is where you keep track of you custom addtions to the database. For example on my server I allow level 70 instead of the default 65, so in MyUpdates.sql I have:
Code:
update rule_values set rule_value='70' where rule_name='Character:MaxLevel';
I also have a custom test npc. The lines with a '#' are ignored by mysql so you can add comments
Code:
#Test npc
insert into npc_types (        name, level, race, class, bodytype,         hp, gender,  texture, helmtexture, size, hp_regen_rate, mana_regen_rate, loottable_id, merchant_id, npc_spells_id, npc_faction_id, mindmg, maxdmg, npcspecialattks, aggroradius, face, runspeed,  MR,  CR,  DR,  FR,  PR, see_invis, see_invis_undead,  qglobal,  AC, spawn_limit,  findable, STR,  STA,  DEX,  AGI,  _INT, WIS, CHA, see_hide, see_improved_hide, trackable, isbot)
                      VALUES ('Test_Dummy',    66,  217,     1,        7,  999999999,      0,        0,           0,   14,           500,               0,            0,           0,             0,              0,      1,      1,           '',          55,  255,      1.9,   0,   0,   0,   0,   0,         0,                0,        1,   0,           0,         1, 192,  192,  192,  192,   192, 192, 192,        0,                 0,         1,     0);
For updates, I use the peq database so I get the latest from the peq db svn.
I have bots on my server so I run the bot_npcs.bat file provided by peq to save the bots from the npc_types table to a bot_npcs.sql file. I've updated it a little for windows:
Code:
mysqldump -u root -p "--where=id in (select botnpctypeid from botsowners)" -x -t peq npc_types > bot_npcs.sql
if 'root' is not your loginname, change it.
Now I open a command window. It is best to open this window and change the directory to where your .sql files are so you don't have to type in paths in the sql commands. In the command window type 'mysql -u LoginName -p' and hit the Enter key. It will ask for my password. These values are also in your eqemu_config.xml file if you forgot them.
Now in the command window it should look like this: mysql>
type in '\u DatabaseName'
your database name could be peq or ax_classic or something else. This \u is to Use that database. I then type in: source drop_system.sql
this will delete all the system stuff but it will leave the player stuff like characters and bot inventory if you use bots. With the fresh download from peq svn, all the newest stuff is in the .gz file that is kinda like a .zip file but it's the linux version. Inside is a .sql file with a real long name. extract it out. Now type in: 'source reallylongname.sql' and hit the enter key. substitue reallylongname for the actual name you extracted out of the .gz file.(winrar is best for windows .gz files).
OK, now for your custom stuff. Type in: 'source MyUpdates.sql' and hit enter. Now type in: 'source bot_npcs.sql' and hit enter.
Hopefully no errors and you're up to date!
__________________
The Realm
Reply With Quote
  #9  
Old 05-18-2009, 07:45 PM
Lillu
Hill Giant
 
Join Date: Sep 2008
Posts: 204
Default

thanks a lot mate, this was exactely the information I was seeking for days now! all seems clear besides one thing. I create a lot of custom content ingame (with GM char) and also with GeorgeS tools. creating custom items, npcs (with custom loot table, spawn groups, etc) etc, seems extremely hard to create manually (if I can make those entries manually at all). is there a way to export those 'automatically' created database entries from peq to MyUpdates.sql?

e.g. I make an NPC in Georges tools. I create a spaw location entry ingame with with my GM using #dbspawn npc_id, then I create custom spawn locations for that spawngroup id, and then I #spawnfix each spawnlocation ingame with my GM.. this is like many many custom db entries in at least 2 separate db tables. any way to 'export' all of this from peq to MyUpdates.sql?
Reply With Quote
  #10  
Old 05-18-2009, 08:53 PM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

sorry, not familiar with those tools. maybe ask in thier forums. they might log the updates and maybe the log file has the sql that was used?
__________________
The Realm
Reply With Quote
  #11  
Old 05-18-2009, 10:07 PM
neiv2
Hill Giant
 
Join Date: Mar 2009
Location: CO
Posts: 183
Default

I've asked about this very thing in the past. Here's a great tool idea--a tool that automatically detects modifications (based on a date range the user specifies, or on a "modified since" date ) and creates an Update SQL file based on those modifications. This would be a tremendous help to those of us who have custom content but inadequate sql knowledge. . . . . Please? : )
Reply With Quote
  #12  
Old 05-18-2009, 10:12 PM
GeorgeS
Forum Guide
 
Join Date: Sep 2003
Location: California
Posts: 1,475
Default

Here you go - might be what you're after


--Extract an NPC and ALL associated spawn tables from Database and create INSERT sql to ADD to another DB
http://wizardportal.dyndns.org/eqemu...PC_from_DB.zip

GeorgeS
__________________
Your source for EQ database tools
Toolshop is open for business


http://www.georgestools.chrsschb.com//
Reply With Quote
  #13  
Old 05-18-2009, 10:54 PM
neiv2
Hill Giant
 
Join Date: Mar 2009
Location: CO
Posts: 183
Default

This looks promising. I have not yet tried this, but have taken a cursory read through it. Just two questions. I have customizations in almost all tables in the db, including:

all faction tables
all grid tables
all guild tables
all spawn tables
items
npc_type
object
zone
zone_points

1. Will this tool pick up the modifications in all of these?

2. Is this tool useful to create the file, then download and install the most recent version of the db, and then apply the customizations in the modification file on top of the new install?
Reply With Quote
  #14  
Old 05-19-2009, 03:38 AM
Lillu
Hill Giant
 
Join Date: Sep 2008
Posts: 204
Default

neiv2 described my issue better than I did. there are many many custom changes, and constantly growing custom content affecting almost every tables.

the tool idea is great. maybe extend all tables with a time-stamp field (filled with actual date upon changes) and use it for a backup tool as neiv2 described to save custom changes? I truly hope there is an sql master somewhere out there with passion to write a tool like that. /grin GeorgeS
Reply With Quote
  #15  
Old 05-19-2009, 07:10 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

The most important thing is that you backup your entire database as well as your entire quests directory before making any changes. I always keep multiple previous backups just in case. It is a good idea to store the backups on a separate drive in the case that your current one fails.

As for updating to PEQ when you have a variety of custom content, I think your options are pretty limited. Some things are easy to update, but others are not easy at all.

You can update your items table by simply making a dump of the PEQ items table and then remove the top part that deletes the table and recreates it. Then just source that table in on top of yours and it will error for all that already exist so it doesn't overwrite any customization you have done to current items or new items you have created, but it will add in any that you don't currently have in there already.

You can also update other tables like the AA related tables without having to do anything special at all, as long as you haven't customized it at all.

For updating spawns and loot and such, that is no easy task. This is because you will run into issues with NPCs spawning that you may have deleted, or spawn points or loot drops or whatever that overlap what you already have set. I don't know of any way to update these smoothly, so I just leave them as they are. I don't personally care about non-custom zones on my server, so I could care less if they are updated or not.

You should also be able to update tradeskill tables if you don't have any custom recipes. Pretty much any table that you don't have custom stuff in should be ok to do a normal update on.

For quests, download the quest directory and delete out any folders named after zones you have customized, and then just copy the remaining ones into your quests folder and let them all overwrite the existing ones.

I am sure more updating is probably possible, but this really isn't anything that can be done easily or cleanly without a considerable amount of work to get things back to normal.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
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 03:16 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