Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 02/06/13 in all areas

  1. these are mostly unpopular scripts that probably not getting a lot of replies more popular ones will be in separated topics getitemname2 function for the moment use version 2.4 Global Function PS: why am I getting rep even before I make any release ? O.O
    2 points
  2. You got it. All for(), while(), switch(), if, else, internal func(), ... are converted to label + goto/callsub + jump_zero on runtime. But for keep the script readable it's better to not write the whole script using the low level statement (except if you have reasons like optimizations) doevent, donpcevent are used to run another script instance. It's often used to start action on other script. Example: a script to manage all games in your server: mes "Select the event to start"; switch( select("Capture the Flag","Nyan Cat Catcher", "First Man Dying") ) { case 1: donpcevent "ctf::OnStartEvent"; break; ... } It's good to know that donpcevent will run the script after yours end (it's not multi-thread), to run it after continue you have to pause the script donpcevent "todo::OnLol"; sleep2 1; // execute todo::OnLol before continue. dowtfyouwant; And functions/callsub I think you know them, it's used to avoid redundant, have fun with arguments, and return to the main script when finished. Good luck for your project
    2 points
  3. Look up commands you're unsure about in trunk/doc/script_commands.txt.
    2 points
  4. @curiosity Thanks a lot for adding how to apply the change for other client dates! I believe that for now, this will be enough to begin leading this project now to the community uses. At least until Ai4rei takes his time to make a plugin for the patcher mentioned before. (In case he considers to do it of course) Some words: It was the 2011 year when my partner wondered how to add custom GR2 mobs. Almost 2 years later, by the contribution of very generous and great people below, this is finally possible: Doss, Ricky92, Ai4rei, curiosity, Lemongrass, Shinryo, Yommy, Greenbox Without the help of these guys, and of course the support of all those members here, this would not be possible now. Very special thanks to Ricky92 that, even by being from another community that doesn't has to do with ragnarok he accepted gladly to help us, and to release this so necessary tool for free. Finally we can tell, that yes, this project can be marked as "Done"!, and now, the best part comes: Let the community learn from it, and begin a development in a very special area in graphics that has never existed before in the past years, due to the limitations you already know. This will not be easy, but I truly believe that people will be interested if enough basic elements as guides/resources are added in a specific forum for it. In gratitude to all, I will try do my best to make the above be possible, and for now, I'm aiming to submit a thread were the staff will consider to add or not, this forum we are talking. Thank you all. And you are invited to take a look into the graphics forum in time to see the results of all the possibilities that now we have, with this great addition to us.
    2 points
  5. Yes sure I'll make a suggestion: Washi of Earthbound RO would you stop copying everything in your sight as if they are your free inventory? You mean "Ive been working [copying] the past few weeks on a toplist for the RO community" This is not a "project", this is a [i don't know what to call this] made by a copycat thick faced sucker. No I don't care you are a voting or review site. As long as you write your own stuff. Let see: Are you too stupid or lazy to create your own forum section, sub-section and even the forum descriptions? What's the deal? Screenshot from http://forum.ratemyserver.net/: http://misc.ratemyse...01-22-12-28.jpg Screenshot from http://www.forums.ratemyro.com/ : http://misc.ratemyse...01-22-13-23.jpg That's not enough, you went ahead and copied everything from image to instruction directly from http://ratemyserver.....php?type=10000 Stolen: http://www.forums.ra...topic,23.0.html == ss: http://misc.ratemyse...02-01-38-35.jpg From my website: http://ratemyserver....10000&qid=10030 Stolen: http://www.forums.ra...topic,15.0.html == ss: http://misc.ratemyse...02-01-39-42.jpg From my website: http://ratemyserver....10000&qid=10029 Stolen: http://www.forums.ra...topic,14.0.html == ss: http://misc.ratemyse...02-01-40-12.jpg From my website: http://ratemyserver....10000&qid=10004 Stolen: http://www.forums.ra...topic,38.0.html my website: http://ratemyserver....10000&qid=10014 Stolen: http://www.forums.ra...topic,37.0.html my website: http://ratemyserver....10000&qid=10011 Stolen: http://www.forums.ra...topic,36.0.html my website: http://ratemyserver....10000&qid=10039 Stolen: http://www.forums.ra...topic,35.0.html my website: http://ratemyserver....10000&qid=10005 Stolen: http://www.forums.ra...topic,34.0.html my website: http://ratemyserver....10000&qid=10024 Stolen: http://www.forums.ra...topic,33.0.html my website: http://ratemyserver....10000&qid=10022 Stolen: http://www.forums.ra...topic,32.0.html my website: http://ratemyserver....10000&qid=10043 Stolen: http://www.forums.ra...topic,31.0.html my website: http://ratemyserver....10000&qid=10050 Stolen: http://www.forums.ra...topic,30.0.html my website: http://ratemyserver....10000&qid=10021 Stolen: http://www.forums.ra...topic,29.0.html my website: http://ratemyserver....10000&qid=10009 Stolen: http://www.forums.ra...topic,28.0.html my website: http://ratemyserver....10000&qid=10017 Stolen: http://www.forums.ra...topic,26.0.html my website: http://ratemyserver....10000&qid=10045 Stolen: http://www.forums.ra...topic,25.0.html my website: http://ratemyserver....10000&qid=10049 Stolen: http://www.forums.ra...topic,24.0.html my website: http://ratemyserver....10000&qid=10047 Stolen: http://www.forums.ra...topic,22.0.html my website: http://ratemyserver....10000&qid=10012 Stolen: http://www.forums.ra...topic,21.0.html my website: http://ratemyserver....10000&qid=10001 Stolen: http://www.forums.ra...topic,20.0.html my website: http://ratemyserver....10000&qid=10023 Stolen: http://www.forums.ra...topic,18.0.html my website: http://ratemyserver....10000&qid=10018 Stolen: http://www.forums.ra...topic,17.0.html my website: http://ratemyserver....10000&qid=10002 Stolen: http://www.forums.ra...topic,16.0.html my website: http://ratemyserver....10000&qid=10040 Stolen: http://www.forums.ra...topic,13.0.html my website: http://ratemyserver....10000&qid=10046 Stolen: http://www.forums.ra...topic,12.0.html my website: http://ratemyserver....10000&qid=10019 Stolen: http://www.forums.ra...topic,11.0.html my website: http://ratemyserver....10000&qid=10008 Stolen: http://www.forums.ra...topic,10.0.html my website: http://ratemyserver....10000&qid=10031 Stolen: http://www.forums.ra.../topic,9.0.html my website: http://ratemyserver....10000&qid=10032 Stolen: http://www.forums.ra.../topic,8.0.html my website: http://ratemyserver....10000&qid=10015 Stolen: http://www.forums.ra.../topic,7.0.html my website: http://ratemyserver....10000&qid=10044 Stolen: http://www.forums.ra.../topic,6.0.html my website: http://ratemyserver....10000&qid=10010 Stolen: http://www.forums.ra.../topic,5.0.html my website: http://ratemyserver....10000&qid=10033 Stolen: http://www.forums.ra.../topic,4.0.html my website: http://ratemyserver....10000&qid=10033 Stolen: http://www.forums.ra.../topic,4.0.html my website: http://ratemyserver....10000&qid=10003 Stolen: http://www.forums.ra.../topic,3.0.html my website: http://ratemyserver....10000&qid=10027 Stolen: http://www.forums.ra...topic,42.0.html http://www.forums.ra...topic,41.0.html From my website: http://ratemyserver....10000&qid=10048 Stolen: http://www.forums.ra...topic,40.0.html http://www.forums.ra...topic,39.0.html From my website: http://ratemyserver....10000&qid=10020 I do believe you plan to copy the rest of my quest database seeing you have the sub-sections setup exactly like the sections I have for my quests: http://misc.ratemyse...02-01-37-32.jpg (refer to: http://ratemyserver.net/quest_db.php) If you really do then that just prove you are as I described. You didn't miss any chance to be lazy and take free content everywhere. I don't know how you can even copy my advertisement text ... http://www.ratemyro.com/advertise/ == screenshot: http://misc.ratemyse...02-01-20-09.jpg ^ is basically a combination of text taken from: http://ratemyserver....vertise_low.php and the bottom part of http://ratemyserver.net/advertise.php Are you done with your "How far can I copy marathon" yet? If you can still call this "your project" I demand answer to all of the infringement above. Btw, you sent a total of at least 450 pm spams in RMS forum + eAthena forum + rAthena forum (about 150 each forum, Paradox924x / Maki / Me can tell you this is true). A couple hundred spam on the facebook pages/ facebook pm / chatango chatbox of various servers no matter dead or alive. What else you wouldn't do to promote this sucker? Maybe something like this too http://rathena.org/board/topic/77072-webdesigns-no-coding/page__p__171123#entry171123 ? I sure hope the graphic people don't fall for it. Stop copying at my expense. Use your brain. I have never met such a pok kai in my life. I should appreciate Ancyker more.
    2 points
  6. Active Members: Doss, Ricky92, Olrox, Ai4rei, curiosity, Lemongrass Supporters And Special Thanks to: Shinryo, Yommy, Greenbox Briefing & Concept Greetings Let me introduce myself. I'm Doss, from Thailand. Olrox is my friend and he accepted gladly to join. He accepted to keep this thread updated In case you wonder why he is edit this thread. For a long time I have been involved into RO -graphic related- stuff. Some people might remember my works with 3D editions, Sprites, Maps, etc. Today I'm glad to announce an open project, were all the people with the skills in RO client stuff (hex, packets etc)/ 3D designers/ Enthusiast / Supporters/Scripters are welcome to join. Back to the project itself: For years since eAthena emulator exists, we have been witnesesses of great progress in this emulator.... scripts, source, maps, sprites, etc. All this progress have been possible this far with the enormous contribution of a lot of people. Now, we are happy to try a new feature that for years, it has not t been possible to add it in the RO private history. I'm talking about the possibility to Add Custom 3D Monsters in Ragnarok. All we know what the emperium is. You might know that that kind of model, is an animated 3D one.... with the possibility to walk, attack, die, or whatever you wish. Other examples of this kind of monsters are: War of Emperyum Guardians, War of Emperyum Flags, etc. As those monsters, our intention with this project is to do the same, but, with outsides resources available in this format, that can be implemented to being used in RO. With this being said as a briefing;. We proceed to explain this project. Terminology Common words that you will encounter with on this thread. Granny2.dll: Granny external library, allways included in every instalation pack of Ragnarok Online. Ragnarok Version: 2.1.0.5 Granny SDK: Granny development tool kit. Only for those who pays the granny license that is around $10,000.- and for serious Official licensed Games. Granny Viewer: Free software that allows you to view a full gr2 model, with his animations/bones/skins/textures. .gr2: Granny extension for gr2 models. About the Project Basically the idea of the project is, making possible to use Granny animated Models, from recent versions, to being imported into the particular old Ragnarok version one that is: 2.1.0.5 Our main problem since almost a year, is the fact that RO can only work with exactly that version, and obtaining a Granny SDK from that date, is an impossible thing. Since the file is from the far 2000~2003 year. Even, if you have 10,000k dollars to buy it, you will get only the lastest versions (this year) and, getting the lastest version is truly impossible. Luckily we could find that RIcky92 did a tool to import granny newer versions to older ones. We asked him to join our project and he accepted gladly to develop the same tool, but now adapted to RO granny 2.1.0.5 version. Right now, our state is very early, and we are contacting people to join this project.... but the most important thing is, we we are waiting for the feedback of the community. Since this tool will be released for free, then, we really need to see if the community is interested for such a tool like this one. All the people that is interested, or, thinks that this is going to be a good hit, please, post it. A single post encourages all of us, to work on this. Screenshots/Videos and Examples Old video! Wait for the updated one that shows now animation added to custom mobs ids in LUAs Changelog 2013/January: Curiosity sucessfully releases a 2012-04-10a client able to read full animations of custom GR2 mobs. 2013/January: Ai4rei joins and explains how the granny structure works inside the client. He also points a restriction of the actual RO clients that are not showing animation for WoE Flags. 2013/January: Yommy shares a very useful ragnarok debug client resources to the team. 2013/January: Lemongrass joins the team. 2013/January: After some tests, the team realized that it is truly necessary to include people with the skills to dissamble the client functions. Curiosity Joins and adds a hex change which fixes the animation indexes for custom mobs IDs besides the standing animation. This files of custom 3D mobs are released. 2013/January: Olrox continues his tests and now adds a video about animation with bones present. Our issue: It is only possible by replacing a existing gr2 ID in the client. 2013/January: Olrox begins looking at how animation is handled in the gr2 files of Ragnarok Online. After some tests the first video with the default animation present is released. 2013/January: Olrox finds some issues with multi mesh support, which Ricky92 finds a great solution for it. 2013/January: Doss asks Olrox his full atention to the further graphic tests of the project. Due to real life and university, he might be a little away from the project from now. 2013/January: Doss shows a static animated mob imported from RO 2 GoW 3D mob, thanks to the Granny Converter of Ricky92 2013/January: Doss test the tool. Some errors and issues are pointed to Ricky92 who releases a second Beta of his amazing tool. 2013/January: Project gets back. Ricky92 finally releases the Granny Converter tool as a beta state. 2012/November: After a lot of inquiries from the community, Olrox explains that the project is still alive, and Ricky92 is very busy in real life terms. Project is on hold. 2012/October: Ricky92 continues with the tool which is now in a final state. Donation info for ricky92 is added, as an appreciation to his time to this community. 2012/September: Doss adds handy info about how gr2 mobs are recalled by the client. And add a example of it. 2012/September: Greenbox adds useful info about Granny 2.1.05 functions regarding Animation Indexes 2012/September: Ricky92 begins to test animation support for his converter. 2012/September: Ricky92 fix this issue with his converter and now adds support for bink 0 compression. A fox is released for testing and works pretty well. 2012/September: Ricky92 releases a testing pyramid .gr2 no animated mob converted mob thanks for his tool. After some tests, Ricky92 realized that Granny 2.1.0.5 doesn't support bink 1 compression in textures. 2012/August: Ricky92 shows the first known screen of a custom 3D animated resource imported sucesfully from Granny 2.4 to granny 2.1.0.5 2012/August: Doss notices that someone developed a converter for further Granny Versions (for another game, that is not RO) Olrox contacts Ricky92, a well known contributor in the metin2 Game Community, developer of the Granny Converter for that version. He accepted and joined our team gladly. 2012/August: Project is finally released to the public. Shinro helped with some commits and ideas about the Granny 3D version limit. Yommy joins and accepted gladly to do some tests about bypassing the Granny verification. 2012/June: The idea of this project takes Olrox's atention and he accepted to join. Also he suggested to launch this project openly. 2011/August: Doss (Also known as Charamel, Lemara) does his first tests and begin to ask for support in eAthena Attached Files and Useful Links Granny.rar 3dmobtest.grf
    1 point
  7. Thanks for your interest in this guide. The main purpose of all these lines is, to have an -advance level- resource for those guys that wish to go further with their map creations. This guide will cover a useful amount of guides that has never been out there before. Yes, this is a compilation of things I have learned so far until this day; there is more mapping than just learning browedit! Requirements You have already read Aeries Browedit tutorial ---> http://rathena.org/b...e-for-browedit/ You have completely learned Syouji Browedit Tutorial ---> http://rathena.org/b...utorial-videos/ You already have experience with mapping. More than just edit maps, I mean, building your own. You have experience doing -re texturizing- Ragnarok Models and you are able to make your browedit read them You are capable to use Image Editors. Photoshop, GIMP, ... whatever. Probably just the basics, like flipping images or cutting an image. Please... Don't ask for support if you have not fullfilled the previous points I'm listing here. Another point: This guide will not contain links to download copyright software. Here, I will only list the software you will need to follow the video tutorials I will add... it is up to you too obtain this software by purchasing it, or Google it. GR2 Granny Custom 3D models in RO Watch in Full Screen at 1080p About: "An example of how you can add your own custom 3D GR2 models as mobs in Ragnarok Online just like the WoE Guardians or the emperium. You can add them as mobs, or even as NPC. Software Requirements: Granny Pack: https://dl.dropboxusercontent.com/u/52175822/Granny.rar Granny Converter: http://rathena.org/board/files/file/3022-granny-converter-by-ricky92/ Umodel: http://www.gildor.org/downloads ActorXImporter: http://www.gildor.org/projects/unactorx RO2 GoTW: https://mega.co.nz/#F!tQwyQCTD!JNEehQnbvdl6Ww5JYo3Kcg If you want to only do a quick test maybe you can download directly the Mejonora already extracted: https://dl.dropboxusercontent.com/u/52175822/mejonora_test.rar Tips & Troubleshoting: FBX to RSM Animated Models Watch in Full Screen at 1080p About: "Importing and doing your own animated RSM Models now it is possible.." Software Requirements: RSMConverter 3.0 by @xarple ---> LINK FBX Converter 2013.3 by Autodesk ---> LINK 3DS Max 2013 or More RSW and GND Maps into FBX Watch in Full Screen at 1080p About: "Think about the possibilities you can have by importing whole Ragnarok Maps and be able to edit them with the all powerful 3DS Max design tool" ... transform ground shapes, into complex structures with curves presents for ex. modify vertices structures of map areas, etc." Software Requirements: ROMAPCONV9 by Xarple LINK FBX Converter by Autodesk LINK 3DS Max 2012 or More Importing and Editing RSM Models into 3DS Watch in Full Screen at 1080p About: "You might know that it is possible to Import 3DS to RSM ... But how about the reverse of this? In this tutorial you will learn How to Import RSM to 3DS And open your possibilities to do complex editions to default Ragnarok Models" Software Requirements: Browedit 3D Object Converter any version. 3DS Max 7 or more. I use ver 9 here. I will try to keep this tutorial updated. Volume 1 is ready, and Volume 2 is under progress... Any Inquiries, suggestion or... thanks! are very well appreciated, and will keep me motivated to add more and more videos of all of these things I have learned in years with a lot of effort!. Thanks to all and don't forget to follow this thread. Have a nice day.~
    1 point
  8. This small modification allow you to manage damage of skills. Request: this topic Ver.2.1: patch updated. You can change the skill damage in file db/skill_damage_db.txt (skill_damage.txt) Version 1.1: added more options for manage skills damage on specific mapflags ( QQfoolsorellina'sSuggestion ) Version 2.0: added map bitflag ( Lighta's Suggestion ) Version 2.1:(Updated 2.0) Skill_damage_v1.1.patch Manage_Skill_Damage_2.0.patch manage_skill_damage_v2.1_rAthena17121.patch
    1 point
  9. Second 3D topic! I wanted to share some of the 3D works I've been working on. They are non RO-related, but except for the tank, they could be used in RO (since they are low-poly) 3D max render Marmoset Toolbag render 3d max render And that's it . I'm currently working in a tower:
    1 point
  10. I learned something new today! If it's that easy, we should change movenpc to allow "map",x,y Edit: I searched /npc and it's only used in 1 script, so the main issue would be notifying users of the change so they can update their custom scripts. Search "movenpc" (2 hits in 1 file) D:\svn\rathena\trunk\npc\pre-re\other\arena\arena_room.txt (2 hits) Line 762: movenpc "#arena_"+$@arenapic+"",96,28; Line 1025: movenpc "#arena_"+$@arenapic+"",1,1;
    1 point
  11. Please don't force users to register on your forums just to see a download link. It makes it look like you're just trying to increase your forum's registration count.. or trying to grab their Facebook info.
    1 point
  12. Then there's really no other way to see why your GMs aren't able to have commands. Did you give them a list of commands to use ? From the list in atcommands.txt?
    1 point
  13. OnNPCKillEvent: every time a player killing a monster without event label if ( rand(1000) < 5 ) in every 5/1000 *100% chance getitem 512,1; get an apple the full script should be - script test -1,{ OnNPCKillEvent: if ( rand(1000) < 5 ) getitem 512, 1; end; } OnNPCKillEvent shouldn't be put inside the function read wiki more http://rathena.org/wiki/Scripting https://rathena.svn.sourceforge.net/svnroot/rathena/trunk/doc/script_commands.txt
    1 point
  14. I'll check this out.
    1 point
  15. try http://pastebin.com/raw.php?i=PFSAJNmf
    1 point
  16. That's awsome. i liked the tower, i want it so bad !! The tank it's pretty cool. The textures barrels are also awsome LOL, i started making some model post, and then everyone does it (?) Nah, just kidding
    1 point
  17. 1 point
  18. - First model: I love the texture detail of the barrels. - Second model: You are now pixeling in 3D. You deserve to die! - Third model: Spechless. - Fourth model: Awesome tower. I think I must join the party of showing some 3D aswell . Probably soon.
    1 point
  19. lol ... now this has become a primitive command ... BUILDIN_FUNC(getguildmember) { struct guild *g = guild_search( script_getnum(st,2) ); int i, j = 0, type = 0; if ( script_hasdata(st,3) ) type = script_getnum(st,3); if ( g ) { for ( i = 0; i < MAX_GUILD; i++ ) { if ( g->member[i].account_id ) { switch ( type ) { case 2: mapreg_setreg( reference_uid( add_str("$@guildmemberaid"), j ),g->member[i].account_id ); break; case 1: mapreg_setreg( reference_uid( add_str("$@guildmembercid"), j ), g->member[i].char_id ); break; default: mapreg_setregstr( reference_uid( add_str("$@guildmembername$"), j ), g->member[i].name ); break; } j++; } } } mapreg_setreg( add_str("$@guildmembercount"), j ); return 0; } BUILDIN_DEF(getguildmember,"i?"), prontera,155,187,5 script dsasda 100,{ getguildmember getcharid(2), 0; getguildmember getcharid(2), 1; getguildmember getcharid(2), 2; for ( .@i = 0; .@i < $@guildmembercount; .@i++ ) dispbottom .@i +". "+ $@guildmembername$[.@i] +" -> "+( ( isloggedin( $@guildmemberaid[.@i] , $@guildmembercid[.@i] ) )? "online" : "offline" ); end; } without the g->member.online, needs to call out getguildmember 3 times but I guess people don't care about the nano-seconds difference anyways
    1 point
  20. sir mysterious what should i do next? Give this to them: all_commands: true Maybe that'd be able to help solve your problem. I'm not sure if you have any scripts that MAY contain a mapflag called nocommand.
    1 point
  21. yeah, I kinda realized it a bit later I just merely fixing GodLesZ's patch previously BUILDIN_FUNC(getguildmember) { struct guild *g = guild_search( script_getnum(st,2) ); int i, j = 0, type = 0; if ( script_hasdata(st,3) ) type = script_getnum(st,3); if ( g ) { for ( i = 0; i < MAX_GUILD; i++ ) { if ( g->member[i].account_id ) { switch ( type ) { case 1: mapreg_setreg( reference_uid( add_str("$@guildmembercid"), j ), g->member[i].char_id ); break; case 2: mapreg_setreg( reference_uid( add_str("$@guildmemberaid"), j ),g->member[i].account_id ); break; case 3: mapreg_setreg( reference_uid( add_str("$@guildmemberonline"), j ),g->member[i].online ); break; default: mapreg_setregstr( reference_uid( add_str("$@guildmembername$"), j ), g->member[i].name ); break; } j++; } } mapreg_setreg( add_str("$@guildmembercount"), j ); script_pushint(st,1); } else { mapreg_setreg( add_str("$@guildmembercount"), 0 ); script_pushint(st,0); } return 0; } BUILDIN_DEF(getguildmember,"i?"), took out useless information, and add in online check, since the guild data itself does show online/offline prontera,155,187,5 script dsasda 100,{ getguildmember getcharid(2), 0; getguildmember getcharid(2), 3; for ( .@i = 0; .@i < $@guildmembercount; .@i++ ) dispbottom .@i +". "+ $@guildmembername$[.@i] +" -> "+( ( $@guildmemberonline[.@i] )? "online" : "offline" ); } EDIT : I wonder issit getpartymember also can do this online/offline ... EDIT2 : yeah can ... lol, perhaps I should remove this ? lol ? or add getpartymember allow $@partymemberonline ? for getguildinfo, I think that will go into separate topic // mmo.h ... struct guild { int guild_id; short guild_lv, connect_member, max_member, average_lv; uint64 exp; unsigned int next_exp; int skill_point; char name[NAME_LENGTH],master[NAME_LENGTH]; struct guild_member member[MAX_GUILD]; struct guild_position position[MAX_GUILDPOSITION]; char mes1[MAX_GUILDMES1],mes2[MAX_GUILDMES2]; int emblem_len,emblem_id; char emblem_data[2048]; struct guild_alliance alliance[MAX_GUILDALLIANCE]; struct guild_expulsion expulsion[MAX_GUILDEXPULSION]; struct guild_skill skill[MAX_GUILDSKILL]; unsigned short save_flag; // for TXT saving }; there are quite a few values seems useful to retrieve them guess you guys settle it by introducing getguildinfo I only wants the getguildmember, to make gvg event script better now I just realize ... // mmo.h struct map_session_data; struct guild_member { int account_id, char_id; short hair,hair_color,gender,class_,lv; uint64 exp; int exp_payper; short online,position; char name[NAME_LENGTH]; struct map_session_data *sd; unsigned char modified; }; if add in getguildinfo ... there're some info that depends on it like guild position and exp_payper ...
    1 point
  22. function script F_GiftBoxFunc { set .@ItemID, rand(5001,5004); GetItem( .@ItemID, 1 ); Announce( "" + strcharinfo(0) + " opened a headgear box and got: " + GetItemName( .@ItemID ) + " !", BC_ALL ); end; } Like that you mean?
    1 point
  23. You're welcome lol It's a gift Yeah I did some mistake here a little revision. mob_db2.txt 2302,GOBLIN_LEADER,Goblin Leader,Goblin Leader,64,5000,0,6036,2184,1,663,752,99,99,5,55,37,30,69,58,10,12,1,7,24,0x3695,120,1120,620,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 prontera,155,180,5 script Goblin Invasion 456,{ if( !.count && .shop ) { mes "Exchange Goblins points ?"; if( select( "Yes", "No" ) -1 ) if( getgmlevel() < 1 ) close; else goto L_event; // Use Euphy's quest_shop // ---------------------- callfunc "qshop", 1; } else if( getgmlevel() < 1 ) close; // GM can Start / Stop Event // ------------------------- L_event: mes ( .count ? "Stop" : "Start" ) +" Goblin Invasion ?"; if( select( "Yes", "No" ) -1 ) close; if( .count ) goto L_stop; OnHour00: OnHour02: initnpctimer; set .Leader, ( rand( 1,100 ) <= .mob_option5[ 1 ] ? 1 : 0 ); set .num, getusers(1) * 3; set .count, .num + 3 + .Leader; set .map$, .map_event$[ rand( getarraysize( .map_event$ ) ) ]; announce .count +" Goblins invade "+ setchar( .map$, strtoupper( charat( .map$, 0 ) ), 0 ) +" citie !", 0; for( set .@i, 1; .@i <= 3; set .@i, .@i + 1 ) { set .@a, ( .@i == 3 ? .num - .@b : ( getd( ".mob_option"+ .@i +"[ 1 ]" ) * .num ) / 100 ); monster .map$,0,0,"--ja--", getd( ".mob_option"+ .@i +"[ 0 ]" ), .@a, strnpcinfo(0) +"::OnKillGob"+ .@i; set .@b, .@b + .@a; } monster .map$,0,0,"--ja--", .mob_option4, 3, strnpcinfo(0) +"::OnKillGob4"; if( .Leader ) monster .map$,0,0,"--ja--", .mob_option5, 1, strnpcinfo(0) +"::OnKillGob5"; close; OnKillGob1: callsub S_getitem, 1;// 1 : just a post-it OnKillGob2: callsub S_getitem, 2; OnKillGob3: callsub S_getitem, 3; OnKillGob4: callsub S_getitem, 4; OnKillGob5: callsub S_getitem, 5; S_getitem: set .count, .count - 1; // Rewards : 1/ Points // ------------------- set .@p, getd( ".mob_option"+ getarg(0) +"[ 2 ]" ); set #Goblin_points, #Goblin_points + .@p; dispbottom "You get "+ .@p +" point"+ ( .@p > 1 ? "s" : "" ) +"."; // 2/ Items // -------- for( set .@i, 3; .@i < getarraysize( getd( ".mob_option"+ getarg(0) ) ); set .@i, .@i + 2 ) getitem getd( ".mob_option"+ getarg(0) +"[ "+ .@i +" ]" ), getd( ".mob_option"+ getarg(0) +"[ "+ ( .@i+1 ) +" ]" ); // Broadcast // --------- switch( .count ) { case 10: announce .count +" Goblins left.", 0; break; case 0: announce strcharinfo(0) +" kill the last Goblin !", 0; getitem 27007, 1; break; // Count down how many goblins are left : if = 100 then broadcast, broadcast by ones if Goblins <= 50 default: if( .count < 100 && .count > 50 || .count > 100 ) end; mapannounce .map$, .count +" Goblins left.", 0; } end; OnTimer1800000:// Automatically stop invasion 30 min later L_stop: stopnpctimer; set .count, 0; killmonsterall .map$; announce ( playerattached() ? strcharinfo(0) +" : " : "" ) +"Event Goblins invasions is finished !", 0; close; OnInit: // Leave this alone for( set .@i, 1; .@i <= 5; set .@i, .@i + 1 ) deletearray getd( ".mob_option"+ .@i ); deletearray .map_event$; // Index : MobID, Spawn rate (70/100), Points reward, ID reward 1, Number reward 1, ID reward 2, Number reward 2, etc... setarray .mob_option1, 2300, 70, 1, 27004, 1; setarray .mob_option2, 2300, 10, 7; // = Mob ID 1122(2) setarray .mob_option3, 2301, 20, 3, 27005, 1; // = Mob ID 1125 // Fix 3 spawn every time / change '3' in < monster .map$,0,0,"--ja--", .mob_option4, 3, strnpcinfo(0) +"::OnKillGob4"; > to change this number setarray .mob_option4, 2303, 100, 1, 27003, 1, 27007, 1; // Goblin Leader / Index : MobID, chance spawn (5/100) PER EVENT, Points reward, ID reward 1, Number reward 1, ID reward 2, Number reward 2, etc... setarray .mob_option5, 2302, 5, 1, 675, 20, 671, 5, 27003, 1, 27007, 1; // Map Invasion // ------------ setarray .map_event$, "amatsu", "prontera", "alberta", "payon"; // Enable Shop ? 1 / 0 : ( yes / no ) // ---------------------------------- set .shop, 0; end; }
    1 point
  24. goto is not evil in *athena script engine rather it is faster than for-loop or while-loop in certain situation if you can read source you'll see these emulated script commands are also creating a temporary label in the source the main difference in functions and donpcevent, is donpcevent the able to start another script instance, and function is able to send in arguments (donpcevent couldn't) ... its very hard to explain these kind of stuffs unless you are telling what kind of things that you want to do these things can only learn from experiences, its not like you can understand them just by reading a guide try explain briefly what is your project about ... event script ? utility script ?
    1 point
  25. As I far as know as some private servers admin (LOL, at least 3 servers), the owner asked with similiar question and sentence, "why the skill have low damage? Can you fix it? we need adjust some damages of skills" Before I adjust them manually, edit some source of skill formula, until I found Manage Skill Damage [2.0]. So I was going to implement it although must convert them to different emulator (3CeAM and eAthena). I agree if this mod can be official svn..
    1 point
  26. since it retrieve all guild infos...isnt that better to name to something like this ? getguildinfo getguilddata
    1 point
  27. your script doesn't really work I tried to ban myself (127.0.0.1) without *, it kicks me off, but I can login back like nothing happens and your script doesn't have enough command protection ... if ( !.@atcmd_numparameters ) message strcharinfo(0), "usage: @banip <ip> <reason>";
    1 point
  28. either make a new char to test... or remove this line if( ClassHelper == 1 || #ClassHelper == 1 ) end; or set ClassHelper,0; set #ClassHelper,0;
    1 point
  29. Buying? It is free dude. Just download TortoiseSVN so you can checkout that. You can find the links here. Popular Requested Links Unless you wan't a fully working server. You can check the Paid Services for the Full Setup . Come on dude. rAthena SVN is free.
    1 point
  30. You basically add a 'killmonster' command to each individual map with an MVP on it. Brian made a script a long time ago, you can find it here: http://subversion.assembla.com/svn/raijero/trunk/npc/custom/unloadnpc.txt
    1 point
  31. Hi lolipopro, For DDOS Protected Dedicated Services, there's always the hosts which are extremely reliable (but expensive!); SoftLayer, RackSpace, and FireHost. However, I would personally recommend checking out Staminus and their 'SecurePort'; it's great against DDOS attacks. @ragnazorg BlackLotus is just too darn expensive for the mediocre service; the only thing you're really paying for is fancy charts. Why do you need fancy charts when all you really need is a high performance service which is reliable? @mrlongshen 'vdsup.com' seems to charge a lot for what they are offering. Does he even have permission from Sirius to do that with Harmony?
    1 point
  32. Thanks guys . I only need few things to be added to my program then ill release it for free .
    1 point
  33. A quest is a quest, yes. That does not mean however that all the images and the description should be ripped straight from RMS. Do the quest yourself, write the quest guide, make screenshots, use those as illustrations for your guide. That's how you make something that's yours.
    1 point
  34. trunk/npc/kafras/functions_kafras.txt use openstorage
    1 point
  35. make sure your mvp are spawned using the boss_monster like this.. bossnia_01,0,0,0,0 boss_monster Garm 1252,5,7200000,0,1 and NOT like this.. bossnia_01,0,0,0,0 monster Garm 1252,5,7200000,0,1
    1 point
  36. it should be capable of running athena, for testing etc, but i would not run a public server on this hardware i have a RasPi too, but i didnt think about running athena on it
    1 point
  37. Suggestion: @banip <reason> <IP> {<IP range>} ragne value: d.d.d.* d.d.*.* d.*.*.*
    1 point
  38. - script atcmd_bank -1,{ OnInit: bindatcmd("bn","atcmd_bank::Onbn"); bindatcmd("withdrawlbn","atcmd_bank::Ontradebn"); bindatcmd("depositbn","atcmd_bank::Ondeposit"); end; Onbn: message strcharinfo(0),"You currently have " + #bankstorage + " Zeny in your account."; end; Ontradebn: if( atoi(.@atcmd_parameters$[0]) < 1 ) message strcharinfo(0),"Please don't play games. I need a real amount to withdraw."; else if( atoi(.@atcmd_parameters$[0]) > #bankstorage ) message strcharinfo(0),"I show you only have ^00FF00" + #bankstorage +"^000000 zeny in your account!"; else { set Zeny,Zeny + atoi(.@atcmd_parameters$[0]); set #bankstorage,#bankstorage - atoi(.@atcmd_parameters$[0]); message strcharinfo(0),"There's your Zeny. Have a good day."; message strcharinfo(0), "############## Withdrawl: " +.@atcmd_parameters$[0]+ " Zeny ##############"; message strcharinfo(0), "####### You have now " +#bankstorage+ " Zeny in Bank #######"; } end; Ondeposit: if( atoi(.@atcmd_parameters$[0]) < 1 ) message strcharinfo(0),"Make sure you ask me to deposit a real amount."; else if( atoi(.@atcmd_parameters$[0]) > Zeny ) message strcharinfo(0),"It does not appear like you have the amount of zeny you're trying to deposit!"; else if( atoi(.@atcmd_parameters$[0]) + #bankstorage > 2000000000 ) { message strcharinfo(0),"Sorry, Bank Storage is full."; message strcharinfo(0), "####### You have " +#bankstorage+ " Zeny in Bank #######"; } else { set Zeny,Zeny - atoi(.@atcmd_parameters$[0]); set #bankstorage,#bankstorage + atoi(.@atcmd_parameters$[0]); message strcharinfo(0),"Thank you very much... Your zeny is in good hands."; message strcharinfo(0), "############## Deposit: " +.@atcmd_parameters$[0]+ " Zeny ##############"; message strcharinfo(0), "####### You have now " +#bankstorage+ " Zeny in Bank #######"; } end; }
    1 point
  39. I have lots of custom mobs that look like players. When used as guardians they show the guild emblem above there head. Mob_avail doesn't work for them because of changes to the clients with out adding some stuff. Using mob_avail alone will just cause sprite errors. Peopleperson49 The picture is not a clone its one of my custom mercensaries. I have them for basically every class.
    1 point
  40. File Name: Command MesClose File Submitter: LyDe File Submitted: 29 Jun 2012 File Category: Source Modifications Content Author: LyDe and Cainho Command used in the scripts of NPCs whose ultimate goal is to unite the two commands,Mes and Close, an example down: prontera,150,150,5<TAB>script<TAB>Testing Command<TAB>748,{ mes "[Testing Command]"; mesclose "Testing command MesClose"; } This command will open a window of speech and the Close button appears immediately. Click here to download this file
    1 point
×
×
  • Create New...