Brad Wardell's Blog


The Tabloidization of the technology media

Published on Saturday, October 9, 2010 By Brad Wardell In Personal Computing

Since the beginning of my career, I’ve been a creature of the net. That is, my “real life” exists on the Internet. It may be a generational thing or a just a niche geek thing. Probably the latter.    

Many years ago, I created the blog, Joeuser.com explicitly so that I and anyone else could freely post our thoughts.  It didn’t matter what my day job was because, there was a clear separation in people’s minds between a person’s personal opinions and what they produced as part of their job.

In the past few years, one of the worst kept secrets of the tech media has been the discovery that stories about people instead of tech drive more page views.  Thus, if you use archive.org and go and look at some of your favorite tech (or game) sites home pages you’ll find a very slow but consistent trend away from reporting on products/techs to the people behind products/techs.

As “The Social Network” has shown, the trend has become mainstream. People are hungry to know about the people behind these things. The rules have changed and many of us, who operated for years as “creatures of the net” find ourselves getting a level of scrutiny that has put a real damper on participating online.

I got my first real taste of this about a year ago when I snarked on Facebook that I’d have Stardock ship via Fed Ex instead of UPS because UPS had started boycotting networks based on their political leanings.  Since the network in question was Fox, the not impartial media quickly took my non-public FB comment as a rally to Glenn Beck (who, I’ve never watched nor care about). It was not newsworthy but it did drive page views to those who decided to sensationalize it.

Once that happened, suddenly all my blog posts got a level of scrutiny usually reserved for political figures which has continued to this day.  It’s really sucked the fun out participating online. But there’s nothing that can be done.  This is how things are now.  People snicker about “Well, if you write it online it’s public for all to see” thinking that this has always been the case. It hasn’t. It’s hard to believe that Usenet flame wars used to be considered something of an art form.  There used to be understood gradations.

As on UK editor told me after his magazine trashed our latest game, “My job is to maximize page views to our site, so don’t give us ammunition.”  While I don’t agree that that is what an editor’s job is to do, I do concur that tabloid stories get a lot more hits than hard news stories.  People are drawn to stories with a narrative.  And make no mistake, tech sites are there to make money.

Many of the best tech journalists have abruptly disappeared in the past 2 years. The ones who were experts at covering tech and products aren’t necessarily the ones best suited for reporting on the latest scandal or gossip or statement by a person.  I don’t say this lightly, take a look for yourself using archive.org. Pick your favorite gaming or tech site and look for yourself. You’ll see the same top talent people at these sites year after year and then suddenly, about two years ago, pow, they started disappearing abruptly.  You want to talk about a scandal, there’s one: the systematic termination of the high quality journalists in the tech media.  The ones who are left have had to become freelancers or independents or have been hired by the companies that produce tech.

One only has to look at the amount of nonsense written about Activision’s CEO or some of the vile crap written about Valve’s CEO  or that Steve Jobs personally designed the antenna on the iPhone 4 (if ever an issue was overblown it was that) and so on to see that it’s increasingly about the people making the things we use rather than the things themselves.

It’s a shame because in the long run, it separates the producers of things from the consumer of things. 

Getting back into skinning

Published on Wednesday, October 6, 2010 By Brad Wardell In OS Customization

This Fall I’m starting to get back into skinning.  For the past 8 months or so, I’ve been the interim Project Manager on Elemental: War of Magic to get that game ready for release – which I failed spectacularly at. Sometimes, the answer is not to “work harder”. But I digress.

The problem I’m seeing with skinning is business vs. passion.  That is, Windows XP users still represent a near majority of the people using our skinning programs. The problem is, Windows XP is dead as a technology base. I don’t want to even support it any longer.  I want us to make cutting edge technology using WPF and Silverlight and other things that can show what is possible.

A lot of the new Windows technologies have been under used which is a real shame because there’s some great stuff there.

My main worry right now is that WPF is not being well supported by Microsoft and I don’t want us to get into a tech that Microsoft is going to abandon (GDI+, cough cough).

See http://www.theregister.co.uk/2010/09/13/microsoft_defends_silverlight/ for my concerns.

Next Laptop

Published on Wednesday, October 6, 2010 By Brad Wardell In Personal Computing

My beloved Thinkpad T400 is starting to get a bit long in the teeth. It’s 3 years old now, the longest I’ve ever kept a laptop as my primary non-programming machine.

I’m thinking that I want to wait until USB 3 is in these laptops but I’m not sure how long that’ll be.

