Liquid War on Mac OS X

Liquid War is available for several platforms, and now Mac OS X. Back in 2003, we reported that the game was built on the C/C++ game programming library Allegro“. It is distributed under the terms of the GNU General Public License (GPL). Liquid War is a unique multiplayer wargame. Its rules are truly original and have been invented by Thomas Colcombet. You control an army of liquid and have to try and eat your opponents. A single player mode is available, but the game is definitely designed to be multiplayer, and has network support. While the eye candy is outdated, the game play is good.In addition, the latest release, Liquid War 6, has some features which are nowhere to be found in Liquid War 5, such as multiple layers.

libQGLViewer: C++ Library for 3D Development

libQGLViewer is a C++ library based on Qt that eases the creation of OpenGL 3D viewers.

It provides some of the typical 3D viewer functionalities, such as the possibility to move the camera using the mouse, which lacks in most of the other APIs. Other features include mouse manipulated frames, interpolated keyFrames, object selection, stereo display, screenshot saving and much more. It can be used by OpenGL beginners as well as to create complex applications, being fully customizable and easy to extend. Based on the Qt toolkit, it compiles on any architecture (Unix-Linux, Mac, Windows). Full reference documentation and many examples are provided. libQGLViewer does not display 3D scenes in various formats, but it can be the base for the coding of such a viewer.

libQGLViewer uses dual licensing: it is freely available under the terms of the GNU-GPL license for open source software development, while commercial applications can apply for a commercial license.

Related Links:

Laserface Jones Postmortem

Background Info

After growing up wanting only to make videogames, and making a few small games with Pascal and later Hypercard in grade school, I released my first game for the uDevGames contest in 2004, called Kill Dr. Coté. It won the award for Best Gameplay, was a fan favorite, went on to be published by Freeverse, and got me my first job in the industry as a programmer.

Laserface Jones1

Since then, my output has been scarce. I quickly followed up with “Arachnoid: Predator of Worlds” in July 2005, but after that, working full time in the industry drained me and thwarted any progress on independent work. Several years passed, and during that time I first yearned for the energy to work on a project, and after that failed, I started to even doubt whether I would be capable of such a project and still keep myself fed. When I heard that uDevGames 2008 was starting, I figured it would be the best time to find out once and for all. While in 2004, my purpose was to prove my talent and ability to the world, this time around it would be to prove it to myself!
Read the rest of this entry »

asmjit x86/x64 JIT Assembler for C++ Language

AsmJit is complete x86/x64 JIT Assembler for C++ language. It supports FPU, MMX, 3dNow, SSE, SSE2, SSE3 and SSE4 intrinsics, powerful compiler that helps to write portable functions for 32-bit (x86) and 64-bit (x64) architectures. AsmJit can be used to create functions at runtime that can be called from existing (but also generated) C/C++ code. AsmJit is crossplatform library that supports various compilers and operating systems. Currently only limitation is x86 (32-bit) or x64 (64-bit) processor. Currently tested operating systems are Windows (32 bit and 64 bit), Linux (32 bit and 64 bit) and MacOSX (32 bit).

Related Links

Lightweight IDE Testers Wanted

Ingemar Ragnemalm, best known for writing the Sprite Animation Toolkit (SAT) and the book ‘Tricks of the Mac Game Programming Gurus’ has released a new Mac OS X IDE called Lightweight IDE.

Lightweight IDE was written after the observation that IDEs have gotten more and more complex, to the result that it is a problem. The IDE is not always a help, it is a burden.
Read the rest of this entry »

FIDRIS Postmortem

Background

I seem to be spending more and more time on planes these days — often slowly taxiing around airports or waiting in a holding pattern to land! While idly staring out of the window I started thinking about what it must be like to be an air traffic controller, trying to get so many planes to land safely and quickly with only a limited number of runways and aircraft stands. Thus the idea of FIDRIS was born. Fast-forward several thousand years and you have a game where the object is to manage a space station, docking as many ships as you can given finite resources of time and space.

As one of the uDevGames voters commented “I’d say it was a creative risk to tackle the idea of this game”, and that’s definitely the case — at the start of the contest I just had this idea, but didn’t know if it would actually turn out to be ‘fun’ or not! What I did know was that it was a simple enough idea to be finished and polished within the three months I had available for the contest.
Read the rest of this entry »

From C++ to Objective-C

The Objective-C language (C++ “challenger”), is not very widely spread outside de MacOS X/Cocoa world. However, it is really worth studying. Unfortunately, the few documentations that can be found are targeted most of the time to OOP beginners. Therefore, an advanced C++ developer cannot find quickly the equivalents of its usual techniques : time is lost at exploring the language. So, I have tried to gather in this document a lot of C++ and Objective-C concepts, to show how to switch from one to another and understand the Objective-C paradigms. I hope that it will help good developers to rapidly adopt Objective-C.

