Brad Wardell's Blog


The world of Elemental Beta 1Z

Published on Tuesday, April 6, 2010 By Brad Wardell In Elemental Dev Journals

For Beta 1Z we are going to do something different. We are hard-coding it to a particular map so that we can better debug any problems players encounter with it.

image

This is the cloth map of beta 1Z. It’s designed with 4 players in mind and is very tiny. But it should let players “play” through the basic game mechanics of Elemental.

I whipped this up in the map editor.  This Summer, players will be able to take a crack at making their own worlds. I hate to say this but I found making the world a bit too fun. It was not really our intention to make the map editor a game unto itself but being able to create maps with quests and naming mountain ranges and forests and such has proven to be a game unto itself.  I made

For fun, I made the Ultima III map:

image

More to come…

I told you…consequences of taxes..

Published on Sunday, April 4, 2010 By Brad Wardell In Politics

Great article:  What the Top US companies pay in taxes.

The reader is meant to get fired up by the fact that these hugely profitable corporations aren’t paying Uncle Sam taxes.

Oh, they’re still paying taxes. Billions of taxes. Just not in the United States. That’s because companies liek Wal-Mart, General Electric, AT&T and so forth have overseas divisions and can have the profits show up in any of those countries – countries with lower tax rates.

How did this happen? It's complicated. GE's tax return is the largest the IRS deals with each year--some 24,000 pages if printed out. Its annual report filed with the Securities and Exchange Commission weighs in at more than 700 pages.

Inside you'll find that GE in effect consists of two divisions: General Electric Capital and everything else. The everything else--maker of engines, power plants, TV shows and the like--would have paid a 22% tax rate if it was a standalone company.

It's GE Capital that keeps the overall tax bill so low. Over the last two years, GE Capital has displayed an uncanny ability to lose lots of money in the U.S. (posting a $6.5 billion loss in 2009), and make lots of money overseas (a $4.3 billion gain). Not only do the U.S. losses balance out the overseas gains, but GE can defer taxes on that overseas income indefinitely. The timing of big deductions for depreciation in GE Capital's equipment leasing business also provides a tax benefit, as will loan losses left over from the credit crunch.

I’ve written before on this issue: The people who do stuff are in control.  If the government overtaxes them, they will find another way. 

This is why time and time again we have seen that when you lower taxes you see higher tax revenue. 

Read the whole article: What the Top US companies pay in taxes.

Sorry guys, not this week

Published on Thursday, April 1, 2010 By Brad Wardell In Elemental Dev Journals

I’ve been playing the beta 1Z candidate all day today and it’s around 9pm as I write this and while it is a vast improvement over beta 1G, it just isn’t put together enough for the public.

The criteria for beta 1Z is that it has to be good enough where we think it’s ready to go to beta 2.

So new date is sometime next week.  Since that will push back our internal schedule, we’re going to let new people into beta 1Z next week so that they’re not stuck waiting.

To get a scope of how much has changed since beta 1G here is the change log we have so far:

 

- Elemental 1Z Change Log -

***********************************************

** New Features **

***********************************************

- Economy Overhaul -

Overview: The major resources in the game have been switched over to being GLOBAL (per-

player opposed to per-city). Building materials, metal, and crystal are added, per-turn, into their pool overall pool, while food is stored as a players 'net-food', whch gets spent on housing as the player wishes to expand it's cities.

+ Improvements now use ConstructionResourceCost modifiers for their up front costs when placed, and refunds when destroyed
+ Started cleaning up old code for gathering resources for constructing improvements
+ Added support for improvements having a <PerTurn>0</PerTurn> resource game modifier that they apply, but only for global resources (for now).  They will apply it when construction is completed, and apply the reverse when the improvement is destroyed.

+ Fixed bug where one-time resource modifiers would be used for per-turn city resource calculations after the resource data had been refreshed more than once
+ Started making construction cost refunds on improvements more flexible, so some costs can be refunded even if the building isn't under construction

+ added entries in the global pool area for population and for food.  
+ Entries with a value of 0 are not added.
+ global pool listgrid is resized based on total entry width, and then the global pool area is sized just big enough to fit that listgrid and the buttons