Multiplayer update and brief v1.1 info

Published on Tuesday, October 5, 2010 By Brad Wardell In Elemental Dev Journals

So this week we’re finishing the process of porting the 1.0x updates to multiplayer. The new combined version will be called v1.09E.  It has a handful of single player game fixes (like the free money from pioneer thing <g>).

After v1.09E, we’ll take a step back to see how people are playing multiplayer and start putting together plans for future improvements in that area based on the number of people in the community playing it.

For myself, I’ve been working on a different branch (v1.1) along with additional content for players of the book (Elemental: Destiny’s Embers).  People have been asking about what the focus of version 1.1 is.

So as some know, the initial release of Elemental was pretty buggy. Obviously, we didn’t intend that and we apologize for the inconvenience and disappointment this caused to our fans and community.  So these updates thus far have been largely about addressing those issues.  Given how traumatic the past month has been on all of us here, I can tell you we’ve spent a lot of time looking into the what, why, and how.  Obviously, fixing things won’t change the early negative reviews. But we’re big believers of word of mouth and we’ll see how things go as the game improves.

Version 1.1, however is almost purely new features and game play changes.  Briefly, here are the general changes:

  1. A global mana pool. Right now, every spell caster has their own private mana pool. This in turn allows players to imbue lots of units with spell casting ability who in turn can summon their own army of monsters.  In version 1.1, there will only be 1 mana pool to draw on and every summoned unit will have its own per turn mana cost to maintain it and every imbued champion will have a mana upkeep cost as well.  This goes back to our original concept of what a Channeler is: Are you going to keep your power for yourself and become incredibly powerful or spread it out into many creations?
  2. A revamp of the spells. Because of the above, we can have a much larger variance in the way spells function.
  3. Population becomes a stored resource rather than a consumed resource.  This means that soldiers, improvements, pioneers, etc. use population for them to function.  Players thus have to make choices between sending their citizens off to fight wars or use them to research new technologies, study spells, run your shops, etc.
  4. Money becomes more derived from people rather than things. Rather than relying on gold mines (which will still exist but won’t be the defacto source of wealth) money will come from the economic activity of your citizens (again, getting back to the concept of you’re rebuilding a society and your strength comes from the strength of your society).  The higher your population in a city, the more money it makes. Higher level cities gain access to improvements that magnify how much each citizen generates. Send your people off to war enmasse and you’ll hurt your economy.
  5. Training times for groups of units will have far less penalty. In essence, we will encourage larger sized armies to move towards more epic battles as well as reward those who have more developed, large cities (i.e. able to supply more citizens for training).
  6. Outposts won’t provide any housing anymore which also means no area of influence until you start housing people.  Outposts will function like…well, outposts. Guarding an area.
  7. Pioneers will be able build on resources outside your zone of control (as long as it’s neutral).
  8. Caravans will provide greater economic benefits but will no longer provide food.
  9. The new multithreaded AI will be in v1.1 which should allow the AI to fight a much more effective game and allow me to implement more background analysis functions (like in GalCiv II) rather than purely reactive (Elemental 1.0x).
  10. Technologies will begin provide special abilities to various types of units. In addition, special abilities will not be tied to “mana” but rather have a cooldown time (and in fact, cooldowns will be in generally).

This is, by no means, even a remotely complete list and it still pales compared to what we’ll be adding in the first free expansion.

We’re also in the process of further increasing staffing on Elemental based on analysis of what areas we need to improve internally. 

Anyway, v1.09E should be up this week, v1.1 should hopefully be ready sometime in October but no promises. We’re giving a lot of the team some time off to recover from the past few months.  At the very least, if you guys want a sneak peek, we can look at letting those who want to have access to our beta builds of v1.1 to tide them over (though I don’t recommend this for most users).

The Official Post your Save Game Thread

Published on Monday, October 4, 2010 By Brad Wardell In War of Magic

For those of you who are late game feel free to post in this thread a Dropbox link to saved game adn I'll try it out.

From your saved games, I can see how other players play the game and use this information for everything from game balance, AI improvements, performance optimizations.

Most of the reason why Galactic Civilizations II has good AI is because of players sending me their saved games and explaining their strategies.

Galactic Civilizations II news!

Published on Saturday, October 2, 2010 By Brad Wardell In GalCiv II News

For the past year we've been pretty focused on getting Elemental: War of Magic released.  With its release, our minds are turning back towards Galactic Civilizations to see what we can do.  Awhile back I made a journal asking users what small updates people would like to see and lots of users came through with great suggestions.  So we're going to be starting to look through those to see what's next on the agenda.

