{"__v":3,"_id":"550e7e7f8387ac0d00ed9e1a","category":{"__v":14,"_id":"54890d71c178b40b00aa3086","project":"543b9b0065bf840e00b473d5","version":"543b9b0065bf840e00b473d8","pages":["548a63d41bd6c40b00f77728","548a6fbab77bb70b00ac8bf2","548adcb7b77bb70b00ac8c9d","548add501bd6c40b00f777d2","548ae445b77bb70b00ac8cad","548aef1bb77bb70b00ac8ccb","548af4b41bd6c40b00f777fc","548eb9d5e52d2b0b001b9a28","5508449ba42e812500b711f3","550a8eed42fff40d00ae60e3","550ce8fd6c0b4c0d00fd42fb","550ce9026c0b4c0d00fd42fd","550d840f11e8d00d00b80383","550e7e7f8387ac0d00ed9e1a"],"reference":false,"createdAt":"2014-12-11T03:20:17.529Z","from_sync":false,"order":5,"slug":"game-settings","title":"Game Settings"},"project":"543b9b0065bf840e00b473d5","user":"543b9aa865bf840e00b473d1","version":{"__v":11,"_id":"543b9b0065bf840e00b473d8","project":"543b9b0065bf840e00b473d5","createdAt":"2014-10-13T09:27:28.467Z","releaseDate":"2014-10-13T09:27:28.467Z","categories":["543b9b0065bf840e00b473d9","543b9ef065bf840e00b473e0","54890012f291f61400c02d36","54890902f291f61400c02d3e","54890c43f291f61400c02d44","54890d71c178b40b00aa3086","5508125c0c4d8c19008a5f83","55094050961f17170070abbd","550945111c38c50d006118ad","550a4c2e42fff40d00ae6049","55221c074801a40d00a77610"],"is_hidden":false,"is_beta":false,"is_stable":false,"codename":"","version_clean":"1.0.0","version":"1.0"},"updates":[],"createdAt":"2015-03-22T08:34:07.884Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"order":8,"body":"[block:callout]\n{\n  \"type\": \"success\",\n  \"body\": \"The Starter Kit does not come with the first-start tutorial. [Learn more about Pro/Complete kits here](https://www.citybuildingkit.com/#pricing)\",\n  \"title\": \"Available Only in the Pro and Complete Kit\"\n}\n[/block]\n\n[block:embed]\n{\n  \"html\": \"<iframe class=\\\"embedly-embed\\\" src=\\\"//cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FKagrE3zOGn4%3Ffeature%3Doembed&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DKagrE3zOGn4%26feature%3Dyoutu.be&image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FKagrE3zOGn4%2Fhqdefault.jpg&key=02466f963b9b4bb8845a05b53d3235d7&type=text%2Fhtml&schema=youtube\\\" width=\\\"854\\\" height=\\\"480\\\" scrolling=\\\"no\\\" frameborder=\\\"0\\\" allowfullscreen></iframe>\",\n  \"url\": \"https://www.youtube.com/watch?v=KagrE3zOGn4&feature=youtu.be\",\n  \"title\": \"First Time Tutorial - Tutorial #8\",\n  \"favicon\": \"https://s.ytimg.com/yts/img/favicon-vflz7uhzw.ico\",\n  \"image\": \"https://i.ytimg.com/vi/KagrE3zOGn4/hqdefault.jpg\"\n}\n[/block]\nTeaching users about your game on their first play through is critical to ensure you have a solid on boarding flow. The less your players understand about how to play, and especially how to purchase, the harder it will be to grow your strategy game community and profit from your game.\n\nWe've prepared a first-start demo for game developers that walks users through the basic menu, ending on the competitions. You can add your own, edit the existing, or remove any of these. Replacing the text is even easier if you want to keep this original walkthrough.\n\nOnce a user has seen each part of the tutorial, they won't see the messages again. When you're developing your game's other functions and testing regularly, we recommend turning the tutorial off. (See below for instructions)\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://www.filepicker.io/api/file/rDj4mwdTSeVfKkOVm3tw\",\n        \"example-tutorial.jpg\",\n        \"800\",\n        \"600\",\n        \"#3b5109\",\n        \"\"\n      ],\n      \"caption\": \"Tutorial example\"\n    }\n  ]\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Where to Find the Tutorial Script\"\n}\n[/block]\nThe tutorial is an over-imposed invisible interface, with a set of buttons and arrows and a label in the middle of the screen. It can be found in Anchor – center / GhostHelper.\n\nAfter all the items are seen, the tutorial is disabled and the tutorialSeen variable is saved, so it doesn't show again the next time the game is run, assuming there is a local or server load at game start.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://www.filepicker.io/api/file/eGGnbM5oQmKPYEPHdFh6\",\n        \"tutorial-one.jpg\",\n        \"800\",\n        \"600\",\n        \"#80ad35\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\nThis invisible interface is static, doesn't have other panels that open or close, but the buttons don't register while another panel is open (checks for Relay / pauseInput). Since the tutorial is seen at game start, we preferred to have the entire structure separated so we can disable it.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://www.filepicker.io/api/file/NU8qJvS9Q3ShqHIrhl9n\",\n        \"tutorial-item.jpg\",\n        \"1043\",\n        \"566\",\n        \"#779736\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\nThe user can press the buttons in the recommended order, or completely ignore our instructions, in which case the tutorial items he accesses are marked as “seen”, and the tutorial moves to the next item. There is a short “intro” sequence, that is timed and not connected to any button (but disabled immediately if the user taps on any button).\n\nWhen the tutorial moves to an item, the corresponding fading arrows are activated and the label with explanations is changed accordingly.\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Sample Excerpt\"\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"// GhostHelper.cs\\n// Sample excerpt from the GhostHelper.cs Script\\n// This script controls the first-time tutorial experience.\\n\\n// Checks if they haven't started the tutorial\\nif (!itemSeen[0])\\n\\t\\t{\\n\\t\\t\\t// Only continues if the game is a fresh start\\n\\t\\t\\tif(!((Stats)stats).gameWasLoaded)\\n        //the first time the game is run + no user/auto save/load - start the music\\n\\t\\t\\t\\t((SoundFX)soundFX).MusicOn(); \\n\\n  \\t\\t// Sets the message text for the first tutorial\\n\\t\\t\\tfullCharArray =(\\\"Welcome to the strategy kit.\\\\n\\\" +\\n\\t\\t\\t\\t\\\"Since this is the first time you are running it,\\\\n\\\" +\\n\\t\\t\\t\\t\\\"-or you can press buttons faster than we can count-\\\\n\\\" +\\n\\t\\t\\t\\t\\\"we will try to walk you through some of the features.\\\").ToCharArray();\\n  \\n  \\t\\t// Checks if the tutorial is not running, triggers it\\n\\t\\t\\tif(!introRunning && this.gameObject.activeSelf)\\n\\t\\t\\t{\\n\\t\\t\\t\\tStartCoroutine(\\\"EndIntro\\\");\\n\\t\\t\\t\\tintroRunning = true;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n// The script continues with the next tutorial items\\n\",\n      \"language\": \"csharp\"\n    }\n  ]\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"How to Disable\"\n}\n[/block]\nWhen developing your game, this tutorial might get in the way if you're testing five to six times a day. It's easy to disable, just comment out the GhostHelper.cs script section below.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"// Excerpt from GhostHelper.cs\\n// Code obmitted (...) from each of the sections below for clarity.\\n// This example removes the tutorial\\n\\n/*\\n// Comment out the Tutorial Text\\n\\nif (!itemSeen[0])\\n\\t\\t{\\n  \\t\\t// ...\\n} else if (!itemSeen[1])\\n\\t\\t{\\n  \\t\\t// ...\\n} else if (!itemSeen[2])\\n\\t\\t{\\n  \\t\\t// ...\\n} else if (!itemSeen[3])\\n\\t\\t{\\n  \\t\\t// ...\\n} else if (!itemSeen[4])\\n\\t\\t{\\n  \\t\\t// ...\\n} else if (!itemSeen[5])\\n\\t\\t{\\n  \\t\\t// ...\\n}\\n\\n*/\",\n      \"language\": \"csharp\"\n    }\n  ]\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Sound Effects\"\n}\n[/block]\nThe key press sound effects throughout the tutorial can be found in the SFX folder as seen below and removed or replaced.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://www.filepicker.io/api/file/zuzOzM4S26Aoy2HQo4pR\",\n        \"key-press-sound-effects.jpg\",\n        \"800\",\n        \"600\",\n        \"#364708\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]","excerpt":"Instructions on how to edit the first-time tutorail","slug":"first-time-tutorial","type":"basic","title":"First-Time Tutorial"}

First-Time Tutorial

Instructions on how to edit the first-time tutorail

[block:callout] { "type": "success", "body": "The Starter Kit does not come with the first-start tutorial. [Learn more about Pro/Complete kits here](https://www.citybuildingkit.com/#pricing)", "title": "Available Only in the Pro and Complete Kit" } [/block] [block:embed] { "html": "<iframe class=\"embedly-embed\" src=\"//cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FKagrE3zOGn4%3Ffeature%3Doembed&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DKagrE3zOGn4%26feature%3Dyoutu.be&image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FKagrE3zOGn4%2Fhqdefault.jpg&key=02466f963b9b4bb8845a05b53d3235d7&type=text%2Fhtml&schema=youtube\" width=\"854\" height=\"480\" scrolling=\"no\" frameborder=\"0\" allowfullscreen></iframe>", "url": "https://www.youtube.com/watch?v=KagrE3zOGn4&feature=youtu.be", "title": "First Time Tutorial - Tutorial #8", "favicon": "https://s.ytimg.com/yts/img/favicon-vflz7uhzw.ico", "image": "https://i.ytimg.com/vi/KagrE3zOGn4/hqdefault.jpg" } [/block] Teaching users about your game on their first play through is critical to ensure you have a solid on boarding flow. The less your players understand about how to play, and especially how to purchase, the harder it will be to grow your strategy game community and profit from your game. We've prepared a first-start demo for game developers that walks users through the basic menu, ending on the competitions. You can add your own, edit the existing, or remove any of these. Replacing the text is even easier if you want to keep this original walkthrough. Once a user has seen each part of the tutorial, they won't see the messages again. When you're developing your game's other functions and testing regularly, we recommend turning the tutorial off. (See below for instructions) [block:image] { "images": [ { "image": [ "https://www.filepicker.io/api/file/rDj4mwdTSeVfKkOVm3tw", "example-tutorial.jpg", "800", "600", "#3b5109", "" ], "caption": "Tutorial example" } ] } [/block] [block:api-header] { "type": "basic", "title": "Where to Find the Tutorial Script" } [/block] The tutorial is an over-imposed invisible interface, with a set of buttons and arrows and a label in the middle of the screen. It can be found in Anchor – center / GhostHelper. After all the items are seen, the tutorial is disabled and the tutorialSeen variable is saved, so it doesn't show again the next time the game is run, assuming there is a local or server load at game start. [block:image] { "images": [ { "image": [ "https://www.filepicker.io/api/file/eGGnbM5oQmKPYEPHdFh6", "tutorial-one.jpg", "800", "600", "#80ad35", "" ] } ] } [/block] This invisible interface is static, doesn't have other panels that open or close, but the buttons don't register while another panel is open (checks for Relay / pauseInput). Since the tutorial is seen at game start, we preferred to have the entire structure separated so we can disable it. [block:image] { "images": [ { "image": [ "https://www.filepicker.io/api/file/NU8qJvS9Q3ShqHIrhl9n", "tutorial-item.jpg", "1043", "566", "#779736", "" ] } ] } [/block] The user can press the buttons in the recommended order, or completely ignore our instructions, in which case the tutorial items he accesses are marked as “seen”, and the tutorial moves to the next item. There is a short “intro” sequence, that is timed and not connected to any button (but disabled immediately if the user taps on any button). When the tutorial moves to an item, the corresponding fading arrows are activated and the label with explanations is changed accordingly. [block:api-header] { "type": "basic", "title": "Sample Excerpt" } [/block] [block:code] { "codes": [ { "code": "// GhostHelper.cs\n// Sample excerpt from the GhostHelper.cs Script\n// This script controls the first-time tutorial experience.\n\n// Checks if they haven't started the tutorial\nif (!itemSeen[0])\n\t\t{\n\t\t\t// Only continues if the game is a fresh start\n\t\t\tif(!((Stats)stats).gameWasLoaded)\n //the first time the game is run + no user/auto save/load - start the music\n\t\t\t\t((SoundFX)soundFX).MusicOn(); \n\n \t\t// Sets the message text for the first tutorial\n\t\t\tfullCharArray =(\"Welcome to the strategy kit.\\n\" +\n\t\t\t\t\"Since this is the first time you are running it,\\n\" +\n\t\t\t\t\"-or you can press buttons faster than we can count-\\n\" +\n\t\t\t\t\"we will try to walk you through some of the features.\").ToCharArray();\n \n \t\t// Checks if the tutorial is not running, triggers it\n\t\t\tif(!introRunning && this.gameObject.activeSelf)\n\t\t\t{\n\t\t\t\tStartCoroutine(\"EndIntro\");\n\t\t\t\tintroRunning = true;\n\t\t\t}\n\t\t}\n\n// The script continues with the next tutorial items\n", "language": "csharp" } ] } [/block] [block:api-header] { "type": "basic", "title": "How to Disable" } [/block] When developing your game, this tutorial might get in the way if you're testing five to six times a day. It's easy to disable, just comment out the GhostHelper.cs script section below. [block:code] { "codes": [ { "code": "// Excerpt from GhostHelper.cs\n// Code obmitted (...) from each of the sections below for clarity.\n// This example removes the tutorial\n\n/*\n// Comment out the Tutorial Text\n\nif (!itemSeen[0])\n\t\t{\n \t\t// ...\n} else if (!itemSeen[1])\n\t\t{\n \t\t// ...\n} else if (!itemSeen[2])\n\t\t{\n \t\t// ...\n} else if (!itemSeen[3])\n\t\t{\n \t\t// ...\n} else if (!itemSeen[4])\n\t\t{\n \t\t// ...\n} else if (!itemSeen[5])\n\t\t{\n \t\t// ...\n}\n\n*/", "language": "csharp" } ] } [/block] [block:api-header] { "type": "basic", "title": "Sound Effects" } [/block] The key press sound effects throughout the tutorial can be found in the SFX folder as seen below and removed or replaced. [block:image] { "images": [ { "image": [ "https://www.filepicker.io/api/file/zuzOzM4S26Aoy2HQo4pR", "key-press-sound-effects.jpg", "800", "600", "#364708", "" ] } ] } [/block]