Advertisement

How To Do RPG Interiors

Started by May 16, 2015 08:33 PM
12 comments, last by Servant of the Lord 9 years, 3 months ago

Hello! I am deciding how to do my 2D RPG interiors.

Do you prefer when you touch a door in an RPG for the screen to go black, then fade back in to a different "zone" which is the interior of the house (like the Pokemon games)?

oiud5c.png

Or do you prefer when you touch the door for the screen to stay in the same location, but for the roof of the house become transparent so the interior is visible? I am leaning towards this option just because it would require less power, space and will be easier to edit.

FakeRoof2.png

It depends on how important the location is. If there's just an item vendor then I'd rather not deal with the area transition. If it's an interior where I'm going to do some exploring, solve some puzzles or for some other reason need to spend a lot time there, then I prefer a separate area.

Advertisement
In my opinion SiCrane is right. If it is an small area with a few floors, I would prefer the transparency. It is annoying (for me) to get into another zone, just to get one item or talk to an unimportant person. Additionally you could leave and enter the area easily and if you are in the wrong house you just walk out there. With transitions this is just annoying.
But if there is an unique looking house with lots of floors (like an hotel or labyrinth) you should use another zone.

In my opinion SiCrane is right. If it is an small area with a few floors, I would prefer the transparency. It is annoying (for me) to get into another zone, just to get one item or talk to an unimportant person. Additionally you could leave and enter the area easily and if you are in the wrong house you just walk out there. With transitions this is just annoying.
But if there is an unique looking house with lots of floors (like an hotel or labyrinth) you should use another zone.

Agreed. Players want to explore the map, not sit through the same transition effect over and over as you walk from one room to the next. I would only do a transition between maps/levels (eg, from a town to a forest).

There's one thing you have to consider though. If you do the transparent roof option, you're going to need to make your houses much bigger than they otherwise could be. Consider a game like FFVI where you had nice looking towns with very small houses:

http://s249.photobucket.com/user/Ramses30/media/Final%20Fantasy%20VI/ff6wallpaper014-2560x1600.png.html

Once you walk in those doors, the interiors are much larger because they are essentially their own map. You can't make a 3x3 tile house work if you go the transparent roof option. Its something I never really thought about until I started working on my own game that did this, and realized that medium-sized houses pretty much take up an entire screen worth of space.

Hero of Allacrost - A free, open-source 2D RPG in development.
Latest release June, 2015 - GameDev annoucement

It depends on how important the location is. If there's just an item vendor then I'd rather not deal with the area transition. If it's an interior where I'm going to do some exploring, solve some puzzles or for some other reason need to spend a lot time there, then I prefer a separate area.

I wish more triple a games would take this advice. I hate waiting for loading just to talk to a vendor.

Radiant Verge is a Turn-Based Tactical RPG where your movement determines which abilities you can use.

Yep I will just mirror and say you want as few load screens as possible, so make good use of your space (if it is limited and you can't just do a seemless open world).

Advertisement

There's a case to make for using fades when changing zones, and there's a case to make for not using fades. There's a case to make for using separate zones for interior and exterior, and there's a case to make for placing both in one zone.

There is no objectively better option here, and you should not base your decisions on a handful of people's preference on a game dev forum (or any forum, for that matter). Define your vision clearly, then analyze your possibilities, and use the approach that best supports your vision.

I think its less about picking one or the other, and about doing what's right in that instance. The main issue, IMO, is transition time, and if you go to a "separate area" (a cordoned portion of this map outside the main area or a different map entirely) its not difficult to make the transition fast and smooth.

Doing transparent roofing is necessarily limiting -- you have exactly the outside footprint of the building to build an interior that suits your design needs. I would suspect that you will very quickly find yourself making building exteriors much larger than they need to be to support larger interiors, and that will knock-on to all the buildings too, regardless of what goes on inside them, just to maintain a sense of scale. Another difficulty is what to do about buildings with multiple floors or basements -- how will your engine handle those?

IMO transitions to separate areas are best for consistency and to avoid the problems I've mentioned with more grace. By pre-caching these separate areas while the player is exploring the external areas you can make sure the transition is fast and smooth.

A different solution to the "avoid separate areas for quick things like vendors" is to give them a booth, market-stall, or olde-timey wagon-carriage to sell their goods from, rather than from the inside of a building.

throw table_exception("(? ???)? ? ???");

I wonder if there is a good compromise, granting the benefits of both?

I imagine walking into the door, and out of the center of the player/door, a new screen (but same "map"/"area"/"zone") instantly fills the view. No loading, no waiting, but still infinite space. You'd still be able to see the original map you are on, but in the edges around the screen.

Imagine here:
21ca6e3ef2.png

And you walk into the door and get something like this:
a3d8ab8f55.png

Basically, you'd have to keep track of two cameras - the "outdoor" camera, which gets locked to the door of the building you entered, and then the "indoor" camera, for walking around inside. (Or just render it once to an offscreen texture, and keep re-drawing that as the background).

You'd still want an actual separate zone for dungeons, large castles, and etc...

[Edit:] Here's a better demonstration of the interior having infinite space.

327859d0c4.png

Though it practice, I'd want less screen-space wasted on the edges.

Thank you for your advice all, I think I am going with the majority view here and keeping the invisible roofs unless it is a large important area.

Nyaanyaa- I don't necessarily take advice from these forums if it conflicts with my vision. I mostly ask questions here to see if there has been some aspect I have totally neglected to consider due to my inexperience. For example, in this exchange I realized I had not considered the particular problem of space (with no transitions as Roots mentioned) that the buildings would have to have an exactly matching footprint for the interior and exterior, whereas with a transition to a different physical space the houses could be smaller on the outside. I hadn't factored that into my decision-making until this talk, so all little questions have value.

Fortunately my game communities will suffer from quite a lot of poverty, so the homes will be small inside and outside, (not much of a middle class).

I do like Servant of The Lord's blended design, but it would likely be just outside of my experience to implement elegantly at this point. Another reason I like asking questions here; I always get ideas that may not work for me now, but are worth holding onto for the future.

The problem of basements and second floors will be a tough one though, I'll hit it head-on and be back when I find an obstacle!

This topic is closed to new replies.

Advertisement