Isso só é possível através das sources de um servidor, editando as fórmulas de dano.
não esgistiria um modo como, tipow,o player da um hit, se estiver com a storage, ele da um hit ja do sistema, tipo do script ?
O one, e aquela formula de trocar o skill do player:
doPlayerAddSkill(cid, skill, amount, round)
Não funciona?
Tem um modo de fazer isso, mais o jogador será deslogado, pode ser deste jeito?
Smix como assim ? deslogado '-'
como funcionaria esse modo ?
@EDIT
queria fazer uma pequena alteraçãozinha, queria que a cada skill first, ele ganhace +5 de hp, e +5 de mana, mas claro sempre adicionando esse dano que eu pedi '-'
Editado Janeiro 8 por Snowsz
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

doPlayerAddSkill(cid, 0, 1)
isso faz aumentar 1 de fist...
Obrigado, slicer vlw ^^, agora so aguardo alguem poder fazer esse script para mim
, eu sou scripter iniciante, '-', com ajuda de amigos melhorei um pouco, mas ainda não o suficiente para um script desse nivel.
Eu até pensei no creaturescript onStatsChange, mas é totalmente inviável, pois você precisaria registrar em todos os monstros do servidor.
Ou seja, só editando as fórmulas de dano.
Abraços.
nesse caso eu tenho as sources 0.3.6 TFS '-'
@EDIT
so falta achalas no pc kkkk!
Editado Janeiro 8 por Snowsz
Cara, é bastante simples.
Só procurar pelas funções que geram o dano da arma e adicionar um bônus pelo nível de Fist Fighting do jogador, por exemplo:
int32_t WeaponMelee::getWeaponDamage(const Player* player, const Creature* target, const Item* item, bool maxDamage /*= false*/) const
{
int32_t attackSkill = player->getWeaponSkill(item);
int32_t attackValue = std::max((int32_t)0, (int32_t(item->getAttack() + item->getExtraAttack()) - elementDamage));
float attackFactor = player->getAttackFactor();
double maxValue = Weapons::getMaxWeaponDamage(player->getLevel(), attackSkill, attackValue, attackFactor);
if(random_range(1, 100) <= g_config.getNumber(ConfigManager::CRITICAL_HIT_CHANCE))
{
maxValue = std::pow(maxValue, g_config.getDouble(ConfigManager::CRITICAL_HIT_MUL));
player->sendCritical();
}
Vocation* vocation = player->getVocation();
if(vocation && vocation->getMultiplier(MULTIPLIER_MELEE) != 1.0)
maxValue *= vocation->getMultiplier(MULTIPLIER_MELEE);
int32_t ret = (int32_t)std::floor(maxValue);
if(maxDamage)
return -ret;
return -random_range(0, ret, DISTRO_NORMAL);
}
Essa função acima é responsável por definir o dano aleatório das armas corpo-a-corpo, basta então adicionar um cálculo extra no retorno da função:
return -(ret + player->getSkill(SKILL_FIST, SKILL_LEVEL) * 20);
return -(random_range(0, ret, DISTRO_NORMAL) + player->getSkill(SKILL_FIST, SKILL_LEVEL) * 20;
No caso acima, adicionaria 20 (vinte) a mais de dano por nível da skill Fist Fighting na função de dano corpo-a-corpo.
Editado Janeiro 9 por Oneshot
Como eu instalo ? '-'
@UP
Como eu instalo esse cod??
Você tem que editar o weapon.cpp com um IDE de sua preferência, como o Dev-Cpp ou Code::Blocks.
Eu tenho dev-cpp, mas poderia me dizer oque subistituir e pelo oque ?!
@UP
POR FAVOR! me ajudem!
info
Grupo: Visconde
Registrado: 17/09/10
Posts: 252
Reputação: +9

snows, isso vc modifica nas src, do seu tfs, se vc n tiver exixte vários src 0.3.6 e 0.4 aqui no fórum....basta procurar e fazer o q o Oneshot falo..abre a src com o dev e procura weapons.cpp, dps de edita, aperta ctrl+f9 se ajudei rep ++







info
Grupo: Artesão
Registrado: 22/01/12
Posts: 121
Reputação: +23
Char no Tibia: Not...
Bom eu queria pedir um script desse modo, o player tem o first skill né ?, então, eu quero por para ser impossivel upar o first skill, mas a cada 1 de first skill que o player consseguir ele ficara com +20 de hit, tipo, para aumentar o first skill eu quero um item, quando der use ele ganha +1 de first skill!