101Level - Foro

EDITAR SKILL 3Job - sorcerer, 2Job Creator

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Ludwin Bayona

  • *
  • 13
  • 0
  • Actividad:
    0%
  • Sexo: Masculino
EDITAR SKILL 3Job - sorcerer, 2Job Creator
« en: 25 de Enero de 2018, 08:26 »
UN SALUDO EQUIPO DE DIVINERO, compañeros de ro quiero hacer un par de preguntas en el editar  unas skill de 3job que la verdad me sacan cacho entender la algoritmia pero bueno. les explico un poco de que skill son las que no logro darle la scriptiada en su efecto.

esta skill logro editarle es "SO_DIAMONDDUST" pero me queda siempre un respawn del "status Crystallization" y quiero eliminar el status del todo del skill, solo haga daño.
este uno de los codigo que no logro cifrarle el poder quitar ese status

Hercules/src/map/skill.c
Código: [Seleccionar]
case SO_DIAMONDDUST:
rate = 5 + 5 * skill_lv;
if( sc && sc->data[SC_COOLER_OPTION] )
rate += rate * sc->data[SC_COOLER_OPTION]->val2 / 100;
sc_start(bl, SC_COLD, rate, skill_lv, skill->get_time2(skill_id, skill_lv));
break;

y este otro que esta entre el status Crystallization lo comento y lo quita pero, no del todo. queda un respawn muy corto.
Hercules/src/map/status.c
Código: [Seleccionar]
/*case SC_COLD:
if( --(sce->val4) > 0 ) {
// Drains 2% of HP and 1% of SP every seconds.
if( bl->type != BL_MOB) // doesn't work on mobs
status->charge(bl, st->max_hp * 2 / 100, st->max_sp / 100);
sc_timer_next(-0 + tick, status->change_timer, bl->id, data);
return 0;
}
break;*/

una skill mas que quiero modificar es el daño del skill "CR_ACIDDEMONSTRATION".
les cito el codigo es un poco largo, el archivo que scripteo es Hercules/src/map/battle.c

(click mostrar/ocultar)

y encontre este otro codigo, con respecto a la skill pero la verdad ando perdido en saber que le scriptero para subir el daño de la skill el archivo que scripteo es Hercules/src/map/skill.c

Código: [Seleccionar]
case CR_ACIDDEMONSTRATION:
skill->break_equip(bl, EQP_WEAPON|EQP_ARMOR, 100*skill_lv, BCT_ENEMY);
break;

Agradezco su atención y tiempo prestado para scriptiear esas skill.
Saludos TEAM DE DivineRo
« última modificación: 25 de Enero de 2018, 21:33 por Ludwin Bayona »


Desconectado Seryuha

  • *
  • 83
  • 2
  • Actividad:
    0%
  • Sexo: Femenino
  • El conocimiento es para compartir no para competir
Re:EDITAR SKILL 3Job - sorcerer, 2Job Creator
« Respuesta #1 en: 27 de Enero de 2018, 02:32 »
Aqui en el foro hay una guia de como solucionar lo del daño, no recuerdo exactamente el link lo buscare apenas tenga tiempo pero en tu emulador no tienes el archivo Skill_damage_db.txt? eso te facilitaria mucho las cosas.
En cuanto al Diamond Dust puedes probar comentando "//" el sc timer

Desconectado Ludwin Bayona

  • *
  • 13
  • 0
  • Actividad:
    0%
  • Sexo: Masculino
Re:EDITAR SKILL 3Job - sorcerer, 2Job Creator
« Respuesta #2 en: 27 de Enero de 2018, 06:38 »
Aqui en el foro hay una guia de como solucionar lo del daño, no recuerdo exactamente el link lo buscare apenas tenga tiempo pero en tu emulador no tienes el archivo Skill_damage_db.txt? eso te facilitaria mucho las cosas.
En cuanto al Diamond Dust puedes probar comentando "//" el sc timer

amm buenas noche, compañero la verdad no encuentro ese  Skill_damage_db.txt en mi emulador, y con lo del skill dimont dust, ya en antes le habia comentado esta linea

