EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Development::Database/World Building (https://www.eqemulator.org/forums/forumdisplay.php?f=596)
-   -   New Years resolutions anyone? (https://www.eqemulator.org/forums/showthread.php?t=22209)

Angelox 12-29-2006 12:50 AM

New Years resolutions anyone?
 
You see, we have a big problem here; No standard database to build on. We got EQ, which was Cavedudes contribution as a database for everyone to use - then we got PEQ, which is sort of a database that everyone has a "limited" access. then we got mine, which I started because no one would post public updates to their work. basically I'm a "one man band" - you know, harmonica in the mouth, bass drum in-between my legs, etc. , when it comes to database building -
What is the point here? are we going to continue with our personal "agendas" tell we get tired and quit, basically leave EqEmu with out a good. solid PUBLIC database for another year, or are we going to make some changes?
Why don't we get together, merge everything we have and start from there? I haven't went over to anybody's project, simply because I have done way too much work, not just packet spawning, but long, pain-in-the ass work, that should not have to be done over again by me or anyone else.
If someone offered to merge it (AX_PEQ) into a public database, together with all the other db that would accept updates and post regular db updates, then I would go for that.
The EqEmu source has a system that works pretty well, even with the few Devs atm. I can't understand why the MySql database doesn't?
I know we have people in this forum right now that are interested in this.

John Adams 12-29-2006 01:47 AM

Angelox, while your efforts are monumental compared to most, I have to disagree that no one else offers any input to "the public database(s)". Yes, there are 3+ databases floating around. Cavedude (I thought) abandoned his-own-private-works for PEQ, so that sorta combines 2 efforts into one. ax_peq has been blessed as an official database (something you should be very proud of!) in the installer package. Aside from raw PEQ and ax_peq, anyone elses "private" work is their own, really. Doesn't mean it fits into the PEQ philosophies.

And I know for a fact many people (including myself) post SQL updates to zones, doors, etc... many code and quest fixes/additions.

I feel the community is living and breathing well. It may feel like a burden to you to carry an entire database on your own shoulders, but you also admittedly have lots of spare time - most of us do not. :) Plus, this makes you a celebrity! Can I have an autographed picture of your avatar pls? :D :D

I (personally) do what I can here, mostly helping others with info if I know the answer. I hope to do more, but time is limited. And I don't know C++ so well. Maybe someday.

Zengez 12-31-2006 04:59 PM

I dunno, I kind of agree with Angelox here, Which is why I wanted to institute something along the lines of a wiki style database server... which was laughed out of hand and dismissed, oh well.

But I think what Angelox is more aiming toward isn't the fixes and patches and items that are addressed as a community things (i.e. doors, quests, and zone lines) but rather the raw and pain in the ass spawning of a ton of mobs throughout all the zones that aren't being touched. I know Angelox is ALSO talking about doors and zonelines etc, and that shouldn't be by any means overlooked as without them it doesn't really matter too much if stuff is spawned correctly, but at the same time being able to zone into an empty zone isn't much of an accomplishment either.

Seems to me the problem is that people are going one of two routes;

One: This is an Emulator, and as such, should be open to customization and so it doesn't matter if we aren't spawning things similiar to live, as that isn't the point,

Two: We don't even have all the stuff that we have 'done' finished, so lets finish that and fine tune it before we move on.

My response to these are as follows;

One: Very true, and a perfectly good point, if you just want to build your own world, litterally, custom tailor your own spawns and zones, great, and good luck, you needn't care any further. (this is arguable, but I'm tired and I'll leave that to someone else)

Two: Also a good point, but as has been said so very many times, this isn't live, this is an emulator. As such it will nearly be impossible to make zones exactly the same. Even if we got everything spawned as perfectly as possible, a bunch of other things are still broken. More importantly, I'd argue (in my currently limited capacity) that having most all the zones 90% spawned is far better than having 20% of the zones 100% spawned. Most of the spawn work is not terribly difficult at all, just mass production of static and/or basic roaming mobs. The other 10% is the quest triggers, named spawns, and special loot stuff that takes actual knowledge of the spawning system and time to dedicate to correctly crafting, and as a result might be beyond the abilities of a large portion of basic admins and spawners.

But, here is my issue with this, I simply don't know the stats of the mobs.
Sure, I could go about spawning mobs and probably getting the pathing right, and I'd have a bunch of lvl 1 mobs with 10 hit points and no damage wandering around the countless zones as glorified placeholders for whatever they should be. I've even re-activated my account in live to try and gather some data to get better info on spawns, but that will still take far too much effort than what it's worth, since at most I get some very rough damage stats and some equally inaccurate hit point guestimates.

So, Thats why I think something that may be a good start would be for people with true massive population experience to type up a thread on how they decide stats for mobs. Things like what really goes into the max damage in a mob, will their strength matter? or is it entirely off the 'maxdmg' stat? how many hitpoints do mobs tend to have by level and expansion? dmg? special abilities? etc etc...

Finally, perhaps a semi-public server if wiki is such a terrible idea, where we have a select few that are allowed to log into a 24/7 server and spawn as they desire to ballpark a full pop of every zone in as short a time period as possible, even if the mobs aren't quite right, or some zones are only half spawned, it's better than nothing. I myself stopped truely exploring expansion zones since PoP so my experience is limited, especially since I never did any Raiding, so there isn't much for me to go on, but I'm sure others have. If this were done then more serious database developers like Angelox and the PEQ team would merely have to make (hopefully) minor edits, some tweaks, and some crafting of quest mobs and whatnot, and the database could grow and develope much easier since the bulk work would be more or less completed.

Anyways, thats my 2 cents, perhaps it will spike some debate and get somewhere /shrug

EDIT:: As a clarification, that semi-private server would just be a database breeding ground, the updates would be made public and everything would thus would be for the good of the community.

rojadruid 12-31-2006 06:13 PM

On a personal note I plan to try to quit smoking.

CrabClaw 12-31-2006 10:34 PM

Resolution #1: to help write as many quests as I can, now that I have learned a simple knowledge of *.pl quest coding (I helped I did know Java).

Resolution #2: Don't make resolutions(hehe - joking).

Yes! By all means! You have to accept you can never be 100% live like. So it is far batter to have more zones well spawned, and organized to be playable then being by the book about things. Besides it opens the door to make some improvements to things as well (EQ-Live still has a ton of unfinished stuff and broken quests). Even on Live they re-shuffled and re-did zones so all the old world content (Freeport, Oasis, Commonlands, Nek, and the like. Even the PoN was re-balanced back in just-pre-OoW days), and is really open for reinterpretation. So I say make the old zones a good inspired-by-live play re-do, and give yourself some license for creative additions (more modern drops and updated quests, new Nameds and such).

Oh and by the way,

Happy new Year!

John Adams 01-01-2007 11:01 AM

What I'd like to see for EQEmu'2007:
-- Drive a stake in the ground and name a new "stable" build. I propose focused, organized testing by the Emulator community players and admins. There are test plans posted in the Wiki (which are in dire need of updating), everyone should take a chunk and go to town, report bugs, get them fixed. If a dev or two knows that for a month, community members will be posting details on specific bugs, maybe they will offer their time to help stablize the code.

-- Wikiwakkawoo my gods, please start updating the Wiki! This is my personal resolution, because this is absolutely something any of us are capable of doing. If we see posted info that might help others, let's start adding it to the wiki. We've preached it, now let's do it.

-- Bring the spawns for newer zone layouts up to Titanium standards. If you are going to say "Titanium only", the data should support that client, not just 6.2. Renaming lavastorm.eqg is not moving forward, nor supporting the only "legal" client for this emulator.

-- A repository for fixes that isn't a VBulletin code tag! If we make Diffs, I'd like to see a file upload area where we can stick these raw snippets of text. A forum is no place to paste code fixes. Many people have pointed links back to their own shares, but those go inactive almost as quickly as they appear. History lost. This goes for databases, too. God forbid, what if Angelox or GeorgeS got pissed off and closed their sites? A year from now, we'd be begging someone to post their database or tools from the archives. :)

-- Quest Helpers. So much effort is being put into making quests more stable, add missing ones, or create custom ones to aid lower population servers. I'd like to see more dev help (or maybe a nice tutorial how to add functionality to the questmgr) so quest writers lives will be easier. While the current system works quite well, there are some things you simply cannot do... yet. Also, finding someone dedicated to incorporating all this quest work into an official package would ensure 1) acknowledgement and 2) preservation of effort. The PEQ /quests site is perfect for this, but seems understaffed (?)

-- More awareness that community input IS acknowledged. It seems there is this cloud that pops up once in a while, members posting that no one but a small handful do anything. If you shovel through the archives over the past 3 years, it would become evident how many people offer their time, expertise, and solutions, but vanish after burnout or feeling ignored. People contribute here, daily. It's time we notice that and be happy it's as good as it is. However...

-- And finally, to go along with the theme of this thread, more community members who CAN code, helping with the base effort and not just their own server(s). Customizing is great, but if you fix a core bug while customizing your server, please share the core fix it so this project continues to move forward. Like Boats. How many times has this been fixed, then re-broken? :)

