   console.log 'initializing plugins'
   plugins = createPlugins(game, {require: require})
 
-  plugins.load 'land', {populateTrees: true}
+  registry = plugins.load 'registry', {}
+  registry.registerBlock 'grass', {texture: ['grass_top', 'dirt', 'grass_side'], hardness:5}
+  registry.registerBlock 'dirt', {texture: 'dirt', hardness:4}
+  registry.registerBlock 'stone', {texture: 'stone', hardness:90}
+  registry.registerBlock 'logOak', {texture: ['log_oak_top', 'log_oak_top', 'log_oak'], hardness:8}
+  registry.registerBlock 'cobblestone', {texture: 'cobblestone', hardness:90}
+  registry.registerBlock 'oreCoal', {texture: 'coal_ore'}
+  registry.registerBlock 'brick', {texture: 'brick'}
+  registry.registerBlock 'obsidian', {texture: 'obsidian', hardness: 900}
+  registry.registerBlock 'leavesOak', {texture: 'leaves_oak_opaque', hardness: 2}
+  registry.registerBlock 'glass', {texture: 'glass'}
+
+  game.materials.load registry.getBlockPropsAll 'texture'
+
+  plugins.load 'land', {
+    populateTrees: true
+    materials: {  # TODO: refactor
+      grass: registry.getBlockID 'grass'
+      dirt: registry.getBlockID 'dirt'
+      stone: registry.getBlockID 'stone'
+      bark: registry.getBlockID 'logOak'
+      leaves: registry.getBlockID 'leavesOak'
+    }
+  }
 
   plugins.preconfigure 'oculus', { distortion: 0.2, separation: 0.5 }
 

    progressTexturesBase: 'ProgrammerArt/textures/blocks/destroy_stage_'
    progressTexturesCount: 9
    defaultHardness: 9
    hardness: this.game.registry.getBlockPropsAll 'hardness'
  }

  # highlight blocks when you look at them

module.exports = () ->
  console.log 'voxpopuli starting'

  # setup the game 
  console.log 'creating game'
  game = createGame {
