26 May 2014

House architectural styles

Software architecture professors often make an analogy between software architecture and building architecture. I have been looking at software architectural styles for a while. What are building architectural styles about? I looked at 4 books on architecture, and liked Architectural Styles, by Carson Dunlop. This book only provides a typology of house styles, which seems to be the only meaning of architectural styles for building architecture. I wondered why bridge trusses were not included in the architectural styles. It seems that bridge trusses is a particular structural engineering concern, which is only one part of studying architectural styles.

Criteria

  • detached vs semi-detached
  • Floor plans: positioning of the rooms: 1x1, 2x1, 2x2, 5x1, etc.
  • Roof shapes: flat (with or without parapet), shed, gable (with or without projecting beams, exposed trusses, gingerbread, ...), hip, mansard, ... with or without bell-cast eaves, widow's walk, turrets, cupola, ...
  • Chimney types
  • Dormers: gable, hip, arched, eyebrow, ...
  • Entablature
  • Walls: brick nogging, half-timbered, stucco, adobe, quoinning, ...
  • Windows: fixed, double-hung, single-hung, casement (opening in or out), sliders, awning, hopper, jalousie, ... with various types of muntins (separation between glass panels), mullions (separation between windows), panes, sashes (e.g. wood or metal holding the glass), and sills. Window shapes: Gothic, Palladian, curved top, ... Window crowns: fanlight, pediment, hood, ... Shutter styles, ...
  • Doors: each with their own style of fanlight and transom light (glass above the door), side light (glass next to the door), pilaster, and pediment.
  • Columns: the classical orders are Doric, Tuscan, Ionic, Corinthian, and Composite. A column is made of a base, a pilaster, and a capital (top).

Styles

  • The Ancient Classical style is common on government and institutional buildings. The columns, symmetry, low roof slopes, and entablatures are influenced by Greek and Roman classics. Substyles include Classic Revival, Greek Revival, and Neoclassical.
  • The Renaissance Classical style is based on European interpretations of Greek and Roman classics. Symmetry is important, and doors, eaves, and windows have distinctive details. Substyles include Italianate, French Colonial, Georgian, Adam, and Colonial Revival.
  • The Medieval style can be found mostly in cathedrals and churches. Usually asymmetric, with steep roofs, chimneys, parapets, turrets, and towers. Substyles include Gothic, Victorian, Romanesque, Tudor, and Queen Anne.
  • The Modern style dates from the 20th century and can be divided into Arts and Crafts, and Machine Age. Arts and Crafts have low-sloped roofs with wide overhangs. Substyles include Prairie (emphasis on horizontal lines) and Craftsman (tapered pillars on porches, exposed structure). Machine Age buildings eliminate decoration: asymmetric, and flat roofs with no overhang.
  • The Spanish style features adobe or stucco exterior walls, arched windows, and red-tiled roofs. Substyles include Spanish Colonial, Mission, Pueblo Revival, and Monterey.

Take-aways

Functionally, house styles are heavily influenced by the climate and the cost. Aesthetically, they seem influenced by the historic period and the artist/inventor behind them.

It seems that the aesthetic elements do not matter so much in software architecture. Rather, it seems that only the structural elements matter: how the weight is supported, how snow falls off the roof, how the house stays cool, etc.

In building architecture, it is difficult to separate the aesthetic from the functional. For example, the steep roofs of the Gothic style are very aesthetic, but they are very functional too: they prevent snow to accumulate.

27 April 2014

Assist bundles in Forza 4 and 5

Forza Motorsport 4 is a realistic simulation racing game. If they want to, players can handle the clutch, tire-wear, and other minute racing details. For beginners, the game provides assists that take care of these details automatically. For example, the Braking and Steering assists make turning easier, the Line assist shows the optimal path to follow, and the Transmission assist takes care of switching the gears. For a description of the assists, check these websites.

While I was at Microsoft Research during the Summer of 2013, my mentors and I looked at patterns of progression in FM4. Among the things we published, we found that players rarely used the assist bundles shipped in FM4. FM5 came out in November 2013. This post describes how the FM5 designers used our findings on FM4 to improve the assist bundles.

Assists in FM4 and FM5

Here are the assist bundles shipped in FM4.

Easy Medium Hard Advanced Expert
Steering Assisted Normal Simulation
Stability ON OFF
Traction ON OFF
Brakes Assisted + ABS ABS only OFF
Transmission Automatic Manual Manual + clutch
Trajectory Line Full Braking only OFF
Damage Cosmetic Limited Simulation

Below are the FM4 bundles we suggested, based on player data in Career mode.

Easy Medium Hard Advanced Expert Comments
Steering Assisted Normal Simulation Unchanged
Stability ON OFF Unchanged
Traction ON OFF Unchanged
Brakes Assisted + ABS ABS only OFF ABS-only from Medium onwards
Transmission Automatic Manual Manual + clutch Manual from Hard onwards
Trajectory Line Full Braking only OFF Bumped down: shifted all cells to the left.
Damage Cosmetic Limited Simulation Simulation from Hard onwards

And below are the bundles shipped in FM5.

Easy Medium Hard Pro Veteran Comments
Steering Assisted Normal Simpler: now binary. In Custom bundle, Assisted steering forces Assisted brakes.
Stability ON OFF Bumped up
Traction ON OFF Bumped up
Brakes Assisted + ABS ABS only OFF available in Custom bundle.
Transmission Automatic Manual Bumped up. Clutch available in Custom bundle.
Trajectory Line Full Braking only OFF available in Custom bundle.
Damage Cosmetic Simulation Simpler: now binary.

In short, the bundles in FM5 are easier than their FM4 equivalent because the Stability, Traction, and Transmission assists have been bumped up. Clutch transmission, ABS-OFF, and no trajectory line are only available in a Custom bundle. The FM5 designers did not exactly follow the bundles we suggested. Why is that? See below.

Assist progression

For each race number, we look at how much of the player base still has an assist enabled. The goal is to see how fast players disable an assist. The graph below shows exactly this.

Let's take the Transmission assist as an example. In the first race, the Transmission is automatic for 80% of players (the orange line starts at 0.8), manual without clutch for 15% (the space between the orange and brown lines), and manual with clutch for 5% (the brown line starts at 0.95). Even among the players who reach 100 races (17% of the total player base, cf gray line), only 15% use a manual transmission with clutch. That's why in FM5, manual transmission with clutch is only available in a Custom bundle: very few players use it. Same story for the Trajectory Line-OFF and ABS-OFF assists. In the end, the FM5 designers actually used our findings in their product!

Of course, we need another study to assess whether FM5 players are actually using the default FM5 bundles or not.

A note on Rewind

When you miss a turn, you can press Y to rewind the game and try the turn again. In FM4, the ability to rewind is an assist. Turning the assist OFF grants a 20% credit bonus at the end of a race. In FM5, each rewind costs 1% of the race's credit. I like this change for several reasons:

  • In FM4, I enabled rewind in case I needed it during a race. But I only rewinded every 3-4 races. 20% was a lot of credits missed, though, so it felt a bit frustrating.
  • A fixed price encourages players to rewind as much as they want. So, to get more bang for the buck, they increase the difficulty of the AI opponents, and rewind every time they don't make a perfect turn. This is the same lame trick as saving-and-rerolling in RPGs. Racing this way is excruciating. It also takes longer to complete a race, so the amount of credits gained per hour may actually be lower with more difficult AI.
  • FM5's rewind cost is proportional. This is advantageous for players who rewind rarely, and disadvantageous for those who rewind dozens of times per race.
  • I prefer paying the cost automatically, in the stats screen at the end of a race, rather than manually, through an assist menu before the race.