{"action":"opened","issue":{"url":"https://api.github.com/repos/frandallfarmer/neohabitat/issues/138","repository_url":"https://api.github.com/repos/frandallfarmer/neohabitat","labels_url":"https://api.github.com/repos/frandallfarmer/neohabitat/issues/138/labels{/name}","comments_url":"https://api.github.com/repos/frandallfarmer/neohabitat/issues/138/comments","events_url":"https://api.github.com/repos/frandallfarmer/neohabitat/issues/138/events","html_url":"https://github.com/frandallfarmer/neohabitat/issues/138","id":212228677,"number":138,"title":"Opaque container support","user":{"login":"frandallfarmer","id":314896,"avatar_url":"https://avatars1.githubusercontent.com/u/314896?v=3","gravatar_id":"","url":"https://api.github.com/users/frandallfarmer","html_url":"https://github.com/frandallfarmer","followers_url":"https://api.github.com/users/frandallfarmer/followers","following_url":"https://api.github.com/users/frandallfarmer/following{/other_user}","gists_url":"https://api.github.com/users/frandallfarmer/gists{/gist_id}","starred_url":"https://api.github.com/users/frandallfarmer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/frandallfarmer/subscriptions","organizations_url":"https://api.github.com/users/frandallfarmer/orgs","repos_url":"https://api.github.com/users/frandallfarmer/repos","events_url":"https://api.github.com/users/frandallfarmer/events{/privacy}","received_events_url":"https://api.github.com/users/frandallfarmer/received_events","type":"User","site_admin":false},"labels":[{"id":522308798,"url":"https://api.github.com/repos/frandallfarmer/neohabitat/labels/Bridge","name":"Bridge","color":"bfd4f2","default":false},{"id":522308657,"url":"https://api.github.com/repos/frandallfarmer/neohabitat/labels/Server","name":"Server","color":"d4c5f9","default":false}],"state":"open","locked":false,"assignee":{"login":"frandallfarmer","id":314896,"avatar_url":"https://avatars1.githubusercontent.com/u/314896?v=3","gravatar_id":"","url":"https://api.github.com/users/frandallfarmer","html_url":"https://github.com/frandallfarmer","followers_url":"https://api.github.com/users/frandallfarmer/followers","following_url":"https://api.github.com/users/frandallfarmer/following{/other_user}","gists_url":"https://api.github.com/users/frandallfarmer/gists{/gist_id}","starred_url":"https://api.github.com/users/frandallfarmer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/frandallfarmer/subscriptions","organizations_url":"https://api.github.com/users/frandallfarmer/orgs","repos_url":"https://api.github.com/users/frandallfarmer/repos","events_url":"https://api.github.com/users/frandallfarmer/events{/privacy}","received_events_url":"https://api.github.com/users/frandallfarmer/received_events","type":"User","site_admin":false},"assignees":[{"login":"frandallfarmer","id":314896,"avatar_url":"https://avatars1.githubusercontent.com/u/314896?v=3","gravatar_id":"","url":"https://api.github.com/users/frandallfarmer","html_url":"https://github.com/frandallfarmer","followers_url":"https://api.github.com/users/frandallfarmer/followers","following_url":"https://api.github.com/users/frandallfarmer/following{/other_user}","gists_url":"https://api.github.com/users/frandallfarmer/gists{/gist_id}","starred_url":"https://api.github.com/users/frandallfarmer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/frandallfarmer/subscriptions","organizations_url":"https://api.github.com/users/frandallfarmer/orgs","repos_url":"https://api.github.com/users/frandallfarmer/repos","events_url":"https://api.github.com/users/frandallfarmer/events{/privacy}","received_events_url":"https://api.github.com/users/frandallfarmer/received_events","type":"User","site_admin":false},{"login":"FUDCo","id":8011352,"avatar_url":"https://avatars2.githubusercontent.com/u/8011352?v=3","gravatar_id":"","url":"https://api.github.com/users/FUDCo","html_url":"https://github.com/FUDCo","followers_url":"https://api.github.com/users/FUDCo/followers","following_url":"https://api.github.com/users/FUDCo/following{/other_user}","gists_url":"https://api.github.com/users/FUDCo/gists{/gist_id}","starred_url":"https://api.github.com/users/FUDCo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FUDCo/subscriptions","organizations_url":"https://api.github.com/users/FUDCo/orgs","repos_url":"https://api.github.com/users/FUDCo/repos","events_url":"https://api.github.com/users/FUDCo/events{/privacy}","received_events_url":"https://api.github.com/users/FUDCo/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/frandallfarmer/neohabitat/milestones/6","html_url":"https://github.com/frandallfarmer/neohabitat/milestone/6","labels_url":"https://api.github.com/repos/frandallfarmer/neohabitat/milestones/6/labels","id":2367050,"number":6,"title":"Alpha","description":"Critical subsystems are working, some classes, regions, and features are not implemented yet.\r\n","creator":{"login":"frandallfarmer","id":314896,"avatar_url":"https://avatars1.githubusercontent.com/u/314896?v=3","gravatar_id":"","url":"https://api.github.com/users/frandallfarmer","html_url":"https://github.com/frandallfarmer","followers_url":"https://api.github.com/users/frandallfarmer/followers","following_url":"https://api.github.com/users/frandallfarmer/following{/other_user}","gists_url":"https://api.github.com/users/frandallfarmer/gists{/gist_id}","starred_url":"https://api.github.com/users/frandallfarmer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/frandallfarmer/subscriptions","organizations_url":"https://api.github.com/users/frandallfarmer/orgs","repos_url":"https://api.github.com/users/frandallfarmer/repos","events_url":"https://api.github.com/users/frandallfarmer/events{/privacy}","received_events_url":"https://api.github.com/users/frandallfarmer/received_events","type":"User","site_admin":false},"open_issues":4,"closed_issues":0,"state":"open","created_at":"2017-03-06T19:25:12Z","updated_at":"2017-03-06T19:44:38Z","due_on":"2017-04-01T07:00:00Z","closed_at":null},"comments":0,"created_at":"2017-03-06T19:44:38Z","updated_at":"2017-03-06T19:44:38Z","closed_at":null,"body":"Presently, all containers load all of their contents whenever the region is loaded. This is incorrect behavior. \r\n\r\nOriginal Habitat supports \"opaque\" containers, such as box, bag, chest, and even the avatar (as a special case.) What this means is that the contents of those items are not visible or accessible to anyone unless the container is \"open\" to them. This saves memory and disk loading time and allows more things to be in a region than can actually fit in the little 15k memory heap we have.\r\n\r\nWhen an item is placed into a opaque container, it is deleted from the client's memory. When an item is removed from an opaque container (into an avatar/the region), it \"appears\" in the region (is loaded from disk, if needed.)\r\n\r\nThe avatar special case is that the Head and Hand slots of the container are NOT opaque, but the pocket is opaque to other people (you never get a message describing the contents of someone else's pocket.)\r\n\r\nElko does not support this model directly, so we've got some work to do.\r\n\r\nThis task blocks others, so it is a high priority.\r\n\r\n"}}
{"actor":{"display_login":"frandallfarmer"}}