Banner
Views: 236,385,187
Time: 2013-05-23 06:05:08 AM
4 users online: lolilul, metalgearhunter, o PatPatPat, o Tahixham - Guests: 22 - Bots: 13Users: 22,868 (1,282 active)
Latest: LuckyDearly
Tip: Unique level names aren't necessary, but they're a plus.
Level optimizing
Forum Index - Events - SMW Central Production 2 - Level optimizing
Pages: « 1 2 3 4 5 » Thread Closed
After inserting all of the optimizations posted so far, the IPS size has dropped from 2686 KB to 2580 KB, which saves 106 KB overall. That's huge.

I'll put up the new base ROM in a little while, and if anyone wants to optimize anything further, they can. I think we're in slightly better shape now though.
Current optimization progress.

Code
Level # Original Optimized 130 328 278 161 378 333 162 286 260 163 296 282 Total 1288 1153


1288 objects for the entire level is a lot less than what some people used in a single sublevel! Level 130 now contains a lot of cutoff now, but all of it is above the camera and vertical scrolling is disabled. If I was absolutely willing to sacrifice decorations (including removing the two object pipes so the level has more color in it), I could cut down on the space even more.
Originally posted by Sind
Custom objects wouldn't really help much =/
They don't allow for stretching and such...

You're thinking of extended objects. I'm talking about custom normal objects.
I understand this whole optimization process helps with saving space, but I don't think we should be getting too carried away with this if it might remove some of the aesthetic value of our levels.

Come to think of it, I really should ask how big of an issue freespace was in SMWCP1, considering that hack was just enormous due to how many designers insisted upon huge levels for most part (plus you had that Void world).
Optimizing does not mean removing aesthetically pleasing items in levels. It means piecing single objects together via Map16/overlapping tricks. In fact, a good optimizer should end up retaining the level's layout exactly when they're done, and that is what these optimizers have done so far.

Oh, and as for the freespace issue in SMWCP1 .. I'm pretty sure we had no more than a bank of space left in the final version.
I would tend to agree; in level EA (an absolute horror of inefficiency due to the gradual, patchwork way it was assembled), for example, I was able to cut well over 600 objects simply by altering the way I handled walls and 32-wide corners--and without removing any of my decorations, anti-cutoff tiles, or anything of that sort. I imagine there's probably a number of other levels which could be handled similarly.

What's more, I could probably reduce EA quite a bit further still with no ill effects if we were to disable vertical scrolling when Mario dies in vertical level as MrDeePay suggest, thereby reducing the need for two screens of nothing but sand and rock. In fact, I'm pretty this would probably benefit vertical levels on the whole, as the effect is generally responsible for quite a bit of awkwardness, and I'm pretty sure there aren't any levels that are particularly aided by Mario's awkward two-screen drop.

On a related note, would it perhaps not be a worthwhile idea to remove all completely hidden tiles from all levels in the hack before the end? It's easy, has essentially no detrimental effects, and the combined effect would very likely save a non-negligible amount of bytes, especially considering some levels have layers upon layers of these lying under the proper tiles.
A few of them are useful, since some of SMW's tiles sometimes choose not to show (coins, midways), and/or change depending on what's under them (net sides, slopes, some corner tiles), so blindly nuking it is a bad idea.
But yeah, since most of these levels are made with DM16, most of them are useless.
Originally posted by S.N.N.
Optimizing does not mean removing aesthetically pleasing items in levels. It means piecing single objects together via Map16/overlapping tricks. In fact, a good optimizer should end up retaining the level's layout exactly when they're done, and that is what these optimizers have done so far.

Oh, and as for the freespace issue in SMWCP1 .. I'm pretty sure we had no more than a bank of space left in the final version.


Read: IF. I never said we were removing any aesthetic value, only warning against getting carried away with this.
Last edited on 2011-11-28 09:46:17 AM by GeminiRage.
Originally posted by Rameau's Nephew
What's more, I could probably reduce EA quite a bit further still with no ill effects if we were to disable vertical scrolling when Mario dies in vertical level as MrDeePay suggest, thereby reducing the need for two screens of nothing but sand and rock.


