Customising Shops
This article will guide you through making your own item setups for the in-game shops. You will need to know how to compile NewerSMBW's source code.
Step 1: Opening shop.cpp
In the Newer sources, go to the folder:Kamek/src/koopatlas
If you've done this correctly, you'll see the folder to the right.
Now, open the shop.cpp
file with Notepad++ or another text-editing software.
Step 2: Editing the Shops
Changing Shop Contents
In the shop.cpp file, go the the 428th line and you'll see what the shops contain:Now, you just need to replace the power-ups values, which are:
- MUSHROOM for the red mushroom.
- FIRE_FLOWER for the fire flower.
- ICE_FLOWER for the ice flower.
- PROPELLER for the propeller shroom.
- PENGUIN for the penguin suit.
- MINI_SHROOM for the mini mushroom.
- HAMMER for the hammer suit.
- STARMAN for the invincibility star.
- ONE-UP for the 1UP mushroom.
Note: There can only be exactly 12 items in a shop. Having more than 12 listed will cause a error when compiling, while less then 12 will cause missing items to be replaced with regular mushrooms. It's possible to change the total amount of items, however further code edits will be required to do so.
Also worth noting, the items do not have to be split into three rows in the code. The first four listed items will always be on the first row in-game, the next three will always be on the second row, and the last five will always be on the third row.
Item Prices
Every shop is made with 12 items. The prices are as follows:
- First Item costs 1 Star Coin
- Second & Third Items cost 2 Star Coins
- Fourth Item costs 3 Star Coins
- Fifth, Sixth, and Seventh Items cost 5 Star Coins
- Eighth, Ninth, Tenth, Eleventh, and Twelfth Items cost 8 Star Coins
Moving Shop Items
In shop.cpp, on the 492nd line, the numerical values here position the items on the screen. The position values are split into groups for each row, and the order that they are in corresponds to which item is affected by it. For example, the first position is used by the first item, and so on.
Other Shop Changes
To change the title of the Shop, use the Level Info Editor to edit your game's LevelInfo.bin
, located in /NewerRes
. Every world will have an entry that uses level slot 99 for its shop .
To edit the model of the shop's Lakitu, look in lakitu.arc
, located in /SpriteTex
(Riivolution) or Object
(Extracted rom).
To edit the looks of the shop window itself, look in shop.arc
, in /Layouts
. A guide to editing the layout can be found here.
Step 3: Testing In-Game
Now, you just need to compile your edited source code.
After recompiling it, just copy the bin files into the /NewerRes
folder and launch the game, now you can see the edited shops you just made!