{"action":"opened","number":17,"pull_request":{"url":"https://api.github.com/repos/arkadiusz123/tgstation/pulls/17","id":206748099,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA2NzQ4MDk5","html_url":"https://github.com/arkadiusz123/tgstation/pull/17","diff_url":"https://github.com/arkadiusz123/tgstation/pull/17.diff","patch_url":"https://github.com/arkadiusz123/tgstation/pull/17.patch","issue_url":"https://api.github.com/repos/arkadiusz123/tgstation/issues/17","number":17,"state":"open","locked":false,"title":"[PR MIRROR]: Refactor the map loader","user":{"login":"arkadiusz123-pull-request-bot","id":42181818,"node_id":"MDQ6VXNlcjQyMTgxODE4","avatar_url":"https://avatars1.githubusercontent.com/u/42181818?v=4","gravatar_id":"","url":"https://api.github.com/users/arkadiusz123-pull-request-bot","html_url":"https://github.com/arkadiusz123-pull-request-bot","followers_url":"https://api.github.com/users/arkadiusz123-pull-request-bot/followers","following_url":"https://api.github.com/users/arkadiusz123-pull-request-bot/following{/other_user}","gists_url":"https://api.github.com/users/arkadiusz123-pull-request-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/arkadiusz123-pull-request-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arkadiusz123-pull-request-bot/subscriptions","organizations_url":"https://api.github.com/users/arkadiusz123-pull-request-bot/orgs","repos_url":"https://api.github.com/users/arkadiusz123-pull-request-bot/repos","events_url":"https://api.github.com/users/arkadiusz123-pull-request-bot/events{/privacy}","received_events_url":"https://api.github.com/users/arkadiusz123-pull-request-bot/received_events","type":"User","site_admin":false},"body":"Original Author: SpaceManiac\nOriginal PR Link: https://github.com/tgstation/tgstation/pull/39567\n\n:cl:\r\nrefactor: The map loader has been cleaned up and made more flexible.\r\n/:cl:\r\n\r\nFollow-up to #38764. What is hopefully the bulk of the refactor is done, and one tweak to SSmapping has been made to avoid duplicate work, which should cut about 10% off of station and Lavaland load times. Tested station maps, ruins, placing templates, and buildmode reload, and everything seemed to work. **TODO**: test Reebe loading.\r\n\r\n* `load_map` is now a global proc\r\n* `/datum/map_reader` is gone\r\n* `/datum/parsed_map/New` parses map files\r\n* `/datum/parsed_map/load` modifies the world accordingly\r\n* The MC critical section for map loading no longer includes parsing\r\n\r\nFuture features that this work helps enable:\r\n* Validating maps without loading them, a prerequisite for the current loose design for the out-of-tree map system.\r\n* Properly addressing some of the away mission loading issues (#39378) and other atmos issues relating to map templates.\r\n* Allowing cropping by Z as well as X and Y, to improve the behavior of buildmode reload for multi-z maps.\r\n* Tricks such as this fancy preview for the \"Map Template - Place\" verb (not in this PR because I'm not satisfied with it yet):  \\\r\n  \\\r\n  ![advanced-preview-cropped](https://user-images.githubusercontent.com/222630/43684194-6e74601c-9850-11e8-999f-8ac156af51cd.gif)\r\n","created_at":"2018-08-07T15:59:21Z","updated_at":"2018-08-07T15:59:21Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/arkadiusz123/tgstation/pulls/17/commits","review_comments_url":"https://api.github.com/repos/arkadiusz123/tgstation/pulls/17/comments","review_comment_url":"https://api.github.com/repos/arkadiusz123/tgstation/pulls/comments{/number}","comments_url":"https://api.github.com/repos/arkadiusz123/tgstation/issues/17/comments","statuses_url":"https://api.github.com/repos/arkadiusz123/tgstation/statuses/3009fe2a236d0452ffc4da9f3a3733500889a3c0","head":{"label":"AutomaticFrenzy:patch/maploader-refactor","ref":"patch/maploader-refactor","sha":"3009fe2a236d0452ffc4da9f3a3733500889a3c0","user":{"login":"AutomaticFrenzy","id":31360629,"node_id":"MDQ6VXNlcjMxMzYwNjI5","avatar_url":"https://avatars1.githubusercontent.com/u/31360629?v=4","gravatar_id":"","url":"https://api.github.com/users/AutomaticFrenzy","html_url":"https://github.com/AutomaticFrenzy","followers_url":"https://api.github.com/users/AutomaticFrenzy/followers","following_url":"https://api.github.com/users/AutomaticFrenzy/following{/other_user}","gists_url":"https://api.github.com/users/AutomaticFrenzy/gists{/gist_id}","starred_url":"https://api.github.com/users/AutomaticFrenzy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AutomaticFrenzy/subscriptions","organizations_url":"https://api.github.com/users/AutomaticFrenzy/orgs","repos_url":"https://api.github.com/users/AutomaticFrenzy/repos","events_url":"https://api.github.com/users/AutomaticFrenzy/events{/privacy}","received_events_url":"https://api.github.com/users/AutomaticFrenzy/received_events","type":"User","site_admin":false},"repo":{"id":103172024,"node_id":"MDEwOlJlcG9zaXRvcnkxMDMxNzIwMjQ=","name":"tgstation","full_name":"AutomaticFrenzy/tgstation","owner":{"login":"AutomaticFrenzy","id":31360629,"node_id":"MDQ6VXNlcjMxMzYwNjI5","avatar_url":"https://avatars1.githubusercontent.com/u/31360629?v=4","gravatar_id":"","url":"https://api.github.com/users/AutomaticFrenzy","html_url":"https://github.com/AutomaticFrenzy","followers_url":"https://api.github.com/users/AutomaticFrenzy/followers","following_url":"https://api.github.com/users/AutomaticFrenzy/following{/other_user}","gists_url":"https://api.github.com/users/AutomaticFrenzy/gists{/gist_id}","starred_url":"https://api.github.com/users/AutomaticFrenzy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AutomaticFrenzy/subscriptions","organizations_url":"https://api.github.com/users/AutomaticFrenzy/orgs","repos_url":"https://api.github.com/users/AutomaticFrenzy/repos","events_url":"https://api.github.com/users/AutomaticFrenzy/events{/privacy}","received_events_url":"https://api.github.com/users/AutomaticFrenzy/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/AutomaticFrenzy/tgstation","description":"the /tg/station branch of SS13","fork":true,"url":"https://api.github.com/repos/AutomaticFrenzy/tgstation","forks_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/forks","keys_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/keys{/key_id}","collaborators_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/teams","hooks_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/hooks","issue_events_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/issues/events{/number}","events_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/events","assignees_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/assignees{/user}","branches_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/branches{/branch}","tags_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/tags","blobs_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/git/refs{/sha}","trees_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/git/trees{/sha}","statuses_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/statuses/{sha}","languages_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/languages","stargazers_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/stargazers","contributors_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/contributors","subscribers_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/subscribers","subscription_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/subscription","commits_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/commits{/sha}","git_commits_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/git/commits{/sha}","comments_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/comments{/number}","issue_comment_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/issues/comments{/number}","contents_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/contents/{+path}","compare_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/compare/{base}...{head}","merges_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/merges","archive_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/downloads","issues_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/issues{/number}","pulls_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/pulls{/number}","milestones_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/milestones{/number}","notifications_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/labels{/name}","releases_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/releases{/id}","deployments_url":"https://api.github.com/repos/AutomaticFrenzy/tgstation/deployments","created_at":"2017-09-11T18:20:24Z","updated_at":"2018-08-05T01:17:37Z","pushed_at":"2018-08-07T07:15:02Z","git_url":"git://github.com/AutomaticFrenzy/tgstation.git","ssh_url":"git@github.com:AutomaticFrenzy/tgstation.git","clone_url":"https://github.com/AutomaticFrenzy/tgstation.git","svn_url":"https://github.com/AutomaticFrenzy/tgstation","homepage":"http://www.tgstation13.org/","size":1187312,"stargazers_count":1,"watchers_count":1,"language":"DM","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"agpl-3.0","name":"GNU Affero General Public License v3.0","spdx_id":"AGPL-3.0","url":"https://api.github.com/licenses/agpl-3.0","node_id":"MDc6TGljZW5zZTE="},"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"arkadiusz123:master","ref":"master","sha":"054d6d1fa2adc1785c63b3cde464ac2462bdb64c","user":{"login":"arkadiusz123","id":17968576,"node_id":"MDQ6VXNlcjE3OTY4NTc2","avatar_url":"https://avatars2.githubusercontent.com/u/17968576?v=4","gravatar_id":"","url":"https://api.github.com/users/arkadiusz123","html_url":"https://github.com/arkadiusz123","followers_url":"https://api.github.com/users/arkadiusz123/followers","following_url":"https://api.github.com/users/arkadiusz123/following{/other_user}","gists_url":"https://api.github.com/users/arkadiusz123/gists{/gist_id}","starred_url":"https://api.github.com/users/arkadiusz123/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arkadiusz123/subscriptions","organizations_url":"https://api.github.com/users/arkadiusz123/orgs","repos_url":"https://api.github.com/users/arkadiusz123/repos","events_url":"https://api.github.com/users/arkadiusz123/events{/privacy}","received_events_url":"https://api.github.com/users/arkadiusz123/received_events","type":"User","site_admin":false},"repo":{"id":143896262,"node_id":"MDEwOlJlcG9zaXRvcnkxNDM4OTYyNjI=","name":"tgstation","full_name":"arkadiusz123/tgstation","owner":{"login":"arkadiusz123","id":17968576,"node_id":"MDQ6VXNlcjE3OTY4NTc2","avatar_url":"https://avatars2.githubusercontent.com/u/17968576?v=4","gravatar_id":"","url":"https://api.github.com/users/arkadiusz123","html_url":"https://github.com/arkadiusz123","followers_url":"https://api.github.com/users/arkadiusz123/followers","following_url":"https://api.github.com/users/arkadiusz123/following{/other_user}","gists_url":"https://api.github.com/users/arkadiusz123/gists{/gist_id}","starred_url":"https://api.github.com/users/arkadiusz123/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arkadiusz123/subscriptions","organizations_url":"https://api.github.com/users/arkadiusz123/orgs","repos_url":"https://api.github.com/users/arkadiusz123/repos","events_url":"https://api.github.com/users/arkadiusz123/events{/privacy}","received_events_url":"https://api.github.com/users/arkadiusz123/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/arkadiusz123/tgstation","description":"the /tg/station branch of SS13","fork":true,"url":"https://api.github.com/repos/arkadiusz123/tgstation","forks_url":"https://api.github.com/repos/arkadiusz123/tgstation/forks","keys_url":"https://api.github.com/repos/arkadiusz123/tgstation/keys{/key_id}","collaborators_url":"https://api.github.com/repos/arkadiusz123/tgstation/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/arkadiusz123/tgstation/teams","hooks_url":"https://api.github.com/repos/arkadiusz123/tgstation/hooks","issue_events_url":"https://api.github.com/repos/arkadiusz123/tgstation/issues/events{/number}","events_url":"https://api.github.com/repos/arkadiusz123/tgstation/events","assignees_url":"https://api.github.com/repos/arkadiusz123/tgstation/assignees{/user}","branches_url":"https://api.github.com/repos/arkadiusz123/tgstation/branches{/branch}","tags_url":"https://api.github.com/repos/arkadiusz123/tgstation/tags","blobs_url":"https://api.github.com/repos/arkadiusz123/tgstation/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/arkadiusz123/tgstation/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/arkadiusz123/tgstation/git/refs{/sha}","trees_url":"https://api.github.com/repos/arkadiusz123/tgstation/git/trees{/sha}","statuses_url":"https://api.github.com/repos/arkadiusz123/tgstation/statuses/{sha}","languages_url":"https://api.github.com/repos/arkadiusz123/tgstation/languages","stargazers_url":"https://api.github.com/repos/arkadiusz123/tgstation/stargazers","contributors_url":"https://api.github.com/repos/arkadiusz123/tgstation/contributors","subscribers_url":"https://api.github.com/repos/arkadiusz123/tgstation/subscribers","subscription_url":"https://api.github.com/repos/arkadiusz123/tgstation/subscription","commits_url":"https://api.github.com/repos/arkadiusz123/tgstation/commits{/sha}","git_commits_url":"https://api.github.com/repos/arkadiusz123/tgstation/git/commits{/sha}","comments_url":"https://api.github.com/repos/arkadiusz123/tgstation/comments{/number}","issue_comment_url":"https://api.github.com/repos/arkadiusz123/tgstation/issues/comments{/number}","contents_url":"https://api.github.com/repos/arkadiusz123/tgstation/contents/{+path}","compare_url":"https://api.github.com/repos/arkadiusz123/tgstation/compare/{base}...{head}","merges_url":"https://api.github.com/repos/arkadiusz123/tgstation/merges","archive_url":"https://api.github.com/repos/arkadiusz123/tgstation/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/arkadiusz123/tgstation/downloads","issues_url":"https://api.github.com/repos/arkadiusz123/tgstation/issues{/number}","pulls_url":"https://api.github.com/repos/arkadiusz123/tgstation/pulls{/number}","milestones_url":"https://api.github.com/repos/arkadiusz123/tgstation/milestones{/number}","notifications_url":"https://api.github.com/repos/arkadiusz123/tgstation/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/arkadiusz123/tgstation/labels{/name}","releases_url":"https://api.github.com/repos/arkadiusz123/tgstation/releases{/id}","deployments_url":"https://api.github.com/repos/arkadiusz123/tgstation/deployments","created_at":"2018-08-07T15:54:46Z","updated_at":"2018-08-07T15:55:08Z","pushed_at":"2018-08-07T15:59:20Z","git_url":"git://github.com/arkadiusz123/tgstation.git","ssh_url":"git@github.com:arkadiusz123/tgstation.git","clone_url":"https://github.com/arkadiusz123/tgstation.git","svn_url":"https://github.com/arkadiusz123/tgstation","homepage":"https://www.tgstation13.org/","size":1173853,"stargazers_count":0,"watchers_count":0,"language":"DM","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":17,"license":{"key":"agpl-3.0","name":"GNU Affero General Public License v3.0","spdx_id":"AGPL-3.0","url":"https://api.github.com/licenses/agpl-3.0","node_id":"MDc6TGljZW5zZTE="},"forks":0,"open_issues":17,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/arkadiusz123/tgstation/pulls/17"},"html":{"href":"https://github.com/arkadiusz123/tgstation/pull/17"},"issue":{"href":"https://api.github.com/repos/arkadiusz123/tgstation/issues/17"},"comments":{"href":"https://api.github.com/repos/arkadiusz123/tgstation/issues/17/comments"},"review_comments":{"href":"https://api.github.com/repos/arkadiusz123/tgstation/pulls/17/comments"},"review_comment":{"href":"https://api.github.com/repos/arkadiusz123/tgstation/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/arkadiusz123/tgstation/pulls/17/commits"},"statuses":{"href":"https://api.github.com/repos/arkadiusz123/tgstation/statuses/3009fe2a236d0452ffc4da9f3a3733500889a3c0"}},"author_association":"NONE","merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":17,"additions":206,"deletions":232,"changed_files":7}}
{"actor":{"display_login":"arkadiusz123-pull-request-bot"}}