Brad Wardell's Blog


Only on the Internet

Published on Tuesday, August 6, 2013 By Brad Wardell In Internet

image

I so do love the Internet. I really do. 

Only on the Internet can “some guy” tell you how you should be doing a job that you have obviously succeeded at far beyond their wildest dreams. Smile

All the time in the world and more

Published on Wednesday, July 31, 2013 By Brad Wardell In Life, the Universe and Everything

imageMy gift and curse is that I don’t require a “normal” amount of sleep. After 4 or so hours, I wake up, full of energy for the next day.  It’s come in handy when it comes to being productive but it's gotten me into a lot of trouble as well as I can almost always respond more in a “debate” than someone else giving the impression that I’m obsessing on something when in fact I just have…well, more time available to invest in something.

With that introduction, let me introduce you to one of my favorite sites of all time:

http://www.politicsforum.org/images/flame_warriors/

Which flame warrior are you?

Elemental: July 2013 Status Report

Published on Tuesday, July 30, 2013 By Brad Wardell In Elemental Dev Journals

Greetings!

So here we are! July 2013.  Next month will mark the 3 year anniversary of the launch of the first Elemental game!

2010: Elemental: War of Magic

2012: Elemental: Fallen Enchantress

2013: Elemental: Fallen Enchantress – Legendary Heroes

Could we worse. Could be like Star War: Episode 2: Attack of the Clones! Smile

So where do we stand?

Legendary Heroes v1.3

We are still working on v1.3.  The AI got a major overhaul for v1.3 and so there’s a lot of play testing in this.  In hindsight, redoing the monster behavior and the player AI for the same version probably was a bad idea. But in the long run, it’s better to get this out of the way so that players can feel like the world makes more sense.

One nice little touch in 1.3 is that the AI will inform you when it’s cast an offensive spell (see below):

image

A lot of the AI updates in v1.3 have to do with handling path finding and massing of troops.  There’s been some new internal APIs programmed in that have made it a lot easier for the AI to put together more effective armies.  The AI will also interact more with the player.

For those who play on below normal difficulty levels, have no fear. While the AI will be more “intelligent” we are lowering the resources that they get a bit and making them make fewer decisions per turn so that they aren’t so overwhelming.

Next up for Fallen Enchantress

We have some stuff in the works but it’ll be awhile before we’re ready to announce it.  Fallen Enchantress will continue to go forward with meaningful updates that we’re funding with the DLC purchases.  The DLC system turns out to be a good system as players are able to get more optional content which in turn lets us keep adding new features to the game itself.

v1.4 will probably focus on some UI and performance related items and v1.5 will (I hope) be the big diplomacy update. 

Beyond Fallen Enchantress

There’s a lot more we want to do with the Elemental world.  We debate regularly about what we should name future things.

I.e. Elemental II? Fallen Enchantress II? Elemental: Something New? Or a completely new series?  Tell us in the comments what you think.

Multiplayer

We have a lot of requests for this.  Here’s the basic issue.  The tactical battle system in the Elemental games was not written in a way that allows for multiplayer. All the actions in it happen within its own box. The short version is that all the tactical battle stuff would have to be rewritten, from scratch, to have the tactical battles happen in multiplayer and that’s just not going to happen. That would be extremely expensive for us.  It’s not that we don’t think there should be multiplayer. It’s just a cost/benefit ratio (not just in terms of dollars but in terms of human assets that would have to be taken from other projects). It’s not something I’m happy about either.

More DLC

The DLC has been doing extremely well. Thank you for your continued support! We have more on the way.  The next one we have in mind is called the “Loot pack” which is just adding a ton of new items to the world.  If that does well, there’s more spells and equipment that could be added to the game world as well. 

It would be amazing if we could keep making free Fallen Enchantress updates for years to come with optional DLC paying for it. Talk about a good deal for players.  I’d like to see the kinds of feature improvements to Fallen Enchantress: Legendary Heroes that you’d normally see in an expansion.  The biggest problem then comes down to naming (i.e. do we need to come up with Fallen Enchantress: Infinite Edition or something someday? Give us your opinions there).

Anyway, we are just beginning still with the Elemental universe! Stay tuned!  We would love to hear your thoughts on the game name issues (in terms of making it straight forward to new players).

Mercy for thee but not for me

Published on Sunday, July 28, 2013 By Brad Wardell In Life, the Universe and Everything

 

There's a great line in Atlas Shrugs that goes like this: "You concluded I was the safest person in the world to spit on because I have power over you and that I would be tied by the fear of hurting your feelings by reminding you of it."

Our society seems to have taken that view en-masse in recent years.

Fez 2 canceled

Published on Saturday, July 27, 2013 By Brad Wardell In PC Gaming