+ One-time resource modifiers now displayed in a city's resource list
+ Added food construction costs to the housing improvements that upgrade from hut

+ Switched food to be a non-stored global resource acted on by per-turn food modifiers in improvements again
+ This way, food can be acted on by trade and ability modifiers
+ Added ability for player to refresh their non-stored resource values in the middle of a turn, and called for a refresh at various times when improvements are being placed, destroyed, or finishing construction, to ensure it stays up to date

+ Fixed some bugs where the global resource amounts for non-stored resources and the global pool UI wouldn't update in certain cases, like when housing is upgraded mid-turn by choosing a tech breakthrough
+ Player values for per-turn resources should be up to date whenever they are asked for
+ Removed trade through capital city bonus for the capital city itself, though the resources produced by the capital city are still taken into account for other cities connected to it through a road

+ Fixed bug where pioneer improvements would be placed in the bottom left corner of the tile you built them in
+ Fixed bug where the graphics of loaded improvements under construction would not show up on the map at all
+ If cities' net resource production is less than or equal to 0, it will still be displayed in the city details screen, so you can tell if your city is actually being a drain on some global resource
+ Added pioneer improvements to the kingdom details screen
+ Global resource pool UI now shows the net per-turn production of a given resource when you mouse over its entry
+ Added calculation of per-turn amounts of each global resource alongside the calculations that were already being done for non-stored resources, though if the player already had and was using a different per-turn calculation function, I just call that instead to set the per-turn value
+ Fixed bug where global resources spent training a unit weren't reflected immediately in the UI

+ AddUnitBeingTrained refreshes global resource display if any global resources are spent

+ Added net tooltip for mousing over global resource pool entries+ Added m_apPerturnResources (and saving/loading of it) and m_csPerTurnResources
+ Added GetPerTurnResourceProduction
+ RecalculateDirtyPerTurnResources now calculates a per-turn value for all resource, not just non-stored ones, but uses existing net calculation function if they already exist (like for gold and research points)

- Pioneer Units -

Overview: Players can now build 'Pioneers', who can place improvements on the major resources to feed into the global pool.

+ 'BuildOnResource' Unit Action

- when an improvement is done, it will not exude ZOC for the player
- in basic mode, completed improvement icons will show up no matter what zoom level
- action will build the best possible improvement on the resource the unit is standing on
- improvmeent takes the appropriate number of turns to build
- hide resource being tapped
- for testing, readded the action for all units...will remove next
- improvement will take the required resources when built
- Update the main ui when resoruces are used
- if a trained unit builds: destroy that unit
- allowed pioneers to tap shards (needed a special IF cause for resources that were of a shard type)
- tweak pioneer kit to cost 50 gold and 5 materials

+ Resources from pioneer improvements are now taken into account in the player's global pool of stored resources, and their calculations of non-stored resources per turn
+ Fixed asserts when trying to select a pioneer improvement and broken info cards when mousing over them, the info cards now work completely and selecting a pioneer improvement shows the generic context used by goodie huts and such, though it's lacking in anything but a name right now
+ Fixed bug where calling DeductConstructionCosts on a pioneer improvement with a non-stored construction resource cost would have kept the player's pool from updating, actual deduction code should take care of it now
+ Fixed some leaked refs in the generic context wnd

+ Added saving/loading of a player's pioneer improvements
+ Added info to pioneer improvement generic context when selected about turns to finish building and resources produced

+ Resources should store wether or not they can be built upon without a city
+ All 'BonusTile' resources should be off-limits to pioneer units
+ remove the weird mine that gets build by pioneers if Mining has not been researched (Mine_Improvement)...needed to remove MINING.XML file

+ Pioneers are a default unit for all factions, like Peasants

+ Added Kingdom_Pioneer unit type that's available to all factions by default, has a pioneer's kit equipped

- Minimap -

Overview: A resizable and movable minimap is now available for the player to utilize.

+Minimap can be dragged
+Minimap can be clicked to move the camera
+Minimap can be zoomed in on to move the camera AND zoom in

+ Fixed dragging on the minimap. Dragging on the top bar now moves the whole map, dragging on the minimap itself moves the camera as expected.
+ Blended in a parchment texture to the minimap so it looks more aesthetically pleasing.
+ The minimap updates when fog of war tiles get revealed now.

