Jump to content

Khazou

Members
  • Content Count

    41
  • Joined

  • Last visited

  • Days Won

    4

Posts posted by Khazou


  1. Hello,

     

    I would like to know if someone know how i can spawn monster that will be friendly with:

    - A single player

    - A party id

    - A guild id

     

    I know there are *bg_monster and *guardian command, but *bg_monster only work with Battleground and guardian only work in WoE Castle map and can only be friend with caste owner guild.

     

    I hope someone know :)

     

    Thx for reading


  2. Ups forget to tell you to also import the HPM Hooking system

     

    Add this: #include "plugins/HPMHooking.h"

    so it looks like this:

    #include "common/hercules.h"
    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    #include "map/pc.h"
    #include "common/memmgr.h"
    #include "common/nullpo.h"
    #include "plugins/HPMHooking.h"
    #include "common/HPMDataCheck.h"
    

  3. Change to this:

    HPExport void server_preinit (void) {
    	addBattleConf( "max_blv_exp_gain", battle_config_setting, return_battle_config, false );
    	addBattleConf( "max_jlv_exp_gain", battle_config_setting, return_battle_config, false );
    }
    
    HPExport void plugin_init (void) {
    	addHookPre( pc, gainexp, pc_gainexp_pre );
    	addHookPost( pc, calcexp, pc_calcexp_post );
    }
    

     

    But be careful, i tried it, and it blocks exp gain for all player regardless of my battle conf.

    I still don't know why x)


  4. As said in the wiki :)

     

    Hercules requires the following resources from the machine in order to function without problems or the common "Lag":


    • 1.5 GHz or faster CPU, either Intel or AMD is acceptable. Some
      members have reported that they have gotten Hercules to run on other
      processors.
    • 128 MB of RAM, MINIMUM. The map server in an idle state consumes about 76MB of RAM, depending on how many maps and NPCs are loaded (41mb when no NPCs are in use).
    • A video card powerful enough to run the Operating System of
      your choice (or no video card at all). Hercules is a console based
      software, which means that all that is required to run it is a console
      or command access.
    • Fast internet or network connection. This is very hard to
      predict. A lot of questions arise that ask 'how much bandwidth does
      Hercules need?'. There is no answer to that. It is all depending on how
      many characters are connected, from where, and what they do while
      connected to the server.
    • 250MB of Hard Drive space or better, up-to gigabytes depending on how big the database may get.

  5. First of all, thanks for this great plugin :D This is just so cool, and better than before x), but i was wondering if it was possible that every duplicated npc have their own npc variable.

    Because for now, they share their variable. And i would need them to have their own variable.

     

    Also duplicated npc doesn't trigger the OnInit label, I know that this is because the map-server is already loaded when my npc is duplicated but i would be cool to be able to set up a little bit our npc. For the moment i call the OnInit label trough a donpcevent.

     

    Thx :)


  6. Life of guardian is calculated in src/map/status.c around line 2000

    if(md->class_ != MOBID_EMPERIUM) {                mstatus->batk += mstatus->batk * 10*guardup_lv/100;                mstatus->rhw.atk += mstatus->rhw.atk * 10*guardup_lv/100;                mstatus->rhw.atk2 += mstatus->rhw.atk2 * 10*guardup_lv/100;                mstatus->aspd_rate -= 100*guardup_lv;            }

  7. Well, that could be a solution :)

    I tought it would have be easier to have a new item type, but since we can already do this at this moment.

     

    Edit: Can you explain me how to execute a label npc, with a skill ?

    I made a new skill, but I don't know how to call a npc from skill.c

     

    I made this in skill.c

    case NPC_TARGET_ITEM:                //npc_event(sd,"targetItem#rQ::rooter",0);                npc_event_doall_id("targetItem#rQ::rooter",dstsd);                return 0; 

    But i get this error:

    skill.c: In function ‘skill_castend_nodamage_id’:skill.c:5227:8: error: ‘struct npc_interface’ has no member named ‘npc_event_doall_id’

    But i don't know how to use a function from an other .c file

     

    Edit2: I understood that i had to use npc->event_doall_id and not npc_event_doall_id

    But now i don't know how to retrieve the rid from a map_session_data variable

     

    Edit3: Finally it works with

    case NPC_TARGET_ITEM:				//npc_event(sd,"targetItem#rQ::rooter",0);				npc->event(dstsd,"targetItem#rQ::OnRooter",0);				return true;

    I'm still having problem when i target a monster, but i should found this out :)


  8. Hi,

     

    I was wondering, if it could be possible to implement a new type of usable item.

     

    This item, bind to a NPC label, will give the opportunity to target a monster or a player like Skill Scroll item, and will then execute the NPC label + giving the script the monster ID or the player account/char ID.

     

    I don't think it would be so difficult to make, but it would expand the capabilities of thing possible with script to a whole next level :)

     

    What do you think about it ?

     

    If you have some question, feel free to ask, as I am French, maybe i didn't explain it very well

×
×
  • Create New...

Important Information

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