LG
derivado

Fazendo players Rank 5 acertar pokes null.

Por lgan, 02 de jan. de 2014 em Archived

clan
rank5
script
9
991
lganL
02 de janeiro de 2014 às 23:40

Fala galera, esse é meu primeiro tutorial então desde já peço desculpas se cometer algum erro...

Bom hoje vou explicar como fiz para que um player rank 5 de determinado clan acerte com baixa efetividade um pokemon que normalmente não acerta devido ao elemento do mesmo.(como é na pxg), para que o seu ot fique um pouco mais balanceado, dando a chance de um Raibolt bater alguma coisa em um Orebound.

vamos começar...

primeiro vá em data\lib\configuration.lua - procure por: effectiveness logo abaixo você verá uma tabela onde esta a configuração de efetividade do ataque.

você deve remover todos os atributos "non" de sua tabela, sua tabela deve ficar assim:


effectiveness = {
[WATERDAMAGE] = {super = {"rock", "ground", "fire"}, weak = {"water", "grass", "dragon", "electric"}},
[NORMALDAMAGE] = {weak = {"rock", "steel"}, non = {"ghost"}},
[FIGHTDAMAGE] = {super = {"normal", "rock", "steel", "ice", "dark"}, weak = {"flying", "poison", "bug", "psychic"}, non = {"ghost"}},
[FLYINGDAMAGE] = {super = {"fighting", "bug", "grass"}, weak = {"rock", "steel", "electric"}},
[POISONDAMAGE] = {super = {"grass"}, weak = {"poison", "ground", "rock", "ghost"}},
[POISONEDDAMAGE] = {super = {"grass"}, weak = {"poison", "ground", "rock", "ghost"}},
[GROUNDDAMAGE] = {super = {"poison", "rock", "steel", "fire", "electric"}, weak = {"bug", "grass"}},
[ROCKDAMAGE] = {super = {"flying", "bug", "fire", "ice"}, weak = {"fighting", "ground", "steel"}},
[bUGDAMAGE] = {super = {"grass", "psychic"}, weak = {"fighting", "flying", "poison", "ghost", "steel", "fire"}},
[GHOSTDAMAGE] = {super = {"ghost", "psychic"}, weak = {"steel", "dark"}},
[sTEELDAMAGE] = {super = {"rock", "ice"}, weak = {"steel", "fire", "water", "electric"}},
[FIREDAMAGE] = {super = {"bug", "grass", "ice"}, weak = {"rock", "fire", "water"}},
[bURNEDDAMAGE] = {super = {"bug", "grass", "ice"}, weak = {"rock", "fire", "water"}},
[GRASSDAMAGE] = {super = {"ground", "rock", "water"}, weak = {"flying", "poison", "bug", "steel", "fire", "grass", "dragon"}},
[ELECTRICDAMAGE] = {super = {"flying", "water"}, weak = {"grass", "electric", "dragon"}},
[PSYCHICDAMAGE] = {super = {"fighting", "poison"}, weak = {"steel", "psychic"}},
[iCEDAMAGE] = {super = {"flying", "ground", "grass", "dragon"}, weak = {"steel", "fire", "water", "ice"}},
[DRAGONDAMAGE] = {super = {"dragon"}, weak = {"steel"}},
[DARKDAMAGE] = {super = {"ghost", "psychic"}, weak = {"fighting", "steel", "dark"}},
[MIRACLEDAMAGE] = {super = {"fighting", "poison"}, weak = {"steel", "psychic", "dark"}}, --alterado v1.6
[DARK_EYEDAMAGE] = {super = {"ghost", "psychic"}, weak = {"steel", "dark", "normal"}}, --alterado v1.6
[sEED_BOMBDAMAGE] = {super = {"ground", "rock", "water"}, weak = {"flying", "poison", "bug", "steel", "fire", "grass", "dragon"}}, --alterado v1.6
[sACREDDAMAGE] = {super = {"bug", "grass", "ice"}, weak = {"rock", "fire", "water"}}, --alterado v1.6
[MUDBOMBDAMAGE] = {super = {"poison", "rock", "steel", "fire", "electric"}, weak = {"bug", "grass"}}, --alterado v1.8
}



pode salvar e fechar.

depois vá em: data\creaturescripts\scripts\exp2.0.lua

procure por:


if damageCombat == GROUNDDAMAGE then
if isInArray(specialabilities["levitate"], getCreatureName(cid)) then
valor = 0
end
end



substitua por isso:


if damageCombat == GROUNDDAMAGE then
if isInArray(specialabilities["levitate"], getCreatureName(cid)) then
if isSummon(attacker) then
if getPlayerStorageValue(getCreatureMaster(attacker), 181627) >= 1 then
valor = valor * 0.5
elseif getPlayerStorageValue(getCreatureMaster(attacker), 181627) <= 1 then
valor = 0
end
end
end
end


if damageCombat == POISONDAMAGE then
if isInArray(pokes[getCreatureName(cid)].type, "steel") or isInArray(pokes[getCreatureName(cid)].type2, "steel") then
if isSummon(attacker) then
if getPlayerStorageValue(getCreatureMaster(attacker), 181624) >= 1 then
valor = valor * 0.5
elseif getPlayerStorageValue(getCreatureMaster(attacker), 181624) <= 1 then
valor = 0
end
end
end
end