+ The minimap can now be hidden and unhidden using the hide arrow in the upper-right of the minimap and the main window.
+ The minimap can now be docked in the upper-right part of the main window by dragging it there

- Bonus Tiles -

Overview: Various bonus resources (that require an adjacent city) will improve different aspects of any city that claims them.

+ Senic View (Prestige Bonus)

+ Wild Game (Food Bonus)

+ Oasis (Food Bonus)

+ Lost Library (Research Bonus)

+ Gold Deposit (Income Bonus)
+ Rematched Bonus Types for Claimed Tile Improvements and Special Resources

+ Special Tiles now have proper Medallions attached to them

- Event List Started -

Overview: As events occur, small pips will appear on the right hand side of the screen and will disappear after 2 turns (still needs polish).

+ Make, clean up MainGameWnd_EventList.cpp for all event list code
+ make CMainGameEventEntryWnd class
+ hook up to ReportItems...when a report item is added, add an event entry as well
+ entries time out after 2 turns
+ right clicking removes entries from the list

***********************************************

** Fixes **

***********************************************

- Units -

+ Fixed bug where caravans would move to the next tile between turns, then drift to the bottom-left corner of the tile

- AI -

+ fixed some issues with AI not building cities, I had them trying to use AUTO_EXPLORE when they can't find anything else to do, so they can clear some FOW, but it doesnt' actually work for AI, so I just wrote my own wandering code.
+ AI-controlled sovereigns now get sent to their closest city if they are defeated in battle. If they have no cities left, they are killed, and their faction is destroyed.

- Battles -

+  Fixed a divide-by-zero crash in the battle engine

- Cities -

+  Fixed improvements appearing to be buildable on resource hoards when the player has no tiles.
+  Fixed tooltips to now show in red the reason the player cannot build an improvement.
+  Added many more icons to tooltips to make the benefits and costs of each improvement more explicit.

+ Implemented more resource flags to show improvement costs and benefits in the citybuilding menu. The remaining improvements that do not have benefits showing do not have benefits in their XML yet.

+  Improved the citybuilding screen's "Cost" and "Provides" entries.
- All entries that can be XML driven are.  Entries that cannot at least have detailed tooltips.
- If an entry does not have an icon, the space for that icon is used for text instead.
- The spacing between entries has been tweaked so that even the longest entry list will not go outside the space provided.
+  Fixed placing improvements across rivers, the player can no longer do so.

+ You may now demolish a four-tile improvement by clicking anywhere on it.

+  Fixed some four-tile improvements being slightly offset after building, causing them to overlap other improvements.
+  Suppressed the notification of auto-upgraded improvements building so the player doesn't get 20 "Construction completed on our house" notifications when their city levels up.

+  Fixed Jakob's broken city walls case.  The size of the buffer was not getting calculated correctly, leading it to not have enough room to store the improvements before building the walls.

+ Fixed bug where improvements would still attempt to gather resources after placing them and pressing turn, causing them to take longer than advertised to build

- UI -

+ Right clicking the center medallion will now focus the camera on the selected unit
+ SHIFT-S will not select the sovereign, and focus the camera on him
+ Change the calculation of Might to Power Rating and changed it to use Brad’s formula from the Beta 1-Z document.

+ Train unit screen lists the resource requirements and population requirements of the highlighted unit, coloring a requirement red if it is not satisfied by the city and therefore keeping the unit from being trainable
+ Costs for items now show up in a separate string that's easier to see, hidden if the item doesn't cost anything (like skin or hair)

+ Player can now select more than one stationed unit.
+ When multiple stationed units are selected they can be unstationed as one.
+  Put in strings for improvements with non-standard bonuses so that they can be customized yet data-driven

+ Added strings for tooltips when mousing over the new per-turn points displays for research and spell points in the main UI

+ Fixed bug where changing the skin color in the create sovereign screen and customize faction screen would not update the skin color in the preview unit scene view graphic

+ Spell points and research points per-turn displayed near the buttons, says it's a per-turn value on mouseover

