Elemental Beta 1C Preview

[more]

Today Elemental Beta 1C should be going up.  This is the AI beta.  From a player’s point of view, it’s largely meaningless because the computer players are still very primitive.  But from a technical point of view, it’s a key milestone because hundreds of APIs have been written that can now be enhanced to make the AI more intelligent.

Here’s some examples of what’s been getting in:

Previous check-in(s)

// Building a City

· -if it's the first city, it looks for a tile location adjacent to a food tile.  When it finds one, it will build the city there

· -for any other city, it looks for a tile adjacent to a mineable resource (like, ore or a shard, etc..)

// After building a city

· -look for and grab nearby goodie huts in 'r' tile radius of the city (where r is 20 for now)

// City Build Mode

· -will leave early if no buildable tiles or subtiles

· -Will not queue up more than one imp at a time

· -randomly selects a buildable imp

· -attempts to find a tile or subtile within the city to place the imp on (might not fit anywhere)

· -Implications: an AI city will never have more than one imp under construction at a time.  It's possible that serveral turns will go by where an AI city doesn't have anything under construction (due to randomly picking an imp, and then seeing if it fits anywhere)

// Research

· -leave early if no cities (no cities = no population = no research points)

· -if not already researching a category, pick a random one

// Research Breakthough

· randomly pick one of the breakthrough techs

· 50/50 chance to continue with current category or pick a new category (new one will be random)

This Check-in

// Unit Design

· only do it every 't' turns (where t is 10 for now)

· assign random name (eventually we want to name based on battle strength, xml driven)

· Assign random weapons

· Assign random armor

· Assign random equipment

· if SumOfAllStats is greater than an existing design, save this design, including the turn number it was created

// City train unit

· leave early if already training a guy

· randomly pick a design and use it

· sure we aren't training guys that were designed x turns ago (where x is 100 for now)

// HIGHLIGHTS

+ AI now attempts to design a unit type every 10 turns.  Keeps it if it is better than at least one of that faction's previously designed unit types (during that game)

+ AI picks a random unit to train, so long as it wasnt designed more than 100 turns ago, otherwise a different one is choosen to be trained

// DETAILS OF CHANGED FILES

+ MainMapViewWindow.cpp

- checking in some changes I missed for the ability to use the debug shortcut keys in Release by specifing USE_DEBUG_KEYS

- fixed some else if statements that had the "else" and the "if" on different lines

+ AISkeleton .h/.cpp

- Added a pure virtual function called AIDesignUnit() that is meant to be overridden by your AISkeleton-derrived class.

+ AiBasic .h/.cpp

- Added a declarations and definition of AIDesignUnit()

- added function AICompareToDesigns(), which takes a unit type pointer and compares it to all the other unit types designed by AI during that particular game.

- Added a variable to keep track of the last turn that this AI successfully designed a unit

- AI will not attempt to train units if net income is below 0.0

- AI will not train a unit that was designed more than 100 turns ago

+ UnitType .h/.cpp

- Added function GetStat(index) which will return the value of the stat at index.  Still need to add code to sum up the modifiers

- added functions for SigmaStat.  SigmaStat is all your stats summed up.  functions added are CalcSigmaStat(), and two variations of CompareMySigmaStatTo() which takes either another unit type pointer, or a ulong for the other sigma stat value.

- changed AddUnitType to return a BOOL so you can tell if it failed or not

- added stat copying to the copy constructor

 

For the most part, the AI is just picking random stuff.  The way AI development works is that you create the plumbing and then refine over months.

Now, for those of you not in the beta, this is still very primitive stuff.  So don’t envy the beta group here as they’re suffering through lots of pain still and will continue to do so for at least another month and a half before the game remotely becomes “enjoyable” IMO.

We will be continuing to use the 2D sprite engine for the game until the beta group determines the game is enjoyable without having to rely on its state of the art engine that we have disabled presently.

3,868 views 22 replies
Reply #1 Top

