It's all in your head, Part 16

The only place you'll ever hear the truth
User avatar
Chris
Introversion Staff
Introversion Staff
Posts: 1172
Joined: Sat Nov 25, 2000 7:28 pm
Location: Cambridge, UK
Contact:

It's all in your head, Part 16

Postby Chris » Thu May 21, 2009 6:51 pm

Seven weeks ago, the Subversion project team size doubled. We hired a very smart fulltime undergraduate from Imperial College called Andrew Lim, and he’s been working on Subversion for the past few weeks as a Summer Placement. This is quite a big development for Subversion, and I must say it’s quite a relief to not be alone on this massive and epic project any longer.

Andrew Lim’s job is funded by a research and development grant from the Technology Strategy Board – a UK government body set up to promote innovation and research in the commercial world. Part of their mandate is to strengthen the bonds between industry and academia, and we’ve always maintained strong ties with our university of Imperial College London. We’re doing so much R&D in Subversion that we were able to think of several really interesting research areas right away, and the TSB agreed to help fund the project with us, with Dr Simon Colton acting as our liason at Imperial College.

So Andrew has been working on the project of Data Driven Generation. What this means is that he’s working on ways to specify the generation of content (specifically for Subversion) through data files rather than hard coding. Currently the city and building generation is written as a number of C++ generator functions, which makes it difficult to expand, especially for people who don’t work for Introversion (ie modders). Once Andrew has finished, we’ll be able to specify the generation rules for a city, the buildings in the city, and the areas within the buildings, all using generic data files. We’ll be able to expand the generation simply by adding more data files that specify more content in further detail.

Image

Here you can see an example of his initial work, replacing the standard building generation rules with a general-case data rule that generates Pyramids. The Pyramid is pretty much the simplest hierarchically defined shape you can make (you Contract, then Extrude, then Repeat), and an obvious starting point. I’ve got high hopes for this project.

On top of that, Gary spent his first day on Subversion this week. He’ll be working on the editor that we use to make all the custom hand-made content. His ultimate objective is to craft a tool that will mix the best of procedural generation with the uniqueness of hand-made content – so for example you might generate a 30 storey empty building, then manually edit the 29th floor with some really cool stuff, then tell the editor to fill in the rest using the existing Geometry Generator. These two systems combined have a lot of potential.

Continuing on from Part 14, I’ve been attempting to write a generic Forces simulation system for the game world. My aim has been to handle all the basic collisions and forces that you naturally find in a game world – ie I want to stop people walking through walls, or each other, and I want people to be able to walk into Elevator cars and be lifted up when the car lifts up, that kind of thing. There is a ton of work already done in the area of real time physics, and I’ve no intention of writing a full physics simulation system – it’s not required for Subversion, and it’s the kind of job I could just vanish into for a year and emerge at the other end with some software that pretty much every other games company under the sun has already written. I believe a simpler solution is appropriate for Subversion. Nevertheless, I’d always been curious how hard it would be to bring some rigid body physics to the game world, and I’d been investigating a free 3d physics library called BulletPhysics.

Image

Integrating the BulletPhysics library into Subversion took less than two hours. I’m actually very impressed. The set up is very simple – you tell the library the basics like the ground plane and the force of gravity, and then you feed in your static geometry. In the case of Subversion, I simply fed in the entire triangle mesh for the ten storey building I’ve been using as a testbed. No organisation required, no hierarchy of data, just a giant pool of triangles. You then attach BulletPhysics simulation data to your world objects, and tell the library what shape they are, how heavy they are, etc. BulletPhysics supports basic cubes (which I’m using in this test), but also loads of other primitive shapes like Cylinders, Spheres etc, and even complex triangle mesh models. Every frame you call the Bullet Physics update command which progresses the physics simulation a small amount, and then you simply read the positions and orientations of all your world objects directly from the Bullet Physics API. This is my kind of API design.

Image

I spent less than a day on this in total, and got some pretty exciting results even from that brief investigation. I’m not entirely sure how it fits into Subversion yet – I still don’t actually want real physics simulated in the game world – but for visual effects, explosions, dropped objects etc, this might be an extremely useful capability for the Subversion engine to have in its back pocket.

In this video, all of the large red boxes that you see tumbling over each other are being handled by the Bullet Physics library. All the rest of it - the tiny bouncing particles, the gun shot simulation and the opening and closing doors, are all using Subversion's internal engine.

Image

