ID:2250797
 
This week's Development News comes a day early. I emphatically deny that this has anything to do with a government conspiracy that I may or may not be indirectly involved in. It'd be crazy to insinuate that.

It's been a pretty productive week here, but not in the realms of 511 fixes or web foo (yet). Anticipating a chaotic schedule, I threw my effort into small-project work for 512 where the development path was, I felt, straightforward. I also knew that this small project wouldn't all be done in a week and would need to happen in stages, so I may as well get started on some of those stages.

I mentioned this last week, but this week it kicked into high gear: Visual contents are a go for 512. Atoms in visual contents work a lot like images, except that they maintain their own IDs for mouse interaction and they're visible to everyone. (I'm considering a flag that would make these objects act more like images or overlays, when desired, retaining the ID of their parent. And on the flip side, I'm also thinking about the fact that maybe it would be sensible for images to have visual contents too; right now they don't.)

So far, only movables can be in visual contents, and only turfs and movables will support them. At the moment, the messaging isn't in place to tell the client about a turf's visual_contents, so that's still on my to-do list, but I have successfully tested a mob holding objs that way--each individually animated, at that. The process of implementing this has also forced me to make some changes at the server level, one of which streamlines the way objs and mobs are gathered to send to each client. Some client-side stuff has also had to change assumptions about the Z level, which is good because it kind of helps set the stage for an idea I've had for ages (not for 512!) about linking Z levels for seamless maps.

We've discussed the possibility of allowing turfs to be in visual contents too, and to be honest I'm leaning that way hard enough that I've done some preliminary code to handle it. This would allow some pretty interesting effects.

Areas are currently excluded from any of this, as are images. As I mentioned above I might be interested in giving images visual contents, but with areas this seems like overkill. I just know if I did that, somebody would use it, and then they'd complain when, predictably, it made a huge negative impact on performance.

Visual contents will not impact the results of view() or range(). That would get crazy incredibly fast.

Anyway enough of that, but as you can tell I'm pretty stoked about this new feature. There's still some brainstorming going on and I welcome your input. And speaking of welcoming, your donations and Memberships are also most welcome and appreciated. Thanks to everyone who's supported BYOND so far this month. Now that we're at the month's end and headed into the holiday weekend, if you haven't done anything yet it's a great time to become a Member.

Weather permitting--and given the way things are going so far, I expect plenty of you will laugh--it's your patriotic duty to fire up the grill and serve up some steak, burgers, hot dogs, ribs, barbecue chicken, or some other form of meat. Yes, even if you're a vegetarian. But in all seriousness, this holiday is about remembrance and it's important to remember our veterans who gave their lives in service to protect their country. Raise them a frosty mug this Memorial Day, and make the most of the freedom they safeguarded for all of us.
Lummox JR wrote:
but I have successfully tested a mob holding objs that way--each individually animated, at that

So like... fuck overlays now, right? Because if I can put an object in a mob's visual contents and animate that visual, I'm never using an overlay again.
In response to Unwanted4Murder
Unwanted4Murder wrote:
So like... fuck overlays now, right?
In response to Unwanted4Murder
Unwanted4Murder wrote:
Lummox JR wrote:
but I have successfully tested a mob holding objs that way--each individually animated, at that

So like... fuck overlays now, right? Because if I can put an object in a mob's visual contents and animate that visual, I'm never using an overlay again.

Overlays will have superior performance for most general-use cases. Also at present, visual contents act as distinct objects always which may not be desirable. Visual contents have some similar parallel uses, and some very different ones.
Overlays 4 LYFE