Pages: « 1234567 »
Posted on 07-27-16, 05:11 pm in Level Previews
Death by cuteness

Karma: 6564
Posts: 491/598
Since: 05-01-13
Dammit… I may very well have lit the nuke that will cause my own end…  



I'm really sorry in advance for the off-topic,  skawo, I know full well that I might get mauled for this.






To  pinet and  Luluca, even though there is no malicious intent behind my action it's very possible you might hate me after this, not counting the fact that I might very well be mistaken, but I have a serious question for both of you:
_are you married with each other?



This would allow me to answer this:
Posted by cros107
...When did pinet say it was a girls' thing?

and this:
Posted by Hiccup
@Luluca
Could you please stop getting offended at things that people didn't say?

by saying that if indeed my assertion is correct, then Pinet did say that but most likely just to tease Luluca.




As for why I reached this conclusion:  Luluca and  pinet behaviors toward each other, but I have also other good reasons that I won't communicate for now.
Posted on 08-18-16, 02:44 pm in New NSMB Editor Builds!
Death by cuteness

Karma: 6564
Posts: 548/598
Since: 05-01-13
Pull request done on GitHub with the following files/folders waiting for the update:
_Sprite Images
_Resources.resx
_NSMBSprite.cs


Details:
Sprite 21 (Mega Goomba): Sprite 29 (Princess Peach): Sprite 35 (Final Boss): Sprite 41 (Bowser Switch): Sprite 58 (Bowser): Sprite 63 (Dry Bowser): Sprite 65 (CheepSkipper): Sprites 129 & 140 (Boss Key): Sprite 229 (Petey Piranha): Sprite 295 (MummiPokey): T-Pose illustration implemented Sprite 245 (Swollen Pipe): Swollen Pipe implemented Pump position calculated Sprites 71, 72 & 297 (Stone Lift): Height calculated Sprite 296 (Lift): Illustration implemented Sprite 297 (Stone Lift): Illustration implemented Sprites 162 & 174 (Mushrooms): Green mushroom implemented Sprite 303 (Ball 'n' Chain): Starting position calculated Sprites 68 & 71: Sprite 136 (Pokey): Modulo taken into account when calculating size



If you don't want to wait for the pull request to be accepted, here is a direct download link:
nsmb-editor-380b.zip
Posted on 08-23-16, 02:48 pm in New NSMB Editor Builds!
Death by cuteness

Karma: 6564
Posts: 551/598
Since: 05-01-13
Pull request was updated with the following:

_Added support for Chinese NSMB Rom.
_NSMBe can open .ids files now.
_iQue protection byte will automatically be set to 0 for any NSMB ROM regardless of the region.
_When drawing the sprites in the Level Editor, NSMBe now takes into account the Actor itself rather than the Sprite.

Actor 28 Green Cheep Cheep implemented Actor 30 Illustration implemented Actor 43 Illustration implemented Actor 60 Copied from actor 28 Actor 64 Illustration implemented Direction highlighted Actor 65 Rotation highlighted Actor 69 Illustration implemented Actor 79 Big sizes implemented Actor 105 Copied from actor 190 Actor 108 Copied from actor 107 Actor 124 Horizontal position implemented Actor 129 Illustration implemented Actor 130 Rotation highlighted Actor 134 Illustration implemented Actors 150 and 157 T-Pose implemented Actor 154 Copied from 148 Actor 173 Length calculation corrected Actor 175 Long platforms taken into account Rotation highlighted Actor 177 Left and right taken into account Actors 179, 180 and 181 Shifting 1/2 tile down taken into account Rotation highlighted Actor 184 Height calculation corrected Actor 186 Rotation highlighted Actor 189 Length modulo 8 taken into account Actor 190 Length modulo 4 taken into account Actor 195 Length modulo 8 taken into account Actors 196 and 197 Height is capped Actor 202 Pipe points in the right direction Actor 209 Size calculation corrected Actor 214 Illustration implemented Actor 228 Amplitude highlighted Starting position highlighted Starting direction highlighted Actor 230 Amplitude highlighted Starting position highlighted Actors 251 and 253 Copied from actor 252 Actors 255 and 256 Copied from actor 254 Actor 259 Brick Block head implemented Actor 262 Height calculation corrected Actor 264 Illustration implemented



