<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.3dbrew.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=RandoMan1232</id>
	<title>3dbrew - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.3dbrew.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=RandoMan1232"/>
	<link rel="alternate" type="text/html" href="https://www.3dbrew.org/wiki/Special:Contributions/RandoMan1232"/>
	<updated>2026-04-14T23:49:46Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=Nintendo_Badge_Arcade&amp;diff=22588</id>
		<title>Nintendo Badge Arcade</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=Nintendo_Badge_Arcade&amp;diff=22588"/>
		<updated>2024-07-07T18:46:42Z</updated>

		<summary type="html">&lt;p&gt;RandoMan1232: /* layout */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Nintendo Badge Arcade&#039;&#039;&#039; is an application that allows getting badges for the 3DS&#039;s [[Home Menu]] via a claw machine-like game.&lt;br /&gt;
&lt;br /&gt;
== [[SpotPass]] usage ==&lt;br /&gt;
The game can use four different URLs to retrieve game data.&lt;br /&gt;
* &amp;lt;nowiki&amp;gt;https://npdl.cdn.nintendowifi.net/p01/nsa/&amp;lt;regionID&amp;gt;/FGONLYT/playinfo_&amp;lt;gameVersion&amp;gt;.dat&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* &amp;lt;nowiki&amp;gt;https://npdl.cdn.nintendowifi.net/p01/nsa/&amp;lt;regionID&amp;gt;/data/data_&amp;lt;gameVersion&amp;gt;.dat&amp;lt;/nowiki&amp;gt; This file is a SARC archive with all game data (like machines and [[Miiverse]] posts) that is available within a period of one week. This data is updated every Friday at 1:40 AM GMT&lt;br /&gt;
* &amp;lt;nowiki&amp;gt;https://npdl.cdn.nintendowifi.net/p01/nsa/&amp;lt;regionID&amp;gt;/data/allbadge_&amp;lt;gameVersion&amp;gt;.dat&amp;lt;/nowiki&amp;gt; This has a SARC archive with all game badges and machines for the game.&lt;br /&gt;
* &amp;lt;nowiki&amp;gt;https://npdl.cdn.nintendowifi.net/p01/nsa/&amp;lt;regionID&amp;gt;/news/&amp;lt;language&amp;gt;/news_&amp;lt;gameVersion&amp;gt;.dat&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Where gameVersion goes the version of the game, which can be v130 or v131, langcode is the two-character language codes from [[Config Savegame#Languages|config]], and regionID is from the below table.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Region&lt;br /&gt;
! ID&lt;br /&gt;
|-&lt;br /&gt;
| JPN&lt;br /&gt;
| j0ITmVqVgfUxe0O9&lt;br /&gt;
|-&lt;br /&gt;
| USA&lt;br /&gt;
| OvbmGLZ9senvgV3K&lt;br /&gt;
|-&lt;br /&gt;
| EUR&lt;br /&gt;
| J6la9Kj8iqTvAPOq&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== RomFS ==&lt;br /&gt;
Inside the romfs data, we can find the following folders:&lt;br /&gt;
&lt;br /&gt;
 root&lt;br /&gt;
 ├── message&lt;br /&gt;
 ├── primitive_renderer&lt;br /&gt;
 ├── region_common&lt;br /&gt;
 └── region_XXX&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;message&amp;quot; has all in-game dialogues&lt;br /&gt;
* &amp;quot;region_common&amp;quot; has a similar scheme to data.dat, but has all in-game assets&lt;br /&gt;
* &amp;quot;region_XXX&amp;quot; is similar as region_common, but has all region specific files, like the first badge machine. Where XXX goes the region name (EUR, JPN, USA)&lt;br /&gt;
&lt;br /&gt;
=== message ===&lt;br /&gt;
The message folder has the following structure:&lt;br /&gt;
&lt;br /&gt;
 message&lt;br /&gt;
 ├── boss_EUR&lt;br /&gt;
     └─ XXxx&lt;br /&gt;
 ├── boss_JPN&lt;br /&gt;
     └─ XXxx&lt;br /&gt;
 ├── boss_USA&lt;br /&gt;
     └─ XXxx&lt;br /&gt;
 └── rom&lt;br /&gt;
     └─ XXxx&lt;br /&gt;
