Jump to content

Oxxy

Members
  • Content Count

    142
  • Joined

  • Last visited

  • Days Won

    5

Everything posted by Oxxy

  1. 1,2) you could use my mod its outdated tho, but if you have some skills, it will be easy to you, and then you could use 2 new variables to manage player's exp. :> 3. when you give item do something like expireDate = gettimetick(2) + (3600 * 24 * 7); then OnPCLoginEvent:if(expireDate <= gettimetick(2)) { delitem <item_id>,<amount>; dispbottom "Your item has expired"; end;} also you could use rentitem. 4) OnPCBaseLvUp:if(BaseLevel == 255 && JobLevel == 150) delitem <item_id>,<amount>;
  2. //===== Hercules Script ======================================//= Stylist//===== By: ==================================================//= Euphy//===== Current Version: =====================================//= 1.1//===== Description: =========================================//= Changes your hair style, hair color, and cloth color.//===== Additional Comments: =================================//= 1.1 Switched to 'getbattleflag', credits to Saithis. [Euphy]//============================================================prontera,170,180,1 script Stylist#custom_stylist 2_M_DYEINGER,{ setarray .@styles[1],getbattleflag("max_cloth_color"),getbattleflag("max_hair_style"),getbattleflag("max_hair_color"); setarray .@Look[1],7,1,6; set .@s, select("~ Hairstyle: ~ Hair color"); set .@Revert, getlook(.@Look[.@s+1]); set .@style,1; while(1) { setlook .@Look[.@s+1], .@style; message strcharinfo(0),"This is style #"+.@style+"."; set .@menu$, " ~ Next (^0055FF"+((.@style!=.@styles[.@s+1])?.@style+1:1)+"^000000): ~ Previous (^0055FF"+((.@style!=1)?.@style-1:.@styles[.@s+1])+"^000000): ~ Jump to...: ~ Revert to original (^0055FF"+.@Revert+"^000000)"; switch(select(.@menu$)) { case 1: set .@style, ((.@style!=.@styles[.@s+1])?.@style+1:1); break; case 2: set .@style, ((.@style!=1)?.@style-1:.@styles[.@s+1]); break; case 3: message strcharinfo(0),"Choose a style between 1 - "+.@styles[.@s+1]+"."; input .@style,0,.@styles[.@s+1]; if (!.@style) set .@style, rand(1,.@styles[.@s+1]); break; case 4: set .@style, .@Revert; setlook .@Look[.@s+1], .@Revert; break; } }} try this, not sure if it will work correctly tho
  3. 5 hours ( 60 seconds * 60 minutes * 5 ) Btw, better do it that way (waitingroom): OnInit:delwaitingroom;waitingroom "Bossnia MVP",0;end;} either way map server will throw warnings every time you @reloadscript Btw, for saying Thanks there is "Thumbs up" (green) button :>
  4. got another error.. @@Oxxy Sorry, wrong place to place right curly. Delete the one I said to you and add it here: }else{ set zeny,zeny-50000000; warp "bossnia_0" + .@choice,202,204; set #delay,#delay + ( 3600 * 5 );}end; after end; so it will be like this: }else{ set zeny,zeny-50000000; warp "bossnia_0" + .@choice,202,204; set #delay,#delay + ( 3600 * 5 );}end;}
  5. In your script, after line bossnia_04,142,61,1,1 boss_monster Ifrit 1832,1,7200000,0,0 add right curly }
  6. Here it is, bro: prontera,150,150,6 script Aura NPC 700,{ mes "[Aura NPC]"; mes "Please choose an aura from the list!"; switch(select("Aura 1:Aura 2:Aura 3:Aura 4: Aura 5: Aura 6")) { case 1: next; mes "[Aura NPC]"; mes "Your Aura was set to #1"; aura 586,-1,-1; close; case 2: next; mes "[Aura NPC]"; mes "Your Aura was set to #2"; aura 586,362,-1; close; case 3: next; mes "[Aura NPC]"; mes "Your Aura was set to #3"; aura 586,362,240; close; case 4: next; mes "[Aura NPC]"; mes "Your Aura was set to #4"; aura 418,-1,-1; close; case 5: next; mes "[Aura NPC]"; mes "Your Aura was set to #5"; aura 486,-1,-1; close; case 6: next; mes "[Aura NPC]"; mes "Your Aura was set to #6"; aura 485,-1,-1; close; }}
  7. You're missing 1 right curly, add it on line 292 after bossnia_04,142,61,1,1 boss_monster Ifrit 1832,1,7200000,0,0
  8. Oxxy

    Asura SP Cap

    Actually this will be right: unsigned int ratio = skillratio + 100*(8 + st->sp/10); //You'd need something like 6K SP to reach this max, so should be fine for most purposes. if (ratio > 60000) ratio = 60000; //We leave some room here in case skillratio gets further increased. means if you have 6k sp the formula will be: skillratio + 100*(8+6000/10) = skillratio + 100*608 = skillratio + 60800
  9. change this: if (zeny < 50000000) { mes "[Riss]"; mes "You don't have enough money..."; mes "Come back when you get at least 50,000,000 zeny."; close; } into this: if (countitem(673) <10) { mes "[Riss]"; mes "You don't have enough items"; mes "Come back when you get "+(countitem(673) - 10)+" more "+getitemname(673)+"."; close; } and then change this: set zeny,zeny-50000000; warp "bossnia_0" + .@choice,202,204; set #delay,#delay + ( 3600 * 5 ); into this: delitem 673,10; warp "bossnia_0" + .@choice,202,204; set #delay,#delay + ( 3600 * 5 );
  10. Oxxy

    Battle Log System

    Maybe I could help you doing that
  11. in this part: if (getequippercentrefinery(.@part) > rand(100) || getequippercentrefinery(.@part) > rand(100)) { successrefitem .@part; next; emotion e_no1; mes "[Blacksmith Mighty Hammer]"; mes "The sound refreshes my mind everytime I hear it."; mes "Here, have it. Refine succeeded flawlessly!"; close; } change to that: if (getequippercentrefinery(.@part) > rand(100) || getequippercentrefinery(.@part) > rand(100)) { successrefitem .@part; if(getequiprefinerycnt(.@part) == 12) announce strcharinfo(0)+" refined item "+getitemname(getequipid(.@part))+" to the +12 state!",bc_all; next; emotion e_no1; mes "[Blacksmith Mighty Hammer]"; mes "The sound refreshes my mind everytime I hear it."; mes "Here, have it. Refine succeeded flawlessly!"; close; }
  12. Its a bug and already reported. Wait to get it fixed :-)
  13. SELECT * FROM 'char' WHERE 'account_id' = account_id; You can't find info about deleted chars.
  14. Correct me if I am wrong, but I think OnPCDieEvent won't work inside function. Not sure about it, I've created that back in 2012?~
  15. We had this done a while ago, check my signature.And yours code is really messy.
  16. Because of this Great, a feature to remove gm sprites in game, now make a command to put them back It does remove it only for a short amount of time and other players see you using GM sprite anyway :-)
  17. Building plugins under Windows Building plugins under Linux What this plugin does?: It allows you to make your chat colored! New commands: 2 script commands:*color2hex(var) - converts the decimal value into hex, showing the color in #HEXFORMAT (like #FF0000);*setcolor(var) - sets CHAT_COLOR variable to var value; @color "HEX_COLOR";example usage: @color 0x0000FF - will set your chat color to Blue. Changelist: version 1.0: initial release Screenshots: Added other version of chat_color, now it doesn't disguise you and make you targetable, tho you can't see by yourself the color of your chat. That is done this way because the packet 0x2C1 actually was made to be used only by npcs. For you it will look like normal (green in chat, white above the head), others will see the true color(red, for example, if you set your @color 0xFF0000). :-) Example script to set color: prontera,150,150,6 script chat color 700,{ mes color2hex(CHAT_COLOR); mes CHAT_COLOR; if(select("close:set color value") == 1) close; input .@a$; setcolor(axtoi(.@a$)); close;} chat_color.c chat_colorA.c
  18. kay, here you go: download VertrigoServ (ye, you could use clean mySQL, tho i prefer installing vertrigo). Just google for it. After you installed, download server from GIT using TortoiseGIT, if its server for localhost, you don't actually need to change that s1/p1 account and password. then go to conf folder, open map-server.conf uncomment this: char_ip: 127.0.0.1map_ip: 127.0.0.1 save, close. open char-server.conf uncomment this: login_ip: 127.0.0.1char_ip: 127.0.0.1 save, close. open inter-athena.conf scroll till the sql settings, put everywhere in account field: rootpassword field: vertrigodb field: ragnarok then open browser, type 127.0.0.1, go to PHPMyAdmin, type in root / vertrigo (acc / pass) create new db ragnarok and import main.sql + log.sql files from server/sql folder. now go to server/src/common/mmo.h and find this lines: #ifndef PACKETVER #define PACKETVER 20131223#endif // PACKETVER change the date to yours EXE date. recompile server. Now the server side is ready :-) (if i didn't miss anything)
  19. The problem in your script is that last_map isn't getting updated real time so some of players may not get the items. -- oh, I see your solution, tho that's madness, imagine server with 200 online. Query'll load server a lot. correct line: .@size = query_sql("select account_id form `char` where online = 1 and last_map ='"+strcharinfo(3)+"'",.@aid); have to be .@size = query_sql("select account_id FROM `char` where online = 1 and last_map ='"+strcharinfo(3)+"'",.@aid);
  20. Give players stuff © Oxxy, 2015, v 1.2 Changelist: v1.0 Initial release v1.1 fixed some typos, should be working correct now. v1.2 no variable can be set via function, deleted that. Syntax: callfunc "New_Player", <JOB_ID>, <BASE_LEVELS>, <JOB_LEVELS>, <ZENY>, <STATUS_POINTS>, <SKILL_POINTS>, <I1>,<I1A>, <I2>,<I2A>, <I3>,<I3A>, <I4>,<I4A>; IX stands for Item ID X IXA stands from Item ID X Amount Example usage in scripts: callfunc "New_Player", 1, 15, 10, 5000, 0, 0, 4001, 1, 7227, 2, 607, 3, 0, 0; example above will give player Swordman job, 15 base levels, 10 job levels, 5000 zeny, 0 status points, 0 skill points, and items Poring card x1, TCG Card x2, Ygg. berry x3 and the 4th item won't be given. Useful to create starter NPCs fast. PLEASE, USE ONLY LATEST SCRIPT. (LAST VERSION: 1.2) give_players_stuff1.2.txt
  21. You gotta compile plugin, because there's no efficient way to attach every player on map. Use @itemmap/getitem_map
  22. You could also use something like this: -<tab>script<tab>MVPoints<tab>-1,{OnNPCKillEvent:switch(killedrid) { case MVPID:case MVPID1:case MVPID2:and so on...#MVPPoints += 1;dispbottom "You've gained 1 MVP Point for killing MVP!";end;} Adding multiple locations to script above: OnNPCKillEvent: // EDDGA if ( getmonsterinfo( killedrid, MOB_MVPEXP ) && (strcharinfo(3) == "pay_fild11" || strcharinfo(3) == "OTHERMAP" || strcharinfo(3) == "OTHERMAP1")) { set #CASHPOINTS, #CASHPOINTS + 10; end; }
  23. That can be useful on high level servers, where you level up really fast, that makes people level up a bit more if they don't like the bonus they've got. On standart server (99/70, 150/80) this script won't be any useful, because the leveling up process is really frustrating. Tho you can just give a fixed amount of status points. Didn't know about that, ty for pointing that out :-) -- Script updated. Check version 1.1.1
×
×
  • Create New...

Important Information

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