There is a checkbox called “Limit visible region” in the layer properties of all eight layers. Sometimes it gets used, sometimes it doesn’t, and yet how many of us really know what it does? This article, hopefully, will explain it for those of you who don’t.

Limit visible region at its most simplistic.
LVR’s effect can be described in a single sentence – the top of the layer is moved down 140 pixels. This means that layers with a Y Speed of 1 start 140 pixels below the top of the screen, layers with a Y Speed of 0 start 140 pixels below their usual start, and etc for all the other possibly layer Y Speeds.
It doesn’t matter what the Y Speed of the layer is – it will always be 140 pixels. Nor does the layer size, nor does Automatic Y Speed. The only thing which prevents LVR from working once turned on is Tile Height – the two cannot exist at the same time, and Tile Height will win. Thus, having any Automatic Y Speed is probably a bad idea.

So what?
I’m not really sure what the original reasoning behind LVR was, but the most common use is for background layers such as mountains, as it will move them down. Yes, you could achieve almost the same effect simply moving the tiles down in the layer – doesn’t matter. The option to apply LVR Does exist, so it’s up to us to use it. Kind of like a gift horse.

Layer 8.
LVR does not work on Layer 8. Period.

Layer 4.
LVR is an excellent example of how Layer 4 is actually three individual layers – graphics, mask, and events. If you apply LVR to Layer 4, the graphics will be moved down 140 pixels, but the mask and events will retain their normal position. A blind man would notice no difference in the level, as nothing is changed except in appearance. You are, of course, advised to also apply LVR to Layer 3 (and possibly 5 etc) as well when you do this, as otherwise things will look even more messed up then they already are.
To try this, simply load up any level you like and check the Limit visible region checkbox in the Layer Properties for Layer 4 (and any other layers you want). Save and Run, Have Fun!

None of the events are displaced at all?
None. Not even Lighting events such as Pulze Light.

Triggers and Scenery.
If you guessed such events as Destruct Scenery would act kind of strange, give yourself a prize. The tile that gets destroyed is moved down 140 pixels, but the event which destroys it is not. How does that work? Well…
Imagine a 32×32 area called Point A. There is a destruct scenery block in it. However, LRV is applied to that layer, so 140 pixels below is Point B, where you actually see the block. When Jazz’s bullet hits Point A, the tile at Point B disappears, and the fragments come out of Point A. I wouldn’t be surprised if this could be useful somehow – yes, of course it also applies to stomp, collapse and trigger scenery.

A weird tidbit involving JCS.
This is kind of hard to explain, but I’ll do my best.
The Parallax View window (lower right) in JCS does its best to show all eight layers scrolling more or less at the right speeds and positions. However, it fails to accurately translate the effect of LVR, suggesting that LVR may originally have done something else – we may never know.
As you probably know, there is a white rectangle inside the Parallax View window showing how much of the level you will be able to see at different resolutions. If this white rectangle goes beyond the far left side of a layer with LVR, that layer will stick onto the far left side of the white rectangle, scrolling as if it is X Speed 0, until you move the view right far enough. The same applies on the right side of the layer, only the 0Speed point is 11 tiles into the layer instead of the very edge.
Yes, this is completely pointless and useless, but it does seem to be a direct result of the LVR checkbox, so I thought I’d document it anyway.

Fake isometricism.
Place a tile or row of tiles in layer 4. Set Layer 5’s X/Y speeds to 1, and place the same tile or row of tiles in Layer 5, in the same position, only five tiles up. Now check the LVR Checkbox in the Layer Properties for Layer 5. Save and Run, and voila! You may want to replace the stuff in layer 5 with something like a solid color tile, but still, you just created an eyecandy effect!
(One cool effect is to do this to the entire level – I find Labrat works well for this. Obviously if you only move the tiles up 4 tiles, instead of five, they’ll be displaced down instead of up.)

The end.
As far as I can tell, that’s all there is to know about Limit visible region. Do what you want with it. In review, here are the three main uses:
1: Random adjusting of Y position for background layers such as mountains.
2: Adjusting the Y position of the graphics in layer 4, making everything look weird.
3: Weird ghost/isometric tiles effect!

As always, I am open to requests for more detail, or corrections if I got something wrong.

Researched by Violet, no real interest shown by LRK.


PHT on April 17, 2004 06:00

WOW cool article :D
I figured it also works fine with Beach
Sadly I’m working with the Easter tileset and the cool looking “water” effect (or what it seems to be) doesn’t work.

Good job, Violet

PHT on July 13, 2004 06:00

I figured the isometric effect is the same than the one from the menu that appears if you press esc during the game.
Also LRV isn’t the short form of Limit Visible Region because that would be Limit Risible Vegion :)

Blackraptor on August 06, 2004 06:00

W00t. Now I might actually check off that button in a level (although still highly unlikely)

Technopauluz on March 31, 2007 16:53

Nice, another cool thing u\‘ve figured out!