+ Fixed issue where unit scene view windows were "blowing out" the lighting on characters

- Gameplay -

+ Updated Improvement Quantity Limits
+ Watchtower no longer costs materials to build
+ City Hubs store 20 Pop
+ Huts/Houses now cost 4 food
+ Market no longer costs materials to build
+ Improved starting gold to 500
+ Created "the Dark Concoction" Quest
+ Updated various improvement tile designs
+ Removed K_Apartment from the repository

+ Updated Quest "Strange Noises" trigger chance

+ Updated Wild Wheat Production Value to 1.0

+ New Medallion png's for the special tiles, claimed tile improvements, and work camp
+ Resource gathering improvements now ignore duplicate imp limit
+ Only one wall improvement is allowed per city
+ Quarries now reduce build times
+ Resources and special tiles now have descriptions for tooltips
+ Created Granary Improvement to boost food production

+ Checked in a number of new medallions for the new bonus tiles

+ Updated Granary improvement to only allow one per city

+ Created Equipment Cache Goody Hut that Rewards Equipment

+ Items/Weapons/Accessories no longer give more than .25 Combat Speed
+ Meditative talent now produces 1 SP per turn instead of 4
+ Armory Improvement now decreases troop training time instead of multiplying IronOre resource + Created List of Champion Names

+ goodie huts that do not disappear from the map after being cleared now have their icons set to semi-transparent to differentiate them from unvisited goodie huts.

+ marrages should no longer happen randomly...have to go on quests to get proposals to prompt

+ City Improvement Limits adjusted
+ Removed Siege_Workshop.xml, added Siege_Foundry.xml as replacement
+ Updated Materials output for Lumbermill

+ Created Workshop Improvement to generate Materials
+ Added IgnoreDuplicateImpLimit tag to Garden

+ Outposts now store 20 Pop
+ Can now only build 1 Command Post per City
+ Market no longer costs materials to build
+ Updated Tax Office and Arcane Society improvement tile designs

+ Added a limit to the maximum number of active quests a player can have at any one time. The limit is defined in ElementalDefs.xml as MaxActiveQuests, and is currently set to 3. When the quest limit is reached, no new quests  will be presented to the player, and they will not be able to acquire new ones by visiting quest locations until they complete some of their active quests. Visiting a quest location while at the quest limit will not clear the quest location.

+ A number of quest locations are spawned for each player in the turn after they get their first city, to give them access to quests early on. The number of quest locations that get spawned is set via NumStartingQuestLocations in ElementalDefs.xml, and is currently set to 1.

+ Upon completing a quest spawned from a quest location, the quest location is removed from the map to reduce clutter.

- Memory Leaks -

+ MainStatsSubWnd.cpp
- fixed leaked ref for population resource in FillWithCityStats()
+ KingdomReportSubWnd.cpp
- in AddTextForPlayer(), fixed leaked refs in a while loop of resources and some more in that same function but further down in a forloop of resources
+ ItemModTypeManager .h/.cpp
- added function VOID ClearItemModTypes() which is called from the dtor()
+ ImprovementType.cpp
- fixed a leaked ref in some commented out code within GetTurnsToConstructInCity(), in case it gets uncommented
+ ImprovementConstruction.cpp
- in ConstructionCostHelper(), fixed leaked refs in a for loop of resources
+ Improvement.cpp
- in DetermineImprovementContiguity(), fixed leaked refs when leaving the function early
+ GameItemType.cpp
- in UnloadGameItemTypes(), cleared the vector after safe releasing its contents
+ FlavorTextManager.cpp
- in dtr(), now calling Clear() to clean things up
+ DungeonType.cpp
- in UnloadDungeonTypes, now clearing the vector after safe releasing the contents
+ CityTradeInfo.cpp

- in RecalculateAllTradeInfo(), fixed leaked refs to resource types in a for loop and calling FindResourceTypeByTypeName() each time

- in CheckTradeRoadConnection(), fixed leaked refs to resoruce types while iterating and calling FindResourceTypeByTypeName() each time
+ CityResourceData.cpp
- in Load(), before setting value of m_pResourceType to a new value, fixed leak ref by calling SAFE_RELASE on it so it will release any previous value