Ok, flame away. And yes, Mattmeck - I volunteer to do EVERYTHING myself ~yawn~ ;)

sfisque 01-01-2007 11:19 AM

my resolutions
 
Fix or find a work-around for bind-zone-disconnect-on-death bug

This one irritates me to no end. i've poured through the code for days on end, down several dead ends and finally back to start. i'll get it sooner or later.


Split the database imports

The database imports need to be split into specific tables so that people can "update" or "diff" specific sections if they have custom mods they do not want to whack. a good example, importing the faction fixes from wildcardx would be great without having to whack the entire database.

== sfisque

Angelox 01-01-2007 01:57 PM

I didn't mean to harp on anyone here with my post. I know a lot of you all out there are doing what you can, and have helped me out a lot. I really appreciate that.

ArChron 01-02-2007 06:20 AM

New Years Resolutions?

Get off my butt and finally put together the Rails project that has been stewing around in my head since I found EQEmu, and wanted to figure out the database.

I use MySQL 5, and have a few trivial items constructed to help make sense of the DB... like adding a classes table and a races table so that I can see real names of values in a query...

Code:

USE `ax_peq`;
CREATE TABLE `ax_peq`.`classes` (
  `class_id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID',
  `class_name` CHAR(30) DEFAULT 'Un-named' COMMENT 'Class Name',
  PRIMARY KEY(`class_id`)
)
ENGINE = MYISAM;

USE `ax_peq`;
INSERT INTO `classes` (`class_id`,`class_name`) VALUES ( 1, 'Warrior');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES ( 2, 'Cleric');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES ( 3, 'Paladin');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES ( 4, 'Ranger');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES ( 5, 'Shadow Knight');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES ( 6, 'Druid');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES ( 7, 'Monk');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES ( 8, 'Bard');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES ( 9, 'Rogue');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (10, 'Shaman');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (11, 'Necromancer');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (12, 'Wizard');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (13, 'Magician');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (14, 'Enchanter');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (15, 'Beastlord');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (16, 'Berserker');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (20, 'GM Warrior');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (21, 'GM Cleric');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (22, 'GM Paladin');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (23, 'GM Ranger');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (24, 'GM Shadow Knight');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (25, 'GM Druid');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (26, 'GM Monk');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (27, 'GM Bard');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (28, 'GM Rogue');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (29, 'GM Shaman');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (30, 'GM Necromancer');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (31, 'GM Wizard');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (32, 'GM Magician');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (33, 'GM Enchanter');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (34, 'GM Beastlord');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (35, 'GM Berserker');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (40, 'Banker');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (41, 'Shopkeeper');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (60, 'Adventure Recruiter');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (61, 'Adventure Merchant');
INSERT INTO `classes` (`class_id`,`class_name`) VALUES (63, 'Tribute Master');

and you can create some views out of SELECTs that are useful as well...

Code:


SELECT s.id, s.race, r.race_desc, s.class, c.class_name, s.zoneid,
  z.long_name, s.itemid, i.Name, i.filename FROM starting_items s
  INNER JOIN classes c ON s.class=c.class_id
  INNER JOIN races r ON s.race=r.race_id
  INNER JOIN items i ON s.itemid=i.id
  INNER JOIN zone z ON s.zoneid=z.zoneidnumber
  ORDER BY s.race, s.class;

and

SELECT l.id, l.name, e.item_id, i.Name AS itemName, e.chance FROM lootdrop l
  INNER JOIN lootdrop_entries e ON l.id=e.lootdrop_id
  INNER JOIN items i ON e.item_id=i.id
  ORDER BY l.id;

I can build stuff as I have time, but there's a fairly steep curve for the database, so it's largely hunt and peck thus far.

ArChron 01-02-2007 06:24 AM

Here's half of the the races table, which made the last post too long to, well, post, so combine this code segment with the next code segment for the full SQL.

Code:


USE `ax_peq`;
CREATE TABLE `races` (
  `race_id` INTEGER NOT NULL COMMENT 'ID',
  `race_desc` CHAR(60) NOT NULL DEFAULT 'Un-named' COMMENT 'Description',
  PRIMARY KEY(`race_id`)
)
ENGINE = MYISAM;

INSERT INTO `races` VALUES (0,'Soldier')
INSERT INTO `races` VALUES (1,'Human')
INSERT INTO `races` VALUES (2,'Barbarian')
INSERT INTO `races` VALUES (3,'Erudite')
INSERT INTO `races` VALUES (4,'Wood Elf')
INSERT INTO `races` VALUES (5,'High Elf')
INSERT INTO `races` VALUES (6,'Dark Elf')
INSERT INTO `races` VALUES (7,'Half Elf')
INSERT INTO `races` VALUES (8,'Dwarf')
INSERT INTO `races` VALUES (9,'Troll')
INSERT INTO `races` VALUES (10,'Ogre')
INSERT INTO `races` VALUES (11,'Halfling')
INSERT INTO `races` VALUES (12,'Gnome')
INSERT INTO `races` VALUES (13,'Aviak')
INSERT INTO `races` VALUES (14,'Were Wolf')
INSERT INTO `races` VALUES (15,'Brownie')
INSERT INTO `races` VALUES (16,'Centaur')
INSERT INTO `races` VALUES (17,'Golem')
INSERT INTO `races` VALUES (18,'Giant / Cyclops')
INSERT INTO `races` VALUES (19,'Trakenon')
INSERT INTO `races` VALUES (20,'Doppleganger')
INSERT INTO `races` VALUES (21,'Evil Eye')
INSERT INTO `races` VALUES (22,'Beetle')
INSERT INTO `races` VALUES (23,'Kerra')
INSERT INTO `races` VALUES (24,'Fish')
INSERT INTO `races` VALUES (25,'Fairy')
INSERT INTO `races` VALUES (26,'Froglok')
INSERT INTO `races` VALUES (27,'Froglok Ghoul')
INSERT INTO `races` VALUES (28,'Fungusman')
INSERT INTO `races` VALUES (29,'Gargoyle')
INSERT INTO `races` VALUES (30,'Gasbag')
INSERT INTO `races` VALUES (31,'Gelatinous Cube')
INSERT INTO `races` VALUES (32,'Ghost')
INSERT INTO `races` VALUES (33,'Ghoul')
INSERT INTO `races` VALUES (34,'Giant Bat')
INSERT INTO `races` VALUES (35,'Giant Eel')
INSERT INTO `races` VALUES (36,'Giant Rat')
INSERT INTO `races` VALUES (37,'Giant Snake')
INSERT INTO `races` VALUES (38,'Giant Spider')
INSERT INTO `races` VALUES (39,'Gnoll')
INSERT INTO `races` VALUES (40,'Goblin')
INSERT INTO `races` VALUES (41,'Gorilla')
INSERT INTO `races` VALUES (42,'Wolf')
INSERT INTO `races` VALUES (43,'Bear')
INSERT INTO `races` VALUES (44,'Freeport Guards')
INSERT INTO `races` VALUES (45,'Demi Lich')
INSERT INTO `races` VALUES (46,'Imp')
INSERT INTO `races` VALUES (47,'Griffin')
INSERT INTO `races` VALUES (48,'Kobold')
INSERT INTO `races` VALUES (49,'Lava Dragon')
INSERT INTO `races` VALUES (50,'Lion');
INSERT INTO `races` VALUES (51,'Lizard Man')
INSERT INTO `races` VALUES (52,'Mimic')
INSERT INTO `races` VALUES (53,'Minotaur')
INSERT INTO `races` VALUES (54,'Orc')
INSERT INTO `races` VALUES (55,'Human Beggar')
INSERT INTO `races` VALUES (56,'Pixie')
INSERT INTO `races` VALUES (57,'Dracnid')
INSERT INTO `races` VALUES (58,'Solusek Ro')
INSERT INTO `races` VALUES (59,'Bloodgills')
INSERT INTO `races` VALUES (60,'Skeleton')
INSERT INTO `races` VALUES (61,'Shark')
INSERT INTO `races` VALUES (62,'Tunare')
INSERT INTO `races` VALUES (63,'Tiger')
INSERT INTO `races` VALUES (64,'Treant')
INSERT INTO `races` VALUES (65,'Vampire')
INSERT INTO `races` VALUES (66,'Rallos Zek')
INSERT INTO `races` VALUES (67,'Highpass Citizen')
INSERT INTO `races` VALUES (68,'Tentacle')
INSERT INTO `races` VALUES (69,'Will O Wisp')
INSERT INTO `races` VALUES (70,'Zombie')
INSERT INTO `races` VALUES (71,'Qeynos Citizen')
INSERT INTO `races` VALUES (72,'Ship')
INSERT INTO `races` VALUES (73,'Launch')
INSERT INTO `races` VALUES (74,'Piranha')
INSERT INTO `races` VALUES (75,'Elemental')
INSERT INTO `races` VALUES (76,'Puma')
INSERT INTO `races` VALUES (77,'Neriak Citizen')
INSERT INTO `races` VALUES (78,'Erudite Citizen')
INSERT INTO `races` VALUES (79,'Bixie')
INSERT INTO `races` VALUES (80,'Reanimated Hand')
INSERT INTO `races` VALUES (81,'Rivervale Citizen')
INSERT INTO `races` VALUES (82,'Scarecrow')
INSERT INTO `races` VALUES (83,'Skunk')
INSERT INTO `races` VALUES (84,'Snake Elemental')
INSERT INTO `races` VALUES (85,'Spectre')
INSERT INTO `races` VALUES (86,'Sphinx')
INSERT INTO `races` VALUES (87,'Armadillo')
INSERT INTO `races` VALUES (88,'Clockwork Gnome')
INSERT INTO `races` VALUES (89,'Drake')
INSERT INTO `races` VALUES (90,'Halas Citizen')
INSERT INTO `races` VALUES (91,'Alligator')
INSERT INTO `races` VALUES (92,'Grobb Citizen')
INSERT INTO `races` VALUES (93,'Oggok Citizen')
INSERT INTO `races` VALUES (94,'Kaladim Citizen')
INSERT INTO `races` VALUES (95,'Cazic Thule')
INSERT INTO `races` VALUES (96,'Cockatrice')
INSERT INTO `races` VALUES (97,'Daisy Man')
INSERT INTO `races` VALUES (98,'Elf Vampire')
INSERT INTO `races` VALUES (99,'Denizen')
INSERT INTO `races` VALUES (100,'Dervish');
INSERT INTO `races` VALUES (101,'Efreeti')
INSERT INTO `races` VALUES (102,'Froglok Tadpole')
INSERT INTO `races` VALUES (103,'Kedge')
INSERT INTO `races` VALUES (104,'Leech')
INSERT INTO `races` VALUES (105,'Swordfish')
INSERT INTO `races` VALUES (106,'Felguard')
INSERT INTO `races` VALUES (107,'Mammoth')
INSERT INTO `races` VALUES (108,'Eye of Zomm')
INSERT INTO `races` VALUES (109,'Wasp')
INSERT INTO `races` VALUES (110,'Mermaid')
INSERT INTO `races` VALUES (111,'Harpie')
INSERT INTO `races` VALUES (112,'Fayguard')
INSERT INTO `races` VALUES (113,'Drixie')
INSERT INTO `races` VALUES (114,'Ghost Ship')
INSERT INTO `races` VALUES (115,'Clam')
INSERT INTO `races` VALUES (116,'Sea Horse')
INSERT INTO `races` VALUES (117,'Ghost Dwarf')
INSERT INTO `races` VALUES (118,'Erudite Ghost')
INSERT INTO `races` VALUES (119,'Sabertooth Cat')
INSERT INTO `races` VALUES (120,'Wolf Elemental')
INSERT INTO `races` VALUES (121,'Gorgon')
INSERT INTO `races` VALUES (122,'Dragon Skeleton')
INSERT INTO `races` VALUES (123,'Innoruuk')
INSERT INTO `races` VALUES (124,'Unicorn')
INSERT INTO `races` VALUES (125,'Pegasus')
INSERT INTO `races` VALUES (126,'Djinn')
INSERT INTO `races` VALUES (127,'Invisible Man')
INSERT INTO `races` VALUES (128,'Iksar')
INSERT INTO `races` VALUES (129,'Scorpion')
INSERT INTO `races` VALUES (130,'Vah Shir')
INSERT INTO `races` VALUES (131,'Sarnak')
INSERT INTO `races` VALUES (132,'Draglock')
INSERT INTO `races` VALUES (133,'Lycanthrope')
INSERT INTO `races` VALUES (134,'Mosquito')
INSERT INTO `races` VALUES (135,'Rhino')
INSERT INTO `races` VALUES (136,'Xalgoz')
INSERT INTO `races` VALUES (137,'Kunark Goblin')
INSERT INTO `races` VALUES (138,'Yeti')
INSERT INTO `races` VALUES (139,'Iksar Citizen')
INSERT INTO `races` VALUES (140,'Forest Giant')
INSERT INTO `races` VALUES (141,'Boat')
INSERT INTO `races` VALUES (142,'Nearest Doodad (Rock, torch, rug, etc.) in sight.')
INSERT INTO `races` VALUES (143,'Nearest Tree in sight.')
INSERT INTO `races` VALUES (144,'Burynai')
INSERT INTO `races` VALUES (145,'Goo')
INSERT INTO `races` VALUES (146,'Spectral Sarnak')
INSERT INTO `races` VALUES (147,'Spectral Iksar')
INSERT INTO `races` VALUES (148,'Kunark Fish')
INSERT INTO `races` VALUES (149,'Iksar Scorpion')
INSERT INTO `races` VALUES (150,'Erollisi');
INSERT INTO `races` VALUES (151,'Tribunal')
INSERT INTO `races` VALUES (152,'Bertoxxulous')
INSERT INTO `races` VALUES (153,'Bristlebane')
INSERT INTO `races` VALUES (154,'Fay Drake')
INSERT INTO `races` VALUES (155,'Sarnak Skeleton')
INSERT INTO `races` VALUES (156,'Ratman')
INSERT INTO `races` VALUES (157,'Wyvern')
INSERT INTO `races` VALUES (158,'Wurm')
INSERT INTO `races` VALUES (159,'Devourer')
INSERT INTO `races` VALUES (160,'Iksar Golem')
INSERT INTO `races` VALUES (161,'Iksar Skeleton')
INSERT INTO `races` VALUES (162,'Man Eating Plant')
INSERT INTO `races` VALUES (163,'Raptor')
INSERT INTO `races` VALUES (164,'Sarnak Golem')
INSERT INTO `races` VALUES (165,'Water Dragon')
INSERT INTO `races` VALUES (166,'Iksar Hand')
INSERT INTO `races` VALUES (167,'Succulent')
INSERT INTO `races` VALUES (168,'Flying Monkey')
INSERT INTO `races` VALUES (169,'Brontotherium')
INSERT INTO `races` VALUES (170,'Snow Dervish')
INSERT INTO `races` VALUES (171,'Dire Wolf')
INSERT INTO `races` VALUES (172,'Manticore')
INSERT INTO `races` VALUES (173,'Totem')
INSERT INTO `races` VALUES (174,'Cold Spectre')
INSERT INTO `races` VALUES (175,'Enchanted Armor')
INSERT INTO `races` VALUES (176,'Snow Bunny')
INSERT INTO `races` VALUES (177,'Walrus')
INSERT INTO `races` VALUES (178,'Rock-gem Men')
INSERT INTO `races` VALUES (181,'Yak Man')
INSERT INTO `races` VALUES (182,'Faun')
INSERT INTO `races` VALUES (183,'Coldain')
INSERT INTO `races` VALUES (184,'Velious Dragons')
INSERT INTO `races` VALUES (185,'Hag')
INSERT INTO `races` VALUES (186,'Hippogriff')
INSERT INTO `races` VALUES (187,'Siren')
INSERT INTO `races` VALUES (188,'Frost Giant')
INSERT INTO `races` VALUES (189,'Storm Giant')
INSERT INTO `races` VALUES (190,'Ottermen')
INSERT INTO `races` VALUES (191,'Walrus Man')
INSERT INTO `races` VALUES (192,'Clockwork Dragon')
INSERT INTO `races` VALUES (193,'Abhorent')
INSERT INTO `races` VALUES (194,'Sea Turtle')
INSERT INTO `races` VALUES (195,'Black and White Dragons')
INSERT INTO `races` VALUES (196,'Ghost Dragon')
INSERT INTO `races` VALUES (197,'Ronnie Test')
INSERT INTO `races` VALUES (198,'Prismatic Dragon')
INSERT INTO `races` VALUES (199,'ShikNar')

There are more efficient ways to write these big data INSERTs, but this is eminently more editable for my likes...

ArChron 01-02-2007 06:25 AM

And here's the third half...

Code:


INSERT INTO `races` VALUES (200,'Rockhopper');
INSERT INTO `races` VALUES (201,'Underbulk')
INSERT INTO `races` VALUES (202,'Grimling')
INSERT INTO `races` VALUES (203,'Vacuum Worm')
INSERT INTO `races` VALUES (204,'Evan Test')
INSERT INTO `races` VALUES (205,'Kahli Shah')
INSERT INTO `races` VALUES (206,'Owlbear')
INSERT INTO `races` VALUES (207,'Rhino Beetle,')
INSERT INTO `races` VALUES (208,'Vampyre')
INSERT INTO `races` VALUES (209,'Earth Elemental')
INSERT INTO `races` VALUES (210,'Air Elemental')
INSERT INTO `races` VALUES (211,'Water Elemental')
INSERT INTO `races` VALUES (212,'Fire Elemental')
INSERT INTO `races` VALUES (213,'Wetfang Minnow')
INSERT INTO `races` VALUES (214,'Thought Horror')
INSERT INTO `races` VALUES (215,'Tegi')
INSERT INTO `races` VALUES (216,'Horse')
INSERT INTO `races` VALUES (217,'Shissar')
INSERT INTO `races` VALUES (218,'Fungal Fiend')
INSERT INTO `races` VALUES (219,'Vampire Volatalis')
INSERT INTO `races` VALUES (220,'StoneGrabber')
INSERT INTO `races` VALUES (221,'Scarlet Cheetah')
INSERT INTO `races` VALUES (222,'Zelniak')
INSERT INTO `races` VALUES (223,'Lightcrawler')
INSERT INTO `races` VALUES (224,'Shade')
INSERT INTO `races` VALUES (225,'Sunflower')
INSERT INTO `races` VALUES (226,'Sun Revenant')
INSERT INTO `races` VALUES (227,'Shrieker')
INSERT INTO `races` VALUES (228,'Galorian')
INSERT INTO `races` VALUES (229,'Netherbian')
INSERT INTO `races` VALUES (230,'Akheva')
INSERT INTO `races` VALUES (231,'Spire Spirit')
INSERT INTO `races` VALUES (232,'Sonic Wolf')
INSERT INTO `races` VALUES (233,'Ground Shaker')
INSERT INTO `races` VALUES (234,'Vah Shir Skeleton')
INSERT INTO `races` VALUES (235,'Mutant Humanoid')
INSERT INTO `races` VALUES (236,'Seru')
INSERT INTO `races` VALUES (237,'Recuso')
INSERT INTO `races` VALUES (238,'Vah Shir King')
INSERT INTO `races` VALUES (239,'Vah Shir Guard')
INSERT INTO `races` VALUES (240,'Teleport Man')
INSERT INTO `races` VALUES (241,'Lujein')
INSERT INTO `races` VALUES (242,'Naiad')
INSERT INTO `races` VALUES (243,'Nymph')
INSERT INTO `races` VALUES (244,'Ent')
INSERT INTO `races` VALUES (245,'Wrinnfly')
INSERT INTO `races` VALUES (246,'Tarew Marr')
INSERT INTO `races` VALUES (247,'Solusek Ro')
INSERT INTO `races` VALUES (248,'Clockwork Golem')
INSERT INTO `races` VALUES (249,'Clockwork Brain')
INSERT INTO `races` VALUES (250,'Spectral Banshee');
INSERT INTO `races` VALUES (251,'Guard of Justice')
INSERT INTO `races` VALUES (252,'PoM Castle')
INSERT INTO `races` VALUES (253,'Disease Boss')
INSERT INTO `races` VALUES (254,'Solusek Ro Guard')
INSERT INTO `races` VALUES (255,'Bertoxxulous')
INSERT INTO `races` VALUES (256,'New Tribunal')
INSERT INTO `races` VALUES (257,'Terris Thule')
INSERT INTO `races` VALUES (258,'Vegerog')
INSERT INTO `races` VALUES (259,'Crocodile')
INSERT INTO `races` VALUES (260,'Bat')
INSERT INTO `races` VALUES (261,'Slarghilug')
INSERT INTO `races` VALUES (262,'Tranquilion')
INSERT INTO `races` VALUES (263,'Tin Soldier')
INSERT INTO `races` VALUES (264,'Nightmare Wraith')
INSERT INTO `races` VALUES (265,'Malarian')
INSERT INTO `races` VALUES (266,'Knight of Pestilence')
INSERT INTO `races` VALUES (267,'Lepertoloth')
INSERT INTO `races` VALUES (268,'Bubonian Boss')
INSERT INTO `races` VALUES (269,'Bubonian Underling')
INSERT INTO `races` VALUES (270,'Pusling')
INSERT INTO `races` VALUES (271,'Water Mephit')
INSERT INTO `races` VALUES (272,'Stormrider')
INSERT INTO `races` VALUES (273,'Junk Beast')
INSERT INTO `races` VALUES (274,'Broken Clockwork')
INSERT INTO `races` VALUES (275,'Giant Clockwork')
INSERT INTO `races` VALUES (276,'Clockwork Beetle')
INSERT INTO `races` VALUES (277,'Nightmare Goblin')
INSERT INTO `races` VALUES (278,'Karana')
INSERT INTO `races` VALUES (279,'Blood Raven')
INSERT INTO `races` VALUES (280,'Nightmare Gargoyle')
INSERT INTO `races` VALUES (281,'Mouths of Insanity')
INSERT INTO `races` VALUES (282,'Skeletal Horse')
INSERT INTO `races` VALUES (283,'Saryn')
INSERT INTO `races` VALUES (284,'Fennin Ro')
INSERT INTO `races` VALUES (285,'Tormentor')
INSERT INTO `races` VALUES (286,'Necromancer Priest')
INSERT INTO `races` VALUES (287,'Nightmare')
INSERT INTO `races` VALUES (288,'New Rallos Zek')
INSERT INTO `races` VALUES (289,'Tallon Zek')
INSERT INTO `races` VALUES (290,'Vallon Zek')
INSERT INTO `races` VALUES (291,'Air Mephit')
INSERT INTO `races` VALUES (292,'Earth Mephit')
INSERT INTO `races` VALUES (293,'Fire Mephit')
INSERT INTO `races` VALUES (294,'Nightmare Mephit')
INSERT INTO `races` VALUES (295,'Zebuxoruk')
INSERT INTO `races` VALUES (296,'Mithaniel Marr')
INSERT INTO `races` VALUES (297,'Knightmare Rider')
INSERT INTO `races` VALUES (298,'The Rathe')
INSERT INTO `races` VALUES (299,'Xegony')
INSERT INTO `races` VALUES (300,'Balrog');
INSERT INTO `races` VALUES (301,'Unknown')
INSERT INTO `races` VALUES (302,'Lobster Monster')
INSERT INTO `races` VALUES (303,'Pheonix')
INSERT INTO `races` VALUES (304,'Tiamat')
INSERT INTO `races` VALUES (305,'Bear (new)')
INSERT INTO `races` VALUES (306,'Earth Golem')
INSERT INTO `races` VALUES (307,'Iron Golem')
INSERT INTO `races` VALUES (308,'Storm Golem')
INSERT INTO `races` VALUES (309,'Air Golem')
INSERT INTO `races` VALUES (310,'Wood Golem')
INSERT INTO `races` VALUES (311,'Fire Golem')
INSERT INTO `races` VALUES (312,'Water Golem')
INSERT INTO `races` VALUES (313,'Veiled Gargoyle')
INSERT INTO `races` VALUES (314,'Lynx')
INSERT INTO `races` VALUES (315,'Squid')
INSERT INTO `races` VALUES (316,'Frog')
INSERT INTO `races` VALUES (317,'Flying Serpent')
INSERT INTO `races` VALUES (318,'Tactics Soldier')
INSERT INTO `races` VALUES (319,'Armored Boar')
INSERT INTO `races` VALUES (320,'Djinni')
INSERT INTO `races` VALUES (321,'Boar')
INSERT INTO `races` VALUES (322,'Knight of Marr')
INSERT INTO `races` VALUES (323,'Black Armor')
INSERT INTO `races` VALUES (324,'Knightmare Knight')
INSERT INTO `races` VALUES (325,'Rallos Ogre')
INSERT INTO `races` VALUES (326,'Arachnid')
INSERT INTO `races` VALUES (327,'Crystal Arachnid')
INSERT INTO `races` VALUES (328,'Tower Model')
INSERT INTO `races` VALUES (330,'Froglok(LoY)')
INSERT INTO `races` VALUES (335,'Troll Pirate')
INSERT INTO `races` VALUES (336,'Troll Shaman?')
INSERT INTO `races` VALUES (337,'Troll Pirate #2')
INSERT INTO `races` VALUES (345,'Luggald')
INSERT INTO `races` VALUES (346,'Armored Luggald')
INSERT INTO `races` VALUES (347,'Robed Luggald')
INSERT INTO `races` VALUES (348,'Drogmor')
INSERT INTO `races` VALUES (349,'Froglok Skeleton')
INSERT INTO `races` VALUES (350,'Froglok Zombie')
INSERT INTO `races` VALUES (353,'Unarmored DnD-Style Kobold?')
INSERT INTO `races` VALUES (354,'Lightly Armored DnD-Style Kobold?')
INSERT INTO `races` VALUES (355,'Heavily Armored DnD-Style Kobold?')
INSERT INTO `races` VALUES (356,'Scaled Wolf (Neutral Gender)')
INSERT INTO `races` VALUES (357,'Undead Drogmor')
INSERT INTO `races` VALUES (365,'Valdoon Kel`Novar')
INSERT INTO `races` VALUES (367,'New Skeleton Model')
INSERT INTO `races` VALUES (372,'Evil Whirlwind')
INSERT INTO `races` VALUES (378,'Treasure Chest')
INSERT INTO `races` VALUES (379,'Clay Vase')
INSERT INTO `races` VALUES (381,'Weapons Rack')
INSERT INTO `races` VALUES (382,'Coffin')
INSERT INTO `races` VALUES (383,'Skull Mounted on Bone Triangle');
INSERT INTO `races` VALUES (384,'Jester')
INSERT INTO `races` VALUES (387,'Construct')
INSERT INTO `races` VALUES (388,'Hynid')
INSERT INTO `races` VALUES (389,'Turepta')
INSERT INTO `races` VALUES (390,'Cragbeast')
INSERT INTO `races` VALUES (391,'Mite')
INSERT INTO `races` VALUES (392,'Ukun')
INSERT INTO `races` VALUES (393,'Ixt')
INSERT INTO `races` VALUES (394,'Ikaav')
INSERT INTO `races` VALUES (395,'Aneuk')
INSERT INTO `races` VALUES (396,'Kyv')
INSERT INTO `races` VALUES (397,'Noc')
INSERT INTO `races` VALUES (398,'Ra`Tuk')
INSERT INTO `races` VALUES (399,'Tunat muram cuu`Vauax')


ArChron 01-02-2007 06:26 AM

And the fourth half... I guess that makes two whole posts...

What was that someone said about a forum being the wrong place to store code stuff?


Code:

INSERT INTO `races` VALUES (400,'Huvul')
INSERT INTO `races` VALUES (402,'Mastruq')
INSERT INTO `races` VALUES (403,'Male Trusik--Lacks Shawl')
INSERT INTO `races` VALUES (404,'Ship')
INSERT INTO `races` VALUES (405,'OoW golem type')
INSERT INTO `races` VALUES (406,'Overlord Mata Muram')
INSERT INTO `races` VALUES (407,'Lighting warrior models')
INSERT INTO `races` VALUES (408,'Pirylien fire mob (RSS)')
INSERT INTO `races` VALUES (410,'Feran')
INSERT INTO `races` VALUES (411,'Pirylien fire mob (RSS)')
INSERT INTO `races` VALUES (412,'Chimera')
INSERT INTO `races` VALUES (413,'Dragorn')
INSERT INTO `races` VALUES (414,'Murkglider')
INSERT INTO `races` VALUES (415,'New Rat Model')
INSERT INTO `races` VALUES (416,'New Bat Model')
INSERT INTO `races` VALUES (417,'Frost Pyrilien')
INSERT INTO `races` VALUES (418,'Discordling')
INSERT INTO `races` VALUES (419,'Girplan')
INSERT INTO `races` VALUES (420,'Hanvar / arch magus model')
INSERT INTO `races` VALUES (425,'Crystal Model')
INSERT INTO `races` VALUES (427,'Large Purse Model')
INSERT INTO `races` VALUES (430,'New Dracolich')
INSERT INTO `races` VALUES (431,'Green halo with green smoke')
INSERT INTO `races` VALUES (432,'DoN regular drake')
INSERT INTO `races` VALUES (433,'Goblin (DoN model)')
INSERT INTO `races` VALUES (434,'Dragon-Horse...thing.')
INSERT INTO `races` VALUES (435,'Lava Dragon')
INSERT INTO `races` VALUES (436,'Basilisk (new model)')
INSERT INTO `races` VALUES (437,'East-Asian Gold Dragon (Snake-like)')
INSERT INTO `races` VALUES (438,'Storm(?) Dragon Model')
INSERT INTO `races` VALUES (439,'Puma')
INSERT INTO `races` VALUES (440,'Normal Spider (new model, tutorial, don)')
INSERT INTO `races` VALUES (441,'Large-abdomen Normal Spider')
INSERT INTO `races` VALUES (442,'Guardian of the Sands')
INSERT INTO `races` VALUES (445,'Dragon Egg (from Vishimtar event, etc..)')
INSERT INTO `races` VALUES (446,'East-Asian Crystal Dragon (Statue?)')
INSERT INTO `races` VALUES (447,'Smoldering bluish-purple ball (look into this)');
INSERT INTO `races` VALUES (448,'Statue, sparkly hands; similar to 442, no anims.')
INSERT INTO `races` VALUES (449,'Pile of (Spider?) Eggs')
INSERT INTO `races` VALUES (450,'Lava Spider')
INSERT INTO `races` VALUES (451,'Large-abdomen Lava Spider')
INSERT INTO `races` VALUES (452,'Shadow(?) Dragon')
INSERT INTO `races` VALUES (453,'Burly Ancient-Rome-Looking Warrior')
INSERT INTO `races` VALUES (454,'werewolf (new model)')
INSERT INTO `races` VALUES (455,'kobold (new model)')
INSERT INTO `races` VALUES (456,'Sporali')
INSERT INTO `races` VALUES (457,'Gnomework')
INSERT INTO `races` VALUES (458,'New Orc')
INSERT INTO `races` VALUES (459,'Corathus')
INSERT INTO `races` VALUES (460,'Coral(?) Model')
INSERT INTO `races` VALUES (462,'a cocoon')
INSERT INTO `races` VALUES (464,'gargoyle (new type)')
INSERT INTO `races` VALUES (465,'witheran')
INSERT INTO `races` VALUES (467,'Shilskin')
INSERT INTO `races` VALUES (469,'new evil eye model (same as OoW one)')
INSERT INTO `races` VALUES (470,'Hanvar looking mob (without axe)')
INSERT INTO `races` VALUES (472,'mech boar mount model')
INSERT INTO `races` VALUES (473,'fairy (new model)')
INSERT INTO `races` VALUES (433,'Goblin, new')
INSERT INTO `races` VALUES (436,'Basilisk')
INSERT INTO `races` VALUES (454,'Werewolf')
INSERT INTO `races` VALUES (455,'Kobold')
INSERT INTO `races` VALUES (456,'Sporali')
INSERT INTO `races` VALUES (458,'Orc')
INSERT INTO `races` VALUES (464,'Gargoyle')
INSERT INTO `races` VALUES (469,'Evil eye (with teeths and tentacles)')
INSERT INTO `races` VALUES (470,'Hanvar without axe')
INSERT INTO `races` VALUES (472,'Mecha boar')
INSERT INTO `races` VALUES (473,'Unknown');


Angelox 01-02-2007 07:29 AM

Very nice , and needed!
Although you got much more than I ever found, I attached my "data.php" which I've been building on , I already added a bunch of yours, but it also has corrections and a few more "unknowns" added;
http://www.nahunta.org/~angelox/files/data.php.txt

Aerewen 01-03-2007 06:17 AM

Part of the problem with the lack of a public database is the fact that we don't have a common numbering system for anyone to modify from...

think about it... someone gives you a SQL file that adds say 200 doors to your database that populate pok, abyssmal sea, and say uh shadowhaven as an example... those doors will auto increment their id field so the doors that might be numbered 200-400 on your database might be 500-700 on someone else's

now yeah i know doors dont really matter because the id means nothing really, but think about the npc_types table, the spawngroups spawn2 spawnentry etc etc

we have no default numbering system for those ID's that *DO* matter...

a while back the concept of zonenumber * 1000 was applies to the npc_types table... but it's not consistent. some older zones still have npc's with numbers out of that scope. and the other problem is that we cant do a mass modify script using names extracted from spawn lists because there are a ton of different rat, bat, orc, goblin, giant, etc etc mobs in different zones and i can only hope that they all have different npc_type values in the existing database or we're a lot worse off than i thought we were lol

If we were to take the time to mod the database to a default numbering scheme... then we could start adding to a larger database because we would know that every door, spawngroup, spawn entry, etc etc in the plane of knowledge has an id value between x and y which means that if I make a perfect copy of the live servers' POK i can make 2 SQL files to distribute it.

one does DELETE FROM `blah` WHERE `id` >= 202000 AND `id` < 203000 etc etc

and the other adds my new stuff

reboot and tadaa. but the way it is now... i had to create a new table which was a copy of the npc_types table, then delete 3 rows from it to fit the insert query for the newest pok i found to start working from. then after the inster was done, add those rows back in to make it work with the latest db version, export it all to sql, delete all the npc types entries for pok, delete all the spawn groups etc etc etc, then reinsert my sql file into npc types with all the new values for the merchantlists etc.

difference? took me about 3 hours to source it in, VS about 5 minutes if we had a global setup for the database that everyone used.

im a php/mysql programmer so im actually working on a php system that will go through and revamp my entire database using a numbering scheme of 1000*zoneid on auto increment.

so far the past couple attempts have screwed up loot, merchants, pets, spells etc... so it's still a work in progress, but once i have it finished i will release the new database, not the utility.

if i put out the utility then everyone who has their own custom database work will just use it to mod their db and continue to mooch our releases without any contributions of their own. but by releasing the database only we force them to conform if they want to use our db updates :p

CrabClaw 01-03-2007 07:03 AM

The above example reminds me of what they did when Total Annihilation (a little RTS game with robots) modding was popular. The database was open ended on IDs but to avoid overwriting each other's work they agreed upon ranges of data IDs for each mod out there. So the basic live-like data went from 1 to X and then in blocks of 1000's people reserved space for custom content.

But, over my years watching and trying to contribute what I can to this project, I can say it's like having a overloaded garage full of content with no one really wanting to dig and clean it. But yes there is redundancy in the npc_types database there are 14 same level Snow Dervishes, and 17 'a stonegazer cockatrice''s, when there should only be two stonegazer cockatrices (a level 33-35-ish for the OT, and a level 37-40-ish for the DL and TT).

It is doable bite by byte though.

*looks at his garage*

*hides*

eq4me 01-03-2007 07:30 AM

The big problem is that some of the tables that need to be loaded into shared memory are memory hogs. Right now you just cant space IDs out for further addons without wasting huge ammounts of Memory.

More discussion is here:
http://www.eqemulator.net/forums/sho...0&page=1&pp=15
and here:
http://www.eqemulator.net/forums/showthread.php?t=21466

Angelox: Since PEQ picked up tremendous speed in the last few weeks did you consider joining up with em? I am pretty sure the rigid policies of the last Maintainer are somewhat loosened and the guys from PEQ might be happy to implement many of your additions and corrections. They may stop at purely handspawned zones though. Provided that PEQ Database releases will be more frequent i am sure this would prevent alot of double work as both you and the PEQ Team are prone to fix the same bugs, just look the bug submissions and resolves on the PEQ board ...

Well, back to lurking for now.

Angelox 01-03-2007 08:38 AM

Quote:

Originally Posted by eq4me
The big problem is that some of the tables that need to be loaded into shared memory are memory hogs. Right now you just cant space IDs out for further addons without wasting huge ammounts of Memory.

More discussion is here:
http://www.eqemulator.net/forums/sho...0&page=1&pp=15
and here:
http://www.eqemulator.net/forums/showthread.php?t=21466

Angelox: Since PEQ picked up tremendous speed in the last few weeks did you consider joining up with em? I am pretty sure the rigid policies of the last Maintainer are somewhat loosened and the guys from PEQ might be happy to implement many of your additions and corrections. They may stop at purely handspawned zones though. Provided that PEQ Database releases will be more frequent i am sure this would prevent alot of double work as both you and the PEQ Team are prone to fix the same bugs, just look the bug submissions and resolves on the PEQ board ...

Well, back to lurking for now.

Let me re-phrase what I mean, and sum it all up; there is no public database; PEQ database belongs to PEQ server, and the drive is towards the success of the PEQ server, just as is with all the servers at EqEmu. You place a server up, it becomes competitiion, You see, we are not working for each other, we are competing with each other. No hard feelings, it's just the way things works out.
We need to make a database to where the priority is to the database, and not any specific server. Something that is totally accessable by anyone who qualifies, and totatally viewable/downloadble by anyone, anytime, and *no strings attached*.
But this is something I tried for when I first started, and i started posting anything I did with hopes as to start something, it worked somewhat - but there's more to it than that I guess. I suggested we combine what we all have now ( the three database), and they can be combined and optimized, use it to start a new database with a new year. If something is not right, it can be fixed or corrected, but at least we started with everyones work. and it is "public domain".

cavedude 01-03-2007 09:06 AM

PEQ is not about the server at all. I don't care how popular it is or who likes it or not. I don't deal with players well, and luckily WildcardX is kind enough to do so for me.

The only goal of PEQ is database development, the server is just a testbed for any changes we make. IMHO, running a centralized server for players to login into and catch bugs is the best way to develop a database.

Anybody who wishes to help us out are more than welcome to do so. We can find a job for anybody regardless of knowledge/skill level.

Zengez 01-03-2007 09:16 AM

I agree with Cavedude, which is why i wanted to start something just like it, but the drawback I knew of to PEQ (haven't really been keeping up a lot lately) was that there were a very very select few in charge of doing any database work, which was good in that you don't have newbins messing everything up, but if those people drop the project/have RL stuff/ get stuck on a project/whatever then the project stalls, and we all look on with frustrated hopes of getting another expansion poped and some of us thinking "Man, I could be helping get stuff done if I were able..." which is exactly why I wanted a truly open server to spawn/test/update/etc... the problem being again the newbins going "Hey! lets make all the giant bats in north Qeynos into mini Cazic Thules!" which then messes up all the hard work we're trying to accomplish.

Solutions? I don't know... perhaps a mass recruition of database editors into a world using the newest databases available to start work... perhaps the best and the brightest move on to PEQ, kind of an 'application' to join PEQ team, thus allowing a larger pool of talented and able people to work on the real database, avoiding the newbins and more importantly getting people in to work on the real database structure that people can use...

As to Angelox's worries about competition, I definitely see where he's coming from, but I don't know if you're going to have a lot of choice if you want to do anything more than just have people post updates and snippets of code every time they finish a half dozen spawns for 'somebody out there' to include into a database that they might then share... /shrug just my thoughts.

And now to eat, hopefully some of that made sense.

EDIT::

Oh yea, as the actual main part I meant to write, The idea of coming up with a cohesive and mandated ID structuring system would be a great idea and a good way to give order to the chaos so that some of us that don't feel like diving into the database for hours at a stretch could do some work occasionally without getting lost in the myriad of mapping ids and tables...

Also, some kind of structure between the loottable id, npc id, and the spawngroup id would be immensely helpful too, but thats for another tangent.

John Adams 01-04-2007 06:55 AM

@Arewen, the only problem I see with globalizing the zoneid * 1000 are in cases of NPCs, spawns or objects that can appear in more than one zone (bats, rats, orcs, etc). Named or specialized NPCs, sure... but what zone really owns that rat? Or, do we just make 1 rat NPCid per zone that might possibly contain a rat? Heh... rambling starting, I'll quit.

Good ideas tho. I like low numbers, high efficiency. I am rather adept at SQL, so give a PM if you need me to look into anything with you.

Zengez 01-04-2007 09:36 AM

I dunno, people laugh at the different NPCID for the same rat/bat/orc for different zones, but it seems to be that might be a good idea on a few levels;

For one, the above mentioned regularity and predictability of every zone,

For another; it allows quick and easy manipulation/customization straight on the database for a zone. Say I want to make North Karana 5 lvls higher, I can achieve this without having to figure out which mobs I'm randomly updating lvls in some other random zones like east karana or whatnot. This is obviously a bizaar example but I think the point is made.

Another point, the mobs could be easily refferenced by any number of tools and programs for future effort, imagine being able to pull up and edit lists of mobs by zone, or (if my hinted at ideas were put into place!!) loot type, or spawn type etc etc without ruining half your other zones.

That's my 2 cents.

John Adams 01-05-2007 05:43 AM

Quote:

Originally Posted by eq4me
They may stop at purely handspawned zones though.

For the love of God and all that's Holy... this is probably the 5th time I've asked this with no acknowledgement coming back from anyone who might know... eq4me's statement eludes to the fact there might be a way to NOT have to hand-spawn zones. If this is true, please oh PLEASE let the rest of us know. We could do so much more [accurate] work if we still had this capability.

I understand the builders/extractors/etc are not kept up with whatever encryption Live has week after week. But if there is some other way, I'm begging... please let us know.

As an aside, I have SEQ running (and am totally amazed by it, btw) and grabbing collects from any zone I can just to see what it looks like. Most of it is garbled, of course. I cannot read this myself, without knowledge. I'd love to take my new collects and stuff them into a database, even if it were by hand INSERTS of the raw data. I just need to be able to read the packets. PF2Text doesn't seem to be anywhere anymore (at least I cannot find it). Is there any info, at all? SEQ lacks a users guide or walkthrough, so it's nearly impossible to figure out except by trial and error - which is what I've been doing the last week.

Yes, I am stomping my feet. And begging. Please, if there's still a way to benefit from collects, tell us. I'll start now on any zone I have access to.

(btw, this was not @eq4me, his comment just reminded me how ignored this question has gone)

eq4me 01-05-2007 06:27 AM

Yes, I wanted to hint to this post:

http://www.eqemulator.net/forums/sho...769#post126769

The big question is if someone other than FNW is able to update eqextractor.

Angelox 01-05-2007 07:13 AM

Quote:

Originally Posted by eq4me
Yes, I wanted to hint to this post:

http://www.eqemulator.net/forums/sho...769#post126769

The big question is if someone other than FNW is able to update eqextractor.

Quote:

I will state that it would be crazy IMO to not use collected data to initially spawn a zone. If you ask me, this is the primary reason that PEQs database still exists when so many other (hand spawned) ones do not... people making shit up from memory just dosent work, especially on a large scale, so many intricacies that make the world emmersive are lost. PEQ exists on the foundation of strict controls on modifications, such that somebody who thinks they remember something a certain way does not screw up the database without doing their homework first. This was a very significant problem for the older database
You know, I could say a lot here, but I really don't want to start anything :)
But I will say, that when I first started here, it also was said that merging databases was "very hard", almost impossible", and a "waste of time".
I will also like to say that the database I have been working on for all of you, has "hand spawned " and "merged" zones (you would never know unless I told you).
I am very gratefull to a lot of the Devs and programmers in this forum (for all their help), so I will continue to "bite my tongue" , and delete the rest of what I wanted to say.

Zengez 01-06-2007 11:29 AM

Just thought I'd mention it, Tried out the packet collector, and found that I could get it to log my zoning just fine, but any actual information in the zone was not logged at all. Tried all the devices and whatnot with no luck.

EDIT::

Apparently the packets don't actually appear in the file until it's done building which is when I zone out... which makes sense now that I think about it, so scratch this, let the collections begin;

PS: Is there a list somewhere of zones needing collecting?

John Adams 01-06-2007 03:58 PM

Quote:

Originally Posted by Zengez
PS: Is there a list somewhere of zones needing collecting?

Yes, everything from PoP release to DoDH and beyond, if you're bored. :)

I'm doing the same with SEQ, and getting some cool info in just the text dumps (still not the golden data I am after, but still fun to play with). Let's see if we cannot bring the packet God out of hiding. ;)

cavedude 01-07-2007 08:33 AM

PEQ actually has most zones our client supports spawned. What we are missing are mainly nightmareb, and most LDoN zones. The rest will be released once we have tweaked things a bit more.

Zengez 01-08-2007 10:42 AM

Quote:

Originally Posted by cavedude
PEQ actually has most zones our client supports spawned. What we are missing are mainly nightmareb, and most LDoN zones. The rest will be released once we have tweaked things a bit more.


So essentially unless we can get LDoN groups and/or nightmare b theres little to no point in doing packet collecting since we can't get the useful data from it cause we have no tool and you guys apparently have all you need and we're just waiting on the mysterious tweaking of doomage.... So what can we do to help again? ;)