Código: [Seleccionar]
/*case SC_COLD:
if( --(sce->val4) > 0 ) {
// Drains 2% of HP and 1% of SP every seconds.
if( bl->type != BL_MOB) // doesn't work on mobs
status->charge(bl, st->max_hp * 2 / 100, st->max_sp / 100);
sc_timer_next(-0 + tick, status->change_timer, bl->id, data);
return 0;
}
break;*/
y como dije en el inicio, el skill quita al comentar ello el stado, sale pero dura 1seg.

Desconectado -Elysium

  • *
  • 158
  • 5
  • Actividad:
    0%
  • Sexo: Masculino
Re:EDITAR SKILL 3Job - sorcerer, 2Job Creator
« Respuesta #3 en: 27 de Enero de 2018, 07:32 »
Sólo ve a db (si usas pre-re o re) skill_cast_db.txt

Busca:
Código: C
  1. //-- SO_DIAMONDDUST
  2. 2447,5000:5500:6000:6500:7000,1000,0,500,12000:14000:16000:18000:20000,5000

Cambias
Código: C
  1. //-- SO_DIAMONDDUST
  2. 2447,5000:5500:6000:6500:7000,1000,0,500,0,5000

Para modificar el daño de la skill, ve a db/import/skill_damage_db.txt
« última modificación: 27 de Enero de 2018, 07:33 por -Elysium »


Desconectado Ludwin Bayona

  • *
  • 13
  • 0
  • Actividad:
    0%
  • Sexo: Masculino
Re:EDITAR SKILL 3Job - sorcerer, 2Job Creator
« Respuesta #4 en: 27 de Enero de 2018, 09:50 »
amm brother, la verdad sale mismo ahora que el icono que los buff sale un segundo y desaparece xD en antes salia cargando un poco y se iva, ahora solo sale sin cargar el estado  y se va al tiro.

mira antes me salia hace :

estado_diamond_dust" border="0

con lo que le cambie ahora solo sale el recuadro azul sin eso rosado que es el tiempo.
« última modificación: 27 de Enero de 2018, 09:50 por Ludwin Bayona »

Desconectado -Elysium

  • *
  • 158
  • 5
  • Actividad:
    0%
  • Sexo: Masculino
Re:EDITAR SKILL 3Job - sorcerer, 2Job Creator
« Respuesta #5 en: 28 de Enero de 2018, 20:58 »
Ahora sólo aparece y desaparece como ya no tiene duración, se va al momento de dar el estado Crystalization.

Sino, puedes buscar en src/map/skill.c y buscas la línea 1696 y borras

Código: C
  1.         case SO_DIAMONDDUST:
  2.                 rate = 5 + 5 * skill_lv;
  3.                 if( sc && sc->data[SC_COOLER_OPTION] )
  4.                         rate += (sd ? sd->status.job_level / 5 : 0);
  5.                 sc_start(src,bl, SC_CRYSTALIZE, rate, skill_lv, skill_get_time2(skill_id, skill_lv));
  6.                 break;

Compilas y pruebas nuevamente.


Desconectado Ludwin Bayona

  • *
  • 13
  • 0
  • Actividad:
    0%
  • Sexo: Masculino
Re:EDITAR SKILL 3Job - sorcerer, 2Job Creator
« Respuesta #6 en: 29 de Enero de 2018, 23:56 »
wuju brother te fajas con tus conocimientos!! MUCHAS GRACIAS! e logrado quitar el efecto o estado que da el DIMOND DUST.

Quisiera saber si alguien me puede colaborar con el de skil del CR_ACIDDEMONSTRATION! que la verdad no logro aumentarle el daño

PD: mi server es  HIGHT RATES ose 999/150
« última modificación: 30 de Enero de 2018, 00:02 por Ludwin Bayona »

Desconectado -Elysium

  • *
  • 158
  • 5
  • Actividad:
    0%
  • Sexo: Masculino
Re:EDITAR SKILL 3Job - sorcerer, 2Job Creator
« Respuesta #7 en: 30 de Enero de 2018, 06:33 »
Para editar el daño del Acid, abres src/map/battle.ccp y búsca la línea 6515

