Jump to content

malufett

Retired Staff
  • Content Count

    657
  • Joined

  • Last visited

  • Days Won

    29

Everything posted by malufett

  1. its just an extension of your equipment..like having 2 armor and having benefits on both...
  2. Dear Hercules, please wait for me it's nearly coming...I promise..:D

    1. Relzz

      Relzz

      You can do it:D

  3. for easy trick map_foreachinrange(skill->trap_splash,&src->bl, skill->get_splash(sg->skill_id, sg->skill_lv), sg->bl_flag, &src->bl,tick);if (sg->unit_id != UNT_FIREPILLAR_ACTIVE) clif->changetraplook(&src->bl, sg->unit_id==UNT_LANDMINE?UNT_FIREPILLAR_ACTIVE:UNT_USED_TRAPS);sg->limit=DIFF_TICK(tick,sg->tick)+1500 + (sg->unit_id== UNT_CLUSTERBOMB || sg->unit_id== UNT_ICEBOUNDTRAP?1000:0);// Cluster Bomb/Icebound has 1s to disappear once activated.if( sg->unit_id != UNT_CLAYMORETRAP ) sg->unit_id = UNT_USED_TRAPS; //Changed ID so it does not invoke a for each in area again. break; then change your skill_cast_db.txt so the total hit will be (duration1 left/1000)
  4. iRO has costumized there cash items...it depends on your grf..for me to have that kind of icon I'll used iRo's grf or the bmp files(item) inside the grf..
  5. all traps can be blown using arrow shower except ankle snare and electric shocker.. and define in skill.c case BL_SKILL: su = (struct skill_unit *)target; if( su && su->group && su->group->unit_id == UNT_ANKLESNARE ) return 0; // ankle snare cannot be knocked back break;
  6. if it has a good purpose +1 but if there is nothing then I say used the athena way...
  7. yep..by means of hexing the client...
  8. I agree I tried to sniff if the client sent something in the server when doing a search but it doesn't so it means the search is a client function only...
  9. --- Hercules/src/map/clif.c Sun Apr 21 23:29:05 2013+++ Hercules/src/map/clif.c Tue Apr 16 22:54:32 2013@@ -13060,11 +13016,8 @@{ struct map_session_data *f_sd; int i;+ char *pname;+ pname = strrchr((char*)RFIFOP(fd,2), ' ');+ memcpy(pname, &pname[1], strlen(pname));+ f_sd = map_nick2sd(pname);- f_sd = map_nick2sd((char*)RFIFOP(fd,2)); // ensure that the request player's friend list is not full ARR_FIND(0, MAX_FRIENDS, i, sd->status.friends[i].char_id == 0); Thanks,,,..
  10. here you have it..so sizzling hot.. --- src/map/clif.c Tue Apr 16 22:33:58 2013+++ src/map/clif.c Tue Apr 16 22:54:32 2013@@ -8361,7 +8325,6 @@ struct map_session_data *ssd = (struct map_session_data *)bl; struct party_data *p = NULL; struct guild *g = NULL;+ char name[NAME_LENGTH]; //Requesting your own "shadow" name. [Skotlex] if (ssd->fd == fd && ssd->disguise)@@ -8373,8 +8336,7 @@ WBUFB(buf,30) = WBUFB(buf,54) = WBUFB(buf,78) = 0; break; }+ sprintf(name, "[%d/%d] %s", ssd->status.base_level, ssd->status.job_level, ssd->status.name);+ memcpy(WBUFP(buf,6), name, NAME_LENGTH);- memcpy(WBUFP(buf,6), ssd->status.name, NAME_LENGTH); if( ssd->status.party_id ) { p = party_search(ssd->status.party_id);@@ -8488,7 +8450,6 @@ int cmd = 0x195, ps = -1; struct party_data *p = NULL; struct guild *g = NULL;+ char name[NAME_LENGTH]; nullpo_retv(ssd);@@ -8498,8 +8459,7 @@ WBUFW(buf,0) = cmd; WBUFL(buf,2) = ssd->bl.id;+ sprintf(name, "[%d/%d] %s", ssd->status.base_level, ssd->status.job_level, ssd->status.name);+ memcpy(WBUFP(buf,6), name, NAME_LENGTH);- memcpy(WBUFP(buf,6), ssd->status.name, NAME_LENGTH); if (!battle_config.display_party_name) { if (ssd->status.party_id > 0 && ssd->status.guild_id > 0 && (g = ssd->guild) != NULL)@@ -11694,8 +11654,6 @@{ struct map_session_data *t_sd; char *name = (char*)RFIFOP(fd,2);+ char *pname;+ name[NAME_LENGTH-1] = '0'; if(map[sd->bl.m].flag.partylock) { // Party locked.@@ -11703,9 +11661,7 @@ return; }+ pname=strrchr(name,' ');+ memcpy(pname, &pname[1], strlen(pname));+ t_sd = map_nick2sd(pname);- t_sd = map_nick2sd(name); if(t_sd && t_sd->state.noask) { // @noask [LuzZza] clif->noask_sub(sd, t_sd, 1);
  11. your issue is not existing in Hercules..maybe you have custom mods that causes your problem...
  12. OIC...ok...wait for the fix...
  13. @Judas can you try this packet(0x01ad,4,clif->pSelectArrow,2);
  14. malufett

    Yommy

    Hi to all...I'm malufett...
  15. well..I forgot that since most of players don't name their characters more than 15 characters...hahaha..
  16. Sorry but "Unable to Reproduce"... did you patch properly the diff?
  17. here you have it... Index: clif.c===================================================================--- clif.c (revision 11504)+++ clif.c (working copy)@@ -8325,6 +8332,7 @@ struct map_session_data *ssd = (struct map_session_data *)bl; struct party_data *p = NULL; struct guild *g = NULL;+ char name[NAME_LENGTH]; //Requesting your own "shadow" name. [Skotlex] if (ssd->fd == fd && ssd->disguise)@@ -8336,7 +8344,9 @@ WBUFB(buf,30) = WBUFB(buf,54) = WBUFB(buf,78) = 0; break; }- memcpy(WBUFP(buf,6), ssd->status.name, NAME_LENGTH);+ //memcpy(WBUFP(buf,6), ssd->status.name, NAME_LENGTH);+ sprintf(name, "[%d/%d] %s", ssd->status.base_level, ssd->status.job_level,ssd->status.name);+ memcpy(WBUFP(buf,6), name, NAME_LENGTH); if( ssd->status.party_id ) { p = party_search(ssd->status.party_id);@@ -8450,6 +8460,7 @@ int cmd = 0x195, ps = -1; struct party_data *p = NULL; struct guild *g = NULL;+ char name[NAME_LENGTH]; nullpo_retv(ssd);@@ -8459,7 +8470,9 @@ WBUFW(buf,0) = cmd; WBUFL(buf,2) = ssd->bl.id;- memcpy(WBUFP(buf,6), ssd->status.name, NAME_LENGTH);+ sprintf(name, "[%d/%d] %s", ssd->status.base_level, ssd->status.job_level,ssd->status.name);+ memcpy(WBUFP(buf,6), name, NAME_LENGTH);+ //memcpy(WBUFP(buf,6), ssd->status.name, NAME_LENGTH); if (!battle_config.display_party_name) { if (ssd->status.party_id > 0 && ssd->status.guild_id > 0 && (g = ssd->guild) != NULL)
  18. actually its incomplete..cause I'm not still at home to test its just a draft..
  19. try this @clif.c case BL_PC: { struct map_session_data *ssd = (struct map_session_data *)bl; struct party_data *p = NULL; struct guild *g = NULL; +char name[NAME_LENGTH]; //Requesting your own "shadow" name. [Skotlex] if (ssd->fd == fd && ssd->disguise) WBUFL(buf,2) = -bl->id; if( ssd->fakename[0] ) { WBUFW(buf, 0) = cmd = 0x195; memcpy(WBUFP(buf,6), ssd->fakename, NAME_LENGTH); WBUFB(buf,30) = WBUFB(buf,54) = WBUFB(buf,78) = 0; break; } +sprintf(name, "[%d/%d] %s", ssd->status.base_level, ssd->status.job_level,ssd->status.name); +memcpy(WBUFP(buf,6), name, NAME_LENGTH); -memcpy(WBUFP(buf,6), ssd->status.name, NAME_LENGTH);
  20. probably problem skill tree db in both server and client...
  21. hmm..not add code it.. BTW my implementation is not perfect the character won't show..XD
  22. implement 0x82d // packet 0x82dstruct PACKET_HC_ACCEPT2 { /* this+0x0 */ short PacketType /* this+0x2 */ unsigned short PacketLength /* this+0x4 */ unsigned char NormalSlotNum /* this+0x5 */ unsigned char PremiumSlotNum /* this+0x6 */ unsigned char BillingSlotNum /* this+0x7 */ unsigned char ProducibleSlotNum /* this+0x8 */ unsigned char ValidSlotNum /* this+0x9 */ char m_extension[20] /* this+0x1d */ struct CHARACTER_INFO_NEO_UNION charInfo[...] { // Size 116 /* this+0x0 */ unsigned long GID /* this+0x4 */ int exp /* this+0x8 */ int money /* this+0xc */ int jobexp /* this+0x10 */ int joblevel /* this+0x14 */ int bodystate /* this+0x18 */ int healthstate /* this+0x1c */ int effectstate /* this+0x20 */ int virtue /* this+0x24 */ int honor /* this+0x28 */ short jobpoint /* this+0x2a */ int hp /* this+0x2e */ int maxhp /* this+0x32 */ short sp /* this+0x34 */ short maxsp /* this+0x36 */ short speed /* this+0x38 */ short job /* this+0x3a */ short head /* this+0x3c */ short weapon /* this+0x3e */ short level /* this+0x40 */ short sppoint /* this+0x42 */ short accessory /* this+0x44 */ short shield /* this+0x46 */ short accessory2 /* this+0x48 */ short accessory3 /* this+0x4a */ short headpalette /* this+0x4c */ short bodypalette /* this+0x4e */ unsigned char name[24] /* this+0x66 */ unsigned char Str /* this+0x67 */ unsigned char Agi /* this+0x68 */ unsigned char Vit /* this+0x69 */ unsigned char Int /* this+0x6a */ unsigned char Dex /* this+0x6b */ unsigned char Luk /* this+0x6c */ unsigned char CharNum /* this+0x6d */ unsigned char haircolor /* this+0x6e */ short bIsChangedCharName /* this+0x84 */ int Robe }} but I'm not sure if kRO Ragexe accept it since this packet is used by iRO's Ragexe EDIT: yup it accepted and now it works perfectly I can create new chars now...
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.