Jump to content


Popular Content

Showing content with the highest reputation since 07/01/2021 in all areas

  1. 3 points
    I'm back a ready to start my new journey with everyone who going to come with me.
  2. 2 points
    Objective Load scripts not from your standard `rathena/npc` directory but instead, from a remote server via http/https. Design goals Parameters for NPC script loading would be: (a) remote http/https URL (b) support for request header for authorization purposes (e.g. API key) e.g. https://some-ro-developer.com/servers/some-ro-server-1/scripts/my-private-script?version=0 Authorization: Bearer <API token or key> The API token or key can be stored in a git ignored ENV file, so that unauthorized users don't have access to the source code Failure to download the script will result to no operation- warnings but not fatal server crashes The downloaded file must be a single `.txt` file The file is then hashed by the server, and cross-checked to ensure data consistency e.g. https://some-ro-developer.com/servers/some-ro-server-1/scripts/my-private-script?version=1.0.0&type=hash returns "70460b4b4aece5915caf5c68d12f560a9fe3e4" which should match the file's hash The file's existing supported versions can be checked (returns JSON array) e.g. https://some-ro-developer.com/servers/some-ro-server-1/scripts/my-private-script?type=versions returns ["1.0.0", "1.0.1", "1.1.0"] Caching - Can download the files into a git-ignored directory on the actual server for caching purposes If the requested file and version already exists in cache AND the file's hash matches the hash of the server, no need to download the file again NOTE: Not entirely sure yet if I want the download to be perform the caching, because it goes against the whole idea of "not having the source code on your server" aspect. Benefits By adding this source capability, we: enable RO developers who produce intellectual property (NPC scripts in this specific case) to have some control over their IP. NOTE: It is still possible for RO developer scammers to sell shady scripts/sell scripts that aren't theirs, grant their customers temporary access, and then remove access from their customers. enables RO developers to sell licenses to their IP, and revoke license (disable API token) after some validity period (e.g. 3 months). Opens up the opportunity for a monthly or yearly pricing of their NPC script licenses. enable RO developers to share their rAthena server folder to co-developers without risk of accidentally granting them access to other IP that they aren't supposed to share. e.g. RO Admin builds server. RO Admin buys 10 NPC scripts, with license to use in one RO. server. RO Admin hires RO Support dev. RO Support dev granted access to rAthena server files because they have work to do. RO Support dev now has access to npc scripts they didn't purchase, and is a vulnerability. Related source code Specifically, the following files need to be changed/extended: int npc_addsrcfile(const char* name, bool loadscript) - in src/map/npc.cpp Probably adding a new function called int npc_addremotesrcfile(const char* resource_url, char* resource_hash, char* resource_version, bool loadscript) - in src/map/npc.cpp Usage Potentially using it on an npc script would look like this: remotenpc: <URL> <VERSION> <HASH> remotenpc: https://some-ro-developer.com/servers/some-ro-server-1/scripts/my-private-script 1.0.0 70460b4b4aece5915caf5c68d12f560a9fe3e4 Thoughts I wanted to get the thoughts/vibe of the community before pushing through with this idea. I know that we're an open-source community that wants to encourage full-sharing of source code. But I think that the strict constraints that follows from that is something to consider. It limits the number of developers you can onboard onto your team, or needing to think about whether "you trust everyone". I think doing this (a) encourages developers to produce great NPC scripts, (b) enables developers to make good money on it, (c) positions rAthena or whoever to start up some kind of dependency management/NPC scripts platform (similar to npm, or composer) where server owners can shop for NPC scripts. Securely designed remote script access enable developers to focus on writing NPC scripts opportunity for NPC script customization layer developers can now easily scale up their marketing on some dependency management/NPC scripts platform well-paid developer happy developer more scripts happy community I will definitely be exploring this on my own, but I wanted to know what the community thinks about it. PS: Potentially a source of revenue as well for rAthena to sustain itself. I am open to the idea of assisting in the architecture design for that platform.
  3. 2 points
  4. 2 points
    Abra o arquivo statpoint.yml na pasta db/pre-re/ e remova os # para habilitar os demais pontos de níveis... já tem pronto até o nível 255
  5. 2 points
    To add a custom monster summon branch, the steps are: Add MOBG_G_D_Branch_01 before MOBG_MAX in https://github.com/rathena/rathena/blob/2f311bd1ef6abf0de642f93690eb37bebbb34d14/src/map/mob.hpp#L116 Add MOBG_G_D_Branch_01 after export_constant(MOBG_TAEKWON_MISSION); in https://github.com/rathena/rathena/blob/2f311bd1ef6abf0de642f93690eb37bebbb34d14/src/map/script_constants.hpp#L4625 After compiling your server should have created a folder named "import". Add your custom branch data in import/mob_summon.yml Header: Type: MOB_SUMMONABLE_DB Version: 1 Body: - Group: G_D_Branch_01 Default: MAYA Summon: - Mob: MAYA Rate: 100000 - Mob: DEVILING Rate: 700000 - Mob: Drake Rate: 700000 4. In import/item_db.yml - Id: **** AegisName: name Name: name Type: Usable Buy: 10000 Weight: 200 Flags: BuyingStore: true DeadBranch: true Script: | monster "this",-1,-1,"--ja--",-1-MOBG_G_D_Branch_01,1,""; All other steps are unnecessary (I think you just forgot to compile according to the error in your first post).
  6. 2 points
    Are you using a custom prontera map? have you updated your mapcache? Open your GRF with GRF Editor and press alt+ctrl +s will repack GRF and can be read by browedit. kudos to sir @Functor for this.
  7. 2 points
    Need the latest kRO Install folder for your private server? Look no further! ----> Download <---- Latest: 2020-01-24 Installation: Official kRO Updated: 06/04/2021 Download Link: http://bit.ly/latestkro Package contains RSU RO Patcher Lite for kRO and kRO RE by [Ai4rei] This package is maintained by [Akkarin] This ZIP archive is 3.50GB in size and includes all BGMs plus the latest RSU ([2021-02-19] Release Simply download, extract, play! A fan of this topic? Hit the rep button
  8. 2 points
    NPC and MVP for Ragnarok Online RE4 Merchant (npc) and Nemesis (mvp) from Resident Evil "Hello Strange" hahahha .. well ... it was funny
  9. 2 points
    I've finally solved it. battle.cpp: if (flag & BF_SHORT) {//Bounces back part of the damage. if ( (skill_get_inf2(skill_id, INF2_ISTRAP) || !status_reflect) && sd && sd->bonus.short_weapon_damage_return ) { rdamage += damage * sd->bonus.short_weapon_damage_return / 100; rdamage = i64max(rdamage,1); } else if( status_reflect && sc && sc->count ) { to if (flag & BF_SHORT) {//Bounces back part of the damage. if ( (skill_get_inf2(skill_id)&INF2_TRAP || !status_reflect) && sd && sd->bonus.short_weapon_damage_return) { rdamage = i64max(rdamage,-1); } else if ( (status_reflect) && sd && sd->bonus.short_weapon_damage_return) { rdamage += damage * sd->bonus.short_weapon_damage_return / 100; rdamage = i64max(rdamage,1); } if( status_reflect && sc && sc->count ) { Thanks a lot to @Wazaby for assisting me with this. EDIT: You may just add this line on else if, if you want trap to reflect skill_get_inf2(skill_id)&INF2_TRAP EDIT 2: Just to update to my fix, for those people using bLongWeaponDamageReturn: in battle.cpp Find: if (!status_reflect && sd && sd->bonus.long_weapon_damage_return) { rdamage += damage * sd->bonus.long_weapon_damage_return / 100; rdamage = i64max(rdamage, 1); } } to: if (!status_reflect && sd && sd->bonus.long_weapon_damage_return) { rdamage = i64max(rdamage,-1); } else if (status_reflect && sd && sd->bonus.long_weapon_damage_return) { rdamage += damage * sd->bonus.long_weapon_damage_return / 100; rdamage = i64max(rdamage, 1); }
  10. 2 points
    The topic has been removed because of rAthena staff double standards and hypocrisy things. (rA staff blame me that I made a money on this topic while it's not and never was) All that I did for the last 2.5 years with around ~1k answers from my side is help for free for newbies here, but to rA staff, my topic is a pain in the ass. Sorry guys, but the topic can't be maintained on such a community anymore because of its admins. Bye
  11. 1 point
    prontera,0,0,5 itemshop Proof of Donation Shop 123,7179,501:10 Más información click aquí.
  12. 1 point
    Try to check your job_exp. I think u edit something there and cause this error/issue.
  13. 1 point
    It was already declared in SRC so you only need to do it via client. And it's easy. efstids.lub EFST_DEVOTION = 60, stateimgiconinfo.lub [EFST_IDs.EFST_DEVOTION] = "devotion.tga" finally in stateiconinfo.lub StateIconList[EFST_IDs.EFST_DEVOTION] = { haveTimeLimit = 1, posTimeLimitStr = 2, descript = { { "Devotion", COLOR_TITLE_BUFF }, { "%s", COLOR_TIME }, { "Under influence of devotion." }, { "Received shield buff." }, } }
  14. 1 point
    VPS > https://www.ovhcloud.com/es/vps/ (Recomendable Ubuntu 18.04+) Web Hosting > https://www.a2hosting.com/web-hosting
  15. 1 point
    Hi all, I am trying to modify the account info and all other credit balance on the FluxCP to actually displaying the in-game Cash point balance as below. Thanks
  16. 1 point
    Intenta reemplazarlos por estos: https://rathena.org/board/topic/122152-gefenia-c3dworldres-error-on-latest-kro-patch/#comment-371231
  17. 1 point
    Hola buenas noches; Para este caso tengo una idea simple para los que no tengan conocimiento metiendo mano al src (No se preocupen todos aprenden en su momento^^) Para este caso tome un item usable(Para este ejemplo Aloe Vera De la carpeta db/pre-re/item_db.txt)y lo modifique de la siguiente manera 606,Aloebera,Aloevera,11,1500,,100,,,,,0xFFFFFFFF,7,2,,,,,,{ if(strcharinfo(3)=="prontera") { message strcharinfo(0),"No Puedes abrir este objeto en este mapa";end; }else{ callfunc "invocador_custom"; }},{},{} Para este caso borre el efecto de la aloe vera(el original) y le inserte mi script. Explicarlo es simple si estas en prontera no te dejara abrir el item y si no estas en mapa que en este caso es prontera haces el llamado a la funcion "invocador_custom". Ahora vamos a crear un archivo en la carpeta custom y le pondremos funciones_customizadas.txt(Le pueden poner el nombre que sea xD) Y dentro de ese archivo le agregan el siguiente codigo: function script invocador_custom { setarray .MVP_List[0],1038,1039,1046,1059,1086,1087,1112,1115,1147,1150,1157,1159,1190,1251,1252,1272,1312,1373,1389,1399,1418,1492,1502,1511,1583,1623,1630,1646,1647,1648,1649,1650,1651,1658,1685,1688,1708,1719,1734,1751,1768,1779,1785,1802,1832,1871,1874,1885,1917,1980,2022,2068,2087,2131,2156,2165; set .Monster,rand(57); atcommand "@monster "+ .MVP_List[.Monster]; end; } Posteriormente vas a el archivo script_custom.conf (carpeta npc) y agregas la siguiente linea: npc: npc/cutom/funciones_customizadas.txt NOTA: Si quieren agregarle delay al item vayan a la carpeta db/pre-re y luego al archivo item_delay.txt y ingresan al final esto. 606,5000 //<-- 5 Seg delay La diferencia de usar este sistema a que menciona los demas que aca no generas la chance de que uno salga mas y otro menos esto es random, se puede modificar para que uno tenga mas chance pero seria mas largo el codigo. Espero que a cualquiera le sirva esta idea un saludo a todos y cuidense.
  18. 1 point
    //for map //cutin2(<"map">,"<filename>",<position>); function cutin2 { freeloop(true); [email protected]$ = getarg(0); [email protected]$ = getarg(1); [email protected] = getarg(2); [email protected] = getmapunits(BL_PC,[email protected]$,[email protected]); for([email protected]=0;[email protected]<[email protected];[email protected]++){ if(([email protected] = convertpcinfo([email protected][[email protected]],CPC_CHAR))) cutin([email protected]$,[email protected],[email protected]); } return; } //whole server //cutin3("<filename>",<position>); function cutin3 { freeloop(true); [email protected]$ = getarg(0); [email protected] = getarg(1); [email protected] = getunits(BL_PC,[email protected]); for([email protected]=0;[email protected]<[email protected];[email protected]++){ if(([email protected] = convertpcinfo([email protected][[email protected]],CPC_CHAR))) cutin([email protected]$,[email protected],[email protected]); } return; }
  19. 1 point
    View File GRF Editor Hey everyone, This is a GRF tool I started to develop for my own personnal use, but I thought I'd share it since I've upgraded the UI. Its primary goal is to be easy to use while offering a wide variety of options and customizations. The software is quite stable and can handle large operations easily. 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. Clean and very interactive interface. Saving formats supported : 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. Tools Sprite editor : a simple sprite editor with powerful features. Semi-transparent images can be added, you can easily change the order or replace images, etc. This tool can convert images in the wrong type by showing you multiple solutions (merging a new palette, dithering the image by using current palette, using the closest color, and a few more). 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. Palette recolorer : creates new sprites by changing their colors (this tool is now deprecated). Client database editor : allows modifications of the database client files (txt and lua) with easy and simple tools. Work in progress. 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 2014-02-05. 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 ( http://thor.aeomin.net/ ). 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 the root node of the project and select the tab "Container options". 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 3.5 (SP1) Client Profile to run (3.5 or more will work as well). Automatically converts file name encoding to their proper values (you can change the encoding). 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 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) 3) Preview of GrfCL with the MakeGrf command 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/10/2013 Category GRF Files Content Author  
  20. 1 point
    Hello there, Some of you might know this already and maybe have read the original guide for it. But for those who doesn't know it yet, see below. Note: I’m sharing the steps on how to do it using CentOS7 for the proxy server/VM while the main server/VM will be anything you like as long as rAthena supports it. Before everything else, I would like you to know that this guide will only work on CentOS7 and this doesn’t guarantee that it will provide low latency to your players since its main function is to HIDE the IP of your MAIN VPS to avoid being bombarded with unwanted traffic. In the event, you received lots of traffic on your proxy, you can just reject it on your main VPS via firewall rules/iptables. Requirements Spare VPS to configure the proxy Patch your client using updated "Enable Proxy Support" patch provided by 4144's NEMO & Functor DO NOT patch "Skip Service Select" since you need it to choose from the multiple connections. Add multiple connection on your clientinfo.xml/sclientinfo.xml Configure subnet_athena.conf to prevent sending real IP in network packets from login and char servers. (Functor) (Optional) Enable "Cancel to Select Service" Patch VPS Configuration (IMPORTANT) Note: Again, make sure that your VPS is using CentOS7 since this was tested under the said OS and working 100% Follow the commands provided below. /* Port Forwarding CentOS 7 FirewallD */ // ======================================================================== // Please read the comments per line it is self-explanatory. // Important Parameters: // INSERT_ZONE = output of the get default zone // INSERT_IP = is the public IP of your main VPS or server // If you like the guide give it a thumbs up! // ======================================================================== // This command is to get the default zone being used by your VM. firewall-cmd --get-default-zone // This command is to check all rules applied to your VM by the current active zone. firewall-cmd --zone=INSERT_ZONE --list-all // Enabling Masquerade Status (IP Forwarding). // This is the important configuration else below won't work firewall-cmd --zone=INSERT_ZONE --add-masquerade --permanent // IP/Traffic forwarding // Make sure you have configured masquerade firewall-cmd --zone="INSERT_ZONE" --add-forward-port=port=6900:proto=tcp:toport=6900:toaddr=INSERT_IP --permanent firewall-cmd --zone="INSERT_ZONE" --add-forward-port=port=6121:proto=tcp:toport=6121:toaddr=INSERT_IP --permanent firewall-cmd --zone="INSERT_ZONE" --add-forward-port=port=5121:proto=tcp:toport=5121:toaddr=INSERT_IP --permanent // Add rules for ro-ports (assuming that you didn't change the port) firewall-cmd --zone=INSERT_ZONE --add-port=6900/tcp --permanent firewall-cmd --zone=INSERT_ZONE --add-port=6121/tcp --permanent firewall-cmd --zone=INSERT_ZONE --add-port=5121/tcp --permanent // Reload rules to take effect firewall-cmd --reload clientinfo.xml/sclientinfo.xml Configuration (IMPORTANT) The example below shows how to configure multiple connections/tunnel to your VPS. (P.S. I'm not quite sure how many connection is the limit that can be defined on the xml) <?xml version="1.0" encoding="euc-kr" ?> <clientinfo> <desc>Ragnarok Online Client Information</desc> <servicetype>america</servicetype> <servertype>primary</servertype> <connection> <display>^FF0000[ SE Asia ]^000000 - Connection Tunnel</display> <balloon>This server is dedicated to SEA Region to possibly reduce latency.</balloon> <address>INSERT_IP_HERE</address> <port>6900</port> <version>46</version> <langtype>1</langtype> <registrationweb>https://rathena.org/board</registrationweb> <loading> <image>loading00.jpg</image> <image>loading01.jpg</image> </loading> <yellow> <admin>2000000</admin> </yellow> </connection> <connection> <display>^FF0000[ US Central ]^000000 - Connection Tunnel</display> <balloon>This server is dedicated to US Central Region to possibly reduce latency.</balloon> <address>INSERT_IP_HERE</address> <port>6900</port> <version>46</version> <langtype>1</langtype> <registrationweb>https://rathena.org/board</registrationweb> <loading> <image>loading00.jpg</image> <image>loading01.jpg</image> </loading> <yellow> <admin>2000000</admin> </yellow> </connection> <connection> <display>^FF0000[ US West ]^000000 - Connection Tunnel</display> <balloon>This server is dedicated to US West Region to possibly reduce latency.</balloon> <address>INSERT_IP_HERE</address> <port>6900</port> <version>46</version> <langtype>1</langtype> <registrationweb>https://rathena.org/board</registrationweb> <loading> <image>loading00.jpg</image> <image>loading01.jpg</image> </loading> <yellow> <admin>2000000</admin> </yellow> </connection> </clientinfo> subnet_athena.conf (IMPORTANT) Change the default value (shown below) subnet: TO subnet: As per Functor, "If you will just apply the patch of EXE - game client will not use these IPs from network packets. But players will be able to find real IP by using any network sniffer.". That's it. If you have question, drop by a comment. ROK On! Original Links: Ragnarok Proxy Setup (Hide your VPS IP) Other: Setting up 2020 rAthena Server | Setting up 2020 Client - rAthena based
  21. 1 point
    This is basically not allowed. FYI. A message from @Functor himself, You have to know, that license is personal. You can't resell/share license or change the owner. You can use it for your personal server only. FYI all.
  22. 1 point
    Después de varias pruebas me pude percatar que al entrar con el personaje con el basic skill en 3, osea ya cuando se puede sentar pues no se pega el personaje me parece extraño pero eso me pasa no se si solo a mi o alguien mas pasa por esto. Lo comento por si es un bug o algo que pasa normalmente. Gracias, saludos!
  23. 1 point
    You actually made a duplicate post on this forum. This is your answer right here, check the wiki about map cache.
  24. 1 point
    I still don't understand exactly how you want to change these effects though.
  25. 1 point
    isn't it you can just follow the example you give above, if you want it to work on gvg use mf_gvg, as for woe can use mf_gvg_castle for specific, or compare map name with g_cas like in woe controller script and for koe you need custom mapflag like mf_koe as condition and same other too, I can said this is strange question.
  26. 1 point
    id is unit game id not mob id, the check is correct, if target is monster, then convert it to mob_data then check the target mob id if that monster is emperium. if(target->type == BL_MOB) { struct mob_data *md = BL_CAST(BL_MOB, target); if (md->mob_id == MOBID_EMPERIUM) hp = 1; }
  27. 1 point
    thanks i ll try this one when i came back home PS: @DorekoNekoThis codes still heals 777 case PR_SANCTUARY: hp = (skill_lv > 6) ? 777 : skill_lv * 100; if (target->type == BL_MOB && target->id == MOBID_EMPERIUM) { hp = 1; } case PR_SANCTUARY: hp = (skill_lv > 6) ? 777 : skill_lv * 100; if (target->id == MOBID_EMPERIUM) { hp = 1; } i tried this code case PR_SANCTUARY: hp = (skill_lv > 6) ? 777 : skill_lv * 100; if (target->type == BL_MOB && target->id == MOBID_EMPERIUM); hp = 1; break; case PR_SANCTUARY: hp = (skill_lv > 6) ? 777 : skill_lv * 100; if (target->id == MOBID_EMPERIUM); hp = 1; break; it heals 1 but it also heals 1 on players
  28. 1 point
    search for the item id.
  29. 1 point
    By default, it should inherit id: 5 name: "VIP" inherit: ( "Player" ) /* can do everything Players can */
  30. 1 point
    View File Elf and Orc [NPC sprite] sprite of an elf archer and an Orc that I made inspired by the world of Warcraft Submitter Tio Akima Submitted 05/11/2021 Category NPC Sprites Video Content Author TioAkima  
  31. 1 point
    The rAthena have changed the default PACKETVER to 20180620 because we support all required features or have them on some pull requests in the Git repository and because of that I'm releasing this client. That's all. Important Note: This client uses sclientinfo.xml instead of clientinfo.xml. Download link: 2018-06-20eRagexeRE.exe (MediaFire).
  32. 1 point
    First of all, I apologize for the horrible English. The panel's official language is in PT-BR, if someone wants to translate they can send me PM or wait until I do a translation. ======= Hello guys, I present to you a panel that I developed in open source totally free for the community, developed in Laravel 8. Project Link: https://github.com/rscodexx/ragpainel Demo: https://rscode.com.br/ragpainel/ Functions [] General [] View users online. [] View accounts total. [] View chars total. [] View guilds total [] Top 3 players (PVP, WOE and MVP). [] User [] Register Account [] Login Account [] Change account (photo, password, email and birthdate). [] View last ip [] View days vip [] View cashpoints [] Forgot password [] Forgot login [] Admin [] View Logs [] Manager Credits [] Manager Vip [] Manager Staff [] Manager Bans [] Manager Tickets [] Configs Panel [] Rankings [] WOE [] MVPs [] Zenys [] PVP [] Events [] Database [] View Itens [] View Monsters [] Support [] NewTicket [] ViewTickets [] Donate [] To do Donate [] Consult Donates Layout Mobile Desktop Technologies The following tools were used in the construction of the project: Minimum Requirements PHP in version 7.3 or higher BCMath PHP Active Extension CtypePHP Active Extension Fileinfo PHP Active Extension JSONPHP Active Extension Mbstring PHP Active Extension OpenSSL PHP Active Extension PDO PHP Active Extension TokenizerPHP Active Extension XMLPHP Active Extension Install on Windows. Prerequisites: Before you begin, you will need to have the following tools installed on your machine: GIT, Apache, Mysql (Or any other type of database), Composer If you do not know how to install and configure a server environment, you can use tools that are all ready as: Xampp Wamp In addition, it is good to have an editor to work with the code as VSCode Running the Backend (server) # Clone project $ git clone https://github.com/rscodexx/ragpainel.git # Or download the project directly from the repository: https://github.com/rscodexx/ragpainel # Rename the file .env-example(is in the root folder of the project) to .env and config: DB_CONNECTION=mysql # DB Type DB_HOST= # DB Ip DB_PORT=3306 # DB Port DB_DATABASE=ragpainel DB Name DB_USERNAME=ragnarok DB User Name DB_PASSWORD=ragnarok DB User Password TIMEZONE=America/Sao_Paulo # Time Zone LOCALE=pt-BR # Language(only the one supported for now). FALLBACK_LOCALE=pt-BR # Language for erros(only the one supported for now) # Access the project folder on your terminal $ cd ragpainel # After entering the project directory, install the composer and its dependencies. $ composer install # Wait for the installation # Install the panel tables, still with terminal open in the project directory use: $ php artisan migrate # There, your server is installed and configured. Running the web application (Frontend) # Start your server, to access the panel you need to access the public folder, an example below: $ http://localhost/ragpainel/public # You can also run the application without the need for an apache server configured through php artisan. # Access the project folder in your terminal $ cd ragpainel # Type the command: $ php artisan serve # Just click on the generated link to start the panel. # Use the command CTRL + C to shut down the server. How to contribute to the project? Post all the bugs and errors found here: https://github.com/rscodexx/ragpainel/issues If you want, you can make a DONATION
  33. 1 point
  34. 1 point
    A whole map dedicated to traders to sell/buy. You can either choose to put NPCs for players to buy all kinds of stuff or let players set up their shops in their own tents. It also includes a little beach island with deckchairs, some shadey/hidden areas that can lead to indoors (for illegal shops? xD) and also walking access on some ships and boats.
  35. 1 point

    Version 1.0.0


    Experiment your First Bootstrap Flux. Design by @Mihael Flux Integrated Themes. Some of New rA Devs msg me to share the themes in Flux Integrated, Here you go I hope you like it. Thank you very much rAthena Developers. Installation: Step 1: upload the Addon Folder on your flux name skyzone.zip make sure it is extracted. Step 2: upload the themes on your themes name is purple_themes. Step 3: open the applocation.php that located on your config Folder Step 4: find 'ThemeName' => array('default', 'bootstrap'), and add the purple themes it is look like bellow + 'ThemeName' => array('purple_themes', 'default', 'bootstrap'), NOTE: - do not remove the default to override all pages on the default flux. - this is 100% free release. do not sell. - Orange Themes by Mihael will be next upload.


  36. 1 point
    Hello people, I'm Katakuri. I'm on a part of learning deeply on spriting and I hoped you like it. ----------------------------------------------------------------------------------------------------------------------------- Various headgears, monster & weapons from different anime. ----------------------------------------------------------------------------------------------------------------------------- 2020 Update Equipment Set for each job/classes Seven Deadly Sins - Sacred Treasure Weapons FREE RELEASE Owl Mask Link Chubby Meow Link Randoseru / School Bag (Japanese) Link Notes: 1. Sprites came from different game resources which I reworked to make it ROish looks. 2. I won't teach where to find raw image references of it. 3. I will always update this topic as I accomplished something new. 4. I'm newbie regards this matter but I always helping myself to get better. 4. Feel free to comment thanks. 5. If you want to contact me here's my discord. Katakuri#4880 For more works of mine kindly join us on our discord channel! Link: Click me for Discord Link!
  37. 1 point
    Replace them. https://herc.ws/board/files/file/269-collection-fixed-dungeon-maps/
  38. 1 point
    Try this script I made (Is not tested so it could not work): prontera,150,150,7 script Quick Sell NPC#QSN1 815,{ goto OnClick; end; OnInit: // = CONFIGURE YOUR NPC HERE ========== // Enter the Item ID the NPC will buy .buyItemID = 999; // If 1, the npc will buy all the item stack at once .buyAllItems = 0; // If .buyAllItems is 0, NPC will buy the quantity set here .buyQuantity = 1; // Show deal message: 1 or not: 0 .showDealMessage = 1; // ==================================== waitingroom "B>" + getitemname(.buyItemID),0; end; OnClick: if (countitem(.buyItemID)) { [email protected] = getiteminfo(.buyItemID,1); if (.buyAllItems) { Zeny += [email protected] * countitem(.buyItemID); [email protected] = [email protected] * countitem(.buyItemID); if (.showDealMessage) dispbottom "You sold " + countitem(.buyItemID) + " " + getitemname(.buyItemID) + " for " + callfunc("F_InsertComma",[email protected]) + " Zeny."; delitem .buyItemID,countitem(.buyItemID); } else { if (.buyQuantity > 1 && countitem(.buyItemID) < .buyQuantity) { Zeny += [email protected] * countitem(.buyItemID); [email protected] = [email protected] * countitem(.buyItemID); if (.showDealMessage) dispbottom "You sold " + countitem(.buyItemID) + " " + getitemname(.buyItemID) + " for " + callfunc("F_InsertComma",[email protected]) + " Zeny."; delitem .buyItemID,countitem(.buyItemID); } Zeny += [email protected] * .buyQuantity; [email protected] = [email protected] * .buyQuantity; if (.showDealMessage) dispbottom "You sold " + .buyQuantity + " " + getitemname(.buyItemID) + " for " + callfunc("F_InsertComma",[email protected]) + " Zeny."; delitem .buyItemID,.buyQuantity; } } else { dispbottom "Not enough items to sell."; } end; }
  39. 1 point
    View File Ragnarok Emojis v2.0 __________***PLEASE READ***__________ I updated a variety of ragnarok emojis. Example: became > Feel free to do whatever with the graphics. Use parts of it or fully, use them as a base or else - but please follow these rules: ________________________________________ Rules: Do not sell these graphics to anyone. Do not ask me to fix, adjust or change something unless you're willing to pay for it. If you upload them somewhere for others to download, please credit me and/or link back to herc.ws's download section. Contains: Ragnarok Emojis Contact Discord: 방탄#4526 Submitter Daifuku Submitted 02/10/2019 Category Other Video Content Author Daifuku  
  40. 1 point

    Version 1.2


    In response to this post : https://rathena.org/board/topic/122667-woe-ranking-script/ https://rathena.org/board/topic/121631-woe-rankings-script/#comment-373249 https://rathena.org/board/topic/96397-woe-ranking/ https://rathena.org/board/topic/109488-ranking-woe/ By downloading this file, you agree with my Terms of Service: • You are not allowed remove my signature from any of the included files. • You are not allowed claim my work as yours. If you like it, give me a


  41. 1 point
    @Alberan Wow, thanks that you say about ESRGAN! I work with some npc sprites and it`s really looking good in game~ New part of sprites:
  42. 1 point
    Spent a good hour figuring out how vferrari did this, and while I'm not very good at tutorials, I'd be happy to upload my results. Please see attached files for Meteor Storm (I don't have much experience with renewal files so I didn't bother with Comet). While my attempt was extremely accurate with the grid that would be hit by MS, the downside of this is that when the screen is rotated, the effect remains the same and thus becomes inaccurate in predicting which cells would be hit by MS. This is the reason why I release these files to you now, instead of keeping it for myself. Also, I am not great with recording or making GIFs, so please feel free to test them out yourself. Please download ALL the files. 0lordbl.bmp meteor1.str meteor2.str meteor3.str meteor4.str
  43. 1 point

    Version 1.1.1


    Ehh since my event scripts are piling up, I decided to make an Event Manager // Basic Event Manager // By Mabuhay /*-=-=-=-=-=-=-=-=-=-=-=-=-=- Currently added are the ff : {#} NAME - "NPC_NAME" [1] Bombring - "Event_Bombring" [2] Dice - "Event_Dice" [3] Last Man Standing - "Event_LMS" [4] Novice V Zombie - "Event_NvZ" [5] Poring Catcher - "Poring_Catcher" [6] Poring Hunter - "Poring_Hunter" (Added 12-15-2019) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/ // For easier management of Event NPCs ///////////////////////////////////// // NOTE: // ///////////////////////////////////// // I don't support any modifications unless I want to. // But if you want to change things especially the rewards, // Please refer to my F_Reward Functions // https://rathena.org/board/files/file/4068-itemvariablepoints-reward-function-for-beginners-or-lazy/ // You should be able to easily change the rewards // If you have basic scripting knowledge Header Settings: OnInit: // 1 = item reward // 2 = variable/cashpoints reward // If you want to set item and variable/cashpoints rewards, do 1|2. // If you only want 1, just choose between 1 or 2 $event_options = 1|2; // If item reward enabled // What items will be rewarded setarray $event_item_reward, 501, 10, 502, 5; // If variable reward.. set to your variable. // If cashpoints.. set to #CASHPOINTS / #KAFRAPOINTS (Free Cash Points) $event_var$ = "#EVENTVARIABLE"; // Variable name? // If cash points, set to Cash Points // If your custom var, set to the name of that thing. $event_var_name$ = "Custom Points"; // How much points gain if #VAR / #CASHPOINTS / #KAFRAPOINTS? $event_var_gain = 1; $event_item_arr = getarraysize($event_item_reward); // @eventstart for GM bindatcmd "eventstart", strnpcinfo(0)+"::OnStart",60,60; // @eventjoin bindatcmd "eventjoin", strnpcinfo(0)+"::OnJoinEvent"; end; You may now use @eventstart for GMs to select which ones to start. @eventjoin for players to enter and see which event is currently active Event timers / Clock are to be set here : // OnClock<hour><minute>: donpcevent "<npc_name>::OnStart"; OnClock0000: donpcevent "Event_Bombring::OnStart"; end; //----- 12 mn OnClock0100: donpcevent "Event_Dice::OnStart"; end; OnClock0200: donpcevent "Event_LMS::OnStart"; end; OnClock0300: donpcevent "Poring_Catcher::OnStart"; end; OnClock0400: donpcevent "Event_NvZ::OnStart"; end; OnClock0500: donpcevent "Poring_Hunter::OnStart"; end; OnClock0600: donpcevent "Event_Bombring::OnStart"; end; //----- 6 am OnClock0700: donpcevent "Event_Dice::OnStart"; end; OnClock0800: donpcevent "Event_LMS::OnStart"; end; OnClock0900: donpcevent "Poring_Catcher::OnStart"; end; OnClock1000: donpcevent "Event_NvZ::OnStart"; end; OnClock1100: donpcevent "Poring_Hunter::OnStart"; end; OnClock1200: donpcevent "Event_Bombring::OnStart"; end; //----- 12 nn OnClock1300: donpcevent "Event_Dice::OnStart"; end; OnClock1400: donpcevent "Event_LMS::OnStart"; end; OnClock1500: donpcevent "Poring_Catcher::OnStart"; end; OnClock1600: donpcevent "Event_NvZ::OnStart"; end; OnClock1700: donpcevent "::OnStart"; end; OnClock1800: donpcevent "Event_Bombring::OnStart"; end; //----- 6 pm OnClock1900: donpcevent "Event_Dice::OnStart"; end; OnClock2000: donpcevent "Event_LMS::OnStart"; end; OnClock2100: donpcevent "Poring_Catcher::OnStart"; end; OnClock2200: donpcevent "Event_NvZ::OnStart"; end; OnClock2300: donpcevent "Poring_Hunter::OnStart"; end; //----- 11 pm Currently I just alternately activate events per hour. You can change the event time as you wish. You may choose any of the ff: OnClock<hour><minute>: OnMinute<minute>: OnHour<hour>: On<weekday><hour><minute>: OnDay<month><day>: I hope this helps. If you want me to add more, just PM me on an event script that needs to be updated. Thank you. Compatibility is your responsibility. No backward Compatibility Support. Enjoy! NOTE : If you find this useful, please click the Upvote button to motivate me to do stuffs like this And you are welcome!


  44. 1 point
    I think I have seen this map on discord, I love it
  45. 1 point
    Install Both for 32 and 64 bit
  46. 1 point
    i was trying to recompile my rathena.sln but it was giving me an error "msbuild error msb1008: only one project can be specified". Turns out that there was a missing " " on the path. Nevertheless this whole Guide is a total kick a** Kudos to you! MSBUILD "C:\user\admin\desktop\rathena\rAthena.sln" /p:PlatformToolset=v141 /m
  47. 1 point
    Install MS Visual Studio 2012 redist. package. You can find it on the ms website: https://www.microsoft.com/en-US/download/details.aspx?id=30679
  48. 1 point
    BrowEdit Tutorial Videos Here is a list of free tutorial videos I made about a year ago that gives BrowEdit users a good grasp on using the BrowEdit Mapping Program. The tutorial videos teaches young BrowEdit users from the ground up of how to install BrowEdit, get familar with the interface and functions and finally actually producing a fully functional map you can integrate in a ragnarok server. I plan on expanding this list to cover a broader range of topics. Browedit Tutorial #1 - Getting Started Video Information: Downloading and setting up BrowEdit. Configuring BrowEdit to be usable & providing recommendations on BrowEdit revisions. - Browedit Tutorial #2 - Basics of Designing Video Information: Understanding the user inferface of BrowEdit & editing functions. Teaches navigational controls and introduces how to properly setup a map for editing. Part 1 - Part 2 - Part 3 - Browedit Tutorial #3 - Intermediate Level Terrain Editing Video Information: Teaches how to apply textures, build walls, making slopes and environmental terrain changes, and controlling water levels. Part 1 - Part 2 - Browedit Tutorial #4 - Intermediate Level Light Editing Video Information: Introduces how to implement lights to brighten and colorize a map. Gives recommended RGB combinations and lighti strength parameter settings in giving ideal light and shadow outputs. Part 1 - Part 2 - Browedit Tutorial #5 - Adding Effects Video Information: How to add effects to a map to fit the needs of the environment. Examples can be torches, flying bats, magic circles etc.. - Browedit Tutorial #6 - Adding Sounds Video Information: How to add ambient sounds to your map. This includes noises you hear in niflheim, prontera, geffen etc.. - Browedit Tutorial #7 - Making a Sky Map Video Information: Ever wanted to make a sky map? Well this tutorial will show you how to make a floating blue sky based map with cloud formations. - Browedit Tutorial #8 - Adding Custom Textures to BrowEdit Video Information: How to add your own custom textures to BrowEdit and using them in your custom map. - Browedit Tutorial #9 - Adding Custom BGM Music to a Map Video Information: How to add your own personal background music to a map as well as making sure the BGM file is compatible with the client. - Browedit Tutorial #10 - Adding a Custom Map to a Server Video Information: How to add your own personal map to a eAthena test server so you can test your own maps. - Browedit Tutorial #11 - Adding a Duplicate Model that Utilizes Custom Textures Video Information: Ever wanted to use a model in a map that doesn't come into conflict with another model. Perhaps for the sake of the maps theme? - Browedit Tutorial #12 - Quick Tips/Tricks & Useful Hotkey Info Video Information: Creating a new map can take a while. This tutorial will cover useful tips/tricks to reduce the development time of your map as well as avoiding long processes to complete a task. - Browedit Tutorial #13 - New Lightmaps Tutorial Video Information: This tutorial is a revamp of the previous lightmaps video tutorial. This particular tutorial is a more concise and easier to learn version of how to create lightmaps with ease in the areas of shadows/sun/colors/global lighting and light fixes. - Browedit Tutorial #14 - Making Slopes Video Information: This is a quick tutorial that explains how to create sloped terrain primarily based on ramps that can lead up to raised areas. It also shows how to make slopes on the edge of a map. - Browedit Tutorial #15 - Making Map Minimaps Video Information: Want to make a minimap that matches your coordinates perfectly whether it be a minimap with color or black/white gradient? Well this tutorial will cover just that! - Browedit Tutorial #16 - GAT Editing Video Information: Explains the main kinds of gats, how to place them, slope them, and what applications they are used in. - Browedit Tutorial #17 - 3ds Max Modeling [Acquiring Models] Video Information: A quick video covering several different sites you can get models for free that are supported by 3ds Max. - Browedit Tutorial #18 - 3ds Max Modeling [importing/Apply Textures to Model] Video Information: Using 3ds Max, you will be able to import models supported by 3ds Max, apply textures to them, and UV Unwrap the model to have it ready for RO. - Browedit Tutorial #19 - 3ds Max Modeling [Polygon Limit & Splitting Models] Video Information: RO has limits to how many polygons it can draw per model. This tutorial will explain what those limits are and how to split a model into parts. - Browedit Tutorial #20 - Exporting & Importing Lightmap Shadows for Editing Video Information: How to remove or add specific shadows on a map without having to redo all of the lightmaps through means of exporting & editing the shadow png file directly. - Browedit Tutorial #21 - Cleaning Up Shadows Along Walls & Ground Video Information: Didn't like the shadow drop across the edge of a map or lifted platform/wall? - Browedit Tutorial #22 - How to Create Transparent Objects Video Information: How to provide transparency in a model by means of TGA support. - NOTE: If you wish to see a certain topic covered in a future tutorial video, please make a request by leaving a comment in this thread!
  49. 1 point

    Version Royal Turbo Room v2


    Edit by : Jeremy Reyes / DaemonSpade.rA Facebook : https://www.facebook.com/GMRaizen this map can be use as Mall/Quest Area or Town? Feel Free to use it.. and thanks haha


  50. 1 point
    - script NightmareMode -1,{ OnHour00: OnHour03: OnHour06: OnHour09: OnHour12: OnHour15: OnHour18: OnHour21: set .Nightmare,1; maprespawnguildid "<your_pvp_map>",0,3; setbattleflag "pk_mode",1; atcommand "@reloadbattleconf"; setbattleflag "base_exp_rate", 2*getbattleflag("base_exp_rate"); setbattleflag "job_exp_rate", 2*getbattleflag("job_exp_rate"); atcommand "@reloadmobdb"; announce "Nightmare Mode is now active.",0; sleep 2000; announce "For the next 15 minutes, all maps except towns will be open for PVP, and EXP rates will be doubled. Have fun!",0; initnpctimer; end; OnTimer900000: stopnpctimer; if (!.Nightmare) end; set .Nightmare,0; announce "Nightmare Mode is now off.",0; setbattleflag "pk_mode",0; atcommand "@reloadbattleconf"; setbattleflag "base_exp_rate", getbattleflag("base_exp_rate")/2; setbattleflag "job_exp_rate", getbattleflag("job_exp_rate")/2; atcommand "@reloadmobdb"; end; OnPCDieEvent: if (!.Nightmare) end; if (killerrid < 110000000) set [email protected],2; else set [email protected],1; set [email protected], [email protected]*(BaseExp + NextBaseExp)/100; if (BaseExp - [email protected] < 0) set BaseExp,0; else set BaseExp, BaseExp - [email protected]; end; } I couldn't quite figure out setting the "pk_mode" mapflag, dunno if that'll work for you. But the rest is fine.


  • Newsletter

    Sign Up
  • Create New...

Important Information

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