Preview:
Enemy generator:


Lakithunder:


Monty Tank:


Rotation:


Draw Bridge:


Pendulum:




Download link:
nsmb-editor-380b.zip






Posted by LuigiXHero
Now we can all hope for working decompress overlays button again.

I can try to get it done by next update, but I'm not making any promises.
Posted on 08-27-16, 10:31 am in Nintendo's amazing level design (rev. 1 by  MeroMero on 08-27-16, 10:32 am)
Death by cuteness

Karma: 6564
Posts: 560/598
Since: 05-01-13
Continuing Skawo's saga but in NSMBDS this time:


Also some gems in level designing:



Similarities between 3-1 and 4-3:


Similarities between 5-3 and 8-4:
Posted on 08-27-16, 09:47 pm in New NSMB Editor Builds! (rev. 1 by  MeroMero on 08-27-16, 09:56 pm)
Death by cuteness

Karma: 6564
Posts: 564/598
Since: 05-01-13
Pull request updated with the following:
_Conveyor Belts direction highlighted as per  Hiccup request
_Tileset, FG and BG names updated according to  KingYoshi's list


Conveyor belts only display their arrows when Tileset is either 1 (Castle) or 39 (Tower).
The check is done on Tile Numbers rather than Tile Behaviors because the conveyor animations are tied to the former.

Download link:
nsmb-editor-380b.zip
Posted on 09-05-16, 03:18 pm in New NSMB Editor Builds!
Death by cuteness

Karma: 6564
Posts: 577/598
Since: 05-01-13
nsmb-editor-380b.zip
I finally completed my end of the bargain.

On top of the previous changes, what this update brings to the table is something else entirely:
_Sprites will take the ActorData from the Actor they are linked to;
_Sprites' names on the level editor will now take into account their respective Actor rather than the Sprite itself;
_Changes to Sprite<>Actor associations in the table located in overlay 0 will be reflected correctly on the Level Editor upon restarting the NSMBe;
_spritedata.xml, while it keeps its name, now holds the data for the Actors themselves rather than the Sprites as it previously did;
_the ids in the spritedata.xml field tags now take ids from 1 to 48 (bit), improved from the previous range of 0 to 11 (nybble).
_last but not least, SpriteData.cs was modified to make the Level Editor capable of reading and writing SpriteData (or rather ActorData now) bit per bit as opposed to nybble per nybble, allowing for far more accurate parameters (as in taking into account modulos when data was read nybble-wise), or even new parameters that couldn't be previously specified, as shown in some examples below:

NEW: Starting direction




NEW: Direction




NEW: Color




NEW: Scrapped width






The only thing left, modifying this page, is up to  Dirbaio now.
Posted on 08-31-13, 09:51 pm in What i am doing wrong? activators
Death by cuteness

Karma: 6564
Posts: 26/598
Since: 05-01-13
I know what happened :
Your zone is actually taking into account the yellow arrow, which the sprite 168 considers an enemy !
To rectify that mistake just shorten the zone by 16 pixels like this :
Posted on 09-07-13, 09:46 am in tutorial Changing Challenge Mode values
Death by cuteness

Karma: 6564
Posts: 30/598
Since: 05-01-13
Challenge MOD

This is a simple tutorial about how to change which area will have Challenge Mode or not.

When you make a level you don't necessarily think about Challenge Mode, but problems arise when it prevents you from finishing the level because it doesn't have the same template as the original level in that slot.

This will come to an end now, here is a simple to understand (I hope) guide.

How to change Challenge Mode values :

Step 1 : Open the NSMB-Editor

Step 2 : Go into Tools/Options Tab and click Decompress ARM9 binary

Step 3 : Go to the Filebrowser and open arm9.bin with the Hex-Editor :

