Jump to content

Dastgir

Script Developers
  • Content Count

    3803
  • Joined

  • Last visited

  • Days Won

    248

Reputation Activity

  1. Upvote
    Dastgir got a reaction from Like it~* in How to convert to a plugin?   
    Seems interesting.
    I would be interested in doing some of these, though not promising if I would do it.
    1) May be possible
    2) I won't be touching it, it seems possible only with workarounds.
    3) Possible
    4) Possible
    5) Wont be touching it, possible with workaround/ function overload.
    6) Possible.
    7) I Insist keeping that part as source.
     
    But I insist try and learn and do it with Trial and error method
  2. Upvote
    Dastgir got a reaction from Like it~* in Auraset   
    File Name: Auraset
    File Submitter: Dastgir
    File Submitted: 24 Mar 2014
    File Category: Plugins
     
    For Building Plugins:
    Windows: http://herc.ws/wiki/Building_HPM_Plugin_for_MSVC
    Linux: http://herc.ws/wiki/Building_HPM_Plugin_for_gcc
     
    Usage:
    Atcommand:
    (usage: @aura <aura1> {<aura2> <aura3>})
    (aura1,aura2 are optional)
     
    ScriptCommand:
    (usage: aura aura1{,aura2,aura3}
    aura1 is compulsory, while aura2,aura3 are optional.
     
    aura1,aura2,aura3 are AuraID's
     
    NOTE: 1) This effects are permanent(unless the effect is not, which is clientside) and if you want to remove it, either do "@aura 0 0 0" or by Script (aura(0,0,0))
    2) If you type aura(586,-1,240), the 2nd aura will remain same, while first and third aura will change.
     
    You can check/set User's AuraID's by following variables
    USERAURA - Aura1
    USERAURA1 - Aura2
    USERAURA2 - Aura3
     
    You can also change aura by changing these variables.
     
    Some Useful aura Combinations:
    { 586, -1, -1 },{ 586, 362, -1 },{ 586, 362, 240 },{ 418, -1, -1 },{ 486, -1, -1 },{ 485, -1, -1 },{ 239, -1, -1 },{ 240, -1, -1 },{ 241, -1, -1 },{ 620, -1, -1 },{ 202, -1, -1 },{ 362, -1, -1 },{ 678, -1, -1 },{ 679, -1, -1 },{ 680, -1, -1 },{ 239, 418, -1 },{ 239, 486, -1 },{ 239, 485, -1 },{ 240, 418, -1 },{ 240, 486, -1 },{ 240, 485, -1 },{ 241, 418, -1 },{ 241, 486, -1 },{ 241, 485, -1 },{ 620, 418, -1 },{ 620, 486, -1 },{ 620, 485, -1 },{ 239, 418, 202 },{ 239, 486, 202 },{ 239, 485, 202 },{ 240, 418, 202 },{ 240, 486, 202 },{ 240, 485, 202 },{ 241, 418, 202 },{ 241, 486, 202 },{ 241, 485, 202 },{ 620, 418, 202 },{ 620, 486, 202 },{ 620, 485, 202 },{ 239, 418, 362 },{ 239, 486, 362 },{ 239, 485, 362 },{ 240, 418, 362 },{ 240, 486, 362 },{ 240, 485, 362 },{ 241, 418, 362 },{ 241, 486, 362 },{ 241, 485, 362 },{ 620, 418, 362 },{ 620, 486, 362 },{ 620, 485, 362 },{ 239, 418, 678 },{ 239, 486, 678 },{ 239, 485, 678 },{ 240, 418, 678 },{ 240, 486, 678 },{ 240, 485, 678 },{ 241, 418, 678 },{ 241, 486, 678 },{ 241, 485, 678 },{ 620, 418, 678 },{ 620, 486, 678 },{ 620, 485, 678 },{ 680, 679, 678 },
    I guess no further explanation is needed.
     
    Click here to download this file
  3. Upvote
    Dastgir got a reaction from happles in Questions about FLUX CP (installing)   
    how can i add new user in phpmyadmin today if theres no privilege If there's no privilege, you cannot add new user.
     
    how to allowed ip because im having error like the picture below  The Image you attached shows access denied, that means you have put wrong password.
    Allowing IP Query:
     
     
    GRANT ALL ON db.* TO user@'IP' IDENTIFIED BY 'password';  
     
     Is the phpmyadmin that i need to configure is on the webhost or in the vps? Its in the WebHost(whereas you can install it on VPS too accompanied with some web-server)
     
     
     
     
    if in the vps how to access it? should i install phpmyadmin even though i already install mysql essential etc and tools. PhpMyAdmin is GUI for MySQL. you can still use mysql from "mysql -u user -pPASSWORD" from putty(if linux vps)
     
     
     please can i have anyone to talk to about this im stuck for 3 days You can ask @Community, and we will be glad to help you.
  4. Like
    Dastgir got a reaction from simplexjay2 in Plugin Collections   
    Hello Community,
     I am feeling like, there's many plugin on forum, but not been actively used, due to out-of-date plugin
     
    I have updated Shikazu's Plugin first(as it was requested on the thread from 25th April), maybe Shikazu busy on his rl.
    Also I have included My Plugins there.
     
    I would like to add more plugins there(which are not updated on hercules forum <- please suggest if you find some outdated plugin and want me to update it )
     
    List of Plugins and Owners:
    https://github.com/dastgir/HPM-Plugins/blob/master/README.md  
    Repository: https://github.com/dastgir/HPM-Plugins
     
    Thanks.
  5. Upvote
    Dastgir got a reaction from Sephus in [Plugin] Map-Char Communication   
    Now, its time to show examples of how map-char communication can be made,
    this is essential as there's no example anywhere about this, so here it is...
     
     
    https://raw.githubusercontent.com/dastgir/HPM-Plugins/master/src/plugins/packet_sample.c
    Above is the example of Communication between Map-Char Server

    Here's Description of what All Functions does:
    map_sendtochar: Sends Packet to the char-server packet_test(Command): Sets common_value and calls map_sendtochar char_receive_packet: CharServer Function to receive packets(see declaration in plugin_init)


    ScreenShot:


  6. Like
    Dastgir got a reaction from AnnieRuru in [GUIDE] Adding New Items without itemInfo.lub   
    Hello Community,
     
    Once Again, I was doing something and found something unusual, the kRO have other methods of loading Items too....
    They also load some idnum tables but with different names
     
    Unidentified items goes to
    eventnum2itemdisplaynametable.txt , eventnum2itemdesctable.txt , eventnum2itemresnametable.txt  
    Identified items:
     
    eventidnum2itemdisplaynametable.txt , eventidnum2itemdesctable.txt , eventidnum2itemresnametable.txt  
    (Just add event prefix to all file names )
     
    Points to Remember:
    This file is loaded before itemInfo, so if you have same item in itemInfo, resname and displayname will be overwritten with one on itemInfo, while both Description will appear one below one. It Works, and I have tested. These Files go inside GRF(data folder) as idnum tables used to..(before) Works on All clients with itemInfo.lub support  
    How it Looks When Overwritten:


  7. Upvote
    Dastgir got a reaction from Shatowolf in @joinbg and Tribe system / Clan System/Faction System/RACE System   
    This is .dll plugin.
     
    You have to do one edit after installing this plugin,
     
    go to pc.h and find
     
    struct map_session_data {  below it add
     
    int faction; //FactionMOD  Recompile, you are done.
     
    Plugin Include 2 script commands:
     
    setfaction(FactionID);getfaction();  
    FactionSystem.zip
  8. Upvote
    Dastgir got a reaction from Tristan in Warp Hit Delay   
    File Name: Warp Hit Delay
    File Submitter: Dastgir
    File Submitted: 12 Jan 2015
    File Category: Plugins
     
    It is warp delay plugin
    Once you get a hit(not a miss) , you will be attached by a timer of x seconds, only after that you will be able to warp(be it be any wings,warp command,go command, npc or skill)
     
    You can have a battle_config on any of the files in conf/battle/ with
    warp_delay_mob: Seconds*1000warp_delay_pet: Seconds*1000warp_delay_homun: Seconds*1000warp_delay_merc: Seconds*1000warp_delay: Seconds*1000 //For Playerswarp_delay_others: Seconds*1000 //(For All Other Hits except mob/pet/homunc/merc)
    Building Plugin for Linux: http://herc.ws/wiki/Building_HPM_Plugin_for_gcc
    Building Plugin for Windows: http://herc.ws/wiki/Building_HPM_Plugin_for_MSVC
     
    P.S: You need HPMHooking Enabled.
     
    Click here to download this file
  9. Upvote
    Dastgir got a reaction from Mirage in Dastgir's Services   
    Hello Hercules Community,

    I am offering my Services to you @ some expense of money.

    Works for Emulator: Hercules/rAthena/Others(if any)
    Services:
    Scripting. (Min Price:5$ ) Source Modification(/Addition).(Min Price: 5$) Converting to/Creating a Plugin[Hercules Specific].(Min Price: 5$) Migrating Your Server. (Min Price: 10$) Adding Custom Items/Maps/Mobs. (Min Price: 5$) Creating/Adding New Skills. (Min Price: 10$) Changing of Emulator (Min Price: 10$) ClientSide Things. (Min Price: 5$) Fixing Errors. (Min Price: 5$) Script Review. Consulting And Anything else, that you want, just drop me a PM
    Maximum Price: Depends on Complexity of the Work
    What Else:
    Free Support for Service bought from me.

    Contact Info:
    Post Here Via PM Payment Methods:
    PayPal Only PM me if you want any other payment method, and I might check If I can have it.

    Status: AVAILABLE
  10. Like
    Dastgir got a reaction from fiction in dDelays(Anti NoDelays) - Releasing this weekend   
    Hello Community,

    What is dDelays?

    You should have heard about Delays hack by editing out grf or whatsoever method..
    This will make the delays hard-coded and will not be able to use those hacks.

     
    Site https://ddelays.dastgir.tech/ Price Introductory Offer:
    Weekly: 1.25$
    Monthly: 5$
    Quarterly: 18$
    Beta Date 27th October 2019 (Sunday) Payment Method PayPal / PayTM / Others(Message in discord) Discord
    For Any kind of support/question/payment related query: https://discord.gg/sb4mkdH Emulators Hercules (Fully Supported). Other Emulator Support coming by 3rd November 2019 (Sunday)  
  11. Upvote
    Dastgir reacted to Anisotropic Defixation in Warp Hit Delay   
    This would be more useful if it triggered when the player does damage, not when the player gets damaged, or maybe both options could be present.
  12. Upvote
    Dastgir got a reaction from Legend in i need little help of scripting a freebies npc   
    new_1-1,51,67,3 script ShadowRO Gifter 10039,{
    mes "[ShadowRO Gift]";
    mes "Hi, Welcome to Shadow Ragnarok Online !";
    if (#gotgift) {
    mes "You have already claimed your gift.";
    close;
    }
    mes "Do you want your gift ?";
    next;
    switch(select("Sure !", "Hmmm..")) {
    case 1:
    mes "[ShadowRO Gift]";
    mes "Have Fun,";
    mes "Remember, the job master will meet you in the middle of prontera.";
    next;
    mes "[ShadowRO Gift]";
    mes "See You !";
    next;
    savepoint "prontera",116,73;
    getitem 755, 1;
    #gotgift = 1;
    warp "prontera",116,73;
    end;
    case 2:
    mes "[ShadowRO Gift]";
    mes "... !?";
    close;
    }
    }

  13. Upvote
    Dastgir got a reaction from Legend in Permanant Group Changer   
    File Name: Permanant Group Changer
    File Submitter: Dastgir
    File Submitted: 22 Jul 2014
    File Category: Utility
     
    This is a command "@adjgroup2" From which you can give a character new GroupID, no matter he is online or offline.
    The New Group is changed permanently.
     
    Usage:
    @adjgroup2 <GroupID> <PlayerName>
    If PlayerName contains Spaces, Just put it with spaces, without Quotes.
     
    Click here to download this file
  14. Upvote
    Dastgir got a reaction from Legend in Card announce   
    atleast a little edit might be required, just to get itemID into script from getrandgroupitem.
    In that case:
    Script.c:
    /* getrandgroupitem <container_item_id>,<quantity> */ BUILDIN(getrandgroupitem) { struct item_data *data = NULL; struct map_session_data *sd = NULL; int nameid = script_getnum(st, 2); int count = script_getnum(st, 3); if( !(data = itemdb->exists(nameid)) ) { ShowWarning("buildin_getrandgroupitem: unknown item id %d\n",nameid); script_pushint(st, 1); } else if ( count <= 0 ) { ShowError("buildin_getrandgroupitem: qty is <= 0!\n"); script_pushint(st, 1); } else if ( !data->group ) { ShowWarning("buildin_getrandgroupitem: item '%s' (%d) isn't a group!\n",data->name,nameid); script_pushint(st, 1); } else if( !( sd = script->rid2sd(st) ) ) { ShowWarning("buildin_getrandgroupitem: no player attached!! (item %s (%d))\n",data->name,nameid); script_pushint(st, 1); } else { int i, get_count, flag; struct item it; memset(&it,0,sizeof(it)); nameid = itemdb->group_item(data->group); it.nameid = nameid; it.identify = itemdb->isidentified(nameid); if (!itemdb->isstackable(nameid)) get_count = 1; else get_count = count; for (i = 0; i < count; i += get_count) { // if not pet egg if (!pet->create_egg(sd, nameid)) { if ((flag = pc->additem(sd, &it, get_count, LOG_TYPE_SCRIPT))) { clif->additem(sd, 0, 0, flag); if( pc->candrop(sd,&it) ) map->addflooritem(&sd->bl, &it, get_count, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0); } } } script_pushint(st, 0); } return true; } To
    /* getrandgroupitem <container_item_id>,<quantity> */ BUILDIN(getrandgroupitem) { struct item_data *data = NULL; struct map_session_data *sd = NULL; int nameid = script_getnum(st, 2); int count = script_getnum(st, 3); if( !(data = itemdb->exists(nameid)) ) { ShowWarning("buildin_getrandgroupitem: unknown item id %d\n",nameid); script_pushint(st, 1); } else if ( count <= 0 ) { ShowError("buildin_getrandgroupitem: qty is <= 0!\n"); script_pushint(st, 1); } else if ( !data->group ) { ShowWarning("buildin_getrandgroupitem: item '%s' (%d) isn't a group!\n",data->name,nameid); script_pushint(st, 1); } else if( !( sd = script->rid2sd(st) ) ) { ShowWarning("buildin_getrandgroupitem: no player attached!! (item %s (%d))\n",data->name,nameid); script_pushint(st, 1); } else { int i, get_count, flag; struct item it; memset(&it,0,sizeof(it)); nameid = itemdb->group_item(data->group); it.nameid = nameid; it.identify = itemdb->isidentified(nameid); if (!itemdb->isstackable(nameid)) get_count = 1; else get_count = count; for (i = 0; i < count; i += get_count) { // if not pet egg if (!pet->create_egg(sd, nameid)) { if ((flag = pc->additem(sd, &it, get_count, LOG_TYPE_SCRIPT))) { clif->additem(sd, 0, 0, flag); if( pc->candrop(sd,&it) ) map->addflooritem(&sd->bl, &it, get_count, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0); } } } script_pushint(st, nameid); } return true; } * just script_pushint(st, 0) is changed above *
     
     
    Then you can do from script side as follows in item_db script section:
    .@item = getrandgroupitem(12246, 1); if (.@item > 1) { announce strcharinfo(PC_NAME) +" Got "+ getitemname(.@item) +" From MVA", bc_all; }
  15. Upvote
    Dastgir got a reaction from dfabsgwapings in Card announce   
    atleast a little edit might be required, just to get itemID into script from getrandgroupitem.
    In that case:
    Script.c:
    /* getrandgroupitem <container_item_id>,<quantity> */ BUILDIN(getrandgroupitem) { struct item_data *data = NULL; struct map_session_data *sd = NULL; int nameid = script_getnum(st, 2); int count = script_getnum(st, 3); if( !(data = itemdb->exists(nameid)) ) { ShowWarning("buildin_getrandgroupitem: unknown item id %d\n",nameid); script_pushint(st, 1); } else if ( count <= 0 ) { ShowError("buildin_getrandgroupitem: qty is <= 0!\n"); script_pushint(st, 1); } else if ( !data->group ) { ShowWarning("buildin_getrandgroupitem: item '%s' (%d) isn't a group!\n",data->name,nameid); script_pushint(st, 1); } else if( !( sd = script->rid2sd(st) ) ) { ShowWarning("buildin_getrandgroupitem: no player attached!! (item %s (%d))\n",data->name,nameid); script_pushint(st, 1); } else { int i, get_count, flag; struct item it; memset(&it,0,sizeof(it)); nameid = itemdb->group_item(data->group); it.nameid = nameid; it.identify = itemdb->isidentified(nameid); if (!itemdb->isstackable(nameid)) get_count = 1; else get_count = count; for (i = 0; i < count; i += get_count) { // if not pet egg if (!pet->create_egg(sd, nameid)) { if ((flag = pc->additem(sd, &it, get_count, LOG_TYPE_SCRIPT))) { clif->additem(sd, 0, 0, flag); if( pc->candrop(sd,&it) ) map->addflooritem(&sd->bl, &it, get_count, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0); } } } script_pushint(st, 0); } return true; } To
    /* getrandgroupitem <container_item_id>,<quantity> */ BUILDIN(getrandgroupitem) { struct item_data *data = NULL; struct map_session_data *sd = NULL; int nameid = script_getnum(st, 2); int count = script_getnum(st, 3); if( !(data = itemdb->exists(nameid)) ) { ShowWarning("buildin_getrandgroupitem: unknown item id %d\n",nameid); script_pushint(st, 1); } else if ( count <= 0 ) { ShowError("buildin_getrandgroupitem: qty is <= 0!\n"); script_pushint(st, 1); } else if ( !data->group ) { ShowWarning("buildin_getrandgroupitem: item '%s' (%d) isn't a group!\n",data->name,nameid); script_pushint(st, 1); } else if( !( sd = script->rid2sd(st) ) ) { ShowWarning("buildin_getrandgroupitem: no player attached!! (item %s (%d))\n",data->name,nameid); script_pushint(st, 1); } else { int i, get_count, flag; struct item it; memset(&it,0,sizeof(it)); nameid = itemdb->group_item(data->group); it.nameid = nameid; it.identify = itemdb->isidentified(nameid); if (!itemdb->isstackable(nameid)) get_count = 1; else get_count = count; for (i = 0; i < count; i += get_count) { // if not pet egg if (!pet->create_egg(sd, nameid)) { if ((flag = pc->additem(sd, &it, get_count, LOG_TYPE_SCRIPT))) { clif->additem(sd, 0, 0, flag); if( pc->candrop(sd,&it) ) map->addflooritem(&sd->bl, &it, get_count, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0); } } } script_pushint(st, nameid); } return true; } * just script_pushint(st, 0) is changed above *
     
     
    Then you can do from script side as follows in item_db script section:
    .@item = getrandgroupitem(12246, 1); if (.@item > 1) { announce strcharinfo(PC_NAME) +" Got "+ getitemname(.@item) +" From MVA", bc_all; }
  16. Upvote
    Dastgir got a reaction from bhaskara. in Job Spoiler   
    Hello Community,
    I was busy during last few months, and now I have been working on this thing to get supported on Hercules,
    Here's few screenshots:
     
     


    Spoiler 2: (Only 4 skills coded)
     
     
  17. Upvote
    Dastgir got a reaction from Nashruful in Freebies NPC [ Modified ]   
    prontera,150,150,5 script freebie_set 999,{if (#freebie_set){ mes "You have already claimed your freebies"; close;}OnPCLoginEvent: if (#freebie_set){ end; } mes "Select Freebie Set"; switch(select("STR:INT:VIT:LUK:DEX:AGI")){ case 1: getitem STR_SET1,1; getitem STR_SET2,1; #freebie_set = 1; break; case 2: getitem INT_SET1,1; getitem INT_SET2,1; #freebie_set = 2; break; case 3: getitem VIT_SET1,1; #freebie_set = 3; break; case 4: getitem LUK_SET1,1; #freebie_set = 4; break; case 5: getitem DEX_SET1,1; #freebie_set = 5; break; case 6: getitem AGI_SET1,1; #freebie_set = 6; break; } close;} setting #freebie_set to different values will give you ability to track which set the player as chosen like to check
     
    if (#freebie_set==6){ mes "You have already taken AGI Set as Freebies"; } 
  18. Upvote
    Dastgir got a reaction from Nashruful in QUEST SHOP NPC   
    If you mean TCG Shop, here it is
    prontera,153,152,1 trader TCGShop 4_F_EDEN_OFFICER,{ OnInit: tradertype(NST_CUSTOM); sellitem Red_Potion,2; //Sell Red Potion for 2z sellitem Orange_Potion; //Sell Orange Potion with default price. /* Add All Items to be sold here */ end;OnCountFunds: setcurrency(countitem(TCG_Card)); end;OnPayFunds: if( countitem(TCG_Card) < @price ) end; delitem TCG_Card,@price; purchaseok(); end;}
  19. Upvote
    Dastgir got a reaction from ShadowChaser in 2016-02-03aRagexeRE   
    Manually hex it, new ragexe could be released *soon*
  20. Upvote
    Dastgir got a reaction from ShadowChaser in 2016-02-03aRagexeRE   
    Yes, it's also available in 2015-10 clientd
  21. Upvote
    Dastgir got a reaction from Harmony in [2014-10-22b] Unable to see normal weapon sprites when attacking   
    I guess itemInfo not having proper ClassNum?
  22. Upvote
    Dastgir got a reaction from Singularity in [Question] Exe for eamod   
    Personal tip: eAmod is buggy and that one is not updated from long time. I suggest you to use some other emulator
  23. Upvote
    Dastgir got a reaction from x13th in Char server stopped   
    Hercules accepts any kind of contribution, since all the projects of RO are GPL licensed, you are free to modify/Share it , provided that you give proper credit to them. So you don't need to be the author to share it, you just need to provide proper credit of where you have taken the source from... And everything else is fine.
  24. Upvote
    Dastgir got a reaction from n0tttt in [Question] Exe for eamod   
    Personal tip: eAmod is buggy and that one is not updated from long time. I suggest you to use some other emulator
  25. Upvote
    Dastgir got a reaction from rayleigh in Gravity error without message   
    Those 2 announcement might be the one xD
    Some clients do have problem with announcing pattern, like some client cant handle colon ":" on announcement and so on...
    Those 2 announcement might be having some symbol or special character which client might not be able to process properly.
    Other than that, everything is fine
×
×
  • Create New...

Important Information

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