

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
-
Yes, 3600000 means after playerA damages the monster, no other player can damage that monster (kill steal) for 1 hour.
-
Change logon screen n loading screen
Brian replied to Fai T.Flowright's question in Graphics Support
I've always used 1024x768 JPG. Other resolutions should work, the client will just resize the image bigger or smaller as needed (keep in mind that larger filesize images will take a little longer for the client to load). -
^ yes. It might not be working because of the URL you set FluxCP to run from. In /config/application.php set this to the IP of your VPS, and set BaseURI to the folder your FluxCP is in (no leading or trailing slash) 'ServerAddress' => 'localhost', // This value is the hostname:port under which Flux runs. (e.g., example.com or example.com:80) 'BaseURI' => '', // The base URI is the base web root on which your application lies.
-
trunk/conf/battle/drops.conf 90x would be ... // The rate the common items are dropped (Items that are in the ETC tab, besides card) item_rate_common: 9000 item_rate_common_boss: 9000 item_drop_common_min: 1 item_drop_common_max: 10000 as Ryax said, you can't set the *****_max configs higher than 10000 because 100% is the highest drop chance already. PS: if you wanted to make every item drop at 100% chance, you could make all the *****_min configs equal to 10000.
-
Installing rAthena with External MySQL Database
Brian replied to Talaysen's question in Installation Support
When you're logged into SSH, type this command to connect to your MySQL server: mysql --host=1.1.1.1 --user=USERNAME -p (replace 1.1.1.1 with the IP of your MySQL Server, and replace USERNAME with your MySQL Username, provided by your host) 2. then create the MySQL databases: Installation_(CentOS)#Create_SQL_database_for_rAthena (your host might have already created databases for you) 3. then, after you've checked out rAthena, follow these steps to import the SQL files Installation_(CentOS)#Import_MySQL_Tables (but make sure you add the -h 1.1.1.1 option) cd trunk/sql-files/ mysql --host=1.1.1.1 --user=USER -p rathena4444_rag < main.sql mysql --host=1.1.1.1 --user=USER -p rathena4444_rag < item_db.sql mysql --host=1.1.1.1 --user=USER -p rathena4444_rag < item_db2.sql mysql --host=1.1.1.1 --user=USER -p rathena4444_rag < mob_db.sql mysql --host=1.1.1.1 --user=USER -p rathena4444_rag < mob_db2.sql mysql --host=1.1.1.1 --user=USER -p rathena4444_log < logs.sql (replace rathena4444_*** with the database name(s) your host provided for you, or you created in step 2) -
Installing rAthena with External MySQL Database
Brian replied to Talaysen's question in Installation Support
With your MySQL Server on a different host, you just have to edit trunk/conf/inter_athena.conf and change all the IP settings from 127.0.0.1 to the LAN IP of your MySQL Server (that your host told you). The rest of your setup should be just like Installation_(CentOS). -
I learned something new today! If it's that easy, we should change movenpc to allow "map",x,y Edit: I searched /npc and it's only used in 1 script, so the main issue would be notifying users of the change so they can update their custom scripts. Search "movenpc" (2 hits in 1 file) D:\svn\rathena\trunk\npc\pre-re\other\arena\arena_room.txt (2 hits) Line 762: movenpc "#arena_"+$@arenapic+"",96,28; Line 1025: movenpc "#arena_"+$@arenapic+"",1,1;
-
Please don't force users to register on your forums just to see a download link. It makes it look like you're just trying to increase your forum's registration count.. or trying to grab their Facebook info.
-
OnInit: bindatcmd "banip",strnpcinfo(3)+"::OnBan"; bindatcmd "unbanip",strnpcinfo(3)+"::OnUnBan"; end; Wouldn't this make the commands usable by anyone, since you didn't set an atcommand_level or charcommand_level? and there are no GM level/group checks within the script. *bindatcmd "command","<NPC object name>::<event label>"{,<atcommand level>,<charcommand level>};
-
svn update -r 14410 /path/to/your/svn/folder/
-
Your address bar shows you're accessing phpMyAdmin and FluxCP from 192.168.1.232 so I assume that's the IP of your VirtualBox VM and MySQL Server. But your FluxCP error says "Can't connect to MySQL server on '192.168.0.109'" so somewhere in /config/servers.php you set the wrong IP for the MySQL server. If the MySQL server and FluxCP are on the same VM, you can use '127.0.0.1' or 'localhost'. If they are on different VMs or computers, use the LAN ip (192.168.1.232)
-
Is it possible to have a source command read a variable from an NPC script?
Brian replied to michaelsoftman's question in Source Support
Here's how you can read char and account integer variables: pc_readreg(sd, "char_var") pc_readaccountreg(sd, "#account_var") In trunk/src/map/pc.h you can see all the pc_read***** function names int pc_readparam(struct map_session_data*,int); int pc_setparam(struct map_session_data*,int,int); int pc_readreg(struct map_session_data*,int); int pc_setreg(struct map_session_data*,int,int); char *pc_readregstr(struct map_session_data *sd,int reg); int pc_setregstr(struct map_session_data *sd,int reg,const char *str); #define pc_readglobalreg(sd,reg) pc_readregistry(sd,reg,3) #define pc_setglobalreg(sd,reg,val) pc_setregistry(sd,reg,val,3) #define pc_readglobalreg_str(sd,reg) pc_readregistry_str(sd,reg,3) #define pc_setglobalreg_str(sd,reg,val) pc_setregistry_str(sd,reg,val,3) #define pc_readaccountreg(sd,reg) pc_readregistry(sd,reg,2) #define pc_setaccountreg(sd,reg,val) pc_setregistry(sd,reg,val,2) #define pc_readaccountregstr(sd,reg) pc_readregistry_str(sd,reg,2) #define pc_setaccountregstr(sd,reg,val) pc_setregistry_str(sd,reg,val,2) #define pc_readaccountreg2(sd,reg) pc_readregistry(sd,reg,1) #define pc_setaccountreg2(sd,reg,val) pc_setregistry(sd,reg,val,1) #define pc_readaccountreg2str(sd,reg) pc_readregistry_str(sd,reg,1) #define pc_setaccountreg2str(sd,reg,val) pc_setregistry_str(sd,reg,val,1) int pc_readregistry(struct map_session_data*,const char*,int); int pc_setregistry(struct map_session_data*,const char*,int,int); char *pc_readregistry_str(struct map_session_data*,const char*,int); int pc_setregistry_str(struct map_session_data*,const char*,const char*,int); -
// Time in milliseconds to actitave protection against Kill Steal // Set to 0 to disable it. // If this is activated and a player is using @noks, damage from others players (KS) not in the party // will be reduced to 0. ksprotection: 1 1 millisecond is a very short time! Try something longer, like 5000 (5 seconds). And even though you enabled KS protection, also remind players that they have to use @noks to turn it on for their character.
-
getcharid(1) returns their party_id. To get the char's name, use strcharinfo(0) and for the party name: strcharinfo(1)
-
trunk/src/map/atcommand.c look for the section that starts with /*========================================== * Display list of online characters with * various info. *------------------------------------------*/ ACMD_FUNC(who) { There will be 3 lines like this: if (pc_get_group_id(pl_sd) > 0) // Player title, if exists Edit all 3 of those lines to say "if their group_id is greater than 0 and their account_id is not <your account_id>". Then your account_id will be excluded from displaying the Player Title. if (pc_get_group_id(pl_sd) > 0 && pl_sd->status.account_id != 2000000) // Player title, if exists
-
Where is it that your name displays like that? - in-game when you mouse-over your character? - @who command? - some NPC?
-
hmm maybe I misunderstood your SQL structure. The expire time is stored in `login`.`vencimentoVip` as a datetime? Try this instead: - script vip_timeleft -1,{ OnPCLoginEvent: query_sql "SELECT TIMESTAMPDIFF(SECOND, NOW(),`vencimentoVip`) FROM login WHERE account_id="+playerattached(), .@seconds; if (.@seconds > 0) { dispbottom "[Controle VIP] : expires in " + callfunc("Time2Str", gettimetick(2)+.@seconds); } end; } I edited my script and it works for me now. vip_rental.txt
-
Here you go: - script vip_timeleft -1,{ OnPCLoginEvent: query_sql "SELECT UNIX_TIMESTAMP(`vencimentoVip`) FROM login WHERE account_id="+playerattached(), .@vencimentoVip; if (.@vencimentoVip) { dispbottom "[Controle VIP] : expires in " + callfunc("Time2Str", .@vencimentoVip); } end; } I fixed my script so if the player already has a VIP Rental, any new rentals will stack. http://code.google.com/p/athena-scripts/source/detail?r=23
-
Limiting a second server on the same machine
Brian replied to Mumbles's question in Installation Support
Correct, in this setup there is only 1 login server, so only one set of login-server configurations. In order to limit who can login to the 2nd char/map server, you need to limit it at the char-server or map-server level. How about in trunk/conf/char_athena.conf // Maximum users able to connect to the server. Set to 0 for unlimited. max_connect_user: 0 // Group ID that is allowed to bypass the server limit of users. // Default: -1 = nobody (there are no groups with ID < 0) // See: conf/groups.conf gm_allow_group: -1 You could set max_connect_user to 1, then use gm_allow_group to allow GMs to override that limit? -
Managing a second server on the same machine
Brian replied to Mumbles's question in Installation Support
hmm looks like the first time you will have to manually stop the servers. After that, if you use restart.sh to start the servers, then stop.sh will stop them. -
There are programs that can sync folders on 2 computers across the internet (DropBox, Google Drive, Windows Live Sync, and I'm sure there are more).
-
Are you sure you applied the SQL Upgrades to the correct databases? Upgrade files ending in "_log" should be applied to the log database. Upgrade files with no suffix are applied to the ragnarok database.
-
Here you go: http://trac.assembla.com/raijero/changeset/996/trunk/src/map/atcommand.c (It makes them sit if they are standing, and stand if they are sitting.)
-
Managing a second server on the same machine
Brian replied to Mumbles's question in Installation Support
I use these stop and restart scripts instead: stop.sh restart.sh They take into account the current directory where the script was run from and only stop servers that are running from that directory. (Ex: if I run /home/brian/server1/stop.sh it will only stop the servers running in /server1. Servers running in /home/brian/server2/ will not be affected. -
Here are 2 ways: He could give you remote access to the computer (ex: Remote Desktop, TeamViewer, Chrome Remote Desktop app, etc.) You could setup a server on your computer, write and test the scripts there, then send the files to him.