New user interface in motion - (20. July 2010)

As promised some weeks ago I finally got around capturing a video of the totally new user interface that I decided to put into “Phase 2″. As mentioned earlier it’s not only a visual “upgrade”, making the UI more sleek and futuristic but also adds a lot of information to the default view and also brings in lot more usability. As you can see in the video most parts are already done, though there is still some work to be done before I can call it finished. But it’s already coming along nice and will surely add a lot to the final game.

(Note : The video is available in HD, but sadly only at 30fps, seems like youtube caps videos at that framerate)

And amongst other things I removed the nation backdrops. Yes, I did put a lot of work into them (I’d have to guess, but I think several hundred hours) and they look quiet nice (though I was never really satisfied with all of them), so you may think it’s stupid to thrash so much work (along the countless hours of work I thrashed when doing the new UI), but I wouldn’t have removed them if it wouldn’t have added something to the game. And this “something” is a feature I’ve been getting several requests for, called “better global overview“. Due to the old backdrops the globe was fixed to a single position and was also limited in terms of zooming. But by removing those backdrops (and making the game partly look like one of the old betas) you can now not only freely rotate the globe, but also drag it around freely and zoom in and out by a larger factor. This adds a lot of overview as you can now just drag the globe where you want it and zoom in much closer to get a better look at the regions themselves. Take a look at the video and you’ll notice what I’m talking about.

Amongst these bigger changes you’ll also see the nuke in action in the new video. Nothing really new as I already had videos of the nuke prototype, but along with the nuke you’ll see something new, namely physical values. Something that I recently changed were the regional values that felt too abstract, so instead of having a factor for e.g. of population you’ll now see real population counts, that should make it easier to relate those values.

So you see it’s progressing. Although at times I feel like I do a lot of work for nothing (like recently when spending my rare free time for fixing stuff that I broke at some point), even small steps add, and hopefully I’ll have this game done at some point or at least a beta release I can build upon (which is actually my current plan).

“Phase 2″ running on Linux (using WINE) - (8. July 2010)

After releasing “Phase 1″ (which was actually quite some long time ago) several people were asking for Linux support, but actually I wasn’t keen of having to port the game over to Linux (and I haven’t changed on that since then), so there never was (and never will be) a port for Linux. And as it seems it was also not possible to get the game running using WINE due to the fact that it used GDI+ for doing several imaging related things.

But just recently I finally threw out all references to GDI+ and decided to set up Linux on an old PC that I use to test my games against older lower-end hardware specs. So after the torture of getting OpenGL hardware acceleration up and running I got everything in place and started “Phase 2″ using WINE and guess what, it actually worked! Although the performance is not that great it’s still nice to see, especially since the hardware is very low end (AMD Athlon 2600+, 2GByte RAM and a GeForce 4 TI440 with 128 MByte VRAM) and doesn’t even support OpenGL pixel shaders (hence the dull look of the game) I was actually glad to have it running.

So at the end of the day this means that “Phase 2″ should be able to work with Linux using WINE, and when you have the right hardware or if you’re willing to trade-in some visuals for performance it should be possible to play “Phase 2″ with Linux. I hope some people out there refusing to work with windows are glad to hear this.

Quick interception - (5. July 2010)

Time flies by, and so the last posting is already collecting dust. As usual I’m not getting much time to work on “Phase 2″, but I’m making steady (though little) progress on an (almost daily) base. So the new user interface I’ve been talking about in my last posting is in (with a few minor things to be done and sorted) and it looks stunning, adding a lot to the game, both in terms of visual style and usability. And I’m also stitching all the parts together (again) so that I may be able to release a working (up until recently you couldn’t even really play a whole game without crashing and such) within the next few months. I’ll have to admit though that it took me longer to implement it as projected, but every time I see it I know all the additional work was worth every minute spend on it, and I hope that this translates to players of “Phase 2″ too.

And where light is shed, there’s also usually darkness as well, and this time it’s Turbo Delphi. I guess I should’ve never switched over from Delphi 7, but the bigger the game gets the more problems Turbo Delphi has coping up. The IDE is running out of memory at least twice a day (it starts out with roughly 60 MBytes of memory and then goes crazy up until 1.4 GBytes of memory are used by it). I installed all hotfixes and DelphiSpeedUp and “Phase 2″ is not causing any memory leaks, so I guess it’s the fact that Turbo Delphi was never meant to be used for bigger projects. And yes, I also tried switching to Lazarus and FPC but dropped the idea. I like FPC (with all their advanced stuff that’s been promised for the Delphi compiler ages ago and never came), but I never liked lazarus, so I don’t see the game going this route anytime soon, so I guess I’ll have to stick with Turbo Delphi until “Phase 2″ is finished.

