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

One of the things that will make Elemental different from anything Stardock has developed before is that we will view the release date of the game as the beginning of its life rather than the climax.

The reason for this is that a big part of our objective with Elemental lies in the engine underneath it.  It is our dream to slowly evolve Elemental to be so modable that a user familiar with Python 3.x will be able to use Elemental to create virtually any kind of land base computer game.

One of the things that some of you probably suspect but we can confirm from bitter experience is that while there are plenty of good 3D engines out there (Unreal, Gamebryo, Source, etc.) there aren’t really any modern engines (that we could find anyway) that are specifically designed for top down where there’s lots and lots of units on screen.

What I am hoping will happen is that over time, more and more of Elemental will cease being C++ and be moved into Python scripts.  The AI and some of the game logic will be first but eventually as much of the code that we can economically justify taking from C++ will be moved to scripts.

In this way, users would be potentially able to create all kinds of new games using the Elemental engine.  For first person shooters, this is nothing new.  Civilization IV is extremely moddable too.  Our goal here is to take an engine that was designed from the ground up as a 3D engine with full strategic zoom and a multi-threaded graphics engine and make it as generic as possible.

To learn more about Python visit http://www.python.org/


Comments (Page 4)
7 PagesFirst 2 3 4 5 6  Last
on Jul 26, 2009

Scoutdog

Just think about 'spoiler' reviews and you should get some sympathy for what I'm trying to type about. I don't presume that the Elemental boards will somehow be free of posts from zero-sum 'win' lovers. I'm just fairly certain that making the core AI code public would do nothing for me except increase the number of posts I wish I hadn't read. I play to play, and people who play to win mostly seem to value things that I find to be no fun, or worse, anti-fun.


I see what you mean now! Don't worry: although moddable AI will increase the number of posts, but the proliferation of alternate AIs will make most of them worthless.

I don;t think he is worried about modded AI: I think he is worried that if the CANON AI is available, a small but annoying minority will use that acces to design strats FOR THE CANON game. Ultimate strats will be designed, not thru trial and error of playing the game, but by reverse engineering the AI code to determine optimal play.

Which, I agree, that is not only not fun, that is anti fun. I hope the only way to develop strats is by playing, and I hope there is such an ungodly amount of variation from game to game that a strat that might work well in one game might utterly fail in another.

on Jul 26, 2009

