el problema es que estas llamando a metodos que no existen en tu caso:
 
Código:
 ModLoader.RegisterBlock(Block);
ModLoader.AddName(Block, "Da Block");
ModLoader.AddRecipe(new ItemStack(Block,4), new Object[]{
			"?%", Character.valueOf('?'), Block.dirt
		});
  RegisterBlock, AddName y AddRecipe no existen los metodos correctos son:
registerBlock, addName y addRecipe respetando mayusculas y minusculas.
Ya corregido: 
Código:
 package net.minecraft.src;
import java.util.Random;
public class mod_block extends BaseMod
{
	public static final Block Block = (new Block(159,Material.sand)).setHardness(0.5F).setResistance(50F).setBlockName("YouTube").setLightValue(1F);
	@Override
	public void load() {
		ModLoader.registerBlock(Block);
		ModLoader.addName(Block, "Da Block");
		Block.blockIndexInTexture = ModLoader.addOverride("/terrain.png", "/NewBlock.png");
		ModLoader.addRecipe(new ItemStack(Block,4), new Object[]{
			"?%", Character.valueOf('?'), Block.dirt
		});
	}
       @Override
	public String getVersion() {
		return "1.2.5 Superfn";
	}
}
  PD: No conosco nada sobre minecraft solo tube que echar un ojo al javadoc del ModLoader para saber como trabajar con el.