+ Fixed a number of memory leaks in CMainMapViewWindow::CreateLODGroundcover( ) (multiple return cases where objects were not being released, though this function is not currently being called, as the LOD ground cover is disabled), and CWorld::IsTileEmpty( ) (wasn’t releasing the unit).
- Engine -

+ Goodie huts can now be assigned a preferred terrain, which is the only terrain it will be randomly placed on.

+ Hooked up the ground cover spinner in the options window to the new world prop ground cover system.

+ Fixed an issue with the ground cover spinner that was preventing it from saving your setting.

+ Ground cover props now get placed when terrain is modified in the map editor, to give a better idea of how things will look in the main game.

+ Changed the ground cover prop density so that on the highest level every unoccupied tile will get a piece of ground cover.
+ Fixed bug where restarting the game from within a game (in basic mode) caused the main map not to render

+ Implemented new CAnimatedLeafNode class to render a single animated tree leaf
- Use CSceneNodeUtil::CreateAnimatedLeafNode to create the node
- This gets us one step closer to forests using tile designs

+ Fixed issue that was preventing the terrain and water from rendering when starting a new game up after one has already been created.

+ CMapData is now reference-counted, and gets passed along to terrain graphics objects (currently CTerrainGraphic and
  CCliffGraphic, and will be expanded to include CWaterGraphic, CRoadGraphic and CRiverGraphic) that need to access information
  about the map. These objects will now use their pointer to CMapData to access the required information rather than the access
  functions in Elemental.cpp or CWorld.

+ Fixed some crashes that would occur when attempting to exit the game via the main menu after having used the map editor.

+ Fixed problem with ground cover world props that was preventing goodie huts and resources from being placed if the ground cover spinner was set to the highest level.

+ Changed rendering order in main map and map editor so props and characters render under the water

+ Re-wrote CDecalGraphic’s vertex and index buffer code to be much more efficient, in terms of both memory footprint and processing time (it was allocating four times as many vertices as were needed).

 

Stay tuned.

Fair weather environmentalists

Published on Wednesday, March 31, 2010 By Brad Wardell In Politics

One of my big frustrations with the environmentalist community (that I like to think I’m part of) is jus how ideological they are.

Today’s big hub-bug on TreeHugger.com is that apparently Sarah Palin is hosting a show on TLC about Alaska’s natural wonders.

Personally, I don’t care much for Palin one way or the other. I think there’s much ado about nothing with regards to her. She’s a conservative politician.

But the Treehuggers are absolutely going bonkers about it because she supports hunting (and in particular, killing wolves), drilling in ANWR.  But let’s face it, when it comes to environmentalism, most people, including environmentalists are only “green” when it’s really convenient for them.

Here’s what I wrote:

The hatred towards Palin is breathtaking.


