by date
Is it in the zone?
Is it in the zone?
| Name: | Phil Carlisle | ![]() |
|---|---|---|
| Date Posted: | Feb 19, 2006 | |
| Rating: | 5.0 out of 5 | |
| Public: | YES | |
| Comments: | YES | |
| RSS Feed: | or Subscribe with . | |
| Profile Page: | View profile page for Phil Carlisle |
Blog post
Project updates below..
Air Ace
We have some amazing things about to happen with Air Ace. So much of it that I cant talk about, but the game is coming along really well. Right now we're mainly bugfixing and optimising the physics code on the game end and Thomas is coming along really well with the server/backbone side of things. We still dont quite have a clear game-plan on the final architecture of the game server systems, but we have support in there that can scale up to pretty much anything. With central services for player stats tracking, authentication etc.
We also licensed some art from www.3drt.com for some ground objects. An artist contact of Thomas's is rigging those assets for us (200+ of them) and we have some more planes on the way.
The other big thing is that we have been approached twice already to license the codebase to produce some more flight sims. It might be that one of those in particular we will help turn into a commercial product (as it has huge potential).
I'm hoping that as we get this project closer to the level of polish I'd like, we can start attracting would-be flight sim developers to use our codebase as the de-facto standard for flight sim development. There was an article about the future of flight sims on www.simHQ.com a few years ago that basically espoused this very idea.
Basically TSE and our modifications are ideal as a platform for quickly creating flight sim games. If you consider the multiplied effect of having a team like the guys at GG making "core tech" for you while you consider the game-tech physics side of things, it just becomes a really good idea to build on that platform. We always intended it to be this way, just didnt realise that anyone would actually care even BEFORE we finish the game. I'm sure once we ship Air Ace that we wont have enough time to deal with all the enquiries!
AI Pack
We have committed ourselves to a particular time-schedule (which I'm not going to divulge here) so that we have a clear cut-off of adding functionality and are then into bugfixing and testing. Everyone on the team has agreed and I must say, its been really great working with Dee and Gary who are both really good self-starters who just get on with thier particular responsibility. So I'm doing the brains, Dee's doing the navigation and Gary is doing the trigger systems.
We will have to wait for some feedback from GG about the whole pack, but we have our own clear internal goals and that is what we are working towards. Obviously there is more to the world of AI in games than a single pack of code can achieve. We do have plans to improve on the current codebase and to offer more specific game support as we move forward (for instance, racing game AI really wouldnt be handled by the current navigation system too well).
As it is, we'll be having a few teams review the functionality and documentation at a later stage so we can determine wether we have met the requirements of our potential audience.
Sports
I haven't really said much about this project yet, as I'm happy to just get it done and then surprise everyone, but I thought I'd share a little thing I've been working on.
One of the games I'm involved with is being written by an ex-student of mine with me as a bit of support and project management. The game is progressing really well, but I wasn't happy with our method of implementing player positioning.
This is a sports title and we were using missionmarkers to denote positions. But in reality most of the time when we play sports, they arent demarked with points, they are demarked with areas.
Think of a football field, or a hockey field, do you stand at a particular point, or do you stand in a particular area?
The point-based markings were becoming unwieldy and having to constantly look-up the objects themselves must be slow (not important for us, but conceptually bad). So I decided to do something about it. Enter.... the Playfield!
Here's a shot of the playfield in the world editor. I'll leave it for you to spot what the sport it is.

So the point of this playfield class, is to allow us to define different playfields (because we are doing more sports titles) using a simple container class to allow us to query things about the playfield. For example you could query the playfield class "am I in side 2's end zone" for an american football game. This makes organisation of the sports AI code a lot cleaner as it only has to query the playfield, rather than looking up multiple object markers etc.
The only thing I really need to add to the implementation, is to allow the playfield object to serialize itself to a mission file. As far as I can tell that wont be a simple thing because the objects are serialized by storing any fields defined on the object to the mission file. I couldnt find a hook where I could stream out my zone definitions in order to re-load them. But its a minor niggle at this point.
Other stuff
Yes, there's more.. lets just say that there are a few more interesting little things coming along on the side. Screenshots and such to follow.
Until next update.
Phil.
Air Ace
We have some amazing things about to happen with Air Ace. So much of it that I cant talk about, but the game is coming along really well. Right now we're mainly bugfixing and optimising the physics code on the game end and Thomas is coming along really well with the server/backbone side of things. We still dont quite have a clear game-plan on the final architecture of the game server systems, but we have support in there that can scale up to pretty much anything. With central services for player stats tracking, authentication etc.
We also licensed some art from www.3drt.com for some ground objects. An artist contact of Thomas's is rigging those assets for us (200+ of them) and we have some more planes on the way.
The other big thing is that we have been approached twice already to license the codebase to produce some more flight sims. It might be that one of those in particular we will help turn into a commercial product (as it has huge potential).
I'm hoping that as we get this project closer to the level of polish I'd like, we can start attracting would-be flight sim developers to use our codebase as the de-facto standard for flight sim development. There was an article about the future of flight sims on www.simHQ.com a few years ago that basically espoused this very idea.
Basically TSE and our modifications are ideal as a platform for quickly creating flight sim games. If you consider the multiplied effect of having a team like the guys at GG making "core tech" for you while you consider the game-tech physics side of things, it just becomes a really good idea to build on that platform. We always intended it to be this way, just didnt realise that anyone would actually care even BEFORE we finish the game. I'm sure once we ship Air Ace that we wont have enough time to deal with all the enquiries!
AI Pack
We have committed ourselves to a particular time-schedule (which I'm not going to divulge here) so that we have a clear cut-off of adding functionality and are then into bugfixing and testing. Everyone on the team has agreed and I must say, its been really great working with Dee and Gary who are both really good self-starters who just get on with thier particular responsibility. So I'm doing the brains, Dee's doing the navigation and Gary is doing the trigger systems.
We will have to wait for some feedback from GG about the whole pack, but we have our own clear internal goals and that is what we are working towards. Obviously there is more to the world of AI in games than a single pack of code can achieve. We do have plans to improve on the current codebase and to offer more specific game support as we move forward (for instance, racing game AI really wouldnt be handled by the current navigation system too well).
As it is, we'll be having a few teams review the functionality and documentation at a later stage so we can determine wether we have met the requirements of our potential audience.
Sports
I haven't really said much about this project yet, as I'm happy to just get it done and then surprise everyone, but I thought I'd share a little thing I've been working on.
One of the games I'm involved with is being written by an ex-student of mine with me as a bit of support and project management. The game is progressing really well, but I wasn't happy with our method of implementing player positioning.
This is a sports title and we were using missionmarkers to denote positions. But in reality most of the time when we play sports, they arent demarked with points, they are demarked with areas.
Think of a football field, or a hockey field, do you stand at a particular point, or do you stand in a particular area?
The point-based markings were becoming unwieldy and having to constantly look-up the objects themselves must be slow (not important for us, but conceptually bad). So I decided to do something about it. Enter.... the Playfield!
Here's a shot of the playfield in the world editor. I'll leave it for you to spot what the sport it is.

So the point of this playfield class, is to allow us to define different playfields (because we are doing more sports titles) using a simple container class to allow us to query things about the playfield. For example you could query the playfield class "am I in side 2's end zone" for an american football game. This makes organisation of the sports AI code a lot cleaner as it only has to query the playfield, rather than looking up multiple object markers etc.
The only thing I really need to add to the implementation, is to allow the playfield object to serialize itself to a mission file. As far as I can tell that wont be a simple thing because the objects are serialized by storing any fields defined on the object to the mission file. I couldnt find a hook where I could stream out my zone definitions in order to re-load them. But its a minor niggle at this point.
Other stuff
Yes, there's more.. lets just say that there are a few more interesting little things coming along on the side. Screenshots and such to follow.
Until next update.
Phil.
Recent Blog Posts
| List: | 11/28/08 - GDC AI sessions 09/18/08 - Tell me I'm not going crazy!! 12/05/07 - The importance of good tools for productivity 11/17/07 - Using the way back machine. 09/21/07 - Juggling cats. 09/04/07 - End of Summer. 08/27/07 - Come work with me!! 08/14/07 - The changing nature of entertainment |
|---|
Submit your own resources!| James Bond (Feb 19, 2006 at 11:17 GMT) |
| Toby W. Allen (Feb 19, 2006 at 12:26 GMT) |
Toby.
| Jeremy Alessi (Feb 19, 2006 at 17:57 GMT) |
| Simon Love (Feb 19, 2006 at 19:41 GMT) Resource Rating: 5 |
I imagine it as a really solid base for every sport imaginable and every other sport that has yet to be invented.
If released as a 'create your own sports game' or a Torque Pack, I am sure people would either make really faithful games as well as prototype seriously inventive games, which could, in turn, become fully realized games played on a real playfield.
I also had a thought about the playfield...could you divide the playfield in 64 games and implement the rules for chess, for instance?
Edited on Feb 19, 2006 20:18 GMT
| Treb Connell (formerlyMasterTreb (Feb 19, 2006 at 21:10 GMT) |
| Phil Carlisle (Feb 19, 2006 at 21:26 GMT) |
Treb: you'd need to implement a bunch of optimisations to make the AI pack navgraph work for an RTS (calculating a path is quick, but not THAT quick). There are plenty of papers online describing how and why. Its basically an A* pather right now, which can be used in isolation. You'd have to just try it I guess.
| Treb Connell (formerlyMasterTreb (Feb 19, 2006 at 21:33 GMT) |
| Willbkool (Feb 20, 2006 at 02:13 GMT) Resource Rating: 5 |
I licensed 3drt's WWII vehicle and German infantry packs, and also the factory pack. Too bad the buildings aren't in .map. But the wrecked trains look really cool.
| Dee (Feb 20, 2006 at 05:12 GMT) |
The one with the initial pack is designed for quite intelligent AI, i.e. multiple decisions re: path cost, so it will work very well for many/lot's of AI at once, but perhaps might not be the right choice for 1000's of troops in one small area all moving at once...
Ultimately the other variation will be an optional choice with the pack in the near future...
It's modified Dijkstra, based on pre-calculated distance cost (basically becomes a lookup table), so has less overhead for 100's of path queries, with the trade-off of less flexible decision variations.
You must be a member and be logged in to either append comments or rate this resource.



5.0 out of 5


