Jump to content

AnnieRuru

Members
  • Posts

    2044
  • Joined

  • Last visited

  • Days Won

    51

Everything posted by AnnieRuru

  1. AnnieRuru

    PVP Ladder

    its probably much faster for me to write a new script than study the feature of pre-existing script because I also made my own version of pvp ladder myself in the past txt version - sql version however you still need to show us your pvp room script 1st select "FFA pvp room", "no pots pvp room"; if ( @menu == 1 ) warp "room1", 0,0; end; if ( @menu == 2 ) warp "room2", 0,0; end; that looks something like this so that I could expand your pvp room script to suits your request condition and also confirm you want txt version or sql version
  2. I also don't understand what you actually wants in that topic, it means, every time a player breaks an emperium, the player gain WOEP points where this WOEP is a player variable you can manipulate this WOEP points by creating some item script to let the user buy some stuffs that script is working ... or you are requesting something else ?
  3. http://www.eathena.ws/board/index.php?s=&showtopic=272695&view=findpost&p=1494510 this one better I think
  4. this event should be control by GM command, not by scripts read the youtube comment how to reproduce 1. change to no, then @reloadbattleconf2. get 2 GM @hide 3. @duel between both GM 4. one GM "@summon 1916 999999999", another GM "@summon 2022 999999999" and you get the result so simple that everyone can do this in their server src\map\unit.c if( src->type == BL_MOB ) switch( skill_num ) { case NPC_SUMMONSLAVE: case NPC_SUMMONMONSTER: case AL_TELEPORT: if( ((TBL_MOB*)src)->master_id && ((TBL_MOB*)src)->special_state.ai ) return 0; } when a monster going to cast any of these 3 skills, if the monster has a master ID, or the monster itself is in special AI state, it wont summon a slave monster special_state.ai is like, a homunculus -> marine sphere .. flora or a player summoned monster src\map\atcommand.c ACMD_FUNC(summon) ....... md->master_id=sd->bl.id; md->special_state.ai=1;
  5. http://www.eathena.ws/board/index.php?showtopic=237765 setarray .maptrigger$, // only these maps will trigger this script "all", // comment this line to only trigger this script on these listed maps "guild_vs1", "guild_vs2", "guild_vs3", "guild_vs4", "guild_vs5"; // <--- something wrong with your script in this line // anti-sit-killer system // a player must kill another player with this minimum <this number> level to get the announcement and in the ladder. // Otherwise only have streak ended announcement and killed player's streak reset. // Its possible for a level 1 novice to kill a level 55 player and he/she will still get in the ladder // but a level 55 kill a level 1 player will get nothing // 0 - off this system ( default is 55, pk setting ) set .lvltokill, 0;
  6. lol wrongduring woe, supposedly only guild master or only officers to give commands, normal players should keep silent if you do it that way, soon all normal players will auto-kick 1 by 1 lol my idea about timeout is to prevent some noobish players abusing the limit of channel room due to script engine limitation // Max IRC Room .MaxRoom = 10; which emistry did that already I can join in a channel and then use @autotrade to hit the limit of channel room by my own timeout check is like AFK script supposedly, not by kicking out silent players about blocking party/guild the idea is like set the channel room to public, but there're some antagonist guild, that you don't want them to join it just like creating a banlist
  7. ok ... prontera,155,182,5 script hfksdjfhsk 100,{ monster "this",-1,-1, "--ja--", 1002,1,"",2,0; } works prontera,156,185,0,0 monster Poring 1002,1,0,0,"",2,0 not working... [Error]: npc_event: event not found [",2,00]
  8. oh yes I love to make event scripts <3 but this one seems like level1 type though ( single player stuff ... too easy for me ) let's confirm the mechanics again 1. on certain time, the everyone in the server transport into a map 2. after some countdown, 1 of the player becoming a zombie 3. this zombie player will try to attack others, the one getting attacked become zombie also 4. reward given to those stay as human * so is there any reward for someone who has turn most players into zombie ? don't understand this one@GmOcean yes indeed, and the answer is OnPCUseSkillEvent
  9. WTH !!! you and @GmOcean has already improved so much and started to challenge level2 type event script and algorithm script already ok then ... I think I can safely transfer this script for you to do ... ( but in turn I want to challenge back your party vs party script ... hohoho ... ) well, I still can't comment much on the functionality, because your script also not finish just 1 thing here inside IRC_Broadcast function announce ( ( .DisplayTime )?"[ "+gettime(3)+":"+gettime(2)+" ] ":"" ) + getarg(1),bc_self,getarg(2); better change into announce ( ( .DisplayTime )?"[ "+gettimestr("%H:%M",7)+" ] ":"" ) + getarg(1),bc_self,getarg(2); http://www.eathena.ws/board/index.php?s=&showtopic=181741&view=findpost&p=1329705
  10. seriously ... just how much Emistry and GmOcean has improved ? keep freaking me out @_@

    1. Show previous comments  5 more
    2. Emistry

      Emistry

      hahaha ~ maybe he will consider to change it during the script showdown...xD

    3. Mercurial

      Mercurial

      YOU HAVE NO IDEA WHAT I CAN DO ANNIE

    4. AnnieRuru

      AnnieRuru

      I'm looking forward to see you start comply some request in script request sections xD

  11. read the wiki about Instancing especially the "How to.." part
  12. change this if ( callfunc( "instance__", "Payon Donjon", 600,600, "1@pay_d", "2@pay_d" ) < 0 ) { mes "failed to create instance"; close; } into this if ( .@int = callfunc( "instance__", "Payon Donjon", 600,600, "1@pay_d", "2@pay_d" ) ) { mes "failed to create instance"; mes "Reason = "+ .@int; close; } if you get a -5, means you didn't duplicate the map successfully
  13. sr I've tested my script and is working perfectly fine in my test serversinya post double confirm my result too I have totally no idea why some of you produce different result from my test server ?
  14. seriously ? is there anyone tested it and works ? prontera,156,185,0,0 monster Poring 1002,1,5000,5000,2 prontera,155,182,5 script hfksdjfhsk 100,{ monster "this",-1,-1, "--ja--", 1002,1,2; } from my past experience, I never trust blindly script_commands.txt said well but, @monsterbig and @monstersmall works though
  15. 4001,.....,{ if ( isequippedcnt( 4001,4002,4003,4004 ) <= 2 ) { bonus bstr, 100; } },{},{} 4002,.....,{ if ( isequippedcnt( 4001,4002,4003,4004 ) <= 2 ) { bonus bagi, 100; } },{},{} 4003,.....,{ if ( isequippedcnt( 4001,4002,4003,4004 ) <= 2 ) { bonus bdex, 100; } },{},{} 4004,.....,{ if ( isequippedcnt( 4001,4002,4003,4004 ) <= 2 ) { bonus bvit, 100; } },{},{} yeah ... LOL its working, I wonder why I never thought about this before x.x
  16. 1. prontera,156,185,5 script dfjhdksjf 100,{ mes .itemlist$; next; select .itemlist$; mes .item$[ @menu -1 ]; close; OnInit: .itemlist$ = "hat:cat:lot:pot:hot"; explode .item$, .itemlist$, ":"; close; } 2. yeah
  17. resnametable.txt 1@pay_d.gnd#pay_dun00.gnd# 1@pay_d.gat#pay_dun00.gat# 1@pay_d.rsw#pay_dun00.rsw# À¯ÀúÀÎÅÍÆäÀ̽º\map\1@pay_d.bmp#À¯ÀúÀÎÅÍÆäÀ̽º\map\pay_dun00.bmp# 2@pay_d.gnd#pay_dun01.gnd# 2@pay_d.gat#pay_dun01.gat# 2@pay_d.rsw#pay_dun01.rsw# À¯ÀúÀÎÅÍÆäÀ̽º\map\2@pay_d.bmp#À¯ÀúÀÎÅÍÆäÀ̽º\map\pay_dun01.bmp# function script instance__ { if ( set( .@ins, instance_create( getarg(0), getcharid(1) ) ) < 0 ) return .@ins; set .@i, 3; while ( getarg( .@i, "" ) != "" ) { if ( instance_attachmap( getarg(.@i), .@ins ) == "" ) { instance_destroy .@ins; return -5; } set .@i, .@i +1 ; } if ( getarg(1) || getarg(2) ) instance_set_timeout getarg(1), getarg(2), .@ins; instance_init .@ins; instance_attach .@ins; return .@ins; } prontera,156,185,5 script kdsfjhsdkfj 100,{ if ( getcharid(1) == 0 ) { mes "you need a party to get in"; close; } if ( getstrlen( has_instance("1@pay_d") ) ) { instance_attach instance_id(1); warp has_instance( 'instance_map_id +"@pay_d" ), 0,0; end; } if ( getpartyleader( getcharid(1), 2 ) != getcharid(0) ) { mes "party leader only"; close; } if ( callfunc( "instance__", "Payon Donjon", 600,600, "1@pay_d", "2@pay_d" ) < 0 ) { mes "failed to create instance"; close; } monster "1@pay_d",0,0,"--ja--",1001,10, instance_npcname("bleh")+"::Onblah1"; warpparty "1@pay_d", 0,0, getcharid(1); 'instance_map_id = 1; close; } 1@pay_d,0,0,0 script bleh -1,{ Onblah1: 'count++; if ( 'count < 10 ) end; announce "a voice says : go to the next level", 1; 'instance_map_id = 2; instance_warpall "2@pay_d",0,0; monster "2@pay_d",0,0,"--ja--",1001,10, instance_npcname("bleh")+"::Onblah2"; 'count = 0; end; Onblah2: 'count++; if ( 'count < 10 ) end; instance_warpall "prontera",156,185; getpartymember getcharid(1), 1; getpartymember getcharid(1), 2; for ( .@i = 0; .@i < $@partymembercount; .@i++ ) if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) getitem "Apple_Of_Archer", 1, $@partymemberaid[.@i]; sleep2 1; instance_destroy; end; }
  18. menu .@menu$,-; .... setlook(0,.@jobs[(.@i-1)]); shouldn't that be setlook(0,.@jobs[(@menu-1)]); @GmOcean wow your script no longer looks messy, LOL
  19. lolok I abuse moderation power to edit his post so it give back to the correct creator otherwise if that script broken, you become the one getting PM lol
  20. wahahaha .... seriously ... nowadays people make overly complicated scripts and forgotten how to make simple scripts already - script dfhksdjhfkshf -1,{ OnHour2000: agitstart; announce "Woe start", 0; end; OnHour2100: agitend; announce "woe ended", 0; end; } and this http://www.eathena.w...pe=post&id=5446 but the reward is only given to guild master though that script is very simple to edit, every one can understand
  21. move to database request any example ? please don't be like @Myzter only give facts ... lol what I mean is, ( isequippedcnt(4001) <= 2 ) only works when there's only 1 card inside more than 1 kind, use *nude every cards has different bonus ... ( isequippedcnt(4001,4002,4003) <= 2 ) ..... < What to put here ? >..... this is the one I don't understand can show me an example ?
  22. global function - getskillname source modification - OnPCStatCalcEvent_16923.patch prontera,155,184,5 script kjdshfsk 100,{ input .@skill_id, 1, 8240; if ( !getstrlen( getd("$@skillname"+ .@skill_id +"$") ) ) { mes "invalid skill"; close; } if ( getskilllv( .@skill_id ) ) { mes "you already learned this skill"; close; } else if ( @num_skill_learned > 10 ) { // maximum mes "you can't take any more new skills"; close; } skill .@skill_id, 1; learn_skill$ = learn_skill$ + .@skill_id +"#"; @num_skill_id[ @num_skill_learned ] = .@skill_id; @num_skill_learned++; close; OnPCStatCalcEvent: for ( .@i = 0; .@i < @num_skill_learned; .@i++ ) skill @num_skill_id[.@i], 1; end; OnPCLoginEvent: explode .@skill_id$, learn_skill$, "#"; @num_skill_learned = getarraysize( .@skill_id$ ); for ( .@i = 0; .@i < @num_skill_learned; .@i++ ) { skill atoi( .@skill_id$[.@i] ), 1; @num_skill_id[.@i] = atoi( .@skill_id$[.@i] ); } end; } I tested with skill ID 74 on a dancer, seems like not working ... not sure ... somebody else try ?
  23. @Vach try and crack my mission board script after you tested my script, setup a quest ... and get a player complete a 'Only Once' or 'Everyday' mission limitation then try run select * from mapreg where varname like '$ms_b_%'; select * from global_reg_value where str like 'ms_b_%'; the method I used was quite optimized ... well at the time of creation now the method is getting outdated, but still this script is still working in latest SVN
  24. yeah, this technique is only use for cards that has percentage or integer value how ?if the 1st card 4001 is { bonus bstr, 100; } 2nd card 4002 is { bonus bagi, 100; } 3rd card 4003 is { bonus bvit, 100; } 4th card 4004 is { bonus bint, 100; } if ( isequippedcnt( 4001,4002,4003,4004 ) <= 2 ) { bonus bstr, 100; bonus bagi, 100; bonus bvit, 100; bonus bint, 100; } which one to remove if I equipped only 4003,4004 ? or if I equipped 4002,4003 ? or you mean something like this ? if ( isequippedcnt( 4001,4002 ) <= 2 ) { bonus bstr, 100; bonus bagi, 100; } else if ( isequippedcnt( 4001,4003 ) <= 2 ) { bonus bstr, 100; bonus bvit, 100; } else if ( isequippedcnt( 4001,4004 ) <= 2 ) { bonus bstr, 100; bonus bint, 100; } laughable method ... lol if multiple cards combine effect, I still suggest using nude;
  25. by defaultinput .@i; is equal to input .@i, 0, 1000000; you can't have negative input unless you specify for a negative input beforehand input .@i, -100, 100; only this accept negative input http://www.eathena.ws/board/index.php?autocom=bugtracker&showbug=811 @garet999 that .@var++ is only support in rathena
×
×
  • Create New...