Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 12/26/21 in all areas

  1. 4CrAM-Open Hey everyone. Today marks a very special day for the 4CrAM project. A day that will change the private server community. The project has been a big success and it has not only made it possible to have fully working for 4th jobs on private server's a thing but it also allowed me to recover from a difficult situation I was in at the start of the project. Im very thankful to the people who have supported me up to this moment. Without you this project wouldn't of been possible. But its been about a year and a half and with the code finally reaching a point that im happy with it, I feel its time to reveal it to the public. Today is the day I make all of the work ive done up to this point public for the community but with a little extra in it. The code contains fully working 4th jobs, fully working traits system with the sub-stats working 100% official, the AP system fully working, all 4th job skills working, a few new commands along with some others modified for developing purposes, a custom job changer NPC for all the latest jobs, and a few other goodies. But the last feature to be included with this release is something I felt would be a good thing for the player base, overall community, and my way of saying thanks. I don't want players to be divided into 2 sides due to one side having access to 4th jobs and the other side having their character's potential limited. So with this I decided to also release full ready to play support for all of the expanded jobs. This will allow all players to reach their final jobs and gain access to base level 250 and the traits system. However, none of their skills are coded in yet. The power gap between 4th jobs and older renewal era expanded jobs was just too great to keep this from the community and with this release the gap can be minimized. I hope everyone enjoys this release and have as much fun with it as I did coding it all. This is my gift to the community. Enjoy. Also be sure to leave me a thank you if your not too lazy. One final note. CHECKMATE AND FUCK YOU TO A CERTAIN PERSON!!!! You know who you are. >=D 4CrAM-Open Github Link Note: A 2020-09-02bRagexeRE client or newer is needed for 4th jobs access. A 2021-11-17aRagexeRE or newer is needed to access everything. Be sure to adjust the set client date your using in the defines_pre.hpp file. Keep in mind the 2021-11-17 client is still new and issues are likely to still exist with its support. https://github.com/Rytech2/4CrAM-Open
    1 point
  2. on mob_db.yml find DamageTaken and delete all those
    1 point
  3. You need put a callfunc instead of a bonus. Make an txt on your npc folder and add this: function script F_NoWoEBonus { if(agitcheck() || agitcheck2() || agitcheck3()){ end; } bonus bStr,500; } and add callfunc on you desired item (you need to put in script line). callfunc "F_NoWoEBonus"; <<< this would go on the script item line. 2021-12-25 20-38-42.mp4
    1 point
  4. Como te dijeron mas arriba, utiliza Audacity y abres tu tema, luego selecciona toda la pista con CTRL + A y vas a archivo > exportar > exportar como mp3 > sale una casilla de "Calidad" y le das a Brutal (320 kbps) tengo entendido que los clientes puedes darle una opción para mejorar el sonido del juego. Y luego para agregar tu tema al juego tienes que arrastrar tu tema a la carpeta BGM en donde está tu RO y lo enumeras para que sea mas facil ubicarlo no sé colocale 500.mp3 Finalmente como te mencionaron tienes que editar el archivo mp3nametable.txt que está en tu carpeta DATA o GRF, agregas la linea para el tema que sería: tu_mapa_custom.rsw#bgm\\numero_de_tu_tema.mp3#
    1 point
  5. 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.
    1 point
×
×
  • Create New...