Screen resolutions and foxes…

The development in the last 3 weeks has been focused on two main features: fullscreen visualization and multiple resolutions support.

The coding part took less than few days, whereas remaking all the graphics for all the available resolutions took most of the 3 weeks. That was pretty boring, but it also allowed to improve some elements, especially the game GUI, so it’s all good.
Anyway, now it’s possible to change the visualization mode and resolution from the options window and no restart of the game is required (as several games do).

Supported resolutions will be:

  • 1024×768
  • 1152×864
  • 1280×800 – 1280×960 – 1280×1024
  • 1366×768
  • 1440×900
  • 1600×900
  • 1680×1050
  • 1920×1080 – 1920×1200

Those should cover almost the 95% of Pc/Mac gamers, and that’s not a made-up number, but something I obtained checking the following data:

Another news is the introduction of a new enemy, totally inspired by my life in London…

London fox

That’s a picture I took last year near the Angel tube station during one of my many encounters in the area.
Think about it: foxes are cute, smart and… they can jump on cars and have laser eyes, so why not using them for a game character? :)

You’re going to see it in actions in the first gameplay video coming (probably) next month, but in the meanwhile this is a preview of the game version:

game fox

P.S.

As I already wrote for the dogs, we love animals and this is definitely not a way to spread hate against any of them, but we need enemies for the game, and that’s the only way you have to consider them, they are just fancy game characters. ;)

Share and Enjoy:
  • Twitter
  • Facebook
  • Google Buzz
  • N4G
  • Digg
  • FriendFeed
  • StumbleUpon
  • Slashdot
  • Identi.ca
  • del.icio.us
  • LinkedIn
  • Reddit
  • Technorati
  • Add to favorites
  • Tumblr
  • MySpace
  • Google Bookmarks
  • Live
  • Posterous
  • Yahoo! Buzz

private Beta with new screenshots and new graphics!

After we posted the first screenshots 6 weeks ago we started to realize we were probably heading to the wrong way with the graphic style.

The overall appearance was not too bad, and we got lot of positive feedbacks, but we also got some critics and we agreed with most of them, especially considering we were trying to merge 2 different styles and usually that’s just wrong. So we decided to revisit our graphic style and go for something more uniform and coherent.

Unfortunately the revisiting process took more time than expected, but we’re pretty satisfied of the results and in the meanwhile I made a lot of progress with the gameplay code, so I’m proud to announce you the game is now in the private BETA stage. Basically that means we have a full playable level and we’re going to test it well before starting the closed BETA that will be open to non-team members.

Anyway, let me now introduce you the new screenshots:

game screenshot 1

As you can notice, we went for a lighter HUD and a neon/glowing style that should also recall a typical underground map better than the old style did.
Another news is represented by enemies: the (chav) thief and the stray dog. They are surrounded by a strong red glowing to recall the idea of danger.

game screenshot 1

The second screenshot is taken after few minutes of playing, during a mission, and as you can see, I’m carrying a letter that’s showed in the objects panel on the bottom area of the HUD.
Another new gameplay feature is showed here too: a track has been temporary closed (so it became partially grey) and trains can’t stop at the stations affected by the closure.

If everything will go well with testing, we’ll publish a first gameplay video next week and start the closed beta in 2-3 weeks, so keep an eye on this blog ;-)

P.S.
We’re looking forward to read your feedbacks about the new graphic style so please leave a comment when you read this post :)

P.P.S.
we all love dogs here at Lowpoly, but we needed an enemy and placing a lion or a tiger in a city would have been a bit weird, so we went for the stray dog ;)

Share and Enjoy:
  • Twitter
  • Facebook
  • Google Buzz
  • N4G
  • Digg
  • FriendFeed
  • StumbleUpon
  • Slashdot
  • Identi.ca
  • del.icio.us
  • LinkedIn
  • Reddit
  • Technorati
  • Add to favorites
  • Tumblr
  • MySpace
  • Google Bookmarks
  • Live
  • Posterous
  • Yahoo! Buzz

First game screenshots!

It required a lot of work and a lot of time, but at last the game is close to enter in the beta stage of development, so now I can show you the first in-game screenshots from the latest alpha build!

The first screenshot shows the game few seconds after I started the level.


