Jump to content

JayPee

Members
  • Posts

    633
  • Joined

  • Last visited

Everything posted by JayPee

  1. the tables are in the schemas folder just import those 3 tables
  2. nice one. Tron is the man!
  3. @All Added a eAthena version npc script @hysoka44 Did you import the required tables?
  4. Fixed wrong blocking time view when Timezone is defined. Kindly download it again. Thanks for ngek202 for providing a video.
  5. @Mysterious Ok, Ill Upload some screenshots @ngek202 * The user must be loggedin in the CP in order to vote since the system gets the accountid of the player. it will only show when the user is loggedin. * I'll check the blocking time. Edit: @Myterious Here: @ngek202 * I cant reproduce your problem, I tried adding a new vote site and assign a 12 hours blocking time and it works fine and so as the editing.
  6. Script Name:Speed Pots Minigame Description: A simple speed pots minigame where each NPC will required you to talk to the other npc's and also the fourth NPC you will be talking to will give you the reward. For Example: I talked to Speed Gonzales and then it wants me to talk to Speedy Gonzalvo, Speedy Gonzalvo it wants me to talk to Speedy Gonzaga, Speedy Gonzaga itwants me to talk to Speedy Gambatte, since Speedy Gambatte is the fourth NPC, it will give you the speed pots. (Note: The NPC you will be talking to will assign to the following NPC's: Speedy Gonzaga/Gonzalvo/Gonzales/Gambatter randomly but not itself.) Version:1.0 Others Message: Sorry if the names sound stupid and my english too. //==================================================================================== //Script Name: Speed Pots Minigames //SVN: Tested in rAthena r156513 //Developed By: JayPee Mateo //Version: 1.0 //Description: Just a simple Speed Pots Minigame //==================================================================================== lighthalzen,235,313,4 script Speedy Gonzales 48,{ set .npcname$,"[speedy Gonzales]"; setarray .npclist$[0],"Speedy Gonzalvo","Speedy Gonzaga","Speedy Gambatte"; if(@speedpotstart == 0) set @speedpotstart,1; else if(@assignNPC$ == "Speedy Gonzales" ) set @speedpotstart,@speedpotstart+1; mes .npcname$; if(@speedpotstart<4 && @signedNPC$ != "Speedy Gonzales") { set @signedNPC$,"Speedy Gonzales"; set @assignNPC$,.npclist$[rand(0,2)]; mes "Go and see "+@assignNPC$; } else if(@speedpotstart>=4) { mes "Here you go!"; set @speedpotstart,0; set @signedNPC$,""; set @assignNPC$,""; getitem 12016,1; } else mes "Go and see "+@assignNPC$; close; } lighthalzen,260,129,3 script Speedy Gonzaga 69,{ set .npcname$,"[speedy Gonzaga]"; setarray .npclist$[0],"Speedy Gonzalvo","Speedy Gonzales","Speedy Gambatte"; if(@speedpotstart == 0) set @speedpotstart,1; else if(@assignNPC$ == "Speedy Gonzaga" )set @speedpotstart,@speedpotstart+1; mes .npcname$; if(@speedpotstart<4 && @signedNPC$ != "Speedy Gonzaga") { set @signedNPC$,"Speedy Gonzaga"; set @assignNPC$,.npclist$[rand(0,2)]; mes "Go and see "+@assignNPC$; } else if(@speedpotstart>=4) { mes "Here you go!"; set @speedpotstart,0; set @signedNPC$,""; set @assignNPC$,""; getitem 12016,1; } else mes "Go and see "+@assignNPC$; close; } lighthalzen,234,117,2 script Speedy Gonzalvo 50,{ set .npcname$,"[speedy Gonzalvo]"; setarray .npclist$[0],"Speedy Gonzaga","Speedy Gonzales","Speedy Gambatte"; if(@speedpotstart == 0) set @speedpotstart,1; else if(@assignNPC$ == "Speedy Gonzalvo" )set @speedpotstart,@speedpotstart+1; mes .npcname$; if(@speedpotstart<4 && @signedNPC$ != "Speedy Gonzalvo") { set @signedNPC$,"Speedy Gonzalvo"; set @assignNPC$,.npclist$[rand(0,2)]; mes "Go and see "+@assignNPC$; } else if(@speedpotstart>=4) { mes "Here you go!"; set @speedpotstart,0; set @signedNPC$,""; set @assignNPC$,""; getitem 12016,1; } else mes "Go and see "+@assignNPC$; close; } lighthalzen,35,282,1 script Speedy Gambatte 51,{ set .npcname$,"[speedy Gambatte]"; setarray .npclist$[0],"Speedy Gonzaga","Speedy Gonzales","Speedy Gonzalvo"; if(@speedpotstart == 0) set @speedpotstart,1; else if(@assignNPC$ == "Speedy Gambatte" )set @speedpotstart,@speedpotstart+1; mes .npcname$; if(@speedpotstart<4 && @signedNPC$ != "Speedy Gambatte") { set @signedNPC$,"Speedy Gambatte"; set @assignNPC$,.npclist$[rand(0,2)]; mes "Go and see "+@assignNPC$; } else if(@speedpotstart>=4) { mes "Here you go!"; set @speedpotstart,0; set @signedNPC$,""; set @assignNPC$,""; getitem 12016,1; } else mes "Go and see "+@assignNPC$; close; }
  7. Script Name: Server Online Users Highest Peak Description: This script will determine your server highest peak of number of user onlines. Version: 1.0 Requirements: You must have this:http://rathena.org/board/files/file/2339-fluxcp-addson-server-online-users-highest-peak/ //==================================================================================== //Script Name: Server Online Users Highest Peak //SVN: Tested in rAthena r156513 //Developed By: JayPee Mateo //Version: 1.0 //Requirement(s): FluxCP Server Highest Addon //Description: This npc script will record the highest number of players that your server reach //==================================================================================== - script Highest Peak -,{ OnPCLoginEvent: set .currentUsersOL,getusers(1); //Current Online Users //Query for the highest peak in the database query_sql("SELECT `num_users` FROM `cp_highest_peak` ORDER BY `num_users` LIMIT 1",.@numUsers); //Get the date set .date$,gettime(7)+"-"+gettime(6)+"-"+gettime(5); set .highestPeak,.@numUsers[0]; //Highest Peak if(getarraysize(.@numUsers) == 0) { //If not data found Insert statement set .highestPeak,.currentUsersOL; query_sql("INSERT INTO `cp_highest_peak`(num_users,peak_date) VALUES("+.highestPeak+",'"+.date$+"')"); //Insert new highest Peak } else { if(.currentUsersOL>.highestPeak) { announce ""+.currentUsersOL,bc_all; set .highestPeak,.currentUsersOL; query_sql("UPDATE `cp_highest_peak`SET num_users='"+.highestPeak+"',peak_date='"+.date$+"'"); //Insert new highest Peak } } end; }
  8. Script Name: FluxCP V4P NPC Description: This is the npc script for my FluxCP V4P. Version: 1.0 Function: add_item(ITEMID,QUANTITY,VOTEPOINTS,"CATEGORY"); REQUIREMENTS: You must have this: http://rathena.org/b...ote-for-points/ Parameters(should be in order): ITEMID - the itemid to give QUANTITY - how many will be given VOTEPOINTS - how many points needed CATEGORY - on what category you want it to be belong rAthena Version: //==================================================================================== //Script Name: Vote For Points NPC Script for FluxCP //SVN: Tested in rAthena r156513 //Developed By: JayPee Mateo //Version: 1.0 //Requirement(s): FluxCP V4P Addon //Description: This is a npc script for FluxCP Vote for points in order for the players //to claim their vote points //==================================================================================== royal_room3,80,136,5 script VoteForPoints 89,{ //Function Prototypes function garbagecol;//Garbage collection for the Character variables garbagecol(); function add_item; //Syntanx: add_item(ITEMID,QUANTITY,POINTS,CATEGORY); function makeCategory;//This will return a list of the categories function getItemsByCat;//This will return the list of items associated to the particular category function getItemDetails;//This will return the details of the item function getPoints;//This will return the points of the player stored in the database function updatePoints;//This will updates the points of the player stored in the database //NPC Name set .npcname$,"[ Vote For Points ]"; //Initialization of the Rewards add_item(555,1,100,"Hello"); add_item(556,2,101,"Hello"); add_item(557,3,101,"Hello1"); //Script Start mes .npcname$; mes "Hi! Do you want to exchange your vote points?:"; switch(select("Yes, I want to exchange my points:See my points")) { case 1: next; mes .npcname$; mes "Please choose a category:"; set .@selected,select(makeCategory())-1; next; mes .npcname$; mes "Please the item you want:"; set .@selected,select(getItemsByCat(@listCat$[.@selected]))-1; next; mes .npcname$; set .@ritemid,getItemDetails(@itemKeys[.@selected],"itemid"); set .@rquantity,getItemDetails(@itemKeys[.@selected],"quantity"); set .@rpoints,getItemDetails(@itemKeys[.@selected],"points"); mes "Item ID:"+.@ritemid; mes "Item Name: "+getitemname(.@ritemid); mes "Item Quantity: "+.@rquantity+" pc(s)."; mes "Required Points: "+.@rpoints+" pt(s)."; mes "n"; mes "Do you want to this item?"; if(select("Yes:No")==1) { set .@points,getPoints(getcharid(3)); if(.@points>=.@rpoints) { next; mes .npcname$; updatePoints(getcharid(3),.@rpoints); getitem .@ritemid,.@rquantity; mes "Here you go!. Thank you for voting. Don't forget to vote again. "; } else mes "Sorry, you do not have enough points for this item."; } else { next; mes .npcname$; mes "Okay bye!"; } garbagecol(); close; case 2: next; mes .npcname$; set .@points,getPoints(getcharid(3)); mes "You currently have "+.@points+" pt(s)."; garbagecol(); close; } end; //Functions Bodies function updatePoints { set .@account_id,getarg(0); set .@usedPoints,getarg(1); query_sql("UPDATE `cp_v4p_voters` SET points=(points-"+.@usedPoints+") WHERE account_id='"+.@account_id+"'"); return; } function getPoints { set .@account_id,getarg(0); query_sql("SELECT `points` FROM `cp_v4p_voters` WHERE account_id="+.@account_id+" LIMIT 1",.@points); if(getarraysize(.@points)==0) return 0; return .@points[0]; } function getItemDetails { set .@key,getarg(0); //Key set .@detail$,getarg(1); //What details to return such as ItemID, Points, Quantity, Category if(strtolower(.@detail$) == strtolower("ItemID")) return @itemID[.@key]; else if(strtolower(.@detail$) == strtolower("Quantity")) return @itemQ[.@key]; else if(strtolower(.@detail$) == strtolower("Points")) return @points[.@key]; else if(strtolower(.@detail$) == strtolower("Category")) return @category$[.@key]; } function getItemsByCat { set .@selectedCat$,getarg(0); set .@make_string$,""; set .@x,0; for(set .@i,0; .@i<getarraysize(@category$); set .@i,.@i+1) { if(strtolower(.@selectedCat$) == strtolower(@category$[.@i])) { setarray @itemKeys[.@x],.@i; if(.@make_string$ == "") set .@make_string$,getitemname(@itemID[.@i]); else set .@make_string$,.@make_string$+":"+getitemname(@itemID[.@i]); set .@x,.@x+1; } } return .@make_string$; } function makeCategory { set .@make_string$,""; for(set .@i,0; .@i<getarraysize(@category$); set .@i,.@i+1) { if(.@make_string$ == "") { setarray @listCat$[getarraysize(@listCat$)],@category$[.@i]; set .@make_string$,@category$[.@i]; } else { if(compare(.@make_string$,@category$[.@i])==0) { setarray @listCat$[getarraysize(@listCat$)],@category$[.@i]; set .@make_string$,.@make_string$+":"+@category$[.@i]; } } } return .@make_string$; } function add_item { set .@itemID,getarg(0,-1); //IteID set .@itemQ,getarg(1,-1); //Item Quantity set .@points,getarg(2,-1); set .@cat$,getarg(3,"Uncategorized"); //Category if(.@itemID == -1) { debugmes "Invalid Item ID. Script not completely loaded."; end; } else if(.@itemQ == -1) { debugmes "Invalid Item Quantity. Script not completely loaded."; end; } else if(.@points == -1) { debugmes "Points assignment error. Script not completely loaded."; end; } set .@key,getarraysize(@itemID); setarray @itemID[.@key],.@itemID; setarray @itemQ[.@key],.@itemQ; setarray @points[.@key],.@points; setarray @category$[.@key],.@cat$; return 1; //return 1 as success } function garbagecol{ deletearray @itemID[0],128; deletearray @itemQ[0],128; deletearray @points[0],128; deletearray @category$[0],128; deletearray @listCat$[0],128; deletearray @itemKeys[0],128; return; } } eAthena version: //==================================================================================== //Script Name: Vote For Points NPC Script for FluxCP //SVN: Tested in rAthena r156513 //Developed By: JayPee Mateo //Version: 1.0 //Requirement(s): FluxCP V4P Addon //Description: This is a npc script for FluxCP Vote for points in order for the players //to claim their vote points //==================================================================================== prontera,151,175,5 script VoteForPoints 89,{ //Function Prototypes function garbagecol;//Garbage collection for the Character variables garbagecol(); function add_item; //Syntanx: add_item(ItemID,QUANTITY,POINTS,CATEGORY); function makeCategory;//This will return a list of the categories function getItemsByCat;//This will return the list of items associated to the particular category function getItemDetails;//This will return the details of the item function getPoints;//This will return the points of the player stored in the database function updatePoints;//This will updates the points of the player stored in the database //NPC Name set .npcname$,"[ Vote For Points ]"; //Initialization of the Rewards add_item(555,1,100,"Hello"); add_item(556,2,101,"Hello"); add_item(557,3,101,"Hello1"); add_item(607,1,10,"Ygg"); //Script Start mes .npcname$; mes "Hi! Do you want to exchange your vote points?:"; switch(select("Yes, I want to exchange my points:See my points")) { case 1: next; mes .npcname$; mes "Please choose a category:"; set .@selected,select(makeCategory())-1; next; mes .npcname$; mes "Please the item you want:"; set .@selected,select(getItemsByCat(@listCat$[.@selected]))-1; next; mes .npcname$; set .@rItemID,getItemDetails(@itemKeys[.@selected],"ItemID"); set .@rquantity,getItemDetails(@itemKeys[.@selected],"quantity"); set .@rpoints,getItemDetails(@itemKeys[.@selected],"points"); mes "Item ID:"+.@rItemID; mes "Item Name: "+getitemname(.@rItemID); mes "Item Quantity: "+.@rquantity+" pc(s)."; mes "Required Points: "+.@rpoints+" pt(s)."; mes "n"; mes "Do you want to this item?"; if(select("Yes:No")==1) { set .@points,getPoints(getcharid(3)); if(.@points>=.@rpoints) { next; mes .npcname$; updatePoints(getcharid(3),.@rpoints); getitem .@rItemID,.@rquantity; mes "Here you go!. Thank you for voting. Don't forget to vote again. "; } else mes "Sorry, you do not have enough points for this item."; } else { next; mes .npcname$; mes "Okay bye!"; } garbagecol(); close; case 2: next; mes .npcname$; set .@points,getPoints(getcharid(3)); mes "You currently have "+.@points+" pt(s)."; garbagecol(); close; } end; //Functions Bodies function updatePoints { set .@account_id,getarg(0); set .@usedPoints,getarg(1); query_sql("UPDATE `cp_v4p_voters` SET points=(points-"+.@usedPoints+") WHERE account_id='"+.@account_id+"'"); return; } function getPoints { set .@account_id,getarg(0); query_sql("SELECT `points` FROM `cp_v4p_voters` WHERE account_id="+.@account_id+" LIMIT 1",.@points); if(getarraysize(.@points)==0) return 0; return .@points[0]; } function getItemDetails { set .@key,getarg(0); //Key set .@detail$,getarg(1); //What details to return such as ItemID, Points, Quantity, Category if(.@detail$ == "ItemID") return @ItemID[.@key]; else if((.@detail$ == "Quantity") || (.@detail$ == "quantity")) return @itemQ[.@key]; else if((.@detail$ == "Points") || (.@detail$ == "points")) return @points[.@key]; else if((.@detail$ == "Category") || (.@detail$ == "category")) return @category$[.@key]; } function getItemsByCat { set .@selectedCat$,getarg(0); set .@make_string$,""; set .@x,0; for(set .@i,0; .@i<getarraysize(@category$); set .@i,.@i+1) { if(.@selectedCat$ == @category$[.@i]); { setarray @itemKeys[.@x],.@i; if(.@make_string$ == "") set .@make_string$,getitemname(@ItemID[.@i]); else set .@make_string$,.@make_string$+":"+getitemname(@ItemID[.@i]); set .@x,.@x+1; } } return .@make_string$; } function makeCategory { set .@make_string$,""; for(set .@i,0; .@i<getarraysize(@category$); set .@i,.@i+1) { if(.@make_string$ == "") { setarray @listCat$[getarraysize(@listCat$)],@category$[.@i]; set .@make_string$,@category$[.@i]; } else { if(compare(.@make_string$,@category$[.@i])==0) { setarray @listCat$[getarraysize(@listCat$)],@category$[.@i]; set .@make_string$,.@make_string$+":"+@category$[.@i]; } } } return .@make_string$; } function add_item { set .@ItemID,getarg(0,-1); //IteID set .@itemQ,getarg(1,-1); //Item Quantity set .@points,getarg(2,-1); set .@cat$,getarg(3,"Uncategorized"); //Category if(.@ItemID == -1) { debugmes "Invalid Item ID. Script not completely loaded."; end; } else if(.@itemQ == -1) { debugmes "Invalid Item Quantity. Script not completely loaded."; end; } else if(.@points == -1) { debugmes "Points assignment error. Script not completely loaded."; end; } set .@key,getarraysize(@ItemID); setarray @ItemID[.@key],.@ItemID; setarray @itemQ[.@key],.@itemQ; setarray @points[.@key],.@points; setarray @category$[.@key],.@cat$; return 1; //return 1 as success } function garbagecol{ deletearray @ItemID[0],128; deletearray @itemQ[0],128; deletearray @points[0],128; deletearray @category$[0],128; deletearray @listCat$[0],128; deletearray @itemKeys[0],128; return; } [color=#000000]}[/color]
  9. As long they have PHP 5.x with PDO extensions and mysql. Yes it can host fluxCP
  10. Assigning of atcommands for GM's is at group.conf. Explanation is already provided there.
  11. Version 1.2

    7751 downloads

    This is my vote for points addon for FluxCP that I code from scratch. Features: Added Anti-Proxy using PHP $_SERVER['HTTP_X_FORWARDED_FOR'] - I hope it work NPC Script is included see npc script folder You can turn off the IP blocking feature which will result to account base blocking system. Allowed image to be uploaded to the database is .gif | .jpeg | .jpg | .png Some Guides: To disable the ip blocking feature just set the 'IP_BLOCKING' to FALSE at config/addon.php To edit the max file size upload just edit 'MAX_FILE_SIZE' to whatever file size you want at config/addon.php Note: If the IP Blocking System is turn on, the blocking system is IP Address Based and Account Based. While if the IP Blocking System is turn off the blocking system is Account Based only. ( IF YOU FOUND BUGS OR SECURITY EXPLOITS PLEASE REPORT IT TO ME IMMEDIATELY)
    Free
  12. File Name: FluxCP Addon: Vote For Points File Submitter: JayPee File Submitted: 23 Mar 2012 File Updated: 26 Mar 2012 File Category: Web Resources This is my vote for points addon for FluxCP that I code from scratch. Features: Added Anti-Proxy using PHP $_SERVER['HTTP_X_FORWARDED_FOR'] - I hope it work NPC Script is included see npc script folder You can turn off the IP blocking feature which will result to account base blocking system. Allowed image to be uploaded to the database is .gif | .jpeg | .jpg | .png Some Guides: To disable the ip blocking feature just set the 'IP_BLOCKING' to FALSE at config/addon.php To edit the max file size upload just edit 'MAX_FILE_SIZE' to whatever file size you want at config/addon.php Note: If the IP Blocking System is turn on, the blocking system is IP Address Based and Account Based. While if the IP Blocking System is turn off the blocking system is Account Based only. ( IF YOU FOUND BUGS OR SECURITY EXPLOITS PLEASE REPORT IT TO ME IMMEDIATELY) Click here to download this file
  13. There might be a change in your login table like the change from `level` column to group_id column
  14. This v4p is free. This is for fluxcp only. I was about to release it today but sadly I forgot to save it in my Flashdrive maybe tomorrow.
  15. Im currently developing a V4P FluxCP addson I think i will be releasing at Friday or Saturday
  16. Im currently developing a V4P for FluxCP, I think I would be able to release it by Friday or Saturday
  17. does your login table is using `group_id` column coz your flux still might be using level which must be change to group id.
  18. @Aleos I think your patch is for those who have `level` column in there login tablei Its in the lib/Flux/LoginServer.php at the $sql = "INSERT INTO {$this->loginDatabase}.login (userid, user_pass, email, sex, level) VALUES (?, ?, ?, ?, ?)";
  19. I think a secret question and secret answer in the registration can be an alternative solution for those server that does not email sending features but for those who have email sending features i guess Secret Question and Answer + Email Verification is good solution?
  20. I still really don't get it. In the registration there's not updating of birthdate field of the account. How the hacker going to edit birthdate field of the character if there is no Update SQL query is coded for editting the birthdate? FluxCP uses PDO, fields are automatically getting escaped before its get inserted to the database by using the prepared statement function. Edit1: Just really concern of the security party coz I dont want other's server to get into trouble problem. Edit2: Well anyways as Jman told me, I think your talking about in the update/editing part of the birthdate of the user for the registered accounts which is not included in the modification I post. Thanks I'll take note of your suggestion if I decided to make the editing part, but it will be a problem to the other server FluxCP's if they cant send email's but I guess I'll add Secret Question and Secret Answer the yahoo registration like thing.
  21. I dont get this.... I think @Celestica is pertaining to the Client Side deletion of characters.
  22. I'm currently making the V4P FluxCP Addon since more are requesting it, hopefully I would be able to release it on Friday or Saturday.
  23. try to clear your data/tmp/ folder
×
×
  • Create New...