Jump to content

Mastagoon

Members
  • Content Count

    61
  • Avg. Content Per Day

    0
  • Joined

  • Last visited

  • Days Won

    5

Mastagoon last won the day on May 12

Mastagoon had the most liked content!

Community Reputation

24 Excellent

About Mastagoon

  • Rank
    Santa Poring
  • Birthday February 9

Profile Information

  • Gender
    Male
  • Location
    Aimia
  • Server
    Yggdrasil RO
  • Github: Mastagoon
  • Discord: Masta#4157
  • Interests
    Drinking juice

Contact Methods

Recent Profile Visitors

538 profile views
  1. View File OnPCAttackEvent This event triggers when a player character attacks another entity. And it registers the damage and other information about the attack. Example usage: // @damage holds the amount of damage dealt. // @damagegid holds the GID of the target (account ID if the target is a player). // @damagerid holds the rid of the mob OnPCAttackEvent: dispbottom "You've dealt "[email protected]+" to target with GID "[email protected]+" and RID "[email protected]; Submitter Mastagoon Submitted 05/10/2021 Category Source Modifications Video Content Author Mastagoon  
  2. use "" instead of '' "prontera", "izlude", "geffen", ...etc
  3. In .yml files, you comment by adding # before the line, not //. Alternatively you can remove the entire line aswell
  4. Keep the .map$ line as it was. Then add below it: setarray .maps$[0], 'prontera', 'izlude', 'geffen'; Then, right below the OnEventStart label, add this line: .map$ = .maps$[rand(getarraysize(.maps$))]; Now the map will be randomly chosen each time. goodluck.
  5. announce "Player "+strcharinfo(0)+" Enters the PvP Room.",bc_all|bc_blue; The line above announces it to the entire server. You want this line right above the warp script. To make the announcement only inside the pvp room: mapannounce strcharinfo(3),"Player "+strcharinfo(0)+" Enters the PvP Room.",bc_map|bc_blue;
  6. Remove the Cooldown line or comment it out from the file. If you got an error please share it to help us figure out what's wrong
  7. Here's one solution: In script.inc. Add this function at the end of the file: BUILDIN_FUNC(logout_tick) { TBL_PC *sd; if (!script_rid2sd(sd)) { script_pushint(st, -1); return SCRIPT_CMD_FAILURE; } if (sd->canlog_tick == 0) script_pushint(st, 0); else script_pushint(st, DIFF_TICK(gettick(), sd->canlog_tick)); return SCRIPT_CMD_SUCCESS; } in script_def.inc. Add this line at the end of the file: BUILDIN_DEF(logout_tick, ""), Then recompile your server. This script command will check for the same timer used to check if a player can log out or not. Basically it returns how many milliseconds ago was the character in combat. Example usage: - script testscript -1,{ OnInit: bindatcmd("testcmd", strnpcinfo(3)+"::OnAtCmd"); end; OnAtCmd: [email protected] = logout_tick(); dispbottom "You have been in combat "[email protected]/1000+" seconds ago."; if([email protected] >= 5000 || [email protected] == 0) dispbottom "Command used successfully!"; else dispbottom "You cannot use this command if you have been in combat during the last 5 seconds."; end; } Result:
  8. Version 1.0.0

    100 downloads

    This event triggers when a player character attacks another entity. And it registers the damage and other information about the attack. Example usage: // @damage holds the amount of damage dealt. // @damagegid holds the GID of the target (account ID if the target is a player). // @damagerid holds the rid of the mob OnPCAttackEvent: dispbottom "You've dealt "[email protected]+" to target with GID "[email protected]+" and RID "[email protected];

    Free

  9. What client version are you using? and is it hexed ? if so please share your NEMO hex profile. Seems like a client-side problem. Basically your server is not receiving the correct packets from the client. I don't have alot of expertise in this area, but first you should make sure the client version you're using matches the PACKETVER constant on your server side.
  10. Thank you for your contribution . I have updated the file and added a few options.
  11. Have you tried making the skills remove all OTHER elemental change statuses before applying a new one? Kinda like how the Gentle Touch skills used to work before Sura improvement. Whenever you cast one it would remove all the others first
  12. I have never seen the behavior in the second clip before. afaik, the first clip in the video reflects the correct behavior of LP.
  13. I'm assuming you mean the 5 second window where you cannot regain SP from any sources after using Asura strike. It would be much simpler to just add a 5 seconds cooldown to the skill istelf: Find the entry for MO_EXTREMITYFIST inside db/pre-re/skill_db.yml and add a 5 seconds cooldown like so: HitCount: 1 CopyFlags: Skill: Plagiarism: true Reproduce: true CastCancel: true Cooldown: 5000 <<<<<<<<<< add this line CastTime: .... However if you want the skill to behave like renewal, you need to do the following: pc.cpp: search for this line and edit it like this: //#ifdef RENEWAL <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< comment or remove this line if (sd->sc.data[SC_EXTREMITYFIST2]) sp = 0; //#endif< <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< comment or remove this line script_constants.hpp: search for SC_EXTREMITYFIST2 and edit this line: //#ifdef RENEWAL <<<<<<<<<<< comment or remove this line export_constant(SC_EXTREMITYFIST2); //#endif <<<<<<<<<<< comment or remove this line script.cpp: search for SC_EXTREMITYFIST2 and edit this line: //#ifdef RENEWAL if( sd->sc.data[SC_EXTREMITYFIST2] ) sp = 0; //#endif skill.cpp, status.hpp, status.cpp: basically you want find every occurrence of SC_EXTREMITY_FIST2 and remove the renewal condition check from it. There should be 7 occurrences inside skill.cpp, and 1 in status.hpp & status.cpp Recompile and start your server and the skill's 5s SP debuff will be active just like in renewal.
  14. Sorry for the delay, here's the correct code: - script maintown -1,{ OnInit: bindatcmd "maintown",strnpcinfo(3)+"::OnAtcommand"; end; OnAtcommand: if(gettimetick(2) < cooldowntime) { dispbottom "Please wait "+(cooldowntime - gettimetick(2))+" seconds."; end; } atcommand "@warp prontera 158 144"; set cooldowntime, gettimetick(2) + 5; end; }
  15. There is a typo in this code change gettimetic(2) to gettimetick(2) .
×
×
  • Create New...

Important Information

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