Leaderboard
Popular Content
Showing content with the highest reputation on 07/01/13 in Posts
-
June Digest 2013 The following digest covers the month of June, 2013. Development Team @Cydh has joined as Core Developer. @DeadlySilence has joined as Script / DB Developer. @malufett, @MarkZD, and @Zephyr are no longer Core Developers. Development Highlights Major updates: Instance System rewrite: the official (and far simpler) implementation of instances. (r17386, r17387) Item Bound System: ability to bind individual items to account, guild, party, and character. (r17351, r17361) TXT -> SQL converters: added for item, mob, and mob skill databases. (r17371, r17376) Mapflag restructuring: split Renewal from Pre-Renewal and moved from conf/ to npc/. (r17347) Renewal updates: Official HP/SP tables: now based on a table (job_maxhpsp_db) instead of only formulas. (r17391) Official Abracadabra database implementation: different rates, removed some skills. (r17374) Official high upgrading chances added (+11~20). (r17375) Packet updates: booking, cash shop, indexes, 2013 clients. (r17353, r17357, r17359, r17360, r17367) Item database updates: ~1000 entries added or revised. (r17372, r17376, r17377, r17379) Mob database updates: Hall of Abyss, Pyramids Nightmare Mode, Port Malaya, and Eclage. (r17376, r17382) Renewal scripts: Hall of Abyss: full system. (r17368) Port Malaya: Buwaya Cave instance, Bakonawa Lake instance, town NPC updates, new quests. (r17383, r17396, r17397) Mora: Hazy Forest instance, Mora Enchants. (r17344, r17342) Eclage: town NPCs, guides, coin traders, skills, quest entries, quest placeholders. (r17373) Eden Group: Eden Tutorial and official 86-90 and 91-99 boards. (r17377, r17379) Pyramids Nightmare Mode: scripts and database entries. (r17382) RWC: 2012 Enchants script. (r17397) Command updates: @identifyall added: identifies all equipment in inventory. (r17341) @partysharelvl added: updates party share level. (r17358) 'getequipisidentify' removed: it always returned 1. (r17341) Other noteworthy changes: Updated multiclient support. (r17355) Expanded client version restrictions. (r17363) Updated configure.in/configure. (r17367) Misc. Stats During the period there were 56 commits. Of these 56 commits 25 included bug-fixes.3 points
-
View File GRF Editor Hello everyone, GRF Editor is an open-source tool for editing GRF files (https://github.com/Tokeiburu/GRFEditor). It offers a wide variety of features and customizations. The software is very stable and responsive, it can handle large operations without lagging your computer. How to install Download the zip archive provided from the download link at the bottom of this description or directly from there: http://www.mediafire.com/?aflylbhblrzpz0h Install the application with GRF Editor Installer.exe; if you are missing a .NET Framework you will be prompted to download it. Once you are done, you can start the program from the link on your desktop. Key features Overall speed is faster (or at least equal) than any GRF tool. Common operations: add, delete, merge, extract, preview, save. Undo and redo for any operation. It can open any GRF file format. Clean and very interactive interface. Saving formats supported : 0x300, 0x200, 0x103 and 0x102 (through the Settings page) and conversion to the Thor format. Instant filter and search options (example : "map .gat"). File association and context menus integration for .grf, .gpf, .rgz and .thor (through the Settings page). Can rebuild separated images into one file easily. Drag and drop (with the ALT key, can be modified in the Settings page). This is a big part of the software; most of the items can be moved around within the application itself or from/to Windows Explorer. If drag and drop does not work, it is most likely because you've started the program using administrator privileges. GRF Editor does not requires administrator privileges to run. Tools Grf validation: allows you to validate a GRF with multiple settings. It can detect corrupted GRF entries, invalid sprites, empty files, non-GRF files, duplicate files and a lot more. Flat maps maker: generates flat maps from .gat and .rsw files. Useful to generate WoE maps or to fasten up the loading time. Patch maker: generates a GRF patch based on two different GRFs. Hash viewer: shows the hash code (both CRC32 and MD5) for files. Image converter: converts an image to any format requested (BMP, PNG, JPG, TGA). GrfCL: used to create batch files (.bat) which can automate tasks on GRF files. See the content in GrfCL.rar in the download for more information. This tool can be customized from the sources as well. Grf encryption The encryption feature has been enabled again. It's similar to what it used to be and it has been tested on client versions ranging from 2012-08-01 to 2024-01-01. Some error messages will be displayed if necessary. If you have an issue, copy the error message (with the code, if there's one) and send me the client executable with the cps.dll file generated by GRF Editor. There shouldn't be compatibility issues anymore though! Thor files Thor files are patches used by Thor Patcher ( https://github.com/rathena/rathena/wiki/Thor-Patcher ). Because of their similarity with the GRF file structure, they have been integrated within GRF Editor. The primary utility of this feature is that it allows you to add encrypted files to a Thor patch. All the other options can be achieved by using Thor Maker. You'll find the necessary steps below, but test your patches before sending them off to players (I've done a lot of testing on my end, but better be safe). If you're using SecureGRF, then make a new GRF, add the files and encrypt it. In GRF Editor, open the encrypted GRF you just made, use "Save as" and name the new file with a .thor extension. That's it, if you want to change the output directory, click on Edit > Edit Grf/Thor settings. You can select the output mode and the GRF to merge the patch with. Simply save again if you change these properties. If you're using GRF Editor's encryption, then make a new Thor file (File > New > New Thor) and add the files you want to patch it with. Right-click on the files you want to encrypt and use Encryption > Encrypt. Technical stuff Requires .Net Framework 4.0 to run (4.0 or more will work as well). Automatically converts file name encoding to the currently selected encoding (you can change the encoding in the Settings page). Data virtualization is used as much as possible to preview files, meaning the files aren't completely loaded. Right-clicking an item will bring up the available options with that file. Preview file formats: txt, log, xml, lua, lub, bmp, png, tga, jpp, db, ebm, pal, gnd, rsw, gat, rsm, str, spr, act, imf, fna, bson, csv, ezv and wav. Services are "crash ready", meaning that you will be warned about a failed operation and no work will be lost (the application won't close and crash). It tries to continue operating even if it meets unsual conditions. Operations can be cancelled by clicking on the button near the progress bar. The warning level can be changed to avoid messages like "Please select a folder first." When prompted with an error, use Ctrl-C to copy the current dialog's content. Some screenshots! 1) Previewing an act file, while showing the search feature 2) Preview of a model file (rsm or rsm2) 3) Preview of GrfCL 4) Preview of maps 5) Preview of Grf validation 6) Search feature (press Ctrl-F or Ctrl-H to bring up within a text editor) Got a feedback? I'd gladly hear you out and fix issues you have with the program. Submitter Tokei Submitted 01/11/13 Category GRF Files Video Content Author Tokeiburu1 point
-
i guys, now I'm in this board too and I'm happy to be able to work with you guys once again . NOTE: For those who don't know yet, but I unofficially continue Zackdreaver's Renewal Translation Project and I'm pretty much stopping with NPC scripting so I can focus on that as it's a better project to help the community. You can find more about it at my comment here - or in my signature is a link to the GitHub repo. Some rules for my releases: 1.) I will not support scripts you have modified by yourself, like changing mayor part of the code. 2.) Do NOT steal, pretend that you are the creator of these scripts - give credits accordingly . 3.) Like everyone else, I don't like it if someone remove the credits in the NPC Header. Anyway, if you follow these rules we won't have problems . For those who didn't took a look at my signature yet, my whole scripts are available via GitHub now. Topic Changelog: > 11-19/2011: Created my script collection and re-released my scripts from eAthena. > 11-24/2011: Added Restaurant, Login Settings, Global NPC Handler, Variable & Array Reader > 12-17/2011: Updated Restaurant and Virtual Password, Added Character Manager for Test Servers > 12-19/2011: Added PvP-GvG-MvP Arena > 12-20/2011: Added new feature to Character Manager > 01-08/2012: Added Card Compounder > 01-12/2012: Added Dynamic Shop > 01-18/2012: Added Vote NPC v1.0 > 10-13/2012: Added Fame System v1.1 > 10-16/2013: Added Training System v1.0 and Mob Invasion Event v1.0 > 09-22/2015: Added Quest System v1.0 > 06-11/2015: Updated Dynamic Shop v1.0 to v1.1 > 10-01/2015: Updated Quest System v1.0 and Fame System to v1.2 > 10-03/2015: Added Dungeon Party System v1.0 > 10-17/2015: Optimized this post a bit, how do you guys like it? > 09-07/2017: Cleaned up the Collection, see below for details. > 11-10/2017: Major update of older scripts > 12-31/2017: Updated Quest System v1.2 > 01-15/2018: Updated Training System v1.0 to v2.0 Added Mass Seller and Daily Reward NPC Added Dungeon Quest Service v1.0 + SQL file > 10-25/2018: Split Topic into Sections (Released, Requests, Additional and Unofficial) Added Instanced Loot System Added every requested Script so far Added Pagination function and GetMobData function Added Unofficial Excellion Gear NPC's and Nightmare Bio Lab NPC's Added Armor Enchanter Fixed Card Compounder > 05-28/2019: Added Battle Royale and Hunting Grounds Script Removed Broadcaster duo unnecessarity > Channel System Removed Unofficial Nightmare Bio Lab official implementation Removed Unofficial modified Morse Cave Instances by Alayne Updated Mob Invasion to v1.1 Modified Costume Enchanter v1.2 Modified Gold Room Battle v1.1 Removed every Update Log from the Scripts, leaving only the Features present > 06-10/2019: Added Mystic Enchanter + Mystic Enchanter without Random Option Support > 07-12/2019: Added the either forgotten or accidently deleted Last Man Standing v1.0 Added Dynamic Battleground Arena v1.0 > 05-02/2020: Removed useless scripts > 05-07/2020: Updated Mystic Enchanter to v1.1 > 11-06/2020: Removed Excellion Gear NPC (unofficial scripts are only visible on the repository) Updated Quest System and Hunting Grounds Instance, Old Glast Heim Hard > 04-06-2021: Removed Dynamic Battleground Arena Git Changelog Released Scripts Entertainment Arena Master v1.6 Last Man Standing v1.0 Mob Invasion Event v1.1 (I know there are many of these already around, but I wanted to try one for myself) Hunting Grounds Instance v1.0 Battle Royale v1.0 Utility InGame CP v1.3 Restaurant v1.0 Card Compounder v1.1 Dynamic Shop v1.1 Mass Seller v1.1 Daily Reward v1.0 Mystic Enchanter v1.1 Warning: This Enchanter disturbs Game Balance, as it allows to enchant everything you set it to! Though I added limitations and many settings to restrict that as much as possible. System Security System v2.1 Virtual Password v1.3 Fame System v1.3 Training System v2.0 Quest System v1.4 Dungeon Quest System v1.0 Instanced Loot System v1.0 Extra Pagination Function v1.0 GetMobData Function v1.0 Requests Vote NPC v1.2 Request by PapaZola Monster Slaughter Event v1.0 Reqzest by PapaZola Costume Enchanter v1.2 Request by Vegas Freebie NPC ... Forgot who requested it Gold Room PvP v1.1 Request by Paulinds MvP Ranker v1.2 Request by Radian Best regards, Chris1 point
-
RO Open Setup About Clone of the default game setup application, shipped with every RagnarokOnline installation. It works on every 32-bit Microsoft* Windows* platform. Source is available for customizations. Known Issues None. Translations English - 100% (primary) French - 100% (Valioukha) German - 100% (Xalion) Brazilian Portuguese - 100% (EvilPuncker) Czech - 100% Japanese - 100% (Mintmoon) Russian - 100% (Jarek) Simplified Chinese - 100% (tinpont) Spanish - 100% (jaBote) Thai - 100% (iSuzutsuki) Traditional Chinese - 100% (Angelmelody) translate OpenSetup into your language Q & A Why does the client not use the Lua settings? Use latest OpenSetup version. If that's already the case, use newer client. Why does OpenSetup not let me to save without Administrator? A few settings are still written to a location in the registry, that needs Administrator rights. I have have issues with OpenSetup, is there something I should add to my report? When you experience the issue, press Shift+Esc inside the OpenSetup window until it closes and provide the generated log file (exename.log) along with your report. Download & Website http://ai4rei.net/p/opensetup License This work is licensed under a Creative Commons Attribution-Noncommercial 3.0 Unported License.1 point
-
Briefing & Concept Hi guys. It has been a while I have showed something here. Today I'm glad to share this map for every server that mights to implement something probably never seen before: a custom woe map. About this map So, what do we have new on this map? Iset a Morroc Castle is, a castle map based in officials. Guilds in a lot of servers around the world takes really seriously WoEs so, being the first custom castle map I was doing before, I thought it was better to preserve the main terrain areas of an official castle. This map doesn't has any custom 3D models. And I'm sure it is one of the best I've done so far. This shows that good maps can be done by using RO textures/rsm data. However I have to mention that this map is using alpha resources of Ragnarok (named as adata.grf) which are included in the pack of this. On the other hand, the work on lights of this map was pretty a lot and very well calculated. For instance: the blue lights that shows as they are comming out of the hieroglyphics walls of those sarcofagons on. Video! ... Watch it in 1080p! HD Screenshots Color Palettes Sponsored by @KamiShi Drooping Olrox Hat Sponsored by @Adel Screens are in Full 1920x1080 HD resolution. You can allways hit the image thumbnaill to check the images on full size, and check some details that can only be appreciated in HD resolution. Panoramic Screenshot 1 I find this view very beautiful it is a panoramic main entrance view. Panoramic Screenshot 2 Another panoramic that shows all the north rooms. Barricade Area 1 First area of the castle, the first barricade guardian stones that comes by repairing both guardian stones. It has a lot of work with lights. Inspired in Sphinx which you can commonly see this kind of mazes. Guardian Stone 1 Shows the guardian stone of the left. After entrance place. This part comes after you defeath the 2 guardian stones. You have to "climb" this area to lead to the second barricade guards. You can be no casted behind the walls, although, people can cast to you from the under level parts (nowalkable no snipe cells) Carnivore Sand Hole I still remember the old times when WoE 1.0 Castles were unique and they had funny things (like aldebaran castle that had a random warp portal) Well ... my castle comes with something like that. This place inspired in the sograt desert shows a hole, that if you touch it, you get warped out of the castle with a lot of damage on your character! Pre-emperium place Inspired in a castle of yuno, this place shows a small abyss on the lower part and small laberynth to move on it. You can cast from the lower and upper part making the castle pretty dynamic to defend at this place. Emperium Room The emperium Room. I had to totally use a lot of imagination to build this one as this way. Last we have a tribute to the "dimensional gore" which you can see this kind of sand tentacles raising from the ground. Here it looks as they are almost touching the emperium, pretty nice. A small bridge shows the connection from south parth (commonly connection seen in WoE SE structures) This map was a very self work I was doing in the 2012 year. It was not serious until I took my time because a lot of people were interested on it, and now I finally finished it. If you ask me the amount of work was a lot; not only at the design, so as the technical stuff as "shootable" cells or not. Also, as you can tell, the map shows guardian stones/barricades/flags etc, which means it comes with a WoE 2.0 eAthena script/castle db full working, so as the script of the hole, and Instructions for everything. Although I have to say that sadly, I don't have a rA version for this (I'm not a scripter) but being a eA one, you can easily merge it to rA, brA or any other emu you have. This map will is available in rA downloads, although mind you that it will not be for free, I truly can't afford that since it was an insane amount of work. In the next days I'm going to show other works that finally I have been able to complete; They are pretty awesome maps that you will love. Also I have to say also that other pending map requests I have from quite some time, will be completed very soon just as this one was. Comments or Ideas are always welcome. Also if you support this, other maps can be possible for instance: A niflheim WoE 2.0 castle, which could be a nice thing to offer.1 point
-
FluxBB is an open source addon that integrates FluxCP into FluxBB forum engine by http://fluxbb.org Unlike many forum softwares, FluxBB is designed to be smaller and lighter without many of the less essential features. Often features which aren't included in the core are implemented by the community and released as modifications. The below feature list shows what features are included in a standard install of FluxBB. For more features and what is supports in detail, you may found it at http://fluxbb.org/about/features.html Please refer to https://gitlab.com/carloquilala/fluxbb1 point
-
Purpose: Organize the various files (Sprites, Act files and Image files) into their appropriate folders in an automated fashion. Usage Instructions: 1) there are three inputs i) Source Folder: Files required for each custom item is expected to be in a subfolder of this folder. ii) Item DB File: Straight Forward. We load the required info from this file iii) Target Folder: all the files will be copied to respective folder inside this one (sprite and texture folders) 2) Once you add the inputs click the Load Item DB button which will fill the table with the item ids, name and view ids and some default values for the other three. 3) Click the checkbox of the items you want to work on, Select the source name and edit the sprite & resource name as desired. 4) Click the Copy button and all the files will be copied to proper folders. 5) Save settings button saves all the inputs and state of the table. so you can easily Reload it later. The tool also loads the save data when you open it. 6) in case you have iteminfo.lua or idnum2resnametable.txt already with the resource name you can make fill the table (Resource Names) by clicking the Fill Resource Button. 7) Similarly Sprite Name field can be filled from accname.lua & accessoryid.lua by clicking the Fill Sprite Button. 8) An addon as suggested by Yommy - Checker tool which checks for files and reports missing ones (Only the checked items will be ... checked). 9) All the buttons below also have a menu entry at top. 10) Currently I have placed the bottom buttons in a detachable toolbar (easy with QT) so you can just drop it on any side of the window you want or just pull it out . Status: Completed v1.0 - Waiting for suggestions for improvement I had initially written some of the code for .NET4 but recently decided to drop it and use QT instead. If you see any bugs or have any suggestions or modifications in mind please let me know. Download Link v1.0 : http://www.mediafire.com/?ku7mhm376ik79g31 point
-
Before continuing I'm aware this post probably doesn't belong here, but I'm assuming this will get the most views and will also get our development of this huge modification on a roll. Essentially the only portion that needs major testing is the Pre-Renewal. Renewal attack has been tested for the last month by the writers of this mod and on their servers. Please report your findings back to us so this isn't put on hold any longer. Credits: Baalberith - Broke apart all of the battle.c functions and started the mod Helvetica - Fixed many bugs within the initial stages of mod Without wasting anymore time, here's a diff updated to our latest SVN. Edit: I've been told to release some more information on what to test. Like above, we mostly just want to make sure we didn't break pre-renewal, but I'm bringing this to the public for any extra testing. I'm aware the things most wanted in renewal are EDP and Acid Demonstration working correctly, so if you use renewal in your server, you're free to use this before we actually release. We ask that users of pre-renewal see if there are any differences in the attack when this is implemented. Edit2: New diff posted. Fixes a bunch of linux warnings and windows error. renewalattack.diff1 point
-
.@atcmd_command$ = The name of the @command used. .@atcmd_parameters$[] = Array containing the given parameters, starting from an index of 0. .@atcmd_numparameters = The number of parameters defined. You can get command parameters with .@atcmd_parameters$[index]. So, @test a b would result in this: .@atcmd_command$ = @test .@atcmd_parameters$[0] = a .@atcmd_parameters$[1] = b .@atcmd_numparameters = 21 point
-
1 point
-
Hi Guys, I know this has been posted over and over again, but I think i have read and check all the other topics about this and still can't find the answer. what I think everybody wants/need/asks for is this. I found this script made by annie.1 point
-
Hmm your config seems right let me run some more test real fast ill reply again in next 30 mins or so Edit i figured it out, will be posting a fix momentarily Edit 2: Thank you rakuzas + rep Update 1.40 -> 1.42 v1.41 Reorganized rewards script v1.42 changed .@i -> .@x in Option & 32 (bug report by rakuzas)1 point
-
//===== EinherjarRO Scripts ================================== //= Daily Prize, OnPCLoginEvent //===== By: ================================================== //= Stolao //===== Current Version: ===================================== //= 1.3C //===== Compatible With: ===================================== //= rAthena SVN //===== Description: ========================================= //= A reward system for players who play more frequently //===== Comments: ============================================ //= N/A //===== Additional Comments: ================================= //= 1.00 Daily Prize //= 1.01 Fixed Typo //= 1.02 Removed unessisary calculation //= 1.03 Added a sleep2 for delayed reward //= 1.04 Added dispbottom //= 1.05 Made Clearer //= 1.06 Made Disbutton Dynamic //= 1.07 Added .RewardQnt for configable Reward Quantity //= 1.08 Fixed Typo //= 1.09 Seperated .ZMulti into .Mode and .ZMulti //= 1.0A Changed zeny formula for .Mode 0 //= 1.0B Changed Variable Names, More detailed exsplanations //= 1.0C Fixed typo again lol //= 1.0D Added in .PointType$, can now configure zeny into any point types //= 1.0E Added LoginCount //= 1.0F Made LoginCount Customisable //= 1.10 Changed Variable Names, More detailed exsplanations //= 1.11 Added Wipe feature //= 1.12 Fixed bug, changed "close;" to "close2;" //= 1.13 Changed .LogCount to bitwise //= 1.14 Changed .wipe to a whisper event, per Euphys Suggestion //= 1.15 Changed Formatting of config, per Euphys Suggestion //= 1.16 Added Login Reward Countdown, on each login //= 1.17 Added .PointName$ //= 1.18 Fixed Typo //= 1.19 Added Checkweight //= 1.1A Changed query_sql for $LOGINCOUNT to set //= 1.1B Fixed bug with #DRewardCon, arraysize compersison (Thanks AnnieRuru) //= 1.1C Added meathod for characters online for attachrid //= 1.1D Actually Fixed the 1.1B Bug //= 1.1F Changed zeny formula to remove .ZMulti from mode 0 //= 1.20 Changed .Reminder to .Welcome //= 1.21 Fixed missing details in Welcome Message //= 1.22 Changed .Mode to be bitwise //= 1.23 Added Item enable disable to .Mode //= 1.24 Changed whisper to allow for player Whispers //= 1.25 Added "time" Whisper Command for players, Thanks arzzae for suggestion //= 1.26 Made Whisper commands configable //= 1.27 Made GmLvl for wipe Configable //= 1.28 Fixed "Points" bitwise //= 1.29 Added Exp to .Mode //= 1.2A Optimized Rewards Script a little //= 1.2B Bug Fix with Display message on reciving rewards //= 1.2C Optimize a little more //= 1.2D Added server xp rate to config //= 1.2F Re-added checkweight //= 1.30 Move Checkweight up higher in script, makes more since //= 1.31 Removed XP Dispbutton //= 1.32 Added Buffer //= 1.33 Made BUffer Toggle-able //= 1.34 Made Buffer Dynamic //= 1.35 Optimized Buffer a little //= 1.36 Made Buffer More Dynamic //= 1.37 Optimized Buffer a little more //= 1.38 Fixed a typo in "seem" was "see" //= 1.39 removed "typo" bindatcmds //= 1.3A Fixed bug with sc_, didn't support names had to switch to ids //= 1.3B Fixed bug in buff bonus (time and rate) //= 1.3C Revamped buffs to take only 1 variable (now can only be 32 buffs) //= 1.3D Made Day(s) dynamic //= 1.3E Removed "Time" reqirement from players to check there Next Login Bonus //= 1.3F Added an Else after checkweight //= 1.40 Fixed typo in .BuffInfo //===== Contact Ifo: ========================================= //= [Stolao] //= Email: [email protected] //============================================================ - script LOGIN -1,{ OnWhisperGlobal: if (@whispervar0$ == .Wipe$){ if (getgmlevel() < .GmLvl) end; query_sql("DELETE FROM `global_reg_value` WHERE `str` = 'LOGINCOUNT'"); query_sql("DELETE FROM `global_reg_value` WHERE `str` = '#LOGINCOUNT'"); set $LOGINCOUNT,0; set .@self, getcharid(3); set .@size, query_sql("select account_id from `char` where online = 1", .@aid); for(set .@i,0; .@i<.@size; set .@i,.@i+1) { if(attachrid(.@aid[.@i])){ set LOGINCOUNT,0; set #LOGINCOUNT,0; } } attachrid(.@self); dispbottom "Cleared all login count data."; } OnLoginCmnd: set .@i,((gettime(7))*365*24)+(gettime(8)*24)+gettime(3); if(.@i >= (#LastDailyReward + .MinWait)){ dispbottom "Your login reward is available, please relog to calim your prize~"; } else { dispbottom "You have "+(#LastDailyReward + .MinWait-.@i)+" hours till your next reward"; } end; OnPCLoginEvent: if(.LogCount){ if(.LogCount & 1) set LOGINCOUNT,LOGINCOUNT+1; if(.LogCount & 2) set #LOGINCOUNT,#LOGINCOUNT+1; if(.LogCount & 4) set $LOGINCOUNT,$LOGINCOUNT+1; if( ( LOGINCOUNT + #LOGINCOUNT + $LOGINCOUNT )%.Welcome[1] == 0 || (LOGINCOUNT + #LOGINCOUNT) < .Welcome[0] ){ Mes "~Welcome to "+.Servername$+"~"; Mes .Message$; close2; } } if(.DailyPrize){ if( #DRewardCon == 0 ) set #DRewardCon,1; set .@i,((gettime(7))*365*24)+(gettime(8)*24)+gettime(3); set .@g,getarraysize(.Rewards); sleep2 .Rest*60000; if(.@i >= (#LastDailyReward + .MinWait)){ if(.@i < #LastDailyReward + .MaxWait){ set #DRewardCon,#DRewardCon+1; } else { set #DRewardCon,1; } if(#DRewardCon*2 > .@g-1){ set .@p,.Rewards[.@g-2]; set .@q,.Rewards[.@g-1]; } else { set .@p,.Rewards[#DRewardCon*2-2]; set .@q,.Rewards[#DRewardCon*2-1]; } if(.Mode&1&&.@p){ if(!checkweight(.@p,.@q)){ dispbottom "You seem to be oveweight, put some stuff away and relog to claim prize"; } else { dispbottom "You have collected your daily reward, for "+#DRewardCon+" day"+((DRewardCon>1)?"s":"")+" in a row."; getitem .@p,.@q; dispbottom ""+.@q+" "+getitemname(.@p)+""; } if(.Mode&2) set .@A,#DRewardCon*.ZMulti; if(.Mode&8) set .@A,.@A+.@q; if(.Mode&2||.Mode&8){ setd .PointType$,getd(.PointType$)+.@A; dispbottom ""+.@A+" "+.PointType$+""; } if(.Mode&4){ set .@B,#DRewardCon*.XPMulti[0]; set .@C,#DRewardCon*.XPMulti[1]; } if(.Mode&16){ set .@B,.@B+.@q; set .@C,.@C+.@q; } if(.Mode&4||.Mode&16){ getexp .@B,.@C; dispbottom ""+(.@B*.Sxp/100)+"/"+(.@c*.Sxp/100)+" XP"; } if(.Mode&32){ for(set .@i,0; .@i < getarraysize(.BuffInfo); set .@i,.@i+4){ if(#DRewardCon % .BuffInfo[.@i+1] == 0) sc_start .BuffInfo[.@i], .BuffInfo[.@i+2]*60000, .BuffInfo[.@i+3]; } } set #LastDailyReward,.@i; } } else { dispbottom "You have "+(#LastDailyReward + .MinWait-.@i)+" hours till your next reward"; } } end; OnInit: // ----------------------------------------------------------- // Login Count & Welcome Message // ----------------------------------------------------------- // Login types to track. // 1: Character | 2: Account | 4: Server // (a bit value, e.g. 5 = character + server) set .LogCount,5; // Number of logins to display welcome message. // [0]: First x Logins, 0 will never give a message // [1]: Remider message every x Logins (combined server account and character) setarray .Welcome,3,250; // Server name to display. set .Servername$,"Server"; // Login message // * Must have at least 1 Login Count Enabled set .Message$,"Before playing, make sure you've read the rules, located in our forum at ^0000FF~TBA~^000000"; // ----------------------------------------------------------- // Daily Reward // ----------------------------------------------------------- //To Enable @ Command '@LoginReward' unslash next lines // * Needs extra commands for typos // bindatcmd("loginreward" ,"LOGIN::OnLoginCmnd",0,99); //Data Wipe Whisper Command set .Wipe$,"wipe"; //GM Level to use Wipe Whisper Command // Keep at 99 for security set .GmLvl,99; //Daily Prize //Toggle // 0: Off | 1: On set .DailyPrize,1; //Minimum Hours Between Collecting Daily Reward // Day: 22-24 // Week: 168 set .MinWait,22; //Hours Before Lose Consecutive Daily Rewar // Day: 48-50 // Week: 336 set .MaxWait,50; //Number of mins after logging before collecting prize set .Rest,0; //Type of Points/Zeny earned // eg: CASHPOINTS, Zeny, LoginPoints set .PointType$,"Zeny"; //Toggle // 1: Item | 2: "Points" from Multi | 4: Exp from Multi // 8: "Points" from Days with ItemID of 0 |16: Exp from Days with ItemID of 0 // 32: Gain Buffs Every X Consecutive Days logged in // (a bit value, e.g. 3 = Items & Points from Multi) set .Mode,1+2+4+8+16+32; //Consecutive Day Points Multiplier // * If players login longer than the last set // day, they will keep getting a larger Multiplier set .ZMulti,100; //Consecutive Day Exp Multiplier // [0]: Base // [1]: Job // * If players login longer than the last set // day, they will keep getting a larger Multiplier. setarray .XPMulti,50,50; // Consecutive Days Buff // Each buff contains 4 variables (32 Total Max) // Type,Days,Time,Rate // *Example: 188,7,45,3 // *Every 7th consecutive day logged in Player gains +3 Str for 45 mins // Type is 188, which references which SC_ to use, SC_INCSTR in this case // -For a full list of SC_ visit the db/const.txt <<<<this one missing "/" // Days is days buff is applied, in this case 7, so Days 7,14,21,28.... // Time is buff duration is Minuits, in this case 45 mins // Rate is buff strength, in this case player gains 3 Str setarray .BuffInfo ,188,7,45,3 // +3 Str for 45 Mins Every 7th Day ,189,7,45,3 // +3 Agi for 45 Mins Every 7th Day ,190,7,45,3 // +3 Vit for 45 Mins Every 7th Day ,191,7,45,3 // +3 Int for 45 Mins Every 7th Day ,192,7,45,3 // +3 Dex for 45 Mins Every 7th Day ,193,7,45,3 // +3 Luk for 45 Mins Every 7th Day ,194,4,45,25 // +25 Hit for 45 Mins Every 4th Day ,196,4,45,25 // +25 Flee for 45 Mins Every 4th Day ,198,10,60,10 // +10% Hp for 60 Mins Every 10th Day ,199,10,60,10 // +10% Sp for 60 Mins Every 10th Day ,200,13,30,10 // +10% Atk for 30 Mins Every 10th Day ,201,13,30,10 // +10% Matk for 30 Mins Every 10th Day ,257,9,120,50 // +50% Exp for 120 Mins Every 9th Day ,258,9,120,50; // +50% Item Drops for 120 Mins Every 9th Day // Daily Prize items (max 64 days): // <itemID>,<amount>, // Day 1 // <itemID>,<amount>, // Day 2 // ...; // * If players login longer than the last set // day, they will keep getting the last prize. setarray .Rewards[0], 512,1, // Day 1 513,2, // Day 2 514,3, // Day 3 0,1000; // Day 4 end; }1 point
-
Read: Basic_Scripting#Conditions.2C_Variables.2C_and_Set You're using an account-based variable instead of a character-based one.1 point
-
1 point
-
trunk/npc/re/merchants/ticket_refiner.txt (disabled by default; you have to enable it manually)1 point
-
just copy paste that. and simple change the name and also the database.1 point
-
on your config\servers.php just add another array( 'ServerName' => 'FluxRO', // Global database configuration (excludes logs database configuration). 'DbConfig' => array( //'Socket' => '/tmp/mysql.sock', //'Port' => 3306, //'Encoding' => 'utf8', // Connection encoding -- use whatever here your MySQL tables collation is. 'Convert' => 'utf8', // -- 'Convert' option only works when 'Encoding' option is specified and iconv (http://php.net/iconv) is available. // -- It specifies the encoding to convert your MySQL data to on the website (most likely needs to be utf8) 'Hostname' => '127.0.0.1', 'Username' => 'ragnarok', 'Password' => 'ragnarok', 'Database' => 'ragnarok', 'Persistent' => true, 'Timezone' => null // Example: '+0:00' is UTC. // The possible values of 'Timezone' is as documented from the MySQL website: // "The value can be given as a string indicating an offset from UTC, such as '+10:00' or '-6:00'." // "The value can be given as a named time zone, such as 'Europe/Helsinki', 'US/Eastern', or 'MET'." (see below continuation!) // **"Named time zones can be used only if the time zone information tables in the mysql database have been created and populated." ), // This is kept separate because many people choose to have their logs // database accessible under different credentials, and often on a // different server entirely to ensure the reliability of the log data. 'LogsDbConfig' => array( //'Socket' => '/tmp/mysql.sock', //'Port' => 3306, //'Encoding' => null, // Connection encoding -- use whatever here your MySQL tables collation is. 'Convert' => 'utf8', // -- 'Convert' option only works when 'Encoding' option is specified and iconv (http://php.net/iconv) is available. // -- It specifies the encoding to convert your MySQL data to on the website (most likely needs to be utf8) 'Hostname' => '127.0.0.1', 'Username' => 'ragnarok', 'Password' => 'ragnarok', 'Database' => 'ragnarok', 'Persistent' => true, 'Timezone' => null // Possible values is as described in the comment in DbConfig. ), // Login server configuration. 'LoginServer' => array( 'Address' => '127.0.0.1', 'Port' => 6900, 'UseMD5' => true, 'NoCase' => true, // rA account case-sensitivity; Default: Case-INsensitive (true). 'GroupID' => 0, // Default account group ID during registration. //'Database' => 'ragnarok' ), 'CharMapServers' => array( array( ) ),1 point
-
OnInit: bindatcmd("<any command you want to use>",strnpcinfo(3)+ "::OnExe"); end; OnExe: // Execute code when the binded command was triggered by the user1 point
-
1 point
-
Updated to 1.3.1, many updates have been done so I'll cut to the important ones. - Previous settings will be erased due to the new way they're saved, not a big issue. ACT to GIF option ACT to GIF is now possible with GrfCL, the command will look like the code sample below. It has many optional arguments that you can check out with "-help gif". The background will always be transparent regardless of the /bColor chosen, this parameter will only be useful if you smooth the edges with the /scaling=HighQuality option. GrfCL.exe -gif C:\myGifs "C:\RO data\data\sprite\¸ó½ºÅÍ\*.act" 1 /bColor=White /ignore=True -break Example with lost_dragon.act/spr (image is big, here's the link instead) : http://img402.imageshack.us/img402/986/wa1.gif Palette recolorer This tool is meant to recolorer generic sprites which use gradients in their palettes. That means it's useless if the palette has no "logic" in it. The goal of it is really to generate good looking palettes with little effort. It's based on pattern detection to identify gradients that are most likely related (therefore there are no specific configuration for sprites - hair, character, mob... they're all treated the same). Creating character palettes will work, but it's not very convenient (there are better tools on rA for that). How to use it Load a sprite (directly from the GRF or a folder), in this example I'm using acidus.spr because it's an easy one. The palette of this sprite is a total mess. Anyway... you'll notice global settings at the top for the sprite. To see them in action, you will have to change the current seed, because the seed 0 is treated differently (initial palette, not affected by settings). To do that, simply press Next. You should have gotten a relatively "nice" sprite already, but it's possible to do better. Gradient scale : The amount of variation of the gradients. Themes coherance : A theme has multiple gradients and they all use the same color (hence the term 'theme'). Decreasaing this value will make each of these colors change a little (creating a variation between similar gradients). Brightness : Increase or decrease the luminosity of the gradients. Grayscale : Decreasing this setting will make the colors 'stronger' while increasing it will make the colors look flat. Pattern search : the range of the search for connecting gradients. Increasing this value will generate less themes (and connect more gradients together). Auto color : Auto color will change the luminosity of the gradient according to the original palette. Decreasing this value will usually create bad looking sprites. Pixels coherance : Indicates the correlation between the new sprite and the old sprite (higher = better). Seed : The seed to generate the palette. The seed can be used with different sprites to generate a set; it's a controlled seed and it's not entirely random. For example, if the seed generates a full red palette, you can change the settings, load a different sprite and it will still be a full red palette. If you keep pushing the Next button, you'll notice the tail of the acidus doesn't always have the same color as the main body. To fix this, you have two options : automatic fix or manual fix. The first option is to simply increase the pattern search until the tail has the same color as the body. This works well in most cases, but it might not be the best option here. Instead, search for the main body gradients (press Shift while hovering on the palette), then press Ctrl to select the connected gradients. Now you have to add the tail to the theme, so keep using Shift until you find the tail gradient and left click on it to select it as well. Once you're done, go to edit and "Make a new theme" (Ctrl-M). If you change the color while selecting these palettes, it will also create a new theme automatically, but the auto color feature will be turned off (so you might want to turn it back on). Here's what you should end up with : Now you can simply keep pressing Next and always have nice looking acidus. If you go the sprite image #50, you'll probably have a weird looking fire ball. This happens because the palette is so messed up that the gradient was detected as not a gradient. The color of the gradient will be linked to other gradients in the palette when that happens, but this solution might fail (like it's the case here). To fix this, you can set the original gradient as a fixed theme (it won't be modified by any settings). This is done via Specials -> Replace selection with original palette (the gradients you have to select in this case are 7, 12, 14, 16, 18, 20, 22 and 24; using shift to find them makes it quite easy). I ended up Save your palette themes for another use with File -> Save settings. This will save your seed, your global settings and your custom themes on the right panel. You can copy the initial palette by clicking on Default, then Edit -> Generate custom themes from connected themes -> Press Next. This tool was made for fun; I've decided to add it because it actually works well for regular sprites. GRF Encryption Custom encryption of files in the GRF for version 0x200 is possible. See the application's description for a simple how-to-use guide. It's rather simple though... To get you started, go in Tools -> GRF encryption. Have fun and leave a comment/suggestion!1 point
-
I suggest to you to do this via NPC Script PLUS SQL Query, since in MySQL the loop's condition (while, for) is not so easy. Well I'm not an expert in SQL and I strongly suggest to do this on a secondary db. Here is the logic: In Inventory you have each rows a unique player item. So to do that you must run a query that goes to the first "char_id" to the last one, creating each row for each player. So if you have 50 players, the loop will run 50 times. for(set @i, 150000, set @j, 3; @i <= 150060; set @i, @i + 1, set @j, @j + 1){ query_sql " INSERT INTO `inventory`(`id`, `char_id`, `nameid`, `amount`, `equip`, `identify`, `refine`, `attribute`, `card0`, `card1`, `card2`, `card3`, `expire_time`, `favorite`, `bound`, `unique_id`) VALUES ("+@j+","+@i+",ITEM ID,AMOUNT,0,0,0,0,0,0,0,0,0,0,0,0)"; } Mine for example: If I had 5 players, will start at 150000 and end at 150005. And I need to respect the ID order. Hope you get it, I dont know if this is correct1 point
-
Hi Vengeance, You need to run the map-server_sql under GDB; it seems that your VPS is not generating the .core file after the crash. Within the SSH/terminal, you type the following commands... cd /location/to/trunk gdb ./map-server_sql run Then the process of the map-server_sql will start running. After it receives the crash signal, you would need to type; bt full Finally, you get the debug report that you need; use that report to submit a bug report.1 point
-
Updated diff to latest revision. Fixed compile errors under pre-re settings. Fixed compile errors when pre-re and renewal_edp are configured together. Fixed warnings under pre-renewal settings as well.1 point
-
Oh, now that's more complicated as the format you use isn't any standard I know... I would suggest to use the format %Y-%m-%d rather than %Y%m%d for the .@tree_water variable. If you decide to do this, you could easily use this query: query_sql "SELECT DATEDIFF('" + gettimestr("%Y-%m-%d",21) + "','" + .@tree_water + "')", .@tree_change_lvl;1 point
-
Renewal behaviors should be more or less on target. The only known broken renewal skill is Envenom. I need to do more research to see how exactly the +ATK bonus is applied as it's not a percentage based like most other skills. Renewal skills and behaviors themselves have been EXTENSIVELY tested, but please feel free to pipe up if something seems off. What we really need help with is pre-renewal, and making sure we didn't break anything in the process, as we did some major rewrites to the core of the whole damage calculation process to bring it in line with official. Please test pre-renewal and let me know of any regressions or differences of ANY kind. There may be some changes in terms of overall damage numbers as some "quirks" on official have been documented and implemented but overall it shouldn't vary that much from what rAthena had previously. If there's any significant change in damage output please indicate what skill and equipment/stats you're testing with. I'll have a writeup detailing exactly what changes have been made in renewal in terms of overall gameplay mechanics and skills soon.1 point
-
Yes, you put your IP Address that EasyVPN assigns your computer. That's also the IP you will put in clientinfo.xml so your players can connect.1 point