Script Developers
  • Content count

  • Joined

  • Last visited

  • Days Won


AnnieRuru last won the day on September 19

AnnieRuru had the most liked content!

About AnnieRuru

  • Rank

Profile Information

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

Recent Profile Visitors

10125 profile views
  1. if there is no demand, no need to pull request but if plugin ... well anyone can release whatever you want ... though, do you know most of the meaning of this constants ? even I only understand about 80% of them PDT_DIE_COUNTER, PC_DIE_COUNTER PDT_CASHPOINTS, PDT_KAFRAPOINTS, #CASHPOINTS and #KAFRAPOINTS PDT_HEAD_DIR, where is unit direction ? PDT_IDLETIME, *checkidle() script command PDT_MISSION_MOBID, I'm quite sure this should be in array most of them are useless ... although some of it already in my To-Do list... like the setunitsize, I failed to clean it before
  2. so in other words, @pk command is actually use to turn off the pk mode instead of turn on ? this actually reminds me of Diablo 2 ... when press the P, in multiplayer mode, there is a double sword icon press that will enable players to kill each other ... image below found on internet ... google search image in other words, @pk mode is use only on pk server, and players can only enable the @pk mode in town, when they leave the map they can kill other players that also has @pk on right ?
  3. if you mean ... 1. kill a boss_monster prontera,155,187,0,0 boss_monster asdf 1086,1,100000,100000,1 2. click on the tomb 3. then kill a monster @monster poring 4. then unable to move ... <-- nope I'm still able to move
  4. that's why I also don't really understand what is this plugin about, see the last few posts the original patch from eathena was like that too maybe some one should clarify to me again what this @pk really do ... all I know is this .... plugin is popular, but I don't really know its intended purposes
  5. because in a pk server, every map is considered a pvp map have to manually turn off by pvp off mapflag
  6. getting tired of people keep sending me personal message -> how do I apply your koe patch after about 6 PMs or so I getting really fed up, then I realize there is no guide to properly teach members how to apply a diff file, so I have to make one First step A lot of people download hercules in .zip format. This is WRONG. instead, follow the proper guide and use tortoisegit (if you are using windows) to download your server This is the proper guide on how to install hercules Question: but I am using rathena, not hercules Answer: just change the link into rathena ones Second step after you get your proper server, the first thing you have to do is get rid of your current one this is the painful process, because you did not follow the guide but on the up side, you can always update your server every week just by Git pull which already mentioned in that installation topic guide Question: but every time I Git pull, it always ask to resolve conflicts Answer: that's the reason hercules community stop providing patch file and transition towards plugin system you should always keep your server up to date with the latest revision as we always add new features and bug fix nobody on the board like to give support on old emulator Question: but rathena doesn't have plugin system Answer: yes rathena doesn't support right now, but will be soon in the near future. rathena already slowly transition towards C++ format Third Step now you have a .diff file, download the file somewhere, right click on it then point the link towards your hercules installation folder Apply Patch Serial... Review/apply single patch... if either option doesn't work, try the other Disclaimer: as I am windows user I never use Linux or Centos whatever, so this guide is purely meant for noobs that keep bombard my PM box over and over
  7. client side restriction, there is nothing we can do about that the sword cursor are hard-coded in the client side and only change to sword depends on unittype - monster/player/pets - and the mapflags
  8. like I said, open multiple topics if you have multiple request you don't want your topic end up like this <-- he asked 4 questions its headache as I don't feels like answering that topic anymore this topic has 8 requests, though the last 2 were not enough information provided so at least open 6 different topics 1st close this topic as the topic starter doesn't abide the script request rule .... ... its not enforce in hercules though, but already on rathena I should've close this topic earlier ...
  9. found this old topic ... update this a little bit ... pointing this topic to somebody ... namely @luizragna
  10. then do like meko said just change chat_area_size ? I changed to 999 testing see what's the consequences ... 1. this one will also affect unittalk and npctalk ... etc 2. pet said something during its max intimacy, will also spam the whole map 3. defpattern will trigger whole map ... so only *unittalk affected, 2 and 3 doesn't
  11. change IOT_CHAR into IOT_PARTY and *warp into *warpparty ? also add *instance_check_party when applicable ... and the first 2 lines in that script was made like an event thing ... to prevent the player stay in the map if you want the player to stay in the map like quest script, then add src4instance mapflag and *instance_set_respawn
  12. 2 ways to fix this 1. simple, just add *disable_items script command at the beginning of the script 2. or you can also do like this, up to you OnEnd: if (@qe[7]) { changelook LOOK_HEAD_BOTTOM, @qe[3]; changelook LOOK_HEAD_TOP, @qe[4]; changelook LOOK_HEAD_MID, @qe[5]; changelook LOOK_ROBE, @qe[6]; } deletearray @qe[0],8; end; change into OnEnd: if (@qe[7]) { changelook LOOK_HEAD_BOTTOM, getlook(LOOK_HEAD_BOTTOM); changelook LOOK_HEAD_TOP, getlook(LOOK_HEAD_TOP); changelook LOOK_HEAD_MID, getlook(LOOK_HEAD_MID); changelook LOOK_ROBE, getlook(LOOK_ROBE); } deletearray @qe[0],8; end;
  13. function GetQuestion { return getd(".question_" + (getarg(0) % 128) + "$[" + (getarg(0) / 128) + "]"); } function GetAnswer { return getd(".answer_" + (getarg(0) % 128) + "$[" + (getarg(0) / 128) + "]"); } function GetHint { return getd(".hint_" + (getarg(0) % 128) + "$[" + (getarg(0) / 128) + "]"); } I believe you made it opposite ? assuming that you are still using eathena, when script engine was still 128 elements it should be return getd(".question_" + (getarg(0) / 128) + "$[" + (getarg(0) % 128) + "]"); although there is no need to do like this anymore because our script engine no longer has such limitation 2nd thing is ... L_loop: do set [email protected], rand( .numQuestions ); // Randomly picks a fact. while( .Q_session & 1 << [email protected] && .Q_session && .count < .numQuestions ); set .Q_session, .Q_session | 1 << [email protected];// max 32 questions rather than using a loop, can use shuffle algorithm EDIT: for below
  14. be more specific, I couldn't read your mind
  15. line 8088 in src\map\pc.c if (battle_config.pk_mode&2) { ssd->status.manner -= 5; then this is everywhere in the src if(sd->status.manner < 0) clif->changestatus(sd,SP_MANNER,sd->status.manner); status.c case SC_NOCHAT: if(sd) { sd->status.manner++; clif->changestatus(sd,SP_MANNER,sd->status.manner); clif->updatestatus(sd,SP_MANNER); if (sd->status.manner < 0) { //Every 60 seconds your manner goes up by 1 until it gets back to 0. sc_timer_next(60000+tick, status->change_timer, bl->id, data); return 0; } } break; combine these 3 gets the meaning ... the manner points is hard-coded in the source-code, each time you kill another player, the manner point deduct by 5, then it start SC_NOCHAT status SC_NOCHAT duration is equal to how many manner point in negative value. eg: -3 manner point = 3 minutes SC_NOCHAT every 1 minute the SC_NOCHAT reduce by 1 until the manner gets back to 0 means if you kill a player, log out, the SC_NOCHAT will stay, it only reduce by staying log in if you want to change 5 minutes to 1 minute then change the ssd->status.manner -= 5; // change to 1 then just do like the SC_NOCHAT way if the sd->status.manner < -5, status_change_start whatever you need to have some understanding in source modification in order to do this