[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4688: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4690: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4691: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4692: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
IceBlinkEngine.com • View topic - Master Area/Linked Area System ("blend away ceiling")

Master Area/Linked Area System ("blend away ceiling")

Any documentation, tutorials, tips and tricks, or examples on how to use the IB2 Toolset

Master Area/Linked Area System ("blend away ceiling")

Postby youngneil1 » Thu Apr 06, 2017 7:10 am


The Master Area/Linked Area system allows you to very easily create interior spaces (eg rooms underneath a ceiling or caves underneath the mountain on top). In play it looks as if the ceiling is blended away once you step into an interior. It well help your understanding a lot if you open the exampleArea_0_ (an area linked to its master exampleArea) from the FreshTemplate module now while reading all of this: In its southern part you will see an example of the link/master system in action (a little cave network).

Of course, you can setup interiors traditionally already by placing a transition trigger manually to a fresh map (and this still makes sense in many cases).

The differences of using the Master Area/Linked Area compared to the traditional method are the following:

1) Always up to date: The linked area (interior) shows exactly the master area (=exterior) on all squares that you have not specifically changed on the linked aera. This is dynamic and continues to be true even after you have created the linked area already. So, if you make a change to a master area this change is transferred over to all areas linked to this master automatically.

2) Build in scale:This allows building interiors while maintaining the exact same scale as the exterior. This is because - de facto - you build the inside within a clone of the exterior area and therefore are forced to maintain that scale automatically. For example, if an entrance and exit of an interior are five steps away from each other, so they will be when watched from outside.

3) Provide orientation and seamlessness: Depending on how you handle LoS, you can still see (parts) of the outside world from within. This provides orientation and allows a seamless transition when stepping out, ie you see the outdoors you step into before you do that step.

4) Setup transitions just by clicking, including graphics: As a linked area (indoor) can only have one master(oudoor), it is possible to place transitions from link to master by doing a simple single click (and maybe a few more for rotating the transtison direction in 90 degree steps). This sets up the very same transition - just in opposite direction - on master area (oudoors), too. So, with one click you place both transition triggers at the same time.

5) Cozyness : The master area (outdoor) is dimmed while you are on the linked map (indoor). This gives the linked area (interior) a cozily illuminated look (or so I like to think).

This list also shows the drawback of this system: It's forcing building in scale. Oftentimes you will on purpose change scale when e.g. stepping inside the abstract representation of a house. This is where the traditional system makes much more sense.


You will finde these new buttons in the area editor (right where the "PaintTiles" or "Height" buttons are):

1) Clone button
When you press the clone button a new linked area is created - it automatically appears in the left hand area list. Its name is the name of the master area (ie the current area) + _X_", where X is a counter that simply counts the clones that have been done of this amster (current area). Please note that when you delete a linked area, the counter is not reset. So you might end up with "exampleArea_0_" and "exampleArea_2_" if you deleted "exampleArea_1_" before you created "exampleArea_2_" via the clone button. Do not let this irritate you - the only purpose of the counting is to give unique names. As of now, an area removed from area list via Remove button is not deleted from the module's area folder. If you want to trim down size of your module, you have to delete it manually afterwards.

When looking at your cloned area (linked area, Interior) now, you will see it's
a) filled with the red letter "L" (for Linked Tile) on each square (can be toggled on/off via Show Grid button).
b) missing all mover props from master (otehrwise these would exist double time, roaming where they are not supposed to),
c) has all tiles set to LoS blocking by default (you can change this) and
d) has a very dark, dimmed look (an additional indicator for a linked tile).

The rest should be 100% identical to the master area.

Please note that the Clone button only works for areas that are not links thmeselves. In other words: You can only clone masters. There are no clones of linked areas, no links of links. A master can have any number of clones/links though.

2) Linked? button
Now, the Linked? button is a toggle for entering Linked Tile paint mode. When in Linked Tile paint mode, a right click removes the linked state from a tile, unlinking it. The red "L" will vanish and the tile will also get brighter (normal brightness). A left click will restore the link state, linking the tile back to its clone on master map.

Linked tiles dynamically use the graphics and height levels of the corresponding master tile (at the same x,y position). In case you do not see a recent update you made to the master area, just press the Synch button (see also below) to refresh the graphics on the linked area absed on current stae of master.

You will want to unlink those tiles that shall form your new room/cave. Now, there are different strategies how to proceed best. I will just decribe here how I build the little cave in the Fresh Template module's starter area:

