Okay, so I spent the last three days rewriting the way in which unused chunks (groups of bricks) are stored. In the last release of the game, I introduced a feature where all chunks are saved to the hard drive rather than constantly loaded in memory. This significantly improved performance on the Windows player, but completely broke the webplayer which cannot access directories or write files. Well, I found a workaround. In the next version of the game, Alpha 0.31, there will be a webplayer. You will no longer have to download the full stand alone game to play it. It also means that the game will be playable on Macs.
Also, I just finished an editor-only algorithm which gives me the ability to save level files from changes that I make to the world in-game. That is, I can play the game, modify the bricks, and then save the changes into existing level files, or make new files as necessary (a level file is just a file that stores props and prearranged bricks). It was actually very complicated to implement, and I spent the better part of the last two days debugging it. For you, this means that I'll be able to churn out different areas of the game at a faster rate, as I will not have to manually create level files.
Now I'm going to bed. I'll post the webplayer once I do a bit more debugging.
This updated version of Against the Wall includes two destinations (lift station and a settlement), clouds, xbox controller support, overhauled chunk generation, an improved save system, three new brick types (static, short, medium), and a number of other bug fixes and tweaks.
A webplayer version is not available at this time. This game works on Windows PCs.
Download Version Alpha 0.3
Man, I just spent the entire last week doing nothing but coding and working on this game! Several days were devoted to art. The player will be able to walk around a small town during the second level of the game, more about 2/3 of a kilometer up from the starting point. At that point in the game, there will be a few new brick types and hazards to avoid. Now I have to think of an objective for this release... perhaps the player has to grab a flag or ring a bell on the far side of the city? I just need some winning condition to put into place. The final (commercial) release will feature a number of stages with one clear story-driven end-goal. Hopefully I can gather enough interest to warrant seeing this project to its completion.
Also, I let the spam filter up for a couple of days and was flooded! I've set it back to its original state, meaning that if you submit a comment, I'll have to manually approve it. Wish I could leave commenting open, but that doesn't appear to be an option.
I spent half of today on coding and the other half on finishing up some textures for the windmill-elevator contraption. As I mentioned yesterday, the elevator in this first building functions like a ski lift. The elevator car has four arms. These arms grip either the ascending or descending parts of a large belt drive for mobility.
I also experimented with a few dynamic sky plugins. CloudsToy and Skydome. Skydome isn't really satisfactory as the sky does not move with the player, eliminating any sense of depth (similar to the current static sky). CloudsToy is a free volumetric clouds program that generates a wide variety of beautiful cloud formations. However, the cloud generator cannot follow the player and can only work within a boxed-in area, meaning the clouds can only be confined to a tiny spot on the world.
I have a solution to this problem that I'll implement tomorrow. I'm meeting with a few friends tomorrow in New York, so I won't get much done until Friday. At that point, I hope to work on the mechanics of the elevator system and clean up the game for the 0.3 release.
I spent Tuesday working on new art for the game's windmill starting area. The first building will essentially function as a machine powering an elevator that will lift the player high into the sky. It's basically a vertical ski lift that reaches a half-kilometer or so up the wall.
Making the models was no big deal, just time consuming. My real problem is with the textures. I really dislike texturing objects. I'm using Blender, which is a free but flawed 3D modeling program. It is a pain to get everything ready to bake a texture onto an object, and the results never look satisfactory. This is perhaps more due to my lack of experience... though I have been using some version of the program for several years now.
If there is anything that I am willing to spend money on, out of pocket, it would be the texturing of art assets.
I'm going to be coding again tomorrow (today). I'm pushing to get version 0.3 out so that I can get some feedback on the brick types.
MarbleMind sent this video to me in earlier in July, though I'd share it here:
Free PC Gamers has posted a link to my game! I've been getting some extra traffic as a result of this. Thanks guys!
The next version has been slow going because of work, but this is my passion, and I need to find more time for it (code on the train, perhaps?). I've integrated a new system in the game that allows for the placement of static objects in the scenes (in-game). I am using this functionality to build some levels that will direct gameplay along a story path.
More to come. I plan on getting the next iteration out in the first few days of August. Hold me to it!
I just realized it's been a nearly a month since my last update! I've been working for a web company this last month and time just slipped by. I've been working on the project in what spare time I have, ut progress has been slow. Changes have been mostly invisible and deal wit optimization, such as a modification of the chunk script to incorporate the geometry of non-moving bricks. A particular obstacle for me has been a custom key configuration in the options screen, so players can set what keys they want to use. Unity does not expose the values of its input manager, rendering it nearly useless for commercial game releases. I've written a new one from scratch complete with GUI interface. When I find the time, the next step would be to add static objects to the chunks and save them to the saved game xml file. Stay tuned!
I feel like a rockstar! After 2.5 days of programming, I've finished rewriting the procedural generation code so that the seams between the chunks all but disappear! Before, chunks were perfect squares of 64x64 brick spaces. Technically they still are, but I've changed it so that the bricks on the top and right-hand side of the chunk can now extend beyond the edges. The left and bottom sides calculate this same overflow of bricks, but uses it to cut away at the existing brick spaces to make room for the bricks in the chunks that exist to that side. It's kind of hard to explain, but now the entire world is essentially a giant jigsaw puzzle.
Visible seams would reduce immersion since you could clearly see where one chunk ended and another began. Also, by extending the bricks along the seam at the top of the chunks, the player could create a completely flat path that could stretch infinitely, breaking the challenge of horizontal movement.
The hardest part of this was getting the overlapping chunks to communicate to each other to decide which chunk a brick will extend from. Coding this was so incredibly frustrating, but this feeling of accomplishment was well worth it.
- Brick-freezing: the ability to mark a brick so that it cannot move any longer. Useful for constructing houses.
- XBox 360 controller support.
- New custom shaders that use detail maps and vertex colors.
Now that voting for the Ludum Dare is over and the scores have been released, I've decided to put up a build of the newest version of Against the Wall. You'll find the web player on the Play page. Since last week, I've added a windmill building that protrudes from the side of the wall and serves as the player's objective, added some basic quick-save/quick-load functionality, tweaked the sound volume a bit, and created some minimal tutorial text. For this release, I've removed complex menus such as the inventory. There simply are no items for the player to pick up or use yet, besides the wand. Also, I have yet to implement an options screen that would allow players to tweak their game settings. I hope that the current sensitivity level/control scheme will work for most players. This will probably be my next task, before the MiniLD hits this weekend.