In case it’s not obvious to anyone reading these blogs, Subversion is a really massive project. I think it’s fair to say that it’s too big for us, beyond our scope as just the next game launch. There just isn’t going to be time to complete Subversion to the 100% Gold Plated solution that we have in our minds. So one of the things I’m really keen on is making Subversion very expandable, and thinking of the game launch as the start of the process. I find the Dwarf Fortress project to be fascinating and hugely inspiring. These guys released the first version of this game years ago, and they continue to add new features and capabilities to the engine as the years go by. They deepen the quality of their simulation with every new version, expanding their game inwards. It looks terrible and the interface is appalling, but the depth of their simulation is staggering. If we could make the business model work, this gradual release and improvement over several years could be a huge winner for Subversion.
Last edited by Chris on Thu May 21, 2009 10:14 pm, edited 1 time in total.
User avatar
Phelanpt
level5
level5
Posts: 1837
Joined: Thu Aug 10, 2006 4:20 am
Location: Portugal

Re: It's all in your head, Part 16

Postby Phelanpt » Thu May 21, 2009 7:40 pm

Chris wrote:(...) modders (...) Pyramids (...) explosions (...) gun shot simulation (...) <video of huge spawnpoint being attacked by tiny boxes> (...) Subversion.

:D

Love what you're doing, this project fascinates me beyond belief. :D
Last edited by Phelanpt on Fri May 22, 2009 12:13 am, edited 1 time in total.
PetrGasparik
level0
Posts: 2
Joined: Fri Jun 13, 2008 11:44 am

Postby PetrGasparik » Thu May 21, 2009 8:51 pm

Thank you for DF mentioned.
It is your blog from where I know DF and I lost countless hours to this game since then. When you move over text interface, you find yourself shocked by game depth. Fascinating.
As Subversion.
You two, Toady One and Chris, have more in common that looks on first sight :)
User avatar
recover
level1
level1
Posts: 29
Joined: Sat Oct 01, 2005 5:51 pm

Postby recover » Thu May 21, 2009 9:12 pm

I'm glad work is progressing forward.

I wonder if you could make that business model work though.
I would consider buying Subversion, but I'm not sure I would pay for future expansion packs and such.
If you are referring to free content updates, then great!
Valve has almost perfected free content updates for TF2; they keep the players interested and attracts more players (which gives Valve the income).
User avatar
Aegryan
level0
Posts: 8
Joined: Sun Dec 07, 2008 12:39 am

Postby Aegryan » Thu May 21, 2009 10:08 pm

I'll certainly buy Subversion the second it's released, but this blog entry subtly suggests that 'creep' could be a major problem.
User avatar
MarvintheParanoidAndroid
level3
level3
Posts: 304
Joined: Mon Aug 28, 2006 12:37 pm
Location: UK

Postby MarvintheParanoidAndroid » Thu May 21, 2009 10:43 pm

In terms of business models, Cortex Command also springs to mind - it's a free download, or you can pay a fairly cheap price in return for the full game if and when it is finished, with the discount slowly decreasing as it gets closer to being finished:
Please note that Cortex Command is currently a work in progress and NOT a finished product! The campaign mode and missions are not yet present in the version available right now. However, you may buy a discounted license today, which will unlock the features of all future versions up to and including the final with the full campaign in it!

As we at Data Realms continue to release more complete builds of the game, we will also be reducing the discount gradually until we reach the final version and full price of the product. So the earlier you buy, the better value you get! Although we are very passionate about this project, we cannot guarantee that it will be completed - that's why we offer the discounted price instead of a pre-order deal at full price.

I think it's working fairly well for them, from what I've heard/read, maybe that kind of model would fit Subversion (even without the free option).

I'm definitely tempted to agree that feature creep could be a problem - but then again, it seems fairly clear Chris is aware of that, hence looking into other business models. TF2's post-release feature creep is certainly very successful and seems to be letting Valve experiment and try a lot of interesting new things (even though some of the Steam forums might not like it so much :P), but Valve had the liberty of being able to spend goodness knows how many years developing the initial release. Going back to Dwarf Fortress, there's a terrifyingly in-depth page detailing exactly what is planned for the "finished" version, along with priorities, certain areas to be completed at certain times, and so on, so if there's a clear plan for Subversion I imagine that would help a lot.

Edit: Reading the "Power Goals" section for Dwarf Fortress is both absolutely terrifying and an amazing testament to the crazy vision that the developers have. Once my exams are finished I will have to get myself back into working through the tutorials I started reading.
RagingLion
level1
level1
Posts: 24
Joined: Tue Sep 30, 2008 2:35 pm

Postby RagingLion » Fri May 22, 2009 12:10 am

First up it's really great to see another blog entry again and to hear that Subversion is progressing, now with added personnel and funding.