game screenshot 1

As you can notice, the level area is surrounded by a solid HUD with two LCD screens and two side panels. The two LCD screens are used for showing game/player status (bottom) and gameplay-related text (top), instead the two side panels will be described later with the second screenshot.

The player character is the tiny yellow man you can see in the top-left corner of the map, instead all the small shiny icons you can see around the level are powerups and game objects like the light-blue mobile phones representing a mission the player can start while playing the level.

The second screenshot shows the game after several minutes of play.


game screenshot 2

I gained some points, earned some money and started a mission. The right panel is displaying an active powerup: the hourglass, that’s affecting the clock freezing the passing time. Instead the left panel, which is supposed to display available/active objects, is still empty.

And that’s all for now! I know I haven’t spent any word about the gameplay in this post, but don’t worry, it will be better introduced in a video coming in a week or two, so keep following us and get ready to have fun with The Undergrounder!

Share and Enjoy:
  • Twitter
  • Facebook
  • Google Buzz
  • N4G
  • Digg
  • FriendFeed
  • StumbleUpon
  • Slashdot
  • Identi.ca
  • del.icio.us
  • LinkedIn
  • Reddit
  • Technorati
  • Add to favorites
  • Tumblr
  • MySpace
  • Google Bookmarks
  • Live
  • Posterous
  • Yahoo! Buzz

A new graphic style…

This is the first update about the game since I left my day-job in the game industry and started my full-time career as indie developer, not surprisingly, a lot changed in the last 2 months for both my life and the game, but don’t worry, this blog post will be about the game only ;-)

Even if there are a lot of changes under the hood I can’t show and discuss here, I’m happy to introduce you the level editor BETA 4, featuring a new path editing system for trains, and a brand new graphic style.

Regarding the new style, we decided to ditch the isometric view for a more classic 2D orthogonal view and embrace a graphic style totally based on LEDs instead of the old one reproducing the flat lines of a map.
There are artistic and gameplay-related reasons behind this choice, so I hope you’re going to like the new style and appreciate it during the game.

The new path editing is showed in the first part of following video, whereas the new graphic style is showed in the second one.

I really suggest you to watch the video in HD full-screen to avoid visual artifacts generated by video compression and scaling.

As usual, the video is also available on Vimeo too.

What you can see in the second part of the video is just the level preview in the level editor, so it doesn’t represent a real level in game, but don’t worry, I’m going to show it in a couple of weeks, so keep an eye on our dev-blog or subscribe to the RSS feed to get the next updates as they are online!

Share and Enjoy:
  • Twitter
  • Facebook
  • Google Buzz
  • N4G
  • Digg
  • FriendFeed
  • StumbleUpon
  • Slashdot
  • Identi.ca
  • del.icio.us
  • LinkedIn
  • Reddit
  • Technorati
  • Add to favorites
  • Tumblr
  • MySpace
  • Google Bookmarks
  • Live
  • Posterous
  • Yahoo! Buzz

How to compile OpenGL and SDL code on Windows

I’m developing The Undergrounder entirely on Linux because that’s the best environment for my needs, but my code is mostly based on SDL and OpenGL, so compiling on other systems is not a problem.

Last week I decided to set up my Windows box to have a second build available for testers (the Mac OS X one will come soon).

There are several possible options for compiling SDL/OpenGL code on Windows, but my choice was to use MinGW (for compiler and libraries) and Cygwin (for bash, tools and python) so to have a Linux-like environment and minimize the changes in the sources and the building scripts.

In a perfect world the set-up should require 4 easy steps like:

  1. Install MinGW
  2. Install Cygwin
  3. Convert/compile the libraries
  4. Compile

But unfortunately all these tools are far from perfection, so I had to put some extra effort to get a working environment and an executable. I’m not saying these are bad tools and I still think the developers are doing a great job especially allowing people to have them for free, but I’m pretty sure most of the unexperienced developers would give up during the installation process if few minor issues are not addressed soon.

Anyway, I decided to write this blog post to keep track of all things I had to do and to share my experience with other developers. This post is not intended to be a comprehensive guide to building applications on Windows and your project could need different steps, but I hope this will help most of the people trying to compile code on Windows.