Nononononono. What I suggested was to disable vertical scrolling when Mario dies period. (Think any 2D Mario game not SMW.)

Relevant hex edit.
Code
org $00F619 ; Prevents screen from scrolling when Mario loses a life. db $12,$14


Just add that to the hex edits patch. Using this will also allow us to remove details in places the player has no chance of visiting unless they somehow manage to glitch their way through. Just look at all of the detailed areas in Soaring Stronghold, for example. Speaking of which, has anyone tried to optimize that level yet? Just 11E alone is pushing 4500 (holy crap) objects.
Last edited on 2011-11-28 12:03:29 PM by MrDeePay.
That would benefit quite a lot actually(and I think it might look better too even :3)
It would also prevent players from getting a free sneak peek at downward-traveling levels when they die, which is something that has been bothering me a little.
Last edited on 2011-11-28 02:34:51 PM by AxemJinx.
That would also fix one of the bugs with my lightning bolt sprite in level 139, where its Y position doesn't update after the player dies, causing the top to look cut off. Of course, I could just as easily set the position before checking $9D. If it saves level space, though, why not?

(Oh, hey, level 99...)
Last edited on 2011-11-28 02:35:59 PM by imamelia.
Originally posted by MrDeePay
Current optimization progress.

Code
Level # Original Optimized 130 328 278 161 378 333 162 286 260 163 296 282 Total 1288 1153


1288 objects for the entire level is a lot less than what some people used in a single sublevel! Level 130 now contains a lot of cutoff now, but all of it is above the camera and vertical scrolling is disabled. If I was absolutely willing to sacrifice decorations (including removing the two object pipes so the level has more color in it), I could cut down on the space even more.



Those files.
http://bin.smwcentral.net/u/1365/Myrkka%2BMainlina%2B-%2B130.mwl
http://bin.smwcentral.net/u/1365/Myrkka%2BMainlina%2B-%2B161.mwl
http://bin.smwcentral.net/u/1365/Myrkka%2BMainlina%2B-%2B162.mwl
http://bin.smwcentral.net/u/1365/Myrkka%2BMainlina%2B-%2B163.mwl
http://bin.smwcentral.net/u/1365/SMWCP2%2BPage%2B22.map16
http://bin.smwcentral.net/u/1365/SMWCP2%2BPage%2B22.map16 - Updated level GFX, those GFX use Page 22 (obviously).
http://bin.smwcentral.net/u/1365/ExGFXA3.bin - See above, just uses 8 8x8 tiles of the Digsite Dangers ExAnimation file. Hopefully Lynnes and Lightvayne don't mind (too much).

Smoggy Steppe
Code
005: 865 > 798 136: 141 > 134

http://bin.smwcentral.net/u/1365/Smoggy%2BSteppe%2B-%2B5.mwl
http://bin.smwcentral.net/u/1365/Smoggy%2BSteppe%2B-%2B156.mwl



Misc:
http://bin.smwcentral.net/u/1365/ExGFX1B1.bin - Updated to include the Air Meter, allowing Crystalline Citadel to have the proper graphics for that level.
Thanks again everyone. Our combined efforts have knocked off about 200 KB from the base ROM, which is incredibly substantial.

If any future optimizations are made on the remaining 10-15 levels (or if anyone decides to even further touch up the levels already inserted), the files can be directly sent to me in a PM. Remember, please do not modify the works of others (i.e. change their level design). Just focus on trimming down the amount of objects in the level.
Pages: « 1 2 3 4 5 » Thread Closed
Forum Index - Events - SMW Central Production 2 - Level optimizing

The purpose of this site is not to distribute copyrighted material, but to honor one of our favourite games.

Copyright © 2005 - 2013 - SMW Central
Legal Information - Link To Us


Total queries: 27

Menu