https://en.touhouwiki.net/api.php?action=feedcontributions&user=New+visitor&feedformat=atomTouhou Wiki - User contributions [en]2024-03-28T09:36:56ZUser contributionsMediaWiki 1.39.3https://en.touhouwiki.net/index.php?title=User_talk:Nekondx&diff=422084User talk:Nekondx2020-08-19T14:57:27Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 14:57, 19 August 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Ging&diff=421824User talk:Ging2020-08-06T14:39:15Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 14:39, 6 August 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Guy_Hero&diff=421823User talk:Guy Hero2020-08-06T14:34:50Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 14:34, 6 August 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Whidai&diff=421822User talk:Whidai2020-08-06T14:33:13Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 14:33, 6 August 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:HellBorn99&diff=421655User talk:HellBorn992020-07-30T02:19:59Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 02:19, 30 July 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Kam&diff=421654User talk:Kam2020-07-30T02:17:38Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 02:17, 30 July 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:DrachentorSYR&diff=421653User talk:DrachentorSYR2020-07-30T02:15:57Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 02:15, 30 July 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Abcdefghdumbo&diff=421652User talk:Abcdefghdumbo2020-07-30T02:13:51Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 02:13, 30 July 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Lingjungmigi17&diff=421651User talk:Lingjungmigi172020-07-30T02:11:52Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 02:11, 30 July 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:VetProf&diff=421481User talk:VetProf2020-07-23T13:39:59Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 13:39, 23 July 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Lmocinemod&diff=421215User talk:Lmocinemod2020-07-12T13:30:23Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 13:30, 12 July 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Bagoum&diff=421110User talk:Bagoum2020-07-10T15:15:05Z<p>New visitor: Replaced content with "{{Subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 15:15, 10 July 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Bagoum&diff=421109User talk:Bagoum2020-07-10T15:13:18Z<p>New visitor: Created page with "{{Subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 15:13, 10 July 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Fivda&diff=420920User talk:Fivda2020-07-05T17:58:09Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 17:58, 5 July 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=MediaWiki:Darkvector.css&diff=420576MediaWiki:Darkvector.css2020-06-25T16:46:00Z<p>New visitor: Make the dark interface a better look.</p>
<hr />
<div>/* CSS placed here will affect users of the DarkVector skin */<br />
#mp-Music > .mp-innerBox {<br />
background-color: #8a783c;<br />
}<br />
#mp-Games .mp-header {<br />
background-color: #702B22;<br />
}<br />
#mp-Games > .mp-innerBox {<br />
background-color: #a2572d;<br />
}<br />
#mp-Music .mp-header {<br />
background-color: #776d3a;<br />
}<br />
#mp-PrintWorks > .mp-innerBox {<br />
background-color: #2468ba;<br />
}<br />
.incell, .incell_top, .incell_bottom, .incell_topleft, .incell_topright, .incell_bottomleft, .incell_bottomright {<br />
background: #263F86;<br />
}<br />
@media screen and (min-width: 982px) {<br />
.mw-body {<br />
color: #9f9f9f;<br />
}<br />
div#footer ul li {<br />
color: #969696;<br />
}<br />
}<br />
@media screen {<br />
.editOptions {<br />
color: #a9a9a9;<br />
}<br />
}<br />
@media screen and (min-width: 982px) {<br />
input, textarea {<br />
color: #9d9d9d;<br />
}<br />
}<br />
.wikiEditor-ui-toolbar {<br />
background-color: #519bc7;<br />
background-image: linear-gradient(#fdfefe 0,#7595a9 32px);<br />
}<br />
table, #content .gallerybox div.thumb, .gallerytext p, .oo-ui-menuLayout-menutable, .mw-collapsible-toggle, .mw-collapsible-toggle-expanded, .mw-search-profile-tabs {<br />
filter: brightness(0.8);<br />
}<br />
.ace-editor{<br />
background-color: #424242;<br />
}<br />
table img {<br />
filter: brightness(1.25);<br />
}<br />
table *{<br />
filter: initial !important;<br />
}</div>New visitorhttps://en.touhouwiki.net/index.php?title=User:New_visitor/darkvector.css&diff=420575User:New visitor/darkvector.css2020-06-25T16:40:49Z<p>New visitor: </p>
<hr />
<div>.ace-tm .ace_gutter {<br />
background: #777;<br />
}<br />
#mp-Music > .mp-innerBox {<br />
background-color: #8a783c;<br />
}<br />
#mp-Games .mp-header {<br />
background-color: #702B22;<br />
}<br />
#mp-Games > .mp-innerBox {<br />
background-color: #a2572d;<br />
}<br />
#mp-Music .mp-header {<br />
background-color: #776d3a;<br />
}<br />
#mp-PrintWorks > .mp-innerBox {<br />
background-color: #2468ba;<br />
}<br />
.incell, .incell_top, .incell_bottom, .incell_topleft, .incell_topright, .incell_bottomleft, .incell_bottomright {<br />
background: #263F86;<br />
}<br />
@media screen and (min-width: 982px) {<br />
.mw-body {<br />
color: #9f9f9f;<br />
}<br />
div#footer ul li {<br />
color: #969696;<br />
}<br />
}<br />
@media screen {<br />
.editOptions {<br />
color: #a9a9a9;<br />
}<br />
}<br />
@media screen and (min-width: 982px) {<br />
input, textarea {<br />
color: #9d9d9d;<br />
}<br />
}<br />
.wikiEditor-ui-toolbar {<br />
background-color: #519bc7;<br />
background-image: linear-gradient(#fdfefe 0,#7595a9 32px);<br />
}<br />
table, #content .gallerybox div.thumb, .gallerytext p, .oo-ui-menuLayout-menutable, .mw-collapsible-toggle, .mw-collapsible-toggle-expanded, .mw-search-profile-tabs {<br />
filter: brightness(0.8);<br />
}<br />
.ace-editor{<br />
background-color: #424242;<br />
}<br />
table img {<br />
filter: brightness(1.25);<br />
}<br />
table *{<br />
filter: initial !important;<br />
}<br />
a.new {<br />
color: red;<br />
}</div>New visitorhttps://en.touhouwiki.net/index.php?title=User:New_visitor/darkvector.css&diff=420573User:New visitor/darkvector.css2020-06-25T16:20:57Z<p>New visitor: </p>
<hr />
<div>.ace-tm .ace_gutter {<br />
background: #777;<br />
}<br />
#mp-Music > .mp-innerBox {<br />
background-color: #8a783c;<br />
}<br />
#mp-Games .mp-header {<br />
background-color: #702B22;<br />
}<br />
#mp-Games > .mp-innerBox {<br />
background-color: #a2572d;<br />
}<br />
#mp-Music .mp-header {<br />
background-color: #776d3a;<br />
}<br />
#mp-PrintWorks > .mp-innerBox {<br />
background-color: #2468ba;<br />
}<br />
.incell, .incell_top, .incell_bottom, .incell_topleft, .incell_topright, .incell_bottomleft, .incell_bottomright {<br />
background: #263F86;<br />
}<br />
@media screen and (min-width: 982px) {<br />
.mw-body {<br />
color: #9f9f9f;<br />
}<br />
div#footer ul li {<br />
color: #969696;<br />
}<br />
}<br />
@media screen {<br />
.editOptions {<br />
color: #a9a9a9;<br />
}<br />
}<br />
@media screen and (min-width: 982px) {<br />
input, textarea {<br />
color: #9d9d9d;<br />
}<br />
}<br />
.wikiEditor-ui-toolbar {<br />
background-color: #519bc7;<br />
background-image: linear-gradient(#fdfefe 0,#7595a9 32px);<br />
}<br />
table, #content .gallerybox div.thumb, .gallerytext p, .oo-ui-menuLayout-menutable, .mw-collapsible-toggle, .mw-collapsible-toggle-expanded, .mw-search-profile-tabs {<br />
filter: brightness(0.8);<br />
}<br />
.ace-editor{<br />
background-color: #424242;<br />
}<br />
table img {<br />
filter: unset !important;<br />
}<br />
a.new {<br />
color: red;<br />
}</div>New visitorhttps://en.touhouwiki.net/index.php?title=User:New_visitor/darkvector.css&diff=420570User:New visitor/darkvector.css2020-06-25T16:09:53Z<p>New visitor: </p>
<hr />
<div>.ace-tm .ace_gutter {<br />
background: #777;<br />
}<br />
#mp-Music > .mp-innerBox {<br />
background-color: #8a783c;<br />
}<br />
#mp-Games .mp-header {<br />
background-color: #702B22;<br />
}<br />
#mp-Games > .mp-innerBox {<br />
background-color: #a2572d;<br />
}<br />
#mp-Music .mp-header {<br />
background-color: #776d3a;<br />
}<br />
#mp-PrintWorks > .mp-innerBox {<br />
background-color: #2468ba;<br />
}<br />
.incell, .incell_top, .incell_bottom, .incell_topleft, .incell_topright, .incell_bottomleft, .incell_bottomright {<br />
background: #263F86;<br />
}<br />
@media screen and (min-width: 982px) {<br />
.mw-body {<br />
color: #9f9f9f;<br />
}<br />
div#footer ul li {<br />
color: #969696;<br />
}<br />
}<br />
@media screen {<br />
.editOptions {<br />
color: #a9a9a9;<br />
}<br />
}<br />
@media screen and (min-width: 982px) {<br />
input, textarea {<br />
color: #9d9d9d;<br />
}<br />
}<br />
.wikiEditor-ui-toolbar {<br />
background-color: #519bc7;<br />
background-image: linear-gradient(#fdfefe 0,#7595a9 32px);<br />
}<br />
table, #content .gallerybox div.thumb, .gallerytext p, .oo-ui-menuLayout-menutable, .mw-collapsible-toggle, .mw-collapsible-toggle-expanded, .mw-search-profile-tabs {<br />
filter: brightness(0.8);<br />
}<br />
.ace-scroller{<br />
background-color: #424242;<br />
}<br />
table img {<br />
filter: unset;<br />
}<br />
a.new {<br />
color: red;<br />
}</div>New visitorhttps://en.touhouwiki.net/index.php?title=User:New_visitor/darkvector.css&diff=420569User:New visitor/darkvector.css2020-06-25T16:05:08Z<p>New visitor: </p>
<hr />
<div>.ace-tm .ace_gutter {<br />
background: #777;<br />
}<br />
#mp-Music > .mp-innerBox {<br />
background-color: #8a783c;<br />
}<br />
#mp-Games .mp-header {<br />
background-color: #702B22;<br />
}<br />
#mp-Games > .mp-innerBox {<br />
background-color: #a2572d;<br />
}<br />
#mp-Music .mp-header {<br />
background-color: #776d3a;<br />
}<br />
#mp-PrintWorks > .mp-innerBox {<br />
background-color: #2468ba;<br />
}<br />
.incell, .incell_top, .incell_bottom, .incell_topleft, .incell_topright, .incell_bottomleft, .incell_bottomright {<br />
background: #263F86;<br />
}<br />
@media screen and (min-width: 982px) {<br />
.mw-body {<br />
color: #9f9f9f;<br />
}<br />
div#footer ul li {<br />
color: #969696;<br />
}<br />
}<br />
@media screen {<br />
.editOptions {<br />
color: #a9a9a9;<br />
}<br />
}<br />
@media screen and (min-width: 982px) {<br />
input, textarea {<br />
color: #9d9d9d;<br />
}<br />
}<br />
.wikiEditor-ui-toolbar {<br />
background-color: #519bc7;<br />
background-image: linear-gradient(#fdfefe 0,#7595a9 32px);<br />
}<br />
#content .gallerybox div.thumb, .gallerytext p, .oo-ui-menuLayout-menutable, .mw-collapsible-toggle, .mw-collapsible-toggle-expanded, .mw-search-profile-tabs {<br />
filter: brightness(0.8);<br />
}<br />
ace-scroller{<br />
background-color: #424242;<br />
}<br />
table img {<br />
filter: unset;<br />
}<br />
a.new {<br />
color: red;<br />
}</div>New visitorhttps://en.touhouwiki.net/index.php?title=User:New_visitor/darkvector.css&diff=420560User:New visitor/darkvector.css2020-06-24T22:59:09Z<p>New visitor: </p>
<hr />
<div>.ace-tm .ace_gutter {<br />
background: #939393;<br />
}<br />
#mp-Music > .mp-innerBox {<br />
background-color: #8a783c;<br />
}<br />
#mp-Games .mp-header {<br />
background-color: #702B22;<br />
}<br />
#mp-Games > .mp-innerBox {<br />
background-color: #a2572d;<br />
}<br />
#mp-Music .mp-header {<br />
background-color: #776d3a;<br />
}<br />
#mp-PrintWorks > .mp-innerBox {<br />
background-color: #2468ba;<br />
}<br />
.incell, .incell_top, .incell_bottom, .incell_topleft, .incell_topright, .incell_bottomleft, .incell_bottomright {<br />
background: #263F86;<br />
}<br />
@media screen and (min-width: 982px) {<br />
.mw-body {<br />
color: #9f9f9f;<br />
}<br />
div#footer ul li {<br />
color: #969696;<br />
}<br />
}<br />
.editOptions {<br />
color: #a9a9a9;<br />
}<br />
.ace-tm {<br />
background-color: #363636;<br />
}<br />
@media screen {<br />
.editOptions {<br />
color: #a9a9a9;<br />
}<br />
}<br />
@media screen and (min-width: 982px) {<br />
input, textarea {<br />
color: #9d9d9d;<br />
}<br />
}<br />
.ace_text-input {<br />
background: transparent;<br />
background: #a3a3a3;<br />
}<br />
.wikiEditor-ui-toolbar {<br />
background-color: #519bc7;<br />
background-image: linear-gradient(#fdfefe 0,#7595a9 32px);<br />
}<br />
.ace-tm {<br />
background-color: #363636;<br />
}<br />
.infobox {<br />
border-color: #746967;<br />
background-color: #575757;<br />
}<br />
th.vcard\; {<br />
background-color: #8C6C68;<br />
}<br />
.wikitable > tbody:nth-child(1) > tr:nth-child(1) > th:nth-child(2) {<br />
background: #989595;<br />
}<br />
#content .gallerybox div.thumb {<br />
background-color: #696969;<br />
}<br />
@media screen and (min-width: 982px) {<br />
.gallerytext p {<br />
color: rgba(190, 188, 188, 0.8);<br />
}<br />
table.navbox:nth-child(24) > tbody:nth-child(1) > tr:nth-child(1) > td:nth-child(1) > table:nth-child(1) > tbody:nth-child(1) > tr:nth-child(1) > th:nth-child(1) {<br />
background: #A1827E;<br />
}<br />
table.navbox:nth-child(25) > tbody:nth-child(1) > tr:nth-child(1) > td:nth-child(1) > table:nth-child(1) > tbody:nth-child(1) > tr:nth-child(1) > th:nth-child(1) {<br />
background: #A57E79;<br />
}<br />
.navbox-title, table.navbox th {<br />
background: #8991a9;<br />
}<br />
.navbox, .navbox-subgroup {<br />
background: #cacaca;<br />
}<br />
.navbox-abovebelow, .navbox-group, .navbox-subgroup .navbox-title {<br />
background: #a6acbe;<br />
}<br />
.navbox-subgroup .navbox-group, .navbox-subgroup .navbox-abovebelow {<br />
background: #a7aec2;<br />
}</div>New visitorhttps://en.touhouwiki.net/index.php?title=User:New_visitor/common.css&diff=420559User:New visitor/common.css2020-06-24T22:58:31Z<p>New visitor: Blanked the page</p>
<hr />
<div></div>New visitorhttps://en.touhouwiki.net/index.php?title=User:New_visitor/common.css&diff=420551User:New visitor/common.css2020-06-24T14:55:32Z<p>New visitor: </p>
<hr />
<div>.ace-tm .ace_gutter {<br />
background: #939393;<br />
}<br />
#mp-Music > .mp-innerBox {<br />
background-color: #8a783c;<br />
}<br />
#mp-Games .mp-header {<br />
background-color: #702B22;<br />
}<br />
#mp-Games > .mp-innerBox {<br />
background-color: #a2572d;<br />
}<br />
#mp-Music .mp-header {<br />
background-color: #776d3a;<br />
}<br />
#mp-PrintWorks > .mp-innerBox {<br />
background-color: #2468ba;<br />
}<br />
.incell, .incell_top, .incell_bottom, .incell_topleft, .incell_topright, .incell_bottomleft, .incell_bottomright {<br />
background: #263F86;<br />
}<br />
@media screen and (min-width: 982px) {<br />
.mw-body {<br />
color: #9f9f9f;<br />
}<br />
div#footer ul li {<br />
color: #969696;<br />
}<br />
}<br />
.editOptions {<br />
color: #a9a9a9;<br />
}<br />
.ace-tm {<br />
background-color: #363636;<br />
}<br />
@media screen {<br />
.editOptions {<br />
color: #a9a9a9;<br />
}<br />
}<br />
@media screen and (min-width: 982px) {<br />
input, textarea {<br />
color: #9d9d9d;<br />
}<br />
}<br />
.ace_text-input {<br />
background: transparent;<br />
background: #a3a3a3;<br />
}<br />
.wikiEditor-ui-toolbar {<br />
background-color: #519bc7;<br />
background-image: linear-gradient(#fdfefe 0,#7595a9 32px);<br />
}<br />
.ace-tm {<br />
background-color: #363636;<br />
}<br />
.infobox {<br />
border-color: #746967;<br />
background-color: #575757;<br />
}<br />
th.vcard\; {<br />
background-color: #8C6C68;<br />
}<br />
.wikitable > tbody:nth-child(1) > tr:nth-child(1) > th:nth-child(2) {<br />
background: #989595;<br />
}<br />
#content .gallerybox div.thumb {<br />
background-color: #696969;<br />
}<br />
@media screen and (min-width: 982px) {<br />
.gallerytext p {<br />
color: rgba(190, 188, 188, 0.8);<br />
}<br />
table.navbox:nth-child(24) > tbody:nth-child(1) > tr:nth-child(1) > td:nth-child(1) > table:nth-child(1) > tbody:nth-child(1) > tr:nth-child(1) > th:nth-child(1) {<br />
background: #A1827E;<br />
}<br />
table.navbox:nth-child(25) > tbody:nth-child(1) > tr:nth-child(1) > td:nth-child(1) > table:nth-child(1) > tbody:nth-child(1) > tr:nth-child(1) > th:nth-child(1) {<br />
background: #A57E79;<br />
}<br />
.navbox-title, table.navbox th {<br />
background: #8991a9;<br />
}<br />
.navbox, .navbox-subgroup {<br />
background: #cacaca;<br />
}<br />
.navbox-abovebelow, .navbox-group, .navbox-subgroup .navbox-title {<br />
background: #a6acbe;<br />
}<br />
.navbox-subgroup .navbox-group, .navbox-subgroup .navbox-abovebelow {<br />
background: #a7aec2;<br />
}</div>New visitorhttps://en.touhouwiki.net/index.php?title=User:New_visitor/common.css&diff=420550User:New visitor/common.css2020-06-24T14:45:33Z<p>New visitor: </p>
<hr />
<div>.ace-tm .ace_gutter {<br />
background: #939393;<br />
}<br />
#mp-Music > .mp-innerBox {<br />
background-color: #8a783c;<br />
}<br />
#mp-Games .mp-header {<br />
background-color: #702B22;<br />
}<br />
#mp-Games > .mp-innerBox {<br />
background-color: #a2572d;<br />
}<br />
#mp-Music .mp-header {<br />
background-color: #776d3a;<br />
}<br />
#mp-PrintWorks > .mp-innerBox {<br />
background-color: #2468ba;<br />
}<br />
.incell, .incell_top, .incell_bottom, .incell_topleft, .incell_topright, .incell_bottomleft, .incell_bottomright {<br />
background: #263F86;<br />
}<br />
@media screen and (min-width: 982px) {<br />
.mw-body {<br />
color: #9f9f9f;<br />
}<br />
div#footer ul li {<br />
color: #969696;<br />
}<br />
}<br />
.editOptions {<br />
color: #a9a9a9;<br />
}<br />
.ace-tm {<br />
background-color: #363636;<br />
}<br />
@media screen {<br />
.editOptions {<br />
color: #a9a9a9;<br />
}<br />
}<br />
@media screen and (min-width: 982px) {<br />
input, textarea {<br />
color: #9d9d9d;<br />
}<br />
}<br />
.ace_text-input {<br />
background: transparent;<br />
background: #a3a3a3;<br />
}<br />
.wikiEditor-ui-toolbar {<br />
background-color: #519bc7;<br />
background-image: linear-gradient(#fdfefe 0,#7595a9 32px);<br />
}<br />
.ace-tm {<br />
background-color: #363636;<br />
}</div>New visitorhttps://en.touhouwiki.net/index.php?title=User:New_visitor/common.css&diff=420549User:New visitor/common.css2020-06-24T14:38:55Z<p>New visitor: </p>
<hr />
<div>.ace-tm .ace_gutter {<br />
background: #939393;<br />
}<br />
#mp-Music > .mp-innerBox {<br />
background-color: #8a783c;<br />
}<br />
@media screen and (min-width: 982px) {<br />
.mw-body {<br />
color: #9f9f9f;<br />
}<br />
div#footer ul li {<br />
color: #969696;<br />
}<br />
}</div>New visitorhttps://en.touhouwiki.net/index.php?title=User:New_visitor/common.css&diff=420548User:New visitor/common.css2020-06-24T14:38:12Z<p>New visitor: Created page with ".ace-tm .ace_gutter { background: #939393; }"</p>
<hr />
<div>.ace-tm .ace_gutter {<br />
background: #939393;<br />
}</div>New visitorhttps://en.touhouwiki.net/index.php?title=User:New_visitor/darkvector.css&diff=420547User:New visitor/darkvector.css2020-06-24T14:33:02Z<p>New visitor: Created page with "#mp-Music > .mp-innerBox { background-color: #8a783c; } @media screen and (min-width: 982px) { .mw-body { color: #9f9f9f; } div#footer ul li { color: #969696; } } .editOptions..."</p>
<hr />
<div>#mp-Music > .mp-innerBox {<br />
background-color: #8a783c;<br />
}<br />
@media screen and (min-width: 982px) {<br />
.mw-body {<br />
color: #9f9f9f;<br />
}<br />
div#footer ul li {<br />
color: #969696;<br />
}<br />
}<br />
.editOptions {<br />
color: #a9a9a9;<br />
}<br />
.ace-tm {<br />
background-color: #363636;<br />
}<br />
.ace-tm .ace_gutter {<br />
background: #939393;<br />
}</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:GManners&diff=420394User talk:GManners2020-06-16T15:16:37Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 15:16, 16 June 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=Fantastic_Danmaku_Festival/Translation&diff=420291Fantastic Danmaku Festival/Translation2020-06-14T04:17:29Z<p>New visitor: /* Difficulty Levels */</p>
<hr />
<div>'''Although official English translations are available in the game's Steam release (v1.05), this page seeks to provide more accurate translations of the original Chinese transcripts.'''<br />
==Story==<br />
===Documentation===<br />
*[[../Story/omake.txt|omake.txt]] - Contains the developer's foreword, prologue and character profiles.<br />
*[[../Music|Music Comments]] - Music comments<br />
<br />
===In-Game Dialogue===<br />
*[[../Story/Reimu's Scenario|Reimu's Scenario]]<br />
*[[../Story/Marisa's Scenario|Marisa's Scenario]]<br />
*[[../Story/Sanae's Scenario|Sanae's Scenario]]<br />
*[[../Story/Patchouli's Scenario|Patchouli's Scenario]]<br />
<br />
*[[../Story/Reimu's Extra|Reimu's Extra]]<br />
*[[../Story/Marisa's Extra|Marisa's Extra]]<br />
*[[../Story/Sanae's Extra|Sanae's Extra]]<br />
*[[../Story/Patchouli's Extra|Patchouli's Extra]]<br />
<br />
===Endings===<br />
<br />
*[[../Story/Ending|Ending]]<br />
<br />
==Other Translations==<br />
===Spell Cards===<br />
:{{main|../Spell Cards|l1=Spell Cards}}<br />
A list of spell cards appearing in Fantastic Danmaku Festival and their translated names.<br />
<br />
===Intro Screen===<br />
:::原作<br />
:上海アリス幻樂団<br />
::Team Shanghai Alice<br />
<br />
===Difficulty Levels===<br />
Like most official Touhou games, each of the difficulty levels has a special name and a short summary.<br />
<br />
{| class="wikitable"<br />
| Easy<br />
| {{lang|zh|弹幕稀薄的度}} || {{lang|zh|不知STG为何物的人,进来看看吧}}<br />
|-<br />
| Easy<br />
| Sparse Danmaku Mode || Come in and take a look if you're unfamiliar with STGs<br />
|-<br />
| colspan="3" |<br />
|-<br />
| Normal<br />
| {{lang|zh|弹幕平整的程度}} || {{lang|zh|适合正常人通天的正常向STG}}<br />
|-<br />
| Normal<br />
| Smooth Danmaku Mode || An regular STG suitable for normal people<br />
|-<br />
| colspan="3" |<br />
|-<br />
| Hard<br />
| {{lang|zh|弹幕出彩的程度}} || {{lang|zh|想要挑战更加有趣的STG}}<br />
|-<br />
| Hard<br />
| Intense Danmaku Mode || For a more interesting STG challenge<br />
|-<br />
| colspan="3" |<br />
|-<br />
| Lunatic<br />
| {{lang|zh|弹幕凶华的程度}} || {{lang|zh|打完这盘就去幻想乡}}<br />
|-<br />
| Lunatic<br />
| Murderous Danmaku Mode || Let's go to Gensokyo after this round. <br />
| colspan="3" |<br />
|-<br />
| Extra<br />
| {{lang|zh|充满问号的程度}} || {{lang|zh|想挑战一下吗?}}<br />
|-<br />
| Extra<br />
| Extremely Questionable Mode || Wanna give this a shot?<br />
|-<br />
|}<br />
<br />
===Stage Titles===<br />
The most recent version of the game includes six stages and an extra stage.<br />
<br />
{|<br />
| Stage 1 || {{lang|zh|夜风中的红色情结}} || Scarlet Aura in the Night Breeze<br />
|-<br />
| Stage 2 || {{lang|zh|雾气环绕的湖面}} || The Mist-shrouded Lake Surface<br />
|-<br />
| Stage 3 || {{lang|zh|星空之下的巨大洋馆}} || Giant Mansion Under the Stars<br />
|-<br />
| Stage 4 || {{lang|zh|迷一样的地下空间}} || The Maze-like Underground Space<br />
|-<br />
| Stage 5 || {{lang|zh|银光穿梭的时间之域}} || The Region of Time Where Silver Light Permeates<br />
|-<br />
| Stage 6 || {{lang|zh|妖怪的宴会}} || Banquet of the Youkai<br />
|-<br />
| Extra Stage || {{lang|zh|来玩吧! 笼中鸟}} || Come and Play, Caged Bird! <br />
|}<br />
<br />
===Playable Characters===<br />
====[[Reimu Hakurei]]====<br />
{{TranslateTable/Header}}<br />
{{TranslateTable|h1<br />
| ja ={{lang|zh|博丽灵梦}}<br />
| en =[[Reimu Hakurei]]<br />
}}<br />
{{TranslateTable<br />
| ja ={{lang|zh|移动速度: 中等<br><br />
弾幕配置: 除灵御札 追踪灵击<br><br />
使用符卡: 灵符「梦想封印」<br>}}<br />
| en =Movement speed: Medium<br><br />
Shot type: Exorcism Ofuda, Homing Spirit Strike<br><br />
Spell Card: Spirit Sign “Fantasy Seal”<br><br />
}}<br />
{{TranslateTable/Footer}}<br />
<br />
====[[Marisa Kirisame]]====<br />
{{TranslateTable/Header}}<br />
{{TranslateTable|h1<br />
| ja ={{lang|zh|雾雨魔理沙}}<br />
| en =[[Marisa Kirisame]]<br />
}}<br />
{{TranslateTable<br />
| ja ={{lang|zh|移动速度: 快<br><br />
弾幕配置: 星屑飞弹 定向激光<br><br />
使用符卡: 恋符「Master spark」<br>}}<br />
| en =Movement speed: Fast<br><br />
Shot type: Stardust Missile, Directional Laser<ref>Possibly a play on the Chinese name for [[Marisa Kirisame#Spell Cards|Love Sign “Non-Directional Laser”]], 恋符「非定向光线」.</ref><br><br />
Spell Card: Love Sign “Master Spark”<br><br />
}}<br />
{{TranslateTable/Footer}}<br />
<br />
====[[Sanae Kochiya]]====<br />
{{TranslateTable/Header}}<br />
{{TranslateTable|h1<br />
| ja ={{lang|zh|东风谷早苗}}<br />
| en =[[Sanae Kochiya]]<br />
}}<br />
{{TranslateTable<br />
| ja ={{lang|zh|移动速度: 较慢<br><br />
弾幕配置: 守矢御札 凶灾之符<br><br />
使用符卡: 神力「风神御柱」<br><br />
神力「诹访庇佑」<br>}}<br />
| en =Movement speed: Slower<br><br />
Shot type: Moriya Ofuda, Symbol of Disaster<br><br />
Spell Card: Divine Power “Wind God’s Onbashira”<ref>Used when unfocused. Costs 3 bomb pieces instead of a full bomb.</ref><br><br />
Divine Power “Suwako's Blessing”<ref>Focused bomb.</ref><br><br />
}}<br />
{{TranslateTable/Footer}}<br />
<br />
====[[Patchouli Knowledge]]====<br />
{{TranslateTable/Header}}<br />
{{TranslateTable|h1<br />
| ja ={{lang|zh|帕秋莉诺蕾姬}}<br />
| en =[[Patchouli Knowledge]]<br />
}}<br />
{{TranslateTable<br />
| ja ={{lang|zh|移动速度: 慢<br><br />
弾幕配置: 仲击魔法 耀石烈焰<br><br />
使用符卡: 日符「皇家烈焰」<br>}}<br />
| en =Movement speed: Slow<br><br />
Shot type: Secondary Strike Magic, Obsidian Flare<br><br />
Spell Card: Sun Sign “Royal Flare”<br><br />
}}<br />
{{TranslateTable/Footer}}<br />
<br />
===Staff Roll===<br />
{{hidden begin|title=Show Staff Roll}}<br />
<!-- Temporary placeholder --><br />
{{hidden end|title=Hide manual translation}}<br />
<br />
==Notes==<br />
{{reflist}}<br />
<br />
[[Category: Fantastic Danmaku Festival]]<br />
<br />
{{Navbox FDF}}</div>New visitorhttps://en.touhouwiki.net/index.php?title=Fantastic_Danmaku_Festival/Translation&diff=420290Fantastic Danmaku Festival/Translation2020-06-14T04:16:46Z<p>New visitor: /* Difficulty Levels */</p>
<hr />
<div>'''Although official English translations are available in the game's Steam release (v1.05), this page seeks to provide more accurate translations of the original Chinese transcripts.'''<br />
==Story==<br />
===Documentation===<br />
*[[../Story/omake.txt|omake.txt]] - Contains the developer's foreword, prologue and character profiles.<br />
*[[../Music|Music Comments]] - Music comments<br />
<br />
===In-Game Dialogue===<br />
*[[../Story/Reimu's Scenario|Reimu's Scenario]]<br />
*[[../Story/Marisa's Scenario|Marisa's Scenario]]<br />
*[[../Story/Sanae's Scenario|Sanae's Scenario]]<br />
*[[../Story/Patchouli's Scenario|Patchouli's Scenario]]<br />
<br />
*[[../Story/Reimu's Extra|Reimu's Extra]]<br />
*[[../Story/Marisa's Extra|Marisa's Extra]]<br />
*[[../Story/Sanae's Extra|Sanae's Extra]]<br />
*[[../Story/Patchouli's Extra|Patchouli's Extra]]<br />
<br />
===Endings===<br />
<br />
*[[../Story/Ending|Ending]]<br />
<br />
==Other Translations==<br />
===Spell Cards===<br />
:{{main|../Spell Cards|l1=Spell Cards}}<br />
A list of spell cards appearing in Fantastic Danmaku Festival and their translated names.<br />
<br />
===Intro Screen===<br />
:::原作<br />
:上海アリス幻樂団<br />
::Team Shanghai Alice<br />
<br />
===Difficulty Levels===<br />
Like most official Touhou games, each of the difficulty levels has a special name and a short summary.<br />
<br />
{| class="wikitable"<br />
| Easy<br />
| {{lang|zh|弹幕稀薄的度}} || {{lang|zh|不知STG为何物的人,进来看看吧}}<br />
|-<br />
| Easy<br />
| Sparse Danmaku Mode || Come in and take a look if you're unfamiliar with STGs<br />
|-<br />
| colspan="3" |<br />
|-<br />
| Normal<br />
| {{lang|zh|弹幕平整的程度}} || {{lang|zh|适合正常人通天的正常向STG}}<br />
|-<br />
| Normal<br />
| Smooth Danmaku Mode || An regular STG suitable for normal people<br />
|-<br />
| colspan="3" |<br />
|-<br />
| Hard<br />
| {{lang|zh|弹幕出彩的程度}} || {{lang|zh|想要挑战更加有趣的STG}}<br />
|-<br />
| Hard<br />
| Intense Danmaku Mode || For a more interesting STG challenge<br />
|-<br />
| colspan="3" |<br />
|-<br />
| Lunatic<br />
| {{lang|zh|弹幕凶华的程度}} || {{lang|zh|打完这盘就去幻想乡}}<br />
|-<br />
| Lunatic<br />
| Murderous Danmaku Mode || Let's go to Gensokyo after this round. | colspan="3" |<br />
|-<br />
| Extra<br />
| {{lang|zh|充满问号的程度}} || {{lang|zh|想挑战一下吗?}}<br />
|-<br />
| Extra<br />
| Extremely Questionable Mode || Wanna give this a shot?<br />
|-<br />
|}<br />
<br />
===Stage Titles===<br />
The most recent version of the game includes six stages and an extra stage.<br />
<br />
{|<br />
| Stage 1 || {{lang|zh|夜风中的红色情结}} || Scarlet Aura in the Night Breeze<br />
|-<br />
| Stage 2 || {{lang|zh|雾气环绕的湖面}} || The Mist-shrouded Lake Surface<br />
|-<br />
| Stage 3 || {{lang|zh|星空之下的巨大洋馆}} || Giant Mansion Under the Stars<br />
|-<br />
| Stage 4 || {{lang|zh|迷一样的地下空间}} || The Maze-like Underground Space<br />
|-<br />
| Stage 5 || {{lang|zh|银光穿梭的时间之域}} || The Region of Time Where Silver Light Permeates<br />
|-<br />
| Stage 6 || {{lang|zh|妖怪的宴会}} || Banquet of the Youkai<br />
|-<br />
| Extra Stage || {{lang|zh|来玩吧! 笼中鸟}} || Come and Play, Caged Bird! <br />
|}<br />
<br />
===Playable Characters===<br />
====[[Reimu Hakurei]]====<br />
{{TranslateTable/Header}}<br />
{{TranslateTable|h1<br />
| ja ={{lang|zh|博丽灵梦}}<br />
| en =[[Reimu Hakurei]]<br />
}}<br />
{{TranslateTable<br />
| ja ={{lang|zh|移动速度: 中等<br><br />
弾幕配置: 除灵御札 追踪灵击<br><br />
使用符卡: 灵符「梦想封印」<br>}}<br />
| en =Movement speed: Medium<br><br />
Shot type: Exorcism Ofuda, Homing Spirit Strike<br><br />
Spell Card: Spirit Sign “Fantasy Seal”<br><br />
}}<br />
{{TranslateTable/Footer}}<br />
<br />
====[[Marisa Kirisame]]====<br />
{{TranslateTable/Header}}<br />
{{TranslateTable|h1<br />
| ja ={{lang|zh|雾雨魔理沙}}<br />
| en =[[Marisa Kirisame]]<br />
}}<br />
{{TranslateTable<br />
| ja ={{lang|zh|移动速度: 快<br><br />
弾幕配置: 星屑飞弹 定向激光<br><br />
使用符卡: 恋符「Master spark」<br>}}<br />
| en =Movement speed: Fast<br><br />
Shot type: Stardust Missile, Directional Laser<ref>Possibly a play on the Chinese name for [[Marisa Kirisame#Spell Cards|Love Sign “Non-Directional Laser”]], 恋符「非定向光线」.</ref><br><br />
Spell Card: Love Sign “Master Spark”<br><br />
}}<br />
{{TranslateTable/Footer}}<br />
<br />
====[[Sanae Kochiya]]====<br />
{{TranslateTable/Header}}<br />
{{TranslateTable|h1<br />
| ja ={{lang|zh|东风谷早苗}}<br />
| en =[[Sanae Kochiya]]<br />
}}<br />
{{TranslateTable<br />
| ja ={{lang|zh|移动速度: 较慢<br><br />
弾幕配置: 守矢御札 凶灾之符<br><br />
使用符卡: 神力「风神御柱」<br><br />
神力「诹访庇佑」<br>}}<br />
| en =Movement speed: Slower<br><br />
Shot type: Moriya Ofuda, Symbol of Disaster<br><br />
Spell Card: Divine Power “Wind God’s Onbashira”<ref>Used when unfocused. Costs 3 bomb pieces instead of a full bomb.</ref><br><br />
Divine Power “Suwako's Blessing”<ref>Focused bomb.</ref><br><br />
}}<br />
{{TranslateTable/Footer}}<br />
<br />
====[[Patchouli Knowledge]]====<br />
{{TranslateTable/Header}}<br />
{{TranslateTable|h1<br />
| ja ={{lang|zh|帕秋莉诺蕾姬}}<br />
| en =[[Patchouli Knowledge]]<br />
}}<br />
{{TranslateTable<br />
| ja ={{lang|zh|移动速度: 慢<br><br />
弾幕配置: 仲击魔法 耀石烈焰<br><br />
使用符卡: 日符「皇家烈焰」<br>}}<br />
| en =Movement speed: Slow<br><br />
Shot type: Secondary Strike Magic, Obsidian Flare<br><br />
Spell Card: Sun Sign “Royal Flare”<br><br />
}}<br />
{{TranslateTable/Footer}}<br />
<br />
===Staff Roll===<br />
{{hidden begin|title=Show Staff Roll}}<br />
<!-- Temporary placeholder --><br />
{{hidden end|title=Hide manual translation}}<br />
<br />
==Notes==<br />
{{reflist}}<br />
<br />
[[Category: Fantastic Danmaku Festival]]<br />
<br />
{{Navbox FDF}}</div>New visitorhttps://en.touhouwiki.net/index.php?title=User:New_visitor&diff=420241User:New visitor2020-06-13T16:27:13Z<p>New visitor: </p>
<hr />
<div>A Chinese junior Touhou fan, who decides not to become a typical fan in the future. Not a good foreign language learner and experienced editor. Maybe I can help with some China related article here? Now with right of sysop, I can feel stress now and then when seeing other sysops deal with site everyday matters. Clearer ruleset, better ui, manuals and tips etc. are really needed. The tolerant environment as a more casual fandom is good but I have to be aware of my limitation and this means I may rarely do helpful contributions. My philosophy of a fan wiki is more aggressive but I will only apply it to zhwiki because it is not compatible with fandom likely.<br />
{{Babel|zh|en-2|ja-1|fr-0}}<br />
[[zh:User:New visitor]]</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Nitori_Junta&diff=420087User talk:Nitori Junta2020-06-08T01:51:02Z<p>New visitor: Created page with "{{Subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 01:50, 8 June 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Esi&diff=420037User talk:Esi2020-06-07T00:56:47Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 00:56, 7 June 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Fraghanze&diff=420033User talk:Fraghanze2020-06-06T16:40:57Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 16:40, 6 June 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Another_Oni&diff=420019User talk:Another Oni2020-06-06T13:53:42Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 13:53, 6 June 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:QuinnActually&diff=419915User talk:QuinnActually2020-06-04T07:46:56Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|--~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
--[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 07:46, 4 June 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Getsuka-P&diff=419734User talk:Getsuka-P2020-05-30T00:57:37Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 00:57, 30 May 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Skelerin&diff=419412User talk:Skelerin2020-05-25T04:13:30Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 04:13, 25 May 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:NARFNra&diff=419179User talk:NARFNra2020-05-21T14:11:09Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 14:11, 21 May 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Ngara&diff=419178User talk:Ngara2020-05-21T14:09:12Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 14:08, 21 May 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Kael070&diff=419177User talk:Kael0702020-05-21T14:05:52Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 14:05, 21 May 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:ElectroTail&diff=419012User talk:ElectroTail2020-05-17T11:18:14Z<p>New visitor: Created page with "{{subst:Welcome|New visitor|--~~~~|no}}"</p>
<hr />
<div>Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:New visitor|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
--[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 11:18, 17 May 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=User_talk:Magicfruit&diff=418953User talk:Magicfruit2020-05-15T10:10:03Z<p>New visitor: Created page with "==Welcome!== {{subst:Welcome||--~~~~|none}}"</p>
<hr />
<div>==Welcome!==<br />
Welcome to Touhou Wiki! Please enjoy your stay, and we wish you many successful edits.<br />
<br />
:Check out the most '''[[Special:Recentchanges|Recent changes]]''' to the Wiki, for a good idea on current editing work.<br />
<br />
:'''Questions?''' You can ask at the [[Talk:Touhou Wiki|central discussion page]] or on the [[Help:Talk page|talk page]] associated with each article, or post a message on [[User talk:|my talk page]]. You can also chat with us directly on IRC at [http://webchat.esper.net/?nick=NamelessFairy...&channels=touhouwiki&prompt=1 '''irc.esper.net, #touhouwiki''']<br />
<br />
:'''Need help?''' The [[Project:Community Portal|Community Portal]] has an outline of the site, and pages to help you learn how to edit.<br />
<br />
:'''Confused about Wiki editing?''' We have some [[Touhou Wiki:Guidelines|general guidelines]] we like to follow.<br />
<br />
:'''Don't forget''' if you've just created your account, you have to wait '''24 hours''' and make '''1 edit''' before creating articles. [[Help:Group rights|See here]] for more info.<br />
<br />
We're glad to have a new member of the community!<br />
<br />
--[[User:New visitor|New visitor]] ([[User talk:New visitor|talk]]) 10:10, 15 May 2020 (UTC)<br />
:</div>New visitorhttps://en.touhouwiki.net/index.php?title=Help:Group_rights&diff=418952Help:Group rights2020-05-15T09:57:30Z<p>New visitor: /* Overview */ Autoconfirmed user rights promotion</p>
<hr />
<div>:''See also: [[Special:ListGroupRights|User group rights]].''<br />
<br />
A contributor's access to perform certain actions is determined by various flags on their account, some of which are automatic and others of which must be given to them manually. A user with a flag is said to be a member of that flag's 'user group', giving them certain 'permissions' and the use of certain features of the [[mw:Main Page|MediaWiki]] software.<br />
<br />
Users are assigned the highest possible permissions based on the groups they are members of. A user who is an [[wikipedia:Wikipedia:Administrator|administrator]] or [[wikipedia:Wikipedia:Bureaucrat|bureaucrat]], for instance, would be able to use [[Special:Unwatchedpages]] (granted with the <tt>'sysop'</tt> group).<br />
<br />
Membership in a user group is sometimes referred to as a 'flag' or 'bit'; being made a member of the <tt>'sysop'</tt> group is synonymous with being 'given the admin bit' or 'receiving the admin flag'.<br />
<br />
== Overview ==<br />
All visitors to the site, including unregistered users, are part of the <tt>'[[#Unregistered users|*]]'</tt> group, while all logged-in users are also part of the <tt>'[[#New users|user]]'</tt> group. Users are automatically promoted into the [[#Autoconfirmed users|Autoconfirmed/Established users]] group when their account is twenty four hours old and has one edit. Other flags are only given upon request; some, such as <tt>'[[#Bot|bot]]'</tt>, are granted unilaterally if the user demonstrates a need for them (see [[Touhou Wiki:Bots/Requests for approval]]). Others, such as <tt>'[[#Administrator|sysop]]'</tt> and <tt>'[[#Bureaucrat|bureaucrat]]'</tt>, are given only after deliberation by the Stewards.<br />
<br />
== User groups ==<br />
<br />
==== Unregistered users ====<br />
Visitors who have not [[Special:UserLogin/signup|created an account]] or [[Special:UserLogin|logged in]] are identified by their IP address rather than a user name, and may read all pages (except restricted special pages). They may not edit or create pages, create talk pages in any talk namespace, or upload files or images.<br />
<br />
==== New users ====<br />
A user who registers an account may immediately edit pages in any namespace (except the MediaWiki namespace). All logged-in users may mark edits as minor. They may purge pages without a confirmation step. They may also customize their Touhou Wiki interface and its options as they wish, via [[Special:Preferences]] or by adding personal CSS or JavaScript rules to their [[Special:Mypage/vector.css|vector.css]] or [[Special:Mypage/vector.js|vector.js]] files.<br />
<br />
==== Autoconfirmed users ====<br />
A number of actions on the wiki are restricted to user accounts that pass certain thresholds of age (time passed since the first edit) and edit count: users who meet these requirements are considered part of the pseudo-group <tt>'autoconfirmed'</tt>. Autoconfirmed status is checked every time a user performs a restricted action: it is then granted automatically by the software. For all users, accounts that are more than 24 hours old and have made at least 1 edit are considered autoconfirmed. This restriction may be increased at any time.<br />
<br />
Autoconfirmed status is required to create new pages, move pages, edit semi-protected pages, and upload files or upload a new version of an existing file. Autoconfirmed users are no longer required to enter a CAPTCHA for most events. Autoconfirmed users may mark pages created by others as patrolled in [[Special:NewPages]]. In addition, the Edit filter has a number of warning settings that only affect editors who are not autoconfirmed.<br />
<br />
=== Administrators, bureaucrats and stewards ===<br />
<br />
==== Administrators ====<br />
Users who are members of the <tt>'administrator'</tt> user group have access to a number of tools to allow them to carry out certain functions on the wiki. The tools cover processes such as page deletion, page protection, blocking and unblocking, access to modify fully protected] pages and the Mediawiki interface. Administrators are otherwise no different from any other editor.<br />
<br />
Administrators are also known historically as "sysops" ('''sys'''tem '''op'''erator'''s'''). The two terms are used interchangeably.<br />
<br />
See [[Special:Listusers/sysop]] for a list of users in this group.<br />
<br />
==== Bureaucrats ====<br />
Bureaucrat rights are granted to exceptionally trusted users who are allowed to perform certain actions on other users' accounts.<br />
<br />
Bureaucrats have extended access to [[Special:UserRights]], enabling them to add users to the <tt>'sysop'</tt> and <tt>'bureaucrat'</tt> groups (but not remove them), and both add users to and remove users from the <tt>'[[#Bots|bot]]'</tt> user group.<br />
<br />
See [[Special:Listusers/bureaucrat]] for a list of users in this group.<br />
<br />
==== Stewards ====<br />
Users who are members of the <tt>'steward'</tt> user group may grant and revoke any permission to or from any user on any wiki within Touhou Wiki. This group may use [[Special:Userrights]] to set permissions on any wiki; they may add or remove any user from any group. Stewards generally act only when there is no user on a particular wiki that can make the necessary change. This includes granting of the <tt>'administrator'</tt> or <tt>'bureaucrat'</tt> access levels on wikis which do not have any local bureaucrats, and removing such flags if the user resigns or the account is acting maliciously.<br />
<br />
Stewards also act as [[#Bureaucrat|bureaucrats]] on wikis which do not have local members of those groups, or if they're substantially active enough on a certain wiki to act as such. They generally also have other responsibilities outside the realm of the wiki, such as technical and financial administration.<br />
<br />
All steward actions are logged at [[Special:Log/rights]]. The steward on Touhou Wiki is [[User:Mami|Mami]].<br />
<br />
=== Other flagged accounts ===<br />
<br />
==== Bots ====<br />
Accounts used by approved [[Touhou Wiki:BOT|bots]] to make pre-approved edits can be flagged as such. Bot accounts are automated or semi-automated, the nature of their edits is well defined, and they will be quickly blocked if their actions vary from their given tasks, so they need less scrutiny than human edits.<br />
<br />
For this reason, contributions from accounts with the bot flag (<tt>'[[Touhou Wiki:Bots|bot]]'</tt> user group) are not displayed in [[Wikipedia:Recent Changes|recent changes]] or [[Help:Watching pages|watchlists]] to users who have opted to hide bot edits. Minor edits made by bot accounts to user talk pages do not trigger the [[Help:Using talk pages#You have new messages|"you have new messages"]] banner. Bot accounts can query the API in batches of 5,000 rather than 500.<br />
<br />
See [[Special:Listusers/bot]] for a list of users in this group.<br />
<br />
=== Staff Requirements ===<br />
The Touhou Wiki Discord and IRC channel allows for real-time communication in cases of emergency and whatnot. Administrators are recommended, but not required, to join the channel; Bureaucrats and Stewards are required to join. The Discord is [https://discord.gg/jkStRPc here], and the IRC channel is located at '''#touhouwiki''' on '''irc.esper.net'''.<br />
<br />
Touhou Wiki staffers are also required to enter their respective information on the [[Touhou_Wiki:Administrators|list of Administrators page]].<br />
<br />
== See also ==<br />
[[Touhou Wiki:Administrators]]<br />
<br />
''Based on [[wikipedia:Wikipedia:User_access_levels|Wikipedia:User_access_levels]], with modifications.''</div>New visitorhttps://en.touhouwiki.net/index.php?title=Wily_Beast_and_Weakest_Creature/Gameplay/Strategy&diff=417764Wily Beast and Weakest Creature/Gameplay/Strategy2020-04-26T14:39:26Z<p>New visitor: </p>
<hr />
<div>This article and its subpages covers the '''strategy''' you can use for '''[[Wily Beast and Weakest Creature]]'''.<br />
<br />
Most of the gameplay being centered around a new mechanic, struggling players should be aware of what it can't and can't do.<br><br />
Advice for capturing each spell can also be found here.<br />
<br />
*[[/General|General Strategy]]<br />
*[[/Stage 1|Stage 1 Strategy + Capturing Tips]]<br />
*[[/Stage 2|Stage 2 Strategy + Capturing Tips]]<br />
*[[/Stage 3|Stage 3 Strategy + Capturing Tips]]<br />
*[[/Stage 4|Stage 4 Strategy + Capturing Tips]]<br />
*[[/Stage 5|Stage 5 Strategy + Capturing Tips]]<br />
*[[/Stage 6|Stage 6 Strategy + Capturing Tips]]<br />
*[[/Extra Stage|Extra Stage Strategy + Capturing Tips]]<br />
<br />
<br />
<br />
{{Navbox WBaWC}}<br />
[[Category:Strategy]]<br />
[[Category:Wily Beast and Weakest Creature]]<br />
<br />
[[zh:东方鬼形兽/玩法/攻略]]</div>New visitorhttps://en.touhouwiki.net/index.php?title=Wily_Beast_and_Weakest_Creature&diff=417004Wily Beast and Weakest Creature2020-04-18T10:15:21Z<p>New visitor: Chinese corresponding page</p>
<hr />
<div>{{Infobox Game<br />
| type = official game<br />
| titleN = {{ruby-ja|東方鬼形獣|とうほうきけいじゅう}}<br />
| titleEn = Wily Beast and Weakest Creature<br />
| image = [[File:Th17cover.jpg|256px|Wily Beast and Weakest Creature cover]]<br />
| developer1 = [[Team Shanghai Alice]]<br />
| publisher1 = [[Team Shanghai Alice]]<br />
| publisher1Cat = Team Shanghai Alice<br />
| released = Trial: May 5, 2019 ([[:category:Reitaisai 16|Reitaisai 16]])<br />Full version: August 12, 2019<br />
([[:category:Comiket 96|Comiket 96]])<br /><br />
| convention = <br />
| genre1 = Vertical Danmaku Shooting<br />
| gameplay = Single-Player Story Mode<br />
| platforms = [[Windows]] [[wikipedia:Windows 7|7]]/[[wikipedia:Windows 8|8]]/[[wikipedia:Windows 10|10]]<br />
| requirements ='''Steam Version'''<br />
*Windows 7, 8, 10<br />
*Core 2 Duo CPU or higher <br />
*600MB hard disk<br />
*1024MB RAM (Recommended 2048m)<br />
*Directx 9.0c<br />
}}<br />
<br />
{{thtitle|Touhou |Kikeijuu|ruby=[[Oni]]-Shaped Beast| ~ Wily Beast and Weakest Creature|jp=東方鬼形獣 ~ Wily Beast and Weakest Creature}} is the seventeenth official installment of the ''[[Touhou Project]]''. It was announced by ZUN on his personal blog on April 17, 2019, at 14:02 JST.<ref name=announce>{{cite web|url=https://kourindou.exblog.jp/28205045/|title={{lang|ja|東方Project 第17弾です}}|author=ZUN|date=April 17, 2019|language=ja}}</ref> A playable demo was released on May 5, 2019, at [[Reitaisai|Reitaisai 16]]. The full version was released August 12, 2019, at [[Comiket|Comiket 96]].<br />
<br />
==Gameplay==<br />
{{Main|/Gameplay|l1=Gameplay|/Gameplay/Strategy|l2=Strategy|/Spell Cards|l3=Spell Cards|/Achievements|l4=Achievements}}<br />
There are three main characters: [[Reimu Hakurei]], [[Marisa Kirisame]], and [[Youmu Konpaku]]. The player can equip one of three animal spirits, namely "Wolf", "Otter" and "Eagle". "Wolf" powers up the player's focused shot, "Otter" powers up the player's bombs, and "Eagle" powers up the player's unfocused shot.<ref name=announce /><br />
<br />
Upon defeating certain enemies and in-between each Spell Card, items called '''Spirit Items''' will appear on screen and bounce around for a very long time, similar to [[Undefined Fantastic Object]]'s UFOs. <br>There are three ''Beast Spirits'' items (one for ''Wolf'', ''Otter'' and ''Eagle'') which periodically cycle in an order. <br />
<br />
Upon collecting five ''Spirit Items'', the player enters '''Roaring Mode'''. Similarly to [[Perfect Cherry Blossom]]'s Supernatural Border mode, ''Roaring Mode'' can end by timeout, calling off or by being hit, which negates the hit. While ending ''Roaring Mode'' by timeout creates new ''Beast Items'', ending it through any other method triggers a ''Spirit Strike'' which deletes nearby bullets. All standard non-basic drops (lives, bombs, high-value power & high-value points) now also feed into this system.<br />
<br />
Triggering ''Roaring Mode'' with three or more of the same ''Beast Spirits'' will give the player special bonuses. <br />
* For three or more ''Wolf Spirits'', the player's focused shot will be improved (and shot even whilst unfocused). <br />
* For three or more ''Otter Spirits'', the player will receive an orbiting bullet shield. <br />
* For three of more ''Eagle Spirits'', the player's unfocused shot will be improved (and shot even whilst focused). <br />
Triggering such a '''Berserk Roaring Mode''' which matches your Shot Type and/or with more than three ''Beast Items'' will elongate its duration.<br />
<br />
This game sees the return of Spell Practice and marks the addition of "Achievements" to the mainline franchise. These reward completing each scenario, difficulty, 1ccs and no-miss runs. <br>There are also secret achievements to be found.<br />
<br />
==Concept==<br />
{{stub|section<br />
| reason =<br />
*Needs to be updated<br />
}}<br />
In the game's preliminary description, ZUN describes it as "a shooting game that's darker than usual, full of animal elements, and just a bit aggressive."<ref name=announce /><br />
<br />
===Name===<br />
{{stub|section<br />
| reason =<br />
*Needs to be filled in<br />
}}<br />
<br />
<br />
==Story==<br />
{{Main|/Story|l1=Story|/Translation|l2=Translation|/Characters|l3=Characters}}<br />
<blockquote>''Beast spirits began to invade from Hell en masse.''<br />
<br />
''"They're trying to take over the surface world with brute force and sheer numbers.''<br><br />
''I beg of you! Venture into Hell with me, and put a stop to their plans!"''<br />
''So she was told, by a beast spirit that was cooperative with humans...''</blockquote><br />
Reimu, Marisa and Youmu encounter several animal spirits from [[Hell]], who claim that their fellow animal spirits are plotting to take over the surface world. The three heroines team up with the spirits, and venture into Hell to take out this new potential threat.<br />
<br />
==Music==<br />
{{Main|/Music|l1=Music}}<br />
Wily Beast and Weakest Creature has 17 different tracks in it excluding the Player Score song, which can all be unlocked in the sound test by hearing them at least once in-game. The Stage 6 theme "Electric Heritage" is an arranged version of "Entrust the World to Idols ~ Idolatrize World", and the staff roll theme "Returning Home from the Underground" is, as is stated in the comment, an arranged version of the Stage 4 theme "Unlocated Hell". Several songs from this soundtrack aim to "''portray a Touhou-esque view''" of the afterlife, as seen in the description of "The Lamentations Known Only by Jizo" and "Everlasting Red Spider Lily".<br />
<br />
ZUN sees "The Lamentations Known Only by Jizo" as the first instance of a Stage 1 theme being not "''bright''" and "''cheery''", but rather feeling more melancholy. "Unlocated Hell" marks another self-admitted failure of an attempt at heavy metal (see [[Embodiment_of_Scarlet_Devil/Music|Sakuya's theme]]). Many of the later songs do include the now classic ZUN-electric guitar. On the note of "electric", "Electric Heritage" is one of the first songs of the Touhou Project to have a distinct "cyber" feeling. <br />
<br />
In the description of "The Shining Law of the Strong Eating the Weak", ZUN notes that he'd like to start "refining his [musical] sensibility" with his children in later games.<br />
<br />
==Press==<br />
''Wily Beast and Weakest Creature'' was first announced on ZUN's blog on April 17, 2019, along with information about the characters and story, and several in-development screenshots. <br />
<br />
He noted that the game would be "darker than usual" and even "a bit aggressive"<ref name=announce />. The trial CD was released on May 5th, 2019, during Reitaisai 16<ref name=trial>{{cite web|url=https://kourindou.exblog.jp/28279622/|title={{lang|ja|明日は例大祭です}}|author=ZUN|date=May 4, 2019|language=ja}}</ref>. On May 20th, he announced the trial of ''Wily Beast and Weakest Creature'' would also be available on Steam<ref name=steamtrial>{{cite web|url=https://kourindou.exblog.jp/28323776/|title={{lang|ja|東方鬼形獣の体験版を公開しました}}|author=ZUN|date=May 20, 2019|language=ja}}</ref>, which is, according to Team Shanghai Alice's legal representative Fumio Oyamada, the result of a conversation with Toby Fox.<ref name=stationstream>{{cite web|url=https://www.youtube.com/watch?v=QFEbWqs_Hh4&feature=youtu.be&t=6396|title={{lang|ja|東方ステーション #18 ~例大祭特集~}}|author=ステーション東方|date=May 10, 2019|language=ja}}</ref><br />
<br />
The game was released on August 12th, 2019, during Comiket 96, along with a bug patch<ref name=release>{{cite web|url=https://kourindou.exblog.jp/28512725/|title={{lang|ja|夏コミ情報と重要なお知らせ }}|author=ZUN|date=August 10, 2019|language=ja}}</ref>. The Steam version of the full release was available September 10th, 2019.<ref name=steam>{{cite web|url=https://store.steampowered.com/app/1079160/__Wily_Beast_and_Weakest_Creature/|title={{lang|en|東方鬼形獣 〜 Wily Beast and Weakest Creature. on Steam}}}}</ref> <br />
<br />
In the afterword, ZUN sees ''Wily Beast and Weakest Creature'' as possibly the easiest game in the series.<br />
<br />
==Gallery==<br />
<gallery perrow="7"><br />
File:WBaWCCDCover.jpg.jpg|CD cover of ''Wily Beast and Weakest Creature'', and onis.<br />
File:WBaWCCDDemo.jpg|CD Demo featuring [[Eika Ebisu]].<br />
File:WBaWCTitleScreen.jpg|Title screen.<br />
</gallery><br />
<br />
==English patch==<br />
{{thcrap|th17|}}<br />
<br />
==External Links==<br />
*[https://kourindou.exblog.jp/28205045/ Official announcement on ZUN's blog]<br />
*[https://store.steampowered.com/app/1079160 Steam]<br />
*[https://www.dlsite.com/home/announce/=/product_id/RJ254866.html DLsite]<br />
*[https://dlsoft.dmm.com/detail/shanghaialice_0007 DMM]<br />
<br />
==References==<br />
{{smallrefs}}<br />
<br />
<br />
<br />
{{Navbox Touhou}}<br />
{{Navbox WBaWC}}<br />
<br />
[[Category:Wily Beast and Weakest Creature]]<br />
[[Category:Reitaisai 16]]<br />
[[zh:东方鬼形兽]]<br />
[[de:Wily Beast and Weakest Creature]]<br />
[[fr:Wily Beast and Weakest Creature]]<br />
[[pl:Wily Beast and Weakest Creature]]<br />
[[ru:Wily Beast and Weakest Creature]]<br />
[[vi:Wily Beast and Weakest Creature]]</div>New visitorhttps://en.touhouwiki.net/index.php?title=Module:Documentation/config&diff=416999Module:Documentation/config2020-04-18T02:34:57Z<p>New visitor: Fix Documentation icons</p>
<hr />
<div>----------------------------------------------------------------------------------------------------<br />
--<br />
-- Configuration for Module:Documentation<br />
--<br />
-- Here you can set the values of the parameters and messages used in Module:Documentation to<br />
-- localise it to your wiki and your language. Unless specified otherwise, values given here<br />
-- should be string values.<br />
----------------------------------------------------------------------------------------------------<br />
<br />
local cfg = {} -- Do not edit this line.<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- Protection template configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
-- cfg['protection-reason-edit']<br />
-- The protection reason for edit-protected templates to pass to<br />
-- [[Module:Protection banner]].<br />
cfg['protection-reason-edit'] = 'template'<br />
<br />
--[[<br />
----------------------------------------------------------------------------------------------------<br />
-- Sandbox notice configuration<br />
--<br />
-- On sandbox pages the module can display a template notifying users that the current page is a<br />
-- sandbox, and the location of test cases pages, etc. The module decides whether the page is a<br />
-- sandbox or not based on the value of cfg['sandbox-subpage']. The following settings configure the<br />
-- messages that the notices contains.<br />
----------------------------------------------------------------------------------------------------<br />
--]]<br />
<br />
-- cfg['sandbox-notice-image']<br />
-- The image displayed in the sandbox notice.<br />
cfg['sandbox-notice-image'] = '[[Image:Sandbox.svg|50px|alt=|link=]]'<br />
<br />
--[[<br />
-- cfg['sandbox-notice-pagetype-template']<br />
-- cfg['sandbox-notice-pagetype-module']<br />
-- cfg['sandbox-notice-pagetype-other']<br />
-- The page type of the sandbox page. The message that is displayed depends on the current subject<br />
-- namespace. This message is used in either cfg['sandbox-notice-blurb'] or<br />
-- cfg['sandbox-notice-diff-blurb'].<br />
--]]<br />
cfg['sandbox-notice-pagetype-template'] = '[[Touhou Wiki:Template test cases|template sandbox]] page'<br />
cfg['sandbox-notice-pagetype-module'] = '[[Touhou Wiki:Template test cases|module sandbox]] page'<br />
cfg['sandbox-notice-pagetype-other'] = 'sandbox page'<br />
<br />
--[[<br />
-- cfg['sandbox-notice-blurb']<br />
-- cfg['sandbox-notice-diff-blurb']<br />
-- cfg['sandbox-notice-diff-display']<br />
-- Either cfg['sandbox-notice-blurb'] or cfg['sandbox-notice-diff-blurb'] is the opening sentence<br />
-- of the sandbox notice. The latter has a diff link, but the former does not. $1 is the page<br />
-- type, which is either cfg['sandbox-notice-pagetype-template'],<br />
-- cfg['sandbox-notice-pagetype-module'] or cfg['sandbox-notice-pagetype-other'] depending what<br />
-- namespace we are in. $2 is a link to the main template page, and $3 is a diff link between<br />
-- the sandbox and the main template. The display value of the diff link is set by <br />
-- cfg['sandbox-notice-compare-link-display'].<br />
--]]<br />
cfg['sandbox-notice-blurb'] = 'This is the $1 for $2.'<br />
cfg['sandbox-notice-diff-blurb'] = 'This is the $1 for $2 ($3).'<br />
cfg['sandbox-notice-compare-link-display'] = 'diff'<br />
<br />
--[[<br />
-- cfg['sandbox-notice-testcases-blurb']<br />
-- cfg['sandbox-notice-testcases-link-display']<br />
-- cfg['sandbox-notice-testcases-run-blurb']<br />
-- cfg['sandbox-notice-testcases-run-link-display']<br />
-- cfg['sandbox-notice-testcases-blurb'] is a sentence notifying the user that there is a test cases page<br />
-- corresponding to this sandbox that they can edit. $1 is a link to the test cases page.<br />
-- cfg['sandbox-notice-testcases-link-display'] is the display value for that link.<br />
-- cfg['sandbox-notice-testcases-run-blurb'] is a sentence notifying the user that there is a test cases page<br />
-- corresponding to this sandbox that they can edit, along with a link to run it. $1 is a link to the test<br />
-- cases page, and $2 is a link to the page to run it.<br />
-- cfg['sandbox-notice-testcases-run-link-display'] is the display value for the link to run the test<br />
-- cases.<br />
--]]<br />
cfg['sandbox-notice-testcases-blurb'] = 'See also the companion subpage for $1.'<br />
cfg['sandbox-notice-testcases-link-display'] = 'test cases'<br />
cfg['sandbox-notice-testcases-run-blurb'] = 'See also the companion subpage for $1 ($2).'<br />
cfg['sandbox-notice-testcases-run-link-display'] = 'run'<br />
<br />
-- cfg['sandbox-category']<br />
-- A category to add to all template sandboxes.<br />
cfg['sandbox-category'] = 'Template sandboxes'<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- Start box configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
-- cfg['documentation-icon-wikitext']<br />
-- The wikitext for the icon shown at the top of the template.<br />
cfg['documentation-icon-wikitext'] = '[[File:Template-info.png|50px|link=|alt=]]'<br />
<br />
-- cfg['template-namespace-heading']<br />
-- The heading shown in the template namespace.<br />
cfg['template-namespace-heading'] = 'Template documentation'<br />
<br />
-- cfg['module-namespace-heading']<br />
-- The heading shown in the module namespace.<br />
cfg['module-namespace-heading'] = 'Module documentation'<br />
<br />
-- cfg['file-namespace-heading']<br />
-- The heading shown in the file namespace.<br />
cfg['file-namespace-heading'] = 'Summary'<br />
<br />
-- cfg['other-namespaces-heading']<br />
-- The heading shown in other namespaces.<br />
cfg['other-namespaces-heading'] = 'Documentation'<br />
<br />
-- cfg['view-link-display']<br />
-- The text to display for "view" links.<br />
cfg['view-link-display'] = 'view'<br />
<br />
-- cfg['edit-link-display']<br />
-- The text to display for "edit" links.<br />
cfg['edit-link-display'] = 'edit'<br />
<br />
-- cfg['history-link-display']<br />
-- The text to display for "history" links.<br />
cfg['history-link-display'] = 'history'<br />
<br />
-- cfg['purge-link-display']<br />
-- The text to display for "purge" links.<br />
cfg['purge-link-display'] = 'purge'<br />
<br />
-- cfg['create-link-display']<br />
-- The text to display for "create" links.<br />
cfg['create-link-display'] = 'create'<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- Link box (end box) configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
-- cfg['transcluded-from-blurb']<br />
-- Notice displayed when the docs are transcluded from another page. $1 is a wikilink to that page.<br />
cfg['transcluded-from-blurb'] = 'The above [[Touhou Wiki:Template documentation|documentation]] is [[Touhou Wiki:Transclusion|transcluded]] from $1.'<br />
<br />
--[[<br />
-- cfg['create-module-doc-blurb']<br />
-- Notice displayed in the module namespace when the documentation subpage does not exist.<br />
-- $1 is a link to create the documentation page with the preload cfg['module-preload'] and the<br />
-- display cfg['create-link-display'].<br />
--]]<br />
cfg['create-module-doc-blurb'] = 'You might want to $1 a documentation page for this [[Touhou Wiki:Lua|Scribunto module]].'<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- Experiment blurb configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
--[[<br />
-- cfg['experiment-blurb-template']<br />
-- cfg['experiment-blurb-module']<br />
-- The experiment blurb is the text inviting editors to experiment in sandbox and test cases pages.<br />
-- It is only shown in the template and module namespaces. With the default English settings, it<br />
-- might look like this:<br />
--<br />
-- Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages.<br />
--<br />
-- In this example, "sandbox", "edit", "diff", "testcases", and "edit" would all be links.<br />
--<br />
-- There are two versions, cfg['experiment-blurb-template'] and cfg['experiment-blurb-module'], depending<br />
-- on what namespace we are in.<br />
-- <br />
-- Parameters:<br />
--<br />
-- $1 is a link to the sandbox page. If the sandbox exists, it is in the following format:<br />
--<br />
-- cfg['sandbox-link-display'] (cfg['sandbox-edit-link-display'] | cfg['compare-link-display'])<br />
-- <br />
-- If the sandbox doesn't exist, it is in the format:<br />
--<br />
-- cfg['sandbox-link-display'] (cfg['sandbox-create-link-display'] | cfg['mirror-link-display'])<br />
-- <br />
-- The link for cfg['sandbox-create-link-display'] link preloads the page with cfg['template-sandbox-preload']<br />
-- or cfg['module-sandbox-preload'], depending on the current namespace. The link for cfg['mirror-link-display']<br />
-- loads a default edit summary of cfg['mirror-edit-summary'].<br />
--<br />
-- $2 is a link to the test cases page. If the test cases page exists, it is in the following format:<br />
--<br />
-- cfg['testcases-link-display'] (cfg['testcases-edit-link-display'] | cfg['testcases-run-link-display'])<br />
--<br />
-- If the test cases page doesn't exist, it is in the format:<br />
-- <br />
-- cfg['testcases-link-display'] (cfg['testcases-create-link-display'])<br />
--<br />
-- If the test cases page doesn't exist, the link for cfg['testcases-create-link-display'] preloads the<br />
-- page with cfg['template-testcases-preload'] or cfg['module-testcases-preload'], depending on the current<br />
-- namespace.<br />
--]]<br />
cfg['experiment-blurb-template'] = "Editors can experiment in this template's $1 and $2 pages."<br />
cfg['experiment-blurb-module'] = "Editors can experiment in this module's $1 and $2 pages."<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- Sandbox link configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
-- cfg['sandbox-subpage']<br />
-- The name of the template subpage typically used for sandboxes.<br />
cfg['sandbox-subpage'] = 'sandbox'<br />
<br />
-- cfg['template-sandbox-preload']<br />
-- Preload file for template sandbox pages.<br />
cfg['template-sandbox-preload'] = 'Template:Documentation/preload-sandbox'<br />
<br />
-- cfg['module-sandbox-preload']<br />
-- Preload file for Lua module sandbox pages.<br />
cfg['module-sandbox-preload'] = 'Template:Documentation/preload-module-sandbox'<br />
<br />
-- cfg['sandbox-link-display']<br />
-- The text to display for "sandbox" links.<br />
cfg['sandbox-link-display'] = 'sandbox'<br />
<br />
-- cfg['sandbox-edit-link-display']<br />
-- The text to display for sandbox "edit" links.<br />
cfg['sandbox-edit-link-display'] = 'edit'<br />
<br />
-- cfg['sandbox-create-link-display']<br />
-- The text to display for sandbox "create" links.<br />
cfg['sandbox-create-link-display'] = 'create'<br />
<br />
-- cfg['compare-link-display']<br />
-- The text to display for "compare" links.<br />
cfg['compare-link-display'] = 'diff'<br />
<br />
-- cfg['mirror-edit-summary']<br />
-- The default edit summary to use when a user clicks the "mirror" link. $1 is a wikilink to the<br />
-- template page.<br />
cfg['mirror-edit-summary'] = 'Create sandbox version of $1'<br />
<br />
-- cfg['mirror-link-display']<br />
-- The text to display for "mirror" links.<br />
cfg['mirror-link-display'] = 'mirror'<br />
<br />
-- cfg['mirror-link-preload']<br />
-- The page to preload when a user clicks the "mirror" link.<br />
cfg['mirror-link-preload'] = 'Template:Documentation/mirror'<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- Test cases link configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
-- cfg['testcases-subpage']<br />
-- The name of the template subpage typically used for test cases.<br />
cfg['testcases-subpage'] = 'testcases'<br />
<br />
-- cfg['template-testcases-preload']<br />
-- Preload file for template test cases pages.<br />
cfg['template-testcases-preload'] = 'Template:Documentation/preload-testcases'<br />
<br />
-- cfg['module-testcases-preload']<br />
-- Preload file for Lua module test cases pages.<br />
cfg['module-testcases-preload'] = 'Template:Documentation/preload-module-testcases'<br />
<br />
-- cfg['testcases-link-display']<br />
-- The text to display for "testcases" links.<br />
cfg['testcases-link-display'] = 'testcases'<br />
<br />
-- cfg['testcases-edit-link-display']<br />
-- The text to display for test cases "edit" links.<br />
cfg['testcases-edit-link-display'] = 'edit'<br />
<br />
-- cfg['testcases-run-link-display']<br />
-- The text to display for test cases "run" links.<br />
cfg['testcases-run-link-display'] = 'run'<br />
<br />
-- cfg['testcases-create-link-display']<br />
-- The text to display for test cases "create" links.<br />
cfg['testcases-create-link-display'] = 'create'<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- Add categories blurb configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
--[[<br />
-- cfg['add-categories-blurb']<br />
-- Text to direct users to add categories to the /doc subpage. Not used if the "content" or<br />
-- "docname fed" arguments are set, as then it is not clear where to add the categories. $1 is a<br />
-- link to the /doc subpage with a display value of cfg['doc-link-display'].<br />
--]]<br />
cfg['add-categories-blurb'] = 'Please add categories to the $1 subpage.'<br />
<br />
-- cfg['doc-link-display']<br />
-- The text to display when linking to the /doc subpage.<br />
cfg['doc-link-display'] = '/doc'<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- Subpages link configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
--[[<br />
-- cfg['subpages-blurb']<br />
-- The "Subpages of this template" blurb. $1 is a link to the main template's subpages with a<br />
-- display value of cfg['subpages-link-display']. In the English version this blurb is simply<br />
-- the link followed by a period, and the link display provides the actual text.<br />
--]]<br />
cfg['subpages-blurb'] = '$1.'<br />
<br />
--[[<br />
-- cfg['subpages-link-display']<br />
-- The text to display for the "subpages of this page" link. $1 is cfg['template-pagetype'],<br />
-- cfg['module-pagetype'] or cfg['default-pagetype'], depending on whether the current page is in<br />
-- the template namespace, the module namespace, or another namespace.<br />
--]]<br />
cfg['subpages-link-display'] = 'Subpages of this $1'<br />
<br />
-- cfg['template-pagetype']<br />
-- The pagetype to display for template pages.<br />
cfg['template-pagetype'] = 'template'<br />
<br />
-- cfg['module-pagetype']<br />
-- The pagetype to display for Lua module pages.<br />
cfg['module-pagetype'] = 'module'<br />
<br />
-- cfg['default-pagetype']<br />
-- The pagetype to display for pages other than templates or Lua modules.<br />
cfg['default-pagetype'] = 'page'<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- Doc link configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
-- cfg['doc-subpage']<br />
-- The name of the subpage typically used for documentation pages.<br />
cfg['doc-subpage'] = 'doc'<br />
<br />
-- cfg['file-docpage-preload']<br />
-- Preload file for documentation page in the file namespace.<br />
cfg['file-docpage-preload'] = 'Template:Documentation/preload-filespace'<br />
<br />
-- cfg['docpage-preload']<br />
-- Preload file for template documentation pages in all namespaces.<br />
cfg['docpage-preload'] = 'Template:Documentation/preload'<br />
<br />
-- cfg['module-preload']<br />
-- Preload file for Lua module documentation pages.<br />
cfg['module-preload'] = 'Template:Documentation/preload-module-doc'<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- Print version configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
-- cfg['print-subpage']<br />
-- The name of the template subpage used for print versions.<br />
cfg['print-subpage'] = 'Print'<br />
<br />
-- cfg['print-link-display']<br />
-- The text to display when linking to the /Print subpage.<br />
cfg['print-link-display'] = '/Print'<br />
<br />
-- cfg['print-blurb']<br />
-- Text to display if a /Print subpage exists. $1 is a link to the subpage with a display value of cfg['print-link-display'].<br />
cfg['print-blurb'] = 'A [[Help:Books/for experts#Improving the book layout|print version]] of this template exists at $1.'<br />
.. ' If you make a change to this template, please update the print version as well.'<br />
<br />
-- cfg['display-print-category']<br />
-- Set to true to enable output of cfg['print-category'] if a /Print subpage exists.<br />
-- This should be a boolean value (either true or false).<br />
cfg['display-print-category'] = true<br />
<br />
-- cfg['print-category']<br />
-- Category to output if cfg['display-print-category'] is set to true, and a /Print subpage exists.<br />
cfg['print-category'] = 'Templates with print versions'<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- HTML and CSS configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
-- cfg['main-div-id']<br />
-- The "id" attribute of the main HTML "div" tag.<br />
cfg['main-div-id'] = 'template-documentation'<br />
<br />
-- cfg['main-div-classes']<br />
-- The CSS classes added to the main HTML "div" tag.<br />
cfg['main-div-classes'] = 'template-documentation iezoomfix'<br />
<br />
-- cfg['start-box-linkclasses']<br />
-- The CSS classes used for the [view][edit][history] or [create] links in the start box.<br />
cfg['start-box-linkclasses'] = 'mw-editsection-like plainlinks'<br />
<br />
-- cfg['start-box-link-id']<br />
-- The HTML "id" attribute for the links in the start box.<br />
cfg['start-box-link-id'] = 'doc_editlinks'<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- {{fmbox}} template configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
-- cfg['fmbox-id']<br />
-- The id sent to the "id" parameter of the {{fmbox}} template.<br />
cfg['fmbox-id'] = 'documentation-meta-data'<br />
<br />
-- cfg['fmbox-style']<br />
-- The value sent to the style parameter of {{fmbox}}.<br />
cfg['fmbox-style'] = 'background-color: #ecfcf4'<br />
<br />
-- cfg['fmbox-textstyle']<br />
-- The value sent to the "textstyle parameter of {{fmbox}}.<br />
cfg['fmbox-textstyle'] = 'font-style: italic'<br />
<br />
----------------------------------------------------------------------------------------------------<br />
-- Tracking category configuration<br />
----------------------------------------------------------------------------------------------------<br />
<br />
-- cfg['display-strange-usage-category']<br />
-- Set to true to enable output of cfg['strange-usage-category'] if the module is used on a /doc subpage<br />
-- or a /testcases subpage. This should be a boolean value (either true or false).<br />
cfg['display-strange-usage-category'] = true<br />
<br />
-- cfg['strange-usage-category']<br />
-- Category to output if cfg['display-strange-usage-category'] is set to true and the module is used on a<br />
-- /doc subpage or a /testcases subpage.<br />
cfg['strange-usage-category'] = 'Wikipedia pages with strange ((documentation)) usage'<br />
<br />
--[[<br />
----------------------------------------------------------------------------------------------------<br />
-- End configuration<br />
--<br />
-- Don't edit anything below this line.<br />
----------------------------------------------------------------------------------------------------<br />
--]]<br />
<br />
return cfg</div>New visitorhttps://en.touhouwiki.net/index.php?title=Module:Documentation&diff=416976Module:Documentation2020-04-17T13:02:18Z<p>New visitor: Replace The Icon, trying to fix break templates doc icon</p>
<hr />
<div>-- This module implements {{documentation}}.<br />
<br />
-- Get required modules.<br />
local getArgs = require('Module:Arguments').getArgs<br />
local messageBox = require('Module:Message box')<br />
<br />
-- Get the config table.<br />
local cfg = mw.loadData('Module:Documentation/config')<br />
<br />
local p = {}<br />
<br />
-- Often-used functions.<br />
local ugsub = mw.ustring.gsub<br />
<br />
----------------------------------------------------------------------------<br />
-- Helper functions<br />
--<br />
-- These are defined as local functions, but are made available in the p<br />
-- table for testing purposes.<br />
----------------------------------------------------------------------------<br />
<br />
local function message(cfgKey, valArray, expectType)<br />
--[[<br />
-- Gets a message from the cfg table and formats it if appropriate.<br />
-- The function raises an error if the value from the cfg table is not<br />
-- of the type expectType. The default type for expectType is 'string'.<br />
-- If the table valArray is present, strings such as $1, $2 etc. in the<br />
-- message are substituted with values from the table keys [1], [2] etc.<br />
-- For example, if the message "foo-message" had the value 'Foo $2 bar $1.',<br />
-- message('foo-message', {'baz', 'qux'}) would return "Foo qux bar baz."<br />
--]]<br />
local msg = cfg[cfgKey]<br />
expectType = expectType or 'string'<br />
if type(msg) ~= expectType then<br />
error('message: type error in message cfg.' .. cfgKey .. ' (' .. expectType .. ' expected, got ' .. type(msg) .. ')', 2)<br />
end<br />
if not valArray then<br />
return msg<br />
end<br />
<br />
local function getMessageVal(match)<br />
match = tonumber(match)<br />
return valArray[match] or error('message: no value found for key $' .. match .. ' in message cfg.' .. cfgKey, 4)<br />
end<br />
<br />
local ret = ugsub(msg, '$([1-9][0-9]*)', getMessageVal)<br />
return ret<br />
end<br />
<br />
p.message = message<br />
<br />
local function makeWikilink(page, display)<br />
if display then<br />
return mw.ustring.format('[[%s|%s]]', page, display)<br />
else<br />
return mw.ustring.format('[[%s]]', page)<br />
end<br />
end<br />
<br />
p.makeWikilink = makeWikilink<br />
<br />
local function makeCategoryLink(cat, sort)<br />
local catns = mw.site.namespaces[14].name<br />
return makeWikilink(catns .. ':' .. cat, sort)<br />
end<br />
<br />
p.makeCategoryLink = makeCategoryLink<br />
<br />
local function makeUrlLink(url, display)<br />
return mw.ustring.format('[%s %s]', url, display)<br />
end<br />
<br />
p.makeUrlLink = makeUrlLink<br />
<br />
local function makeToolbar(...)<br />
local ret = {}<br />
local lim = select('#', ...)<br />
if lim < 1 then<br />
return nil<br />
end<br />
for i = 1, lim do<br />
ret[#ret + 1] = select(i, ...)<br />
end<br />
return '<small style="font-style: normal;">(' .. table.concat(ret, ' &#124; ') .. ')</small>'<br />
end <br />
<br />
p.makeToolbar = makeToolbar<br />
<br />
----------------------------------------------------------------------------<br />
-- Argument processing<br />
----------------------------------------------------------------------------<br />
<br />
local function makeInvokeFunc(funcName)<br />
return function (frame)<br />
local args = getArgs(frame, {<br />
valueFunc = function (key, value)<br />
if type(value) == 'string' then<br />
value = value:match('^%s*(.-)%s*$') -- Remove whitespace.<br />
if key == 'heading' or value ~= '' then<br />
return value<br />
else<br />
return nil<br />
end<br />
else<br />
return value<br />
end<br />
end<br />
})<br />
return p[funcName](args)<br />
end<br />
end<br />
<br />
----------------------------------------------------------------------------<br />
-- Main function<br />
----------------------------------------------------------------------------<br />
<br />
p.main = makeInvokeFunc('_main')<br />
<br />
function p._main(args)<br />
--[[<br />
-- This function defines logic flow for the module.<br />
-- @args - table of arguments passed by the user<br />
-- <br />
-- Messages:<br />
-- 'main-div-id' --> 'template-documentation'<br />
-- 'main-div-classes' --> 'template-documentation iezoomfix'<br />
--]]<br />
local env = p.getEnvironment(args)<br />
local root = mw.html.create()<br />
root<br />
:wikitext(p.protectionTemplate(env))<br />
:wikitext(p.sandboxNotice(args, env))<br />
-- This div tag is from {{documentation/start box}}, but moving it here<br />
-- so that we don't have to worry about unclosed tags.<br />
:tag('div')<br />
:attr('id', message('main-div-id'))<br />
:addClass(message('main-div-classes'))<br />
:newline()<br />
:wikitext(p._startBox(args, env))<br />
:wikitext(p._content(args, env))<br />
:tag('div')<br />
:css('clear', 'both') -- So right or left floating items don't stick out of the doc box.<br />
:newline()<br />
:done()<br />
:done()<br />
:wikitext(p._endBox(args, env))<br />
:wikitext(p.addTrackingCategories(env))<br />
return tostring(root)<br />
end<br />
<br />
----------------------------------------------------------------------------<br />
-- Environment settings<br />
----------------------------------------------------------------------------<br />
<br />
function p.getEnvironment(args)<br />
--[[<br />
-- Returns a table with information about the environment, including title objects and other namespace- or<br />
-- path-related data.<br />
-- @args - table of arguments passed by the user<br />
--<br />
-- Title objects include:<br />
-- env.title - the page we are making documentation for (usually the current title)<br />
-- env.templateTitle - the template (or module, file, etc.)<br />
-- env.docTitle - the /doc subpage.<br />
-- env.sandboxTitle - the /sandbox subpage.<br />
-- env.testcasesTitle - the /testcases subpage.<br />
-- env.printTitle - the print version of the template, located at the /Print subpage.<br />
--<br />
-- Data includes:<br />
-- env.protectionLevels - the protection levels table of the title object.<br />
-- env.subjectSpace - the number of the title's subject namespace.<br />
-- env.docSpace - the number of the namespace the title puts its documentation in.<br />
-- env.docpageBase - the text of the base page of the /doc, /sandbox and /testcases pages, with namespace.<br />
-- env.compareUrl - URL of the Special:ComparePages page comparing the sandbox with the template.<br />
-- <br />
-- All table lookups are passed through pcall so that errors are caught. If an error occurs, the value<br />
-- returned will be nil.<br />
--]]<br />
<br />
local env, envFuncs = {}, {}<br />
<br />
-- Set up the metatable. If triggered we call the corresponding function in the envFuncs table. The value<br />
-- returned by that function is memoized in the env table so that we don't call any of the functions<br />
-- more than once. (Nils won't be memoized.)<br />
setmetatable(env, {<br />
__index = function (t, key)<br />
local envFunc = envFuncs[key]<br />
if envFunc then<br />
local success, val = pcall(envFunc)<br />
if success then<br />
env[key] = val -- Memoise the value.<br />
return val<br />
end<br />
end<br />
return nil<br />
end<br />
}) <br />
<br />
function envFuncs.title()<br />
-- The title object for the current page, or a test page passed with args.page.<br />
local title<br />
local titleArg = args.page<br />
if titleArg then<br />
title = mw.title.new(titleArg)<br />
else<br />
title = mw.title.getCurrentTitle()<br />
end<br />
return title<br />
end<br />
<br />
function envFuncs.templateTitle()<br />
--[[<br />
-- The template (or module, etc.) title object.<br />
-- Messages:<br />
-- 'sandbox-subpage' --> 'sandbox'<br />
-- 'testcases-subpage' --> 'testcases'<br />
--]]<br />
local subjectSpace = env.subjectSpace<br />
local title = env.title<br />
local subpage = title.subpageText<br />
if subpage == message('sandbox-subpage') or subpage == message('testcases-subpage') then<br />
return mw.title.makeTitle(subjectSpace, title.baseText)<br />
else<br />
return mw.title.makeTitle(subjectSpace, title.text)<br />
end<br />
end<br />
<br />
function envFuncs.docTitle()<br />
--[[<br />
-- Title object of the /doc subpage.<br />
-- Messages:<br />
-- 'doc-subpage' --> 'doc'<br />
--]]<br />
local title = env.title<br />
local docname = args[1] -- User-specified doc page.<br />
local docpage<br />
if docname then<br />
docpage = docname<br />
else<br />
docpage = env.docpageBase .. '/' .. message('doc-subpage')<br />
end<br />
return mw.title.new(docpage)<br />
end<br />
<br />
function envFuncs.sandboxTitle()<br />
--[[<br />
-- Title object for the /sandbox subpage.<br />
-- Messages:<br />
-- 'sandbox-subpage' --> 'sandbox'<br />
--]]<br />
return mw.title.new(env.docpageBase .. '/' .. message('sandbox-subpage'))<br />
end<br />
<br />
function envFuncs.testcasesTitle()<br />
--[[<br />
-- Title object for the /testcases subpage.<br />
-- Messages:<br />
-- 'testcases-subpage' --> 'testcases'<br />
--]]<br />
return mw.title.new(env.docpageBase .. '/' .. message('testcases-subpage'))<br />
end<br />
<br />
function envFuncs.printTitle()<br />
--[[<br />
-- Title object for the /Print subpage.<br />
-- Messages:<br />
-- 'print-subpage' --> 'Print'<br />
--]]<br />
return env.templateTitle:subPageTitle(message('print-subpage'))<br />
end<br />
<br />
function envFuncs.protectionLevels()<br />
-- The protection levels table of the title object.<br />
return env.title.protectionLevels<br />
end<br />
<br />
function envFuncs.subjectSpace()<br />
-- The subject namespace number.<br />
return mw.site.namespaces[env.title.namespace].subject.id<br />
end<br />
<br />
function envFuncs.docSpace()<br />
-- The documentation namespace number. For most namespaces this is the same as the<br />
-- subject namespace. However, pages in the Article, File, MediaWiki or Category<br />
-- namespaces must have their /doc, /sandbox and /testcases pages in talk space.<br />
local subjectSpace = env.subjectSpace<br />
if subjectSpace == 0 or subjectSpace == 6 or subjectSpace == 8 or subjectSpace == 14 then<br />
return subjectSpace + 1<br />
else<br />
return subjectSpace<br />
end<br />
end<br />
<br />
function envFuncs.docpageBase()<br />
-- The base page of the /doc, /sandbox, and /testcases subpages.<br />
-- For some namespaces this is the talk page, rather than the template page.<br />
local templateTitle = env.templateTitle<br />
local docSpace = env.docSpace<br />
local docSpaceText = mw.site.namespaces[docSpace].name<br />
-- Assemble the link. docSpace is never the main namespace, so we can hardcode the colon.<br />
return docSpaceText .. ':' .. templateTitle.text<br />
end<br />
<br />
function envFuncs.compareUrl()<br />
-- Diff link between the sandbox and the main template using [[Special:ComparePages]].<br />
local templateTitle = env.templateTitle<br />
local sandboxTitle = env.sandboxTitle<br />
if templateTitle.exists and sandboxTitle.exists then<br />
local compareUrl = mw.uri.fullUrl(<br />
'Special:ComparePages',<br />
{page1 = templateTitle.prefixedText, page2 = sandboxTitle.prefixedText}<br />
)<br />
return tostring(compareUrl)<br />
else<br />
return nil<br />
end<br />
end <br />
<br />
return env<br />
end <br />
<br />
----------------------------------------------------------------------------<br />
-- Auxiliary templates<br />
----------------------------------------------------------------------------<br />
<br />
function p.sandboxNotice(args, env)<br />
--[=[<br />
-- Generates a sandbox notice for display above sandbox pages.<br />
-- @args - a table of arguments passed by the user<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
-- <br />
-- Messages:<br />
-- 'sandbox-notice-image' --> '[[Image:Sandbox.svg|50px|alt=|link=]]'<br />
-- 'sandbox-notice-blurb' --> 'This is the $1 for $2.'<br />
-- 'sandbox-notice-diff-blurb' --> 'This is the $1 for $2 ($3).'<br />
-- 'sandbox-notice-pagetype-template' --> '[[Wikipedia:Template test cases|template sandbox]] page'<br />
-- 'sandbox-notice-pagetype-module' --> '[[Wikipedia:Template test cases|module sandbox]] page'<br />
-- 'sandbox-notice-pagetype-other' --> 'sandbox page'<br />
-- 'sandbox-notice-compare-link-display' --> 'diff'<br />
-- 'sandbox-notice-testcases-blurb' --> 'See also the companion subpage for $1.'<br />
-- 'sandbox-notice-testcases-link-display' --> 'test cases'<br />
-- 'sandbox-category' --> 'Template sandboxes'<br />
--]=]<br />
local title = env.title<br />
local sandboxTitle = env.sandboxTitle<br />
local templateTitle = env.templateTitle<br />
local subjectSpace = env.subjectSpace<br />
if not (subjectSpace and title and sandboxTitle and templateTitle and mw.title.equals(title, sandboxTitle)) then<br />
return nil<br />
end<br />
-- Build the table of arguments to pass to {{ombox}}. We need just two fields, "image" and "text".<br />
local omargs = {}<br />
omargs.image = message('sandbox-notice-image')<br />
-- Get the text. We start with the opening blurb, which is something like<br />
-- "This is the template sandbox for [[Template:Foo]] (diff)."<br />
local text = ''<br />
local pagetype<br />
if subjectSpace == 10 then<br />
pagetype = message('sandbox-notice-pagetype-template')<br />
elseif subjectSpace == 828 then<br />
pagetype = message('sandbox-notice-pagetype-module')<br />
else<br />
pagetype = message('sandbox-notice-pagetype-other')<br />
end<br />
local templateLink = makeWikilink(templateTitle.prefixedText)<br />
local compareUrl = env.compareUrl<br />
if compareUrl then<br />
local compareDisplay = message('sandbox-notice-compare-link-display')<br />
local compareLink = makeUrlLink(compareUrl, compareDisplay)<br />
text = text .. message('sandbox-notice-diff-blurb', {pagetype, templateLink, compareLink})<br />
else<br />
text = text .. message('sandbox-notice-blurb', {pagetype, templateLink})<br />
end<br />
-- Get the test cases page blurb if the page exists. This is something like<br />
-- "See also the companion subpage for [[Template:Foo/testcases|test cases]]."<br />
local testcasesTitle = env.testcasesTitle<br />
if testcasesTitle and testcasesTitle.exists then<br />
if testcasesTitle.contentModel == "Scribunto" then<br />
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')<br />
local testcasesRunLinkDisplay = message('sandbox-notice-testcases-run-link-display')<br />
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)<br />
local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay)<br />
text = text .. '<br />' .. message('sandbox-notice-testcases-run-blurb', {testcasesLink, testcasesRunLink})<br />
else<br />
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')<br />
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)<br />
text = text .. '<br />' .. message('sandbox-notice-testcases-blurb', {testcasesLink})<br />
end<br />
end<br />
-- Add the sandbox to the sandbox category.<br />
text = text .. makeCategoryLink(message('sandbox-category'))<br />
omargs.text = text<br />
local ret = '<div style="clear: both;"></div>'<br />
ret = ret .. messageBox.main('ombox', omargs)<br />
return ret<br />
end<br />
<br />
function p.protectionTemplate(env)<br />
-- Generates the padlock icon in the top right.<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
-- Messages:<br />
-- 'protection-template' --> 'pp-template'<br />
-- 'protection-template-args' --> {docusage = 'yes'}<br />
local protectionLevels, mProtectionBanner<br />
local title = env.title<br />
protectionLevels = env.protectionLevels<br />
if not protectionLevels then<br />
return nil<br />
end<br />
local editProt = protectionLevels.edit and protectionLevels.edit[1]<br />
local moveProt = protectionLevels.move and protectionLevels.move[1]<br />
if editProt then<br />
-- The page is edit-protected.<br />
mProtectionBanner = require('Module:Protection banner')<br />
local reason = message('protection-reason-edit')<br />
return mProtectionBanner._main{reason, small = true}<br />
elseif moveProt and moveProt ~= 'autoconfirmed' then<br />
-- The page is move-protected but not edit-protected. Exclude move<br />
-- protection with the level "autoconfirmed", as this is equivalent to<br />
-- no move protection at all.<br />
mProtectionBanner = require('Module:Protection banner')<br />
return mProtectionBanner._main{action = 'move', small = true}<br />
else<br />
return nil<br />
end<br />
end<br />
<br />
----------------------------------------------------------------------------<br />
-- Start box<br />
----------------------------------------------------------------------------<br />
<br />
p.startBox = makeInvokeFunc('_startBox')<br />
<br />
function p._startBox(args, env)<br />
--[[<br />
-- This function generates the start box.<br />
-- @args - a table of arguments passed by the user<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
-- <br />
-- The actual work is done by p.makeStartBoxLinksData and p.renderStartBoxLinks which make<br />
-- the [view] [edit] [history] [purge] links, and by p.makeStartBoxData and p.renderStartBox<br />
-- which generate the box HTML.<br />
--]]<br />
env = env or p.getEnvironment(args)<br />
local links<br />
local content = args.content<br />
if not content then<br />
-- No need to include the links if the documentation is on the template page itself.<br />
local linksData = p.makeStartBoxLinksData(args, env)<br />
if linksData then<br />
links = p.renderStartBoxLinks(linksData)<br />
end<br />
end<br />
-- Generate the start box html.<br />
local data = p.makeStartBoxData(args, env, links)<br />
if data then<br />
return p.renderStartBox(data)<br />
else<br />
-- User specified no heading.<br />
return nil<br />
end<br />
end<br />
<br />
function p.makeStartBoxLinksData(args, env)<br />
--[[<br />
-- Does initial processing of data to make the [view] [edit] [history] [purge] links.<br />
-- @args - a table of arguments passed by the user<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
-- <br />
-- Messages:<br />
-- 'view-link-display' --> 'view'<br />
-- 'edit-link-display' --> 'edit'<br />
-- 'history-link-display' --> 'history'<br />
-- 'purge-link-display' --> 'purge'<br />
-- 'file-docpage-preload' --> 'Template:Documentation/preload-filespace'<br />
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'<br />
-- 'docpage-preload' --> 'Template:Documentation/preload'<br />
-- 'create-link-display' --> 'create'<br />
--]]<br />
local subjectSpace = env.subjectSpace<br />
local title = env.title<br />
local docTitle = env.docTitle<br />
if not title or not docTitle then<br />
return nil<br />
end<br />
if docTitle.isRedirect then <br />
docTitle = docTitle.redirectTarget<br />
end<br />
<br />
local data = {}<br />
data.title = title<br />
data.docTitle = docTitle<br />
-- View, display, edit, and purge links if /doc exists.<br />
data.viewLinkDisplay = message('view-link-display')<br />
data.editLinkDisplay = message('edit-link-display')<br />
data.historyLinkDisplay = message('history-link-display')<br />
data.purgeLinkDisplay = message('purge-link-display')<br />
-- Create link if /doc doesn't exist.<br />
local preload = args.preload<br />
if not preload then<br />
if subjectSpace == 6 then -- File namespace<br />
preload = message('file-docpage-preload')<br />
elseif subjectSpace == 828 then -- Module namespace<br />
preload = message('module-preload')<br />
else<br />
preload = message('docpage-preload')<br />
end<br />
end<br />
data.preload = preload<br />
data.createLinkDisplay = message('create-link-display')<br />
return data<br />
end<br />
<br />
function p.renderStartBoxLinks(data)<br />
--[[<br />
-- Generates the [view][edit][history][purge] or [create] links from the data table.<br />
-- @data - a table of data generated by p.makeStartBoxLinksData<br />
--]]<br />
<br />
local function escapeBrackets(s)<br />
-- Escapes square brackets with HTML entities.<br />
s = s:gsub('%[', '&#91;') -- Replace square brackets with HTML entities.<br />
s = s:gsub('%]', '&#93;')<br />
return s<br />
end<br />
<br />
local ret<br />
local docTitle = data.docTitle<br />
local title = data.title<br />
if docTitle.exists then<br />
local viewLink = makeWikilink(docTitle.prefixedText, data.viewLinkDisplay)<br />
local editLink = makeUrlLink(docTitle:fullUrl{action = 'edit'}, data.editLinkDisplay)<br />
local historyLink = makeUrlLink(docTitle:fullUrl{action = 'history'}, data.historyLinkDisplay)<br />
local purgeLink = makeUrlLink(title:fullUrl{action = 'purge'}, data.purgeLinkDisplay)<br />
ret = '[%s] [%s] [%s] [%s]'<br />
ret = escapeBrackets(ret)<br />
ret = mw.ustring.format(ret, viewLink, editLink, historyLink, purgeLink)<br />
else<br />
local createLink = makeUrlLink(docTitle:fullUrl{action = 'edit', preload = data.preload}, data.createLinkDisplay)<br />
ret = '[%s]'<br />
ret = escapeBrackets(ret)<br />
ret = mw.ustring.format(ret, createLink)<br />
end<br />
return ret<br />
end<br />
<br />
function p.makeStartBoxData(args, env, links)<br />
--[=[<br />
-- Does initial processing of data to pass to the start-box render function, p.renderStartBox.<br />
-- @args - a table of arguments passed by the user<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
-- @links - a string containing the [view][edit][history][purge] links - could be nil if there's an error.<br />
--<br />
-- Messages:<br />
-- 'documentation-icon-wikitext' --> '[[File:Template-info.png|50px|link=|alt=]]'<br />
-- 'template-namespace-heading' --> 'Template documentation'<br />
-- 'module-namespace-heading' --> 'Module documentation'<br />
-- 'file-namespace-heading' --> 'Summary'<br />
-- 'other-namespaces-heading' --> 'Documentation'<br />
-- 'start-box-linkclasses' --> 'mw-editsection-like plainlinks'<br />
-- 'start-box-link-id' --> 'doc_editlinks'<br />
-- 'testcases-create-link-display' --> 'create'<br />
--]=]<br />
local subjectSpace = env.subjectSpace<br />
if not subjectSpace then<br />
-- Default to an "other namespaces" namespace, so that we get at least some output<br />
-- if an error occurs.<br />
subjectSpace = 2<br />
end<br />
local data = {}<br />
<br />
-- Heading<br />
local heading = args.heading -- Blank values are not removed.<br />
if heading == '' then<br />
-- Don't display the start box if the heading arg is defined but blank.<br />
return nil<br />
end<br />
if heading then<br />
data.heading = heading<br />
elseif subjectSpace == 10 then -- Template namespace<br />
data.heading = message('documentation-icon-wikitext') .. ' ' .. message('template-namespace-heading')<br />
elseif subjectSpace == 828 then -- Module namespace<br />
data.heading = message('documentation-icon-wikitext') .. ' ' .. message('module-namespace-heading')<br />
elseif subjectSpace == 6 then -- File namespace<br />
data.heading = message('file-namespace-heading')<br />
else<br />
data.heading = message('other-namespaces-heading')<br />
end<br />
<br />
-- Heading CSS<br />
local headingStyle = args['heading-style']<br />
if headingStyle then<br />
data.headingStyleText = headingStyle<br />
elseif subjectSpace == 10 then<br />
-- We are in the template or template talk namespaces.<br />
data.headingFontWeight = 'bold'<br />
data.headingFontSize = '125%'<br />
else<br />
data.headingFontSize = '150%'<br />
end<br />
<br />
-- Data for the [view][edit][history][purge] or [create] links.<br />
if links then<br />
data.linksClass = message('start-box-linkclasses')<br />
data.linksId = message('start-box-link-id')<br />
data.links = links<br />
end<br />
<br />
return data<br />
end<br />
<br />
function p.renderStartBox(data)<br />
-- Renders the start box html.<br />
-- @data - a table of data generated by p.makeStartBoxData.<br />
local sbox = mw.html.create('div')<br />
sbox<br />
:css('padding-bottom', '3px')<br />
:css('border-bottom', '1px solid #aaa')<br />
:css('margin-bottom', '1ex')<br />
:newline()<br />
:tag('span')<br />
:cssText(data.headingStyleText)<br />
:css('font-weight', data.headingFontWeight)<br />
:css('font-size', data.headingFontSize)<br />
:wikitext(data.heading)<br />
local links = data.links<br />
if links then<br />
sbox:tag('span')<br />
:addClass(data.linksClass)<br />
:attr('id', data.linksId)<br />
:wikitext(links)<br />
end<br />
return tostring(sbox)<br />
end<br />
<br />
----------------------------------------------------------------------------<br />
-- Documentation content<br />
----------------------------------------------------------------------------<br />
<br />
p.content = makeInvokeFunc('_content')<br />
<br />
function p._content(args, env)<br />
-- Displays the documentation contents<br />
-- @args - a table of arguments passed by the user<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
env = env or p.getEnvironment(args)<br />
local docTitle = env.docTitle<br />
local content = args.content<br />
if not content and docTitle and docTitle.exists then<br />
content = args._content or mw.getCurrentFrame():expandTemplate{title = docTitle.prefixedText}<br />
end<br />
-- The line breaks below are necessary so that "=== Headings ===" at the start and end<br />
-- of docs are interpreted correctly.<br />
return '\n' .. (content or '') .. '\n' <br />
end<br />
<br />
p.contentTitle = makeInvokeFunc('_contentTitle')<br />
<br />
function p._contentTitle(args, env)<br />
env = env or p.getEnvironment(args)<br />
local docTitle = env.docTitle<br />
if not args.content and docTitle and docTitle.exists then<br />
return docTitle.prefixedText<br />
else<br />
return ''<br />
end<br />
end<br />
<br />
----------------------------------------------------------------------------<br />
-- End box<br />
----------------------------------------------------------------------------<br />
<br />
p.endBox = makeInvokeFunc('_endBox')<br />
<br />
function p._endBox(args, env)<br />
--[=[<br />
-- This function generates the end box (also known as the link box).<br />
-- @args - a table of arguments passed by the user<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
-- <br />
-- Messages:<br />
-- 'fmbox-id' --> 'documentation-meta-data'<br />
-- 'fmbox-style' --> 'background-color: #ecfcf4'<br />
-- 'fmbox-textstyle' --> 'font-style: italic'<br />
-- <br />
-- The HTML is generated by the {{fmbox}} template, courtesy of [[Module:Message box]].<br />
--]=]<br />
<br />
-- Get environment data.<br />
env = env or p.getEnvironment(args)<br />
local subjectSpace = env.subjectSpace<br />
local docTitle = env.docTitle<br />
if not subjectSpace or not docTitle then<br />
return nil<br />
end<br />
<br />
-- Check whether we should output the end box at all. Add the end<br />
-- box by default if the documentation exists or if we are in the<br />
-- user, module or template namespaces.<br />
local linkBox = args['link box']<br />
if linkBox == 'off'<br />
or not (<br />
docTitle.exists<br />
or subjectSpace == 2<br />
or subjectSpace == 828<br />
or subjectSpace == 10<br />
)<br />
then<br />
return nil<br />
end<br />
<br />
-- Assemble the arguments for {{fmbox}}.<br />
local fmargs = {}<br />
fmargs.id = message('fmbox-id') -- Sets 'documentation-meta-data'<br />
fmargs.image = 'none'<br />
fmargs.style = message('fmbox-style') -- Sets 'background-color: #ecfcf4'<br />
fmargs.textstyle = message('fmbox-textstyle') -- 'font-style: italic;'<br />
<br />
-- Assemble the fmbox text field.<br />
local text = ''<br />
if linkBox then<br />
text = text .. linkBox<br />
else<br />
text = text .. (p.makeDocPageBlurb(args, env) or '') -- "This documentation is transcluded from [[Foo]]." <br />
if subjectSpace == 2 or subjectSpace == 10 or subjectSpace == 828 then<br />
-- We are in the user, template or module namespaces.<br />
-- Add sandbox and testcases links.<br />
-- "Editors can experiment in this template's sandbox and testcases pages."<br />
text = text .. (p.makeExperimentBlurb(args, env) or '')<br />
text = text .. '<br />'<br />
if not args.content and not args[1] then<br />
-- "Please add categories to the /doc subpage."<br />
-- Don't show this message with inline docs or with an explicitly specified doc page,<br />
-- as then it is unclear where to add the categories.<br />
text = text .. (p.makeCategoriesBlurb(args, env) or '')<br />
end<br />
text = text .. ' ' .. (p.makeSubpagesBlurb(args, env) or '') --"Subpages of this template"<br />
local printBlurb = p.makePrintBlurb(args, env) -- Two-line blurb about print versions of templates.<br />
if printBlurb then<br />
text = text .. '<br />' .. printBlurb<br />
end<br />
end<br />
end<br />
fmargs.text = text<br />
<br />
return messageBox.main('fmbox', fmargs)<br />
end<br />
<br />
function p.makeDocPageBlurb(args, env)<br />
--[=[<br />
-- Makes the blurb "This documentation is transcluded from [[Template:Foo]] (edit, history)".<br />
-- @args - a table of arguments passed by the user<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
-- <br />
-- Messages:<br />
-- 'edit-link-display' --> 'edit'<br />
-- 'history-link-display' --> 'history'<br />
-- 'transcluded-from-blurb' --> <br />
-- 'The above [[Wikipedia:Template documentation|documentation]] <br />
-- is [[Wikipedia:Transclusion|transcluded]] from $1.'<br />
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'<br />
-- 'create-link-display' --> 'create'<br />
-- 'create-module-doc-blurb' --><br />
-- 'You might want to $1 a documentation page for this [[Wikipedia:Lua|Scribunto module]].'<br />
--]=]<br />
local docTitle = env.docTitle<br />
if not docTitle then<br />
return nil<br />
end<br />
local ret<br />
if docTitle.exists then<br />
-- /doc exists; link to it.<br />
local docLink = makeWikilink(docTitle.prefixedText)<br />
local editUrl = docTitle:fullUrl{action = 'edit'}<br />
local editDisplay = message('edit-link-display')<br />
local editLink = makeUrlLink(editUrl, editDisplay)<br />
local historyUrl = docTitle:fullUrl{action = 'history'}<br />
local historyDisplay = message('history-link-display')<br />
local historyLink = makeUrlLink(historyUrl, historyDisplay)<br />
ret = message('transcluded-from-blurb', {docLink})<br />
.. ' '<br />
.. makeToolbar(editLink, historyLink)<br />
.. '<br />'<br />
elseif env.subjectSpace == 828 then<br />
-- /doc does not exist; ask to create it.<br />
local createUrl = docTitle:fullUrl{action = 'edit', preload = message('module-preload')}<br />
local createDisplay = message('create-link-display')<br />
local createLink = makeUrlLink(createUrl, createDisplay)<br />
ret = message('create-module-doc-blurb', {createLink})<br />
.. '<br />'<br />
end<br />
return ret<br />
end<br />
<br />
function p.makeExperimentBlurb(args, env)<br />
--[[<br />
-- Renders the text "Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages."<br />
-- @args - a table of arguments passed by the user<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
-- <br />
-- Messages:<br />
-- 'sandbox-link-display' --> 'sandbox'<br />
-- 'sandbox-edit-link-display' --> 'edit'<br />
-- 'compare-link-display' --> 'diff'<br />
-- 'module-sandbox-preload' --> 'Template:Documentation/preload-module-sandbox'<br />
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'<br />
-- 'sandbox-create-link-display' --> 'create'<br />
-- 'mirror-edit-summary' --> 'Create sandbox version of $1'<br />
-- 'mirror-link-display' --> 'mirror'<br />
-- 'mirror-link-preload' --> 'Template:Documentation/mirror'<br />
-- 'sandbox-link-display' --> 'sandbox'<br />
-- 'testcases-link-display' --> 'testcases'<br />
-- 'testcases-edit-link-display'--> 'edit'<br />
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'<br />
-- 'testcases-create-link-display' --> 'create'<br />
-- 'testcases-link-display' --> 'testcases'<br />
-- 'testcases-edit-link-display' --> 'edit'<br />
-- 'module-testcases-preload' --> 'Template:Documentation/preload-module-testcases'<br />
-- 'template-testcases-preload' --> 'Template:Documentation/preload-testcases'<br />
-- 'experiment-blurb-module' --> 'Editors can experiment in this module's $1 and $2 pages.'<br />
-- 'experiment-blurb-template' --> 'Editors can experiment in this template's $1 and $2 pages.'<br />
--]]<br />
local subjectSpace = env.subjectSpace<br />
local templateTitle = env.templateTitle<br />
local sandboxTitle = env.sandboxTitle<br />
local testcasesTitle = env.testcasesTitle<br />
local templatePage = templateTitle.prefixedText<br />
if not subjectSpace or not templateTitle or not sandboxTitle or not testcasesTitle then<br />
return nil<br />
end<br />
-- Make links.<br />
local sandboxLinks, testcasesLinks<br />
if sandboxTitle.exists then<br />
local sandboxPage = sandboxTitle.prefixedText<br />
local sandboxDisplay = message('sandbox-link-display')<br />
local sandboxLink = makeWikilink(sandboxPage, sandboxDisplay)<br />
local sandboxEditUrl = sandboxTitle:fullUrl{action = 'edit'}<br />
local sandboxEditDisplay = message('sandbox-edit-link-display')<br />
local sandboxEditLink = makeUrlLink(sandboxEditUrl, sandboxEditDisplay)<br />
local compareUrl = env.compareUrl<br />
local compareLink<br />
if compareUrl then<br />
local compareDisplay = message('compare-link-display')<br />
compareLink = makeUrlLink(compareUrl, compareDisplay)<br />
end<br />
sandboxLinks = sandboxLink .. ' ' .. makeToolbar(sandboxEditLink, compareLink)<br />
else<br />
local sandboxPreload<br />
if subjectSpace == 828 then<br />
sandboxPreload = message('module-sandbox-preload')<br />
else<br />
sandboxPreload = message('template-sandbox-preload')<br />
end<br />
local sandboxCreateUrl = sandboxTitle:fullUrl{action = 'edit', preload = sandboxPreload}<br />
local sandboxCreateDisplay = message('sandbox-create-link-display')<br />
local sandboxCreateLink = makeUrlLink(sandboxCreateUrl, sandboxCreateDisplay)<br />
local mirrorSummary = message('mirror-edit-summary', {makeWikilink(templatePage)})<br />
local mirrorPreload = message('mirror-link-preload')<br />
local mirrorUrl = sandboxTitle:fullUrl{action = 'edit', preload = mirrorPreload, summary = mirrorSummary}<br />
if subjectSpace == 828 then<br />
mirrorUrl = sandboxTitle:fullUrl{action = 'edit', preload = templateTitle.prefixedText, summary = mirrorSummary}<br />
end<br />
local mirrorDisplay = message('mirror-link-display')<br />
local mirrorLink = makeUrlLink(mirrorUrl, mirrorDisplay)<br />
sandboxLinks = message('sandbox-link-display') .. ' ' .. makeToolbar(sandboxCreateLink, mirrorLink)<br />
end<br />
if testcasesTitle.exists then<br />
local testcasesPage = testcasesTitle.prefixedText<br />
local testcasesDisplay = message('testcases-link-display')<br />
local testcasesLink = makeWikilink(testcasesPage, testcasesDisplay)<br />
local testcasesEditUrl = testcasesTitle:fullUrl{action = 'edit'}<br />
local testcasesEditDisplay = message('testcases-edit-link-display')<br />
local testcasesEditLink = makeUrlLink(testcasesEditUrl, testcasesEditDisplay)<br />
-- for Modules, add testcases run link if exists<br />
if testcasesTitle.contentModel == "Scribunto" and testcasesTitle.talkPageTitle and testcasesTitle.talkPageTitle.exists then<br />
local testcasesRunLinkDisplay = message('testcases-run-link-display')<br />
local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay)<br />
testcasesLinks = testcasesLink .. ' ' .. makeToolbar(testcasesEditLink, testcasesRunLink)<br />
else<br />
testcasesLinks = testcasesLink .. ' ' .. makeToolbar(testcasesEditLink)<br />
end<br />
else<br />
local testcasesPreload<br />
if subjectSpace == 828 then<br />
testcasesPreload = message('module-testcases-preload')<br />
else<br />
testcasesPreload = message('template-testcases-preload')<br />
end<br />
local testcasesCreateUrl = testcasesTitle:fullUrl{action = 'edit', preload = testcasesPreload}<br />
local testcasesCreateDisplay = message('testcases-create-link-display')<br />
local testcasesCreateLink = makeUrlLink(testcasesCreateUrl, testcasesCreateDisplay)<br />
testcasesLinks = message('testcases-link-display') .. ' ' .. makeToolbar(testcasesCreateLink)<br />
end<br />
local messageName<br />
if subjectSpace == 828 then<br />
messageName = 'experiment-blurb-module'<br />
else<br />
messageName = 'experiment-blurb-template'<br />
end<br />
return message(messageName, {sandboxLinks, testcasesLinks})<br />
end<br />
<br />
function p.makeCategoriesBlurb(args, env)<br />
--[[<br />
-- Generates the text "Please add categories to the /doc subpage."<br />
-- @args - a table of arguments passed by the user<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
-- Messages:<br />
-- 'doc-link-display' --> '/doc'<br />
-- 'add-categories-blurb' --> 'Please add categories to the $1 subpage.'<br />
--]]<br />
local docTitle = env.docTitle<br />
if not docTitle then<br />
return nil<br />
end<br />
local docPathLink = makeWikilink(docTitle.prefixedText, message('doc-link-display'))<br />
return message('add-categories-blurb', {docPathLink})<br />
end<br />
<br />
function p.makeSubpagesBlurb(args, env)<br />
--[[<br />
-- Generates the "Subpages of this template" link.<br />
-- @args - a table of arguments passed by the user<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
<br />
-- Messages:<br />
-- 'template-pagetype' --> 'template'<br />
-- 'module-pagetype' --> 'module'<br />
-- 'default-pagetype' --> 'page'<br />
-- 'subpages-link-display' --> 'Subpages of this $1'<br />
--]]<br />
local subjectSpace = env.subjectSpace<br />
local templateTitle = env.templateTitle<br />
if not subjectSpace or not templateTitle then<br />
return nil<br />
end<br />
local pagetype<br />
if subjectSpace == 10 then<br />
pagetype = message('template-pagetype')<br />
elseif subjectSpace == 828 then<br />
pagetype = message('module-pagetype')<br />
else<br />
pagetype = message('default-pagetype')<br />
end<br />
local subpagesLink = makeWikilink(<br />
'Special:PrefixIndex/' .. templateTitle.prefixedText .. '/',<br />
message('subpages-link-display', {pagetype})<br />
)<br />
return message('subpages-blurb', {subpagesLink})<br />
end<br />
<br />
function p.makePrintBlurb(args, env)<br />
--[=[<br />
-- Generates the blurb displayed when there is a print version of the template available.<br />
-- @args - a table of arguments passed by the user<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
--<br />
-- Messages:<br />
-- 'print-link-display' --> '/Print'<br />
-- 'print-blurb' --> 'A [[Help:Books/for experts#Improving the book layout|print version]]'<br />
-- .. ' of this template exists at $1.'<br />
-- .. ' If you make a change to this template, please update the print version as well.'<br />
-- 'display-print-category' --> true<br />
-- 'print-category' --> 'Templates with print versions'<br />
--]=]<br />
local printTitle = env.printTitle<br />
if not printTitle then<br />
return nil<br />
end<br />
local ret<br />
if printTitle.exists then<br />
local printLink = makeWikilink(printTitle.prefixedText, message('print-link-display'))<br />
ret = message('print-blurb', {printLink})<br />
local displayPrintCategory = message('display-print-category', nil, 'boolean')<br />
if displayPrintCategory then<br />
ret = ret .. makeCategoryLink(message('print-category'))<br />
end<br />
end<br />
return ret<br />
end<br />
<br />
----------------------------------------------------------------------------<br />
-- Tracking categories<br />
----------------------------------------------------------------------------<br />
<br />
function p.addTrackingCategories(env)<br />
--[[<br />
-- Check if {{documentation}} is transcluded on a /doc or /testcases page.<br />
-- @env - environment table containing title objects, etc., generated with p.getEnvironment<br />
<br />
-- Messages:<br />
-- 'display-strange-usage-category' --> true<br />
-- 'doc-subpage' --> 'doc'<br />
-- 'testcases-subpage' --> 'testcases'<br />
-- 'strange-usage-category' --> 'Wikipedia pages with strange ((documentation)) usage'<br />
-- <br />
-- /testcases pages in the module namespace are not categorised, as they may have<br />
-- {{documentation}} transcluded automatically.<br />
--]]<br />
local title = env.title<br />
local subjectSpace = env.subjectSpace<br />
if not title or not subjectSpace then<br />
return nil<br />
end<br />
local subpage = title.subpageText<br />
local ret = ''<br />
if message('display-strange-usage-category', nil, 'boolean')<br />
and (<br />
subpage == message('doc-subpage')<br />
or subjectSpace ~= 828 and subpage == message('testcases-subpage')<br />
)<br />
then<br />
ret = ret .. makeCategoryLink(message('strange-usage-category'))<br />
end<br />
return ret<br />
end<br />
<br />
return p</div>New visitorhttps://en.touhouwiki.net/index.php?title=THCB&diff=412679THCB2020-01-19T11:34:48Z<p>New visitor: Redirected page to Touhou Cannonball</p>
<hr />
<div>#REDIRECT [[Touhou Cannonball]]</div>New visitorhttps://en.touhouwiki.net/index.php?title=Hisoutensoku&diff=412384Hisoutensoku2020-01-05T13:35:19Z<p>New visitor: zh wiki link</p>
<hr />
<div>:''For the Touhou Game (TH 12.3), see [[Touhou Hisoutensoku]]''<br />
{{Infobox Character <br />
| nameJp = {{ruby-ja|非想天則|ひそうてんそく}}<br />
| nameEn = Hisoutensoku<br />
| nameIPA = çi̥soːtẽsokɯ [[Media:Pronunciation_Hisoutensoku.ogg|(♫)]]<br />
| image = [[File:SokuOSTHisoutensoku.png|Hisoutensoku]]<br />
| caption = Hisoutensoku on the [[Touhou Hisoutensoku OST]] cover<br />
| species = Attraction<br />
| abilities = <br />
| occupation = Advertising<br />
| location = [[Heaven]]<br />
| relationships = *[[Utsuho Reiuji]] (Activator)<br />
*[[Suwako Moriya]] (Empowerer)<br />
*[[Kanako Yasaka]] (Empowerer)<br />
| appOfficialgames = *[[Touhou Hisoutensoku]] (Title screen, Cirno's Ending, Sanae's Ending)<br />
| appMusicCDs = *[[Touhou Hisoutensoku OST]] (CD cover)<br />
}}<br />
{{nihongo|'''Hisoutensoku'''|非想天則}} was an unknown huge object seen roaming around the [[Misty Lake]] in the events of [[Touhou Hisoutensoku|the game of the same name]]. It was spotted by numbers of characters before it mysteriously vanished, being mistaken variously for a [[wikipedia:Brocken spectre|Brocken spectre]], a [[Wikipedia:Giant robot (science fiction)|giant robot]], a [[Daidarabotchi]], and [[Taisui Xingjun]]. In fact, Hisoutensoku was a nuclear reactor-powered attraction created by the [[kappa]] to advertise their upcoming {{nihongo|"Future Water Youkai Bazaar"|未来水妖バザー|mirai suiyou bazaa}}.<br />
<br />
==Character Design==<br />
===Origin===<br />
The design of Hisoutensoku resembles that of [[Wikipedia:Gakutensoku|Gakutensoku]] ({{lang|ja|学天則}} "learning from natural law") at many points: Both of them are big, robotic humanoids, are made for a happy purpose, move pneumatically (the former by compressed air, the latter by steam), appear to be smiling, and grip something in their hands. The last point of similarity might be especially important.<br />
<br />
Gakutensoku held Reikantou ({{lang|ja|霊感灯}}, "Light of Inspiration") in his left hand and a quill resembling a [[Wikipedia:Signal arrow|kabura ya]] in his right hand. Hisoutensoku holds a [[Wikipedia:Morning star (weapon)|morning star]] similar to Reikantou. This tells us that Gakutensoku uses a weapon effectively or thinks through writing, while Hisoutensoku only grasps it for ornamentation or never thinks through it. <ref>{{cite web|url=http://www.sci-museum.jp/server_sci/promot/press_p.html|title=東洋初のロボット「学天則(がくてんそく)」の復元作業が終了 ー4月24日(木)に報道関係者向け内見会を行いますー|language=ja|accessdate=2011-10-29}}</ref> [[File:HisouTensokuGiant.png|frame|left|Hisoutensoku's shadow on the title screen of [[Touhou Hisoutensoku]].]]<br />
<br />
===Design===<br />
Seen in ''[[Touhou Hisoutensoku]]'' endings, Hisoutensoku is a giant [[Robot|robotic]]-looking humanoid covered in gold with a red chest and pointed red wings. It has blue eyes (pink on the cover of ''[[Touhou Hisoutensoku OST|Touhou Hisoutensoku ORIGINAL SOUND TRACK]]''), spikes emerging from the sides of its head, and a spherical "hat" with slightly-curved lines going around it. It holds a [[Wikipedia:Morning star (weapon)|morning star]] and its facial expression never changes.<br />
<br />
==Story==<br />
;Touhou Hisoutensoku<br />
:{{main|Touhou Hisoutensoku/Story|l1=Touhou Hisoutensoku Story}}<br />
Excitedly floating along the banks of the Misty Lake, the ice fairy [[Cirno]] believes it to be a mythical giant [[youkai]] called a [[Daidarabotchi]]. If that's true, Cirno thinks, and if she can "tame" it, then she won't ever have to fear anything again.<br />
<br />
The [[shrine maiden]] [[Sanae Kochiya]] isn't sure what to think of the giant shape she sees moving in the distance. The best she can come up with is that it might be a giant robot, like those she's seen in anime or manga, and sets off towards the lake to investigate.<br />
<br />
[[Hong Meiling]], Chief of Security and Gatekeeper of the [[Scarlet Devil Mansion]], sees the giant shape from the roof of the manor and anxiously wonders if the tales she'd heard about a God of Cataclysm from the [[Wikipedia:Mainland China|mainland]], "[[Taisui Xingjun]]", might be coming true. Meiling realizes that if it is indeed Taisui Xingjun, then [[Gensokyo]] will soon be attacked by countless minions of the wrathful deity, bringing with them all manner of catastrophes and natural disasters. Determined to spread the alarm, Meiling rushes into the [[:File:SDM-LibraryNight.jpg|library]] to warn Lady [[Patchouli Knowledge|Patchouli]].<br />
{{Endspoiler}}<br />
<br />
==Gallery==<br />
<gallery><br />
File:Touhou_Hisoutensoku.01.JPG|Original Soundtrack Covers with Hisoutensoku<br />
File:Touhou_Hisoutensoku.02.JPG|OST Covers with Hisoutensoku<br />
File:Touhou_Hisoutensoku.03.jpg|Hisou Tensoku action figure design (th12.3 OST)<br />
File:Touhou_Hisoutensoku.04.jpg|Hisou Tensoku 4-koma (from th12.3 OST)<br />
</gallery><br />
<br />
==Additional Information==<br />
*Some of the symbols written on Gakutensoku's pedestal coincide with some Touhou characters: The sun is at the center, which indicates a [[Wikipedia:Yatagarasu|yatagarasu]] as the core, and a frog and snake are on the right side on it. The yatagarasu probably originally pointed to Tennou, and the frog and snake were there as typical animals. From the Touhou perspective, however, the setting of Hisoutensoku takes it to mean that Utsuho activates it and Suwako and Kanako empower her.<br />
*Hisoutensoku is one of the few characters in the entire series to have appeared in a game without ever having been a playable character or a boss character, presumably due to Hisoutensoku not having an independent mind (being an advertisement attraction) or its immense size.<br />
*Hisoutensoku is similar in appearance to [[wikipedia:Mazinger Z|Mazinger Z]] (the first "[[wikipedia:Super Robot|Super Robot]]"), particularly while the latter is equipped with its "Scrander" wings. [[Touhou_Hisoutensoku/Music#Notes|Some of the songs in its game are also named in the style of old-school Super Robot anime]].<br />
*The title of the ''[[Touhou Hisoutensoku OST]]'', {{nihongo|"Thermonuclear Titan Hisoutensoku"|核熱造神ヒソウテンソク|Kakunetsuzoushin Hisoutensoku}}, spells Hisoutensoku's name in katakana rather than kanji. This spelling is also seen on concept art included with the CD.<br />
<br />
==Fandom==<br />
{{main|Fandom/Spin-offs#Hisoutensoku|l1=Fandom: Hisoutensoku}}<br />
<br />
==Official Sources==<br />
{{hidden begin|title = Official sources|titlestyle = background:pink; text-align:center;}}<br />
*2009/08/15 - '''[[Touhou Hisoutensoku]]''' - Title screen; Cirno's scenario; Sanae's scenario; Meiling's scenario<br />
*2009/12/30 - '''[[Touhou Hisoutensoku OST]]''' - Cover<br />
{{hidden end}}<br />
<br />
==References==<br />
<references /><br />
<br />
{{Project Characters Notice}}<br />
{{Navbox Characters}}<br />
{{Navbox HSTS}}<br />
<br />
[[Category:Characters]]<br />
[[Category:Non-humanoid Characters]]<br />
[[Category:Touhou Hisoutensoku]]<br />
[[nl:Hisoutensoku]]<br />
[[pl:Hisoutensoku]]<br />
[[ru:Хисотенсоку]]<br />
[[zh:非想天则]]</div>New visitorhttps://en.touhouwiki.net/index.php?title=Fantastic_Danmaku_Festival_Part_II&diff=412049Fantastic Danmaku Festival Part II2019-12-21T02:42:24Z<p>New visitor: developer in infobox</p>
<hr />
<div>{{Infobox Game<br />
| type = fangame<br />
| titleN = 東方幕華祭春雪篇 ~ Fantastic Danmaku Festival Part II<br />
| lang = zh-cn<br />
| titleEn = Fantastic Danmaku Festival Part II<br />
| image = [[File:FDF2_Cover.jpg|256px|Fantastic Danmaku Festival Part II]]<br />
| developer1 = 东方幕华祭制作组<br />
| publisher1 = <br />
| publisher1Cat = <br />
| released = v1.00: 18 March 2019<br/> v1.01: 23 March 2019<br/> v1.02: 4 August 2019<br />
| website = [https://twitter.com/thmhjofficial Twitter]<br />
| genre1 = Vertical Danmaku Shooting<br />
| gameplay = Single-Player Story Mode<br />
| platforms = [[Windows]] [[wikipedia:Windows 7|7]]/[[wikipedia:Windows 8|8]]/[[wikipedia:Windows 8.1|8.1]]/[[wikipedia:Windows 10|10]]<br />
}}{{stub}}<br />
{{nihongo||{{lang|zh-cn|東方幕華祭春雪篇~}} Fantastic Danmaku Festival Part II|'''Dōngfāng Mùhuàjì Chūnxuěpiān ~ Fantastic Danmaku Festival Part II'''|lit. "''Eastern Curtain Fire Festival Spring Snow Record''"}} is a Chinese ''[[Touhou Project]]'' [[Fangames|fangame]] made by {{nihongo||{{lang|zh-cn|东方幕华祭制作组}}|Dōngfang Mùhuájì Zhìzuòzǔ|Orient Curtain Fire Festival Production Team}}. It is a direct sequel to ''[[Fantastic Danmaku Festival]]'' and features a story based on ''[[Perfect Cherry Blossom]]'', albeit with some changes.<br />
<br />
==Gameplay==<br />
{{Main|/Gameplay|l1=Gameplay|/Strategy|l2=Strategy|/Spell Cards|l3=Spell Cards}}<br />
''Fantastic Danmaku Festival Part II'' issues 4 playable characters: [[Reimu Hakurei]], [[Marisa Kirisame]], [[Sanae Kochiya]] and [[Youmu Konpaku]].<br />
<br />
==Story==<br />
{{Main|/Translation|l1=Translation|/Characters|l2=Characters}}<br />
<br />
==Music==<br />
{{Main|/Music|l1=Music}}<br />
<br />
==External Links==<br />
*[https://www.twitter.com/thmhjofficial Developer's Twitter]<br />
*[https://store.steampowered.com/app/1031480 Steam Page]<br />
*[https://weibo.com/starxgame Developer's Weibo]<br />
{{Navbox FDF2}}<br />
{{Navbox Fangames}}<br />
<br />
[[Category: Fantastic Danmaku Festival Part II]]</div>New visitor