Código: C
  1. #ifdef RENEWAL
  2.                         // Official Renewal formula [helvetica]
  3.                         // damage = 7 * ((atk + matk)/skill level) * (target vit/100)
  4.                         // skill is a "forced neutral" type skill, it benefits from weapon element but final damage
  5.                         //      is considered "neutral" for purposes of resistances
  6.                         {
  7.                                 struct Damage atk = battle_calc_weapon_attack(src, target, skill_id, skill_lv, 0);
  8.                                 struct Damage matk = battle_calc_magic_attack(src, target, skill_id, skill_lv, 0);
  9.                                 md.damage = 7 * ((atk.damage/skill_lv + matk.damage/skill_lv) * tstatus->vit / 100 );
  10.        
  11.                                 // AD benefits from endow/element but damage is forced back to neutral
  12.                                 md.damage = battle_attr_fix(src, target, md.damage, ELE_NEUTRAL, tstatus->def_ele, tstatus->ele_lv);
  13.                         }
  14. #else
  15.                         if(tstatus->vit+sstatus->int_) //crash fix
  16.                                 md.damage = (int)((int64)7*tstatus->vit*sstatus->int_*sstatus->int_ / (10*(tstatus->vit+sstatus->int_)));
  17.                         else
  18.                                 md.damage = 0;
  19.                         if (tsd) md.damage>>=1;
  20. #endif

Si es renewal
Código: C
  1. md.damage = 7 * ((atk.damage/skill_lv + matk.damage/skill_lv) * tstatus->vit / 100 );
  2.  
Editas esta línea.

Si es pre-re
Código: C
  1. md.damage = (int)((int64)7*tstatus->vit*sstatus->int_*sstatus->int_ / (10*(tstatus->vit+sstatus->int_)));
Editas esta.

