Search the Community
Showing results for tags 'scripting'.
Found 6 results
-
Status: 3/3 Slots Full(as of Aug, 12, 2024). But feel free to msg to reserve a slot. Happy Devs Website: devhappy.info Skype: mark.mogudev Discord: _hpy Starting Prices(show spoiler) Payment Schedules At least 50% of the cost must be paid before development starts. The rest of the payment must be paid before the finish work is delivered. You can pay via WESTERN UNION, PAYPAL, Crypto, or Binance USD (BUSD) Please read our Terms of Service before proceeding with any transaction and inquiry with us. Website: https://happydevs.online Skype: mark.mogudev Discord: hpy#0001 Service Reviews(from this topic itself)
- 115 replies
-
Greetings, After a long break I'm returning back to the freelancing scene, I've been in the RO private servers scene since 2012, with over 9 years of programming experience and 6 years of software development choosing me will ensure you would be getting an excellent quality of code/changes. Status: Available What do i work on? Core Development (Source, C) Scripting and database editing Database Management System Administration (Linux only) I can also work on applications written in PHP, Node.js, Python, C++. Pricing Hercules source editing starting from 10$ per request. Hercules scripting starting from 10$ per request. Hercules database editing from 5$ per request. Any other requests pricing would be calculated with 8$ per hour of work. For rush requests you will be charged a flat fee of 8USD per hour of work, a detailed bill of how many hours will be spent, the final sum and expected delivery date will be given before payment for any rush requests, and all rush requests are prepaid and can never be post paid. Contact methods Discord: Ema#8360 Payment methods Paypal Crypto (BTC/Ether only) Western Union/Money Gram Bank Wire Terms of Service With every requests you get a guaranteed Hercules compatibility for 1 year, In-case any of Hercules update during this period breaks my code you will be given an update upon request free of charge. After first year of the guaranteed compatibility period you will be charged a small fee for any updates, very simple updated may be still done for free and it's up to my judgement. In-case of paying with any other services than Crypto currency you're sole responsible of any fees the used service asks for, and that the net amount is at least equivalent to what i asked for. For medium/large projects a 50% deposit shall be paid, and it's nonrefundable as soon as i start working on it, rest being paid after project is done and delivered. Pre-made (Coming soon) Client web settings saving/emblem/adventurer agency support (Soon)
-
CLEAN SCRIPTS AND HERCULES OPTIMIZED 1. Looking for a clean script for a simple level 99 rewards. # An npc that rewards 99/70 players with a certain item # Announce on server upon receiving the reward 2. Simple hourly rewards script. #If player stay for one hour. Instant item reward on inventory. 3. Simple PVP Warper Guildvs3 #Can see player count #Announce Player going inside #DOTA-like kill announcement #PvP ladder NPC 3. Emperium Test Breaker NPC #Breaker Ladder 4. Automated Events #Dice -item reward for winners #Kill poring -item reward for winners 5. New Player Server Announcement CLEAN SCRIPTS AND HERCULES OPTIMIZED My Client 2018-04-18bRagexeRE_patched
-
Stalker NPC why is Skill() script command not working for me
Atomik posted a question in Script Support
Hey guys , So i was going through this script , i dont know who it was made by but as i'm trying to learn how to script i read whole script and try to understand how it works so i had a little doubt here please help me if u can. Here's the Script: https://pastebin.com/myhNdrkj So as this script pretty much gives u a skill and then stores the skill it gave u in "StalkerSkill" and everytime u login it checks for StalkerSkill and gives u the skill back . so it isnt lost . But problem is when u speak to the NPC in order to get a new it only checks for the skill that you obtained from NPC. So if u have a skill that You got from the NPC it will remove that skill and assign u new one . But what about the skill that a stalker copied from other player . When m doing that its stacking up 2 skills . Is there a way to fix it , and if yes how ? Please Help me out with this one Guys <3-
- stalker npc
- scripting
-
(and 3 more)
Tagged with:
-
Hi guys! I need some help with this FFA Script please. I was hoping if someone can edit it, players will have to register to the NPC and wait for a certain time for example 3mins before all registered players be warped to the FFA Arena? And if possible, to add a announcement of the winner and reset the npc after the match. Thanks in advance! // -------------------------------------// // ----------- Free For All ------------// // ------------- By: Butch -------------// // ---------- Rewrite by: Bio ----------// // A simple Free for all script // // -------------------------------------// // ------------- Changelog -------------// // 1.0 - The one made by Butch. // // 2.0 - Rewrite by Bio: // // Easy Configuration // // Use of Event Labels // // Added Min and Max Players // // -------------------------------------// // -- FFA Core - script ::ffa_core FAKE_NPC,{ end(); OnInit: // -- Configuration .WAITINGROOM_TEXT$ = "[Free For All]"; // Text to be displayed on Waiting Room .MIN_PLAYER = 5; // How many Players are needed to start .MAX_PLAYER = 0; // Maximum number of Players allowed. Must be higher than '1' (0 to disable this limit) .REWARD_PLAYER = 1; // Reward Players? Use 0 or 1 (0: off / 1: on) .REWARD_NAMEID = 25002; // Reward ID .REWARD_AMOUNT = 1; // Reward Amount .ANNOUNCE_COLOR$ = "0x00b89d"; // FFA announce's color .WINNER_DISP_COLOR$ = "0x00FFFF"; // FFA winner announce's color .ATCMD_NAME$ = "startffa"; // @name of atcommand to force start announce. .ATCMD_LEVEL = 60; // Min GroupID which can use this command. .ATCMD_CHRLV = 99; // Min GroupID which can use this char command. // -- Initializing bindatcmd(.ATCMD_NAME$,"ffa_core::OnStartEvent",.ATCMD_LEVEL, .ATCMD_CHRLV); .STATUS = 0; // Info: 0 - Off | 1 - Waiting for start | 2 - Running waitingroom(.WAITINGROOM_TEXT$, 0); end(); OnStartEvent: .STATUS = 1; announce("Free for all will start in 1 minute.", bc_all, .ANNOUNCE_COLOR$); sleep(60000); if ( getmapusers("guild_vs5") >= .MIN_PLAYER ) { for ( .@i = 5; .@i > 0; .@i-- ) { mapannounce("guild_vs5", sprintf("FFA starts in [%d]", .@i), .ANNOUNCE_COLOR$); } announce("guild_vs5", "FFA has started!! Go kill'em all!!", bc_all, .ANNOUNCE_COLOR$); .STATUS = 2; setmapflag("guild_vs5", mf_gvg); removemapflag("guild_vs5", mf_noskill); initnpctimer(); // Time Limit of 30 minutes end(); } // Else: Fall Through OnStopEvent: OnTimer1800000: stopnpctimer(); .STATUS = 0; removemapflag("guild_vs5", mf_gvg); setmapflag("guild_vs5", mf_noskill); mapwarp("guild_vs5", "prontera", 156, 149); end(); OnPCKillEvent: if ( getmapusers("guild_vs5") != 1 ) { announce(sprintf("FFA Current players - %d.", getmapusers("guild_vs5")), bc_self, .ANNOUNCE_COLOR$); } else if ( getmapusers("guild_vs5") == 1 ) { dispbottom("You are a winner of Event Free for all. Congratz!", .WINNER_DISP_COLOR$); announce(sprintf("Free For All Winner: %s", strcharinfo(0)), bc_all, .WINNER_DISP_COLOR$); getitem(.REWARD_NAMEID, .REWARD_AMOUNT); mapwarp("guild_vs5", "prontera", 156, 149); // TODO: make dest map configurable (I'm too lazy to do it now haha) donpcevent("ffa_core::OnStopEvent"); } end(); // Common end command for conditions above. OnPCLoadMapEvent: if ( strcharinfo(3) == "guild_vs5" ) { if ( getmapusers("guild_vs5") >= .MIN_PLAYER && !.STATUS ) { donpcevent("ffa_core::OnStartEvent"); } } end(); } // ------ FFA Warper -------// prontera,147,149,6 script Free For All 999,{ .STATUS = getvariableofnpc(.STATUS, "ffa_core"); .MAX_PLAYER = getvariableofnpc(.MAX_PLAYER, "ffa_core"); mes("[^FF0000Agent Mil^000000]"); mes("What do you want?"); next(); .@choice = select("Enter ^FFA500FFA Arena^000000", "Nothing"); if ( .@choice == 2 ) { mes("[^FF0000Agent Mil^000000]"); mes("Okay, see you next time."); } else if ( .STATUS > 1 ) { mes("[^FF0000Agent Mil^000000]"); mes("Entrance for Free for all is not available at the moment"); } else if ( .MAX_PLAYER > 1 && getmapusers("guild_vs5") >= .MAX_PLAYER ) { mes("[^FF0000Agent Mil^000000]"); mes("Maximum number of players reached, try again in next match."); } else { if ( getcharid(1) ) { mes("^ff0000* Please leave your party."); close; } else if ( getcharid(2) ) { mes("^ff0000* Please leave your guild."); close; } else { // TODO: Why use this coordinates if we want to warp randomly? // Isn't better replace this switch and warp with just 'warp("guild_vs5", 0, 0);'? switch (rand(3)) { case 0: .@x = 18; .@y = 50; break; case 1: .@x = 50; .@y = 77; break; case 2: .@x = 81; .@y = 49; break; case 3: .@x = 49; .@y = 22; break; } warp("guild_vs5", .@x, .@y); } } close(); // Common close command for all conditions above. } // -- Mapflags guild_vs5 mapflag loadevent guild_vs5 mapflag partylock guild_vs5 mapflag guildlock guild_vs5 mapflag notrade guild_vs5 mapflag nodrop
-
- battleground
- FFA
-
(and 2 more)
Tagged with:
-
Hindi ko po alam kung ano ang error. kasi wala pong nakalagay sa emulator, pero pag nag execute na po yung script in-game, nasstuck yung char at hindi makalakad. naisip ko po na baka sa logic error kasi gumanana naman yung code for VIP: - script Healer 4_F_NURSE,{ .@Price = 10000; // Zeny required for heal .@Buffs = 1; // Also buff players? (1: yes / 0: no) .@Delay = 5; // Heal delay, in seconds if ( @HD > gettimetick(2) ) { dispbottom "You have to wait for : 5 Seconds before another use."; end; } if(getgroupid() > 5) { if ( BaseLevel <= 50 ) { goto VIP_LOWLVL_BUFFS; } else { goto VIP_BUFFS; } if (.@Delay) @HD = gettimetick(2) + .@Delay; end; } else { if ( BaseLevel <= 50 ) { message strcharinfo(0), "Healing costs " + callfunc("F_InsertComma",.@Price) + " Zeny."; if (select("^0055FFHeal for 10,000z^000000:^777777Cancel^000000") == 1 && Zeny >= .@Price) { Zeny -= .@Price; goto NORMAL_LOWLEVEL_BUFFS; } if (Zeny < .@Price) { message strcharinfo(0), "Not enough Zeny."; end; } end; } else { message strcharinfo(0), "Healing costs " + callfunc("F_InsertComma",.@Price) + " Zeny."; if (select("^0055FFHeal for 10,000z^000000:^777777Cancel^000000") == 1 && Zeny >= .@Price) { Zeny -= .@Price; goto NORMAL_HIGHLEVEL_BUFFS; } if (Zeny < .@Price) { message strcharinfo(0), "Not enough Zeny."; end; } end; } if (.@Delay) @HD = gettimetick(2) + .@Delay; end; } VIP_LOWLVL_BUFFS: //Food buffs specialeffect2 EF_FOOD01; sc_start SC_FOOD_STR, 360000, 10; specialeffect2 EF_FOOD03; sc_start SC_FOOD_AGI, 360000, 10; specialeffect2 EF_FOOD02; sc_start SC_FOOD_VIT, 360000, 10; specialeffect2 EF_FOOD02; sc_start SC_FOOD_INT, 360000, 10; specialeffect2 EF_FOOD04; sc_start SC_FOOD_DEX, 360000, 10; specialeffect2 EF_FOOD05; sc_start SC_FOOD_LUK, 360000, 10; //Buffs specialeffect2 EF_BLESSING; sc_start SC_BLESSING, 360000, 10; specialeffect2 EF_INCAGILITY; sc_start SC_INC_AGI, 360000, 10; specialeffect2 EF_ANGELUS; sc_start SC_ANGELUS, 360000, 10; specialeffect2 EF_GLORIA; sc_start SC_GLORIA, 360000, 5; specialeffect2 EF_MAGNIFICAT; sc_start SC_MAGNIFICAT, 360000, 5; specialeffect2 EF_ASSUMPTIO; sc_start SC_ASSUMPTIO, 360000, 5; specialeffect2 EF_IMPOSITIO; sc_start SC_IMPOSITIO, 360000, 5; specialeffect2 EF_SUFFRAGIUM; sc_start SC_SUFFRAGIUM, 360000, 3; specialeffect2 EF_KYRIE; sc_start SC_KYRIE,360000,10; specialeffect2 EF_HEAL2; percentheal 100,100; end; VIP_BUFFS: //Buffs specialeffect2 EF_BLESSING; sc_start SC_BLESSING, 360000, 10; specialeffect2 EF_INCAGILITY; sc_start SC_INC_AGI, 360000, 10; specialeffect2 EF_ANGELUS; sc_start SC_ANGELUS, 360000, 10; specialeffect2 EF_GLORIA; sc_start SC_GLORIA, 360000, 5; specialeffect2 EF_MAGNIFICAT; sc_start SC_MAGNIFICAT, 360000, 5; specialeffect2 EF_ASSUMPTIO; sc_start SC_ASSUMPTIO, 360000, 5; specialeffect2 EF_IMPOSITIO; sc_start SC_IMPOSITIO, 360000, 5; specialeffect2 EF_SUFFRAGIUM; sc_start SC_SUFFRAGIUM, 360000, 3; specialeffect2 EF_KYRIE; sc_start SC_KYRIE,360000,10; specialeffect2 EF_HEAL2; percentheal 100,100; end; NORMAL_LOWLEVEL_BUFFS: //buffs specialeffect2 EF_BLESSING; sc_start SC_BLESSING, 360000, 10; specialeffect2 EF_INCAGILITY; sc_start SC_INC_AGI, 360000, 10; specialeffect2 EF_ANGELUS; sc_start SC_ANGELUS, 360000, 10; specialeffect2 EF_GLORIA; sc_start SC_GLORIA, 360000, 5; specialeffect2 EF_MAGNIFICAT; sc_start SC_MAGNIFICAT, 360000, 5; specialeffect2 EF_ASSUMPTIO; sc_start SC_ASSUMPTIO, 360000, 5; specialeffect2 EF_IMPOSITIO; sc_start SC_IMPOSITIO, 360000, 5; specialeffect2 EF_SUFFRAGIUM; sc_start SC_SUFFRAGIUM, 360000, 3; specialeffect2 EF_HEAL2; percentheal 100,100; end; NORMAL_HIGHLEVEL_BUFFS: //buffs specialeffect2 EF_BLESSING; sc_start SC_BLESSING, 360000, 10; specialeffect2 EF_INCAGILITY; sc_start SC_INC_AGI, 360000, 10; specialeffect2 EF_ANGELUS; sc_start SC_ANGELUS, 360000, 10; specialeffect2 EF_GLORIA; sc_start SC_GLORIA, 360000, 5; specialeffect2 EF_MAGNIFICAT; sc_start SC_MAGNIFICAT, 360000, 5; //specialeffect2 EF_HEAL2; percentheal 100,100; end; }