&lt;br /&gt;
Where XX goes the region and xx belongs to the language. The dialogues are stored within SARC files.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;boss&#039;&#039; folders store the default online-related game dialogues. The &#039;&#039;rom&#039;&#039; folder has the gameplay and error dialogues. The &#039;&#039;boss&#039;&#039; dialogues can be overridden when they are providen by SpotPass.&lt;br /&gt;
&lt;br /&gt;
Dialogue is formatted with [[Nintendo_Badge_Arcade/Format_Tags|Format Tags]].&lt;br /&gt;
&lt;br /&gt;
=== region_common ===&lt;br /&gt;
The region_common folder stores all assets that aren&#039;t region dependent. Below are the assets folders:&lt;br /&gt;
&lt;br /&gt;
 region_common&lt;br /&gt;
 ├── banner&lt;br /&gt;
 ├── camera&lt;br /&gt;
 ├── cfl&lt;br /&gt;
 ├── effect&lt;br /&gt;
 ├── layout&lt;br /&gt;
 ├── model&lt;br /&gt;
 ├── scene&lt;br /&gt;
 └── sound&lt;br /&gt;
&lt;br /&gt;
==== banner ====&lt;br /&gt;
This folder has the game banner for each region on an ICN file?&lt;br /&gt;
&lt;br /&gt;
==== camera ====&lt;br /&gt;
This folder has all camera animations? The contents are stored on Yaz0 compressed BCH files.&lt;br /&gt;
&lt;br /&gt;
==== cfl ====&lt;br /&gt;
This folder&#039;s contents are unknown (Mii related?). The contents are stored on Yaz0 compressed BCH files.&lt;br /&gt;
&lt;br /&gt;
==== effect ====&lt;br /&gt;
This folder stores all of the effects used ingame. These are stored on the following files:&lt;br /&gt;
&lt;br /&gt;
* effect_CTR.ptcl&lt;br /&gt;
* elink.elk&lt;br /&gt;
&lt;br /&gt;
==== layout ====&lt;br /&gt;
These folders contain layout, Images and Animation for basic UI&lt;br /&gt;
 root&lt;br /&gt;
 ├── anim&lt;br /&gt;
 ├── blyt&lt;br /&gt;
 └── timg&lt;br /&gt;
&lt;br /&gt;
==== model ====&lt;br /&gt;
This folder has all of the games models. The contents are stored on Yaz0 compressed BCH files.&lt;br /&gt;
&lt;br /&gt;
==== scene ====&lt;br /&gt;
This folder&#039;s contents are unknown (scene related?). The contents are stored on Yaz0 compressed BCH files.&lt;br /&gt;
&lt;br /&gt;
==== shader ====&lt;br /&gt;
This folder stores the shaders of the game. The contents are stored on Yaz0 compressed BCH files.&lt;br /&gt;
&lt;br /&gt;
==== sound ====&lt;br /&gt;
This folder has the sounds and music used ingame. It has the following files inside:&lt;br /&gt;
&lt;br /&gt;
 sound&lt;br /&gt;
 ├── center.bcsar&lt;br /&gt;
 ├── center.bkas&lt;br /&gt;
 ├── dspaudio.cdc&lt;br /&gt;
 └── stream&lt;br /&gt;
     ├── &amp;lt;audio file name&amp;gt;.aac&lt;br /&gt;
     └── &amp;lt;audio file name&amp;gt;.bcstm&lt;br /&gt;
