Log in

View Full Version : Placeable Brazier


provocating
11-09-2015, 12:56 PM
Anyone seen a brazier graphic, meaning a placeable object. I guess with things like tents, fire pits there should be an old school object that is a brazier in the game.

provocating
11-09-2015, 01:44 PM
Nevermind, they are actually all over the place. If you do a query in your doors table, just do a like on the word "braz"

Shendare
11-09-2015, 02:29 PM
Yeah, the only complication involved is making sure the model is available in the zone you're using it in, either via the .eqg, the _obj.s3d, or globalload.

provocating
11-09-2015, 03:32 PM
Question shendare, if the model I want to use is lets say in ecommons and I wanted to use it in qey2hh1 is that possible? I see from reading some people say to just edit your zone's asset file. That is not working for me.

Shendare
11-09-2015, 03:35 PM
Yeah, I'm not sure with which client the individual asset import .txt support was added in. For the most part, using an object in zones other than the one it's defined in has required adding it to globalload. This works fine for *_obj.s3d archives, but can cause some collisions between similarly named objects in .eqg files (obj_bridge from one zone.eqg will overwrite obj_bridge from another if both are loaded in memory at the same time).

provocating
11-09-2015, 03:40 PM
Wow, well that worked. I hate to mess with the globalload but as time moves on I just will have to :)

Shendare
11-09-2015, 03:49 PM
Yeah. With the compartmentalized system they use in EQ for asset management, it's really your only alternative unless you want to try to build your own .s3d/.wld file importing the individual needed fragments from the other's .wld, and there are no tools for that, I don't think.

provocating
11-09-2015, 04:06 PM
Not necessary. I just want people to being to interface with the object itself. Not sure if you can trade items to an object on the ground but I will find out.

Shendare
11-09-2015, 04:09 PM
You would make it a tradeskill object, I'm pretty sure. They would click on the object and it would open up a container window. They insert their items and click Combine, and the server would process it like a tradeskill recipe combine.

You can user Perl to script what happens when the combine is performed, to do whatever special quest-related stuff you want to do. I don't remember the event right offhand, but I do remember seeing one. It'll probably be something like EVENT_TRADESKILL_COMBINE.

Shendare
11-09-2015, 04:09 PM
There's a particular container type for quest-related combines. Don't remember it off-hand, either, but it would be the most appropriate one.

provocating
11-09-2015, 04:11 PM
Yeah strange thing when I change it from 0 to one of the types, lets say a research container, the graphic goes down to a bag. When I say 0, I mean type "none".

provocating
11-09-2015, 04:39 PM
Well this is interesting, I figured it out. If the type is NONE, or 0 you do not have to have _ACTORDEF at the end. If it is a container you have to have _ACTORDEF in there. Nice little tidbit.

provocating
11-09-2015, 04:53 PM
I see you can create a door via quest and looks like possibly ground spawns but not objects. Hmmm, not a deal breaker but may take some thought.

Shendare
11-09-2015, 05:19 PM
Tradeskill objects of Type 0 are handled specially. Type 0 is never used in-game for zone-interactable objects (it's the type for small bags in a character's inventory, I think), so a few years back I commandeered it for being able to place non-interactive static object models in a zone. It sends them as doors, with a door id of -1/255 and no scripting behind them.

And doors do not use the _ACTORDEF portion of the model name. I was sure I had coded in the type0object->door logic to remove _ACTORDEF if it came across it, but maybe it was just _DMSPRITEDEF, which people were using more often than _ACTORDEF for some reason back then.

I need to take a good look at that code and make sure it's still working perfectly with any changes that have been made to doors, objects, or entity lists since... 2009 or so. lol