if damageCombat == POISONEDDAMAGE then
if isInArray(pokes[getCreatureName(cid)].type, "steel") or isInArray(pokes[getCreatureName(cid)].type2, "steel") then
if isSummon(attacker) then
if getPlayerStorageValue(getCreatureMaster(attacker), 181624) >= 1 then
valor = valor * 0.5
elseif getPlayerStorageValue(getCreatureMaster(attacker), 181624) <= 1 then
valor = 0
end
end
end
end

if damageCombat == GROUNDDAMAGE then
if isInArray(pokes[getCreatureName(cid)].type, "flying") or isInArray(pokes[getCreatureName(cid)].type2, "flying") then
if isSummon(attacker) then
if getPlayerStorageValue(getCreatureMaster(attacker), 181627) >= 1 then
valor = valor * 0.5
elseif getPlayerStorageValue(getCreatureMaster(attacker), 181627) <= 1 then
valor = 0
end
end
end
end

if damageCombat == GHOSTDAMAGE then
if isInArray(pokes[getCreatureName(cid)].type, "normal") or isInArray(pokes[getCreatureName(cid)].type2, "normal") then
if isSummon(attacker) then
if getPlayerStorageValue(getCreatureMaster(attacker), 181624) >= 1 then
valor = valor * 0.5
elseif getPlayerStorageValue(getCreatureMaster(attacker), 181624) <= 1 then
valor = 0
end
end
end
end

if damageCombat == ELECTRICDAMAGE then
if isInArray(pokes[getCreatureName(cid)].type, "ground") or isInArray(pokes[getCreatureName(cid)].type2, "ground") then
if isSummon(attacker) then
if getPlayerStorageValue(getCreatureMaster(attacker), 181621) >= 1 then
valor = valor * 0.5
elseif getPlayerStorageValue(getCreatureMaster(attacker), 181621) <= 1 then
valor = 0
end
end
end
end

if damageCombat == PSYCHICDAMAGE then
if isInArray(pokes[getCreatureName(cid)].type, "dark") or isInArray(pokes[getCreatureName(cid)].type2, "dark") then
if isSummon(attacker) then
if getPlayerStorageValue(getCreatureMaster(attacker), 181629) >= 1 then
valor = valor * 0.5
elseif getPlayerStorageValue(getCreatureMaster(attacker), 181629) <= 1 then
valor = 0
end
end
end
end

if damageCombat == MUDBOMBDAMAGE then
if isInArray(pokes[getCreatureName(cid)].type, "flying") or isInArray(pokes[getCreatureName(cid)].type2, "flying") then
if isSummon(attacker) then
if getPlayerStorageValue(getCreatureMaster(attacker), 181627) >= 1 then
valor = valor * 0.5
elseif getPlayerStorageValue(getCreatureMaster(attacker), 181627) <= 1 then
valor = 0
end
end
end
end




pronto está feito.

por enquanto é isso galera qualquer duvida estou a disposição....

Creditos ao zipter98 que me ajudou a desenvolver o script respondendo a uma duvida minha em um outro post...

valeu mesmo zipter98!

Editado Janeiro 3 por lgan

03 de janeiro de 2014 às 00:03

Testando.

 

--EDIT--

INFUNCIONAL.

Editado Janeiro 3 por FlamesAdmin

lganL
03 de janeiro de 2014 às 00:37

"INFUNCIONAL"? aki esta funcionando perfeitamente.... provavelmente você fez algo de errado...

Gabriel CoutoG
03 de janeiro de 2014 às 01:44

Rapaz, é scripting, não spriting! Tá bem bagunçado, dá uma arrumada ali.

Se o cara fez algo errado, tente ajudar ele, é bom pra mostrar que sabe o que está fazendo :)

Abraços.

03 de janeiro de 2014 às 02:00

"INFUNCIONAL"? aki esta funcionando perfeitamente.... provavelmente você fez algo de errado...

Bom, se eu fiz algo errado, pois fiz mt bem oq ta ai ... editei a tabela " effectiveness " , blábláblá

O erro ta no seu tutorial.

Como o Anyur disse, da uma arrumada nesse tópico.

Editado Janeiro 3 por FlamesAdmin

xXMythuszXxX
04 de janeiro de 2014 às 21:39

Seila cara, só acho que tinha que postar na área de scripting diréto, não tinha necessidade de postar em tutoriais, só minha opinião. sleep.png

Mas obrigado pelo conteúdo.

 

Abraços.

lganL
05 de janeiro de 2014 às 14:47

Também acho, mas em "Servidores Derivados" não tem uma área para scripts....se postei no lugar errado peço desculpas e podem mover se quiserem....


Ah... Só para constar...

 

Chamou meu Tutorial de "INFUNCIONAL" mas usou ele em seu OT....

.

 

 

 

https://www.facebook.com/PokemonBrutos?hc_location=timeline

 

observe o post do dia 3 de janeiro...

 

Lamentavel....

Editado Janeiro 5 por lgan

OmegaO
08 de janeiro de 2014 às 01:19

Então, seu tutorial se encaixa melhor como tutorial de servidores derivados. Em breve alguém da equipe deve decidir sobre a aprovação ou reprovação. Boa sorte.

Gabriel CoutoG
08 de janeiro de 2014 às 01:27

Rapaz, é scripting, não spriting! Tá bem bagunçado, dá uma arrumada ali.

Se o cara fez algo errado, tente ajudar ele, é bom pra mostrar que sabe o que está fazendo :)

Abraços.

 

Podia ter arrumado..

Olá XTibiano!

 

Infelizmente, seu tutorial foi reprovado.

Procure por ajuda na seção de como formular um bom tutorial.

 

Grato pela atenção.

Movido.