CNV Development Blog (9/6)


9/6/2016 - God.. bless this country.. there are a lot of bitmap sprites in SPRITES.FLX. They’re aggregated into blocks with addressed filenames like (xyz-001, xyz-002, etc). Thankfully, that means that while you may not know what you’re looking at (is that a door or part of a wall) you at least know to correlate image files. So I’ve been sorting them and the folder structure is rather lengthy because not only do I have to break them down based on kind of sprite they are but I also have to take into account orientation (~26* vs ~154*) and style (solid metal wall, grated metal, wooded, glass, whatever).

The weapon sprites? I’m not going to even touch those right now because 1) I don’t know the names of the weapons and 2) I don’t have terminator T-1000 vision and identifying these < 20×20 bitmap images is difficult!

I've also updated my collision code to take into account situations where opposing collision forces would produce object passthru bugs. Now opposing forces cancel eachother out and ensure that the player's position returns to their previous x/y cords.


8/22/2016 - Just cleanup and optimization. I did implement a camera view that follows the player as seen in the below video. I'm not sure if I can implement a camera view as in the originals but based on feedback I can investigate.

...and I created a DOS-like loading screen which while obviously not being necessary was a fun distraction.


8/19/2016 - This video demonstrates that the approach works not only for type A and B objects but also doesn't break at junctions/intersections of the objects

It is my belief now that I can begin winding down my work on collisions and start implementing other things!


8/18/2016 - Ended up ditching a large chunk of the collision code in favor of a more simplified approach. I've created a video to demonstrate!



8/15/2016 - I had to stay at work late so I ended up working on making the zones account for isometric view and tweaking when the zones are activated. The result I think is much easier to maintain and prevents headache. I'm able to get the displacement to 1px.. which is a little insane so I'll probably make it bump the player character away from the object by 3px. I found out that my math skills are very rusty which is kind of funny given the amount of programming I've done over the years (granted that work has consisted of interacting with APIs, working with filesystems and databases, etc - nothing graphically focused).

I need to port the code to work with the opposite oriented objects (no clue how to describe them other than saying forward slash walls and backslash walls). Then I get to arrange a room full of walls and see if I can test all the various vectors.



8/13/2016 - Spent today playing with some ideas I had on how to handle collisions and depth without placing "bumper lane" invisible barrier objects across the map. So far so good - each object, in this case industrial walls, calculates depth and trigger zones at runtime. It looks like its flexible enough to work with shorter and wider objects as well.

Collisions are smooth so the player essentially glides across the object depending on their vector. I'm not sure how low I can make the displace amount - in the original game I've seen it displace you 5-25 pixels depending on how you encounter a wall. Right now I've got it set at 7 pixels.

There's also zone awareness now (as shown by the triangles) so the player object knows when it is in front of or behind an something (beyond just comparing self pos y with target pos y).

I'm not sure where all of this leads but I found it very fun and a good change of pace so I hope to continue the work and maybe we'll have something to build on.


  • screenshot.png
    160.8 KB · Views: 10
  • screenshot2.png
    157 KB · Views: 12
RE: CNV Development Blog (8/16)

Hey JC! Thank you - I'm trying to keep the project alive, working on small bits at a time - figure if I can complete bite-size goals every other day it will keep me from being burned out and also progress the project. We'll see what happens.
RE: CNV Development Blog (8/16)

Good approach, maybe the only possible when you have a regular full-time job. :)