Showing posts with label platforming. Show all posts
Showing posts with label platforming. Show all posts

Sunday, July 10, 2011

In Profundis Progress 7/9

Current work on the game concerns mainly refining the platforming. One of the complaints people had upon seeing the videos was that the world looked blocky, especially falling water. While I haven't decided on the best solution to illustrating falling liquids yet, the platforming change should make sloped surfaces a little more feasible. Emphasis on "should;" it's going to take some work regardless. Sloped surfaces are deceptively tricky to implement in the way one would expect (which is largely based upon Mario 3) in a tile-based world.
Also, I've switched the internal representation of the world fro a Python list-of-lists to a numpy array. The result is a very slight performance boost coming from reduced overhead, but more importantly it simplifies the code a bit, and should be easier to optimize in Cython.
Both these things took rather longer that you might expect, from tracking down bugs and charting out code. Still, progress is such that morale is up at the moment.

(EDIT: Fixed date, which was incorrect [again] due to confusion over the current Peanuts Roasted date.)

Thursday, July 7, 2011

In Profundis Progress (7/7)

More bug fixing in the wake of the switch to more integer-based math for platforming. Internally actor coordinates are switching from pixel-based math, with decimals handling sub-pixel movement, to 16 subdots per pixel. This means tracking down a few places where values are translated between pixel-level representations and cell-level.
The next thing I'm working is making platforming as bulletproof as possible. Sorry if it seems like it's going slow, I am but one person. It is happening though.

Tuesday, April 26, 2011

In Profundis progress (4/25)

I've gotten the platforming part working acceptably for now.  I've added one more task to accomplish before making the new video and going on the ALL-OUT MEDIA BLITZ which honestly just includes posting to Reddit and submitting to Rock, Paper, Shotgun and maybe Tigsource.  But that's because it's one of the key features that I think will make In Profundis worth playing: the limited visibility routine.

When you can see the map around you on your screen filled it, the feeling is entirely different when you can only see the area right around you.  But just limiting what is shown to what you can see at a given instant, I think, is not fair to the player.

My compromise is a roguelike-style on-screen "map memory" that shows places you've seen before but can't now with a different graphics style.  The idea is to present those areas with a "hand-drawn" graphics set, like sketched with a marker, but for the time being they're displayed with schematic-style shapes with line shading.  The graphics aren't bad I think, but I need to work more on the visibility algorithm.  It works currently acceptably in real-time, in fact I'm often seeing a substantial time gain since I don't have to draw the parts of the map that haven't been seen yet.  But it's a little _too_ realistic I think; for gameplay's sake, I think it would be better if the player had a little extra visibility, maybe a little around corners.

Here's a screenshot, which is also the first public viewing of the little guy who's the placeholder I'm using for the player (he's crouched down in the middle of the screen).  Click for full-size:

Monday, April 25, 2011

In profundis progress (4/24)

Today's lesson: Don't make the platforming engine more complicated than it has to be, especially while in early development.  Thus I've, for the time being, taken out some of the more complicated aspects of state changes from crawling/swimming to standing/walking.

Today I've been getting swimming physics working better and (just now, technically on the 25th) working to cause water flow to reflect on the player.  There's still a state change problem between swimming and standing though that causes the player to get embedded in the ceiling when there's not much vertical space between the water and the roof.  Work continues....

Sunday, April 24, 2011

In Profundis progress (4/23)

Basic platforming is working satisfactorily.  Today I spent working on implementing swimming and crawling.

Crawling is necessary because of the variable heights for rocks and sand; it will allow you to enter passages as low as 3 levels high. The tradeoff is that movement is much slower while crawling... which isn't a huge drawback really.

Swimming lets you move fairly freely in the water.  Eventually the tradeoff will be that you can't live for long without coming up for air.

Both states actually change your character's dimensions a little.  Since you're laying down, effectively, in both postures, your height goes down while your width increases.  I could have implemented this as just a height change for crawling and a Mario-style vertical swimming pose, but it's a matter of detail.

That is the point where I think I'll be able to make a new demo video.  It still wouldn't be what I'd call playable, because without equipment there will be many inescapable areas.  That's by design -- real life cavers live or die by their equipment, and not every situation is escapable.  In game terms, I'm planning on having a "call for help" option where you can call for rescue if you get trapped in a truly inescapable situation, but at a huge monetary cost.  (Maybe even a cost that increases the more times it is used?)

Friday, April 22, 2011

In Profundis progress (4/21)

I was going to make a Reddit post on the game today (yesterday) but wouldn't you know it was down all day.  So I spent the time working on the framework for the platformer engine.  The smooth scrolling is done, and so is the basic artwork for a placeholder character.  Hopefully I'll have something more to show tomorrow (today).