Showing posts with label article. Show all posts
Showing posts with label article. Show all posts

Monday, December 28, 2009

FOSS RTS games

Hey FreeGamers!
I know, news are a bit slow here lately, but all three of us are a bit busy with real-life issues, I guess. So if you are interested in becoming a contributor to this blog drop us a line in the forum!
We have also recently gotten some readers feedback concerning this blog entry. I have to admit that our background search was a bit short concerning the Hypertension game... and it turned out that this game is surrounded by some controversy concerning the (probably illegal) use of the original Blood art assets (which were only granted by Monolith to the Transfusion project).

Are there any good FOSS RTS?

Well that depends on what you think is good :)
We have had a small discussion in our forums which resulted in a lot of links to all sorts of FOSS RTS. So if you are looking for some obscure (often unmaintained RTS) have a look.
Overall I would say however that currently there is none that can be recommended without doubt. This might change soon however!

0-A.D. Commercial grade FOSS RTS?

We have mentioned this great project before, and especially since they have gone fully open-source earlier this year all eyes of the FOSS community are probably on this gem.
So far a consumer ready release seems to be still distant however, even though some parts of the game look quite playable already:

Development is progressing though and you can have a look at this interview with the current project leader for some background infos and nice new screenshots. Further news can be found on Moddb.com.

Upcoming Warzone2100 developments

Warzone2100 is one of the few really playable FOSS RTS games out there. There are steady improvements and sometimes you can even find someone to play online ;)
With it's Playstation 1 art assets it is quite a chore to look at however. There is light on the horizon though; A new terrain renderer was recently developed for it and is expected to be released with Version 3.0.

Let's hope this will reach us gamers ASAP!
Their forum has also some other nice upcoming features to offer. There are plans to update the GUI, with some really nice mockups.
Furthermore MaNGusT is working on new units:


And there is a nice mod project involving mechs :)

Tuesday, July 28, 2009

Interview: Stephen Carlyle-Smith aka Me_Programmer

In the second Free Gamer interview - over 2 years since the first with grumbel - serial Free game developer Steven Carlyle-Smith (UK) aka Me_Programmer Games aka Steve16384 was kind enough to take the time to reply in detail to my questions about his development activities.



Steve has created a plethora of Free games over the years. Whilst they have struggled to gain mindshare - usually he moves on at speed to new projects before completing others - there's a lot of content to peruse and I thought his experiences were more than worth tapping for advise to budding game developers. He has created all his games with little or no community help other than occasionally reusing resources from other projects. He also maintains blog on his development efforts which is often witty.



You can ask questions / get support / give feedback for Steve's games in the new FreeGameDev forum for Me_Programmer Games. There you can also find an exhaustive list of his playable game projects, including several not mentioned here.



He is also responsible for coding/creating the site Online Game Planner - which he uses to host his projects - which is a fairly new portal for organizing multiplayer gaming sessions.



The game that originally got my attention was Laser Tactics - previously called Nuclear Graveyard, which he talks about later in the interview. So, without further ado...



The Interview




Q. Please introduce yourself...


I'm a 30-something professional applications programmer, amateur games programmer, married with one child and another on the way.



Q. What do you do for a living?


I work for a small company writing software for businesses. Everything from web applications, social networking sites, VB apps, web filters, stock control software, networking tools, and the odd game. Whatever people will pay for!



Q. What notable games have you created?


I don't think any qualify as notable -- editor is impressed with the humility, some of the games are good they just haven't hit the right public spot yet! -- but these are probably my best:-



Xenogeddon (home)





This is a simple FPS based on Space Hulk, but I'm very pleased at how the graphics turned out. I didn't do any of the models, but overall it captures the Space Hulk imagary quite well. It is small and simple however, and needs a lot more scenery and features adding to keep the player's interest.





Laser Tactics (home)





The less said about the graphics the better, but this is my attempt at making a pseudo-realtime verson of Laser Squad and have tried to recreate the original graphics in 3D. It uses what I think is a unique system where both side's "action points" are replenished in real time which can make for interesting gameplay. I'm also particularly pleased with the AI as well. The overall presentation could do with a damn good polishing though.





Island Commander (home)





This is my most recent game and I'm still working on it, but it's fully playable and I enjoy playing it. I've always liked strategy games, and this one is a simple RTS/RTT where the player builds units and then watches them do battle. I'm interested in games where you only have indirect control. I've got loads of ideas yet to implement, like different races, more unit types, and maybe a better name!



Q. Of your game projects, which is your favourite?


At the moment it's Island Commander, because it's my newest and I still enjoy playing it. I'm probably most proud of Xenogeddon though, in that if someone asked me to show them one of my games, that would be the one.



Q. Excluding your own, what is your favourite open source game?


I don't spend that much time playing games, but the one I used to play the most is Tremulous, probably because it's multi-player with a big player-base. I'm crap at it though.



Q. What games do you play at the moment, FLOSS or commercial?


Definitely FLOSS, as I haven't bought a game since X-Com for the Amiga! My home PC isn't up to playing modern games and I don't have time anyway. I'd much rather be programming games than playing them. When I do play games, it's usually simple but addictive Flash-type games. And if they're very simple, I then have a go at writing my own version.



Q. How did you get into games programming?


Way back in 1984, my dad bought a ZX Spectrum, and the book "First Steps with your Spectrum" to go with it. Ever since then I've been programming, for the Spectrum, Amiga and then PC. I like to think my games have improved since then.



Q. What are your best games programming tips?


Re-use your own code as often as possible. Have something playable as quickly as possible. And use descriptive var/function names. I don't agree with people who dislike verbose var/function names; if you're sharing code with others (or coming back to your own project after a 6 month gap) you need as much description as possible. With tools like code-completion, long names aren't a problem.



Q. What draws you to open source, what is your Free software philosophy?


I particularly like the way that we all provide each other with programming help and actual source code, which enables everyone to learn and produce software much faster than they would be able to otherwise. It's a shame that in the corporate world, when somebody learns something, it's top secret and usually patented. Just think how advanced technology (not just software) might be if everyone shared their knowledge and skills with everyone else.