cavedude 01-09-2007 06:38 AM

Anything PEQ gets will be released, that's the whole point of the project. The problem is at this point, we don't have any tools that work with live packets either :P

Angelox 01-09-2007 07:09 AM

Quote:

Originally Posted by Angelox
You see, we have a big problem here; No standard database to build on. We got EQ, which was Cavedudes contribution as a database for everyone to use - then we got PEQ, which is sort of a database that everyone has a "limited" access. then we got mine, which I started because no one would post public updates to their work. basically I'm a "one man band" - you know, harmonica in the mouth, bass drum in-between my legs, etc. , when it comes to database building -
What is the point here? are we going to continue with our personal "agendas" tell we get tired and quit, basically leave EqEmu with out a good. solid PUBLIC database for another year, or are we going to make some changes?
Why don't we get together, merge everything we have and start from there? I haven't went over to anybody's project, simply because I have done way too much work, not just packet spawning, but long, pain-in-the ass work, that should not have to be done over again by me or anyone else.
If someone offered to merge it (AX_PEQ) into a public database, together with all the other db that would accept updates and post regular db updates, then I would go for that.
The EqEmu source has a system that works pretty well, even with the few Devs atm. I can't understand why the MySql database doesn't?
I know we have people in this forum right now that are interested in this.

Which brings us back to what I originally posted :)
There is no public database , PEQ included. From what I see, this will always remain the same. If PEQ wanted to have their database public, there would be something newer than RC1 out right now.
For the longest time, i was posting every little thing I did, all by myself, all alone - so, if anything else, I proved it can be done. I worked my self sick with this, and became obsessed with this "common" database for everyone. I know that the database is the heart of EqEmu.
All I managed to do, is frustrate myself and provide a lot of good data and ideas for other people's "private" servers. This is all ok, but very few people have come foward and attempted to do work as a "public servant".
Everybody: Please!! Give back some of what you take.