So stay tuned, I’ll also have a new work-in-progress video up soon that’ll show the new GUI in all it’s glory.

The old GUI is history… - (5. May 2010)

Yes, you read that right. In a “shocking” turn of events I decided to scrap almost the whole old GUI for “Phase 2″ in favour of a new and better one. Most of you might now ask if I went insane or so, but to counter this I’ll elaborate on why I scrapped the old GUI and decided to put a new one in :
When I’m not in front of my PC and working on “Phase 2″ (that’s actually the only thing I’m doing in front of the PC nowadays, no more gaming or such, spare time is rare for me) I always have pen and paper in close range so I can put down and work on new ideas anytime they hit me. Those of you that do game design (or anything related with design, art or such) know that you usually never get good ideas in front of the PC cause there is so much to distract you while in front of it. So some days ago I was relaxing a bit (watching the snooker world championship, congrats to Neil Robertson for winning it) when I suddenly got struck by a great new idea for a GUI redesign that would not only look much better than the old one, but would also add functionality and more information at the same time. You must know that I actually was never really satisified with the old UI, as the totally different looking windows (‘though they looked kinda nice) made the UI look messy without a real direction. So I got this great idea that would make the UI look like it was made from one piece and get it in line with the design of the main menu and the nation selection screen. So this is what my idea looked like on paper :

And so over the last three days I tried to press out as much spare time as possible to get a first implementation of that idea running within “Phase 2″, and although there is still a lot of stuff missing (but that’ll change within the next few days, it’s not really hard implementing this new idea), it’s already looking great, and it’s even animated, adding a bit of dynamics to the whole UI thing.  So before talking about the new functionality, here are two preliminary screenshots (with lots of things missing) :

As you can see it really changed a lot. But contrary to the redesigns of the old windows this one is not only a visual change but rather adds a lot of functionality as well as usability. In the first shout you can see the new “navigation bar” with all symbols to access the different gameplay areas  (and one new icon, more on that in the future, it’s nothing spectacular). But what you also can see is a lot of free space besides (and below) these symbols. And that free space will be used to permanently display important information. When it’s finished you’ll be able to directly see what global project you’re currently working on, which technology is being researched, how many units you’re constructing and much more, adding a lot of usability.
And on the second screengrab you can see what it looks like when a “window” is opened. Although you don’t get to see it in screenshots, this action is animated. If you click on a symbol, the navigation bar will slide to the right side of the screen to make room for the window while the window itself nicely slides to the left. Closing the window reverts it to the state seen in the first screenshot. Note that later on I also plan to move the globe to the left when a window is opened up to always have the globe visible.

So although the new design is still under heavy developement and missing a lot of things, I’m positive that it’ll turn out to be a good one as it makes the UI look like it’s made from one piece and also adds usability to the game. And another positive effect is the fact that it doesn’t take me weeks anymore to design visually appealing windows.

Some words about “Phase 2″ - (13. April 2010)

My first posting on “Phase 2″ for Projekt “W” in three months does not mean that I haven’t been working on it. Actually although my spare time is very limited (it gets worse and worse almost every month) I still try to squeeze out some spare time each day to do at least minor things related to “Phase 2″. And since event small steps sum up I got several things done towards a first release of “Phase 2″ and so I decided to upload some screenshots and talk about what I’ve been doing.

But I’ll start this posting off with some words on the slow progress of  “Phase 2″. I’m pretty sure some people have wondered why it takes so long releasing “just” an update to “Phase 1″ and why I don’t put out any intermediate releases. The reason is pretty easy, it’s a change of conditions in real life. When I started working on “Phase 2″ (shortly after releasing “Phase 1″) I had sufficent spare time to put at least 6~8 hours of work into the game every day without being really distracted, so I decided to start implementing all of the new features at once. And that’s the reason why there is still no release of “Phase 2″ in any form, cause nowadays I’m pretty happy when I’m able to put a whole hour of work into the game a day, meaning it’s taking forever to get a single new feature done. And since I’m not really into releasing a game with a lot of unfinished features there hasn’t been a single “Phase 2″ release yet. So if I had known back after releasing “Phase 1″ that, at some point in my life, I would have so few hours to spare for coding, I would have taken a total different release route, with adding only one single feature after another and releasing at least beta builds between. But since I can’t change that anymore I hope people will be patient enough to wait until all of the new features are in a state where I can release something that’s at least partly playable. And yes, I’m writing this cause I hope to be able to put out a beta release soon.

