Jump to content

KeiKun

Members
  • Posts

    967
  • Joined

  • Last visited

  • Days Won

    3

Posts posted by KeiKun

  1. my suggestion for the emu: make the re-use delay belong to the guild, not the master.

    probably wouldn't be hard to come up with it when i have time.

    huh?

    what guild skill will member use just to relog

  2. did you set this?

    @ svn/conf/monster.conf

    // Display some mob info next to their name? (add as needed)
    // (does not works on guardian or emperium)
    // 1: Display mob HP (Hp/MaxHp format)
    // 2: Display mob HP (Percent of full life format)
    // 4: Display mob's level
    show_mob_info: 0

  3. Hi!

    @ svn/db/job_db1.txt

    // Gunslinger

    24, 28000,88 , 0 ,450 ,500 ,2000, 2000, 2000, 2000, 2000, 2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 , 700 , 750 , 700 ,1500 ,1500 ,2000 ,2000

    // Ninja

    25, 26000,80 , 0 ,515 ,400 ,500 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 ,2000 , 750 ,2000

    Green = HPFactor

    Red = HPMultiplicator

  4. 1. goto svn/src/map/battle.c

    Find:

    if(class_ == MOBID_EMPERIUM && flag&BF_SKILL) {

    below that

    #ifndef RENEWAL
    case MO_TRIPLEATTACK:
    #endif
    
    case HW_GRAVITATION:

    add

    case GC_CROSSIMPACT:

    it will look like this

     //Skill immunity.
      switch (skill_num) {
    #ifndef RENEWAL
      case MO_TRIPLEATTACK:
    #endif
      case HW_GRAVITATION:
      case GC_CROSSIMPACT:
       break;
      default:
       return 0;
    

    2. did your gm tried to @refresh

  5. - Changed the movement between Morroc Field maps to make traveling more convenient.

    • Added new route connecting moc.fild07 to prt_fild10
    • Added new route connecting moc_fild16 to moc_fild13

    awesome

    new connecting maps

    - Monster HP bar will not be shown if a monster uses hiding skill.

    atleast they fix this part

    i thought they really intended to show hp bar

    even its hiding

    - Monsters attacked by an Elemental (sorcerer summon), Mercenary or Homunculus will now display its HP bar.

    not bad

  6. try using this

    PetIllustNameTable = {
    [jobtbl.JT_BAPHOMET_] = "Æê_¹ÙÆ÷¸ÞÆ®.bmp",
    [jobtbl.JT_PECOPECO] = "Æê_ÆääÚÆääÚ.bmp",
    [jobtbl.JT_CHONCHON] = "Æê_ÃÌÃÌ.bmp",
    [jobtbl.JT_DESERT_WOLF_B] = "Æê_µ¥Á®Æ®¿ïÇÁ»õ³¢.bmp",
    [jobtbl.JT_DEVIRUCHI] = "Æê_µ¥ºñ·Çä¡.bmp",
    [jobtbl.JT_DOKEBI] = "Æê_µµ±Úºñ.bmp",
    [jobtbl.JT_ISIS] = "Æê_À̽ýº.bmp",
    [jobtbl.JT_LUNATIC] = "Æê_·Ç³ªÆ½.bmp",
    [jobtbl.JT_MUNAK] = "Æê_¹«³«.bmp",
    [jobtbl.JT_ORK_WARRIOR] = "Æê_¿ÀÅ©¿ö¸®¾î.bmp",
    [jobtbl.JT_PETIT] = "Æê_»Ú¶Ì.bmp",
    [jobtbl.JT_PICKY] = "Æê_ÇÈÅ°.bmp",
    [jobtbl.JT_PORING] = "Æê_Æ÷¸µ.bmp",
    [jobtbl.JT_ROCKER] = "Æê_·îä¿.bmp",
    [jobtbl.JT_SAVAGE_BABE] = "Æê_¼¼ºñÁöº£º£.bmp",
    [jobtbl.JT_SOHEE] = "Æê_¼ÒÈñ.bmp",
    [jobtbl.JT_SPORE] = "Æê_½ºÆ÷¾Æ.bmp",
    [jobtbl.JT_YOYO] = "Æê_¿ä¿ä.bmp",
    [jobtbl.JT_SMOKIE] = "Æê_½º¸ðÅ°.bmp",
    [jobtbl.JT_BON_GUN] = "Æê_º»°Ç.bmp",
    [jobtbl.JT_STEEL_CHONCHON] = "Æê_½ºÆ¿ÃÌÃÌ.bmp",
    [jobtbl.JT_DROPS] = "Æê_µÅ·ÓÇÁ½º.bmp",
    [jobtbl.JT_POPORING] = "Æê_Æ÷Æ÷¸µ.bmp",
    [jobtbl.JT_HUNTER_FLY] = "Æê_ÇÅÅÍÇöÓÀÌ.bmp",
    [jobtbl.JT_POISON_SPORE] = "Æê_Æ÷ÀÌÁð½ºÆ÷¾Æ.bmp",
    [jobtbl.JT_ZHERLTHSH] = "Æê_ZHERLTHSH.bmp",
    [jobtbl.JT_ALICE] = "Æê_ALICE.bmp",
    [jobtbl.JT_EVENT_RICECAKE] = "Æê_¶±_À̺¥Æ®.bmp",
    [jobtbl.JT_GOBLINE_XMAS] = "Æê_°ÍºÍ¸°_À̺¥Æ®.bmp",
    [jobtbl.JT_CHUNG_E] = "Æê_ûÀÌ.bmp",
    [jobtbl.JT_CHUNG_E_] = "Æê_ûÀÌ.bmp",
    [jobtbl.JT_P_CHUNG_E] = "Æê_ûÀÌ.bmp",
    [jobtbl.JT_ECLIPSE_P] = "Æê_·Ç³ªÆ½.bmp",
    [jobtbl.JT_GOBLIN_1] = "Æê_°ÍºÍ¸°_´Ü°Ë.bmp",
    [jobtbl.JT_GOBLIN_2] = "Æê_°ÍºÍ¸°_Ç÷¹Àï.bmp",
    [jobtbl.JT_GOBLIN_4] = "Æê_°ÍºÍ¸°_ÇظÓ.bmp",
    [jobtbl.JT_DELETER_] = "Æê_Áö»Óµô¸®ÅÍ.bmp",
    [jobtbl.JT_DIABOLIC] = "Æê_µð¾Æº¼¸¯.bmp",
    [jobtbl.JT_WANDER_MAN] = "Æê_¹ÈȸÇï´ÂÀÚ.bmp",
    [jobtbl.JT_BACSOJIN_] = "Æê_BACSOJIN.bmp",
    [jobtbl.JT_CIVIL_SERVANT] = "Æê_CIVIL_SERVANT.bmp",
    [jobtbl.JT_LEAF_CAT] = "Æê_LEAF_CAT.bmp",
    [jobtbl.JT_LOLI_RURI] = "Æê_LOLI_RURI.BMP",
    [jobtbl.JT_MARIONETTE] = "Æê_MARIONETTE.bmp",
    [jobtbl.JT_SHINOBI] = "Æê_SHINOBI.bmp",
    [jobtbl.JT_WHISPER] = "Æê_WHISPER.BMP",
    [jobtbl.JT_DULLAHAN] = "Æê_DULLAHAN.bmp",
    [jobtbl.JT_GOBLIN_LEADER] = "Æê_GOBLIN_LEADER.bmp",
    [jobtbl.JT_GOLEM] = "Æê_GOLEM.bmp",
    [jobtbl.JT_IMP] = "Æê_IMP.bmp",
    [jobtbl.JT_INCUBUS] = "Æê_INCUBUS.bmp",
    [jobtbl.JT_MEDUSA] = "Æê_MEDUSA.bmp",
    [jobtbl.JT_MIYABI_NINGYO] = "Æê_MIYABI_NINGYO.bmp",
    [jobtbl.JT_NIGHTMARE_TERROR] = "Æê_NIGHTMARE_TERROR.bmp",
    [jobtbl.JT_STONE_SHOOTER] = "Æê_STONE_SHOOTER.bmp",
    [jobtbl.JT_SUCCUBUS] = "Æê_SUCCUBUS.bmp",
    [jobtbl.JT_WICKED_NYMPH] = "Æê_WICKED_NYMPH.bmp",
    [jobtbl.JT_J_TAINI] = "Æê_j_taini.bmp",
    [jobtbl.JT_XMAS_LUNATIC] = "Æê_Å©¸®½º¸¶½º_´«Åä³¢.bmp",
    [jobtbl.JT_TIKBALANG] = "Æê_ƽ¹ö··.bmp",
    [jobtbl.JT_MARIN] = "Æê_¸¶¸°.bmp",
    [jobtbl.JT_DOMOVOI] = "Æê_µµ¸ðºÛÀÌ.bmp",
    [jobtbl.JT_LITTLE_PORING] = "Æê_LITTLE_PORING.bmp"
    }
    PetIllustNameTable_Eng = {
    [jobtbl.JT_BAPHOMET_] = "PET_BAPHOMET.bmp",
    [jobtbl.JT_PECOPECO] = "PET_PECOPECO.bmp",
    [jobtbl.JT_CHONCHON] = "PET_CHONCHON.bmp",
    [jobtbl.JT_DESERT_WOLF_B] = "PET_DESERT_WOLF_B.bmp",
    [jobtbl.JT_DEVIRUCHI] = "PET_DEVIRUCHI.bmp",
    [jobtbl.JT_DOKEBI] = "PET_DOKEBI.bmp",
    [jobtbl.JT_ISIS] = "PET_ISIS.bmp",
    [jobtbl.JT_LUNATIC] = "PET_LUNATIC.bmp",
    [jobtbl.JT_MUNAK] = "PET_MUNAK.bmp",
    [jobtbl.JT_ORK_WARRIOR] = "PET_ORK_WARRIOR.bmp",
    [jobtbl.JT_PETIT] = "PET_PETIT.bmp",
    [jobtbl.JT_PICKY] = "PET_PICKY.bmp",
    [jobtbl.JT_PORING] = "PET_PORING.bmp",
    [jobtbl.JT_ROCKER] = "PET_ROCKER.bmp",
    [jobtbl.JT_SAVAGE_BABE] = "PET_SAVAGE_BABE.bmp",
    [jobtbl.JT_SOHEE] = "PET_SOHEE.bmp",
    [jobtbl.JT_SPORE] = "PET_SPORE.bmp",
    [jobtbl.JT_YOYO] = "PET_YOYO.bmp",
    [jobtbl.JT_SMOKIE] = "PET_SMOKIE.bmp",
    [jobtbl.JT_BON_GUN] = "PET_BON_GUN.bmp",
    [jobtbl.JT_STEEL_CHONCHON] = "PET_STEEL_CHONCHON.bmp",
    [jobtbl.JT_DROPS] = "PET_DROPS.bmp",
    [jobtbl.JT_POPORING] = "PET_POPORING.bmp",
    [jobtbl.JT_HUNTER_FLY] = "PET_HUNTER_FLY.bmp",
    [jobtbl.JT_POISON_SPORE] = "PET_POISON_SPORE.bmp",
    [jobtbl.JT_ZHERLTHSH] = "PET_ZHERLTHSH.bmp",
    [jobtbl.JT_ALICE] = "PET_ALICE.bmp",
    [jobtbl.JT_EVENT_RICECAKE] = "PET_EVENT_RICECAKE.bmp",
    [jobtbl.JT_GOBLINE_XMAS] = "PET_GOBLINE_XMAS.bmp",
    [jobtbl.JT_CHUNG_E] = "PET_CHUNG_E.bmp",
    [jobtbl.JT_CHUNG_E_] = "PET_CHUNG_E.bmp",
    [jobtbl.JT_P_CHUNG_E] = "PET_P_CHUNG_E.bmp",
    [jobtbl.JT_ECLIPSE_P] = "PET_ECLIPSE_P.bmp",
    [jobtbl.JT_GOBLIN_1] = "PET_GOBLIN_1.bmp",
    [jobtbl.JT_GOBLIN_2] = "PET_GOBLIN_2.bmp",
    [jobtbl.JT_GOBLIN_4] = "PET_GOBLIN_4.bmp",
    [jobtbl.JT_DELETER_] = "PET_DELETER_.bmp",
    [jobtbl.JT_DIABOLIC] = "PET_DIABOLIC.bmp",
    [jobtbl.JT_WANDER_MAN] = "PET_WANDER_MAN.bmp",
    [jobtbl.JT_BACSOJIN_] = "PET_BACSOJIN_.bmp",
    [jobtbl.JT_CIVIL_SERVANT] = "PET_CIVIL_SERVANT.bmp",
    [jobtbl.JT_LEAF_CAT] = "PET_LEAF_CAT.bmp",
    [jobtbl.JT_LOLI_RURI] = "PET_LOLI_RURI.bmp",
    [jobtbl.JT_MARIONETTE] = "PET_MARIONETTE.bmp",
    [jobtbl.JT_SHINOBI] = "PET_SHINOBI.bmp",
    [jobtbl.JT_WHISPER] = "PET_WHISPER.bmp",
    [jobtbl.JT_DULLAHAN] = "PET_DULLAHAN.bmp",
    [jobtbl.JT_GOBLIN_LEADER] = "PET_GOBLIN_LEADER.bmp",
    [jobtbl.JT_GOLEM] = "PET_GOLEM.bmp",
    [jobtbl.JT_IMP] = "PET_IMP.bmp",
    [jobtbl.JT_INCUBUS] = "PET_INCUBUS.bmp",
    [jobtbl.JT_MEDUSA] = "PET_MEDUSA.bmp",
    [jobtbl.JT_MIYABI_NINGYO] = "PET_MIYABI_NINGYO.bmp",
    [jobtbl.JT_NIGHTMARE_TERROR] = "PET_NIGHTMARE_TERROR.bmp",
    [jobtbl.JT_STONE_SHOOTER] = "PET_STONE_SHOOTER.bmp",
    [jobtbl.JT_SUCCUBUS] = "PET_SUCCUBUS.bmp",
    [jobtbl.JT_WICKED_NYMPH] = "PET_WICKED_NYMPH.bmp",
    [jobtbl.JT_J_TAINI] = "PET_J_TAINI.bmp",
    [jobtbl.JT_XMAS_LUNATIC] = "PET_XMAS_LUNATIC.bmp",
    [jobtbl.JT_TIKBALANG] = "PET_TIKBALANG.bmp",
    [jobtbl.JT_MARIN] = "PET_MARIN.bmp",
    [jobtbl.JT_DOMOVOI] = "PET_DOMOVOI.bmp",
    [jobtbl.JT_LITTLE_PORING] = "PET_LITTLE_PORING.bmp"
    }
    PetAccIDs = {
    ACC_FIRST = 10000,
    ACC_BAPHOMET = 10001,
    ACC_CHOCHO = 10002,
    ACC_DESERT_WOLF_B = 10003,
    ACC_DEVIRUCHI = 10004,
    ACC_DOKEBI = 10005,
    ACC_ISIS = 10006,
    ACC_LUNATIC = 10007,
    ACC_MUNAK = 10008,
    ACC_ORK_WARRIOR = 10009,
    ACC_PECOPECO = 10010,
    ACC_PETIT = 10011,
    ACC_PICKY = 10012,
    ACC_PORING = 10013,
    ACC_ROCKER = 10014,
    ACC_SAVAGE_BABE = 10015,
    ACC_SOHEE = 10016,
    ACC_SPORE = 10017,
    ACC_YOYO = 10018,
    ACC_SMOKIE = 10019,
    ACC_BONGUN = 10020,
    ACC_BACSOJIN = 10021,
    ACC_CIVIL_SERVANT = 10022,
    ACC_LEAF_CAT = 10023,
    ACC_LOLIRURI = 10024,
    ACC_MARIONETTE = 10025,
    ACC_SHINOBI = 10026,
    ACC_WHISPER = 10027,
    ACC_GOBLIN_LEADER = 10028,
    ACC_WICKED_NYMPH = 10029,
    ACC_MIYABI_NINGYO = 10030,
    ACC_DULLAHAN = 10031,
    ACC_MEDUSA = 10032,
    ACC_STONE_SHOOTER = 10033,
    ACC_INCUBUS = 10034,
    ACC_GOLEM = 10035,
    ACC_NIGHTMARE_TERROR = 10036,
    ACC_SUCCUBUS = 10037,
    ACC_IMP = 10038,
    ACC_BAG_OF_TAIWAN = 10039,
    ACC_LAST = 10040
    }
    PetAccActNameTable = {
    [PetAccIDs.ACC_BAPHOMET] = "BAPHOMET_»Á´Ù±¸¸ðÀÚ.act",
    [PetAccIDs.ACC_CHOCHO] = "chocho_¹Æµ¶¸é.act",
    [PetAccIDs.ACC_DESERT_WOLF_B] = "DESERT_WOLF_B_¿ÌÁöº¹¸Ó¸®.act",
    [PetAccIDs.ACC_DEVIRUCHI] = "DEVIRUCHI_Á¥²ÀÁö.act",
    [PetAccIDs.ACC_DOKEBI] = "DOKEBI_¾ÆÈä·î¸Ó¸®.act",
    [PetAccIDs.ACC_ISIS] = "isis_Ŭ·¹¿ÀÆäÆ®¶Ó¸Ó¸®¶Ì.act",
    [PetAccIDs.ACC_LUNATIC] = "lunatic_¸®º».act",
    [PetAccIDs.ACC_MUNAK] = "munak_¿ä¼ÚºÀ.act",
    [PetAccIDs.ACC_ORK_WARRIOR] = "ork_warrior_²é.act",
    [PetAccIDs.ACC_PECOPECO] = "pecopeco_³¿ºñ.act",
    [PetAccIDs.ACC_PETIT] = "PETIT_º°.act",
    [PetAccIDs.ACC_PICKY] = "picky_¾Ë²®ÁÚ.act",
    [PetAccIDs.ACC_PORING] = "poring_Ã¥°¡¹Æ.act",
    [PetAccIDs.ACC_ROCKER] = "rocker_¸Þ¶ñ±Â¾È°Æ.act",
    [PetAccIDs.ACC_SAVAGE_BABE] = "savage_babe_·¹À̽º.act",
    [PetAccIDs.ACC_SOHEE] = "SOHEE_¹Æ¿ï.act",
    [PetAccIDs.ACC_SPORE] = "spore_¿ØÁö¹î䡸¶.act",
    [PetAccIDs.ACC_YOYO] = "yoyo_¸Ó¸®¶Ì.act",
    [PetAccIDs.ACC_SMOKIE] = "smokie_¸ÓÇ÷¯.act",
    [PetAccIDs.ACC_BONGUN] = "bon_gun_¿µÈ¯µµ»Ç°Ë.act",
    [PetAccIDs.ACC_BACSOJIN] = "BACSOJIN_µ¿±×¶õ¸Ó¸®ÀŽä.act",
    [PetAccIDs.ACC_CIVIL_SERVANT] = "CIVIL_SERVANT_±ÝºÛ±Í°éÀÌ.act",
    [PetAccIDs.ACC_LEAF_CAT] = "LEAF_CAT_Ãê·ïº¹Áö¸Ó´ï.act",
    [PetAccIDs.ACC_LOLIRURI] = "LOLI_RURI_Æð¼Ç¾È°Æ.act",
    [PetAccIDs.ACC_MARIONETTE] = "MARIONETTE_º°¸ð¾Ç¸Ó¸®¶Ì.act",
    [PetAccIDs.ACC_SHINOBI] = "SHINOBI_µî·Ç¸¶±Â¿Ë¼Ú.act",
    [PetAccIDs.ACC_WHISPER] = "WHISPER_¿µÈ¥°Í¸®_.act",
    [PetAccIDs.ACC_GOBLIN_LEADER] = "GOBLIN_LEADER_¸ÚÁØÈöÀÅ.act",
    [PetAccIDs.ACC_WICKED_NYMPH] = "WICKED_NYMPH_¿Á³Ë¸®°³.act",
    [PetAccIDs.ACC_MIYABI_NINGYO] = "MIYABI_NINGYO_¿©¸§ºîä.act",
    [PetAccIDs.ACC_DULLAHAN] = "DULLAHAN_Á×À½Àǰ͸®.act",
    [PetAccIDs.ACC_MEDUSA] = "MEDUSA_¿©¿õÀÇäÚ·î³Ý.act",
    [PetAccIDs.ACC_STONE_SHOOTER] = "STONE_SHOOTER_¾ÆÇÁ·îÇ̾î.act",
    [PetAccIDs.ACC_INCUBUS] = "INCUBUS_¹«µµÈ¸°¡¸é.act",
    [PetAccIDs.ACC_GOLEM] = "GOLEM_Å¿±.act",
    [PetAccIDs.ACC_NIGHTMARE_TERROR] = "NIGHTMARE_TERROR_Áö¿ÁÀÇ»ô.act",
    [PetAccIDs.ACC_SUCCUBUS] = "SUCCUBUS_°ËÀº³ªºñ°¡¸é.act",
    [PetAccIDs.ACC_IMP] = "IMP_»ôº¸È£´Ë.act",
    [PetAccIDs.ACC_BAG_OF_TAIWAN] = "MARIN_´Ë¸¸Ã¥°¡¹Æ.act"
    }
    PetAccActNameTable_Eng = {
    [PetAccIDs.ACC_BAPHOMET] = "ACC_BAPHOMET.act",
    [PetAccIDs.ACC_CHOCHO] = "ACC_CHOCHO.act",
    [PetAccIDs.ACC_DESERT_WOLF_B] = "ACC_DESERT_WOLF_B.act",
    [PetAccIDs.ACC_DEVIRUCHI] = "ACC_DEVIRUCHI.act",
    [PetAccIDs.ACC_DOKEBI] = "ACC_DOKEBI.act",
    [PetAccIDs.ACC_ISIS] = "ACC_ISIS.act",
    [PetAccIDs.ACC_LUNATIC] = "ACC_LUNATIC.act",
    [PetAccIDs.ACC_MUNAK] = "ACC_MUNAK.act",
    [PetAccIDs.ACC_ORK_WARRIOR] = "ACC_ORK_WARRIOR.act",
    [PetAccIDs.ACC_PECOPECO] = "ACC_PECOPECO.act",
    [PetAccIDs.ACC_PETIT] = "ACC_PETIT.act",
    [PetAccIDs.ACC_PICKY] = "ACC_PICKY.act",
    [PetAccIDs.ACC_PORING] = "ACC_PORING.act",
    [PetAccIDs.ACC_ROCKER] = "ACC_ROCKER.act",
    [PetAccIDs.ACC_SAVAGE_BABE] = "ACC_SAVAGE_BABE.act",
    [PetAccIDs.ACC_SOHEE] = "ACC_SOHEE.act",
    [PetAccIDs.ACC_SPORE] = "ACC_SPORE.act",
    [PetAccIDs.ACC_YOYO] = "ACC_YOYO.act",
    [PetAccIDs.ACC_SMOKIE] = "ACC_SMOKIE.act",
    [PetAccIDs.ACC_BONGUN] = "ACC_BONGUN.act",
    [PetAccIDs.ACC_BACSOJIN] = "ACC_BACSOJIN.act",
    [PetAccIDs.ACC_CIVIL_SERVANT] = "ACC_CIVIL_SERVANT.act",
    [PetAccIDs.ACC_LEAF_CAT] = "ACC_LEAF_CAT.act",
    [PetAccIDs.ACC_LOLIRURI] = "ACC_LOLIRURI.act",
    [PetAccIDs.ACC_MARIONETTE] = "ACC_MARIONETTE.act",
    [PetAccIDs.ACC_SHINOBI] = "ACC_SHINOBI.act",
    [PetAccIDs.ACC_WHISPER] = "ACC_WHISPER.act",
    [PetAccIDs.ACC_GOBLIN_LEADER] = "ACC_GOBLIN_LEADER.act",
    [PetAccIDs.ACC_WICKED_NYMPH] = "ACC_WICKED_NYMPH.act",
    [PetAccIDs.ACC_MIYABI_NINGYO] = "ACC_MIYABI_NINGYO.act",
    [PetAccIDs.ACC_DULLAHAN] = "ACC_DULLAHAN.act",
    [PetAccIDs.ACC_MEDUSA] = "ACC_MEDUSA.act",
    [PetAccIDs.ACC_STONE_SHOOTER] = "ACC_STONE_SHOOTER.act",
    [PetAccIDs.ACC_INCUBUS] = "ACC_INCUBUS.act",
    [PetAccIDs.ACC_GOLEM] = "ACC_GOLEM.act",
    [PetAccIDs.ACC_NIGHTMARE_TERROR] = "ACC_NIGHTMARE_TERROR.act",
    [PetAccIDs.ACC_SUCCUBUS] = "ACC_SUCCUBUS.act",
    [PetAccIDs.ACC_IMP] = "ACC_IMP.act"
    }
    

  7. Nice Release!

    I created a patch for people who wants to patch it and it has a mirror too :)

    Updated:

    mvp_tomb_rathena15907_v4.patch

    Mirror: http://pyro-ro.com/codes/mvp_tomb_rathena15907_v4.patch

    Archives:

    mvp_tomb_rathena15869_v3.patch

    mvp_tomb_rathena15857_v2_fixed.patch

    mvp_tomb_rathena15836.patch

    Index: trunk/conf/battle/monster.conf
    ===================================================================
    --- trunk/conf/battle/monster.conf    (revision 15907)
    +++ trunk/conf/battle/monster.conf    (working copy)
    @@ -197,3 +197,6 @@
    
    // Should MVP slaves retain their target when summoned back to their master?
    mob_slave_keep_target: yes
    +
    +// Show Tomb when MVP got killed?
    +show_mvp_tomb: yes
    \ No newline at end of file
    Index: trunk/src/map/battle.c
    ===================================================================
    --- trunk/src/map/battle.c    (revision 15907)
    +++ trunk/src/map/battle.c    (working copy)
    @@ -5209,6 +5209,12 @@
        { "max_baby_third_parameter",		   &battle_config.max_baby_third_parameter,	    108,    10,	 10000,		  },
        { "atcommand_max_stat_bypass",		  &battle_config.atcommand_max_stat_bypass,	   0,	  0,	  100,		    },		  
        { "skill_amotion_leniency",			 &battle_config.skill_amotion_leniency,		  90,	 0,	  100                },
    +    /**
    +     * Tomb System [malufett]
    +
    +     **/
    +    { "show_mvp_tomb",                        &battle_config.show_mvp_tomb,                    1,        0,        1                },
    +
    };
    
    
    Index: trunk/src/map/battle.h
    ===================================================================
    --- trunk/src/map/battle.h    (revision 15907)
    +++ trunk/src/map/battle.h    (working copy)
    @@ -472,6 +472,11 @@
        int max_third_parameter;
        int max_baby_third_parameter;
        int atcommand_max_stat_bypass;
    +    
    +    // Tomb System [malufett]
    +    int show_mvp_tomb;
    +
    +
    } battle_config;
    
    void do_init_battle(void);
    Index: trunk/src/map/mob.c
    ===================================================================
    --- trunk/src/map/mob.c    (revision 15907)
    +++ trunk/src/map/mob.c    (working copy)
    @@ -829,6 +829,13 @@
        if( md->spawn_timer != INVALID_TIMER )
            delete_timer(md->spawn_timer, mob_delayspawn);
        md->spawn_timer = add_timer(gettick()+spawntime, mob_delayspawn, md->bl.id, 0);
    +    
    +    if( md->status.mode&MD_BOSS &&
    +        battle_config.show_mvp_tomb){//Tomb System [malufett]
    +
    +        struct map_session_data *sd =  map_id2sd(md->target_id);
    +        md->target_id = npc_mvp_tomb(md, sd );
    +    }
        return 0;
    }
    
    @@ -846,6 +853,11 @@
        unsigned int tick = gettick();
        int c =0;
    
    +    if(md->status.mode&MD_BOSS &&
    +        battle_config.show_mvp_tomb){ //Tomb System [malufett]
    +        npc_mvp_tomb(md, NULL);
    +    }
    +    
        md->last_thinktime = tick;
        if (md->bl.prev != NULL)
            unit_remove_map(&md->bl,CLR_RESPAWN);
    @@ -2505,6 +2517,9 @@
        if(!md->spawn) //Tell status_damage to remove it from memory.
            return 5; // Note: Actually, it's 4. Oh well...
    
    +    if( mvp_sd && md->status.mode&MD_BOSS && battle_config.show_mvp_tomb)//Tomb System [malufett]
    +        md->target_id = mvp_sd->bl.id;
    +        
        if( !rebirth )
            mob_setdelayspawn(md); //Set respawning.
        return 3; //Remove from map.
    Index: trunk/src/map/npc.c
    ===================================================================
    --- trunk/src/map/npc.c    (revision 15907)
    +++ trunk/src/map/npc.c    (working copy)
    @@ -3549,6 +3549,58 @@
                npc_debug_warps_sub(map[m].npc[i]);
    }
    
    +/**
    + * MVP Tomb System. [malufett]
    + **/
    +
    +int npc_mvp_tomb(struct mob_data *md, struct map_session_data *sd)
    +{
    +    char w1[256], w2[256], w3[256];
    +    struct npc_data *nd = NULL;
    +
    +    nullpo_ret(md);
    +
    +    if(sd)
    +    {
    +        struct mob_data *boss_md = map_getmob_boss(sd->bl.m); // Search for Boss on this Map and ignore summoned Boss
    +        if( boss_md != NULL &&
    +        boss_md->bl.prev != NULL &&
    +        md->bl.id == boss_md->bl.id )
    +        {
    +            int x = boss_md->bl.x, y = boss_md->bl.y;
    +            const struct TimerData * timer_data = get_timer(md->spawn_timer);
    +            if(md->spawn_timer == INVALID_TIMER)
    +                return 1;
    +
    +            sprintf(w2, "Tomb#%d|%d", boss_md->class_, (DIFF_TICK(timer_data->tick, gettick())  + 60));
    +            sprintf(w1, "%s, %d, %d, 1", map[boss_md->bl.m].name, x , y);
    +            sprintf(w3, "%s@%s", sd->status.name, map[boss_md->bl.m].name);
    +            sprintf(w2, "%s::%s", w2, w3);
    +            sprintf(w3, "%s::OnMyMobDead", w3);
    +            
    +            safestrncpy(md->npc_event, w3, sizeof(md->npc_event));
    +            npc_parse_duplicate(w1,"duplicate(tomb_stone)",w2,"565", "-", "-", "MVP_TOMB"+boss_md->class_);
    +
    +            npc_event(sd,md->npc_event,0);
    +            safestrncpy(md->npc_event, "", sizeof(md->npc_event));
    +            return sd->bl.id;
    +        }
    +    } else {
    +        
    +        struct map_session_data *msd =  map_id2sd(md->target_id);
    +        
    +        if(msd != NULL) {
    +            sprintf(w1, "%s@%s", msd->status.name, map[md->bl.m].name);
    +            nd = npc_name2id(w1);
    +            if (nd  != NULL) {
    +                npc_unload(nd);
    +                md->target_id = 0;
    +           }
    +        }
    +    }
    +    return 0;
    +}
    +
    /*==========================================
     * npc initialization
     *------------------------------------------*/
    Index: trunk/src/map/npc.h
    ===================================================================
    --- trunk/src/map/npc.h    (revision 15907)
    +++ trunk/src/map/npc.h    (working copy)
    @@ -154,6 +154,7 @@
    
    int npc_duplicate4instance(struct npc_data *snd, int m);
    int npc_cashshop_buy(struct map_session_data *sd, int nameid, int amount, int points);
    +int npc_mvp_tomb(struct mob_data *md, struct map_session_data *sd);
    
    extern struct npc_data* fake_nd;
    
    
    

    Fixes:

    v4

    * Patched with malufett's 3.0 release

    * Clean his crappy Coding in the patch above and diff patch

    v3

    * Clean v2_fixed file

    v2_Fixed

    * Fixed Compiling Issue after patching the Code due to missing and crappy code by Malufett

    - Special Thanks to Lighta for the script.c to script.h (decision)

    * Updated Malufett's code from "SCRIPT_MAX_ARRAYSIZE"

    • Upvote 1
  8. Hey Guys!

    Last 2 Days, i Released my Repository full of RagexeRE Clients in my Repository. This will make easier for People to find where the Latest kRO RagexeRE Clients can be Find.

    Temporary Repository: http://xp-dev.com/svn/kei-clientside/

    Repository: Not Available

    Log/Timeline: Not Available

    Also, I added Some old RagexeRE Clients from 2010 and Sakexe Client with Diffs. The Old RagexeRE Clients that required Diffs like 2011 08 17b and older will be added later.. since 2011 08 17b+ can be diff using shin's weediffgen.

    Also, Thanks to,

    DiffTeam = Old Archives of 2010

    Waeyan = Permission to get the old Archives and for some New Clients

    Wildcard = Tip me for Missing 2011 and 2012 Clients

    Ghost = For the Repo and other Main stuffs

    and to the Respective Owners of the Software i use..

    • Upvote 2
×
×
  • Create New...