Jump to content

Emistry

Forum Moderator
  • Posts

    10013
  • Joined

  • Days Won

    396

Everything posted by Emistry

  1. *gettimetick(<tick type>) This function will return a tick depending on <tick type>: 0: The server's tick, a measurement in milliseconds used by the server's timer system. This tick is an unsigned int which loops every ~50 days. 1: The time, in seconds, since the start of the current day. 2: The system time in UNIX epoch time, or the number of seconds elapsed since January 1st, 1970. Useful for reliably measuring time intervals. it return your server time tick, not your npc time
  2. use these script command instead. *plagiarizeskill <skill_id>,<level>; Enable the player to plagiarize specific skills that are copyable. Return 1 on success, 0 otherwise. Note: - Plagiarism only able to copy skill while SC_PRESERVE is not active and skill is copyable by Plagiarism. - Reproduce can copy skill if SC__REPRODUCE is active and the skill is copyable by Reproduce. --------------------------------------- *plagiarizeskillreset <flag>; Remove a plagiarized skill from the player. Return 1 on success, 0 otherwise. Flag constants: 1 - Use for Plagiarism Skill 2 - Use for Reproduce Skill
  3. from the sample code above .@array[UMOB_CLASS] is your monster id
  4. web support is deprecated, all fluxcp issue may post here https://github.com/rathena/FluxCP/issues
  5. you may try something like this OnHour00: OnHour03: OnHour06: OnHour09: OnHour12: OnHour15: OnHour18: OnHour21: .rotd_start_time = gettimetick(2); .today_rotd = rand( .rotd_size ); .rotd_exp_bonus = rand( 10,100 ); announce "[Race of the Day] : "+.rotd$[.today_rotd]+" +"+.rotd_exp_bonus+"% exp",bc_all; delwaitingroom; waitingroom .rotd$[.today_rotd]+" +"+.rotd_exp_bonus+"% exp",0; end; OnPCLoginEvent: if (!.rotd_start_time) end; .@time_passed = gettimetick(2) - .rotd_start_time; fakeIcon(getcharid(0), .rotdicon[.today_rotd], (.timer - (.@time_passed * 1000)), 1); end;
  6. add this to your npc script OnBloodyBranch: dispbottom "MVP from bloody branch aren't included as part of mvp rank"; end; update your item_db Script: | monster "this",-1,-1,"--ja--",-1-MOBG_BLOODY_DEAD_BRANCH,1,"#mvp_kill::OnBloodyBranch";
  7. for (.@d = 0; .@d < .@len; .@d++) { if (!isloggedin(.@a[.@d])) continue; if (!getmapxy(.@map$, .@x, .@y, BL_PC, rid2name(.@a[.@d])) && .@charmap$ == .@map$) set .@c, .@c + 1; } you can try add something like this to skip offline players
  8. db/re/skill_db.yml CopyFlags: Skill: Plagiarism: true Reproduce: true
  9. - script buff_cmd -1,{ OnInit: bindatcmd "buffs", strnpcinfo(0)+"::OnCommand",0,99; end; OnCommand: if(getgroupid() <= 4) { message strcharinfo(0),"No, VIP."; end; } .@stone_time = getstatus(SC_STONE, 5); .@curse_time = getstatus(SC_CURSE, 5); skilleffect 34,0; sc_start SC_BLESSING,360000,10; skilleffect 29,0; sc_start SC_INCREASEAGI,360000,10; sc_start SC_ASPDPOTION2,360000,0; sc_start SC_STRFood,360000,10; sc_start SC_AGIFood,360000,10; sc_start SC_VITFood,360000,10; sc_start SC_INTFood,360000,10; sc_start SC_DEXFood,360000,10; sc_start SC_LUKFood,360000,10; sc_start SC_HitFood,1200000,30; sc_start SC_FleeFood,1200000,30; sc_start SC_BATKFood,1200000,10; sc_start SC_MATKFood,120000,10; if (.@stone_time > 0) sc_start SC_STONE, .@stone_time, 0; if (.@curse_time > 0) sc_start SC_CURSE, .@curse_time, 0; end; } or you could also try tricks like this to reapply the debuffs
  10. try item_db ? Flags: DropAnnounce: true
  11. currently supported, may use version 4.0 version 4.0 support bindatcmd
  12. https://rathena.org/board/files/category/3-maps-3d-resources/ https://rathena.org/board/files/category/154-general-website-templates/
  13. https://rathena.org/board/jobs_available/ https://rathena.org/board/thirdpartyservices/
  14. This topic has been moved to the "Abandoned Projects" sub-forum. If the author is still working on this project, they may request that a moderator moves the topic back and removes this post.
  15. updated it to refer to configuration in db/[pre-]re/job_noenter_map.txt
  16. OnPCLoginEvent: if (readparam(bAgi)>=150) bonus_script "{ bonus bDelayRate,-90; }", 86400, 8; end;
  17. monitor it from your map-server console would be the most ideal way. checking it from online tool aren't ideal because the version of source code from the online tool and your current source code may not match, and warn you with unnecessary errors or warnings. Hercules script checker only work up to certain extend, both emulator have a lot of different of script commands nowadays. if you just need some syntax highlight validation that help you in scripting, you can try those IDE that allow you to implement the syntax highlight or syntax validation, like notepad++, or visual studio code.
  18. acc_reg_num its stored in this table. however to reset it, its a bit tricky if there are no player online, you can safely execute the sql script to remove it from database if there are player currently online, you have to manually select each user to reset their points (of course this can be done is numerous ways) then run SQL script to remove points from those who aren't online.
  19. you can also try if (!isequippedcnt(32071,...,32128)) { mes "Lastima que no tienes ningunas Alas Quest..."; close; } or another trick that you could try - script sample -1,{ OnInit: for (.@i = 32071; .@i <= 32128; .@i++) { setitemscript .@i, "{ @eq_32071_32128++; }", 1; setitemscript .@i, "{ @eq_32071_32128--; }", 2; } end; } everytime when you equipped one of these items, it will increase a counter, when unequipped it will decrease the counter. when you want to check if a user equipped it, then do this if (!@eq_32071_32128) { mes "Lastima que no tienes ningunas Alas Quest..."; close; }
  20. perhaps start with this ? https://git-scm.com/docs/git-apply
  21. you claim you changed it to 200, but from the code snippet above, its still 100, and if you changed it, did you recompile the server too?
  22. https://rathena.org/board/thirdpartyservices/gepard-shield-30-r41/
  23. Emistry

    Unjail Npc

    there exists a default script for unjail if you are interested with it npc/custom/etc/penal_servitude.txt
  24. u can just configure it announce if its 0.50% drop rate. if you afraid other etc items will be announced, then set the minimum drop rate of other item type to 0.51% or above. u can update the item_db Flags: DropAnnounce: true
  25. OnMinute00: OnMinute20: OnMinute40: if (getmapusers("prontera") == 0) killmonsterall "prontera"; end; run every 00th, 20th, 40th minutes
×
×
  • Create New...