https://twitter.com/Polytron/status/361188665709436928

I’2184043-fez9m kind of bummed about the prospect of no Fez 2. I hope he changes his mind.

Phil Fish had been taking quite a bit of Twitter abuse lately which culminated with a back and forth with a game journalist.

Anyone who is on Facebook has probably seen family or friends wilt quickly from even the mildest of criticism.  Game developers, by contrast, are very closely connected with the players who often have very direct access to them.  I can tell you, from experience, it gets really old really fast constantly being criticized or (since I can’t come up with a more sophisticated turn of phrase) lied about.

As a notoriously short-fused guy myself, the level of scrutiny people get, particularly "successful" people is something few people can withstand. I read insane crap on twitter all the time (and I suspect most of you do too). Being a game developer doesn't imbue someone with magic tact powers.

A lot of game developers (and I put myself in this category) have an almost unhealthy level of passion to please those who play their games. This can turn very very ugly when there are bumps in the road.

From a purely business perspective, those people (and I put myself in this category) probably shouldn't be interacting directly with people on the Internet. But the problem is, it's that interaction that fuels their passion to make games in the first place.

So on the one hand, Phil Fish should probably not be interacting with strangers, publicly, on the Internet (or at least, not without some controls) but on the other hand, if you take that away, a lot of the motivation and drive to make games goes with it. That's why the age old "You need to hire a PR minder!" doesn't work on that personalty type.

It would be, imo, financially insane for Phil Fish not to make a Fez 2. But people like him are rarely driven by financials.

Back from the Atari auction

Published on Saturday, July 20, 2013 By Brad Wardell In PC Gaming

Just got back from New York on the Atari auction. 

Being an inappropriate and embarrassing person, I naturally took pictures of the location as it was just plain amazing.

Here are some pictures from the auction.

2013-07-18 11.07.31

Outside the window.

 

2013-07-18 14.05.45

Each bidder was given a conference room where they could work out the purchase agreements with Atari and the investment bankers as well as just spend time working between the auctions.

 

2013-07-18 13.00.42

This was taken at the back of the auction room.

 

2013-07-18 10.31.18

This is the skyline.

 

I won’t say in this post who won the various auctions as I don’t want to step on someone else’s announcement.  I will tell you how the auctions went.

Typically (except in the case of Battlezone and Moonbase Commander) the bidders are placed together in a room. Each bidder is assigned a bid order in a given round.  Each round, the bidder can agree to raise their bid $20,000 over the previous bidder or choose to pass. If they choose to pass, they’re out of the bidding and it continues.

The head of Stardock Entertainment (Derek Paxton aka Kael) did the bidding on one of the items were were interested in and I bid in a later auction on a different item.

At the end of the auction, the highest bidder and second highest bidder then negotiate a finalized purchase agreement of the intellectual property assets in question.  If the highest bidder, for whatever reason, fails to close the deal, the second highest bidder than gets it. 

We went there to get two items in particular. One in particular we really really wanted because we are insane fans of the series.  That one we got.  The other we wanted we didn’t get, we were the second highest bidder.

I imagine there will be announcements next week by the new IP holders to whom I congratulate.  It’ll be good to see these awesome games brought back in one form or other.

Surface RT revisited Summer 2013

Published on Wednesday, July 17, 2013 By Brad Wardell In Personal Computing

I'm posting this from my Surface RT (on an airplane no less).

When I first got my Surface RT, I really liked the hardware but the software was in a terrible state. 

Now, 9 months later, I am happy to report that Microsoft has so improved Surface RT that if I bought a Surface RT today and compared it to what I had back last Fall I would think it was a "Surface RT 2". 

So what's changed?

First off, it's much faster.  Gone is the lag when I was typing or launching things. It's just plain snappy.

Secondly, SKyDrive is much much better integrated in.  When I first got the Surface, the Skydrive integration into Office was so woefully slow and unreliable that it was largely useless.  That isn't to say SkyDrive is perfect, it still should integrated into explorer as if it were...you know...a DRIVE except where the data is stored in the sky.

Office RT has steadily improved as well and so have the other Microsoft related apps.  I still detest the Sype RT user interface but that isn't Surface RT's problem.

Plane is getting ready to land.  Cheers!

The problem with AI in games

Published on Monday, July 15, 2013 By Brad Wardell In Elemental Dev Journals

I’m going to try to keep this as brief as I can.

One of the most common complaints I see about strategy games is that the AI doesn’t play well.  That is, in fact, a reality and there are a lot of reasons for it which I want to talk about in this blog.

The biggest factory today against good AI is the bell curve.  If you can make the AI “good enough” to beat 90% of the players on a reasonably high difficulty, it gets very tough to justify the extra expense in making it better.