Q. What are the things to avoid, the things that make FLOSS game
development fail?


The biggest problem is not getting something playable as quickly as possible. Whether its a one-man project or bigger, people soon get bored of discussing and planning everything to death. You need to show yourself and everyone that you are actually doing something practical that is actually possible and progress is being made. There are a million "Status: 1-Planning" projects on Sourceforge as a testament to this.



Q. If you could take one abandoned FLOSS game and restore it's
development (excluding your own titles!) which would it be?


I don't really know any off the top of my head. I sometimes browse Sourceforge to see if there's anything I can help with, but I usually end up with ideas and inspiration to write a game of my own! Unfortunately, trying to understand someone else's source code and designs (especially the larger ones) is often harder than just writing my own project.



Q. What are your future game development plans and which of your games
do you hope to see come to fruition in the near future?


My dream is to have a game (and more importantly, a community) as popular as, say, Starcraft. This is my ultimate (and obviously unattainable) ambition, but if one of my games can get a thousandth of the popularity of that, then I'll be more than pleased!




Steve's Other Game Projects



You can ask questions / get support / give feedback for Steve's games in the new FreeGameDev forum for Me_Programmer Games. There you can also find an exhaustive list of his playable game projects, including several not mentioned here.




Danger Man




HoloRacer


Danger Man (home)


This is my contribution to the saturated market of platformers. It's reasonably complete, but requires more levels designing and it's own set of graphics. It has a few good features though, like different weapons.



Metal Glove Solid (home)


This is a playable but limited version of Gauntlet. The advantage of having this in my repotoire is that if I want to make any other top-down 2D game, I can just start with this. I do that with a lot of my games, meaning I can usually knock something up very quickly. I just need to improve the graphics and create more levels.



HoloRacer (home)


I'm quite pleased with this one, and I sometimes go back and have a quick game. I just wanted to write the fastest racer that I could, and it was my first game using OpenGL. It's deliberately quite simple (in gameplay and graphics) but fun in short bursts. I seem to remember that when I uploaded it to Sourceforge, it got about 200 downloads on the first day. They'v trailed off a bit since then!



Realtime Chaos (home)


This is a remake of "Chaos - The Battle of Wizards" for the Spectrum, where wizards do battle with various spells, but converted into an RTS. I've written countless version of Chaos over the years, but this is by far the least-worst. The only drawback is that it has no AI, so you need at least one other player and a LAN to play a game.



Simwar (home)


This is an RTS in the style of C&C. It's quite simple, and also multi-player/LAN only, but is designed to be quick and fun to play. It has some features like proper line-of-sight (unlike just fog-of-war), so you can only see the enemy if you have a clear view. Prizes for guessing which game the soldier sprites came from!



GTA-MUD (home)


As the name says, this is a MUD. I liked the contemporary setting of GTA, and thought a MUD in the same setting would be a good idea, where you could do anything in a modern-day realistic setting rather than either medeival fantasy or futuristic. It's quite small, but gets about 5 logins a day. It's also quite "adult" in some sections, just like GTA.



Online Game Planner (home)


This is a website I produced. I think this was inspired by me trying to get more players on at the same time on GTA-MUD. The premise is simple - you select an online games that you play, and then organise a session by date and time. Everyone else who has also marked that game as one they play then gets informed of the date and time, so everyone plays the game at the same time. It also hosta a few of my simple applet games. I think I should rename it "MultiplayerGamePlanner".



The Last Word



I'd really like to see Steve polish some of his older games a bit more and be more astute with advertising them. Some of them are very hard to come by unless you go through his blog, so posting announcements/showcase/help-wanted threads in the appropriate forums (starting with the FreeGameDev forums) should increase their visibility.



Xenogeddon looks full of potential and it'd be good to see what people make of it. I don't have functional 3D so couldn't try it myself yet.



Metal Glove Solid could become a popular game if he worked on performance (it was unplayably slow on my graphically-unaccelerated 2ghz laptop) as well as used the better graphics available in the Gauntlet Resurrection thread from the FreeGameDev ideas forum.



There's a lot of projects that he didn't mention because he feels they're not complete enough, e.g. this Shadowfire remake. It makes me curious to know if there's a complete list of Steve's projects anywhere! See update!



Sometimes the life of a Free game developer can feel a bit lonely because of the lack of exposure. Hopefully some of you will go away and try his games and, even if you don't end up playing them for long, at least give some decent feedback so he can work to make them better and increase player retention.



Update: Steve has posted a complete list in the forum. Two games he has made that he didn't mention in the interview but are worthwhile projects are Passenger and Last Remaining. I think he needs a bit of modelling help to really realise the potential of Last Remaining.

Saturday, March 21, 2009

Open source Artillery / Worms clones

So it seems that Scorched 3D, Wormux, Hedgewars, and Atomic Tanks are all clones of inspired by... Worms? No. Scorched Earth? Nah. Gorillas? Nope. Tank Wars? No. That's right, their roots go all the way back to a 1980 on the Apple II under the name Artillery. Even earlier ascii versions from as early as 1976 are reported. Now that's real history - all other games (pong and chess excepted) are modern upstarts. ;-)





Atomic Tanks



homescreenshotsdownload

One of the older and more mature open source Artillery clones, with version 0.5 first available in January of 2003, Atomic Tanks doesn't seem to have the online presence of it's contemporaries. This is probably because it doesn't look that nice, with garish colours, coarse widgets, and almost badly drawn sprites.



Update: Markus comments, "I am sure that the graphics and such in Atomic Tanks are intentional. It is a fairly faithful reproduction of the original Scorched Earth, and for those of us who grew up playing that game quite a bit, that is where the real appeal lies." I'm not sure I can agree with you there [on the intentionality of the bad graphics] after inspecting the original graphics.



What it lacks in the graphics department, it makes up for in features. The sheer range of weapons is overwhelming. You earn money, which you can use upgrade features and improve your tanks, making the game a much more appealing single player experience. Also the land behaves differently, falling to fill and holes created by explosions.



The latest release was 20th March 2009, which gives it a spot at the top of the article. :-)





