tribes

 

 Cubanate, lost opportunities, and licensing models.

March 8, 2010

About 5 years ago I approached Marc Heal of Cubanate fame to “license” one of his tracks for an upcoming, free game in the spirit of Tribes 2, that I was involved in from a development perspective.

The game was called “Legends”, and was a community and fan driven spiritual successor to the Tribes series after Dynamix was closed down by Vivendi Universal games.

Legends, was based on the then Indie-sourced Tribes engine, redubbed Torque, and released by the ex-Dynamix team under the Garagegames banner.

Marc and I had some discussions around the licensing of his songs, but in the end, I couldn’t really offer him anything else than fame and possibly (mis)fortune for having his music embedded in a completely free game.

I’m glad to see that a few years later, his tracks Industry and Oxyacetylene were released as part of the Gran Turismo series of games.

Cubanate’s music simply has the attitude, and gusto for action games, and would be a perfect fit for any future action games. I’ve not heard of Marc, and Cubanate for many years, but I hope that he has found a niche in sound production and making some commercial money off his great musical talents.

In a (probably overinflated, self-gratuitous) way, I hope that I may have had some influence on making him considering the game and electronic media as a sales avenue for his music.

The sad part is that there is actually very little live, or otherwise staged footage of Cubanate left on the internet. I reckon if Cubanate had ridden the Web2.0 wave a little longer like bands such as Sister Machine Gun, and Nine Inch Nails, they could have continued their awesome industrial electronic hit career. Of course, one can never predict or understand the band’s internal politics and cannot question their personal decisions.

I saw Cubanate live. Once. In South Africa, in Hillbrow, in a derelict broken down building that absolutely suited the crass, industrial nature of Cubanate’s music. It was one of the most awesome experiences in my life.

Long live Cubanate, and one of my favourite tracks:

Other Cubanate tracks to “look” for, in order of priority:



 

 Tribes:Vengeance’s miserable failure

November 19, 2006

Sadly,  it turned out that Tribes:Vengeance really sucks. Vivendi cancelled the very FIRST patch for the game, with a couple of lame excuses.  Such as “we only sold 7800 copies in the first week”. It’s pretty straight forward guys.  Release a game that is broken, unfinished and no fun to play, and nobody is going to want to buy it. Simple economics. If you had at least bothered to fix it, you may have caught the “long tail” and benefited from the loyalty of the fanbase.

It’s a pity. Tribes was the best team-based Science Fiction game of the last two decades, and I’m going to seriously miss it. Every other game I look at that doesn’t have jetpacks simply gets a “poor groundhuggers” response from me. Perhaps community games like Renegades, or StarSiege:2845 will bring back some of the goodness that was Tribes, but it just simply isn’t going to happen in the next year or two.

*sob*

I have however dabbled in some Tribes:Vengeance development, but only briefly.

My T:V Projects

VengeanceSpawn – infinite spawn-like tool for Tribes:Vengeance
VengeanceMaster – info about the Gamespy system used by the in-game  T:V matchmaking



 

 Tribes:Vengeance Master Server Polling

I wrote a bit of code, using Luigi’s code for GameSpy in PHP, that allows you to query the gamespy master server and retrieve the list of IP and port’s for any of the GameSpy supported games.

This handy image –> [http://vengeance.za.net/servers/serverpng.png]
for example, is generated using the code, and is updated dynamically every 3 minutes.

The query code isn’t really cleaned up enough or ready for release yet, but you can mail me  if you’re interested in obtaining a copy in the meantime.



 

 Tribes:Vengeance Scripting tips, and gotchas

Tribes:Vengeance is based on the Unreal Tournament Engine.

Here’s how it differs from normal UT scripting:

  •  When extending other base classes you have to specify the fully qualified name of the base class, e.g. instead of doing class Foo extends Object; you HAVE to do class Foo extends Core.Object; – this is naturally braindead but I guess IG may have had their reasons.
  •  C-Style comments are broken. Don’t use /* or */ to delimit comments, or blocks of code. It breaks if there are any other slashes inside. This  is pretty dumb.
  • When attempting to use structs defined inside other classes in your own derived classes, you may have to use the dependson() directive like so: class Foo extends Engine.Object dependson(~SomeClassWithStructsInIt);

Things you will need to do to make UCC work (For Beta/Demo)

Edit your UCC.ini, and ensure that you have the packages that you’re working on listed like in this following example:

~EditPackages=~Core ~EditPackages=~Engine ~EditPackages=~IGEffectsSystem ~EditPackages=~IGVisualEffectsSubsystem ~EditPackages=~IGSoundEffectsSubsystem ~EditPackages=~Editor ~EditPackages=~UWindow ~EditPackages=~GUI ~EditPackages=~UnrealEd ~EditPackages=~IpDrv ~EditPackages=~UWeb ~EditPackages=~UDebugMenu ~EditPackages=~MojoCore ~EditPackages=~MojoActions ~EditPackages=~PathFinding ~EditPackages=~Scripting ~EditPackages=~AICommon ~EditPackages=~Movement ~EditPackages=~Gameplay ;~EditPackages=~TribesGui ; these have to be commented out, crashes otherwise. ;~EditPackages=~Tyrion ; these have to be commented out, crashes otherwise. ~EditPackages=~Physics ~EditPackages=~TribesAdmin ~EditPackages=~TribesWebAdmin ~EditPackages=~TribesVoting ~EditPackages=~TribesTVClient ~EditPackages=~TribesTVServer ; my packages ~EditPackages=~FooPackage ; Add your packages at the bottom of the list, othwerise you’ll get undefined()s

  •  When compiling, you need to use “ucc make -NoBind” otherwise all the core packages will look for their associated headers/and dll’s to bind.
  • You will need to edit StartupUCC.ini and include the path to the script source code.


 

 Legends – A spiritual successor to Tribes2

I’m one of the developers behind a game called Legends. Legends started out as a project to be what Tribes2, and Tribes1 never was, and then, it grew completely out of control. I’m officially the Linux port-monkey, and general “plumbing” coder for Legends.

Legends was made possible by the awesome people of Dynamix, who got shut down by Sierra. The lead developers then started a company called GarageGames, which licenses the Torque (ala Tribes2) game engine to developers for the meagre sum of $100.

That’s the best deal you can get for _any_ kind of game engine. Tribes1, and Tribes2 were well known for their excellent network code, and engine. Besides that, the engine has an open scripting interface, and runs on Linux, AppleMacintosh, and Win32.

To checkout, Legends go to http://www.legendsthegame.net/

Contributions are welcome. We need more sound specifically. The game is currently at no 9 on the HappyPenguin rankings, and is well known amongst the Gentoo crowd, and loved elsewhere.