I was going to hold off on bringing this up because I have little experiance (none, actually) in AI programming (perhaps someone with more technical know-how could correct/corraborate my theory), but it seems like it would actually be rather difficult to reverse-engineer a winning strategy just from studying the code. It's not like you'll see "IF: Playermana=400 THEN: executeSubModule: Roll_Over_And_Die071"(apologies for my aweful syntax..... still can't actually program).

on Jul 26, 2009

Denryu

Quoting Scoutdog, reply 20
Just think about 'spoiler' reviews and you should get some sympathy for what I'm trying to type about. I don't presume that the Elemental boards will somehow be free of posts from zero-sum 'win' lovers. I'm just fairly certain that making the core AI code public would do nothing for me except increase the number of posts I wish I hadn't read. I play to play, and people who play to win mostly seem to value things that I find to be no fun, or worse, anti-fun.


I see what you mean now! Don't worry: although moddable AI will increase the number of posts, but the proliferation of alternate AIs will make most of them worthless.

I don;t think he is worried about modded AI: I think he is worried that if the CANON AI is available, a small but annoying minority will use that acces to design strats FOR THE CANON game. Ultimate strats will be designed, not thru trial and error of playing the game, but by reverse engineering the AI code to determine optimal play.

Which, I agree, that is not only not fun, that is anti fun. I hope the only way to develop strats is by playing, and I hope there is such an ungodly amount of variation from game to game that a strat that might work well in one game might utterly fail in another.

Everyone has thier own definition of fun. Your definition is trial and error to come up with a good, but not perfect, way to win the game. Other people's idea of fun is to create the most perfect, optimized at every step, strategy to win. One is not better then the other(how one likes to play a game is an opinion, of course) and if they want to support both, I think they should.

on Jul 26, 2009

Yeah, in fact I think they should provide a script that will play the perfect game and give it to everyone.

That is what I call fun!

on Jul 26, 2009

Denryu
Yeah, in fact I think they should provide a script that will play the perfect game and give it to everyone.

That is what I call fun!

Brad would consider creating that script fun.

on Jul 27, 2009

Brad would consider creating that script fun.

Well yeah. If he could create a script capable of defeating the AI every time without fail, he'd have just created an even better AI!

on Jul 27, 2009

Creating a script to beat the AI is writing a victory cheat.  No better AI necessary, just a kill order on all units and structures.

on Jul 27, 2009

Wow. Some of the hostility toward modding, and especially ai modding, leaves me really confused. I think support for modding is fantastic, and is one of the really positive things about the pc gaming community.

Has anyone else here enjoyed and appreciated playing a mod for a game?

A mod that complete strangers have poured their time, energy, and passion into, and then released free of charge?

I'm not ashamed to admit that I have. Perhaps there are others out there who have enjoyed playing a mod too! If you fall into this category, I probably don't need to direct this rant at you. My apologies. But there are people wrong on the internet, and this must be addressed.

Rant:

To demigod players: are you seriously willing to argue that games like Demigod would be commercially viable, today, without Blizzard's support of custom scenarios for the Warcraft 3 community? What about the whole tower defence subgenre?

If you don't like Blizzard games, or Demigod, but have enjoyed some of the other stuff Chris Taylor has worked on over the years, how about Cavedog's modding support for Total Annihilation. They've still got a community releasing new maps, 12 years after the launch of the game! People released mods not only introducing new units, but fixing bugs, tweaking the ai, and completely rebalancing the game. Not to mention total conversions like 'Star Wars TA'. I never played vanilla Total Annihilation again after discovering the UberHack mod,. On the other hand, like all of this, no one forced you to download any of this either, if you didn't want to.

I understand that shooters like Counterstrike or Team Fortress might not be everyone's cup of tea, but is anyone willing to argue that id and valve's support of modding for the quake & half-life engines was actually a poor decision, for either the developers involved, fps players, or pc gaming generally? How about less mainstream mods such as Day of Defeat (source), NeoTokyo (source), The Specialists (source), Natural Selection (source), Infiltration (Unreal Tournament), or SLV2, the ridiculous Dr Strangelove inspired mod for Unreal Tournament? How about id's willingness to let valve play with the source code of the quake engine, back in the day?

I wonder how many highly talented people, who've helped developed your favourite games over the years, have used mod development as a stepping stone to get into the industry?

 

TLDR summary:

I think modding is pretty awesome, in a general sense, and I made some potentially poorly thought out arguments above, which I believe support my point of view.

I'd be interested if you can make a serious argument that supporting modding for pc games is, on the whole, a bad idea, and in particular, is a bad idea for elemental, and stardock generally.

on Jul 27, 2009

Wow. Some of the hostility toward modding, and especially ai modding, leaves me really confused. I think support for modding is fantastic, and is one of the really positive things about the pc gaming community.

Derrrr.. Wha? The only thing I can possibly imagine you might be talking about are GW's comments about how he doesn't want the built-in AI to be open-book, because he doesn't want to understand exactly how it functions under the hood in such away to give him insights in how to, essentially, trick it. I sympathize entirely with him, although I disagree - I think opening up most of the default AI would help the modding community tremendously in putting out new and improved AIs. Enough so that it would be worth hearing any information that I might wish I had never heard (I really wish I could forget things on command).

But really, moddability has been one of the largest concerns among most people in these forums... It polled pretty highly in Denryu's polls a while back, for example, and there are tons of threads dedicated to it... And reading over this thread, I don't quite see hostility to modding.

on Jul 27, 2009

Pigeon, I think you are absolutely right. If the AI modding created an environment like GW fears, it would be quite nasty. However, I highly doubt that something like that will ever happen.

on Jul 27, 2009

Wintersong
As long as we get some nice documentation about the game's functions and similar, it'll be fine. At least for the most basic things so we don't have to start blindly pocking things.

 

If Stardock is clever they'll use Python's internal documentation functionality.  That lets you extract documentation automatically from a function or class, so you can do

 

Code: c++
  1. >>> help(terrain)

 

and get a listing of the documentation of the "terrain" class.  This is similar to doccomments in Lisp, Java, C#, etc.

 

Mind, if I had a dollar for every time I've seen this, I'd be much better off than I am today:

 

Code: c++
  1. def set_tile_type(self, tile, type):
  2.      "Set a tile type."

 

BAD PROGRAMMER!  BAD!  NO COOKIE!

on Jul 27, 2009

Speaking for myself, I'm a Python newbie.  But I think what you see is our desire to make Elemental a game but also a platform.

We've seen this with RPGs like Neverwinter Nights where modders could keep creating interesting things. That's what we're hoping to do.

I don't think, at release, Elemental will have anything close to that kind of modding capability as it will be the result of months/years of migration of C++ to Python based on experience.

Now, that said, MY computer AIs will remain C++ and users will be able to pick AIs I've written (closed source) or AIs that are in python.

on Jul 27, 2009

Scoutdog
Pigeon, I think you are absolutely right. If the AI modding created an environment like GW fears, it would be quite nasty. However, I highly doubt that something like that will ever happen.

I've never seriously played with a mod, but I've always thought the practice was interesting and I might well have gotten into that fall-of/from-heaven thing if Civ 4 hadn't pissed me off so much with its initially insane sys reqs (what you really needed, not what the box said would do).

Scoutdog might well be right that I'm borrowing trouble in fretting about just how much noise-to-me posting would go on if the full AI codebase were public. Maybe what I'm really suffering is some creeping doubts about whether this Great Leap Forward for Modding might end up leaving Elemental with too little of its own identity. For example, I basically loved the idea of no built-in combat units when it was first announced, but that sentiment as cooled down to simple curiousity about what a difference like that will make for a TBS game.

Anyway, please don't take my previous rant about zero-sum thinking to mean any sort of hostility to modding. Also, some of my 'best friends' over at GC2 are scoremonsters and they taught me many things that helped me enjoy that game more. I know the 'play vs. compete' thing is a matter of taste and there is no capital-T Truth to claim. I just get a little heated sometimes because too few people who play to play speak up about it.

on Jul 27, 2009

Now, that said, MY computer AIs will remain C++ and users will be able to pick AIs I've written (closed source) or AIs that are in python.

Can mods write their AIs in C++ as well? Or, here's a dream, an API that allows your AI to call the necessary data to play to the game passing XML back and forth so you can use your language of choice.

Someone asked this awhile back, but could the AI actually help train a player by giving hints on what they should do in a particular game? An AI trainer would be amazing...

on Jul 27, 2009

Now, that said, MY computer AIs will remain C++ and users will be able to pick AIs I've written (closed source) or AIs that are in python.

Can mods write their AIs in C++ as well? Or, here's a dream, an API that allows your AI to call the necessary data to play to the game passing XML back and forth so you can use your language of choice.

I can understand the game's core AI being closed source, but will we be able to build off it for non-strategy stuff like pathfinding and such?

7 PagesFirst 2 3 4 5 6  Last