Sneaking and Hiding NPCs?
Question: is it posible to tell npc to hide or sneak? Specialy if they rogues by class?
I know that giving npc air elemental spells will make it cast invis on itself, but is there any other way? I belive there were some hiding rogues in Dulak Harbor on Guntak they would suddenly appear and attack. On other hand they could have been just trigered trap-spawns Overall it woudl be nice if npc rogues would all be hiden until you agro them Also I belive back in Crustal Coverns (or Dragon Necropolis?) the phase spiders were actualy able to become invisable while attacking - it was imposible to fight them wihout see invis ability do any of these work or can be implemented? |
Currently no but they're really interesting ideas so I wouldn't put it out of the question of being implemented in the future.
|
I am glad to hear that you like it =)
Specialy would be interesting if Rogue npc would first start out hidden, and when player walks into agro range, rather than just to rush at him, they would sneak up to him quetly and open up with a backstab =) |
Yeah I remember the Dulak Harbor Rogues, they weren't trap spawns, they were actually there hiding. You could see them with see invis on. Very nice idea though, I haven't even though about that :)
|
It would be possible, but it'd take watcher mobs or something of that sort.
For example, you could place an invisible watcher mob at the entrance to a cave with a proximity set so that when a player gets close enough, a mob will spawn and probably emote or shout something. I'm no quest expert, so I'm not too sure how to set up proximity signals on mobs, but I've seen things like that done before. |
This would be pretty simple just using the new quest commands.
Create your sneaking NPC as race 240 and I think gender 0. Then run this script: Code:
sub EVENT_AGGRO { |
you can also make a simple prox trap.
You make an invis npc triger holder with folowing script (below) who will spawn an actual npc, and then can either be set of wait timer or depop to prevent chain spawning (unles its your intent) (in PoJ on death Row there are crates in the ground- when steped on it will spawn a banshee every 60 seconds) Quote:
but of course this wasnt what i was refering to - I want actual npc rogues =) |
Quote:
zone/client_packet.cpp Code:
void Client::Handle_OP_Hide(const EQApplicationPacket *app) Looking at the code, it looks like all that's done is, when the client hides, it sends out a SpawnAppearance packet. It uses a type of 0x03, which is visibility, and a paramater of 1 for hidden, 0 for not hidden. Elsewhere in the code, if you do something to break invis, it will send 0, otherwise it'll continue to stay 1. In the case of a Rogue NPC, you should be able to do the same thing, you just have to figure out how to trigger it in the first place, which would probably be on spawning, but also maybe with a variable, just in case you don't want rogues to hide on you. The unhide would more than likely come into the aggro or attack code (probably attack if memory serves me on how it worked in Live, but it also depends if your NPCs are Hiding & Sneaking at the same time). In addition, if you want to create NPCs, like the spiders in Crystal Caverns whose invis isn't removed on aggro, combat, moving, etc, you just wouldn't send the packet removing invis. I know it's not the code to actually get it working, but hopefully this points someone in the right direction. |
All times are GMT -4. The time now is 04:27 PM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.