Project 1999

Go Back   Project 1999 > Server Issues > Resolved Issues

Closed Thread
 
Thread Tools Display Modes
  #1  
Old 05-24-2010, 02:03 AM
Phallax Phallax is offline
Fire Giant

Phallax's Avatar

Join Date: Apr 2010
Posts: 708
Default Shrink = dungeon only

Shrink was Dungeon only for quite some time. Its anywhere here.

Source:

http://everquest.allakhazam.com/hist...es-2002-2.html

Quote:
- Shaman and Beastlord Shrink spell has had its location restriction
removed.
Zones like CazicThule, City of Mist, Karnors, acted as both outside and dungeons and shrink worked there. May be a few others as well, dont believe poFear acted as both but do believe poHate did.
  #2  
Old 05-24-2010, 05:43 AM
Gorroth Gorroth is offline
Kobold

Gorroth's Avatar

Join Date: Mar 2010
Posts: 155
Default

Shrink worked in any zones classified as "dungeon", that includes Crushbone, Blackburrow, High Keep, Cazic Thule, City of Mist, Karnor's and probably a few others, even though you could use outdoor spells while in the zone.

The only place I remember where I couldn't shrink myself was vast open spaces like the Karanas. Shrink potion still worked there though, I think.

Not sure it's worth the coding annoyance. /shrug
  #3  
Old 05-24-2010, 12:56 PM
Phallax Phallax is offline
Fire Giant

Phallax's Avatar

Join Date: Apr 2010
Posts: 708
Default

its not about being worth it or not, its about it being classic =P
  #4  
Old 05-24-2010, 06:25 PM
Skaff Skaff is offline
Aviak


Join Date: Apr 2010
Posts: 83
Default

Quote:
Originally Posted by Phallax [You must be logged in to view images. Log in or Register.]
its not about being worth it or not, its about it being classic =P
That is true!

However, it appears that it might be an easy fix and really should require no "code" to fix. A method is already there to snag all of the blocked spells from a zone.

Code:
// from zone/zone.cpp

void Zone::LoadBlockedSpells(int32 zoneid)
{
//stuff...
}
I didn't see the scheme listed in "The EQEmulator Database Schema" section of the wiki (http://www.eqemulator.net/wiki/wikka...DatabaseSchema), but I eventually come across the "blocked_spells" table within the SQL scripts to create the base tables from PEQ download. That table appears to hold a giant list of all of the "no no" spells per zone. Unless additions have been made to that table, only Paineel "should" have those shrink restrictions. The schema for the "blocked_spells" table and the one instance of where the shrink restriction was used is below.

Code:
CREATE TABLE `altadv_vars` (
  `skill_id` int(11) NOT NULL default '0',
  `name` varchar(128) default NULL,
  `cost` int(11) default NULL,
  `max_level` int(11) default NULL,
  `hotkey_sid` int(10) unsigned NOT NULL default '0',
  `hotkey_sid2` int(10) unsigned NOT NULL default '0',
  `title_sid` int(10) unsigned NOT NULL default '0',
  `desc_sid` int(10) unsigned NOT NULL default '0',
  `type` tinyint(3) unsigned NOT NULL default '1',
  `spellid` int(10) unsigned NOT NULL default '0',
  `prereq_skill` int(10) unsigned NOT NULL default '0',
  `prereq_minpoints` int(10) unsigned NOT NULL default '0',
  `spell_type` int(10) unsigned NOT NULL default '0',
  `spell_refresh` int(10) unsigned NOT NULL default '0',
  `classes` int(10) unsigned NOT NULL default '65534',
  `berserker` int(10) unsigned NOT NULL default '0',
  `class_type` int(10) unsigned NOT NULL default '0',
  `cost_inc` tinyint(4) NOT NULL default '0',
  `aa_expansion` tinyint(3) unsigned NOT NULL default '3',
  `special_category` int(10) unsigned NOT NULL default '4294967295',
  `sof_type` tinyint(3) unsigned NOT NULL default '1',
  `sof_cost_inc` tinyint(3) NOT NULL default '0',
  `sof_max_level` tinyint(3) unsigned NOT NULL default '1',
  `sof_next_skill` int(10) unsigned NOT NULL default '0',
  `clientver` tinyint(3) unsigned NOT NULL default '1',
  PRIMARY KEY  (`skill_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
...
(3,345,2,75,0,0,0,10000,10000,10000,'You cannot shrink in this zone.','Prevent Shrink in Paineel')
...
So it appears that some simple entries (per zone) could solve the problem. Just make sure you use the right spell id (345)! [You must be logged in to view images. Log in or Register.] I still think that there might be a better solution (or used to be). However, the patch notes you listed does make me think that some structure changes facilitated an easy change.

I did explore the possibility of spell restriction list based off information from the "zone" table. The one attribute that looked possible was "ztype". However, after analyzing some of the entries for some of the zones and reading some of the documentation on "ztype" from (http://www.eqemulator.net/wiki/wikka...muDBSchemazone) and reading though some more code, it does appear that "ztype" variable is a bit of a mystery and not really used. The only "special" checks really appear to deal with binds, combat, levitation, outdoor casting, city zones and hot zones.
__________________
Skaff - 47 Dwarf Warrior
Last edited by Skaff; 05-24-2010 at 06:30 PM..
  #5  
Old 05-24-2010, 11:21 PM
Haynar Haynar is offline
Developer

Haynar's Avatar

Join Date: Oct 2009
Location: West of the Mississippi
Posts: 2,955
Default

This is already on our list of things to fix. FYI.

Thanks.

Haynar
Closed Thread


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 02:06 PM.


Everquest is a registered trademark of Daybreak Game Company LLC.
Project 1999 is not associated or affiliated in any way with Daybreak Game Company LLC.
Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.