User:RiceEmpress: Difference between revisions
RiceEmpress (talk | contribs) mNo edit summary |
RiceEmpress (talk | contribs) mNo edit summary |
||
Line 1: | Line 1: | ||
{{SL Story Gallery | {|class="sl-chapter-table" width="100%" | ||
!align="center"|Chapter | |||
!align="center"|Song | |||
!align="center"|Level Requirements | |||
{| class="sl-chapter-table" width="100%" | |||
! align="center" |Chapter | |||
! align="center" |Characters | |||
! align="center" |Song | |||
! align="center" |Level Requirements | |||
|- | |||
| align="center" |[[NOISZ STΔRLIVHT/Story/Chapter 0.I|Chapter 0.I]] | |||
| align="center" |{{SL Story Gallery|spacerheight=0px|width=40px | |||
|char1=Grace Kamenashi | |char1=Grace Kamenashi | ||
|char2=Sera Hoshikawa | |char2=Beyond (NOISZ STΔRLIVHT) | ||
|char3= | |char3=Sera Hoshikawa | ||
| | |char4=??? | ||
{{SL Story Gallery | |link4= | ||
|char5=Producer | |||
|char6=Hakuno Nekoda | |||
|char7=Sumire Hitori}} | |||
| align="center" |[[First Star]]<nowiki>*</nowiki> | |||
| align="center" |{{SL Level Requirements|gracelv=1|seralv=1|sumirelv=1|hakunolv=1}} | |||
|- | |||
| align="center" |[[NOISZ STΔRLIVHT/Story/Chapter 0.II|Chapter 0.II]] | |||
| align="center" |{{SL Story Gallery|spacerheight=10px|width=40px | |||
|char1=Producer | |||
|char2=Asuka Fujita | |||
|char3=Sumire Hitori | |||
|char4=Hikari Aoki | |||
|char5=Grace Kamenashi | |||
|char6=Sera Hoshikawa | |||
|char7=Hakuno Nekoda | |||
|char8=Beyond (NOISZ STΔRLIVHT)}} | |||
| | |||
| align="center" |{{SL Level Requirements|gracelv=1|seralv=1|sumirelv=1|hakunolv=1}} | |||
|- | |||
| align="center" |[[NOISZ STΔRLIVHT/Story/Chapter 0.III|Chapter 0.III]] | |||
| align="center" |{{SL Story Gallery|spacerheight=0px|width=40px | |||
|char1=Grace Kamenashi | |char1=Grace Kamenashi | ||
|char2=Sera Hoshikawa | |char2=Sera Hoshikawa | ||
| | |char3=Lily Kamenashi | ||
|char4=Touma | |||
|char5=Producer | |||
| | |char6=Beyond (NOISZ STΔRLIVHT) | ||
| | |||
| | |||
}} | }} | ||
| | | | ||
| align="center" |{{SL Level Requirements|gracelv=1|seralv=1|sumirelv=1|hakunolv=1}} | |||
{{ | |- | ||
| | | align="center" |[[NOISZ STΔRLIVHT/Story/Chapter 0.IV|Chapter 0.IV]] | ||
| align="center" |{{SL Story Gallery|spacerheight=0px|width=40px | |||
|char4=Grace Kamenashi | |||
|char3=Sera Hoshikawa | |||
|char5=Sumire Hitori | |||
|char2=Hakuno Nekoda | |||
|char1=Producer | |||
|char6=??? | |||
|link6= | |||
|char7=Beyond (NOISZ STΔRLIVHT) | |||
}} | }} | ||
| | |||
| align="center" |{{SL Level Requirements|gracelv=1|seralv=1|sumirelv=1|hakunolv=1}} | |||
|} | |||
<nowiki>*</nowiki>Used as the song present in the tutorial. Not unlocked for Free Play after chapter completion. | |||
{{Template:Bluesky RSS Feed|url=https://bsky.app/profile/did:plc:ve2p3lz33ivtyikqztvsgtx3/rss|term1=#PK_GODHAND|term2=GOD HAND}} | {{Template:Bluesky RSS Feed|url=https://bsky.app/profile/did:plc:ve2p3lz33ivtyikqztvsgtx3/rss|term1=#PK_GODHAND|term2=GOD HAND}} |
Revision as of 05:34, 23 June 2025
Chapter | Song | Level Requirements
*Used as the song present in the tutorial. Not unlocked for Free Play after chapter completion. 12 Jul 2025 17:06 +0000 GALACTIC EXPEDITION will be 20% off as a launch discount, so don't miss out! #PK_GODHAND
Playing CoURSE CHALLENGE with extremely high GHZ values is not advised, but you can try it...? #PK_GODHAND
Both will be added as free unlocks to CORE APPEND! #PK_GODHAND
Adjust the CoURSE difficulty by setting your GHZ rating--brave greater horrors for a slightly better prize! #PK_GODHAND [contains quote post or other embedded content]
(Please note that when this sale ends, the base price will also increase.) https://store.steampowered.com/app/2978440/PROJEKT_GODHAND/
Two new songs will also be added to CORE APPEND! Keep an eye out for more details soon... #PK_GODHAND
HI i'm ruby! this is my testbed Event CycleThe countdown timers are all based on the countdown clock extension for Fandom. A typical template for the countdowns looks something like: {{NOISZ SL Recursive Events|cyclestart=2023-03-15 04:00 +0000}} Where cyclestart is a variable determining the beginning of an 8-week cycle. The widgets use this 8-week cycle to determine what events are currently running - or rather, how far it is into an 8-week cycle. Synthetic and Recursive events currently run on the same clock. If you look at the NOISZ SL Recursive Events, it may look daunting, but a lot of it is just text operations; the only variable here is the currenly running, event, seen in things such as {{CurrentNoiszSLEvent|cyclestart={{{cyclestart|}}}}}, {{EventCountdown|eventstyle=Nuclear Drip|cyclestart={{{cyclestart|}}}|countdown=True}} and {{EventTimeLeft|cyclestart={{{cyclestart|}}}}}. Note that {{{cyclestart|}}} sets a variable within the template, and whatever goes after the pipe at the end is set as the default for that variable if nothing is entered. CurrentNoiszSLEvent uses that 8-week cycle to determine what events are running. EventCountdown uses the Countdown widget until a certain mark in that 8-week timer, and EventTimeLeft does the same, but for a mark 2 weeks after that. If you look at CurrentNoiszSLEvent, it uses a case/switch statement depending on EventCycleTime, which returns how many seconds we are into an 8-week cycle. EventCycleTime is simply: {{#expr:({{#time:U|now}} -{{#time:U|{{{cyclestart|2023-04-01 04:00 +0000}}}}})mod4838400}} ie, it looks at the time between now and any past date set as the beginning of a cycle, which is defined as the moment Recursive Event 01 goes live. It uses mod4838400 to divide that time elapsed by the total number of seconds in an 8-week cycle, and returns the remainder, which is how many seconds we are. To recap, it does that, and CurrentNoiszSLEvent uses that time to determine where in an 8-week cycle we are in seconds; if we are less than 1209600 seconds into a cycle, which is two weeks, it determines the currently running Recursive Event is Attitude Mint. If it's more than that, the case switch moves onto the next statement, and so, if we're more than 1209600 seconds but less than 2419200 (4 weeks) in, then the current event is Blue Moon, and so on. Countdown ClocksEventTimeLeftEventTimeLeftUnix: {{#expr:1209600 - {{EventCycleTime|cyclestart={{{cyclestart|}}}}}mod1209600}}
EventTimeLeft is the countdown clock itself, and is: <includeonly><span class="countdown" data-end="stop" data-callback="myFunction" data-options="short-format" style="display:none;">Ends: <span class="countdowndate">{{#time:r|@{{#expr:{{EventTimeLeftUnix|cyclestart={{{cyclestart}}}}} + {{#time:U|now}}}}}}</span></span> The time it's counting down to is {{#time:r|@{{#expr:{{EventTimeLeftUnix|cyclestart={{{cyclestart}}}}} + {{#time:U|now}}}}}}, which adds the seconds left in the 2-week cycle that is a single event to the current time, and then counts down to it. EventCountdownEventTimeCountdownUnix looks at where we are in the 8-week cycle and accordingly counts down to the next 2-week marker using a case/switch. The "if time > 0" condition in there is to deal with the possibility that a date in the future was set to determine the 8-week cycle.
Where the time it counts down to is: {{#time:F d, Y H:i T|@{{#expr:{{EventTimeCountdownUnix|cyclestart={{{cyclestart|}}}|eventstyle={{{eventstyle|Attitude Mint}}}}} + {{#time:U|now}}}}}} This adds the time left until the next two-week marker to now, and tells the clock to count down to it. If nothing is defined, it decides the next style will be Attitude Mint. Countdown clock endIf you look at the dev.fandom.com link above, you can see that a countdown clock ends many ways. One problem with the clocks currently is that the wiki does not update its own internal clock until something forces it to wake up, usually in the form of an edit or a null edit. Once an event ends, the event cycle doesn't update until null edits are made to the relevant pages, forcing it to recalculate everything. If you look at the clocks' codes, you can see the "data-callback"; this calls the relevant Javascript function defined by this variable. The function is defined in MediaWiki/Common.js. EventCountdown is where it's properly used; you can see it uses the "selfNullEdit" defined in common.js, where the function finds the element with id "ca-null-edit" - the Null Edit Button - and clicks it using jQuery. corn chip |
---|