So this is a thing now apparently

Any discussion not related to the other forum topics
Post Reply
User avatar
kjLotus
Special Guest
Posts: 1813
Joined: Sun Jul 22, 2012 2:16 pm

So this is a thing now apparently

Post by kjLotus » Mon Dec 22, 2014 2:55 am

Image

User avatar
atom0s
Developer
Posts: 537
Joined: Thu Oct 25, 2012 9:52 am

Re: So this is a thing now apparently

Post by atom0s » Mon Dec 22, 2014 3:08 am

I've summoned the devil inside of kj to do magical things lol.

User avatar
whasf
Site Admin
Posts: 1312
Joined: Thu Jul 19, 2012 9:11 pm

Re: So this is a thing now apparently

Post by whasf » Mon Dec 22, 2014 7:21 pm

If you could make them fight each other, that'd be +1
-- Whasf

User avatar
kjLotus
Special Guest
Posts: 1813
Joined: Sun Jul 22, 2012 2:16 pm

Re: So this is a thing now apparently

Post by kjLotus » Mon Dec 22, 2014 7:32 pm

whasf wrote:If you could make them fight each other, that'd be +1
2 minute of scripting (promathia fights prishe in the last CoP fight, so all the system stuff is there already)

User avatar
tagban
Posts: 352
Joined: Fri Dec 28, 2012 11:31 am
Location: Pennsylvania, USA

Re: So this is a thing now apparently

Post by tagban » Wed Dec 24, 2014 12:00 am

Lol, I want to just leave fenrir near the AH in Bastok and San D.. encourage windurst as the only safe bet.. :) Actually if this really is possibly server wide.. Could start adding scripted events for random new things to happen, would be pretty slick for servers wanting to do special things.

User avatar
kjLotus
Special Guest
Posts: 1813
Joined: Sun Jul 22, 2012 2:16 pm

Re: So this is a thing now apparently

Post by kjLotus » Wed Dec 24, 2014 12:57 am

tagban wrote:Lol, I want to just leave fenrir near the AH in Bastok and San D.. encourage windurst as the only safe bet.. :) Actually if this really is possibly server wide.. Could start adding scripted events for random new things to happen, would be pretty slick for servers wanting to do special things.
ya you can spawn anything you want in any zone. only restriction is that they don't count as mobs for certain things (aggro, aoes)

User avatar
tagban
Posts: 352
Joined: Fri Dec 28, 2012 11:31 am
Location: Pennsylvania, USA

Re: So this is a thing now apparently

Post by tagban » Wed Dec 24, 2014 9:43 am

How does that work now ? lol

marcux
Posts: 1
Joined: Thu May 01, 2014 10:27 am

Re: So this is a thing now apparently

Post by marcux » Wed Dec 24, 2014 11:09 am

Wait, you can now spawn in any zone, not just the zone the mob is bound to?
how?

User avatar
atom0s
Developer
Posts: 537
Joined: Thu Oct 25, 2012 9:52 am

Re: So this is a thing now apparently

Post by atom0s » Wed Dec 24, 2014 1:47 pm

marcux wrote:Wait, you can now spawn in any zone, not just the zone the mob is bound to?
how?
We are making use of a special table in the game client to handle it. Inside of the client there is a map of memory called the NPCMAP. This area of memory holds all the entities in the game of the current zone.
This area of memory is currently setup as the following:

Code: Select all

struct NPCMAP
{
    Entity _NPCEntities[1024];
    Entity _PlayerEntities[1024];
    Entity _DynamicEntities[2048];
};
The first 1024 entries in this map are non-playable characters. This is bound to the specific zone and is loaded from the DAT files. This includes all the NPCs such as quest mobs, towns people, monsters, event triggers, etc.
Next, the players take up the next 1024 entries in this table. This table is specific to players and players alone.
The last table holds all other "dynamic" entities. This means things that are spawned into the zone by either players or events.

By using the dynamic entity table, the game client allows the server to spawn any entity in the game, inside of any zone. However it does have drawbacks currently with DSP as we are not actively monitoring this collection of entities for things like aggro, AoE magic / abilities, and other things that are typically specific to NPCs only.

It's more of a fun feature then implementing something serious since there are only a handful of instances where the retail servers use this table to spawn in specific entities for events. kj mentioned a good example, such as Prishe in the last CoP fight. She is loaded into the zone using this method.

Post Reply