AnnieRuru

Script Developers
  • Content count

    1448
  • Joined

  • Last visited

  • Days Won

    150

AnnieRuru last won the day on March 24

AnnieRuru had the most liked content!

About AnnieRuru

  • Rank
    ~~Cute~Cute~Scripter~~

Profile Information

  • Gender
    Female
  • Location:
    your next door ~
  • Interests
    event scripts ~ battleground scripts ~
    making battleground scripts is my hobby ~
  • Emulator:
    Hercules
  • Github
    AnnieRuru

Recent Profile Visitors

10889 profile views
  1. 1.1 update both scripts to support achievement systems https://github.com/AnnieRuru/Release/blob/master/scripts/Quest %26 Shops/quest log/quest_log_1.1.txt. https://github.com/AnnieRuru/Release/blob/master/scripts/Quest %26 Shops/quest log/daily_quest_log_1.1.txt
  2. this is not fixed location, OnPCUseSkillEvent allow to create warp portal anywhere with a target cursor and if you want to change player's warp portal coordinate, just do bindatcmd "@memoportal" something like that "@memoportal 1" will save the location for 1st location on level 1 portal ... "@memoportal 2" will save the location for 2nd location on level 2 portal ... if I still remember correctly, this OnPCUseSkillEvent allows to create up to level 100 let me test .... yup, level 100 warp portal after apply this patch src/map/pc.c | 2 +- src/map/skill.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/map/pc.c b/src/map/pc.c index ea18715bb..9882fe2a8 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -4230,7 +4230,7 @@ static int pc_skill(struct map_session_data *sd, int id, int level, int flag) ShowError("pc_skill: Skill with id %d does not exist in the skill database\n", id); return 0; } - if( level > MAX_SKILL_LEVEL ) { + if ( id != 2993 && level > MAX_SKILL_LEVEL ) { ShowError("pc_skill: Skill level %d too high. Max lv supported is %d\n", level, MAX_SKILL_LEVEL); return 0; } diff --git a/src/map/skill.c b/src/map/skill.c index 633a73d67..d2ee741b5 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -14154,7 +14154,7 @@ static int skill_check_condition_castbegin(struct map_session_data *sd, uint16 s } } - if( skill_lv < 1 || skill_lv > MAX_SKILL_LEVEL ) + if ( skill_id != 2993 && ( skill_lv < 1 || skill_lv > MAX_SKILL_LEVEL ) ) return 0; require = skill->get_requirement(sd,skill_id,skill_lv); remember, since OnPCUseSkillEvent is basically an NPC script, you can manipulate it with any kind of script commands available bindatcmd + save a player variable ... or open a menu with select script command .... what ever you like
  3. now that I've fixed OnPCUseSkillEvent, its time to show off its awesomeness its usefulness you also need 2nd plugin to do this https://github.com/dastgirp/HPM-Plugins/blob/master/src/plugins/npc-duplicate.c db/re/skill_db.conf { Id: 2993 Name: "CUSTOM_setpos" Description: "CUSTOM_setpos" MaxLevel: 3 Range: 15 SkillType: { Place: true } CoolDown: 10000 }, data/luafiles514/lua files/skillinfoz/skillinfolist.lub [SKID.CUSTOM_setpos] = { "CUSTOM_setpos"; SkillName = "Get Position", MaxLv = 3, Type = "Quest", SpAmount = { 0 }, bSeperateLv = true, AttackRange = { 15 }, }, data/luafiles514/lua files/skillinfoz/skillid.lub CUSTOM_setpos = 2993, data/luafiles514/lua files/skillinfoz/skilldescript.lub [SKID.CUSTOM_setpos] = { "Warp to various towns", "MAX Lv : 3 ", "Lv 1: warp to prontera.", "Lv 2: warp to payon.", "Lv 3: warp to alberta.", }, conf/import/OnPCUseSkillEvent.conf OnPCUseSkillEvent: ( { SkillName: "CUSTOM_setpos" Event_Label: "qwer::Onpos" }, ) and finally the npc script - script asdf FAKE_NPC,2,2,{ end; OnTouch: switch( [email protected] ) { case 1: warp "prontera", 156,191; break; case 2: warp "payon", 162,233; break; case 3: warp "alberta", 192,147; } end; OnInit: switch( [email protected] ) { case 1: waitingroom "prontera", 0; break; case 2: waitingroom "payon", 0; break; case 3: waitingroom "alberta", 0; } end; } - script qwer FAKE_NPC,{ Onpos: if ( @create_warp_npc_delay + 10 > gettimetick(2) ) { dispbottom "cooldown"; end; } @create_warp_npc_delay = gettimetick(2); [email protected] = .i++; [email protected] = @useskilllv; duplicatenpc "asdf", "asdf", [email protected] +"", strcharinfo(PC_MAP), @useskillx, @useskilly, DIR_SOUTH, 1_SHADOW_NPC, 2,2; [email protected] = 0; sleep 5000; duplicateremove "asdf#"+ [email protected]; end; OnPCStatCalcEvent: skill CUSTOM_setpos, 3; end; } result this screenshot is NOT tampered ... taken in-game without any photoshop or ms-paint edits
  4. finally update this after 4 years.... 1.3 - plugin - update to latest revision - fix server crash when parse the string in OnPCUseSkillEvent.txt - help clean the temporary player variable 1.4 - plugin - remove the 100 array limit by utilize VECTOR - drop CSV format and use Hercules standard libconfig format
  5. I do have my own MVP ranking script https://github.com/AnnieRuru/Release/tree/master/scripts/Games %26 Events/MVP Rank usually people do this simply with if ( getmonsterinfo( killedrid, MOB_MVPEXP ) ) { but since you have 3 different modes, you also have to list out which MVP is easy/moderate/hard a quick sql query to list out MVP in your server select * from mob_db where mexp > 0; note its different in renewal and pre-renewal Renewal -> http://herc.ws/board/topic/16631-npc-mvp-invasion/?do=findComment&comment=90910 Pre-renewal -> https://github.com/rathena/rathena/blob/master/npc/custom/events/mvp_ladder.txt#L232-L270 this one needs achievement system ... its already in my top-priority todo list once its out, I can also add *settitleid script command and so on ... and before you forget, the OnNPCKillEvent cannot run on monsters with event labels http://herc.ws/board/topic/15991-onnpckillevent-changes/ so it couldn't add the kills like bio-lab MVPs , instance MVPs and so on that pull request got stuck ... oh PS: pajodex is currently busy in real life, or so I heard
  6. since some people has downloaded 1.2, has to move up a revision 1.3 - plugin - change *setmapflagfixedaspd into *setmf_fixedaspd ... and so on
  7. since some people has downloaded 1.2, has to move up a revision 1.3 - plugin - change *setmapflagmovespeed into *setmf_movespeed ... and so on
  8. 1.2 - plugin - update to latest revision - add GM level bypass restriction - add *setmapflagfixedaspd *removemapflagfixedaspd *getmapflagfixedaspd script command
  9. 1.2 - plugin - update to latest revision - add GM level bypass restriction - add *setmapflagmovespeed *removemapflagmovespeed *getmapflagmovespeed script command
  10. 1.1 - plugin - update to latest revision - add gm_level_bypass @evilpuncker
  11. script

    1.8 - plugin - fix duplicate entry by ShowWarning - add missing IT_AMMO item type deny
  12. I saw the topic title, this file seems valid, I downloaded it but you want to remove it ?
  13. download latest version 1.3 the nocharms mapflag should work the same as noitem mapflag @wallaby
  14. 1.3 - plugin - update to latest revision - add nochams mapflag to deny giving item bonus I don't really know how to do this, because force serial is like ... giving items in bulk immediately getitem 909, 5; ... click on this will give 5 in 1 set, click repeatedly will give multiple sets if getitem 909, 9; means have to give 5+4 charms, giving 2 times bonus ? because the item stack actually means, giving multiple bonuses ... EDIT: I think I'm starting to get it, its the same as having 30000 MAX_AMOUNT in the inventory (MAX_AMOUNT = defined in mmo.h) if player having 35000 amount, it automatically split into 30000 and 5000, giving twice the bonus so instead of having MAX_AMOUNT 30000, add another field Charm_Max_Stack to have a maximum stack 5, which can be configurable
  15. 1.1 - plugin - display a message for file not found - fix memory leak on VECTOR_ENSURE