Jump to content

AnnieRuru

Script Developers
  • Content Count

    1677
  • Joined

  • Last visited

  • Days Won

    245

Everything posted by AnnieRuru

  1. maybe you use gm account to register, and then teleport out ? almost all event script made by me doesn't have this protection so make sure only use non-gm account to run this event, and use gm to @warp in once haru's queue iterator script commands out, then its SQO_OnMapChange can prevent this from happening EDIT: nvm, maybe just add a few lines 1st, doesn't hurt I guess ? release 2.2
  2. confirming this bug prontera,155,185,5 script kjdhfksjfhs 1_F_MARIA,{ monster "this", -1,-1, "--ja--", PORING, 1, "asdf::OnEnable"; end;}prontera,158,185,5 script asdf 1_F_MARIA,{ mes "hi"; close;OnInit: disablenpc strnpcinfo(0); end;OnEnable: enablenpc strnpcinfo(0); end;}when I killed the poring, the asdf::OnEnable label never executed,and server doesn't even throw any error too hmm ... now I have 1 more extra thing to pull request ..
  3. ah ... that example script was ver1.0 and when I thought my sister just going to stay for only for Sat and Sun, she actually wants to stay for a whole week so currently I can't do things that require deep concentration EDIT: this format is not final, I saw rathena did that random walk as part of monster mode which I think they did better on some parts
  4. setmobdata and getmobdata was made by [Lance], was in eathena all the while until ultramage took it out https://eathena.ws/board/Eathena-Mob-Controller-System-t194375.html and I noticed rathena copy almost all the fields in that patch I always knew that patch isn't complete, that's why I trying to rewrite that patch at that time, mob controller system isn't needed, was considered custom but right now, this is official, as newer instance script might want to use it, thus its needed to be merged and nah ... I was just inactive at that time, it isn't just me can write it, many people also can write them
  5. 1. restart the server 2. remove the file at npc/aviro/event/bombring.txt 3. rename the `runordie` npc pick either one should fix your problem
  6. so ... Haru has cleaned up the clif->colormes function https://github.com/HerculesWS/Hercules/commit/d66cc50af6d781d179f46ae67d74bf26bf5914e5 now its very easy to implement this suggestion pull request https://github.com/HerculesWS/Hercules/pull/858 and I just compared hercules and rathena script_commands.txt we are so behind them right now, missing so many script commands its not even funny I'm thinking maybe I should stop supporting on the forums .... until at least have hercules emulator on par with rathena standard EDIT: what the heck ? why when used 0x000000 it is display as white ?? or maybe just my hexed client maybe ? EDIT2: tested on rathena, they also having this same issue
  7. oh someone link to me to this topic, I just found this I always thought modify a monster's attribute is a custom feature so I always thinking of writing it as plugin only but rathena have it 1st ok, upon closer inspection, I found that rathena way's of implementing them are less accurate com'on, once the monster is spawned, modify the monster's str will not increase its atk the same as increasing its agi will not make its flee higher adding those stats, like vit will only make the stun duration decrease, and int make freeze duration decrease only quite useless and Oh My God ? setunitdata can modify all different types of things but the way they write it, cannot use constants this is bullshit anyone who think this kind of modification is good enough to merge into hercules, please rethink again I'm going to write a better one *setmobdata/getmobdata I already have a plugin, going to make it into patch soon because rathena already have it, I'll pull request for hercules soon *setmoblook/getmoblook I think the md->state.xxxx should go different script command with md->vd.xxxxx so all md->vd.xxxxx will go into this script command currently rathena mix them all together, but I think they should be separated *mobevent <GID>, <type>, <event label>; this is missing from rathena I think this will make the current monster <GID> to run <event label> according to <type> happens currently I can think of MOBEVENT_ATTACK -> when monster attack an unit MOBEVENT_DAMAGE -> when monster hit by anything MOBEVENT_DETECT -> when monster sees an enemy MOBEVENT_KILL -> when monster killed a unit MOBEVENT_SKILL -> when monster cast a skill ( the skill cast adjusted in dbremob_skill_db.txt ) MOBEVENT_RANDOMWALK -> when monster finished a random walk MOBEVENT_SUMMONSLAVE -> when monster summon slaves MOBEVENT_LOOT -> when monster loots an item MOBEVENT_EMOTION -> when monster doing an emotion MOBEVENT_TRANSFORM -> when monster transform into another monster (eg: pupa) ... maybe more example: mobevent .@id, MOBEVENT_DETECT, strnpcinfo(0)+"::OnDetect";when the monster detect an enemy, it will run that npc OnDetect: labelit will return $@mob_detect_id variable, GID of the unit . the rest, I think can follow rathena, but hercules version will have a complete list of constants I prefer to have a script full with constants, it will increase readability . I'm going to mark this one as rejected, and propose a better system like I stated and when I do it, I'll do little by little, system by system I also don't like aleos always put everything into 1 single patch and make big release this will make others harder to find the code
  8. I don't want rathena members come and steal my source edits anymore hahaha 1.1 plugin - remove MOBDATA_NAME field and MOBDATA_DIRECTION field - add monster's emote constants (found in src/map/status.h)
  9. frequently asked questions and example script tested with prontera,155,185,5 script kdjhfksfdh 1_F_MARIA,{ .@id = monster( "this", -1,-1, "--ja--", PORING, 1, "" ); // setmobdata .@id, MOBDATA_MODE, getmobdata(.@id, MOBDATA_MODE & ~MD_LOOTER);// setmobdata .@id, MOBDATA_NORANDOMWALK, 1; setmobdata .@id, MOBDATA_MAXHP, 800000000; setmobdata .@id, MOBDATA_HP, 800000000;// setmobdata .@id, MOBDATA_HIT, 30000;// setmobdata .@id, MOBDATA_CRITICAL, 30000; setmobdata .@id, MOBDATA_ATK, 607000;// setmobdata .@id, MOBDATA_MODE, 70000;// setmobdata .@id, MOBDATA_MOVESPEED, 70000; setmobdata .@id, MOBDATA_ATTACK_DELAY, 10; setmobdata .@id, MOBDATA_ATTACK_MOTION, 10;// setmobdata .@id, MOBDATA_DAMAGE_MOTION, 70000; setmobdata .@id, MOBDATA_IMMUNE, 70000; setmobdata .@id, MOBDATA_ATTACK_RANGE, 14;// setmobdata .@id, MOBDATA_STR, 327678;// dispbottom "GID = "+ .@id;// dispbottom "ID = "+ getmobdata( .@id, MOBDATA_MOBID );// dispbottom "level = "+ getmobdata( .@id, MOBDATA_LEVEL );// dispbottom "hp = "+ getmobdata( .@id, MOBDATA_HP );// dispbottom "maxhp = "+ getmobdata( .@id, MOBDATA_MAXHP ); dispbottom "atk = "+ getmobdata( .@id, MOBDATA_ATK );// dispbottom "matk = "+ getmobdata( .@id, MOBDATA_MATK );// dispbottom "def = "+ getmobdata( .@id, MOBDATA_DEF );// dispbottom "mdef = "+ getmobdata( .@id, MOBDATA_MDEF );// dispbottom "hit = "+ getmobdata( .@id, MOBDATA_HIT );// dispbottom "flee = "+ getmobdata( .@id, MOBDATA_FLEE );// dispbottom "critical = "+ getmobdata( .@id, MOBDATA_CRITICAL );// dispbottom "perfect dodge = "+ getmobdata( .@id, MOBDATA_PERFECT_DODGE ); dispbottom "str = "+ getmobdata( .@id, MOBDATA_STR );// dispbottom "agi = "+ getmobdata( .@id, MOBDATA_AGI );// dispbottom "vit = "+ getmobdata( .@id, MOBDATA_VIT );// dispbottom "int = "+ getmobdata( .@id, MOBDATA_INT );// dispbottom "dex = "+ getmobdata( .@id, MOBDATA_DEX );// dispbottom "luk = "+ getmobdata( .@id, MOBDATA_LUK ); dispbottom "attack range = "+ getmobdata( .@id, MOBDATA_ATTACK_RANGE );// dispbottom "race = "+ getmobdata( .@id, MOBDATA_RACE );// dispbottom "element type = "+ getmobdata( .@id, MOBDATA_ELEMENT_TYPE );// dispbottom "element level = "+ getmobdata( .@id, MOBDATA_ELEMENT_LEVEL );// dispbottom "mode = "+ getmobdata( .@id, MOBDATA_MODE );// dispbottom "movespeed = "+ getmobdata( .@id, MOBDATA_MOVESPEED );// dispbottom "adelay = "+ getmobdata( .@id, MOBDATA_ATTACK_DELAY );// dispbottom "amotion = "+ getmobdata( .@id, MOBDATA_ATTACK_MOTION );// dispbottom "dmotion = "+ getmobdata( .@id, MOBDATA_DAMAGE_MOTION ); dispbottom "map = "+ getmobdata( .@id, MOBDATA_MAP ); end;}the explanation script is not finished, I knowbut I kinda in a rush because my sister is coming to stay over here tonite
  10. this post reserve to explain in detail what each constant do as there are some of them doesn't really work, and some has to work with others 1st thing that you need to know is, the monsters stats has been calculated the moment the monster is spawned so adding modify the monster's agi will not increase its flee, for example have to modify its flee instead ... damn ... now going out for lunch having someone stay over really sux
  11. need to summon a hp 10,000,000 poring ? or you want to make emperium move ? yes, this plugin allows you to customize your monsters attribute Download : 1.2 patch <-- rathena fellows, you are welcome to plagiarize this command, since your setunitdata can't change stats LOL I experienced in the past that, sometimes when my internet connection reset, my post will looks like rubbish this time I will make multiple posts to reduce the risk of my explanation so they wont get edited
  12. ehehe ... ehehehehe ...... ehehehehehehehehe ...... hehehehe ..... ... I just kept laughing for past few hours ... 1 of my customer just show me a link to the topic in my signature I'm going to write this for free in public ... if nothing disturb me, I can finish this in 3 days .... EDIT: I am already drooling right now ... omg ... I can't stop thinking about it ...
  13. so you turned on pk mode inside confbattlemisc.txt ?well isn't this official .... I played Singapore pk server before, the players there pk outside town if you don't want players to pk in that map, use nopvp mapflag prontera mapflag pvp offhonestly .... haiz ... nvm
  14. ROFL, that script I wrote for fun, and you somehow dig it out LOL actually I already have a mvp ladder script which made for rathena http://herc.ws/board/topic/10903-mvp-ladder-game-problem/ but its currently bug in hercules https://github.com/HerculesWS/Hercules/issues/840 once Haru fixed the Hp=1 when dead bug, then that script can use in Hercules
  15. woe maps should be under "GvG2" { name: "GvG2" inherit: ( "GvG" ) /* will import all gvg has */ disabled_skills: { TK_HIGHJUMP: "PLAYER" SA_ABRACADABRA: "PLAYER" }},
  16. which map ? btw if it is prontera castle change prt_gld,240,124,0 warp prtg-2_prtg-2 1,1,prtg_cas02,43,229into function script block_kagerou_oboro { if ( Class == Job_Kagerou || Class == Job_Oboro ) { mes "you can't join woe"; close; } warp getarg(0), getarg(1), getarg(2); end;}prt_gld,240,124,0 script prtg-2_prtg-2 WARPNPC,1,1,{ callfunc "block_kagerou_oboro", "prtg_cas02",43,229; }so if you used 30 castles, you have to add this callfunc 30+ timesas there are some geffen castles has 2 or more entrance
  17. isn't that what the script do ? so you can't pk when pk mode off .. or maybe I misunderstood what this pk mode is .... maybe YOU should explain to me what this modification does because I download the original, its bug, so I don't even understand what that topic talking about
  18. - script DeathS FAKE_NPC,{OnPCDieEvent: .@sex$ = (Sex)? "man" : "girl"; .@number = (Sex)? rand(1,5) : rand(1,4); soundeffect "voice_"+ .@sex$ +( .@number == 1 ? "" : .@number )+".wav", 0;// soundeffectall "voice_"+ .@sex$ +( .@number == 1 ? "" : .@number )+".wav", 0; end;} why need a function ?
  19. @@VicTheSlik @@Easycore fine ... http://upaste.me/b16121870ca99a9c0 btw I found that when pk mode, there is no indicator showing that player having pk on I rather fix this kind of source mode though http://herc.ws/board/topic/4589-pk-area/?p=29668
  20. just so you know, prontera,155,185,5 script kjdhfdksjf 1_F_MARIA,{ monster "this", -1,-1, "--ja--", PORING, 1, strnpcinfo(0)+"::Onaaa"; end;Onaaa: dispbottom "1"; end;OnNPCKillEvent: dispbottom "2"; end;}the monster with event label cannot trigger OnNPCKillEventit was modify this way to exactly suits your needs monsters with event label (which are usually used for events) cannot run with OnNPCKillEvent (on field/dungeons) so just have your mvp room add monster event label on them then use OnNPCKillEvent on your MVPs and ... there are some MVP already has event labels like thanatos ... etc, which you have to find the script and hijack it
  21. honestly ... why don't you just follow those smartphone games stuffs ... they give freebies based on account, and those are unable to trade either you use *getitembound, or *rentitem
  22. @@esquilla13 you can also use && condition and squeeze them all into 1 line - script OnKillMonsterDoDropItem FAKE_NPC,{OnNPCKillEvent: if ( strcharinfo(3) == "gl_prison" && killedrid == PORING && rand(100) < 1 ) getitem Poring_Coin, 1; end;}
  23. seriously ... HOW OLD IS YOUR EMULATOR !? http://upaste.me/1b11218565c0a4a4b I think your host is irresponsible your server is not using latest hercules
  24. confirming this bug http://upaste.me/adea21853ecefe7a9 when player A joins, queue list as 1. 2000000when player B joins, queue list as1. 20000002. 2000001and now remove player A, queue list as1. -12. 2000001this is definitely not rightthe queuesize is display correctly as only 1 person, but the queueiterator still having 2 entry ima thinking of know how to fix this bug EDIT: found 4 bugs in the process XD Fix *queueremove should return true if player is not in the queue Fix *queueiterator return same amount of *queuesize upon *queueremove Fix *queuedel doesn't remove player's side queue Fix @QMapChangeTo$ not usable when HQO_OnMapChange triggered
  25. https://www.eathena.ws/board/index.php?s=&showtopic=244678&view=findpost&p=1473855 just tested these gm commands, still the same
×
×
  • Create New...

Important Information

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