In order to compile my code I need the following libraries: GLEW (OpenGL), SDL, SDL_image, SDL ttf 2 and a construction tool called Scons (a way better than make and the autotools), so the following steps will describe how I managed to compile my game based on these libraries/tools.

1. You can install MinGW using the automated installer, but the installer is no longer maintained, so now the best way to install MinGW should be the manual installation described in their wiki.

2. The automated installer downloaded gcc 4.5.0 even if it was supposed to install the 4.4.0, but the compiler didn’t work so I had to install gcc 4.4.0 downloading the bin and dll packages of gcc-core and gcc-g++ and unpacking the archives in the directory where I installed MinGW (say C:\MinGW).

3. Then install Cygwin downloading the latest version of the installer from the website.
The installer works pretty well and allows you to decide which packages to install. The only packages I added to the default installation are: bash, python and Vim

4. Once installed Cygwin you need to run the shell and edit the PATH environment variable in /etc/profile adding “/cygdrive/c/MinGW:” at the beginning of the list of paths. This step is required to tell the Cygwin shell to use MinGW programs (like gcc).

5. This step was supposed to be converting .lib library files to .a so to allow the MinGW linker to use them.
This conversion is done using a program called reimp contained in the mingw-utils package.
Unfortunately the program contained in the latest version of the package (0.4.1) doesn’t work, so you have to download the sources
and build all the binaries from scratch.

6. In order to compile the programs contained in mingw-utils you need to install MSYS, the Minimal SYStem used to compile programs with MinGW. MSYS doesn’t have an installer, but you have to download and unpack all the needed packages in a directory (say C:\MSYS).

The basic packages required to compile programs are: base system, bash, binutils, coreutils, gawk, grep, m4, make.

More packages could be required for compiling different programs

7. Once installed all the MSYS packages, mount the MinGW directory to /mingw so to make installation of new programs (like mingw-utils) easier. All you need to do is launching the MSYS shell and type “mount C:/MinGW /mingw”

8. Now it’s possible to compile mingw-utils from the MSYS shell following the common procedure for building programs on Linux:
./configure –prefix=/mingw ; make ; make install

9. At last it’s possible to convert the SDL libraries, so download the devel-*-VC packages and convert the .lib files contained in the lib\ directory of each package using the command “reimp -c file.lib” from the Cygwin shell.
In order to install the libraries you need to copy the obtained .a files to C:\MinGW\lib\ and copy the include\SDL\ directory contained in the packages to C:\MinGW\include

10. The other library to convert is GLEW, a library used to load OpenGL extensions and use the latest OpenGL version allowed by your graphic drivers, but unfortunately converting the .lib file contained in the binary package is not enough for compiling OpenGL programs, so you have to download the source code and compile them using MYSYS (the Makefile raised some errors trying to compile with Cygwin).

Once compiled the library all you need to do is to copy the obtained .a files to C:\MinGW\lib and copy include\GL contained in the GLEW package to C:\MinGW\include

br />

11. The last component to download is scons-local that needs to be unpacked in the directory of the project to compile (the one containing the SConstruct).

Of course, If you use a different building tool, this and the following steps need to be adapted to your project.

12. The last step required before compiling is editing the SConstruct so to have the following lines:

env = Environment(tools=['mingw'])

env.Append(LIBS=['mingw32', 'SDLmain', 'SDL', 'SDL_image', 'SDL_ttf', 'glew32', 'glu32', 'opengl32'])

env['ENV']['PATH'] = ‘/cygdrive/c/MinGW/bin:’ + env['ENV']['PATH']

13. Finally it’s possible to compile the code using the Cygwin shell typing “python scons.py” in the project directory.

These steps are definitely more than 4, but at least I managed to have a working environment and compile our game, hope this post will help other people getting the same result.

If you need any help with your project don’t esitate to contact us commenting this post.

Share and Enjoy:
  • Twitter
  • Facebook
  • Google Buzz
  • N4G
  • Digg
  • FriendFeed
  • StumbleUpon
  • Slashdot
  • Identi.ca
  • del.icio.us
  • LinkedIn
  • Reddit
  • Technorati
  • Add to favorites
  • Tumblr
  • MySpace
  • Google Bookmarks
  • Live
  • Posterous
  • Yahoo! Buzz