Looks good.

 

I like the new research screen much more then the old one, from just looking at it. :)

 

Since you've mentioned city building, any chance of changing the behaviour of hut building and resource access?

Reply #2 Top

Looking better and better.  I'll get a good chunk of time in over christmas.  Hope to see a 1C.1 by them.

Reply #3 Top

just a quick question from a beta tester standpoint --- what kind of feedback are you looking for from the 1C release regarding the AI? 

Reply #4 Top

Looks great. Can't wait to try it out.

Reply #5 Top

Wow these videos are really cool... Thanks for showing us the "sausage factory", Frogboy! This is the kind of stuff that makes Stardock better than the rest :)

Reply #6 Top

Looking good, thanks for the update! :grin:

Reply #7 Top

Very glad to hear that the city building UI will not stay so much like a console game; I'd be happy to give up half the screen to a well-detailed improvement list that I could just read instead of mousing all around for pop-ups.

Reply #8 Top

I love these updates. Elemental will hopefully have one of the best AIs seen in a strategy game. 

Reply #9 Top

Thanks for the check-in notes, Brad, I find them easier to understand than more narrative changelogs since I'm used to writing/reading check-ins myself.

Reply #10 Top

Sweet !

But, I hope we won't have "perfect" values of the stats of other players. How should I know that they have such income or how much this or that. What would be the point of spying if you already know everything important about  a realm ? (and their income/military power/etc. are vital informations)

Reply #11 Top

Finally! Some more testing! Nice update! :thumbsup:

Reply #12 Top

Ah, downloading update now. And I wanted to go to sleep. :(

Reply #13 Top

Looks great, thx for the update. I am really looking forward to this godly game.

Reply #14 Top

I see your preview video have the FPS and the memory consumption on screen. Is it possible to get it as a player too?

Reply #15 Top

At last!

I haven't noticed it anywhere (or I just forgot I read it), but will the AI cheat? By cheating I mean either possesing knowledge which you shouldn't have, or gaining an advantage in fights/production/etc.?

Reply #16 Top

We will be continuing to use the 2D sprite engine for the game until the beta group determines the game is enjoyable without having to rely on its state of the art engine that we have disabled presently.

 

Might as well throw in the 3D engine right now, then. Aside from frequent lock-ups still, I already think it's fun! And I like the new research system much better. Huge improvement there.

Reply #17 Top

One small step for gamers....

Reply #18 Top

Quoting egable, reply 16


We will be continuing to use the 2D sprite engine for the game until the beta group determines the game is enjoyable without having to rely on its state of the art engine that we have disabled presently.



 

Might as well throw in the 3D engine right now, then. Aside from frequent lock-ups still, I already think it's fun! And I like the new research system much better. Huge improvement there.

Nah, currently the game is not much fun. It's missing any kinds of challenges and the current economic and research systems are horribly unbalanced. And city building is very bad right now.

 

But it's shaping up nicely and seeing the game improving is fun to watch. :)

Reply #19 Top

Eye candy in the unit creation---thumbs up!

Reply #20 Top

Awesome thank you for that tour Lord Frogboy.  Definitely like seeing development in progress.  This is like fan direct access and input for each game if you can.  Not sure if any other game company is doing this but I like the open forum invironment for content creation.  It looks like you've already received several positive feedback points in the forums.  Most of the development staff seem active and supportive.  Can't wait for the next development blog!

Reply #21 Top

GJ so far! I'm loving the expanding of your city on the map. It's really cool.

One question thou, will there be terain changing spells? I loved playing as green in MoM, and using my spells to change the land to make it more hospitable, which in turn made my cities grow to maximum population.

Reply #22 Top

One question thou, will there be terain changing spells?

I've not caught anything about major terrain-improvement magic, but there's already some volcano-raising stuff in the internal builds. I'll be really surprised if the game ships without some overland magic similar to MoM's Change Terrain spell.