&lt;br /&gt;
== ExtData ==&lt;br /&gt;
&lt;br /&gt;
Inside the extdata, we can find the following files:&lt;br /&gt;
* &amp;quot;addSaveData&amp;quot;&lt;br /&gt;
* &amp;quot;allbadge.sarc&amp;quot; A register of all badges retrieved from data_&amp;lt;gameVersion&amp;gt;.dat file?&lt;br /&gt;
* &amp;quot;boss.sarc&amp;quot; The data_&amp;lt;gameVersion&amp;gt;.dat file retrieved from SpotPass&lt;br /&gt;
* &amp;quot;savedata&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== allbadge.sarc ===&lt;br /&gt;
This file uses the [[Nintendo Badge Arcade/PrizeCollection|PrizeCollection]] structure.&lt;br /&gt;
&lt;br /&gt;
=== boss.sarc ===&lt;br /&gt;
All game data stored here has the following structure:&lt;br /&gt;
 root&lt;br /&gt;
 ├── message&lt;br /&gt;
 ├── post&lt;br /&gt;
 ├── sharc&lt;br /&gt;
 ├── talkpic&lt;br /&gt;
 ├── xml&lt;br /&gt;
 └── Schedule.xml&lt;br /&gt;
&lt;br /&gt;
==== message ====&lt;br /&gt;
This folder stores all online-related game dialogues on each language supported by the region. It goes down the following directories:&lt;br /&gt;
&lt;br /&gt;
 message&lt;br /&gt;
 └── boss_XXX&lt;br /&gt;
     └── XXxx&lt;br /&gt;
         └── boss&lt;br /&gt;
             └── slotAXX&lt;br /&gt;
                 ├── BossText.msbt&lt;br /&gt;
                 ├── Emergency.msbf&lt;br /&gt;
                 ├── HallAd.msbf&lt;br /&gt;
                 ├── PaidTalk.msbf&lt;br /&gt;
                 ├── PostComment.msbf&lt;br /&gt;
                 ├── RetnHall.msbf&lt;br /&gt;
                 ├── StartUp.msbf&lt;br /&gt;
                 ├── ThemeShop.msbf&lt;br /&gt;
                 └── Training.msbf&lt;br /&gt;
&lt;br /&gt;
Where X goes the region, and x belongs to the language.&lt;br /&gt;
Within slotAXX, A is a letter and XX are numbers.&lt;br /&gt;
&lt;br /&gt;
==== post ====&lt;br /&gt;
This folder stores all Miiverse posts related to customizing the Home Menu with themes and badges. Each SARC file inside here has the following sructure:&lt;br /&gt;
&lt;br /&gt;
 root&lt;br /&gt;
 ├── Image.jpg&lt;br /&gt;
 ├── Mii.Etc1_a4&lt;br /&gt;
 └── post.xml&lt;br /&gt;
&lt;br /&gt;
The post.xml file contains the following data:&lt;br /&gt;
 &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
 &amp;lt;DistributablePost xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;index&amp;gt;x&amp;lt;/index&amp;gt;&lt;br /&gt;
   &amp;lt;Id&amp;gt;&amp;lt;Post ID&amp;gt;&amp;lt;/Id&amp;gt;&lt;br /&gt;
   &amp;lt;Name&amp;gt;Mii name&amp;lt;/Name&amp;gt;&lt;br /&gt;
   &amp;lt;PathMii&amp;gt;Mii.Etc1_a4&amp;lt;/PathMii&amp;gt;&lt;br /&gt;
   &amp;lt;PathImage&amp;gt;Image.jpg&amp;lt;/PathImage&amp;gt;&lt;br /&gt;
 &amp;lt;/DistributablePost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Mii.Etc1_a4 image has a 128x128 resolution.&lt;br /&gt;
&lt;br /&gt;
==== sharc ====&lt;br /&gt;
This folder stores the [[Nintendo Badge Arcade/PrizeCollection|PrizeCollection]] file with the badges and machines available for the belonging week.&lt;br /&gt;
&lt;br /&gt;
The file is named using the starting and ending dates that the collection is active for, in yy/mm/dd format separated with an underscore. For example, a collection active between the dates December 15th, 2022 to December 22nd, 2022 is named `221215_221222.sarc`&lt;br /&gt;
&lt;br /&gt;
==== talkpic ====&lt;br /&gt;
This folder contains the promotional images shown on the hub inside SARC files. Each SARC file has the following content:&lt;br /&gt;
&lt;br /&gt;
 root&lt;br /&gt;
 └── talkpic&lt;br /&gt;
     └── &amp;lt;Name of SARC file&amp;gt;&lt;br /&gt;
         └── The images...&lt;br /&gt;