Scorched 3D



homescreenshotsdownload

Scorched 3D has been in development since 2001 with build 1 released on 29th April of that year.



The first thing to note about Scorched 3D is that it looks beautiful. It is the only 3D game in the article, but it is especially well done. The islands deform as they get pounded by missiles. Battleships stay moored offshore, the waves lap against the beaches, and jet fighters fly overhead the tanks. It looks as good as a commercial game.



Scorched 3D build 42.1 arrived on 3rd March 2009.





Hedgewars



homescreenshotsdownload

Hedgewars is the youngest of the four projects, in development since 2004 and first released on 13th November 2006.



If I had to sum up Hedgewars in 3 words, I would say, "Worms II with hedgehogs." (Hey, II is a number!) With it's yelps and ows, and faithful recreation of many of the popular Worms weapons, it makes for a very similar gaming experience, arguably even better.



Hedgewars 0.9.9 was released 19th January 2009 and version 0.9.10 is imminent. I think the video successfully gets across just how Worms-like Hedgewars is:







Wormux



homescreenshotsdownload

Wormux looks very nice, and gameplay deviates a bit more than Hedgewars from the original worms experience, but is still very heavily inspired by it. It includes all the popular Free software mascots, so there's plenty of characters that you should recognise or should learn to recognise - making it almost educational! ;-)



The last few years have seen the developers work towards a new engine that will massively enhance the game with features like integrated physics (they created whysics engine just for this). I expect Wormux will continue to depart in a good way - by adding new interesting features that enhance gameplay - from it's Worms foundations whilst retaining the spirit that inspired the project originally.



Version 0.8.3 was released on 5th March 2009 and included some backported enhancements from the development version.



Incoming!



Looking to the future, there is also the iteam project, inspired by Gunbound. It seems like it could combine the graphical panache of Wormux with the upgrading fun of Atomic Tanks, but development has been very slow despite a wave of initial enthusiasm.




OpenLieroX

Teeworlds


Alternatives



If you like things to look Worms-like, but be more frantic, you should check out the games OpenLieroX or Gusanos - both inspired by a freeware game Liero(X). It has the character of old-school Worms but plays like 2D Quake. Gusanos (based on the classic Liero) development is inactive, last release occuring on 31st January 2006, whereas OpenLieroX (based on LeiroX) development is ongoing at a slow pace, with version 0.57_beta8 released 9th October 2008.