WildcardX 01-09-2007 07:28 AM

Angelox,

I truly understand your frustrations and in the past you know I have agreed with you, but now that Cavedude, Sesmar and myself have taken over at PEQ, I can promise you that we are doing nothing but a community service with our database efforts and that PEQ is the community database. It is true, we have not gotten around to posting the database for download more frequently, but that is only because we wanted to get all of Luclin completely done (ie bug fixes and I am almost done with Vexthal) + add in all epic 1.0 quests and mobs. We initially planned to have this released around Christmas, but we have been slowed down some by other issues in development.

After we get this last Luclin release done, then we are moving on to PoP/LoY which as Cavedude has said is mostly all popped right now, but there is much work there to be done as far as the details. We are probably looking at a late spring or early summer release for this version of the database as well.

But PEQ is the community database for EQEmu and will work to be more transparent and welcoming of contributions. Right now, most of the help we need are on the quest writing side of our effort.

If anyone here wants to work with us on contributing or fixing Quests, please see Sesmar.

cavedude 01-09-2007 07:50 AM

There is a newer database out than RC1, the final version of Luclin under FNW was released when I took over. But, releases are kind of besides the point. They are just there so we have something to play on, as I agree with the statement that the database is the heart of emu. (Though, I'm NOT knocking the importance of the code!)

I feel I may have messed up by releasing my database to the public. It caused a sort of split in the community and now instead of having the one dominant database we have 3? different databases and many mangled hybrid variants. Sure, choice is good but when somebody fixes something on one database, that fix may not work on the other 2, if they even need said fix at all. That's the problem here, too many databases not enough contributors. I apologize to the community for opening this pandora's box of sorts.

PEQ is public in that anybody who wishes to join and help may do so, we have a job for anybody with any skill level. There is a leadership structure, sure because some form of quality control and centralization is needed. Imagine if we just opened up a database to anybody to work on as they please? It would be a mess in days! I often incorporate changes I see on the forums into PEQ. Sometimes I have to edit it to be compatible with PEQ or simply because I'd prefer to do it a slightly different way. But my feeling is if somebody contributes, I want to do my best to include it.

Zengez 01-09-2007 11:27 AM

Well, here's another problem however,

In order to have access to the code we need to meet these 'quality controls' and make sure we're not retarded... ok fair enough, but here's the thing... many of us don't want to go through the long process of 'proving' ourselves and for many of us we do this kinda thing in our spare time with our busy scheduals, so we just don't bother trying to get in the group even though we might be useful...

Still, you can't just let anyone who thinks they're useful mangle the database, so what do you do?

I'd say release a mangled database with everything you have right now in it. Not just the 'fixed' code and the 'perfect spawns' and the 'complete expansions' just release everything. Let the spawns be wrong, in the wrong spots, patrolling wrong, have the wrong stats/no loot/no faction or whatever. Then, people will get it and we'll each gravitate to the zones we hunted in the most, and note the problems. Those of us that know something will fix them and (hopefully) post a thing in the forums about it. That was the PEQ team can skim the forums time to time and pull out the actual intelligent fixes that other people did in their spare time, and ignore the post about inserting cazic thule into ecommons because 'it'd be fun!'. And that way everything gets done much much much faster and PEQ team still controls what goes into the 'official' database and re-releases that periodically with 'fixed' content zone by zone, and the rest of us can play the fixed content + mangled extra zones with the knowledge that said extra zones aren't going to be correct, just rough approximations. I know I'd be fine with that, and it'd give me something to work with instead of wishing i had tools to spawn zones and then finding out that they are already spawned when i'm half way through.

This isn't a rant, it's just frustrating because it's the exact same thing i've been saying since i joined the project some 2+ years ago, you want to control the official database from the newbins, fine, but give us something to work with so we can do exactly that, work with it. if you give us nothing then say prove yourself by finding minute flaws in the zones we've never even been in and/or code in the emu itself, you lose alot of people that might be good at database work that just simply didn't play those certain zones in eq.

Moreover this would still be the same singular database, just make every new release include the fixed zones and the unfixed zones and slowly but surely the unfixed zones will become fixed and we'll have everything up to par.

Also, I'm a tad confused by the afore mentioned 'we have everything we need' to 'we'll update the tools to read the logs when we have enough logs' to 'even our tools don't work' .... do you have everything litterally poped and you just drop those zones for the releases? or do you only have the logs to pop things and you're not making the converter for.... some unknown reason?

Anyways, thats that, for whatever it will accomplish, I'm losing interest in doing database work as I can't seem to get any support to do anything I'm capable of, perhaps I'll just leach like everyone else and play off other people's hard work and let them do everything rather than helping out :(

EDIT::

Having a pretty craptacular day so i think that came off a little more pissy than i meant it, sorry, but I stand by what I said in the terms of theory and practice and what I think would help the situation.

eq4me 01-09-2007 11:53 AM

Amen Zengez

I can only imagine what pains Angelox had to suffer to handspawn the LoY zones. It is one thing to be thorough and another one to spoon feed the community with the information you want to go out. I really hope the new management of the PEQ database will release regular updates and gives the opportunity to everyone to get regular development snapshots.
My personal project for now is to clean up the Vendor Items list. You wont believe what people sold when the lists where grabbed from life.... It would really help if I would have _one_ database to work with and the assurance that someone other form the PEQ team didnt do that work since the last release.
Yes, there might be reasons for ot impementing all available data into the PEQ database until recently but if that is the case it eludes anyone but the PEQ staff.

Disklaimer: It is late and I am definitely not sober. So if you find my statements overly offensive or full of typos please bear with me. %-}