&lt;br /&gt;
==== xml ====&lt;br /&gt;
This folder has some XML data that controls the parameters of the promotional images. It has the following structure:&lt;br /&gt;
&lt;br /&gt;
 xml&lt;br /&gt;
 └── talkpic&lt;br /&gt;
     └── TalkPic.xml&lt;br /&gt;
&lt;br /&gt;
The TalkPic.xml file has the following data:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;?xml version=&#039;1.0&#039; encoding=&#039;UTF-8&#039; standalone=&#039;yes&#039;?&amp;gt;&lt;br /&gt;
 &amp;lt;CenterTalkPicProperty&amp;gt;&lt;br /&gt;
     &amp;lt;TalkPicSet&amp;gt;&lt;br /&gt;
         &amp;lt;TalkPic Key=&#039;&amp;lt;Name of image&amp;gt;&#039; Arc=&#039;&amp;lt;Name of SARC file&amp;gt;&#039; Width=&#039;512&#039; Height=&#039;256&#039; Format=&#039;Etc1 or Etc1_a4 or Rgb565&#039; Type=&#039;400x240 (Original image resolution?)&#039; Path=&#039;path/to/image&#039;/&amp;gt;&lt;br /&gt;
     &amp;lt;/TalkPicSet&amp;gt;&lt;br /&gt;
 &amp;lt;/CenterTalkPicProperty&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Schedule.xml ====&lt;br /&gt;
