Jump to content

sader1992

Content Moderator
  • Posts

    1678
  • Joined

  • Last visited

  • Days Won

    72

Everything posted by sader1992

  1. --------------------------------------- *recalculatestat; This command will force a stat recalculation for the attached player. --------------------------------------- OnPCStatCalcEvent: This special label triggers when a player's stats are recalculated, such as when changing stats, equipment, or maps, as well as when logging in, leveling up, and mounting a job mount. This can be used to grant additional item bonuses to certain player groups, for instance. technically , you are asking for loop I would suggest to not use OnPCStatCalcEvent unless you are forced too also I don't understand why disable/enable a npc like that , let's say the script works , the npc would be always disabled depending on the number of players in the server , also I am not sure that you know what you are doing.
  2. https://github.com/rathena/rathena/blob/master/npc/mapflag/town.txt https://github.com/rathena/rathena/blob/master/npc/mapflag/restricted.txt
  3. make sure the connection info to your log database in your server config is right , make sure you have sader_variables_log table in your log database , if it's there , try to delete it and recreate it
  4. most of what i told you is to test xD you did it all , but what the results ? public or private network ? and where the ports is closed ?
  5. after you open the port in your system , you need to run the programs that uses the port also if you want access from outside your network you need to open the ports in your router too if you have another machine in the network , it might be good idea to scan from it using nmap , if via your public ip , you can use canyouseeme.org use this command to check the ports in your system "netstat -a"
  6. try to directly run the command into your sql , in the log database CREATE TABLE IF NOT EXISTS `sader_variables_log` (`unique_id` INT( 11 ) UNSIGNED NOT NULL DEFAULT '0',`ip` VARCHAR(100) NOT NULL,`variable` VARCHAR(32) NOT NULL, `index` INT NOT NULL, `value` INT NOT NULL,`account_id` INT NOT NULL,`char_id` INT NOT NULL,`char_name` VARCHAR(30) NOT NULL) ENGINE=MyISAM
  7. it should work also you can do this #CASHPOINTS += 100;
  8. prontera,0,0,0 script npc_name 444,{ if($MAX_LEVEL_REWARDS_50 < 50){ if(!#MAX_LEVEL_REWARDS_50){ if(BaseLevel == 99){ mes "you can redeem the reward once per account!"; if(select("redeem with this char:close") == 2) end; #MAX_LEVEL_REWARDS_50 = true; $MAX_LEVEL_REWARDS_50++; mes "you got the reward!"; announce "Player '" + strcharinfo(0) + "' has redeemed his max level reward!",0; //=========================== getitem 502,1;//add what you want to give like this. //=========================== close; }else{ mes "you are not at the max level!"; close; } }else{ mes "you alewady redeemed the reward with another char!"; close; } }else{ mes "All the rewards has been redeemed!"; close; } }
  9. replace MAX_LEVEL with a number , the max level you have for example if 99 prontera,0,0,0 script npc_name 444,{ if($MAX_LEVEL_REWARDS_50 < 50){ if(!#MAX_LEVEL_REWARDS_50){ if(BaseLevel == 99){ mes "you can redeem the reward once per account!"; if(select("redeem with this char:close") == 2) end; #MAX_LEVEL_REWARDS_50 = true; $MAX_LEVEL_REWARDS_50++; mes "you got the reward!"; announce "Player '" + strcharinfo(0) + "' has redeemed his max level reward!",0; //=========================== getitem 502,1;//add what you want to give like this. //=========================== }else{ mes "you are not at the max level!"; close; } }else{ mes "you alewady redeemed the reward with another char!"; close; } }else{ mes "All the rewards has been redeemed!"; close; } }
  10. if you really want to make Zeny high value , limit the amount of Zeny that the players can obtain per time (like limit per day or week[BTW no one like limits]), and make players have to use the Zeny with Npcs/system or anything , if your implementation is right good for you , you just saved your self a lot if your implementation was wrong or the players didn't like it , you will end up with an empty server The easier way is to create your own coin and balance it in a way to replace Zeny, in my opinion you can't balance Zeny without 180 degree changes from the start of the server (for example if you decide that no npc can by items they just sell items ,and you make Zeny obtainable in a more balanced and limited way) , ofc big ideas need too muck thinking before implementing!
  11. prontera,0,0,0 script npc_name 444,{ if($MAX_LEVEL_REWARDS_50 < 50){ if(!#MAX_LEVEL_REWARDS_50){ if(BaseLevel == MAX_LEVEL){ mes "you can redeem the reward once per account!"; if(select("redeem with this char:close") == 2) end; #MAX_LEVEL_REWARDS_50 = true; $MAX_LEVEL_REWARDS_50++; mes "you got the reward!"; announce "Player '" + strcharinfo(0) + "' has redeemed his max level reward!",0; //=========================== getitem 502,1;//add what you want to give like this. //=========================== }else{ mes "you are not at the max level!"; close; } }else{ mes "you alewady redeemed the reward with another char!"; close; } }else{ mes "All the rewards has been redeemed!"; close; } }
  12. try to add in in data\luafiles514\lua files\transparentItem\transparentItem.lub too { 51, 255, 255, 25500 }, the tool was built before this file
  13. F_Rand returns a random number not a random item nor a random count and float is not valid for rathena script language so ifyou want to use the function , it's like this .@id = callfunc ("F_Rand", 603,617,503,502); getitem .@id,1; so it would be random from these set of numbers ////////////////////////////////////////////////////////////////////////////////// // Returns a random argument. // -- callfunc "F_Rand",arg0,arg1,... // Example: // // You can use it to pick a random number from a list: // set @itemIDfromList, callfunc("F_Rand",1129,1222,1163,1357,1360,1522,1811,1410); ////////////////////////////////////////////////////////////////////////////////// function script F_Rand { return getarg(rand(getargcount())); }
  14. it has nothing to do with the database "getitemname( @s_Item_id[.@i] ) == "null"" mean if the item has no name than it's invalid item
  15. it's most likly https://github.com/rathena/rathena/blob/master/db/re/skill_nocast_db.txt but there is also a mapflag to prevent casting icewall , so check that too in your npc folders
  16. well , i can't really help fix that , if you followed everything correctly from the doc in the project to the files here , everything should work fine.
  17. than your problem is fixed , you can ignore the debug messages if it work fine or you can ask here : https://github.com/zaphoyd/websocketpp or search to fix those errors
  18. you should compile in your build folder , not outside
  19. you need to use cmake , or else the discord project won't compile , read the doc files in the discord project.
  20. if you mean you still have the errors put the full log of your compiling from the start to the error (use code box ofc)
  21. look like the project files itself not in your map folder , or not in the make file , make sure that the discord projects compiling
  22. map (1).cpp make clean && make
  23. i am sure that it not the case , the compiler stop at that error , so you don't see what after however , upload channel.cpp , if you get error after that , i will again tell you to track the changes and delete tham than re-apply
  24. if you want to add different item to each monster , than the fact that they are Demi human is somewhat useless , just edit the monsters drop in the database if the same item for all the Demi human monsters than use this bonus with OnPCStatCalcEvent bonus2 bDropAddRace,r,x; Adds x% to player's drop rate when killing a monster with race r.
×
×
  • Create New...