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

04-14-2008, 09:09 PM
|
Demi-God
|
|
Join Date: May 2007
Posts: 1,032
|
|
Quote:
Originally Posted by Angelox
well, it's all a matter of how you look at it. When I played Pre-Kunark, it was the best time I ever had in Everquest , only matched by all the fun I have working with the EqEmulator. My main character was a Ranger, and he was very limited at the time, but I managed to find the right people to group with (Wizard, Cleric, Druid, etc.) and together, we did some pretty incredible things for the era.
I always want to make the old zones, just as they were - with hopes someday we might have a nice old school server.
Binding restrictions was an intricate part of the old game, also, travel was restricted to boats and your feet, or whenever you could find a druid. This made the game seem bigger - a trip from Gfay to Freeport took some time, and was risky. The game was hard, but challenging. Little things make a big difference ; where you can bind, where you can use sow, levitate, etc. This is Verant style game, when it got passed over to SOE, things started to change fast.
|
I also started playign pre-kunark. And yes, I also adore spirit of adventure by having to travel by foot. But there are features, and there are annoyances: giving half of the classes a convinience to bind and gate, whiel others may have to run from Qeynos to Freeport 7 times just because they keep getting killed in Kithihor - is hardly fair, classic or no classic
not to mention itemezation pre-kunark sucked uterly. I remember melees showing up for nagafen raid in bronze, and entire server casters were either in Green or Black till 50, and sometimes way after that.
What I am trying to say- Verant Vision was horibly unbalanced, it got better with Kunark/Velious. (and no SOE vision is not any better, and thats the reason I am making my own server  )
|
 |
|
 |
 |
|
 |

