dungpt8782
Members-
Content Count
63 -
Joined
-
Last visited
About dungpt8782
-
Rank
Advanced Member
- Birthday 07/08/1982
Profile Information
-
Gender
Not Telling
-
Emulator
Hercules
Recent Profile Visitors
2584 profile views
-
How can i do it pls?
-
I think this script check status when wear this item only I tested with this item weared before enchant poison, it dont have effect when i use enchant poison
-
I want to make the item with this effect: If Enchant Poison level 10 damage increased 50% when under Enchant Poison status can you help me to make item script like this? i'm using if (getskilllv(AS_ENCHANTPOISON) == 10 && getstatus(SC_ENCHANTPOISON) ) { bonus2 bAddRace,RC_All,50; } but it will inscrease all element damage after enchant poison.
-
Update server source to lastest Hercules!!!
dungpt8782 replied to dungpt8782's question in Source Support
Someone can help me pls! -
I'm using server source since 12/2015. Now i want to update my server to lastest hercules. If u can, pls inbox me your price!! THank u.
-
[ Error ] : timer_add_interval: invalid interval
dungpt8782 replied to dungpt8782's question in General Server Support
I didnt change anything in player.conf -
[ Error ] : timer_add_interval: invalid interval
dungpt8782 replied to dungpt8782's question in General Server Support
Anybody help me pls!!! -
[ Error ] : timer_add_interval: invalid interval
dungpt8782 posted a question in General Server Support
[ Error ] : timer_add_interval: invalid interval (tick=531104218 006448AC[party_send_xy_timer] id=0 data=0 diff_tick=0) [ Error ] : timer_add_interval: invalid interval (tick=531118882 0063F66D[bg_send_xy_timer] id=0 data=0 diff_tick=0) i just updated lastest Hercules (my old source from 2015). i updated SQL. But still have this error, when login ingame, my char can't move, HP, SP =0 Pls help me how to fix this error! -
// duplicatenpc("NpcName", "DuplicateName", "DupHiddenName", "map", x, y, dir{, sprite{, xs, ys}}); BUILDIN(duplicatenpc) { const char *npc_name = script_getstr(st, 2); const char *dup_name = script_getstr(st, 3); const char *dup_hidden_name = script_getstr(st, 4); const char *tmap = script_getstr(st, 5); int tx = script_getnum(st, 6); int ty = script_getnum(st, 7); int tdir = script_getnum(st, 8); int tclass_, txs = -1, tys = -1, sourceid, type, tmapid, i; struct npc_data *nd_source, *nd_target; char targetname[24] = ""; if(script_hasdata(st, 10)) txs = (script_getnum(st, 10) < -1) ? -1 : script_getnum(st, 10); if(script_hasdata(st, 11)) tys = (script_getnum(st, 11) < -1) ? -1 : script_getnum(st, 10); if(txs == -1 && tys != -1) txs = 0; if(txs != - 1 && tys == -1) tys = 0; if(strlen(dup_name) + strlen(dup_hidden_name) > NAME_LENGTH) { ShowError("duplicatenpc: Name#HiddenName is to long (max %d chars). (%s)\n",NAME_LENGTH, npc_name); script_pushint(st, 0); return 0; } nd_source = npc->name2id(npc_name); if(script_hasdata(st, 9)) tclass_ = (script_getnum(st, 9) < -1) ? -1 : script_getnum(st, 9); else tclass_ = nd_source->class_; if( nd_source == NULL) { ShowError("duplicatenpc: original npc not found for duplicate. (%s)\n", npc_name); script_pushint(st, 0); return 0; } sourceid = nd_source->bl.id; type = nd_source->subtype; tmapid = map->mapname2mapid(tmap); if(tmapid < 0) { ShowError("duplicatenpc: target map not found. (%s)\n", tmap); script_pushint(st, 0); return 0; } // nd_target = npc->create_npc(tmapid, tx, ty); strcat(targetname, dup_name); strncat(targetname, "#", 1); strncat(targetname, dup_hidden_name, strlen(dup_hidden_name)); safestrncpy(nd_target->name, targetname , sizeof(nd_target->name)); safestrncpy(nd_target->exname, targetname, sizeof(nd_target->exname)); nd_target->class_ = tclass_; nd_target->speed = 200; nd_target->src_id = sourceid; nd_target->bl.type = BL_NPC; nd_target->subtype = (enum npc_subtype)type; switch(type) { case SCRIPT: nd_target->u.scr.xs = txs; nd_target->u.scr.ys = tys; nd_target->u.scr.script = nd_source->u.scr.script; nd_target->u.scr.label_list = nd_source->u.scr.label_list; nd_target->u.scr.label_list_num = nd_source->u.scr.label_list_num; nd_target->u.scr.shop = nd_source->u.scr.shop; nd_target->u.scr.trader = nd_source->u.scr.trader; break; case SHOP: case CASHSHOP: nd_target->u.shop.shop_item = nd_source->u.shop.shop_item; nd_target->u.shop.count = nd_source->u.shop.count; break; case WARP: if( !battle->bc->warp_point_debug ) nd_target->class_ = WARP_CLASS; else nd_target->class_ = WARP_DEBUG_CLASS; nd_target->u.warp.xs = txs; nd_target->u.warp.ys = tys; nd_target->u.warp.mapindex = nd_source->u.warp.mapindex; nd_target->u.warp.x = nd_source->u.warp.x; nd_target->u.warp.y = nd_source->u.warp.y; break; } map->addnpc(tmapid, nd_target); //status->change_init(&nd_target->bl); //unit->dataset(&nd_target->bl); nd_target->ud = &npc->base_ud; nd_target->dir = tdir; npc->setcells(nd_target); map->addblock(&nd_target->bl); if(tclass_ >= 0) { status->set_viewdata(&nd_target->bl, nd_target->class_); if( map->list[tmapid].users ) clif->spawn(&nd_target->bl); } strdb_put(npc->name_db, nd_target->exname, nd_target); if(type == SCRIPT) { for (i = 0; i < nd_target->u.scr.label_list_num; i++) { if (npc->event_export(nd_target, i)) { ShowWarning("duplicatenpc: duplicate event %s::%s.\n", nd_target->exname, nd_target->u.scr.label_list[i].name); } npc->timerevent_export(nd_target, i); } nd_target->u.scr.timerid = INVALID_TIMER; } script_pushint(st, 1); return true; }
-
Dear Kubix My error:
-
Hi, i want to make random WOE_se or WOE_fe in my server. Something like : radom(1,2), if 1 -> open WOE_fe; if 2 -> open WOE_se. THank you so much!!!!
-
//===== Hercules Script ====================================== //= @callmonster <monster_id> //= For: VNRO //===== By: ================================================== //= ndh - script callmonster -1,{ OnInit: bindatcmd "callmonster", strnpcinfo(0) + "::OnCallMonster"; .callmonsterDuration = 60; // phut end; OnCallMonster: if(Hp == 0) { dispbottom "Can't Call if died."; end; } if(callmonsterhaveMonster > 0) { dispbottom "Only call 1 per times."; end; } // Proccess argument .@argument$ = ""; for (.@i = 0; .@i < .@atcmd_numparameters; ++.@i) { .@argument$ += (.@i > 0 ? " " : "") + .@atcmd_parameters$[.@i]; } .@monsterId = atoi(.@argument$); // Find card ID .@cardId = -1; if(getmobdrops(.@monsterId)) { .@count = $@MobDrop_count; copyarray .@item[0],$@MobDrop_item[0],.@count; for (.@i = 0; .@i < .@count; ++.@i) { //item type 6 la card, getiteminfo(id,2) -> get item type if(getiteminfo(.@item[.@i],2) == 6) .@cardId = .@item[.@i]; } if(.@cardId == -1) { dispbottom "Not available in db"; end; } } else { dispbottom "Can't find monster"; end; } // Find card ID in inventory if(countitem(.@cardId) > 0) { delitem .@cardId, 1; atcommand "@summon " + .@monsterId + " " + .callmonsterDuration; callmonsterhaveMonster = 1; addtimer (.callmonsterDuration * 60 * 1000), strnpcinfo(3)+"::OnMonsterGone"; dispbottom "Called monster in 60 mins!"; } else { dispbottom "Can't call monster, pls check " + getitemname(.@cardId) + " in your inventory, Need 1 card to call"; end; } end; OnMonsterGone: callmonsterhaveMonster = 0; end; OnPCDieEvent: callmonsterhaveMonster = 0; end; OnPCLogoutEvent: callmonsterhaveMonster = 0; end; OnWhisperGlobal: set getd(@whispervar0$), atoi(@whispervar1$); // debug function end; } THanks you!!!!
-
Need help to make script disbale skill "Call homunculus" in event map!!!
dungpt8782 replied to dungpt8782's question in Script Requests
Thank Samuel, i used Legend's plan and it worked fine. -
Pls help me for Lucky Roulette: - Where is SQL? - I lose my prize if my client crash, or disconect. - I lose all my silver, gold points if i restart my server. - How can i check logs? Thank u so much!!!!