Brad Wardell's site for talking about the customization of Windows.
Published on June 17, 2009 By Frogboy In Elemental Dev Journals

image

For those of you not familiar with game development, most of the development is spent designing the engines and technologies that will be used by the game. In our case, about 2/3rds of the time is spent on that kind of thing. 

In many respects, this time is much like developing a traditional software application.  Elemental uses a graphics engine that has been developed over the past couple of years for Society.

Our previous games used an engine called Pear that was developed in the late 90s and enhanced over the years.  The new engine, called Kumquat, has all kinds of goodies (as you'd imagine).

One of the big differences in Kumquat from my personal coding perspective is its use of Python for scripting.  Our old engine wasn't scriptable so everything was written in C++.  Now, Stardock is a bit unusual that we don't tend to use scripts in our games. In Elemental, the only reason we're using scripting is to make it easier for other people to mod the game.

Anyway, now we're starting to put the pieces together to actually make "the game" as opposed to a series of technologies.  That means I finally get to start sinking my teeth into AI.

With Galactic Civilizations, I only got a couple of months to work on the AI and I had to do it basically on my own.  This time around, our team is large enough that I get to work on it longer and I have help.

Not that I don't mind writing functions like get the distance between two points or whatever but having others who can write the worker functions will save me a lot of time.

One other difference in Elemental was the decision to have multiplayer support. There's a single player reason for this - I want to see how people play the game before the game is released so that I can incorporate clever strategies into the AI.

Those of you not familiar with Stardock developed games know that from my personal perspective, the only point to these games is the AI.  Personally, I think it's great that humans want to play the game too but I'm in it for the computer players.  My fun on GalCiv was always watching the different AI personalities fighting each other to see who would win.  But then again, I'm a pretty weird guy.


Comments (Page 1)
5 Pages1 2 3  Last
on Jun 17, 2009

Neat stuff.

*Makes a note to start using camelcase in function names*

on Jun 17, 2009

So would you say that the underlying technologies, the engine and so forth are complete at this point, or do you expect they will continue to be "tinkered" with during the remainder of the development cycle?

I really appreciate your perspective that a major purpose of multiplay is to develop AI's that can both emulate human type of innovation as well as develop good counter strategies to human dirty tricks! Based on the fact that you did the GalCiv AI in a couple of months, I really have high hopes and expectations from E:WOM's AI - I really believe that you have the capability to develop a truly next generation of AI (at least that has been seen in computer games). I was pretty happy with the AI in GalCiv2, but I will say I had the feeling that the different personalities could have been fleshed out more and have at least some of the opponents display some real cunning - although they did a fine job of behaving accurately for the stereotypical opponents that were represented.

I would realy like to see opponents that are in it to win, but also behave at least somewhat like a person would. Instead of just blowing up at you, an ally should be a little more willing to warn you that you are doing something that it does not approve of, and give you an opportunity to comply. I also want some surprises from the AI that will reflect the unpredictability of the human player. Most AI out there now, you just have to learn how a given computer opponent needs to be dealt with, and then follow by rote how to behave to get the AI behavior that you want. AI needs boith a degree of consistency (a real personality profile) but also the capability of doing something unexpected.

I have high hopes that you will be able to deliver something that will really shake up the ganing industry.

on Jun 17, 2009

Agreed with you on the watching computer dish it out.

Mathematically interesting!

on Jun 17, 2009

One other difference in Elemental was the decision to have multiplayer support. There's a single player reason for this - I want to see how people play the game before the game is released so that I can incorporate clever strategies into the AI.

   I love you! 

I can't wait for the first time an AI 'goes Gandalf' on me.

Sammual

on Jun 17, 2009

you are pretty strange frogboy

 

personally, i enjoy playing games. i am a human and i like to play against other humans. im thrilled that you are adding multiplayer to elemental

on Jun 17, 2009

The AI in Galactic Civilizations 2 was pretty good. I'm eager to see what the AI will be like in Elemental.

on Jun 17, 2009

So will the modders be able to individually access the member AI functions to change the scripts? Meaning, is that hierarchy in the screenshot what's going to be available to the public, and if I want to change the AI's foreign diplomacy stuff I can just start messing around in AIPYForeignPolicy()?

on Jun 17, 2009

This (the AI moddability) is looking very good thus far.

And I'd really like to pit AIs against each other in AI-only matches too, Brad.  Hint, hint   I'll consider my custom built AIs a success when they don't get eaten by yours every time.

on Jun 17, 2009

Denryu
So would you say that the underlying technologies, the engine and so forth are complete at this point, or do you expect they will continue to be "tinkered" with during the remainder of the development cycle?

Today's twitter updates have been about getting units hooked up to receive messages and do what the player tells them to. Based on that, I'd speculate that the underlying tech isn't totally done yet, though it is far enough along that they can start putting it together into a functional game.

They've got quite a lot of development time left until release, so it seems unlikely all the tech is finalized.

on Jun 17, 2009

If it means I can help you make the AI slightly meaner, I would gladly play a game against you.

on Jun 17, 2009

keithLamothe
This (the AI moddability) is looking very good thus far.

And I'd really like to pit AIs against each other in AI-only matches too, Brad.  Hint, hint   I'll consider my custom built AIs a success when they don't get eaten by yours every time.

Yes wouldn't it be cool if this launched a whole new type of multiplayer - no human interaction allowed, it is just "my AI vs. your AI" or even better "my AI vs your and your and your and your AI".

on Jun 17, 2009

So Frogboy what is your general AI approach? Are you going more for a mathematical approach (trying to rate and weight all decisions), going more for heuristics (implementing your gut feelings about the game)...or what else?

I'am really interested, I've implemented one AI for a card game and I already found this really challenging.

And that was for a well known game concept, not like what you have to do, for a completely new concept without any real experience regarding the overall mechanics of the game.

on Jun 17, 2009

Is the python AI api available in the alphas / betas? And are the Stardock made scripts available for editing? Getting started from scratch will be really hard...

I am looking forward to doing some AI programming in python. Doing web-programming in Java at work, so I need to start coding something fun. All Java and No Python makes Horemheb a dull boy...  

on Jun 17, 2009

Fial plug on this (For now): http://forums.demigodthegame.com/354259/get;2236466

Just because I'm not sure if anyone actually saw it before.

 

 

on Jun 17, 2009

I hope we create some clever strategies for the AI.  ;      I'm usually pretty bad at creating such thing.  I just tend to be good at general micro which puts me about middle-high on any ladder or teir system (using other compeditive online strategy games like Starcraft as a base)

 

So I guess the single player AI will be different from the multiplayer AI?   (since the multiplayer AI will have to be mod-ready, where the single player won't)

 

the AI is a part that really excites me.  Just because I'm still enthralled by the old "are you human?  are you sure?" idea of AI that mimics humans as much as possible.

5 Pages1 2 3  Last