Step 4 : Go to the following offset :
0×26AF8 (US) 0×263A8 (JP) 0×26B80 (EU) 0×26B08 (KS) 0×264E4 (CH)


There are 177 (176 in US version) areas in total and each value points to 1 area only, those are in the same order as in the course folder.
As a reminder here is the course folder pattern:
World Numbered levels Letter levels Ghost House levels Towers levels Castles levels Cannon levels


Step 5 : You may want to change a value, this is what each value does :
00 : nothing
01 : Blocks left scrolling
02 : Blocks bottom scrolling

Step 6 : Save

And that's all you have to do to change a Challenge Mode value to one who fits your needs.

Some last minute tips :
_If main area doesn't have Challenge Mode, neither should bonuses areas.
_Bosses rooms and Cannons levels shouldn't have Challenge Mode enabled.
Posted on 10-17-13, 01:26 pm in Board changelog (rev. 1 by  MeroMero on 10-17-13, 01:27 pm)
Death by cuteness

Karma: 6564
Posts: 49/598
Since: 05-01-13
Posted by hamza62240
...

Doh. I don't care about karma. There is just this feature added which is so annoying.

I won't care about karma anyway. I don't really know how karma will do anything for you.

BTW whatever, I'll try to improve.

It's still plain boring.


Says the guy who wrote this
Posted by hamza62240
Aww Just 65 KARMA RIGHT NOW?!?!? This is bad! >;<


and this
Posted by hamza62240
uh now it's 60? Please someone vote me up


Posted by hamza62240
But it's SO NOT COOL.

Now we have to keep trying to get a million +1s to get upper than 0 karma. Plain boring.

This is not cool. SO NOT COOL.


Truth be told you had it coming, you can't bite the hand that feed you and expect to get away with it now do you ?

And Dirbaio, nice update here, but there's a little wrench here, now the karma pretty much acts as your "score" kinda, which makes the real score feature seems kind of useless no ?
Posted on 07-27-14, 07:46 am in World 2 and 5 Castles alternate exits
Death by cuteness

Karma: 6564
Posts: 101/598
Since: 05-01-13
Yep. Those two levels do have an alternate exit (that lead to W4 and W7 respectively), but they're not secret exits in the strictest sense of the term.

How ?

Instead of a boss battle, try to put a normal flagpole at the end of the level (like you would in a classic level) , it works and will take you to the next world, right ?
Now try to put a red flagpole instead, technically it should lead you to W4 / W7 ? Not really, it will still take you to W3 / W6 !

That's because to trigger the alternate exits in those 2 levels, you have to finish the level while being mini.
So no matter the color of the flagpole, if you finish the level while mini, the game will take you to the secret worlds (4 or 7), otherwise it will take you to the normal worlds (3 or 6).

If you want to get rid of boss battles, keep this information in mind and design your level accordingly ; otherwise players can abuse this to take the alternate exit even though that wasn't the hacker's intent, like in the commemorative hack for the 3 years of NSMBHD where you can finish the level 5-Castle while being mini to gain access to World 7.
Posted on 09-07-14, 11:52 am in The thing with the sprite database
Death by cuteness

Karma: 6564
Posts: 125/598
Since: 05-01-13
If we want to overhaul the DB, we need to set up guidelines to follow.



First and foremost, should sprites be named by their official names or easier-to-understand names?