As much as people complain about AI in say, Civilization V, it is probably good enough to beat most people on Prince or higher.  But that is little consolidation to those who find it easy to beat.  The same is true on Fallen Enchantress and its expansion, Legendary Heroes.  Once you make it good enough to beat “most people” it gets hard to justify spending money on more time on it.

A friend of mine in Firaxis used to beat Civilization V (or IV, I forget which) because he had figured out patterns in the random number generator.  That’s a pretty tough threshold to top in terms of “knowing the game”.

But why isn’t AI just inherently better?  After all, I’ve seen a lot of people talk about how good the AI in Galactic Civilizations II is.  And that comes down to how AI is made today versus how it used to be made.

In Civilization IV (and in Galactic Civilizations II) the game designer also wrote the AI including the worker functions.  This meant that the designer knew exactly what the AI would do in various circumstances.  The problem with that is that as games have gotten bigger, it has gotten a lot tougher for the designer to have time to both manage the many parts of the game’s design and find time to write the AI.

In the original Elemental: War of Magic, I wrote mainly the high level algorithms.  I didn’t have time to write the AI itself.  For Fallen Enchantress, I wrote the high level tactical AI and the high level strategic AI.  What that means is that I have the AI call various worker functions like “AIGetAreaThreat(radius)”.

In Civilization IV, Soren Johnson, the designer, wrote the both the high level AI and all of the worker functions too.  That’s very hard core and extremely rare these days.  I wrote the high level AI and the worker functions in Galactic Civilizations II: Dark Avatar and that was the last game I got to do that on (in Twilight, I relied on worker functions written by the team).

The problem with AI worker functions comes down to communication between developers.  It takes so little for an AI to be stupid or to seem stupid.  Let me give you an example of something I worked on this evening:  When the AI decides whether or not a city is defended enough, it calls “AIGetAreaThreat()”.  However, after wiping out the AI one too many times because its cities were poorly defended I decided to look at this function.  It turns out, it wasn’t looking inside enemy cities (i.e. if a city was stationed in a city, it didn’t “see” it).  

I know when I call AIGetAreaThreat() I want to know all the units, not just the units on the map.  But that’s the thing, another developer might think you only mean units on the map (such as in this case).  You add enough examples like that and suddenly you end up with non-ideal AI.

The problem with writing worker AI functions is that they are really…really time consuming.  And AI developers tend to be expensive.  Firaxis got lucky with Soren back in Civilization IV.  But that’s an atypical situation (I think Soren also wrote the AI in Civilization III as well but I could be wrong). 

Now, in the case of Fallen Enchantress: Legendary Heroes, I play the game post-release so I can, in my spare time, update the AI (which is what I’m doing at 9pm on a Monday).  But that’s atypical and could never be economically justified by a studio because, as-is, the AI in these games is typically more than “good enough” for most people.

“Good enough”, of course, is a symptom of a different problem and that is how disposable modern games are and the changes that attitude has had on the industry and how games are made. Smile

Coding frustrations with AI

Published on Sunday, July 14, 2013 By Brad Wardell In Elemental Dev Journals

Since the beginning of Fallen Enchantress, people have claimed that the AI monsters will sit next to any enemy city and not attack.  They concluded that the monsters were giving AI players a pass. 

I have responded that I have looked at the code over and over and the monsters do not treat computer players any differently.

Well, tonight I’m seeing the behavior very starkly.

image

These ogres should be wiping out this AI city.

image

The code says that the ogres want to wipe out the AI city.

They are explicitly targeting it.

..

And yet..

The attack never happens.

As a result, the monsters are just standing there, stuck outside the city.   Now, I’ve got a few thousand hours of game time on this and this is the first time I’ve seen it where I knew it should be attacking (i.e. I’ve seen well defended cities with monsters outside).  So it’s not that common.  But based on forum feedback, it’s definitely something others have seen.

Now, I have to find out why they are being prevented from attacking.

Stay tuned..

 

Update 1: Seems to be path finding related. This is going to take some digging.

 

Update 2:

New check in.

+ AI Removed conflicting code that caused monsters to behave outside the control of the AI
+ AI Monsters more careful about leaving their lairs unguarded.
+ AI Updated the area threat evaluation to include stationed units.
+ AI champions significantly better about taking out enemy outposts and grabbing goodie huts on the way to another destination
+ AI better at building more lethal armies
+ AI much better at protecting its cities
+ AI fixed a bug where certain AI personalities had a chance of not building units when they should depending on the type of city
+ AI more aggressive about training units when it feels that city is vulnerable
+ AI no longer has a "auto patrol" system. Instead, the monster AI directly controls monsters and not the mobileobject system.
+ Fixed a pathfinding bug that caused monsters that were calculating a destination to not be able to set a destination IF the target was 1 tile away and it is a city.