I don't really care about her one way or the other. But the hypocrisy in this thread is just astounding.
Reading (http://www.grizzlybay.org/SarahPalinInfoPage.htm) she's evil because essentially she favors hunting and building in the ANWR.

Meanwhile, I suspect most Americans when confronted with animals they consider "pests" -- even if they're mammals -- routinely kill them.

Sure, it's easy to feel about for wolves now that they're all dead where we live. Just like it's easy to feel good about opposing ANWR while most people live in suburban sprawl in the lower 48 that wiped out a wetland or woodland.

Some of you might really benefit from talking to actual real human beings to have to deal with actual real wolves and hear their perspective. I know I've met plenty of vegans who laughed at the lengths I've gone to in order to capture mice in our house alive to take them out to a distant field to let go rather than "just killing them".

There are also plenty of posts here supporting the wholesale destruction of vast amounts of untouched ecosystem to build solar farms and what not.

I'm just really disappointed at how quickly our environmental principles get flushed in favor of political ideology. If Discovery thinks more people will watch the show because Palin is hosting, then I think that's a great way to help educate people to some of the natural wonders that are out there.

You can see the full thread here.

“But Europe does it…”

Published on Wednesday, March 31, 2010 By Brad Wardell In Politics

The answer is almost always: No, actually it doesn’t.

In almost any debate, we’ll hear about how the “United States is the only X that does Y [or doesn’t do]”.

Except that’s not the case when you compare apples and apples.

One of the constant, long-time, ongoing debates in the United States is one that Europeans now find themselves in as well – where do the “states” stop and the “union” start?

When you dig into countless numbers of political topics, you find that opposition to a given policy starts to melt away when it is suggested that the issue be left to the states.

The reason for that is because the United States, like the European Union, is made up of demographically very different members.

The living standards, culture and priorities of someone in say New York or Massachusetts are very different from someone in Utah or Iowa or Mississippi.  So when someone looks to impose a new federal program – whether it be education, health care, welfare, etc. you get into quite a bit of debate on the issue.

Europeans often enter these debates without realizing that what they advocate for us they would very much likely oppose if forced upon them.

Let me give you an example: Welfare.

We should help the poor right?  Only the greedy oppose helping the poor.  Europeans have great social welfare programs right? No. They do not.  Some EU member states have generous welfare programs just as some US states have generous welfare programs.

The EU advocacy site, Europa, has a lot of useful information on the wealth of Europeans that you may find very enlightening.

For instance, the per person GDP in Denmark is 29,600.  Bulgaria’s is 8,600.  Should the EU start adopting laws that transfer massive amounts of wealth from Denmark to Bulgaria?  In the US, anything less than 15,000 per person is considered poverty level.  In the United States, the average person in Bulgaria would qualify for Medicaid (the US’s already existing “universal health insurance”). 

Consider the reaction of the Dutch, Danes, English, and Swedes if they were asked to endure a massive tax increase in order to pay for new anti-poverty programs that would go entirely to 10 EU members? I suspect there’d be riots.  But wait, the Dutch are “rich”. They average 28,200 a year.  Meanwhile, those poor people in Portugal are only living on about half as much.  What about compassion? What about caring for your fellow man?

I happen to agree with Europeans on that issue, there shouldn’t be massive “entitlement” programs imposed on the entire EU as a whole. Blanket policies are bad policies.  The same is true of the United States.

Elemental: Combat discussion

Published on Tuesday, March 30, 2010 By Brad Wardell In War of Magic

This hasn't been discussed in awhile but I figured I'd let you know how things are being implemented:

All weapons have four values: 

1. Attack Rating

2. Damage Type

3. Range Value

4. Combat Speed Modifier

Examples:

  • Club (3 attack, blunt damage, Melee, None)
  • Dagger (2 attack, piercing damage, Melee, None)
  • Doom sword of Eternal flame (4 attack, piercing damage, Melee, none) (3 attack, fire damage, Melee, none)
You can stack as many different types of damage onto a weapon (or as many types of damage resistance) onto a piece of equipment.
The goal is to allow the combat system to be as sophisticated as possible and then let us use what parts we like and don't like based on actually playing it.
So we could keep it ridiculously simple (sword, 4 attack, normal damage, Melee, None)
Or we could make it very sophisticated (Iron Helm, 3 defense, 25%, Blunt Mitigation)
And with damage / damage resistance stacking, we can go crazy because we could throw in things like dodge, chance to hit, etc. as stock modifiers.
The ultimate deciding factor will be in play testing and in UI (we don't want the player to need a PhD. to understand what a weapon does).  But it allows us (and later me and others as modders) the flexibility to make all kinds of different combat systems.

 

Mapmaking in Elemental

Published on Tuesday, March 30, 2010 By Brad Wardell In Elemental Dev Journals

To recap:

Beta 1 (which is where we’re at right now) is where we play around with different game mechanics with the beta group on a cloth map.

Beta 2 is where we let people try this all out multiplayer.

Beta 3 is where we finally turn on the graphics engine to make it look like a game.

Beta 4 is where tactical battles get turned on

Beta 5 is the modding beta where we start to work with modders on tools and help on that prior to release.

Here’s a video of me playing with the map editor (which I mistakenly thought was going to be in beta 4 but it’s actually beta 5 that this gets put into the public beta).

What’s fun about the map making (at least for me) is how fun it is to just make maps.

Favorite childhood memories

Published on Monday, March 29, 2010 By Brad Wardell In Blogging

In no particular order, here are some of my favorite memories of being a very small child.

  1. Blue toilet water
  2. The theme song to Bewitched
  3. Catching Locusts (Ciquadas)
  4. Eating angel food cake made by our neighbor Beverly
  5. Going to the Great Sand Dunes with my parents and thinking the clouds were where we were going.
  6. Getting a TCR track delivered by Santa after Christmas
  7. Catching lizards in my neighbor Betsy’s back yard
  8. Looking for snail shells with my Uncle Morley at night
  9. Seeing Santa and Rudolph at my friend Chris’s house
  10. Ice skating on the pond across the street from our apartment

Elemental: How game mechanics evolve (long)

Published on Monday, March 29, 2010 By Brad Wardell In Elemental Dev Journals

Internally we are constantly playing, testing, and trying out new ideas. 

Here are some examples of discussions we have had:

 

To:    Team
From:  Brad
Date:  Feb 2010
Re:    Tile density

One of the things I’m a bit concerned about is how barren the world is. We want to make sure that Elemental’s world is filled with interesting things that make each game different.

Here’s a picture with an example of what someone might find early on:
image

Here’s another:

To:    Team
From:  Brad
Date:  Feb 2010
Re:    Making turns count

One of the absolute goals in Elemental is to make sure we balance it so that every single move means something.

I want us to avoid what we had in GalCiv where there were a lot of “pass” turns, we want to enrich the world such that game flow proceeds with a disciplined design.

So as we’re balancing things, we should be cognizant of how different elements fit together.

For instance:

Turn # / What happens

1. Player builds city.

2. Player clicks on city, queues up a command post and a study to be built, sovereign explores.

3. Command post gets completed (hence, we need the command post to only take 1 turn to build), player trains a pioneer, moves sovereign again.

4. (a quest tile comes into view this turn), player moves sovereign (getting a goodie hut)

5. Player sees quest objective in LOS and moves towards it, a low level champion shows up on LOS (this champion is simply a free pioneer). Player can recruit this champion easily.

6. Study gets built (which means study should only take 3 turns to build). Champion pioneer is near a rock quarry which provides 2 material per turn when built. Player moves Champion pioneer towards quarry. Player moves sovereign again towards quest, player queues up a hut in their city. Civilization level 1 technology achievement is made. I choose farming. Add farm to my queue. First tech should take 5 turns to get. I switch tech to adventuring.

7. Player reaches quest objective (killing local bandit terrorizing people). Reward: 10 people go to your outpost plus you receive boots of speed which, when equipped, gives your sovereign +1.

8. Pioneer in city gets built, player moves it from city, queues up a peasant defender. Sovereign sees a sider and moves towards it.

9. Sovereign attacks spider, wins, gains 50 gold. Champion pioneer reaches stone quarry, builds quarry and is consumed.

10. Pioneer continues north. Sovereign moves west. Hut gets built.  Adventuring level 1 gets completed. I choose Ruin Delving.  In my LOS 1 ruin is displayed along with a stone golem. I choose Warfare level 1 next.

11. Sovereign moves west. Encounters champion builder known as “Boboth the Builder”. He has an a magic hammer that causes things in cities to be built 1 turn faster. I send him to my city. In my city, a peasant defender is built in my city. Gold is too tight to build another one at this time.

12. My pioneer is heading towards stone golem in his LOS and heads towards it. My sovereign moves north. Boboth the builder heads words my city.

13. My pioneer closes in on the stone golem. My sovereign sees an ancient ruin (goodie hut) in his LOS and heads towards it. Boboth the builder heads towards my city.

14. My pioneer reaches the stone golem. An event pops up with a piece of artwork (like a quest dialog) telling me how the Titans built golems as soldiers and they obeyed whomever activates them and asks me if I want to activate. I choose yes. I now have a golem with my pioneer. In my LOS I see an ancient spring, I send my pioneer towards it. I send the golem back towards my city. My sovereign reaches the ancient ruin which contains jewels worth 100 gold. My farm is complete and the hut is now queued up.  Warfare level 1 is reached. I choose “equipment”.  Some crummy armor is added. I go to the design screen and design a unit that has crummy armor. The crummy armor adds 5 gold to the cost of creating the unit (hence, we now know that designing units involves gold, metal and/or crystal). The pop up card design randomly chooses “Imperion” out of its lengthy random unit name. I am okay with it and am also okay with the randomly generated quote “I fight for my people”.  My unit has a club so it has 3 attack and now 1 defense thanks to the crummy armor and costs 6 gold total (5 for the crummy armor and 1 for the club).

15. My sovereign encounters Lord Capitar and we agree to be friends. Boboth the builder reaches my city. My pioneer reaches the spring and builds a majestic spring on the spot which increases the prestige of my city by 1 and consumes the pioneer.  I queue up another hut in my city. In my sovereign’s LOS I see an orchard and head near it so that I can build my second city when I reach there.

And another:

To:    Team
From:  Brad
Date:  Feb 2010
Re:    City / Unit construction

One TBS crutch I’d like us to try to get rid of is the reliance on things taking N turns to build where N is dependent on resources.

The reason is that this forces us to abstract out the economy in such a way that trivializes the kind of economics that I think a lot of players would like to see.  In GalCiv and Civ, players produced “shields” or what have you and that determined the number of turns it took to do something.

In Elemental, I’d like us to move towards a system broadly describes as “Materials & Labor”.  Labor is what determines the time to produce a thing and materials is the up front cost. 

This way, I could have a given thing require a lot of different types of materials (depending on how powerful and sophisticated it is) without the user having to sit there calculating out the time it takes.

For example, with this system we could have all kinds of rare and interesting things that can effectively only be built once.  I find the plans to build a Dread Golem and it requires a midnight stone to build. As a player, I now know that if I want to build this, I must find a midnight stone (that maybe I can find on a quest or something).  In essence, I can have units and buildings that are very precious, rare and interesting by having a richer economic system without making the game a spreadsheet.

Thoughts?

A lot of these discussions make it into the game. A lot of them end up being rejected or not working out because it turns out not to be fun or turns out to increase scope too much or what have you. 

In Elemental beta 1Z, we have started going towards the direction of making the game a lot richer and more interesting – more density.

image

A lot of this becomes possible by alterations in the economic system – simplifying construction thus enabling greater sophistication.

For example:

image

One of the big changes we’ve made that resources are now global instead of per city.

I’d like to take credit for that one but the beta group collaborated on this:

https://forums.elementalgame.com/378334

And it turns out to make the game much much more fun. I can’t even begin to describe the potential for fun by having this system.

image

When a player acquires a resource, it shows up on screen in their resource list.  At the start of the game, all they have is food and population.  Build a workshop and now you get 1 “materials” (our catch-all for building materials) per turn.

Build a garden and now you have 2 food available (food is handled as your net food production).  A hut provides population but consumes food.  But now you don’t have to worry about where your food comes from.

Roads and such increase your production through trade.

Moreover, now quests, goodie huts, and such can provide as many different types of resources as we (or modders) want to provide and have weapons, equipment, buildings, etc. consume these resources.

From a “fun” perspective you end up with a much more sophisticated economy but one that is remarkably straight forward to understand and play.

Beta 1Z also introduces the pioneer.

image

Pioneers are the answer to an often requested feature by the beta group that also solves the “density” issue I was complaining about previously. 

Originally, only cities could build improvements because resources were local to the city.  Now that they’re global (again thanks https://forums.elementalgame.com/378334) we can let players build pioneer units who go out and can build on resources that aren’t part of a city.  The pioneer is “consumed” (since they’re settling on that resource) but now you get that resource.  Of course, the downside is that someone else can capture those resources pretty easily unless you send out units to protect your territory. 

Pioneers also give players a logical rationale to control their territory rather than just their cities.  Historically, control of the countryside has mattered and now it matters in Elemental as well.  Hence, the player that creates a massive single army may indeed be formidable but could quickly find themselves starved out by a more nimble (but smaller) opponent that controls their countryside.

I won’t even get into how cool all this stuff looks in the full mode (graphics engine turned on).  But this way, every game feels and plays very different because we can have lots and lots of different resources. You might play 200 games and suddenly get a quest that gives you the plans to build a diamond golem – provided that you find the star diamond located on some distant island (you get the idea).