04-16-2008, 09:06 AM
|
Developer
|
|
Join Date: Oct 2004
Location: THE ATL (wut wut)
Posts: 325
|
|
I know it's not 100% perfect, but this is how we did it (same type of approach that Angelox was talking about). I hardcoded a list of city zones, and if you're not a caster, you cannot bind or be bound outside of those zones (note: this list only goes up to luclin - but since our server is Old World only, it's overkill for us  ).
Anyway, it could be easily expanded upon if anyone was interested in using it.
Currently, it says:
If the zone is not listed as "CanBind" in the zones table, then you cannot bind (unless you're a GM).
If the zone isn't in the hardcoded list of cities, and you're not a caster, then you cannot bind (unless you're a GM).
Otherwise, you can bind.
It's not beautiful, and I would like to clean it up and put it into the database, but honestly, it gets its job done, so I haven't messed with it. If anyone else wants to use it, be my guest.
Dax
./zone/zone.h
Code:
void SetGraveyard(int32 zoneid, int32 x, int32 y, int32 z, int32 heading);
bool IsCity(int32 zoneid); //Lieka Edit: Put in for melee binding rules
./zone/zone.cpp
Code:
void Zone::SetGraveyard(int32 zoneid, int32 x, int32 y, int32 z, int32 heading) {
pgraveyard_zoneid = zoneid;
pgraveyard_x = x;
pgraveyard_y = y;
pgraveyard_z = z;
pgraveyard_heading = heading;
}
bool Zone::IsCity(int32 zoneid) {
if ((zoneid == 1) || //South Qeynos
(zoneid == 2) || //North Qeynos
(zoneid == 3) || //Surefall Glade
(zoneid == 8) || //North Freeport
(zoneid == 9) || //West Freeport
(zoneid == 10) || //East Freeport
(zoneid == 19) || //Rivervale
(zoneid == 23) || //Erudin Palace
(zoneid == 24) || //Erudin
(zoneid == 29) || //Halas
(zoneid == 40) || //Neriak Foreign Quarter
(zoneid == 41) || //Neriak Commons
(zoneid == 42) || //Neriak Third Gate
(zoneid == 45) || //Qeynos Aqueduct Systems
(zoneid == 49) || //Oggok
(zoneid == 52) || //Grobb
(zoneid == 54) || //Greateer Faydark
(zoneid == 55) || //Ak`Anon
(zoneid == 60) || //South Kaladim
(zoneid == 61) || //Northern Felwithe
(zoneid == 62) || //Southern Felwithe
(zoneid == 67) || //Northern Kaladim
(zoneid == 75) || //Paineel
(zoneid == 82) || //Cabilis West
(zoneid == 83) || //Swamp of No Hope
(zoneid == 106) || //Cabilis East
(zoneid == 155)) { //The City of Shar Vahl
return true;
} else {
return false;
}
}
./zone/spell_effects.cpp
Code:
case SE_BindAffinity:
{
#ifdef SPELL_EFFECT_SPAM
snprintf(effect_desc, _EDLEN, "Bind Affinity");
#endif
if (IsClient())
{
if((!zone->CanBind() && !CastToClient()->GetGM())){
Message(13, "It would be very difficult for anyone to form an affinity with this area.");
break;
} else if ( ((!zone->IsCity(zone->GetZoneID())) && ((GetClass() != DRUID) && (GetClass() != CLERIC) && (GetClass() != SHAMAN) && (GetClass() != WIZARD) && (GetClass() != ENCHANTER) && (GetClass() != MAGICIAN) && (GetClass() != NECROMANCER)) && !CastToClient()->GetGM())){
Message(13, "You cannot form an affinity with this area. Try a city.");
break;
} else {
CastToClient()->SetBindPoint();
Save();
}
}
break;
}
__________________
Daxum
Former ServerOp - Vallon Zek / Tallon Zek Emu Server - Legit / Guild PvP - (2007 - 2011 RIP)
|
 |
|
 |

04-16-2008, 09:38 AM
|
 |
The PEQ Dude
|
|
Join Date: Apr 2003
Location: -
Posts: 1,988
|
|
As ugly as it is, it's also a clever workaround. Though, I bet it wouldn't be hard to add a new column to zone and get rid of the hardcoding. I'll give that shot and see what I come up. I just got done merging your new MQ2 detection system into TGC's code (it looks perfect, I just need to clean up those 700 zone_points *sigh*) and was about to test it out... until I saw this post. Not sure if I should thank you or curse you :P
|

04-16-2008, 10:43 AM
|
Developer
|
|
Join Date: Oct 2004
Location: THE ATL (wut wut)
Posts: 325
|
|
Haha, you're welcome and I'm sorry.
Dax
__________________
Daxum
Former ServerOp - Vallon Zek / Tallon Zek Emu Server - Legit / Guild PvP - (2007 - 2011 RIP)
|

04-17-2008, 11:45 AM
|
Fire Beetle
|
|
Join Date: Mar 2006
Posts: 24
|
|
I think pre-Velious they had support for regions of zones being unbindable.
This may be faulty recollection, but I remember having to get bound right up against the wall on one corner of OT's city keep because I was KOS there and had screwed up my FV faction hunting those faerie dragon things.
If I recall correctly, I had just about enough time to squat, memorize SoW, cast it on myself, and run like hell before a patrolling guard ganked me after I died.
|

04-17-2008, 02:04 PM
|
Demi-God
|
|
Join Date: May 2007
Posts: 1,032
|
|
bad bad bad code.
cuase it forcefuly hinders melee classes.
If we must have melee binding restriction - I much rather have an extra collumn like cavedude said
what we realy could use is a confirmation box when person is been bound, so evil casters do not bind melees say in VT
under Aten Ha Ra feet
|

04-17-2008, 02:54 PM
|
 |
The PEQ Dude
|
|
Join Date: Apr 2003
Location: -
Posts: 1,988
|
|
Why is it bad? I have it up on TGC right now (though, I did add the db column, I'll diff that and post later) and it's fine for the most part. Melee toons can only be bound in city zones, this code does preciously that.
I don't see a need for a confirmation box, it isn't Live Like, you have to be grouped with the caster to be bound by them, and since they can only be bound in cities, there is no real way to exploit bind affinity... Now, sacrifice and rez on the other hand... those could use confirmation boxes.
|
Thread Tools |
|
Display Modes |
Hybrid Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -4. The time now is 07:47 PM.
|
|
 |
|
 |
|
|
|
 |
|
 |
|
 |