We're using a fairly basic but effective per-pixel lighting system, and some colored halo effects to simulate colored lighting (which the lighting system doesn't support). Here, the room is being illuminated by a campfire and the player's flashlight. You can also see our "poor man's lightbloom" as applied to glowing mushrooms down at the bottom of the screen. The blue bar at the top is a placeholder for a "visibility gem" system that is probably going to be replaced with a more sophisticated "enemy awareness" system, like the one used in Far Cry 1. The two boxes at the bottom of the screen represent what your holding in your two hands (in this case, they are empty).
Here's the same room, without any lighting effects. Not nearly as interesting, as you can see. Ultimately, the game will have a lot more tiles for broken walls, tiles, etc. It should also be noted that anything in this shot that should be able to be picked up, can be picked up and often used.
In this shot, the overall lighting level has been increased.
Another shot at low light levels, with another fire. Inside areas will likely be lit by some sporadic lighting from old industrial lights or furnaces. The Swamplands functions on methane gas (of course), and some areas are still generating power.
The HUD, which is brought up with the 'q' key. Everything is manipulated in real time, as in System Shock 2, so it's important to find a safe location before messing with your inventory. As previously mentioned, many things can be picked up and used. The bars at the top represent (from top to bottom) your health, hunger, thirst, fatigue, and "infection" (which functions very similarly to Fallout 3's radiation). Things like a logbook and map are still being discussed for inclusion.
Impressive. Are exteriors / interiors connected, or separate 'cells' like in TES?
ReplyDeleteThey will be separate cells. It makes a lot of things easier that way. The only thing that you really lose is that anything that's going on outside will freeze when you go inside, and resume exactly as it was when you exit, even if a whole day has passed. But while this is far from realistic, the advantages (especially where the engine and level design are concerned) outweigh the disadvantages.
ReplyDeleteThat's perfectly fine and I can see how it can make work easier, however are enemies going to be able to follow you inside from the outside? Or at least are you going to randomly change their location after some time inside (if player was running from them?) Because, you know, an enemy waiting for me a year at my doorstep... Well it sucks :D
ReplyDeleteProblem is, it's practically impossible to have objects in a room to follow you into another room. That is, you CAN bring objects with you, but you can't have them actively follow you AFTER you've gone into another room. To my knowledge, there's no way to access objects unless they're in the same room as you are. It would be possible to have a variable that determines whether enemies randomize their locations after a period of time... it would be a little irritating to code and get working properly, I think, but it would be possible. Thing is, I'm not entirely convinced that it's a bad thing that you aren't able to just go into a building and hide for awhile and have all threats disappear. This gets a little more into the underlying philosophy of the game, which I'll discuss in another post. Basically, I WANT the player to feel trapped, if they end up in a situation where they really are trapped. The balancing act is making sure that there's almost always different ways to get out of any situation that might emerge.
ReplyDeleteIt's something I'll have to think about. I think a lot of it will depend on how things end up working in playtesting.
"you can't have them actively follow you AFTER you've gone into another room"
ReplyDeleteIs that some sort of limitation of gamemaker, or a limitation you imposed upon yourself when making the game?
At any rate, as for this particular feature, feeling trapped is one thing, but if you bring enough resources along with you, wouldn't it be logical to be able to 'outlast' your pursuer?
Complete dead ends are a bad, bad design, even by decision. Anywhere, including roguelikes. By giving player an option to outlast an enemy, and he doesn't have resources to do that, he won't think that it's game's fault, he'll think that it's his fault, which is, IMO, good design.
Of course, I'm just throwing suggestions around in here, I should probably wait for the post you speak of and shut up :D
Yeah, it's a Gamemaker limitation. You can only deal with one "room" at a time, at least as far as I know. Even if there is a way to have another room active at the same time, it would be very hard... and would probably take a gigantic toll on memory as well, given the size of the rooms.
ReplyDeleteAs I said, I'll have to think about it. If it will really result in the player being backing into a dead end, then I'll change it. But if it simply forces the player to think of another way out of their situation, then I don't think it's a bad thing at all.
See? That's why I use as little tools as possible. They have limitations. That's why you should look if there's doesn't happen to be some sort of group teaching SDL around the internet *wink wink nudge nudge*
ReplyDeleteYeah, I wonder where I would find such a thing ;)
ReplyDeleteToolsets always have limitations, but they also bring a lot of advantages to the table. There are innumerable ways in which Gamemaker makes the development process easier. I don't think I'd be able to develop a game of this scale otherwise. Again, it leads back to the fact that I'm a pretty lousy programmer in the grand scheme of things.
We have at least one more game that we're going to release through Gamemaker, after Swamplands. After that, I might move to C++ for more control. And if finances do well, I might even be able to hire another programmer. There are a few dream projects of mine that I'd love to do a kickstart for, but would need a few competent programmers to realize them (the moment you move into true 3d, everything gets exponentially more complicated).