example: Unagi or Eel.
I admit that I'm a bit of an "official-policy" freak, but I can adapt if needed.
(btw  Freeze actually the sharks are called Hojiro in japanese, not Sushi but that's besides the point)



Should the data be listed in the order they appear or should they be listed by category?


example: for the Star Coin, should we list its attributes like this:
_Number (the most important category first) Number _Placement in the scenery (the second most important category) ½ tile right ½ tile down Behind fence (the least likely to be used parameter last) _ID (the least likely to be used category last) Output ID Timer when ID set

Or should we list them in order:
_Output ID (nybbles 0-1) _Timer when ID set (nybble 6) _Behind fence (nybble 8) _Number (nybble 9) _½ tile right (nybble 10) _½ tile down (nybble 11)




Value of 0 for things like speed, size, etc.


Speed should only have a default value of 0 only AND only if it means the sprite won't move at all.

Think about it, you set up a sprite and you leave the speed at 0, it means the sprite will stay idle.
In my head a speed of 0 means 0 km.h-1, it means 0 mph, it means 0 m.s-2, it means no acceleration, no momentum, no speed, NO MOVEMENT.
If the sprite has even the faintest movement, then it's not idle thus its speed is not equal to 0.
If that's the case, put a default value of 1 in the sprite DB.

What I said for speed also goes for length, size, opacity, etc.
I just can't count anymore the number of times I had to go to the sprite DB and put a value of 1 (or more sometimes) because of that technicality.



Event controllers:


 Freeze, IIRC event controllers always had shitty parameters on the Database.
I mean usage mode: unknown???
Jesus Christopher Christ, it should be "On while trigger ID is on".
On that note:
_Target Event ID should be Output ID (target)
_Triggering Event ID should be Input ID (trigger)





Controversial cases:


Nybble 5 for Sprite 155 (Warp): as you know ticking this will disable sounds when you change area but it works only on emulators, if you try that on a real NDS the game will freeze the moment you go through the Warp.

Should we leave the parameter, knowing it will break on a real NDS?

I always thought that attribute shouldn't be there.
 Hiccup, on the other hand thinks the opposite.
I would like more opinions on this.



Modulos

That's more like a current limitation of NSMBeditor, but I suggest there should be another column called modulo when you edit a sprite.
For example the opacity setting gets applied a modulo 32, so if we type in the hypothetical cell called modulo to value 32, only the values between 0 and 31 can be selected.



Sprites 83 and 84

There's simply too much subtle details for all of them to be taken into account without ending with a huge ass description for said sprites.



Goal / Suggestions


The idea I'm trying to convey is that we should get an idea of the formatting before attempting to update the database.

I'm more than honored that you think highly of me  MarioSunshine, but this not something I (or anyone else for that matter) should do as a lone wolf, that's something that should be decided as a team, for that we could elect a council with some of the most sensible users.
10 users seems good enough, give or take 2.
That pretty much rules out members who mass-modified the sprites just to change ONE lower-case letter to a upper-case letter on the sprite's name *cough*.

Of course  ray and  Freeze your input will definitely be useful here, after all you are the ones who came up with the thread.


I say if a sprite has all its data documented (complete with the models it uses) then it should be locked to prevent any further modification (kinda like the wiki pages).

We should have some people granted with the title of Database Keeper.
It may seem elitist but really database used as mean for information is not something to be tampered with everyday.
I mean once data is documented, usually it's here to stay, no to be changed left and right.

If someone with made a discovery but has not the right to modify the database, it can still put in the modifications but they will saved in a queue instead, waiting for one of the database keeper to approve (or disprove) the modifications, the user will be "credited" for the modification if it get approved though.
That should prevent noobs to modify the database on a whim.



I probably have forgotten some things, feel free to add suggestions if you feel like it
Posted on 09-14-14, 05:15 pm in HGSS Teaser: Arceus ??? type (rev. 1 by  MeroMero on 09-14-14, 05:16 pm)
Death by cuteness

Karma: 6564
Posts: 130/598
Since: 05-01-13
Self-explanatory video

Posted on 11-28-14, 07:55 pm in download Zoom sprite helper (rev. 1 by  MeroMero on 11-28-14, 07:58 pm)
Death by cuteness

Karma: 6564
Posts: 173/598
Since: 05-01-13

Download : Zoom.zip

Nothing impressive, but it should cover the basics.

The tile with the 84 inside is the tile where the sprite is positioned.
Vertical / horizontal black line is the vertical / horizontal axis (duh).
If width = 0, the leftmost and rightmost tiles will be colored (infinite width).
If height = 0, the topmost and bottommost tiles will be colored (infinite height).
Scrapped width is actually zoom right / 32 rounded down.

Width and height accept values between 0 and 15 included.
Both zoom accept values between 0 and 255 included. Modulo 32 is applied afterwards.

Theoretically if height / width is set to infinite you should be able to activate the zoom from anywhere while you're in the red zone; in practice the zoom will activate only if you are close enough from the sprite (10 tiles max or so while you are in the red zone).
So yes you may need to put multiple zoom sprites if your level layout demands it.


Yes this is an .html file (shame on me), because I can't make a real program for shit
Posted on 02-26-15, 07:42 am in release Super Mario: Endless Earth (rev. 1 by  MeroMero on 02-26-15, 07:51 am)
Death by cuteness

Karma: 6564
Posts: 232/598
Since: 05-01-13
Luckily for you, one of the best synonyms for endless is infinite, turns out that the infinity symbol (∞) is symmetrical in nature, albeit spreads out horizontally rather than vertically.
The lack of vertical spreading can be fixed by filling the remaining space with the planet Earth's symbol, so either the female/planet Venus symbol flipped vertically (♁), or the globe with the equator and a meridian (ⴲ).

Good luck with your hack
Posted on 03-23-15, 07:44 pm in New Actor discoveries (and extra info on old ones) (rev. 4 by  MeroMero on 03-24-15, 01:40 pm)
Death by cuteness

Karma: 6564
Posts: 255/598
Since: 05-01-13
Banzai Bill (Class ID 238) has the exact same sprite data as Bullet Bill (Class ID 27).

When SMW meets NSMB !



Thunder (Class ID 97) can only be heard once per view, no matter how many copies of the sprite there are in a single view.


Oh and Classes ID 255 and 256 mean that sprites 169 and 171 are technically not defunct.
In fact they are fully functional as long as their parent, the Spin-Block (sprite 95) is present in next to moderate vicinity.

 Hiccup, you want to fix those:
Raining debris should have Class ID 121 instead of 122.
Unknown camera actor should have Class ID 236 instead of 238.

Also, here have a +1 (surprised the OP didn't get any more +1, you got a GOOD idea here).

EDIT: surprised the OP didn't get any more +1 That's more like it.
Posted on 04-28-15, 09:20 pm in Misc. patches thread
Death by cuteness

Karma: 6564
Posts: 311/598
Since: 05-01-13
Posted by Shadey21
Could you explain how you go about doing it? I've looked for a few tutorials on here and on google but no luck.


An alternative would be to go and grab the NSMB IDA database from  Dirbaio (who have my thanks BTW), this is how I figured and tested most of the data.

______________________

Tempo hacks:

Time to activate the Fast Tempo:

Overlay 0
Data type: Qword
Relevant data: 64 (100)
Full data: 64 00 50 E3 08 00 00 CA*
Offsets:
0×A0BC (US)
0×99E8 (EU)


Actual Fast Tempo value:

Arm9
Data type: Word
Default data: 66 01 (358)
Offsets:
0×57474 (US)
0×473DC (EU)


Secondary Fast Tempo value:

Overlay 0
Data type: Word
Default data: 66 01 (358)
Offsets:
0×A4EC (US)
0×9E18 (EU)


Fast Tempo check on Area load:

Overlay 54
Data type: Word
Default data: 66 01 (358)
Offsets:
0×C644 (US)
0×B954 (EU)

*If the Fast Tempo check is different from the Secondary Fast Tempo value, then the Hurry Up tune will play on level start if the timer is set on 100** or less, not unlike New Super Luigi U.
This is the only reason you want to consider changing the Fast Tempo check at all.
Be warned though that in doing so the Hurry Up tune will play every time the game needs to load an Area (merely changing the View is not enough thankfully).

To circumvent a bit that problem change 64 00 50 E3 08 00 00 CA on Overlay 0 into 64 00 50 E3 08 00 00 1A; changing that lone nybble from C to 1 is enough to change the conditional branching from BGT to BNE.
Now the Hurry Up tune will play only AND only if the timer is at 100 (not 99, 50, 101, 300, whatever… just 100).
It doesn't resolve the problem completely since if you happen to change Areas when the timer is at 100, the Hurry Up tune will play again, but at the very least the problem is scaled down by quite a margin.

**Assuming default settings.
Posted on 02-04-16, 08:22 pm in Misc. patches thread (rev. 1 by  MeroMero on 02-04-16, 08:27 pm)
Death by cuteness

Karma: 6564
Posts: 344/598
Since: 05-01-13



Download link updated in the footer.
Anyone is free to use this ROM Hack as a base.

If somehow you were working on a non-European version of NSMB and still want to use all the modifications done on the code, know that NSMBeditor allows you to extract and replace whole folders, and if you click replace, every destination file within that folder whose name matches that of the source file will get replaced.
This comes handy if you want to export all your work on a European version of NSMB.

Next thing to come from me won't be an ASM Hack but a tutorial on how to learn and master the "Background Sharing Method".

Posted on 03-03-16, 10:03 am in tutorial Fix bottom background in slot 51
Death by cuteness

Karma: 6564
Posts: 369/598
Since: 05-01-13
d_2d_W_M_back_jungle2_ncg.bin


This tutorial looks a lot like the one I did for the Bottom Background 36, well this is because the modus operandi is mostly the same.

Step 1 : Open the NSMB-Editor

Step 2 : Go into "ROM File Browser" tab and look at overlay9_0.bin size:

If it's over 200,000 bytes, proceed directly to step 6.
Else if it's only around 120,000 bytes, then :

Step 3 : Go into "Tilesets" tab and open Tileset 0 (Jyotyu) :


Step 4 : Save without modifying anything and close the Tileset tab :

What you just did here is decompressing the overlay9_0.bin so that it's over 200,000 bytes.
For the Chinese version, decompress overlay 0 with an older version of NSMBe (revision b356 for example will do).

Step 5 : Now you can go back to "ROM File Browser".

Step 6 : Open overlay9_0.bin with the Hex editor :


Step 7 : Go to the following offsets and change the values:
US 0×30E40: E5 00 => E2 00 0×31300: 0B 02 => 07 02 0×31430: 87 01 => 84 01 JAP 0×30240: E5 00 => E2 00 0×30700: 0B 02 => 07 02 0×30830: 87 01 => 84 01 EUR 0×30654: 2E 01 => 2B 01 0×30B14: 54 02 => 50 02 0×30C44: D0 01 => CD 01 KOR 0×30300: E3 00 => E0 00 0×307C0: 09 02 => 05 02 0×308F0: 85 01 => 82 01 CH 0×30300: E3 00 => E0 00 0×307C0: 09 02 => 05 02 0×308F0: 85 01 => 82 01


The first value refers to the graphics (.ncg), the second to the design (.nsc) and the last one to the palette (.ncl).

Step 8 : Save and Exit the Hex Editor.

Step 9 : Close NSMB-Editor so that the changes are registered and open it again.

Step 10 : Now go to "Backgrounds" tab and open BOTTOM 51 :



By doing this little trick, you just gain one more background to use!
Posted on 03-04-16, 06:07 pm in guide Tilesets and textures (rev. 1 by  MeroMero on 03-05-16, 02:36 pm)
Death by cuteness

Karma: 6564
Posts: 370/598
Since: 05-01-13
As you are aware, some tilesets load textures from the polygon_unit folder.
Here are listed all the tilesets (sans Jyotyu) along with their Map16 Tile Numbers who link to a texture:

Sub Nohara
    Castle Top
        432: I_toride2_1
        433: I_toride2_2
        434: I_toride2_3
        435: I_toride2_4
        436: I_toride2_5
        437: I_toride2_6
        438: I_toride2_7
        439: I_toride2_8
        440: I_toride2_9
        441: I_toride2_10
        442: I_toride2_11
        443: I_toride2_12
    Castle Right
        496: I_toride1
        497: I_toride2
        498: I_toride3
        499: I_toride4
        500: I_toride5
        501: I_toride6
        502: I_toride7
        503: I_toride8
        504: I_toride9



Tilesets 1, 39, 41, 49 & 58
    Wire net
        512: wire_netting2
        513: wire_netting3
        514: wire_netting4
        515: wire_netting6
        516: wire_netting7
        517: wire_netting9
        518: wire_netting10
        519: wire_netting12
        520: wire_netting13
        521: wire_netting14
        522: wire_netting15
        523: wire_netting17
        524: wire_netting1
    Pillar
        533: I_hashira_lu
        534: I_hashira_cu
        535: I_hashira_ru
        536: I_hashira_l
        537: I_hashira_c
        538: I_hashira_r
        539: I_hashira_ld
        540: I_hashira_cd
        541: I_hashira_rd



Tilesets 2, 6, 20, 52 & 53
    Quicksand
        48: I_ryusa_1 (cycles from I_ryusa_1 to I_ryusa_4)
        49: I_ryusa_ue1 (cycles from I_ryusa_ue1 to I_ryusa_ue4)



Tileset 47
    Quicksand
        217: I_ryusa_1 (cycles from I_ryusa_1 to I_ryusa_4)
        218: I_ryusa_ue1 (cycles from I_ryusa_ue1 to I_ryusa_ue4)
    Wire net
        512: wire_netting2
        513: wire_netting3
        514: wire_netting4
        515: wire_netting6
        516: wire_netting7
        517: wire_netting9
        518: wire_netting10
        519: wire_netting12
        520: wire_netting13
        521: wire_netting14
        522: wire_netting15
        523: wire_netting17
        524: wire_netting1
    Pillar
        533: I_hashira_lu
        534: I_hashira_cu
        535: I_hashira_ru
        536: I_hashira_l
        537: I_hashira_c
        538: I_hashira_r
        539: I_hashira_ld
        540: I_hashira_cd
        541: I_hashira_rd


Textures are drawn on a higher layer than the tilesets.
This means that if an object is drawn on one of the Tile Numbers respective to one of the tilesets specified above, it will simply and purely get overwritten by the texture (also this is done behind the scenes, by that I mean that the texture is drawn before the area being loaded fades in).
But this is not bad since that means we don't have to draw those textures in the tileset at all, this allow us to save space on the tileset.


For example look at the vanilla Desert tileset:


By erasing the quicksand from the tileset, you can use 8 more 8×8 tiles.



Tip 1: you can optimize your tilesets (other than Jyotyu and Sub Nohara) by making them 256×144 pixels large instead of the usual 256×112 pixels, but keep in mind that Sub Nohara will be sacrificed in the process for any tileset above 256×112, so do that only if you are sure that you will never need Sub Nohara for the tileset you want to expand.

Tip 2: This is already known but it doesn't hurt to remind everyone about this; use 4 palettes per tileset, there's no reason not to.

As a teaser for the next tutorial, know that tilesets can be made up to 256×208 pixels large, but this requires overlapping into the foreground and into Sub Nohara.
Posted on 03-05-16, 02:31 pm in guide Tilesets and textures
Death by cuteness

Karma: 6564
Posts: 373/598
Since: 05-01-13
No tileset use 256×144 pixels (or more than 256×112 for that matter) and for good reason actually, you'll see why.


As for resizing the tilesets, then:

_Go into the BG_ncg folder;
_LZ Decompress the tileset you want;
_The filesize should be brought to 28,672 bytes (0×7000);
_Click on Hex Edit;
_Select the last 8,192 bytes (0×2000), the best way to do that is to go to offset 0×5000 and begin the selection from there;
_Copy/Paste until the filesize reaches 36,864 bytes (0×9000);
_Save and exit the Hex Editor, now you can click on LZ Compress and you'll be able to import 256×144 images into the tileset that was modified.




But don't do that until you're absolutely sure that the tileset you're using can afford to sacrifice the Sub Nohara tileset!

This is something that completely escaped my notice until now because the one tileset on which I applied that modification was (of course) the one tileset I didn't need to Sub Nohara to begin with.

But still if you want to try that method, tilesets used only for Castles or Towers for example are a good start since it's unlikely you'll need to use Sub Nohara in conjunction with the aforementioned tilesets.
Pages: « 1234567 »