Edit: Oh, and preventing some Joe Smoe to sabotage the database should be no problem with some appropriate revision control system and an instance that must approve any update/fix to the database. See the Linux Kernel development for example.

Once more: Dont get me wrong. I have really hight hope that the new PEQ Staff will do a great job and we get finally an unified and free(as in beer) database.

bufferofnewbies 01-09-2007 11:56 AM

Quote:

Originally Posted by Zengez
a whole lot

Actually, that is a sound idea. It would show new people that the community is alive and well, while also allowing some of 'not so new' ones to actually feel like we are helping. In truth, I feel like most of my work isn't of much use to anyone. But I do what little I can, out of sheer hope that it winds up being useful to someone who turns out to be the next Scorp, cave, or even Matt.

Well, ok.. maybe someone more useful than Matt... /snicker

Wait, wait. Matt, don't hit me again. I was just kidding! Oww oww oww! Not my arm! It just healed!!

mattmeck 01-09-2007 12:00 PM

My personal feeling behind it are, putting everything out as there doing it will just cause a lot of issues.

It would be good for those that know what there doing and have experience, but what about the other 90% of the users who will need to update everything every few days for fixes?

Add the fact that a lot of people WONT shair what they fix, because thats just how this community it (yes its sad, but...)

But on the other hand, what about those who want to help and can, but dont want to wait?