Some tidbits that excite me for the final game: "explosions" confirmed. It also seems an even more nailed down fact now that there will be people populating the world, using elevators etc. as is mentioned. This makes me really curious about something which probably won't be created by Chris or whoever for quite some time. What will these people look like? They obviously won't be fully featured humans and will be simplified in some way since Introversion aren't going for complete graphical realism, so I wonder what they'll end up looking like; and not just visually but how (or even if) they animate at all. It will be the first time human-like figures have been created in an Introversion game and I just wonder how it will be done. Could they be as iconic and memorable as Darwinians? Seems unlikely, but if they're somehow particularly striking it might be the first thing people think about in their mind when hear about Subversion in the future when it comes out, so therefore their design could be very significant indeed. Potentially helpful to the IV marketing department as well for differentiation and familiarisation and all that.

Anyway ... I'm getting way way ahead of where current development is. Just a mind spout about something interesting to look out for in the future.
Taedal
level2
level2
Posts: 138
Joined: Fri Nov 03, 2006 9:29 pm

Postby Taedal » Fri May 22, 2009 12:16 am

Great to hear some more about Subversin thanks for posting! This continues to be inspiring. Such potential, i'm thankful for computer games that you are working on this. Someone needs to do this to prove where we go next. Keep it up, this will be historic! Ok still don't know precisely what will happen, but I reckon :p
Puzzlemaker
level2
level2
Posts: 115
Joined: Sun Jan 29, 2006 10:37 pm

Postby Puzzlemaker » Fri May 22, 2009 1:49 am

Honestly, my wet dream has been for Dwarf Fortress and Introversion to join forces. I suppose this is close enough though. Looking awesome!
AlbeyAmakiir
level0
Posts: 2
Joined: Fri May 22, 2009 3:43 am

Re: It's all in your head, Part 16

Postby AlbeyAmakiir » Fri May 22, 2009 3:56 am

Chris wrote:It looks terrible...

No it doesn't (well, not to everyone). It looks great for what ascii is capable of. :P Maybe it depends on what you grew up playing. Rogue, Ancient Domains of Mystery, Hack...
martin
level5
level5
Posts: 3210
Joined: Fri Nov 19, 2004 8:37 pm

Re: It's all in your head, Part 16

Postby martin » Fri May 22, 2009 11:54 am

Chris wrote:We hired a very smart fulltime undergraduate


Would you like another undergraduate? This one doesn't even demand pay, just the chance to play with subversion for a weekend ;)
GENERATION 22:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experiment.
User avatar
Wasgood
level5
level5
Posts: 1082
Joined: Sat Sep 02, 2006 11:44 am

Postby Wasgood » Fri May 22, 2009 12:46 pm

Gunshots, people and a building/city. We have to infiltrate the place and steal plans for a company.
andrewf
level0
Posts: 8
Joined: Thu Jun 14, 2007 9:55 pm

Postby andrewf » Fri May 22, 2009 4:25 pm

I love this kind of business model.
You invest a lot of time to build a great engine/world and get to use it for a longer period.

I always thought that a lot of games should have been developed further. Version 2 of a game is often just a version with better graphics and a new story instead of adding depth and gameplay. I love it if subversion were to be more than just one discrete game.

You could develop the game like this:
Start off with a decent version (v1.0) which has the basic simulation features and some storyline/missions for 15£
and than work on updates every 4 months for 5£ that add a new layer of depth and/or story to the game.

That would be awesome and in the end, after a couple of years, could be an extremely deep and rich game with an ecosystem of mods and extensions.

You also get to incorporate tons of gamer feedback with every iteration.
devnevyn
level0
Posts: 3
Joined: Fri May 22, 2009 4:20 pm
Contact:

Postby devnevyn » Fri May 22, 2009 5:19 pm

Been following your blog entries since you started, incredibly fascinating. Intrigued by your UI experiments and the sensor/actuator system!

Anyways, on business model: You could try it the way Wolfire is doing it for their new Overgrowth: they sell pre-orders for their game for about $20, and anyone who pre-orders get to play and help direct the alpha. They get some funding AND very excited and helpful fans!
User avatar
trickser
level5
level5
Posts: 1826
Joined: Thu Mar 06, 2008 2:15 pm
Location: The Senate ; GMT+1
Contact:

Postby trickser » Fri May 22, 2009 6:17 pm

Its beautiful to see it growing in every post. Really.


About the business model considerations: I have a objection, IV games are a bit more mainstream then a ASCII graphics hardcore roleplaying game. I am sure that would work for IV too, to some degree. But maybe Subversion has enough hit potential to buy IV the next 2 development cycles or so.
But i guess IV is looking for a more safe business model rather then a risky one, recalling the 'this was our 2008' posts.

Return to “Introversion Blog”

Who is online

Users browsing this forum: No registered users and 1 guest