[17:31:34] <Dominus> marzo, about exults disappearing objects, if npcs would keep track of 10-20 items they produce and "destroy" them after x time *if* the items are still around them, could this work? and be less of a performance penalty? And could this be done?
[17:31:48] <Dominus> (I'm trying to lure you back to Exult :))
[17:35:40] <Marzo> *If* that it what is causing the problem, then yes, something like it could work
[17:36:10] <Dominus> on the forum someone posted to another one, where that person just destroyed all the schedules and had no more problems :)
[17:36:25] <Marzo> But it would be more complicated than that -- it would require some object referencing to prevent problems that arise from caching out
[17:37:10] <Marzo> Which is something I had suggested some time back in the dev list, but there was not much interest in it -- as it might cause a performance hit
[17:38:08] <Dominus> yeah, I know. But as it stands now a performance hit is way better than disappearing objects and thus messed up games
[17:38:10] <Dominus> http://rpgcodex.net/phpBB/viewtopic.php?t=62655
[17:38:14] <Dominus> is the forum post
[17:38:27] <Dominus> be back in 15 minutes
[17:40:16] <Dominus> or actually still here, my daughter refuses to go to bed now
[17:40:45] <Dominus> anything I can do to lure you back? all U7 games in a ready to go zip? :)
[17:41:16] <Marzo> It is a huge undertaking, that is for sure; I might feel more comfortable doing it on a branch
[17:41:46] <Dominus> that sounds reasonable
[17:43:03] <Marzo> We could use the current version of std::tr1::shared_ptr/std::tr1::weak_ptr pair to do it
[17:44:30] <Marzo> Each NPC holds a shared_ptr to objects it is holding; each chunk holds a shared_ptr to objects lying on it; each schedule holds a weak_ptr to objects being used by the schedule
[17:44:54] <Marzo> (containers working like NPCs)
[17:45:27] <Marzo> The NPCs, containers and chunks keep the objects they own alive while needed; the schedule does not
[17:45:46] <Marzo> But in holding a weak_ptr to the object, it can determine if the object still exists
[17:46:21] <Marzo> As I said, a huge undertaking
[17:46:35] <Dominus> :(
[17:46:53] <Dominus> I think Malignant made the problem better AND worse :)
[17:47:01] <Marzo> How so?
[17:47:33] <Dominus> making the sew schedule more efficient that cloth in a bigger readius gets used makes it worse (more items being generated by the schedule)
[17:48:06] <Dominus> and making the tavern schedules a bit better that not too many plates and food gets served made it probably a bit better :)
[17:50:24] <Dominus> highly annoying that the problem is so hard to reproduce
[17:53:08] <Dominus> he did a lot of stuff in the schedules which might mask the the problem in SVN