Its a rough decision and will cause issues no matter whats decided, to allow everyone access wile there working to make the people who want to help happy, and listen to all the bitchinh and complaining about bugs, issues, and problems (oh my!). Or keep the complainers down and offering what they have been and piss the people who want to help off.


I think there needs to be a mid way reached, mayby make it easier for people to help? Mayby hand out the DB to certain people who have been here and have submitted fixes? I donno, but I am glad I dont need to decide.

mattmeck 01-09-2007 12:03 PM

Quote:

Originally Posted by bufferofnewbies
Matt please sick some hackers on me and Ban me!!1!!one!

naaa, im in a good mood today, maybe tomorow

bufferofnewbies 01-09-2007 12:24 PM

Viva la resistance!
Matt <3's me.

btw: feel free to ignore me at any time... It's the alcohol talking. :)

Angelox 01-09-2007 02:22 PM

I think we all are doing fine - I really like Cavedudes database and I don't think I'm alone here, with that statement - this EqEmu project has a life of it's own and there's not much anyone can do to change it.
We've got things like the custom servers, the "historians", and the one who race with live. I think trying to keep up with live people are running out of steam though.
I'm sort of a "historian" type - like things the way they used to be with EQ, so I try to duplicate the "good old times".
But anyways, were do you start if you want to have the same thing Sony has? Everquest is always changing. better just to draw some lines and standarize a few things.
Everybody does real good here, to be honest with you (and myself), i don't see how what I had in mind would ever pan out anyway.
Mr. Cavedude; If it weren't for you and your Installer with your eq database - me or half the people (if not most) , wouldn't be around EqEmu forums right now, discussing all this! Stuff like that is what brought us all here. I sure hope you stay with that installer, because it really is what brings in the new people with the new ideas.