This file controls the availability of each of the features inside this structure within the specified dates. It has the following data:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
 &amp;lt;FileItems xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;Items&amp;gt;&lt;br /&gt;
     &amp;lt;FileItem&amp;gt;&lt;br /&gt;
       &amp;lt;DateStartText&amp;gt;YYYYmmdd&amp;lt;/DateStartText&amp;gt;&lt;br /&gt;
       &amp;lt;DateExpireText&amp;gt;YYYYmmdd&amp;lt;/DateExpireText&amp;gt;&lt;br /&gt;
       &amp;lt;ColorText&amp;gt;#aaaaff&amp;lt;/ColorText&amp;gt;&lt;br /&gt;
       &amp;lt;Comment /&amp;gt;&lt;br /&gt;
       &amp;lt;RegexSetName&amp;gt;MessageDir&amp;lt;/RegexSetName&amp;gt;&lt;br /&gt;
       &amp;lt;Expression&amp;gt;boss/output/message/(?&amp;amp;lt;Region&amp;amp;gt;boss_(JPN|EUR|USA))/(?&amp;amp;lt;Locale&amp;amp;gt;[a-zA-Z]+)/boss/(?&amp;amp;lt;Dir&amp;amp;gt;.+)&amp;lt;/Expression&amp;gt;&lt;br /&gt;
       &amp;lt;KeyVariable&amp;gt;Boss/&amp;lt;/KeyVariable&amp;gt;&lt;br /&gt;
       &amp;lt;ValueVariable&amp;gt;boss/$(Dir)/&amp;lt;/ValueVariable&amp;gt;&lt;br /&gt;
       &amp;lt;OutputVariable&amp;gt;boss/archive_src/$(ArchiveName)/message/$(Region)/$(Locale)/boss/$(Dir)/&amp;lt;/OutputVariable&amp;gt;&lt;br /&gt;
       &amp;lt;PreviewVariable /&amp;gt;&lt;br /&gt;
       &amp;lt;CommandVariable&amp;gt;path/to/command_used.bat&amp;lt;/CommandVariable&amp;gt;&lt;br /&gt;
       &amp;lt;ArgumentsVariable /&amp;gt;&lt;br /&gt;
       &amp;lt;Key&amp;gt;Boss/&amp;lt;/Key&amp;gt;&lt;br /&gt;
       &amp;lt;Value&amp;gt;boss/slotAXX/&amp;lt;/Value&amp;gt;&lt;br /&gt;
       &amp;lt;Output&amp;gt;boss/archive_src/BossYYYYmmdd_YYYYmmdd/message/boss_XXX/XXxx/boss/slotAXX/&amp;lt;/Output&amp;gt;&lt;br /&gt;
       &amp;lt;Preview /&amp;gt;&lt;br /&gt;
       &amp;lt;SrcPath&amp;gt;boss/output/message/boss_XXX/XXxx/boss/slotAXX&amp;lt;/SrcPath&amp;gt;&lt;br /&gt;
       &amp;lt;Command&amp;gt;path/to/command_used.bat&amp;lt;/Command&amp;gt;&lt;br /&gt;
       &amp;lt;Arguments /&amp;gt;&lt;br /&gt;
     &amp;lt;/FileItem&amp;gt;&lt;br /&gt;
   &amp;lt;/Items&amp;gt;&lt;br /&gt;
   &amp;lt;ItemsCount&amp;gt;&amp;lt;Number of items&amp;gt;&amp;lt;/ItemsCount&amp;gt;&lt;br /&gt;
   &amp;lt;BasePath&amp;gt;%CTR_CENTER_ROOT%/&amp;lt;/BasePath&amp;gt;&lt;br /&gt;
   &amp;lt;XMLPath&amp;gt;boss/archive_src/$(ArchiveName)/Schedule.xml&amp;lt;/XMLPath&amp;gt;&lt;br /&gt;
   &amp;lt;ArchiveName&amp;gt;Boss$(DateFrom)_$(DateTo)&amp;lt;/ArchiveName&amp;gt;&lt;br /&gt;
   &amp;lt;DateFrom&amp;gt;YYYY-mm-ddT00:00:00&amp;lt;/DateFrom&amp;gt;&lt;br /&gt;
   &amp;lt;DateTo&amp;gt;YYYY-mm-ddT00:00:00&amp;lt;/DateTo&amp;gt;&lt;br /&gt;
 &amp;lt;/FileItems&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Each FileItem&#039;s content varies depending on its RegexSetName. Below are the possible values:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! RegexSetName&lt;br /&gt;
! Key&lt;br /&gt;
! Value&lt;br /&gt;
|-&lt;br /&gt;
| MessageDir&lt;br /&gt;
| Boss/&lt;br /&gt;
| boss/slotAXX/&lt;br /&gt;
|-&lt;br /&gt;
| TalkPicTex&lt;br /&gt;
| TalkPicTex/&lt;br /&gt;
| TalkPicTex/&lt;br /&gt;
|-&lt;br /&gt;
| TalkPicXml&lt;br /&gt;
| TalkPicXml/&lt;br /&gt;
| TalkPicXml/&lt;br /&gt;
|-&lt;br /&gt;
| PrizeCollection&lt;br /&gt;
| sharc/pc00.sarc&lt;br /&gt;
| sharc/YYmmdd_YYmmdd.sarc&lt;br /&gt;
|-&lt;br /&gt;
| Post&lt;br /&gt;
| post/PostXX.sarc&lt;br /&gt;
| post/&amp;lt;Post ID&amp;gt;.sarc&lt;br /&gt;
|-&lt;br /&gt;
| BonusStage&lt;br /&gt;
| BonusStageName&lt;br /&gt;
| &amp;lt;Stage Name&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| DefaultStage&lt;br /&gt;
| DefaultStageNameXXX&lt;br /&gt;
| &amp;lt;Stage Name&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;BonusStage&#039;&#039; and &#039;&#039;DefaultStage&#039;&#039; data define the sets (crane instances) available for each day of that week. The bonus catchers are also available as a practice crane.&lt;/div&gt;</summary>
		<author><name>RandoMan1232</name></author>
	</entry>
</feed>