For starters, our room/cave needs walls surrounding it (minus the exits/entrances, of course). The stone mass to cut into, forming your walls, eventually should already exist on the master area. Imagine yourself being a sculptor, you place the rock to shape on master. On link, we start cutting into his rock. "Rock" in this case means an elevation on master area that is at least one height level higher than the square touched by the exit/entrance light cone. Cut into this rock on link now by
a) unlinking the squares that shall be the floor of your room/cave Network (plus also unlinking you entrance/exit square which is respectively the first square outside your cave),
b) lowering them to ground level of your cave (or leave pillars standing or do extra pits, whatever you like),
c) remove their LoS block (or keep it for e.g. pillars) and
d) paint them with a new tile graphic fitting your interior floor type.

This way you can dig out your cave (hopefully) very easily. What still is missing are your entrances/exists. That's what the next button is for :) :

3) ToMaster button
The ToMaster button is for building entrances/exits (transition triggers with graphics). It works only on a linked map. When clicked on a master (ie any map that is not a link), it simply does nothing. On a linked map though it acts like a toggle for painting entrances/exits. Once acitvated, a left click places an exit/entrance, another left click rotates rotates the already placed entrance/exit. A right click finally removes an already placed entrance/exits.

Please note that the functionality is a bit buggy yet, sometimes only placing the graphics but not the transition trigger itself. A correctly placed trigger has a green square around it. If you fail to see this, just press the toMaster button again, making sure you are truely in toMaster mode for a fresh entrance/exit, place a new one on the broken one (ie teh one with only graphics). If you want to delete ll of it, just do a right click now.

While placing an entrance/exit on a linked area, the corresponding entrance /exit on master is automatically placed by the code, too.

Speaking of graphics, an entrance/exit on master area looks different than on linked area:

Representation on linked map: consists of a light cone (getting broader in direction of outdoors), a letter indicating the direction (N,E,S or W, only visible in toolset) and a green box for the transition trigger around it (only visible in toolset). These elements are all right on top of the transition trigger itself. You will want to place the trigger (ie entrance/exit) on first outdoor square outside your cave walls.

Representation on master map: the light cone and the trigger (with green box) are on different squares now. The light cone is exactly on the x,y loaction it has on linked area, but the trigger is oriented one step inside your interior (shifting its position if you rotate the exit/entrance on linked area). It also shows a number now (starting with 0) instead of a letter. The number is the counter number contained in the area name of the link that this transistion leads to. This way you easily see which links are connected to their master by which transition triggers. Also, inagme the palye rwill not see the green box for the trigger, but - like for a bridge (see height system) - a green rim light is shown, so that the player can better grasp that he can step into a mountain/house/structure.

Please note that on master your trigger will appear on a square "inside" your rock/house/structure, and the light shines out of it. This trigger will onyl fire when the palyer enters it from the correct direction (this way you can move "on top" of the trigger with out firing it, like walking on top of a bridge).

Mover AI cannot use this trigger and will therefore simply ignore such entrances/exits, ie it will stay on the master map.

4) Synch button
Finally, the Synch button updates the graphics of an area, drawing information from its master or - when it comes to new transitions -from its links. Please note that the synching is also done when saving (unless you close an unsaved area beforehand).


Finally, two ideas for inspiration (I yet have to try myself):

1) Towers
A tower could be realized as a stack of several linked maps (all linked to the same master). The levels of the tower will need to be connected via traditional transition triggers (ie NOT via ToMaster) button. This way all tower levels share the same outdoors and wall structure, all in scale. When reaching the roof (and it is open to the sky) you can remove all LoS blocking atttributes, granting full view to the surrounding lands again. Peppering the tower with a few windows (see below) will make it feel even more tower-y, granting peeks at the outdoors from time to time.

To have high towers appear high, you could grant them manual shadows on master, extending these beyond the normal range limit of about half a square. For their roof Level, you could paint blurry looking tiles (or maybe brighten them up extremely).

Also, you can make "high bridges" by using linked maps that extend beyond the normal tower frame. For foreshadowing them on outdooor ground level, you could simply paint a ground shadow on the ground which they bridge high up in the air.

2) Windows
A window can be done as a non-linked tile, painted inbetween two linked wall tiles. It would make sense to make it non-walkable and not LoS-blocking. To make it appear more wndow-ey, mayhaps paint it as only a small opening flanked by walls, so the player gets the idea he cannot walk through intuitively. Finally, make a cone of the linked, outdoor tiles non-LoS blocking, so our window grants a view :) .
User avatar
youngneil1
Backer
Backer
 
Posts: 5078
Joined: Sat Dec 08, 2012 7:51 am

Re: Master Area/Linked Area System ("blend away ceiling")

Postby youngneil1 » Mon Apr 10, 2017 4:26 pm

Done :) .
User avatar
youngneil1
Backer
Backer
 
Posts: 5078
Joined: Sat Dec 08, 2012 7:51 am


Return to Users Guide and Tutorials

Who is online

Users browsing this forum: No registered users and 2 guests

cron