

Brian
Members-
Posts
2223 -
Joined
-
Last visited
-
Days Won
24
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Everything posted by Brian
-
Hi everyone, About 30 minutes from now (12:00 am EST), the forums will be down for maintenance. The forums will be offline for 30 - 40 minutes. Forum maintenance is complete.
-
You would have to create a new label name (ex: ":OnRecvCastleMy01"), and then when you copy one of the guild castle scripts (like trunk/npc/guild/aldeg_cas01.txt), set the label name in that file too.
-
Define the map as a castle in trunk/db/castle_db.txt You will also need to edit trunk/npc/guild/agit_main.txt Search for these sections: // Add custom Guild Castles here and add the appropriate info for your map (emp coordinates, monster spawns, donpcevent, guild town warp coordinates, guardian coordinates, guild dungeon warp coordinates, treasure mob_id/coordinates, etc.)
-
Here you go: guild_pack_info.txt execute the SQL queries (lines 4-20) to create 2 SQL tables load the script (Adding_a_Script) I tested the SQL queries as I wrote them, but I did not test the script with a map-server. Let me know if something doesn't work.
-
^ that's why your GMs can't use commands on that map! Somewhere, you either have a script or source edit that is setting mapflag#nocommand. If you use Notepad++ on Windows, use "Find in Files" to search your whole /npc folder for nocommand. On Linux, you can search all files in a folder with grep: grep -Hr -e nocommand /path/to/trunk/npc/
-
Maybe the first half of that file can go in the SVN (or on the wiki?), but the 2nd half (descriptions of each source function), I think it'd be better to keep those in comments above each function.
-
Go in-game and warp to your gvg map (where @commands are not working for your Event GMs) and type @mapinfo to see if 'nocommand' mapflag is set on that map.
-
Yea sure.
-
A few more questions: - is @changegm allowed? - are players able to leave a guild? - if so, are they able to join another guild after that? (in this case, what should the info say?) - are character renames allowed? - are guild renames allowed?
-
In order to exchange a GM's Approval Card (21001), is this correct? 1) they have to be in a guild 2) they have to be the guild master What is the item_id of the "guild box package" that the NPC will give them?
-
Add the mapname to this file: trunk/conf/mapflag/nowarpto.txt //===== Description: ========================================= //= Disables use of @warp to a map.
-
This wiki page explains how: Adding_a_Script
-
I prefer enabling log_mvpdrop (trunk/conf/log_athena.conf), rather than creating a whole new SQL table. // Log MVP Monster Drops (Note 1) // Outdated. Use Pick_Log instead. But this log could be useful to keep track slayed MVPs log_mvpdrop: yes In addition to Who killed the most mvps?, you can get more info like: - How many times was _____ mvp killed? - Who killed _____ mvp the most? - When was the last time _____ mvp (or each mvp) was killed? - Who killed MVPs on maps they do not normally spawn on? (ex: bloody branch, that one Abracadabra skill, or @monster)
-
Line 12 and 16: what if you had a custom item in your database that was actually named "null" Instead, you should check if getiteminfo returns -1, meaning the item does not exist. Line 22: instead of manually doing the math with MaxWeight, try the checkweight function Line 40: (personal preference) use if or switch instead of menu which creates "goto" labels. other suggestions: - line up your indents so the opening and closing braces { } are lined up - only indent 1 tab for each level of indentation (ex: line 10 has 2 tabs) This will save horizontal space when your script has deeper levels of indentation
-
Host can only be localhost if CeresCP is running on the same computer that MySQL Server is running on. But by the look of your URL, it looks like you're using a shared web host. What computer is your MySQL server on? if it's on your home computer, --> then Host should be your WAN IP (and make sure you set your router to forward port 3306 to your computer's LAN IP) if your MySQL database is on your webhost, --> then yes Host should be localhost, but double check your MySQL username
-
Open trunk/src/map/clif.c and find this line: if (type == 2 /* && (pc_get_group_level(sd) > 0 || sd->bl.id != id)*/) Change it to: if (type == 2 && (pc_get_group_level(sd) > 0 || sd->bl.id != id))
-
Do you only want to keep login accounts? Then execute these queries to delete all other information: TRUNCATE TABLE `auction`; TRUNCATE TABLE `cart_inventory`; TRUNCATE TABLE `charlog`; TRUNCATE TABLE `char`; TRUNCATE TABLE `elemental`; TRUNCATE TABLE `friends`; TRUNCATE TABLE `global_reg_value`; TRUNCATE TABLE `guild_alliance`; TRUNCATE TABLE `guild_castle`; TRUNCATE TABLE `guild_expulsion`; TRUNCATE TABLE `guild_member`; TRUNCATE TABLE `guild_position`; TRUNCATE TABLE `guild_skill`; TRUNCATE TABLE `guild_storage`; TRUNCATE TABLE `guild`; TRUNCATE TABLE `homunculus`; TRUNCATE TABLE `hotkey`; TRUNCATE TABLE `interlog`; TRUNCATE TABLE `interreg`; TRUNCATE TABLE `inventory`; TRUNCATE TABLE `ipbanlist`; TRUNCATE TABLE `mail`; TRUNCATE TABLE `mapreg`; TRUNCATE TABLE `memo`; TRUNCATE TABLE `mercenary_owner`; TRUNCATE TABLE `mercenary`; TRUNCATE TABLE `party`; TRUNCATE TABLE `pet`; TRUNCATE TABLE `quest`; TRUNCATE TABLE `ragsrvinfo`; TRUNCATE TABLE `sc_data`; TRUNCATE TABLE `skill_homunculus`; TRUNCATE TABLE `skill`; TRUNCATE TABLE `sstatus`; TRUNCATE TABLE `storage`;
-
How to delete file at my GRF using Thor Patcher?
Brian replied to Leinadz's question in Client-side Support
You specify the file path and filename like this: http://www.eathena.ws/board/index.php?act=findpost&pid=1216681 -
Is it possible to have a source command read a variable from an NPC script?
Brian replied to michaelsoftman's question in Source Support
Permanent Char Variables (integer): pc_readreg(sd, add_str("char_var")) Permanent Char Variables (string): pc_readregstr(sd, add_str("char_var$")) -
1. edit these 2 guild files like so: Index: npc/guild2/agit_main_se.txt =================================================================== --- npc/guild2/agit_main_se.txt (revision 17127) +++ npc/guild2/agit_main_se.txt (working copy) @@ -601,6 +601,7 @@ end; OnStartArena: + set breaker_points, breaker_points +1; set .@GID,getcharid(2); set .@region$, (compare(strnpcinfo(4),"arug"))?"Valfreyja":"Nithafjoll"; // Lower castle Economy Index: npc/guild/agit_main.txt =================================================================== --- npc/guild/agit_main.txt (revision 17127) +++ npc/guild/agit_main.txt (working copy) @@ -99,6 +99,7 @@ // The Emperium has been broken. OnAgitBreak: + set breaker_points, breaker_points +1; set .@GID,getcharid(2); // Show and log error if an unguilded player breaks the Emperium. (Should NEVER happen) if (.@GID <= 0) { 2. load this script: http://rathena.kpaste.net/934c?rawprontera,155,188,0 script Emp Break Ladder 910,{ switch(select("View Emp Break Ladder:Redeem points for TCG:More Info")) { case 1: query_sql "SELECT `char`.`name`, guild.`name`, CAST(`value` AS UNSIGNED) " + "FROM global_reg_value " + "LEFT JOIN `char` ON global_reg_value.char_id=`char`.char_id " + "LEFT JOIN `guild` ON `char`.guild_id=guild.guild_id " + "WHERE global_reg_value.`str`='breaker_points' " + "ORDER BY CAST(`value` AS UNSIGNED) DESC LIMIT 10", .@name$, .@guild$, .@points; mes "[Top 10 Emp Breakers]"; for (set .@i,0; .@i<getarraysize(.@name$); set .@i,.@i+1) { mes (.@i+1) +". ^0000FF"+ .@name$[.@i] +"^000000, "+ .@guild$[.@i] +" ("+ .@points[.@i] +((.@points[.@i]==1)?" pt":" pts")+")"; } break; case 2: mes "[Emp Break Ladder]"; mes "Total Emp Breaks: " + breaker_points; mes "Available Points: " + (breaker_points - breaker_tcg); if (breaker_points == 0) { mes "You have not broke the emp yet!"; } else if (breaker_points <= breaker_tcg) { mes "You've already exchanged all your points for TCG."; mes "Come back after you break the emp again!"; } else { set .@reward, breaker_points - breaker_tcg; if (select("Redeem points for "+.@reward+" TCG:Cancel") == 2) { mes "Come back if you change your mind."; } else if (checkweight(7227, .@reward) == 0) { mes "You are overweight or carrying too many items."; } else { getitem 7227, .@reward; set breaker_tcg, breaker_tcg + .@reward mes "Here are your "+.@reward+" TCG!"; } } break; case 3: mes "[Emp Break Ladder]"; mes "Each time you break the emp, you earn 1 point."; mes "Then, talk to me to redeem your point(s) for TCG."; break; } close; }
-
What favor do you need? (besides adding another Facebook friend)
-
There's also Antibot - Botkiller 6, by Myzter.
-
[FluxCP] Warning: set_time_limit() has been disabled for security reasons
Brian replied to darking123's question in Web Support
http://auroraro.site90.net/flux/?module=server&action=info You are using FluxCP for eAthena (when the column was named `login`.`level`) In rAthena, the column is named `login`.`group` https://github.com/missxantara/fluxcp-rA https://github.com/calciumkid/fluxcp-renewal -
Installing rAthena with External MySQL Database
Brian replied to Talaysen's question in Installation Support
Set them all to your external WAN IP. If that doesn't work, then leave bind_ip commented out and set the red ones to your internal LAN IP and set the green ones to your WAN IP. Did your host also tell you an IP address to use for your login/char/map servers? You have to manually set these: - trunk/conf/login_athena.conf (bind_ip) - trunk/conf/char_athena.conf (login_ip, bind_ip, char_ip) - trunk/conf/map_athena.conf (char_ip, bind_ip, map_ip) -
Installing rAthena with External MySQL Database
Brian replied to Talaysen's question in Installation Support
Did your host also tell you an IP address to use for your login/char/map servers? You have to manually set these: - trunk/conf/login_athena.conf (bind_ip) - trunk/conf/char_athena.conf (login_ip, bind_ip, char_ip) - trunk/conf/map_athena.conf (char_ip, bind_ip, map_ip)