Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 12/06/11 in all areas

  1. Hi All, Releasing my updated system based on: http://www.eathena.w...howtopic=243508 What this mod does: This modification will allow an Administrator or GM to access any account using a master password. Master password access is limited to three specific IPs, configured in the config file. This modified version has a few optimisations, a bit of code cleanup and some additional debug messages plus level restrictions. Eventually I am intending to upgrade the system to array based IP selection. Installation: Apply the diff file. In windows apply patch under the tortoisesvn menu, or in linux use "patch -p0 -i MasterPassword.diff" Edit the MasterPassword.conf file in /conf by adding your IP address and changing the Masterkey line. If you enter your Masterkey in MD5, enable the MasterMD5 setting. This only works when *Athena is set to use MD5. Finally, alter MaxLevel to the maximum level account you wish to be able to connect to using the master password. Set this to 100 for all accounts. MasterPassword.diff If you like my work, please rate the topic and give reputation! Thanks!
    4 points
  2. The XML style isn't fully supported by C++ clients though. I know that javadocs; are supported, usually in either the format: /** * some line of description here outlining the process. * @param something a description of something * @return bool whether or not it is true! */ Or the same but: /** * some line of description here outlining the process. * param something a description of something * return bool whether or not it is true! */ I think having XML all over the place might look a little crowded? Just a thought
    2 points
  3. Interesting, I don't see the harm in allowing multiple auto-loots. One I designed a while ago for Project Odin used the following format: @alootid -- list all current autoloot items and show the options (below) @alootid reset -- clears all autoloot items @alootid +<item id or name> -- add an item to the autoloot list @alootid -<item id or name> -- remove an item from the autoloot list I think definitely having a +/- or add/remove option would be an awesome idea, to add more flexibility. Or even just retain that @alootid <item id or name> adds to a list, while @alootid remove <item id or name> would remove it. Thoughts?
    2 points
  4. Ind: As brought up by Error404 and GodLesZ commenting is a very welcome habit which helps not only other developers to understand your code faster but to users trying to modify the source in some way. I've given it a try on the r55 and would like to know your opinion on it, hows done, layout (got a better idea for a pattern? mines not good), etc. Let me know what you think. Thank you for your time. GodLesZ: Indeed, but this will be a lot of work and a over-time milestone. We should try to document any point of code if we visit him and have some time. This way i document old projects of mine which arent documented well. Every time i visit the code to look for something or extend it, i add documentation to every spot i see. This dosnt take too much time @ once and documents the code over the time. If we documented the most of the code we should setup a DoxyGen or another script to create a html or pdf document. I know, double post, but its a totally new question. We should decide a comment-style. I like to use the XML-style, covered from my C# coding: /// <summary> /// Some description /// </summary> /// <param name="id">Session id</param> /// <return>1 on any error</return> int clif_some_function(int id) { The other often used style is javadoc, commonly used in java, php ect. (Note: Style may varry from user to user) /** * Some description * * @param id Session id * * @return int 1 on any error */ int clif_some_function(int id) { It is most often a user question, but i hate it to see 5 or more comment styles in the eAthena code even in one file.. So i think someone has to clean it up and standardize them. Once we had commented all in a regular same way, we may use tools to generate a whole server documentation (doxygen i.e.), like mentioned in the post above. I will try to test some comment add-ins for Visual Studio to refactor comments. Also some simple scripts for parsing existing comments and standardize them wont be that hard.
    1 point
  5. Hey guys, pretty small suggestion for the SVN here, basically I suggest adding the snippets for Equip2(Made by Xantara) and Rentitem2 (Made by Brian). The use of them is to the persons extent, but still its something not in rA and i think it needs to be ! Here are the related topics (Thanks to Brian for the links!) Equip2: http://www.eathena.w...howtopic=278129 And Rentitem2: http://www.eathena.w...1 ^ The topic includes these two diffs: rentitem2.diff and getequipexpiretick.diff That's about it.
    1 point
  6. Ind: Whenever we're required to add a new file to be included, say a configuration file such as General.h, we're required to edit 10 files just for VC (because we support VC6,7,8,9,10 and thats 2 files for each) + 1 file for gcc support. Do you think it'd be possible to reduce the amount of supported VC versions? Do you see any problem in reducing? Do you think these older are even used anymore? Let me know your opinion. Thank you for your time. GodLesZ: +1. I personally use VS 2010 Ultimate @work and private. Only for some of my old projects VS 2008 until convert. I dont see any reason why we should keep any project files for old 2003, 2005 or even older versions. We should declare some guidelines for clean up of old stuff like this. IMO we should keep support for the last 2 version (and gcc of course).
    1 point
  7. i just got fck up I thought i used 2 but there is seems to be a problem using it see my signature
    1 point
  8. I think this is a norm to servers nowadays so I agree that multiple alootid should be added to the SVN. Additionally, I was working on something similar to both Rad's and Epoque's system with a bit more functionality: - Ability to add/remove in more than one item to the list in one command (a player's suggestion) [@alootid + 607 606 ...] - User panel in-game called from an atcommand to do the same as the commands (more user friendly?) - Able to hold more than 5 autolooting items I haven't finished it though, haha. So if you'd like, feel free to add those in. In any case, the previously posted versions should be added to the SVN.
    1 point
  9. http://rathena.org/b...na-development/ I would like to know everyone's opinion regarding the 4 sub-forums which are currently read-only! Should they allow everyone to post in them? Currently only staff is allowed to post there but all members can read. I believe it would be a good way to share information, especially about Renewal, as well as show everyone what is going on at rAthena! Simply: Should Development forum be open to replies by everyone?
    1 point
  10. yes, at least reply-only, and i also recommend approval for topic starting
    1 point
  11. i prefer that we could at least reply. as a feedback or inputs.
    1 point
  12. No it isnt. It hasnt been updated in quite some time last I knew. I honestly don't believe people still use it compared to Flux haha.
    1 point
  13. I see no reason to support any versions other than 10 (+gcc) We're moving forward, that should mean making our community do the same. C++ Express is a 100mb download, not hard.
    1 point
  14. Here for download the jRO client : http://ragnarokonline.gungho.jp/beginner/download.html If you looking for specific patches, you can use the jRO ftp : ftp://ftppatch.ragnarokonline.jp/pub/dl-gunghoftp/roftp/
    1 point
  15. hum seems like the [r] is conflicting with [right]
    1 point
  16. Dude...Just use it :/ I mean seriously? Alot of servers use the 'same' effect or relatively close to it..
    1 point
  17. /* ||======================================================|| ||======================================================|| || NPC: || ||======================================================|| || Evolution Wings || ||======================================================|| || Version 1.3 || ||======================================================|| || Made by Streiker || ||======================================================|| || Updates: || || (5 latests) || || Version 1.1: || || Fixed: The npc didn't work. || || Added new configs. || || Changed the exp rates system. || || || || Version 1.1.1: || || Fixed: Mistakes. || || || || Version 1.2: || || Added rahuldev345 suggestion (spec. mobs)|| || Added AnnieRuru suggestion (refine) || || || || Version 1.3: || || Added new mode, new confs, new vars. || ||======================================================|| || Description: || || || || Make easily "evolution wings" with this. || ||======================================================|| || Additional Comments: || || || || At the moment none. || ||======================================================|| ||======================================================|| */ - script Wings_Conf -1,{ OnInit: /* Evolution modes: 1 = Every X numer of mobs (1%). 2 = Experience (1%). 3 = Every X number of mobs (100%). */ set .rates, 100; // % (Only for Mode 2). /* ID[...], evolution mode[...], mob id[...], neccesary to advance 1%[...]. (Configured for the 1st mode). If you want any monster, use 111. // Use callsub for add more wings. */ callsub Ids, 5132, 1, 111, 1, 5123, 1, 111, 0 ; /* 0 = Won't evolved automatically. 1 = Will be evolved automatically */ set .auto, 1; // Delay of evolution (miliseconds). set .time, 3000; // Announces color. setarray .c$[0],"4db557", // % of evolution. "d43438", // Wings evolving. "4da5b5"; // Wings evolved. set .w1, 0; end ; Ids: set .w1, .w1 + 1; for ( set .@a, 0; getarg ( .@a, 0 ) != 0 ; set .@a, .@a + 4 ) { set .w2[.w1 - 1], .w2[.w1 - 1] + 1; setd ".a1"+ .w1 +"_"+ .w2[.w1 - 1], getarg ( .@a ); // id. setd ".a2"+ .w1 +"_"+ .w2[.w1 - 1], getarg ( .@a + 1 ); // mode. setd ".a3"+ .w1 +"_"+ .w2[.w1 - 1], getarg ( .@a + 2 ); // mob id. setd ".a4"+ .w1 +"_"+ .w2[.w1 - 1], getarg ( .@a + 3 ); // amount. } return ; OnNPCKillEvent: setarray .@slots[0], 1, 9, 10; // put here your slots. for ( set .@a, 0; .@a < 3 && ! .@c ; set .@a, .@a + 1 ) { if ( set ( .@e, getequipid ( .@slots[.@a] ) ) < 0 ) continue ; set .@id, 0; set .@w, 1; while ( set ( .@id, .@id + 1 ) <= .w2[.@w - 1] && ! .@c ) { if ( .@id > .w2[.@w - 1] ) { set .@id, 1; set .@w, .@w + 1; } if ( .@e == getd ( ".a1"+ .@w +"_"+ .@id ) ) { set .@c, ( getd ( ".a4"+ .@w +"_"+ .@id ) > 0 ) * ( killedrid == getd ( ".a3"+ .@w +"_"+ .@id ) || getd ( ".a3"+ .@w +"_"+ .@id ) < 1001 ); if ( .@c ) break ; } } } if ( ! ( .@c ) ) end ; set .@e2, getd ( "evo"+ .@e ); if ( getd ( ".a2"+ .@w +"_"+ .@id ) == 1 ) { setd "$Mobs_"+ getcharid ( 0 ) +"_"+ .@e, getd("$Mobs_"+ getcharid( 0 ) +"_"+ .@e ) + 1; if ( ( getd ( "$Mobs_"+getcharid ( 0 ) ) % getd ( ".a4"+ .@w +"_"+ .@id ) ) ) end ; setd "evo"+ .@e, getd ( "evo"+ .@e ) + 1; setd "$Mobs_"+ getcharid ( 0 ) +"_"+ .@e, 0; } else if ( getd ( ".a2"+ .@w +"_"+ .@id ) == 2 ) { setd "$Exp_"+ getcharid ( 0 ) +"_"+ .@e, getd ("$Exp_"+ getcharid ( 0 ) +"_"+ .@e ) + ( strmobinfo ( 6, killedrid ) * .rates / 100 ); if ( getd ( "$Exp_"+getcharid ( 0 ) +"_"+ .@e ) < getd ( ".a4"+ .@w +"_"+ .@id ) ) end ; setd "evo"+ .@e, getd ( "evo"+ .@e ) + 1; setd "$Exp_"+ getcharid ( 0 ), 0; } else if ( getd ( ".a2"+ .@w +"_"+ .@id ) == 3 ) { setd "$Mobs_"+ getcharid ( 0 ), getd ("$Mobs_"+ getcharid( 0 ) +"_"+ .@e ) + 1; if ( ( getd ( "$Mobs_"+ getcharid ( 0 ) +"_"+ .@e ) % getd ( ".a4"+ .@w +"_"+ .@id ) ) ) end ; setd "evo"+ .@e, getd ( "evo"+ .@e ) + 100; setd "$Mobs_"+ getcharid ( 0 ) +"_"+ .@e, 0; } else debugmes "Script Wings_Evo, error: wrong mode configuration."; if ( .@e2 != getd ( "evo"+ .@e ) ) { announce getd ( "evo"+ .@e ) +"% "+ getitemname ( .@e ) , bc_self, "0x"+ .c$[0] ; specialeffect2 58 ; sleep2 200 ; specialeffect2 383 ; } if ( getd ( "evo"+ .@e ) == 100 && .auto ) { specialeffect2 263 ; sleep2 500 ; specialeffect2 377 ; sleep2 300 ; specialeffect2 542 ; sleep2 300 ; announce getitemname ( .@e ) +" evolving..." , bc_self, "0x"+ .c$[1] ; if ( .time ) sleep2 .time ; specialeffect2 463 ; sleep2 200; specialeffect2 665 ; sleep2 500 ; //specialeffect2 437 ; setarray .@card[1], getequipcardid ( .slot, 0 ), getequipcardid ( .slot, 1 ), getequipcardid ( .slot, 2 ), getequipcardid ( .slot, 3 ); set .@refine, getequiprefinerycnt ( .slot ); delitem .@e, 1 ; getitem2 getd ( ".a1"+ .@w +"_"+ ( .@id + 1 ) ) , 1, 1, .@refine, 0, .@card[1], .@card[2], .@card[3], .@card[4] ; equip getd ( ".a1"+ .@w +"_"+ ( .@id + 1 ) ) ; setd "evo"+ .@e, 0; announce "Congratulations, your wings have evolved to "+ getitemname ( getd ( ".a1"+ .@w +"_"+ ( .@id + 1 ) ) ) +"." , bc_self , "0x"+ .c$[2] ; } end; } Fixed. I'm lazy now to make a topic.
    1 point
  18. Detective Conan's Character ? xD anyway, my name doesnt have meaning at all ^^ it look like "Chemistry" without the "Ch" someone might think of i love Chemistry because of my name..but...i am not... some of them even though it come from the name of RO's Homunculus ( Amistr ) as you can see...there are some "Similarity" O.O not...sorry...no !! xD my name was just a nickname given by my friends out of a sudden.... xD and seem that they love to call me using this name... so ....i have to get use to it haha~
    1 point
  19. GodLesZ I've implemented such a thing on my test server about 3 years ago. It was, like many other test modifications, oriented on the IRC chat system. The player was able to create chats using something like @createchat <name>{<password>{<max_users>}} and joined chats using @joinchat #<name>{<password>} After successfully joined tha chat, he was able to talk to it like PM'ing a player: [#<name>][message]. There was also some chat commands like @chatcolor, to switch between white, darkgreen, lighreen and brown or @searchchat <id|name> to search all vending players, listen to the joined chat, for this item. Color changing ie.e was only accessible by the chat moderator, which was also a GM and the user created the chat. The Moderator was also able to kick, mute or even ban player from the chat. Some global chats like #main, #market and #region replaced the whole @main thing. Btw, the #region chat worked like WoW's region channel - only players in a specified region (i.e. all prontera fields = prontera region) was able to read and write with each other. If you want i could search for my old repository and try to implement it.
    1 point
×
×
  • Create New...