So after getting this out of my way let’s get back to business and talk about my progress on “Phase 2″. Actually I did a lot of work on the look of the user interface. As you might know I’m resdesigning all the game’s windows to make them look less like an office appliaction and more like from a game, and as of now only one window has to be remade (research), all other ones have been finished. Notably I’ve remade the windows for the region details (including different views for a region with and without a division attached), the window for army management and construction of military units, redid the information central window (again, as I didn’t like the first draft I posted in january) together with an additional sidekickpanel for enhanched statistics. I also (finally) got around remaking the awful UI elements for the battlefield GUI. So it now has a nice unit placement window together with a new control panel in the lower right. And I also got around creating a new loading screen. The old one was fixed and looked odd in resolution ratios different than 4:3, the new one is dynamically (and animated, the loading rings rotate differently) adjusted to the custom resolution. Nothing spectacular, but something that was on my mind for a long time. And together with the optical changes to the UI there were a lof of coding changes under the HUD, including the possibility to manually set polygon shapes for the visible, the drag and the closing area of a window. This was badly needed for the new designed windows with their custom shapes.

Finally, I removed the roadmap for “Phase 2″. You may ask “why?”, and it’s pretty obvious. That roadmap was too constrained for my taste and therefor didn’t not mirror my progress on the game. But on the other hand I uploaded my changelog for “Phase 2″. It’s a text file I’m logging what I’ve done on “Phase 2″, including miscellaneous stuff, bugfixes, balancing changes, additions and more. That file is always opened in my IDE and ever since I created it (note that it was created late after starting “Phase 2″ and therefore isn’t including everything I did) I updated it whenever I change, add or fix something of importance. Note that it’s written in german (cause that’s my native language) and therefore not very interesting for most of you, but it’s a much better showcase on my progress than the old roadmap. You can see the changelog here.

Omni-directional lights using cubemap shadows - (4. March 2010)

It looks like my dungeon crawler prototype isn’t actually evolving into a game, but much more into a personal testbed for more-or-less current rendering techniques (due to Projekt “W” I’ve been lacking in the field of recent rendering techniques a bit). And so one of the things I always wanted to implement were shadows for omni-directional light sources. I’ve been doing that with stencil shadows years ago, but stencil shadows aren’t the preferred way of doing this nowadays due to their limitations, including sharp edges (yes, there are ways to get around this, but they’re expensive in terms of computing) and a high demand for fillrate.

And I’ve also done shadow mapping some time ago, but back then only for a spotlight, and that’s pretty easy (basically it’s just a way of projecting something onto the scene). But omni-directional lights are a step further and It took me some time to get them to work. One of the hardest things holding me back were troubles using depth cubemaps in my shader. So now I’m using a normal cubemap (RGBA) for the light source and each face stores a custom calculated depth value (done in a separate shader) that’s then used in the final calculation to apply shadows to the scene (done in the same shader that does lighting and parallax mapping).

First dungeon crawler prototype (HD Video) - (26. February 2010)

Although it took me longer than expected I recently got a first prototype of a dungeon crawler, based on my recenlty published random dungeon article, polished up far enough to show it to the public.  Actually one of the biggest issue holding it back were the textures. It uses parallax (bump) mapping for giving flat surfaces a realsitic 3D look (it’s pretty much an extension to bump mapping), and for that technique you not only need a color map and a normal map but also a heightmap for each texture. After not being able to find good ones around the net I decided to quickly do the textures myself.

A quick overview of what’s in this prototype : As always it uses OpenGL and let’s you walk around a randomly generated dungeon. Lighting and parallax mapping are done using shaders (so there is no real limit to the number of light sources) and all physics and collision stuff is handled by a recent beta version of the Newton Game Dynamics engine. One of the new features is an included character controller that allows you to setup a physically correct playerbody that interacts with the environment within a few lines of code. But that’s not the only use of Newton in that prototype, as I’m also using it’s raycast functionality to determine visibility for the map. That was a pretty natrual choice as I already submitted the geometry of the dungeon to newton for creating a static physic body, so adding raycasting for visibility check was pretty easy and works fine.

