Consegui compilar em TFS 0.4 na source 3996, porém tive que fazer as seguintes mudanças: 
	em item.h a parte do ExtraDefense aqui é:
 
	inline int32_t Item::getExtraDefense() const 
	{ 
	    const int32_t* v = getIntegerAttribute("extradefense"); 
	    if(v) 
	        return *v;
 
	    return items[id].extraDefense; 
	}
 
	 
 
	enquanto no tutorial é:
 
	inline int32_t Item::getExtraDefense() const 
	{ 
	    bool ok; 
	    int32_t v = getIntegerAttribute("extradefense", ok); 
	    if(ok) 
	        return v;
 
	    return items[id].extraDefense; 
	}
 
	 
 
	Na source que estou utilizando, o código não é igual, então eu utilizei a base do meu extradefense para criar os atributos critical, dodge, etc. Assim, depois de copiar a parte toda do extradefense da minha source, onde tinha getExtraDefense, "extradefense" e items[id].extraDefense; eu fui substituindo pelos códigos de crit, dodge, e assim por diante.
 
	Resumindo: pra quem tem o código igual ao da source tfs 0.4 3996, basta copiar suas linhas de extradefense, colar abaixo de extradefense 6x e ir substituindo as partes referentes a crit, dodge, etc.
 
	 
 
	Só um pequeno detalhe: compilou, mas não funcionou. No ataque da arma ou magia (tanto em player quanto em monstro) não dá critico, não recebe hp ou mana
 
	Segue a parte do items.xml da arma com estes atributos novos que estou usando:
 
	<attribute key="criticalHitChance" value="50" /> 
	<attribute key="lifeLeech" value="50" /> 
	<attribute key="manaLeech" value="50" />
 
	 
 
	Se alguém conseguiu fazer funcionar, poderia nos ajudar por gentileza.?