(My Liero-foo history may be out there, I'm not 100% sure how the different projects relate to eachother.)



Similar in gameplay style, but more modern and less retro-pixel, perhaps Teeworlds is your cup of tea. At version 0.5.1, the game is already solid, polished, and playable and has an enthusiastic, growing player base with many regular players. Development is very active and the last release was 25th January 2009.



Conclusion



The Artillery genre of open source games is possibly the healthiest genre of open source games with 4 very good, polished, playable, and actively developed projects, as well as other similar games, inspired by the classics. With 2D games increasingly neglected by the commercial sector, this genre is arguably one where a few of the open source projects have surpassed their commercial counterparts.



So, which (if any) of the Artillery-inspired open source games do you prefer to play? What's best about it? Or are you hardcore and only accept real clones and none of this contemporary rubbish? :-)

Monday, March 16, 2009

Top 10 Projects To Revive

The great thing about open source is a project can never become extinct - there is always a chance of it being brought back to life either by the original authors who re-find their motivation, by new contributors who see the potential, or a mixture of both.



Here are the top 10 games, complete with cliches, I'd like to see return to the development scene and back on the road to completion.





1. Bloodmasters



homeproject

This gorgeous 3D top-down action game was released as open source last year after indie developer Pascal "CodeImp" vd Heiden found he'd lost motivation to continue with the project. It's a complete game with great graphics and needs a good C# developer to pick it up, port it to Mono, and help restore the community.





2. Project Citadel



homeproject

A very nice looking turn based strategy game set in World War II.



The game reached a playable state before it's development team ByteWare stopped playing the development game.





3. Windstille



homeproject

This project isn't technically dead - lead developer Grumbel occasionally bumps it with more concept work - but it's definitely in hibernation and progress is frustratingly slow.



Grumbel is actively seeking writers and developers so the prospects of reviving the project are quite good - no organizational work required.





4. Emilia Pinball



homeproject

Come on, who wouldn't love a great Free pinball game? Emilia Pinball is a fairly solid 3D pinball game that is playable, if a little "bare bones" in it's current form. A better table editor, some more tables, and a bit of love to the user interface and ball physics and this game would be a corker.



Hopefully one day a pinball wizard will resume improving this game and add another table or two as well as a few more features.





5. Labyrinth of Worlds



homeproject

Ultimate Underworld is my favourite ever game, and this is a project to create a new game based on it the 2nd instalment of the popular series. Since these days the world of Ultima is somewhat abandoned by it's foster parent company EA, I hoped projects like this and Underworld Adventures would have gained more support.





6. Boson



homeproject

The promising 3D RTS came a long way but never quite snowballed despite having nice graphics, original gameplay, and most of the hard work already done. I think the dependency on KDE libs was hurtful to attracting contributors.



It is original, playable, has a full set of units for two sides, nice graphics. It has everything going for it except momentum. Oh but to borrow a bit of enthusiasm from the Spring project, and Boson could spring back into life.





7. MyLink / MyNet



homesource

MyLink is inspired by the rather cool game UpLink. After encountering difficulties the author started from scratch with the name MyNet, but after hitting difficulties again (with motivation this time) the project got abandoned. The author is waiting for a new maintainer to step up to the plate. Until that happens, consider this project disconnected.





8. Civil



homeproject

Civil is a cross-platform, turn-based, networked strategy game, which allows players to take part in scenarios set in historical battle theatres. The U.S. Civil war was the primary focus before they started losing the battle and development stopped in 2005. Written purely in Python/Pygame, there should be plenty of people able to help out.



Battle simulations, how could that fail to be fun? When development dies, that's how!





9. Slickworm



homeproject

An innovative FPS where the terrain was deformable. It went through a few rewrites before the lead developer went silent. He was obviously talented and probably snapped up by a commercial company - a shame for the open source game community as it blows a big hole in the future for Slickworm; this potentially brilliant game looks like it'll never be more than a tech demo.





10. Battle for Antargis



homeproject

An original game that mixes elements of strategy and role play, this project enjoyed sustained development for several years and looked very promising before development tailed off as 2008 began. Hopefully somebody will pick things up again as this is one of those projects that counters the 'open source can only copy' popular criticism.



It had another original edge to it, it was probably the first significant Ruby game project, which probably doesn't help when it comes to attracting developers.



Honorable Mentions



Here's a few that I thought also had potential:



  • SilverTree RPG

    The lead developer of Battle for Wesnoth started to make an RPG! There was joyous celebrations and wide eyed expectation as SilverTree was unleashed on the public. Then he moved on to another project and the with it so went the development activity of the RPG.

  • Mars: Land of No Mercy

    A 2D mech strategy game that could be nice if development had no slowed to a near stand still. Every now and again something seems to happen that nearly equates to activity, so it didn't quite make the list.

  • GalaxyMage

    It once looked like a great new strategy game but the developers and the website went AWOL. Enthusiasts resumed development under the moniker Galaxy Mage Redux but it doesn't seem to be going anywhere other than the archives.

  • FreePop

    This was an attempt to recreate and improve upon the iconic Populous games of the early nineties. It never quite got to a playable state before the developer declared the project dead and moved on.

  • Legacy of Magic

    Another very promising war strategy game with very nice 3D graphics that never managed to emerge from abyss of alpha releases.

  • Fuzzy Adventure

    It came about at a time when the only platform games on Linux were SuperTux and XEvil. A quick burst of activity was never turned into long term development. I suspect that Fuzzy Adventure was just SuperTux with different graphics (gameplay was nearly identical) but that's never been confirmed.

  • Reaper3D

    A space shoot-em-up, this game was neary completed before it stalled.

  • OpenParsec

    This 3D space combat game was the darling of its time but very dated now. The developers declined to open source it for several years, and by the time they did the times, and with it the community, had long since moved on.


Another games you wished were still going?



Update: some more games that would be cool to revive:



  • Dark Oberon is an original 2D isometric RTS whose graphics are created by taking images of melded plasticine models.

  • Cspop, a Crystal Space populus-inspired game (svn, no homepage) previously mentioned (twice) on Free Gamer and announced on the happypenguin forums.

  • Zugspiel, a 3D train tycoon game (forum) which never quite made it after the author became inactive.

  • FreeTrain, a 2D isometric city & rail network building game. It needs an enthusiastic C# developer (contact me directly or post in the FreeGameDev Help Offered forum if you are interested).

Thursday, February 5, 2009

Simulate This - City Building + Tycoon Game Reviews

Welcome to a Free Gamer special! People often accuse the Free software and open source game sphere of lacking depth, that there are few good games. In 2009 Free Gamer is dedicated to dispelling this myth. As part of a series of articles on specific genres, highlighting the games that people develop for the love of development in order for us to play, I humbly present a set of reviews of open source city building and tycoon games. I try to be fair and critical, and I note that these games are all enjoyable in their own way. They are all certainly worth a look.

OpenTTD




OpenTTD


I started with OpenTTD 0.6.3 - being the only formerly commercial game I'm covering today, it is good a metric for the others. Still, it is not quite Free software, you need the abandonware Transport Tycoon Deluxe to run it. The community has been working on a project called OpenGFX to create both drop-in and high-resolution graphics to replace the proprietary materials. They are getting there, but I don't think they'll be complete before the end of this year.



I've been playing Transport Tycoon since I was a kid. The gameplay comes naturally to me, and is easy to get into. (My 8 year old son was playing with it after only brief instruction.) The great thing about OpenTTD is that it is polished. Everything works, and works well. The user interface is very nice - although sometimes you do get overwhelmed with windows. Game performance is exceptional, with a lot going on it was consistently smooth and never laggy. Which it shouldn't really be, considering this is a 10 year old game and I'm on a 2 year old laptop, but suffice to say these days my expectations are low!



There is one big problem with OpenTTD though. Once you work out how to connect a couple of industries or cities, the game challenge disappears. Almost all non-fluffed transport links are profitable and the AI is awful (although this is getting remedied by a new AI framework due in OpenTTD 0.7). There's no end goal, nothing other than building your bank balance and big networks and cities (which you can only influence, not control). It all gets a bit repetitive after a while. Despite the "reality" setting, the game world barely comes across as real. Towns are evenly spread out, but not connected with roads (you have to build them). You basically mould the map by placing down transport routes. Other than industry locations, you don't have to accommodate the game world much; it accommodates you.



The game needs to be tougher. Industry connections should be specific to deals between individual industry companies. You should be able to drive your competitors away by competing with them for contracts. There should be more limits on where you can build (contracts with councils, perhaps), shaping land should be more costly, there should be an element of challenging to getting up and running highly profitably. There's no station management - all rail stations are the same, roofed or not - no additional parts, just stations. Also there is a lack of passenger chaining. Big passenger stations have a limited catchment area, if you have other vehicles 'unload' passengers at them then those vehicles basically run on a loss. The gameplay is simple, but it is too simple, and that is why I don't play the game any more.



Simutrans




Simutrans


Overdue Update: The Simutrams community constructively took onboard my criticisms. Whilst I should have looked harder - there was a Starter Guide and other documents available - they have made documentation more accessible and prominently placed. The Simutrans wiki is a good resource for learning how to play the game.



Next up was Simutrans. Unlike OpenTTD, it is totally Free software, which is a good start. This is a difficult one, both to play and review. Although the website lists version 0.99.17 as stable, the forum lists 101.0 as the stable download and is more recent so I went with that. There's plenty of nice graphics packs readily available although only a few are really playable. I tried pak128 and pak96.comic - both aesthetically pleasing and supposedly playable.



The main menu music is horrendous. I know Germans have famously bad taste in music (the original author is a German guy) but the tune that greets you at the main menu is grating and negative. It's obviously a classical track in a minor key, but I can't see how that epitomises tycoons and enterprise. The user interface is a poor man's version of the OpenTTD UI. Often unclear, with frequent trivial glitches (text overflowing etc), it's just a bit messy and thus not quite so pleasant to interact with. Game performance again was very good - I remember it being quite poor when first tried Simutrans several years ago - and comparable with OpenTTD for smoothness.



In the end, pak96.comic was not playable. I tried to create a passenger line and couldn't even build a train depot, it wasn't in the rail build options. No depot, no trains (no other way I could find to access a train building dialog). This is fine, pak96.comic is listed as alpha although the screenshots show quite a bit off so I hoped it'd be more complete. Update: I had chosen too early a start date, so no trains/buildings were yet available, but this was not clearly documented anywhere, you had to read the fine print!



However pak128, which is becoming the de facto graphics pack for Simutrans, is definitely playable. It looks good and distinctively different from OpenTTD. Towns are more dispersed, are connected with roads and have more character. People and cars appear on the streets. Industries appeared more diverse, with more types of goods to chain together and deliver. It made me really want to like the game. Then I tried to build some railways.



Actually laying the track was trickier than it should be, especially diagonally which was very fiddly. Also if you build a straight track, if you were not careful to overlap each section you created, tiny hard-to-see gaps would be left in the track. I assumed that these would be problematic for trains, but when it came to creating trains I was just lost. I managed to set up a depot and build a train. Frustratingly I could only build a train with a single passenger carriage. Any other combination didn't work. Basic dialog controls seemed to do strange things. Line management was unintuitive enough to make me start over. I made more progress with buses, and started to work out the line management.



If you can work out how to play Simutrans, and overlook some of the aesthetic flaws, it looks like it has more to offer than OpenTTD in terms of gameplay depth. There was more complex road management options, passenger networks, trams, station buildings, different types of stations. Less wash, rinse, repeat route building strategy and more adapting to the game world. It just lacks the polish that OpenTTD has, and lacks a good tutorial and an intuitive user interface.



FreeRails2




FreeRails2


FreeRails2 0.4.0 is a continuation of the FreeRails project (and Railz too?) as well as a spiritual successor ("clone") of Railroad Tycoon. I used to play Railroad tycoon as a kid - it's the original tycoon game. It's both challenging and fun, although you don't have to worry too much about your trains colliding and other formalities as your trains zip up and down and past each other without a hitch.



The graphics are basic but not bad. Performance is fair - it made my laptop fan run hard but the game itself was smooth. One of the nice things about the game is you can run it straight from the webpage, no messing about installing or updating. You can be up and playing within moments of visiting the homepage.



The gameplay is fairly straightforward. Create a rail network between cities and industries, assign trains to visit the stations. Trains can change their cars at each station, so one train can pick up livestock, deliver it to a factory, then return with the resultant goods. There even seemed to be an automatic option for trains - create a train without any cars and it will grab whatever is waiting at the station it arrives at.



It's a nice game but it misses some of the charm of the original Railroad Tycoon. I'll probably have another go at it another day but - having played the original a lot when I was young - I'm not driven to play it. I think it's a few features short at the moment. Fortunately development seems to be ongoing - 0.4.0 was released in August last year.



FreeTrain




FreeTrain


FreeTrain is billed as the "quintessential sandbox game". It has so much potential, the graphics are nice with a lot of attention to detail, there's hundreds of plugins and you can create amazing cityscapes with variable height skyscrapers and all kinds of buildings. It is a transport simulation and city building game combined. There's a reason I have championed development drives for it for so long.

However, being a sandbox is a big problem. You start with a big blank piece of land. Sandboxes work on wikis where you can test out features and not worry about it getting wiped out. Yet, you don't create an entire wiki in a sandbox. FreeTrain lacks a Linux port and a save game format (and thusly a scenario format) which means it is full of potential but more a toy / tool than a game at the moment. Hopefully development will pick up again soon.



If you know C# then please get in touch with me and help restore this game to the scene.



Micropolis




Micropolis


Micropolis is the original Sim City classic repackaged with a new name. Not much more to say, really.



Ok, I'll make more effort than that. It looks very dated, and the game world looks tiny when juxtaposed in a large window at today's resolutions. Still, it is the grand daddy of city building games although sometimes is quite basic in it's mechanisms. You assign residential, commercial, and industrial zones. You build power plants, connect electricity grids, and manage taxes, and decide how to allocate emergency services. Occasionally you get to fight off Godzilla. Possibly a good starting game for younger players as there is less to grasp.



The limited nature of the game is shown by just how quickly the official forum expired. The most interesting thing about this game is that it was released as Free software as part of the One Laptop Per Child (OLPC / XO) project.



LinCity-NG




LinCity-NG


LinCity-NG is the GotM fork of LinCity. LinCity is a kind of Sim City classic clone. It looks equally dated but has a different slant on city management, which LinCity-NG builds upon. LinCity-NG has much nicer graphics, and many new features. The autopackage would not install so I had to build it from source.



Performance is pretty poor. Movement and animation was very laggy on my laptop, the music stuttery. The music was good and original although loops on the same track rather than cycling. The user interface is original but a bit messy with icons overlapping button borders and lots of scrolling required to read text that is presented in a huge font. Saying that, the help system is very useful. A description of pretty much any game item is just a click or two away, and tooltips are there for extra hints. This makes it much easier to get into than Simutrans where I was guessing at half the controls.



The game itself has quite a few angles to it. For once roads in a city building game serve a function other than being a requirement for buildings to exist. They enable greater transportation range of goods and materials between different types of buildings. You have to generate resources and jobs, and research technologies to gain access to new types of buildings. In some ways, it merges aspects of civilization building games with a city building game, which is a unique approach to the genre in my [limited] experience. You can even win the game by transporting your city population to another planet.



I couldn't quite overcome the poor performance. Moving around was just too slow to be enjoyable. LinCity-NG has come very far in the last couple of years, and it shows a lot of potential. Interesting gameplay ideas and nice graphics bode well, and with some tweaking, optimization, and improvements to the user interface this game could be a real Free software star. I hope they rename the game to an original name now it is departing from it's LinCity roots. It can't be Next Generation forever, and it's no longer really "Lin"City as it is ported to multiple platforms.



OpenCity




Open City


OpenCity is the only 3D game in this list. At version 0.0.6, it is still early on in development, you can create basic 3D cities in OpenCity, but the gameplay is limited and it won't capture a player's attention for long. Development has been steady for several years, and with more people showing an interest in contributing this is one for the future.



Afterword



Well I think you'll agree there's plenty of choice and lots of fun to be had. There's many different styles of game to suit many different player types.

Wednesday, July 11, 2007

Con Kolivas releases last ever -ck patchset

A bit of a FG special here and a slightly different topic for FG, but still very pertinent to open source development.



Today saw the last ever release of the -ck kernel patchset.



Anybody who ever tried ricing their Gentoo in order to attain half-decent audio/visual perforance, or knows much about kernel patchsets, will no doubt be aware of the -ck kernel patchset. It is a patchset for the Linux kernel that is aimed at providing an optimal desktop experience. It made my old machines usable with Gentoo Linux back in 2001-2003 before I switched to Ubuntu and gave up hope of my old machines ever being able to handle more than one sizeable task at a time. Con took a problem, solved it, but because he wasn't well integrated in Linux kernel development his solution never got the proper attention it deserved.



The two main features of Con's patchset are his Staircase Deadline scheduler and Swap Prefetch. The kernel scheduler decides what processes get access to your computer's CPU and when you are low on memory the kernel pushes inactive applications into swap. In real terms this means that your music lags when you load up OpenOffice.org and Firefox takes 20s to respond to your first click if you didn't switch your PC off last night. In real terms the -ck patchset means no lagging music when you use other applications, and your Linux desktop does not take ages to become responsive if you haven't used it for a while. Basically Con took the rather rubbish default Linux scheduling and swapping logic and threw them out the window. And he has been working on these for years - at least since Linux 2.6.1.



So why is today seeing the last release of -ck? Well, Con has been effectively cast aside by the kernel development process. Justifiably feeling offended, and subsequently lost his desire to keep maintaining a bunch of features that could never get merged into mainline.



When somebody close to Linus runs off and implements their own scheduler, it takes less than 3 months to become integrated into mainline. People will debate back and forth the technical merits of CFS (by Ingo Molnar) and SD (by Con Kolivas) but the reality is that both solutions are good but only SD is very well tested and refined. CFS is still new and raw. It came down to "who you know" and Ingo has his hand on the kernel tree so his solution gets way more contact with the right people and hence is now fast-tracked into Linux as the default scheduler. I don't think the technical merits of either had anything to do with choosing between them. SD was not written by a highly-ranked kernel developer, CFS was. It's just ridiculous that it has taken so many years to get to a stage where the default kernel scheduler is Not Crap (tm).



Understandably completely disillusioned that his efforts are now going to be nothing more than a historic catalyst, Con will no longer maintain this patchset. It is almost redundant now anyway since CFS makes the SD pointless as a patch. Logically concluding that the same would happen with his other major kernel patches, Con is issuing calls to "merge or delete" them because why should he put in years of dedication just for his work to be disregarded for a more junior solution. At last some of it looks like it is going in - notably swap prefetch - but it's a shame that sometimes it takes such extreme measures for decent features to be properly considered. Once Linux 2.6.23 ships, by default Linux desktops will no longer be afflicted by applications taking double-digit times to wake up on an idle machine.



Contributing to open source projects has it's benefits and it's downsides. One of the downsides is that significant contributions can be ignored by upstream and with a project the size of the Linux kernel there is no way you can realistically fork it. Indeed, in smaller projects people will put forward valid contributions that are rejected due to fear of the original author having to maintain something they did not write or create. Not every good line of code will become part of the project it is intended for. One of the true arts of open source project management is striking the right balance between accepting contributions and minimizing the problems they may cause, but it will always be a case that some bad stuff gets in whilst some good stuff gets lost. It happens to games - check out all the OpenTTD contributions many of which were great but never got merged.



The most important thing from such a saga is that people learn from it. Will Linux kernel patch inclusion policies change? I doubt it, but open source is open development - other people can look at this and use it as a basis for making their own contribution acceptance policies. Basically you do not want to lose contributors as talented and dedicated as Con Kolivas.



This article is dedicated to you Con. You improved my Linux experience and that of many others. So long, and thanks for all the fish.

Tuesday, June 26, 2007

Debunking reasons not to open source indie freeware games

There are many significant indie game projects that are committed to creating a quality free game where the developers are afraid of the consequences of making the development public by publishing the project under an open source license.



Now I'm not saying that open source is the only way people should choose to release their indie games - different situations do need to be evaluated on the merit of the benefits brought by being open source - but frequently, when asked, the reasons for declining to open source a project are usually bogus.



One of the problems is that the topic of open source is a polarized subject - people are either strongly against it or strongly for it. Those falling into the latter category are almost always experienced with using and/or developing open source software, and in my experience those against open sourcing of their projects often do not fully understand the concept, do not appreciate the benefits it brings, and suffer irrational fears of what might befall their project should they license it as Free Software.



Over the years I've tried to change the minds of several game project developers, usually met with stubborn resistance. Hopefully this article can help projects earlier on in their development cycle before people have committed themselves to keeping their free game project as a closed source one.



Frequently cited reasons for keeping a game project closed source:



  • People will cheat

  • The code is a mess

  • Control of the project will be lost

  • Somebody will steal my/our game

  • The game will be spoilt (i.e. we don't want to reveal the story)


People will cheat



True, there will always be those who try to cheat at any popular game. However do you think security through obscurity will prevent this? If anything, it is worse; the project may be less secure because the design and implementation are not under scrutiny. You are better to open it up early so people can point out the flaws and they can be addressed early - to change a design or implementation in a mature project is far more difficult and the subsequent upheaval will upset many players.



The code is a mess



I've seen this one countless times: "I want to open source my project but the code is a mess, so I'll wait until I clean up the code."



I've also seen this one many times: "My [piece of hardware] died and I lost everything :'(."



And this one:



That last one was silence. People often get distracted by real life and disappear. An exciting looking set of screenshots become vapourware and onlookers get frustrated.



Nobody writes perfect code or the perfect design the first time, even seasoned pros. Nobody cares if you have hacks or the code is a mess. They do care if you release a fun game. Guess what, if your project is open source and attracting interest, somebody may even rewrite parts of it for you. If you suffer a hardware failure or find something else that takes you away from your project or the Internet, or you even die (it happens!) then you have left a legacy that others may continue.



Control of the project will be lost



Ok, if you are an asshole this is probably a valid point. Abrasive people will upset others, beyond the point of redemption. So all you obnoxious and inconsiderate baffoons have me here, I can't debunk this for you. In which case loss of control of a project may be an indication that you should correct your ways? A blessing in disguise! However, for decent people ;-) it is a myth...



Control of the project remains in the hands of the contributors. Sure, if you stop and people continue your work you may lose control but then you are no longer working on it? If you get re-involved in the project you will find developers receptive. Otherwise you keep as much control over your game as you allow others to have (you don't have to let everybody have commit access or admin rights) and almost always contributors are very, very respectful of the original author.



As long as you work on your project, you will have significant influence. Exchanging direct control for influence is almost always going to be a healthy trade off. You will find more developers means better design decisions, better implementations. Although implicitly you lose complete control, you will still be directing the efforts of others. After all, the original game was your vision so people will listen by virtue of that alone.



If there is a rift so deep between contributors that a fork is created, the fork will be a different game, and you will be remembered for giving birth to the concept of this different game should your own project subsequently stagnate. In reality there are few forks, especially of open source games. Other than situations where development of the original game has all but completely stopped before the fork, or the fork has the blessing of the original author, I can't think of any bitter forks off the top of my head. TuxKart and SuperTuxKart maybe? When was the last TuxKart release? Are the games as similar as the names? :-)



Somebody will steal my/our game



People can't get away with stealing a project. I've seen a few cases with applications and usually the community backlash and lobbying shuts down the violators. I just can't see a commercial game company getting away with ripping an open source game. Not only will it be an open-shut legal case should it go that far, you'll have a large pool of support from a vast community of open source advocates. To be honest, I bet there'd be lawyers who'd even take on the case pro bono for you.



If it's not a commercial violation, then it'll be a fork of the game. Developing an open source game is not easy. It's a long hard slug. Forks only occur in extreme circumstances:



  1. There is an impasse between key contributors in desires for project direction. The games will be different. You still were the original author(s) and still will be credited for your work as long as you were not a total asshole.

  2. Your project stagnated. Isn't a fork and continuation of your work better than it bitrotting and decaying into a part of Internet history?


Ok, some of your artwork and media may make it into other open source games, but isn't that a compliment? Are you not pleased that your efforts have made the world a more fun place by contributing to another game? Hell, you can put it on your CV, that your work is in projects X and Y because it is that good.



The game will be spoilt (i.e. we don't want to reveal the story)



For a complete game, the majority of players will not go to the kind of lengths necessary to have the game spoilt for them (i.e. look at the code or research the story).



Some people will play the game early in development but they form the community that tests and contributes to the game. Somebody has to know things early, and the fewer that do, the fewer can make the project happen. The more people contribute to your game, the better it will be. Sure, a few people will not get the opportunity to enjoy a fresh experience with the final game, but they got to experience it develop, which is a different kind of enjoyment. And the rest of the world will get a better game because of the extra input.



Also people do not have immutable memory. If I play a game again after years of not playing it, I do not remember everything. It is ridiculous to be worried that people who try the game in it's early stages will have their experience ruined should they return later once the game is ready.



Afterword



There are freeware game projects where there is significant momentum and organization behind them. The benefits of making such projects open source are often not immediately that significant. However frequently these projects lose that momentum, a community that has existed on propaganda and screenshots gets frustrated and in the end the project actually upsets more people than it brings enjoyment to - you had the opposite effect! Games are supposed to please people!



If the project is open, the community can rally should problems be encountered, and the chances of your game making it become far higher than if nobody has access to your work.



If momentum is never lost, the extra contributions, the extra eyes and testing to remove bugs, the extra demand for porting to other operating systems will all benefit your project. There may be administrative hassle (forums etc) but almost always for decent projects volunteers will take that on for you. The community is a resource and open source projects can and should use their communities. Freeware titles just can not do that.



Make the smart decision, open source your freeware game. There is a good reason that those experienced with open source strongly advocate it's application. It works. It's not a miracle cure for a dying project though, so don't wait until you have already lost your way, strike whilst the iron is hot. It is never too early to open source your freeware game project!

Tuesday, March 13, 2007

Utilizing The Community

Before I get onto my main topic for today, I'll note that Kimboot 1.00 got released today. You swing a ball and chain around and bloodily annihilate stick men. Lots of violent fun without being too gross. :-)



I spoke to HellcatV today. For those who don't know, he's one of the original Vega Strike developers and pretty much the guy in charge of VS.



Vega Strike has not released an update for over 2 years. On the face of things that might be a sign of inactivity but that is the opposite of the truth. The community and developers have been continuously active and there is massive change between the last version (0.4.3) and the current version. I'm trying to push them to release an update.



"It's imperfect!" they lament. "It needs playtesting and bug fixing!" they decry. Commercial game companies have QA testers. Open source games have a community. Make a release, label it beta, and people will be happy to try it and report bugs. That's the nature of Free and Open Source Software.



I tried to talk HellcatV into labelling the next release 0.5.0beta instead of 0.4.4beta. There's been so much change in SVN and x.y.z is major.minor.bugfix and this is not a bugfix update. People are often far too conservative with version numbers (Torcs being another example). Let the version numbers reflect development activity! Not how perfect the game is. The utopia of a perfect 1.0 software release never, ever happens. It's better to aim at milestones and forget perfection as anything other than a distant goal. The only Free Software project I have seen pull off a decent versioning system with a lofty near-perfect 1.0 release goal is Inkscape and they keep it very, very simple - 0.x where x always increases 1 with every release - no point releases (well, ok, 0.x is a point release... but no 0.point.point releases) except for critical bug fixes. That works. The rest just make the software look less mature than it actually is and turn away fickle users and users are almost always fickle.



Perhaps I care about version numbers too much. :-)



Anyway... music tip:

Babylon Robot - Dop4m1n (Delicious & Errick mix)



By the way, almost all the music I (will) mention builds up. Don't listen for 5s then judge it, unless you want to miss out! ;-)

Friday, September 15, 2006

Unidentified Flying Objects

UFO: Enemy Unknown was released by Microprose over a decade ago. For those not familiar with it and it's predecessors, or for nostalgia, here's a thorough review of one of the all time great games. It is abandonware these days and as such can be downloaded for free although you'll need DOS emulation at the least to be able to play it.



The UFO series of games has a massive fan base and has such there is a number of fan-made games.



Probably the highest profile project is UFO:AI , a 3D remake of the original UFO: Enemy Unknown. Now it's come out of the shadows of closed development, the project is thriving and it is evolving into a showcase open source game. There's still a little way to go - you're going to struggle if you are not familiar with standard UFO gameplay - and there are frustrated players but their issues are being addressed and, with great graphics and great music, once playability is polished the final 2.0 release should be one to savour.



The road to the 2.0 release has been a fairly long one, and the developers relatively quietly released version 2.0-RC4 at the end of last month. (I don't remember seeing the announcement anywhere.) Call me old fashioned but I really think they need to just say, "Hey this is version 2.0 and the next release will be 2.01 or 2.0.1 or something." RC stands for Release Candidate, not for Remarkable Changelog. Anyway, I am digressing.



There is an even more ambitious open source UFO project - Project Xenocide. Again a 3D variant of the original game, this is a long term project with a steady history of planning and, lately, steady development. They recently added SVN tracking to their forum so activity is more obvious. Currently the only aspect of the game I'm aware that works is a gorgeous GoogleMaps-esque 3D Geoscape.



Some of the renders in the image gallery for Xenocide are of a very high calibre. I'm looking forward to seeing such high quality art incorporated in an open source game and I expect this game to emerge later next year in spectacular fashion.



The final part of the open source UFO puzzle is UFO2000. This is an old school project, taking the original game and it's graphics and turning it into a multiplayer deathmatch-style tactical UFO-fest. These days there is enough art that you do not need the original game to play UFO2000. However, whilst in its day UFO looked good, it looks very dated now. Despite supporting the use of scale2x to enhance the graphics a little, UFO2000 really shows the age of the original and will probably only appeal to hardcore fans - or those with older PCs like mine.



Like all great jigsaws, we complete it to find a leftover piece, X-Force. That's because the last open source UFO offering is Windows only. X-Force is a remake of the original and it's sequel, UFO: Terror From The Deep, modernising them whilst staying true to the 2D isometric tactical gameplay.



The website is mostly in German making it hard to really learn that much about it. From the screenshots, the game looks to be at a similar stage to Project Xenocide - more of a tech demo than a playable game. There is a download though so any Windows users or WINE experimenters might want to give it a go and leave a comment.



I'll be updating this article with screenshots later - I'm too busy falling asleep right now.

Friday, August 18, 2006

Freeciv Beta + Mania Drive Update

There's been an update to Mania Drive. This one introduces a beginners storyline, which is a welcome addition to any non-expert drivers given the difficulty of the previous release! Lots of bug fixes, lots of new levels, and this game is definitely now one of the leading Free Software driving games available.



Also of note is the 2.1-beta2 release of Freeciv. I checked out the SDL version and it is really looking nice. However, the term "beta" means beta. The release is laden with bugs. Loading it up, the "Start New Game" option is disabled. After manually starting and connecting to a localhost server, the "Server Settings" button was impotent. Still, I remembered "set aifill=6" to give me some opposition although I couldn't work out how to make them tougher (and was too lazy to google) so played on easy AI.



I'll start by saying that they really need to review most of the UI - it is a usability nightmare. Everything is iconized making most actions guesswork until you gain any familiarity. The icons are very small, making them awkward to hit with the mouse. It's little things like the options icon being in the top left corner but not being at the edge making it far harder to spot and hit than it should be. It's like the Windows 98 start button all over again.



A simple tip for the devs - the tooltips are too slow, making them more frustrating than helpful. In fact, I'd forget tooltips for the little buttons and instead have a region above the buttons where it immediately displays the name of the button under the cursor:





The city dialogs are dreadful. They need rethinking from the ground up. I only got anywhere by guesswork - the unit queuing mechanism is completely unintuitive. Make it drag and drop, please. Also it would be really nice to have preset queues since I often make the same 4-5 entries in the build queue for each new city.



Also, why the devil are the science, revolution, and tax buttons located on the unit display in the bottom right? Group things together sensibly! Don't stick things somewhere for symmetry even though they do not belong there.



Also I think it's time to realise that moving the entire view for automatically moving units is 1) disorientating 2) annoying and 3) distracting. Either reset the view back to where it was before the automatic unit movement [since that's where I wanted to be] or making a sub-window (transport tycoon style) showing the currently active unit. Here's a mockup, with a few other peeves highlighted:





One of the most annoying problems was the UI moving the mouse cursor - often it was impossible to select units or cities because moving the mouse over them made it jump somewhere else.



Another glaring problem is the one highlighted in a previous blog on Freeciv - the lack of notifications to speed up multiplayer games really impacts single player games. I built two wonders but was never told about it - I only found out by spotting one city building city walls (I never do) and another on coinage.



I could go on [this all came from only 30 minutes of play] but, like I originally pointed out, this is a beta. If you want something reliable then stick with Freeciv 2.0.x for now. However, this is shaping up as a very nice game with good graphics that make Freeciv 2.0.x/1.x look incredibly dated. I look forward to the final 2.1 release although I don't expect it in 2006 on the evidence of this beta.