Other than that, there is not much to say about this very early prototype. I’m still not sure if I’ll ever make a game based on all that random dungeon stuff, although I already wrote down a nice and basic game design that’s not your traditional dungeon crawler.

So in the meantime enjoy this video I just uploaded, and please watch id in HD. Sadly it’s only 30 fps (originall recorded with 60fps) but it should be sufficent to get an impression :

Random Dungeon Generation - (7. February 2010)

After deciding to take a small break from working on “Phase 2″ for Projekt “W”, I decided to do something I’ve been thinking about since I played my first dungeon crawler (Eye of the Beholder) over 15 years ago :  a random dungeon generator. Back in that time I already gave it a shot but nothing really ever came out of it, so I decided to try again. But this time it worked out really nice and I now have a fine random dungeon generator, creating nice random dungeons that could be used in a game. Actually I even have an idea for a game using this, though if it ever sees the light of the day it will be a very unique take at the “genre” and it won’t be a big project (cause at some point I’d like to release “Phase 2″).

And since just telling you that I made something like a random dungeon generator wouldn’t really be worthy of a whole news posting I also wrote a rather extensive article on that subject. It’s not a tutorial or including the source code, but it’s rather a journal on how I started from scratch trying to create a random dungeon generator. So maybe it’s interesting to some, but since I also talk about how I do it people may also get some ideas out of that article on how to do their own random dungeon generators. Note that the generator is neither finished nor that my solution is the perfect one, but I think it’s a nice take on the whole subject.

Read the “Random Dungeon Generation” article.

And also note that this is my first article, but I hope to write more articles concerning game programming, game design and such in the future.

Newton SDL demos updated to 2.16 - (31. January 2010)

After several requests and after updating the headers, I decided to release updated sources for the SDL developer demos showcasing some of Newton’s features. Those updated demos (including sources) should be useful to both starters (to see how Newton 2.00 works) and people that already used 1.53, as there haven been some changes.

So the following demos now also have sources for Newton 2.00 : “Demo 01 – Basic demo”, “Demo 02 – Joints” and “Demo 03 – Buoyancy”. The demo for vehicles will be updated as soon as functionality for the vehicle container is added back into the Newton SDK. Due to it’s beta nature, Julio commented those functions out for the last beta release, so they can’t be used right now. The ragdoll demo also will be updated at some point, but the ragdoll interface changed heavily in Newton 2.00 and it’s still subject to changes. And finally the character controller demo won’t be updated, simply because newton now has a built-in character controller, so no more need to code this on your own.

Grab the sources here, get the latest beta headers and download the current beta SDK. Note that you’ll also need SDL and the SDL headers for pascal. I’ve compiled the demos with Lazarus and FPC 2.2.4 and they’re not using anything platform specific. So they should work with windows, linux and maybe even MacOSX.

New staff / transfer market window and more on staff experience - (14. January 2010)

After a long time without updates on “Phase 2″ of Projekt “W” (due to the fact that I just haven’t had time to work on it), I got around doing some work on it in the recent days and finished the overhaul of the staff / transfer market window. As mentioned in my recent postings on “Phase 2″, all the windows will be revamped to make them look more like they’re in a game rather than in some kind of office application for windows. I already redid this window long time ago after “Phase 1″, but that old look didn’t fit into the new paradigm of game-like windows, so after tinkering around with a lot of different ideas on how to redo this window I finally settled with the  idea of making it look like a staff portfolio. It now includes different tabs for the different staff types, the transfer market, player’s staff and staff training (more on this in the next paragraph), instead of the old one where all staff types were visible at once, so the new window is much more structured and easier to use.

And in addition to the visual overhaul, I also made some changes to the experience system for staff members. Already mentioned in one of my older postings, staff in “Phase 2″ wil be able to gain experience. Either passive (e.g. scientists researching) or active (e.g. a spy doing a successful infiltration). But new is the fact that instead of just gaining experience, they now have levels. Much like in any RPG staff will now gain experience for several tasks, and once enough experience is accumulated, the staff member will gain a new level. With each new level your staff member will be rewarded better abilities without it’s wages rising. This was the whole point of the experience system, making existing staff members more valuable. So with the addition of levelling, the system now is perfect.

And last but not least you’ll also be able to run training sessions for your employees. Those will cost you a lot of ressources, and your staff members will be locked for the next turn, but it’ll grant them a nice experience bonus.

All content and images are copyright© 2001-2010 by Sascha Willems
5 online / 385095 total Powered by WordPress
Impressum