Ahí vas probando que tal queda, para cambiar el daño sólo editas el 7 * y (10*


Desconectado Ludwin Bayona

  • *
  • 13
  • 0
  • Actividad:
    0%
  • Sexo: Masculino
Re:EDITAR SKILL 3Job - sorcerer, 2Job Creator
« Respuesta #8 en: 31 de Enero de 2018, 08:01 »
Hola Elysium, gracias por tu ayuda brother. pero la verdad en este paso me quedo. no logro encontrar esas lineas en mi battle.c jumm voy a la linea que me dices salen otras cosasm no tienes un filtro para encontar esa linea ?

Post Actualizado: 02 de Febrero de 2018, 07:09
amigo -Elysium o compañeros de divinero, que pena molestarle tanto. pero es que la verdad aun sigo sin lograr esa script de skill Acid Demostration. en mi emulador, y aparte aprovecho para preguntar si son tan amables de colaborar me con otra skill que busco y tampoco encuento es una del Shadow Chaser es la skill SC_BLOODYLUST o Bloody Lust busque en mi emu/src/map/skill.c-battle.c-status.c y no encontre, donde poderle modificar a la skill.
en si lo que quiero modificar a la skill del bloody lust es que no robe o quite la vida de los players que la pisan.
Agradezco su atencion prestada gracias
« última modificación: 02 de Febrero de 2018, 07:09 por Ludwin Bayona »

Desconectado -Elysium

  • *
  • 158
  • 5
  • Actividad:
    0%
  • Sexo: Masculino
Re:EDITAR SKILL 3Job - sorcerer, 2Job Creator
« Respuesta #9 en: 02 de Febrero de 2018, 19:10 »
Podrías adjuntar tu battle.c?

@EDIT

Bloody Lust no es que te quite vida, sino que te aumenta la vida y te deja en un estado similar a la de Berserk, si no quieres que baje la vida mientras esté en el circulo, tendrías que modificar Berserk en si para que ya no baje su vida.
« última modificación: 02 de Febrero de 2018, 23:41 por -Elysium »


Desconectado Ludwin Bayona

  • *
  • 13
  • 0
  • Actividad:
    0%
  • Sexo: Masculino
Re:EDITAR SKILL 3Job - sorcerer, 2Job Creator
« Respuesta #10 en: 03 de Febrero de 2018, 01:10 »
Buenas, Hola -Elysium. amm que pena amigo por explicarme mal con respecto al skill SC_BLOODYLUST es que no robe todo el sp mas no el hp xD!

amm amigo ya te paso el archibo battle.co


Desconectado -Elysium

  • *
  • 158
  • 5
  • Actividad:
    0%
  • Sexo: Masculino
Re:EDITAR SKILL 3Job - sorcerer, 2Job Creator
« Respuesta #11 en: 07 de Febrero de 2018, 06:44 »
El Bloody Lust tendrías que editar Berserk para que no consuma el SP ya que al estar activa la skill, te toma como Berserk.

Sobre el daño del Acid Demo la línea es la siguiente:

Código: C
  1. #ifdef RENEWAL
  2.                 {// [malufett]
  3.                         int64 matk=0, atk;
  4.                         short tdef = status->get_total_def(target);
  5.                         short tmdef =  status->get_total_mdef(target);
  6.                         int targetVit = min(120, status_get_vit(target));
  7.                         short totaldef = (tmdef + tdef - ((uint64)(tmdef + tdef) >> 32)) >> 1;
  8.  
  9.                         matk = battle->calc_magic_attack(src, target, skill_id, skill_lv, mflag).damage;
  10.                         atk = battle->calc_base_damage(src, target, skill_id, skill_lv, nk, false, s_ele, ELE_NEUTRAL, EQI_HAND_R, (sc && sc->data[SC_MAXIMIZEPOWER]?1:0)|(sc && sc->data[SC_WEAPONPERFECT]?8:0), md.flag);
  11.                         md.damage = matk + atk;
  12.                         if( src->type == BL_MOB ){
  13.                                 totaldef = (tdef + tmdef) >> 1;
  14.                                 md.damage = 7 * targetVit * skill_lv * (atk + matk) / 100;
  15.                                 /*
  16.                                 // Pending [malufett]
  17.                                 if( unknown condition )
  18.                                         md.damage >>= 1;
  19.                                 if( unknown condition ){
  20.                                         md.damage = 7 * md.damage % 20;
  21.                                         md.damage = 7 * md.damage / 20;
  22.                                 }*/
  23.                         }else{
  24.                                 float vitfactor = 0.0f, temp;
  25.                                
  26.                                 if( (vitfactor=(status_get_vit(target)-120.0f)) > 0)
  27.                                         vitfactor = (vitfactor * (matk + atk) / 10) / status_get_vit(target);
  28.                                 temp = max(0, vitfactor) + (targetVit * (matk + atk)) / 10;
  29.                                 md.damage = (int64)(temp * 70 * skill_lv / 100);
  30.                         }
  31.                         md.damage -= totaldef;
  32.                 }
  33. #else
  34.                 // updated the formula based on a Japanese formula found to be exact [Reddozen]
  35.                 if(tstatus->vit+sstatus->int_) //crash fix
  36.                         md.damage = (int)(7*tstatus->vit*sstatus->int_*sstatus->int_ / (10*(tstatus->vit+sstatus->int_)));
  37.                 else
  38.                         md.damage = 0;
  39.                 if (tsd) md.damage>>=1;
  40. #endif

Si tu server es Renewal, editas lo de arriba antes de #else, de lo contrario si es pre-renewal editas solamente md.damage = (int)(7*tstatus->vit*sstatus->int_*sstatus->int_ / (10*(tstatus->vit+sstatus->int_)));


 

Ayuda Con Editar skill

Iniciado por DragonTechi Techi

Respuestas: 1
Vistas: 168
Último mensaje 22 de Mayo de 2016, 04:35
por Celsius
EDITAR SKILL de Shadow Chaser

Iniciado por Ludwin Bayona

Respuestas: 4
Vistas: 1427
Último mensaje 27 de Enero de 2018, 09:21
por Ludwin Bayona
[AYUDA!] Problemas con los skill del creator

Iniciado por lahd15

Respuestas: 2
Vistas: 425
Último mensaje 15 de Junio de 2009, 02:52
por lahd15