Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::Windows Servers

Support::Windows Servers Support forum for Windows EQEMu users.

Reply
 
Thread Tools Display Modes
  #1  
Old 07-24-2012, 08:30 PM
jdoran
Hill Giant
 
Join Date: Jul 2012
Posts: 212
Default Can doors be added with the server up?

I am interested in adding objects to the game dynamically (with the server up). What I would like to do is have a quest create an object only seen by one player (to keep the world from getting cluttered up). A door struck me as a possible solution. There are all sorts of models usable as doors, and I think the collection is sufficient for what I'd like to do.

I see that door information is read in when a zone initializes, but I haven't located where this information is sent to the client. Is there some sort of door packet which could be resent to a client without them zoning?

If that won't work, does anyone have any alternate ideas for me to look into?
Reply With Quote
  #2  
Old 07-24-2012, 10:30 PM
sorvani
Dragon
 
Join Date: May 2010
Posts: 966
Default

yes you can spawn doors live (gm commands) and via quest scripts. those functions were added a year or so ago. no in game objects are one client only that i know of.

assuming they added that functionality to later clients, it likely is not coded for in the current server base.
Reply With Quote
  #3  
Old 07-25-2012, 04:24 PM
jdoran
Hill Giant
 
Join Date: Jul 2012
Posts: 212
Default

I'm not sure why this was moved to the Windows server forum, since I am not running a Windows server (nor is my question Windows specific).

Sorvani, thanks for the info on spawned doors. If a script can do it, then anything in the server can. I am modifying my (Linux based) server, and am considering sending data to a subset of the clients. I'm sure someone must have used the mechanic before, but I cannot think of an example. In a way it is like instancing.

If only one client is informed of the "door", then nobody else will be able to interact with it.
Reply With Quote
  #4  
Old 07-25-2012, 04:38 PM
Caryatis
Dragon
 
Join Date: May 2009
Location: Milky Way
Posts: 541
Default

You need to give more explanation about what you want to do in order for people to actually be able to suggest things that are different from what you propose.

For example, adding a door for a single client is kind of retarded as you either add a door to an open space(looks retarded) or you add a door to an empty doorway(ie only blocking that client).

Most people that ask to do crazy shit like that, lack experience and thus are attempting to do something that is relatively easy but they are ignorant of a more elegant solution.

Also not sure why you are putting door in quotation marks.
Reply With Quote
  #5  
Old 07-25-2012, 04:58 PM
jdoran
Hill Giant
 
Join Date: Jul 2012
Posts: 212
Default

Sorry, I thought my first post explained all of this. I am looking to add objects for quests, and am considering using doors as the mechanism. Door objects can use many different models, and can indeed be free standing.

Caratys' belief that this is retarded/crazy shit is most likely the result of a misunderstanding of the use of "door". EQEmu has a door table which contains assorted odd items (palm trees in Oasis for example). I felt that developers would be familiar with this usage, and my message was originally posted in a development forum.

Why only make this available to one client? I have built a prototype quest generator (spent several years on this so far), as a research project. Using only existing objects in a zone is very limiting -- there may not be an object of a specific type already in the zone. Dynamically adding items would solve
this, but could quickly clutter up the zone. If information is only sent to one client, my generator could add a chest to a room if needed without affecting people not running the quest.

This is all experimental, as is the nature of research.
Reply With Quote
  #6  
Old 07-26-2012, 11:23 AM
Caryatis
Dragon
 
Join Date: May 2009
Location: Milky Way
Posts: 541
Default

Unless you require the functionality of a door(lockpick, open, animations, etc) then there is no point in using a door. Whenever you kill a raid mob in the last 7 years, a chest spawns... do you think that is a door?

Your post simply reinforces my point... you want to spawn a chest so you think you need a door because you don't know how to properly do it(nobody is going to be able to open that "door chest").

Making mobs visible to only certain clients may be doable, if not there is code posted on how to restrict that mob to certain individuals which you could adapt.
Reply With Quote
  #7  
Old 07-26-2012, 05:23 PM
jdoran
Hill Giant
 
Join Date: Jul 2012
Posts: 212
Default

Funny how the database currently has chests in the door table.

Anyhow, a chest was just one example. Any placeable item is of interest.
I mentioned doors mainly to show that I have given the matter some study,
rather than running to the forums immediately. In my original post I asked for alternatives from people who know more than I, fully expecting that doors would be rejected.

@Caryatis I wouldn't mind some constructive feedback instead of your
ad-hominum rants. You might know what you are talking about, but
the tone of your posts causes me to dismiss them (and you) immediately.
Reply With Quote
  #8  
Old 07-27-2012, 09:19 AM
Caryatis
Dragon
 
Join Date: May 2009
Location: Milky Way
Posts: 541
Default

When I was younger I probably would have linked the definition of ad hominem but suffice to say its not what you think it is. Feel free to point out where I directly called you a name though.

Whether you choose to dismiss my posts or not, in 3 days when you have gotten no further responses you will eventually read my post and then realize you have your answer.
Reply With Quote
  #9  
Old 07-27-2012, 09:30 AM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,071
Default

Quote:
Originally Posted by jdoran View Post
I am interested in adding objects to the game dynamically (with the server up). What I would like to do is have a quest create an object only seen by one player (to keep the world from getting cluttered up). A door struck me as a possible solution. There are all sorts of models usable as doors, and I think the collection is sufficient for what I'd like to do.

I see that door information is read in when a zone initializes, but I haven't located where this information is sent to the client. Is there some sort of door packet which could be resent to a client without them zoning?

If that won't work, does anyone have any alternate ideas for me to look into?
Right now yes you can build objects dynamically by using Perl exported objects:

Code:
int16 QuestManager::CreateDoor(const char* model, float x, float y, float z, float heading, int8 opentype, int16 size)
in otherwords:

Code:
quest::CreateDoor(const char* model, float x, float y, float z, float heading, int8 opentype, int16 size)
Right now it is not implemented to only send a packet to a single entity to spawn an object so that would have to be customly made. The source does the iterations through the entity list to send the object packet to every player. You would have to implement separate functions to specify which client to send the packet update to.

So short answer right now, no.
Reply With Quote
  #10  
Old 07-27-2012, 12:23 PM
jdoran
Hill Giant
 
Join Date: Jul 2012
Posts: 212
Default

@Akkadius, thanks. Adding the client filtering will be trivial. I was worried that the objects wouldn't appear until after the client zoned.

I'm hoping that the .mods in the s3d files correspond to placeable models.
Reply With Quote
Reply


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 10:58 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3