For those wondering about a future Galactic Civilizations III, right now, our plans for now will be to continuesupporting the existing Galactic Civilizations II -- no GalCiv III is in the works right now.  

 

Elemental v1.09 change log

Published on Thursday, September 30, 2010 By Brad Wardell In Elemental Dev Journals

We expect to make this available either this evening or tomorrow.  Here’s what’s new:

---------------------------------------------------
----------- Elemental v1.09 Change Log  -----------
---------------------------------------------------

* Gameplay / Balance *
+ AI sovereigns take more care about where they are doing their attacking
+ Added code so that AIBasic is smarter about attacking units in cities
+ ‘Equipment Cache’ goodie hut now hands out cloth armor, instead of the patchwork armor that should not be in the game anymore
+ You can no longer train *groups* of Dragons, Catapults, or Giant Demons
+ New option: Players can choose not to have monsters spawn
+ New option: Players can disable minor factions
+ Loot given by monsters increased
+ Fixed bug where some AI-controlled caravans that had already established trade routes would wander off those routes while delivering their stuff at a city
+ Fixed a bug where caravan pathfinding through territory owned by anyone other than their owner would still have a penalty, even through caravans can always move freely through any territory
+ Changed dynasty kids to determine their essence based on the BASE essence of their parents (ignoring equipment, player ability bonuses, etc.)  This should keep kids from double-dipping from things like player-wide essence bonuses and keep their max mana at more reasonable levels
+ fixed several armor and special ability xml issues (that were either pointed out on the forums or that I discovered while fixing others)
***********
* Battles *
+ The starting side in a tactical battle is now chosen randomly. The attacker and the defender have an equal chance to go first. This is a short-term change. In the longer term, we are moving to an initiative system (individual units moving based on their combat speed rather than each side taking a turn together).
+ Added shorter animations for bow attacks and spell attacks
+ Fixed a divide by zero error in spell damage.
+ Fixed some logic to determine whether or not a tactical unit was moving.
+ Added code to make sure a unit cancels its destination when it skips a turn.
+ Added some additional checks to skip turn logic in tacatical battles to stop a turn from being skipped in the middle of other actions.
+ Fix to be sure ranged attacks don't always do max damage in tactical battles.
+ Fix to experience display for battles, and fixed a bug where auto resolve was only rewarding experience for killing the leader unit.
+ The AI does not take its first turn immediately after the window loads. This will prevent cases where the AI takes its turn before the window finishes rendering.
+ Fixed a spell type tag for Quicken (now shows up in Tactical Battles)
+ Fixed an issue where a single unit might lose its mana after attacking and killing a defending team.
+ Added the UsableInBattle tag for item types, will help to determine if an item should be displayed during a tactical battle. This defaults to FALSE.
+ Items in a tactical battle will now properly stack in the UI.
******
* UI *
+ NEW! City List window which can be brought up via a tab on the kingdom screen
- this will list all your current cities, along with vital information about resource, training, and building being done there (ie: it's a city spreadsheet)
+ New icons hooked up for sovereign talents
+ Got rid of trailing decimal zeros for the global resource pool tooltips, to clean up the display of resources that are always integers
+ Fixed bug where the global resources for a player didn't refresh when a city was lost through razing until the next turn
+ Tweaked the spell info card to get the stats to show up in the grey bar at the bottom of the info card, and to support multiple text entries of varying sizes
+ Item Shop now shows change in Combat Speed, Defense, and Attack for the highlighted item
+ Message Box input field now limited to 20 chars
+ Made auto-select next moveable unit code not select caravans
+ Fixed City HUDs clipping at the end (now they all get rounded edges)
***************************
* Performance / Stability *
+ Moved clean up code around so that game within a game cleans up better
+ Fixed mem leak in Trigger Manager, city wall nodes, destination and selection cursors for destroyed objects
+ Removed code in CTreeGraphic that was causing a leak on Win7-64.
+ Fixed big leak in DecalGraphicGraphicManager where every decal in the game was leaking on Win7-64bit when starting a new game within a game
+ Fixed leak in CUnitSceneViewWindow (which is used on lots of screens)
+ Fixed random crash in kingdom screen with the filling of the Lore Book
+ Tile Designs now flush out the graphics for their "base graphic" (the one that the graphic instances use to render) once the instances for that base graphic are released
+ Fixed crash if a spellcaster ever had to cancel more than one enchantment at a time from losing 2 or more available enchantment slots
+ Fixed memory leak in UnitAnimationHelper that caused unit gfx to leak after the unit was destroyed
+ Fixed memory leak in TreeGraphic that caused tree batches to leak on game within a game or destruction of the forest object
*************
* Bug Fixes *
+ Fixed bug where mini map would sometimes not update itself after starting a new game from within a game
+ Hooked up renaming cities and units to use events (for MP)
+ Fixed cheat flag bug where you could go into the enchants tab for any unit and cancel their enchantments, whether that unit belonged to you or not even when cheat flag was not used.
+ Fixed bug where destination cursor would disappear if the unit it belonged to was off-screen
+ Added support for Resource modifier types in unit ability bonus options to be taken into account in what resources a unit always provides, without needing to be stationed in a city
+ Fixed Bug When reload a game with Wild Shard Improvements, the game now properly relinks them to their resource hoards (fixed issue where destroyed shrines would not regenerate shard resource)
+ Fixed particle effect render order on main map screen for better visuals
+ Fixed graphical bug where mounted units in an army did not scale properly
+ CalculateAbilities now uses champions for ability modifiers (this fixes NPCs that should give bonuses but didn’t, such as ‘Royalty’)
+ Fixed bug where the NPC AI player would spawn new NPCs based off of the unit types of dynasty kids.  This would cause champions wandering around with the same name, and with baby portraits if they hadn't grown up yet.
+ Attacking cities or lone improvements while in attack cursor mode now works properly in all cases
- hooked up the cursor to change to the crossed swords at the right time for cities/improvements when one of your units is selected
+ Fixed comment in CityLevelUpBonuses.xml that caused malformed xml
+ Fixed merge error in QuestUnits.xml for Talax
+ Fixed end tags in CoreCityWalls
+ Fixed game modifiers and ending tag after Magnar_Staff in CoreSpecialWeapons.xml
+ Fixed end tag for Thumb in SpecialUnitProps.xml
+ Fixed comments in UnitSoundPacks.xml
+ note: thanks to ‘kenata’ and ‘heavenfall’ for helping us hunt down those above XML issues down and pointing us to some cool data checking tools


***********
* Modding *

+ Tile Editor: Fixed bug where large silhouette figure would render in the middle of a tile design when placing pedestrians
+ Map Editor: when using the creature placement tool, defaults to giving the creature a random wander radius, which can be changed with the tool's third spinner in the bottom left corner
- Also changed the wander radius 0 item to say "Don't Wander" instead, does what the default used to do, cause the unit to not even go into auto-patrol mode
+ Added new data def type, CSpellResourceCost, which can be used in spell def xml to specify resource costs on casting a spell, as well as any persistent maintenance costs if this spell is an enchantment
- <PerTurn> tag used in the SpellResourceCost xml object to say whether the cost is deducted at time of casting (Per-Turn is 0), or if it is a continued maintenance cost that exists as long as the spell is in effect through an enchantment (Per-Turn is non-zero)
- Note: maintenance resource costs can only be per-turn if the spell is an enchantment; there's no one-time cut to per-turn resource production from an instant, non-enchantment spell
- Here's an example of some xml to put in a spell def, making this spell cost 5 metal immediately when cast, and having a maintenance cost of 1 material per turn until the enchantment is cancelled:
<SpellResourceCost>
<Resource>Metal</Resource>
<Amount>5</Amount>
</SpellResourceCost>
<SpellResourceCost>
<Resource>Materials</Resource>
<Amount>1</Amount>
<PerTurn>1</PerTurn>
</SpellResourceCost>
+ MODs folders now creatured for the user in their My Games/Elemental folder
+ Fixed Bug: Quests read in from XML (after loading the Data.zip) no longer override QuestDefIDs
+ Images and models now read in from the Mods/GFX folder properly
+ Mods are now enabled by default in Prefs.ini
+ Overlay: Implement tile upload/download

***************
* Multiplayer *
+ Added code to prefer a random map that supports the max players
+ Cloud saving/loading enabled
+ AI opponents enabled
+ Added handling for if firewall is turned off
+ Added check for if player is disconnected before starting turn timer when the end turn is requested
+ Added check to prevent player from going to multiplayer menu if it's still checking for an update

We are still deciding whether we are going to flag multiplayer as “beta” or release for this build. It’s a subjective call but given recent events we are tending to try to be extra careful on this determinations so that the unwary do not encounter unexpected behavior.