-
Posts
177 -
Joined
-
Last visited
-
Days Won
10
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Posts posted by Louis T Steinhil
-
-
3 hours ago, rokimoki said:
I've seen 4CrAM-EX has most of that developed and using and needing 2024-10-16. I know this is rAthena but, no one wants to help me to get that client-ver, but using Froggo client and 2024-10-16 client must be enough right?
It's because 2024 clients are not supported yet. If you really want it, you're gonna have to buy it.
-
I think you need this on your lua files
-
Nvm fixed it
-
Nvm. Got it fixed
-
7 hours ago, karenelia said:
Hello,
A friend and I wanted to start our own private server. We hopped onto rAthena, and while we managed to make the server run, the client side itself was next to impossible to figure out. Every guide wasn't much help, and the wiki that I was directed to was full of dead links or redirected links.
Does anyone have a way to help set up a server? rAthena was literally less than no help when it came to figuring this stuff out.
pm me on discord louis17steinhil
-
Have the same problem. I changed alice card to str+1000 but it doesnt show. It still shows the original 40% reduction from boss
-
14 minutes ago, Pyumel said:
share please sir
// Even thought mobhp ain't a name, we send it as one so the client can parse it. [Skotlex] if( str_p != mobhp ){ *(str_p-3) = '\0'; //Remove trailing space + pipe. safestrncpy( packet.guild_name, mobhp, NAME_LENGTH ); }
-
22 minutes ago, Pyumel said:
how can i detect this monster have demi-human race or fish race for example?
because if i just change the value of the elements to race it mean i just change the display name not detect the monster racechar race_name[9] = { 0 }; switch (md->status.race) { case 0: strcpy(race_name, "Formless");break; case 1: strcpy(race_name, "Undead");break; case 2: strcpy(race_name, "Brute");break; case 3: strcpy(race_name, "Plant");break; case 4: strcpy(race_name, "Insect");break; case 5: strcpy(race_name, "Fish");break; case 6: strcpy(race_name, "Demon");break; case 7: strcpy(race_name, "D-Human");break; case 8: strcpy(race_name, "Angel");break; case 9: strcpy(race_name, "Dragon");break; default: break; } str_p += sprintf( str_p, "Race: %s | ", race_name);
-
On 1/4/2025 at 11:37 AM, WhiteEagle said:
For this i am lookging too since month.
got it XD
-
anyone happen to know how can i move the info like this?
-
hey bro how did you move the info at the bottom of the monsters name?
-
On 11/27/2024 at 4:17 PM, Pyumel said:
bump! someone please tell me, can i change this to mob race view instead of element view? i want change this to race monster view not element monster view
yes that's easy, change the value of elements to race.
-
Hmm I tried adding your patch to the show_mob_info. it works great although if the name of the monster is too long then few characters will be omitted. XD
Clif.cppcase BL_MOB: { mob_data *md = (mob_data *)bl; char ele_name[8] = { 0 }; //char output[16] = { 0 }; if( md->guardian_data && md->guardian_data->guild_id ){ PACKET_ZC_ACK_REQNAMEALL packet = { 0 }; packet.packet_id = HEADER_ZC_ACK_REQNAMEALL; packet.gid = bl->id; safestrncpy( packet.name, md->name, NAME_LENGTH ); safestrncpy( packet.guild_name, md->guardian_data->guild_name, NAME_LENGTH ); safestrncpy( packet.position_name, md->guardian_data->castle->castle_name, NAME_LENGTH ); clif_send(&packet, sizeof(packet), src, target); }else if( battle_config.show_mob_info ){ PACKET_ZC_ACK_REQNAMEALL packet = { 0 }; packet.packet_id = HEADER_ZC_ACK_REQNAMEALL; packet.gid = bl->id; safestrncpy( packet.name, md->name, NAME_LENGTH ); char mobhp[50], *str_p = mobhp; switch (md->status.def_ele) { case 0: strcpy(ele_name, "Neutral");break; case 1: strcpy(ele_name, "Water");break; case 2: strcpy(ele_name, "Earth");break; case 3: strcpy(ele_name, "Fire");break; case 4: strcpy(ele_name, "Wind");break; case 5: strcpy(ele_name, "Poison");break; case 6: strcpy(ele_name, "Holy");break; case 7: strcpy(ele_name, "Shadow");break; case 8: strcpy(ele_name, "Ghost");break; case 9: strcpy(ele_name, "Undead");break; default: break; } if( battle_config.show_mob_info&4 ){ str_p += sprintf( str_p, "Lv. %d | ", md->level ); } if( battle_config.show_mob_info&1 ){ if (strlen(ele_name)) str_p += sprintf( str_p, "Ele: %s %d | ", ele_name, md->status.ele_lv); } if( battle_config.show_mob_info&2 ){ str_p += sprintf( str_p, "HP: %u%% | ", get_percentage( md->status.hp, md->status.max_hp ) ); } // Even thought mobhp ain't a name, we send it as one so the client can parse it. [Skotlex] if( str_p != mobhp ){ *(str_p-3) = '\0'; //Remove trailing space + pipe. safestrncpy( packet.party_name, mobhp, NAME_LENGTH ); } clif_send(&packet, sizeof(packet), src, target); }
-
i tried editing alice card with +STR which is already in the EquipmentPropertiesOrder.lub. It doesn't show also.
-
Why doesn't it show some custom items effects on equipment property?
As shown I'm wearing Alice Card and some armor and guard. That's all it shows. It doesn't show the stats from Angra and the custom stats i put on Alice Card. Any way I can fix that? Thanks in advance!
-
Kindly help or guide me on how to include Custom Storage/ Premium Storage to be included in delitem/storagedelitem npc script. Thanks in advance!
/// Deletes items from the target/attached player. /// Prioritizes ordinary items. /// /// delitem <item id>,<amount>{,<account id>} /// delitem "<item name>",<amount>{,<account id>} /// cartdelitem <item id>,<amount>{,<account id>} /// cartdelitem "<item name>",<amount>{,<account id>} /// storagedelitem <item id>,<amount>{,<account id>} /// storagedelitem "<item name>",<amount>{,<account id>} /// guildstoragedelitem <item id>,<amount>{,<account id>} /// guildstoragedelitem "<item name>",<amount>{,<account id>} BUILDIN_FUNC(delitem) { TBL_PC *sd; struct item it; uint8 loc = 0; char* command = (char*)script_getfuncname(st); if(!strncmp(command, "cart", 4)) loc = TABLE_CART; else if(!strncmp(command, "storage", 7)) loc = TABLE_STORAGE; else if(!strncmp(command, "guildstorage", 12)) loc = TABLE_GUILD_STORAGE; if( !script_accid2sd(4,sd) ){ // In any case cancel script execution st->state = END; return SCRIPT_CMD_SUCCESS; } if (loc == TABLE_CART && !pc_iscarton(sd)) { ShowError("buildin_cartdelitem: player doesn't have cart (CID=%d).\n", sd->status.char_id); script_pushint(st, -1); return SCRIPT_CMD_FAILURE; } if (loc == TABLE_GUILD_STORAGE) { struct s_storage *gstor = guild2storage2(sd->status.guild_id); if (gstor == nullptr || sd->state.storage_flag) { script_pushint(st, -1); return SCRIPT_CMD_FAILURE; } } if( script_isstring(st, 2) ) { const char* item_name = script_getstr(st, 2); std::shared_ptr<item_data> id = item_db.searchname(item_name); if( id == nullptr ){ ShowError("buildin_%s: unknown item \"%s\".\n", command, item_name); st->state = END; return SCRIPT_CMD_FAILURE; } it.nameid = id->nameid;// "<item name>" } else { it.nameid = script_getnum(st, 2);// <item id> if( !item_db.exists( it.nameid ) ) { ShowError("buildin_%s: unknown item \"%u\".\n", command, it.nameid); st->state = END; return SCRIPT_CMD_FAILURE; } } it.amount=script_getnum(st,3); if( it.amount <= 0 ) return SCRIPT_CMD_SUCCESS;// nothing to do if( buildin_delitem_search(sd, &it, 0, loc) ) {// success return SCRIPT_CMD_SUCCESS; } ShowError("buildin_%s: failed to delete %d items (AID=%d item_id=%u).\n", command, it.amount, sd->status.account_id, it.nameid); st->state = END; st->mes_active = 0; clif_scriptclose( *sd, st->oid ); return SCRIPT_CMD_FAILURE; }
-
Hi anyone know how to make the charms work inside storage? Thanks in advance!
Nvm i found out how.
-
Hello is there a way to put commas on that zeny requirements?
-
On 8/9/2024 at 3:53 AM, justice123 said:
Did you use chatGPT? wondering if you have any prompt tips to improve responses for rathena scripting.
4.0 is better although 3.5 can do it if you can feed it documentation on how to do it as well as other examples. Always remember that you know more than it knows. It's just good with math and shit so you have to guide it.
-
1
-
-
Take a screenshot of your map console and see if there's an error
-
Anyone know how can i add commas after thousands / millions in atcommand.cpp? Thanks in advance!
-
5 hours ago, gamingmagic said:
I managed to convert it and I'm not selling it myself. However, since some people are reselling it, I've decided to make it public.
Thanks man, I'll try this later.
-
Sealed Shrine Instance with Difficulty
Edited Sealed Shrine Instance with different difficulties.
-
Submitter
-
Submitted07/20/24
-
Category
-
Video
-
Content AuthorLS
-
-
6 hours ago, mawjustin said:
Hi Team,
May I ask for assistance on this matter? I'm trying use the Drocus Fist as a costume weapon (Shadow Weapon), the sprite works when configured as an equipment, but it doesn't work on costumes (shadow weapon).This is the .yml. It's working when it's configured as Weapon, but it won't work when configured as Shadowgear.
These is the current .lua
This the spr and the act.
This is the luafiles514.
I think this is what you need
https://rathena.org/board/topic/117831-showcase-weapon-skin/
need this scripts for RENEWAL
in Script Requests
Posted
Constellation Tower
Edda Somatology
Episode 19
Fall of Glastheim
Old Glast Heim - Hard
Remorse
Thanatos Tower
New Instances.zip