cavedude 01-09-2007 02:46 PM

Regular public PEQ updates aren't going to happen. The simple fact is most of the community are NOT developers or world builders and need to be led through everything step by step. If this wasn't the case I never would have created the installer. This being what it is, I really don't want to support every db release we put out. And believe me, I will be expected to. Will releases be faster than what we are normally used to? That is one thing I am hoping to accomplish.

Likewise, the database will not be released in its current form. It is not where we want it to be right now and because of the above a mangled database will only flood the forums and my inbox with support requests. We are, however working towards a release. When this will happen I can't tell you. But, our objectives are simple. We want to do some more bug correction in all the zones up to and including Luclin, and we want to get every Epic 1.0 done. Once that happens expect a release and PEQ to begin heavy work on PoP/LoY.

Next, PEQ is going to continue to function as it always has. Meaning, the server will always be up for development. Having a centralized database is the only way to properly develop when we are talking about multiple people. A CVS/SVN style system simply does not work in this situation.

If you wish to help out, come to the PEQ forums. http://projecteq.net/phpBB2/ Browse some of the bugs, if you have fixes, submit them. If you have additions, submit them. When I get time, I promise I will do my best to include them. You don't need database access to do this, especially since the currently released Luclin database will give you a great idea of our ID and table structure. If you wish to have more direct access to the db or become a member of the beta team (access to weekly db dumps) and feel you have the skills necessary then all you have to do is ASK ME. This is something very few people have done so far. I have also asked a few people to join and most times I've been rejected.