Mono 2.0 Brings C# to Mac OS X and Linux

The Mono project was created by Miguel de Icaza, to accelerate desktop Linux application development. More recently it builds cross platform implementations of Microsoft’s .NET framework. Mono 2.0 was just announced, and brings a greater range of compatibility with .NET 2.0 and C3 3.0 to a variety of platforms including Mac OS X and Linux. To read the whole article on arstechnica, click the link below.

Related Links:
arstechnica.com: Mono 2.0 released, brings C# 3.0 to Linux and Mac OS X 

From C++ to Objective-C Free Ebook Released

A free Ebook has been released entitled, ‘From C++ to Objective-C’ by Pierre Chatelier.

This document is designed to act as a bridge between C++ and Objective-C. Many texts exist
to teach the object model through Objective-C, but to my knowledge, none target advanced C++
developers wanting to compare these concepts with their own knowledge.

To download the entire book, please visit the link below.

Magic Stones Postmortem

Magic Stones Opening Screen

Overview

I always liked the idea of making a fantasy-card game, so I started to outline the basic idea on a piece of paper. Yes, planning was essential in this kind of game, I knew it from the start (and luckily I did it).

I decided to base everything on Celtic mythology, so I first started to do some research both at the local library and also on the internet. I learned about Celtic runes and thought to assign to each one of them a spell or a summoned avatar in the game. I divided the runes into four elements; air, water, fire, and earth, though I realize that their original meaning was a bit different. But hey, it’s just a game!

Magic Stones Characters

After sketching out the general features, statistics, skills, creatures, background story of the game, I put all those numbers together in a spreadsheet page. Next, I had to solve a big problem — how to make the graphics of such a game? The solution was Poser, a great 3D character modeler and animator. I purchased several ready-made 3D models, and after several weeks spent on various renderings, I had the basic 48 avatars ready — 20 avatars for the four elements plus many neutral/evil ones.

I added a role-playing element to the game, so that in addition to your “card deck” you also had an in-game alter-ego, with an inventory of items that could affect your power and a set of basic skills that would influence the game in general.

Magic Stones Overhead

Tools Used

I used Xcode and a very simple but really powerful 2D programming API called PTK marketed by Phelios. I had previously licensed this SDK for earlier titles with great success. PTK is a multi-platform 2D game engine with 3D capabilities built around OpenGL, that just requires a very basic knowledge of C++.

As mentioned previously, the graphics were mostly created with the help of Poser 5. For example, the monsters, characters, and Photoshop was utilized for designing the user interface of the game. Music was acquired through the purchase of a royalty-free online source.

Magic Stones Inventory

What Went Right

Since its launch, the game has had a good group of loyal followers. This might be connected to the release of a “bonus pack” (expansion pack) following the initial 1.0 release. This was a challenging move since once the pack was announced, I couldn’t change my mind. However it was a also a smart move because it helped greatly improved customer loyalty and is keeping my game always “in the news” — thanks to those frequent updates — usually about every 2-3 months.

An attractive point about niche games like RPG is that most developers have abandone this genre — competition is at an all-time low. Larger game publishers are focused on MMORPG and true classic single-player CRPG aren’t produced anymore — there’s a big market opportunity here! My game didn’t need much marketing at all to become popular with RPG fans.

Magic Stones  Tournament Table

What Went Wrong

Despite having planned everything, as always happens in this sort of game, you’ll need to perform some serious testing. When you make a simple match three game, bugs are typically easy to find as the game mechanics are always the same. With RPGs, I had many bugs in the initial version because I didn’t take the time to test it properly as I was too eager to release it — a mistake I will never repeat in any future games!

Magic Stones RPG

Conclusion

I can say that it was both a very rewarding experience and feedback was very positive from gamers, through the process of creating a RPG was also very stressing. The day after initial release was golden, I spent 10 straight hours a day fixing bugs and working on the first expansion pack. This pack, “The Bone Lord”, was released in time for Christmas 2005 — only three short months after the initial 1.0 game release.

Keeping the game updated has proved to be a challenge since there is always a greater need to add more content such as art, SFX, and new gameplay elements. Overall, I like this game genre so I was able to place a great deal of passion into its production — an important factor in completing the project.

  • Title: Magic Stones
  • Genre: Fantasy / RPG
  • Developer: Winter Wolves
  • Team size: 1
  • Released date: October 17, 2005
  • Project length: About 5 months for initial release, then about another 3 months more for the various updates and expansion packs.
  • Development hardware: Power Mac G4 1.2 GHz
  • Critical applications: Xcode, Poser 5, Photoshop
  • Page 1 of 2
  • 1
  • 2
  • >

iDevGames Forum

iDevApps Forum