Jump to content

Dastgir

Script Developers
  • Content Count

    3803
  • Joined

  • Last visited

  • Days Won

    249

Posts posted by Dastgir


  1. query_sql("SELECT `userid` FROM `login` WHERE `account_id` = " + getcharid(3),.@username$);

    This returns UserName of the Account

     

     

    nope, i don't want to get the username and userid. haha. i just  used the term username/id bec. they're just the same. 

     

     

    query_sql("SELECT `name` FROM `char` WHERE `char_id` = " + getcharid(0),.@name$); 

    this one gets the name of the character right?

     

    what i am looking for would be the userid, the one that we use to login,

     

    Why use a query to get Character name,

    you can get character name by "strcharinfo(0)"


  2. About worldmap, I guess its been translated here : https://github.com/ROClientSide/Translation/tree/master/Data

     

    Hercules doesnt support any of 2014 clients yet, so you have to find and put its packets and packetkeys to src/map/packets.h, and that client should be able to work..

     

    about nemo patch failed, maybe client is not unpacked.. or as said by error, it cannot find empty space in client(you would have to wait until NEMO is updated to support 2014 clients..)


  3. ye ye i'll just compile it eventually

     

    i'm looking at the item db and i'm really liking the layout

     

    you guys have any intentions of making item descriptions also be included in the item db?

     

    and yes i do know the files are normally client side for descriptions and item pictures/sprites

    Its not possible as evilpuncker said, and secondly,

    Even if it was possible, it would be too much bandwidth intensive, (think, sending 10 lines of description to client from server, for every item viewing...)


  4. Thanks a lot quesoph

     

    so i have a server  and the website is protected with 256 bit SSL certificate. so do i need to do sm thing to protect myself from this exploit ?

    If your ssl certificate is generated by(/hosted on) openssl (>v1.0.1) , then update your openssl to the versions which fixed the bug. Also as a security, change user password(but i guess, your server is new, and hackers wouldnt have searched for gaming site for exploit...)

  5. Now its running without errors but the problem now is whenever a player die inside the game the npc shouts party wiped and warps back the party to main town :(

     

    it should be when all party members inside dies thats the only time where the npc will shout party wiped and warp back the party to main town .

     

    *btw i got this script from latest rA svn :(

    have you really changed all hp to Hp , (case-sensitive, h should be capital (H) and p should be small (p).)

    I don't see any error on script except that..

    You can check script at http://haru.ws/scriptchecker/  for any error/warnings.


  6. function	script	F_GetPlural	{	set .@str$, getarg(0);	if (countstr(.@str$," ")) {  // multiple words		explode(.@tmp$,.@str$," ");		set .@size, getarraysize(.@tmp$);		// if format is "... of|in|on ...", pluralize preceding word; else pluralize last word		if (compare(.@str$," of ") || compare(.@str$," in ") || compare(.@str$," on ")) {			for (set .@i,1; .@i<.@size; set .@i,.@i+1) {				if (getstrlen(.@tmp$[.@i]) == 2 && compare("of|in|on",.@tmp$[.@i]))					break;				set .@index, .@index + 1;			}		} else			set .@index, .@size - 1;		set .@str$, .@tmp$[.@index];		set .@tmp$[.@index],"%s";		set .@format$, implode(.@tmp$," ");	} else		set .@format$, "%s";	set .@strlen, getstrlen(.@str$);	if (.@strlen < 3)  // prevent errors		return ((getarg(1,0)) ? strtoupper(sprintf(.@format$,.@str$)) : sprintf(.@format$,.@str$));	setarray .@suffix$[0], charat(.@str$,.@strlen - 1), substr(.@str$,.@strlen - 2,.@strlen - 1);	if (!compare("abcdefghijklmnopqrstuvwxyz",.@suffix$[0])) {  // last character is not a letter		set .@result$, .@str$;	}	// common exceptions --> singular form == plural form	else if (compare("fish|glasses|sunglasses|clothes|boots|shoes|greaves|sandals|wings|ears",.@str$)) {		set .@result$, .@str$;	}	// ends in -s, -x, -z, -ch, -sh --> add -es	else if (.@suffix$[0] == "s" || .@suffix$[0] == "x" || .@suffix$[0] == "z" ||	    .@suffix$[1] == "ch" || .@suffix$[1] == "sh") {		set .@result$, .@str$ + "es";	}	// ends in -f, -fe --> remove -f, -fe --> add -ves	else if ((.@suffix$[0] == "f" || .@suffix$[1] == "fe") && .@suffix$[1] != "ff") {		if (compare("belief|cliff|chief|dwarf|grief|gulf|proof|roof",.@str$))			set .@result$, .@str$ + "s";  // exceptions --> add -s		else			set .@result$, substr(.@str$,0,.@strlen - 2 - (.@suffix$[1] == "fe")) + "ves";	}	// ends in consonant + -y --> remove -y --> add -ies	else if (.@suffix$[0] == "y" && !compare("aeiou",charat(.@suffix$[1],0))) {		set .@result$, delchar(.@str$,.@strlen - 1) + "ies";	}	// ends in -o --> exceptions --> add -es	else if (.@suffix$[0] == "o" &&	         compare("buffalo|domino|echo|grotto|halo|hero|mango|mosquito|potato|tomato|tornado|torpedo|veto|volcano",.@str$)) {		set .@result$, .@str$ + "es";	}	// default --> add -s	else {		set .@result$, .@str$ + "s";	}	return ((getarg(1,0)) ? strtoupper(sprintf(.@format$,.@result$)) : sprintf(.@format$,.@result$));}function	script	F_InsertPlural	{	return sprintf(getarg(3,"%d %s"), getarg(0), ((getarg(0) == 1) ? getarg(1) : callfunc("F_GetPlural",getarg(1),getarg(2,0))));}function	script	F_InsertComma	{	set .@str$, getarg(0);	for (set .@i,getstrlen(.@str$)-3; .@i>0; set .@i,.@i-3)		set .@str$, insertchar(.@str$,",",.@i);	return .@str$;}

    Add these functions(so there will be no unknown function error...).. Courtesy of rA...

     

    for Second Error, change hp to Hp, and it will be fixed.


  7.  

     

    can u confirm sir? As posting in here http://herc.ws/board/topic/1105-hercules-wpe-free-june-14th-patch/ this client version 20120424 is working. But from your tools it say broken.

    The PacketEncryption System is available in 20120424, but the Keys Chosen from kRO are bad(So WPE will work because of those bad keys), so just change the keys which are working, or just change the client.

    thanks for explanation. May i know how cna i change the keys which are wrkking? How do i know? thanks

    http://www.robrowser.com/prototype/packet-keys/ (Choose previous client keys which are marked as PASSED, or try to create your own key, and check if it PASS.) Use NEMO Patcher and diff it with custom Packet Keys, and enter the Packet Keys There. Or by IDA(http://herc.ws/board/topic/1105-hercules-wpe-free-june-14th-patch/#entry8001

     

     

    Also in SErver Side: Change src/map/packets.h to support your custom keys.


  8. Hello,

    I see many users having some problem with new item_Db format, stating that it cannot be used with the Old Tools available, and there's no tool to parse the new item_db.conf

    So I made this script, which converts item_db.conf to item_db.txt , (and you can change the syntax of item_db.txt too)

     

    Script: https://github.com/dastgirpojee/LuaScripts/tree/master/Lua/conf2db

    ReadMe.MD shows how to use it..

    Usage:

    1)Copy item_db.conf to "conf2db" Folder.2)Just run the "conf2db.bat" and Enter some details of file.Format(If Asked):Usage: conf2db.lua {FileName} {Output} {Format(RE,or see below)}.Format: #id #script #View, [Case-insensitive]Default: #ID,#AegisName,#Name,#Type,#Buy,#Sell,#Weight,#Atk:#Matk,#Def,#Range,#Slots,#Job,#Upper,#Gender,#Loc,#wLV,#eLV,#Refine,#View,{ #Script },{ #OnEquipScript },{ #OnUnequipScript } [Case-insensitive]Additional Parameter: #eqmax #eqmin(max and minimum equip level) [Case-insensitive]

     

    P.S: I made the script just for the users who wanted to use old Tools.. and hercules cannot read .txt item_db..


  9.  

    check your sql-files/upgrades/

     

     

    #1396893866ALTER TABLE `char` ADD COLUMN `uniqueitem_counter`  bigint(20) NOT NULL AFTER `unban_time`;INSERT INTO `sql_updates` (`timestamp`) VALUES (1396893866);

    But it does not have any Default value, so executing this to MySQL would also show some problem(if it contains data already)

    and if any newly imported data is there, (there won't be any problem i guess, since uniqueitem is enabled bydefault now)


  10.  

    prontera,150,150,1	script	ShareYourInfo	57,{if(.fbshare > 0){mes "[FB Share]";mes "Click on the Link to Share your Data to FB";mes "<URL>Click Here to Share<INFO>www.facebook.com/sharer/sharer.php?u="+ (.link$) +"?char="+getcharid(0)+"</INFO></URL>";next;sleep2 10000;set #CASHPOINTS, #CASHPOINTS + 100;set .@fbshare,1;dispbottom "You received 100 CASHPOINTS for helping advertising the game";mes "[FB Share]";mes "Please wait 24 hours to help advertise our server again thank you!";close;}mes "[NPC]";mes "Please wait for 24 hours to share this page again.";close;OnAgitEnd:set .@fbshare,0;end;OnInit:.link$ = "best-ro.vylowgaming.net/fbshare/";	//Trailing with "/"end;}

    how do i make this script daily please help :) once a day only

    I don't understand why you used .@fbshare and .fbshare :/ 

    prontera,150,150,1	script	ShareYourInfo	57,{if(#ShareAgain <= gettimetick(2)){	mes "[FB Share]";	mes "Click on the Link to Share your Data to FB";	mes "<URL>Click Here to Share<INFO>www.facebook.com/sharer/sharer.php?u="+ (.link$) +"?char="+getcharid(0)+"</INFO></URL>";	next;	sleep2 10000;	set #CASHPOINTS, #CASHPOINTS + 100;	dispbottom "You received 100 CASHPOINTS for helping advertising the game";	set #ShareAgain,gettimetick(2)+86400;}mes "[FB Share]";mes "Please wait 24 hours to help advertise our server again thank you!";close;OnInit:.link$ = "best-ro.vylowgaming.net/fbshare/";	//Trailing with "/"end;}

    Change "#ShareAgain" to "ShareAgain" if you want to make the timer as per character, currently, if you use the share, that Account won't be able to share until next 24 hours.


  11. If you are using old Hercules, you should not have last ","

    Also the plugin in the 1st post is outdated, heres a updated one

    #include <stdio.h>#include <string.h>#include "../common/HPMi.h"#include "../map/clif.h"#include "../map/atcommand.h"#include "../map/script.h"#include "../map/pc.h"#include "../common/HPMDataCheck.h"HPExport struct hplugin_info pinfo ={    "@dance",		// Plugin name    SERVER_TYPE_MAP,// Which server types this plugin works with?    "0.1b",			// Plugin version    HPM_VERSION,	// HPM Version (don't change, macro is automatically updated)};ACMD(dance){int msg;msg = rand()%9;switch(msg){	case 0:	case 1:	case 3:	case 5:	case 7:	case 9:		clif->specialeffect(&sd->bl, 400, ALL_CLIENT);		if (msg==0 || msg==1) {clif->specialeffect(&sd->bl, 413, ALL_CLIENT);}		else if(msg==3){clif->specialeffect(&sd->bl, 415, ALL_CLIENT);}		else if(msg==5){clif->specialeffect(&sd->bl, 458, ALL_CLIENT);}		else if(msg==7){clif->specialeffect(&sd->bl, 501, ALL_CLIENT);}		else{clif->specialeffect(&sd->bl, 550, ALL_CLIENT);}		break;	case 2:	case 4:	case 6:	case 8:		clif->specialeffect(&sd->bl, 300, ALL_CLIENT);		if (msg==2){clif->specialeffect(&sd->bl, 414, ALL_CLIENT);}		else if (msg==4){ clif->specialeffect(&sd->bl, 426, ALL_CLIENT); }		else if (msg==6){ clif->specialeffect(&sd->bl, 466, ALL_CLIENT); }		else { clif->specialeffect(&sd->bl, 540, ALL_CLIENT); }	}return true;}/* Server Startup */HPExport void plugin_init (void){    clif = GET_SYMBOL("clif");    atcommand = GET_SYMBOL("atcommand");	script = GET_SYMBOL("script");    skill = GET_SYMBOL("skill");	addAtcommand("dance",dance);}

    If using old version of hercules.

    //====================================================//== Topic Discussion ================================//== http://herc.ws/board/topic/549-introducing-hercules-plugin-manager///====================================================//== Description =====================================//The plugin system allows you to create customized scripts //outside of the source. These scripts won't conflict with any //future source updates - think of it as a /conf/import/ for the source. //==================================================== /* --------------- Format ---------------After you have listed your  plugin(s) in "quotations", you need to put in a comma, to separate the plugins.-----------------------------------------plugins_list: [	"example",	"other",]-----------------------------------------Please note that your scripts need to be savedin the .c (source code) extension and placed in the /src/plugin/ folder.-----------------------------------------*/plugins_list: [	/* Enable HPMHooking when plugins in use rely on Hooking */	"dance"	//"db2sql",	//"sample",	//"other",]

    Else the Mhalicot plugins.conf would work.


  12. iRO uses Warpportal and there is a login requirement, i just went to that site to download the client and had to log into warpportal.

    Thats for FullClient,

    The link in the post is for patch, the patcher connect to that site to download the patches, (and Still I can login without any user and pass)


  13.                 while(input(.@novice,1,1000))                    {                                    mes ""+.npc_name$+"";                    mes "Please re-think about your choice. It's not making any sense!";                    close;                                        }                mes ""+.npc_name$+"";                mes "So..You want to get "+.@novice+" Novice Potion?";                next;                if(countitem(JELLOPY_ID) >= (.@novice*2)){                                    mes ""+.npc_name$+"";                    mes "Here you go!";                    delitem JELLOPY_ID,.@novice*2;                    getitem NOVICE_POTION_ID,.@novice;                    next;                    mes ""+.npc_name$+"";                    mes "Come back if you have more!";                    close;                }

    you can also set configuration(variables) for that multiplier...

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.