To clear things up, nobody on the PEQ team said we have all we need. In fact I mentioned we are missing logs for most of LDoN and for nightmareb. That's a lot of zones! In addition, I have yet to find any working logs for many instanced zones later then LDoN, new bazaar, and nektulos (or middle Nektulos if you play Live I've been told) Secondly, nobody ever said we will update our tools as necessary. We only work on the db and occasionally add a submit to the server core when we need it. No work is done on any db tools by PEQ. We don't have any unreleased tools for db development. What we have, you have and yes our current tools like yours do not work with Live packets, only older log collections.

The PEQ database does have spawns for most of the zones our client supports. The above mentioned zones are exceptions. This just recently occurred. 90% of these zones were a gift from FNW. When he handed PEQ over to me, he sourced all the logs he had into the db so they wouldn't go to waste. Thank him! To avoid any misunderstandings, FNW is still an active member of the EQEmu community, he just prefers to work on the code. The other 10% of the zones came from what I had popped in my database.

To conclude, I feel my method is fair. The best way to help is by dropping changes on the PEQ forums. You don't even need to play on the server, our players are great about leaving bug reports or ideas of what they feel needs to be changed. If more people did this, we'd be able to release what we have faster. I'm never going to tell you what you need to work on either. If you see something that needs work and you feel you can do it, then go for it.

I am open to suggestions. If somebody as any other options, I am willing to listen.


All times are GMT -4. The time now is 02:00 PM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.