Jump to content

meruem

Members
  • Content Count

    52
  • Joined

  • Last visited

Posts posted by meruem


  1. A new @item command for players but they cant @item a certain item that i will not allowed. 

     

    For example: Player have @item command but they cant @item 5377 (gpipe). But me as an admin can get it via @item. Hope you understand my explanation. Lol. 

     

    Do I need to create new command or disable something or any trick you will advice. Thank you in advance. 


  2. 14 hours ago, 4144 said:

    pre-re can be used only if you configured to use it. by default used renewal.

     

    probably you changed header back to renewal but forgot build server?

     

     

    Actually when I first set up the server I set it up on pre-re
    But now I want to experience new thats why is put it back on renewal.

     

    Thats why i commented this part on the renewal.h

     

    //#define DISABLE_RENEWAL

    And build my server using this command

    ./configure
    make sql

     

    Did I did it wrong? 


  3. I set up my server on a renewal setting. My question is why is it using "db/pre-re" database?

    This is my renewal.h

     

    /**
     * This file is part of Hercules.
     * http://herc.ws - http://github.com/HerculesWS/Hercules
     *
     * Copyright (C) 2012-2020 Hercules Dev Team
     * Copyright (C) Athena Dev Teams
     *
     * Hercules is free software: you can redistribute it and/or modify
     * it under the terms of the GNU General Public License as published by
     * the Free Software Foundation, either version 3 of the License, or
     * (at your option) any later version.
     *
     * This program is distributed in the hope that it will be useful,
     * but WITHOUT ANY WARRANTY; without even the implied warranty of
     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     * GNU General Public License for more details.
     *
     * You should have received a copy of the GNU General Public License
     * along with this program.  If not, see <http://www.gnu.org/licenses/>.
     */
    #ifndef CONFIG_RENEWAL_H
    #define CONFIG_RENEWAL_H
    
    /**
     * Hercules configuration file (http://herc.ws)
     * For detailed guidance on these check http://herc.ws/wiki/SRC/config/
     **/
    
    /**
     * @INFO: This file holds general-purpose renewal settings, for class-specific ones check /src/config/classes folder
     **/
    
    /**
     * Renewal full toggle switch.
     *
     * Uncomment this line to disable all of the below settings at once.
     * Note: in UNIX builds, this can be easily done without touching this
     * line, by passing --disable-renewal to the configure script:
     * ./configure --disable-renewal
     */
    //#define DISABLE_RENEWAL
    
    
    #ifndef DISABLE_RENEWAL // Do not change this line
    
    /// game renewal server mode
    /// (disable by commenting the line)
    ///
    /// leave this line to enable renewal specific support such as renewal formulas
    #define RENEWAL
    
    /// renewal cast time
    /// (disable by commenting the line)
    ///
    /// leave this line to enable renewal casting time algorithms
    /// cast time is decreased by DEX * 2 + INT while 20% of the cast time is not reduced by stats.
    /// example:
    ///  on a skill whos cast time is 10s, only 8s may be reduced. the other 2s are part of a
    ///  "fixed cast time" which can only be reduced by specialist items and skills
    #define RENEWAL_CAST
    
    /// renewal drop rate algorithms
    /// (disable by commenting the line)
    ///
    /// leave this line to enable renewal item drop rate algorithms
    /// while enabled a special modified based on the difference between the player and monster level is applied
    /// based on the http://irowiki.org/wiki/Drop_System#Level_Factor table
    #define RENEWAL_DROP
    
    /// renewal exp rate algorithms
    /// (disable by commenting the line)
    ///
    /// leave this line to enable renewal item exp rate algorithms
    /// while enabled a special modified based on the difference between the player and monster level is applied
    #define RENEWAL_EXP
    
    /// renewal level modifier on damage
    /// (disable by commenting the line)
    ///
    // leave this line to enable renewal base level modifier on skill damage (selected skills only)
    #define RENEWAL_LVDMG
    
    /// renewal enchant deadly poison algorithm
    ///
    /// leave this line to enable the renewed EDP algorithm
    /// under renewal mode:
    ///  - damage is NOT increased by 400%
    ///  - it does NOT affect grimtooth
    ///  - weapon and status ATK are increased
    ///  - some skill's damage ratio has modified
    #define RENEWAL_EDP
    
    /// renewal ASPD [malufett]
    ///
    /// leave this line to enable renewal ASPD
    /// - shield penalty is applied
    /// - AGI has a greater factor in ASPD increase
    /// - there is a change in how skills/items give ASPD
    /// - some skill/item ASPD bonuses won't stack
    #define RENEWAL_ASPD
    
    #endif // DISABLE_RENEWAL
    #undef DISABLE_RENEWAL
    
    #endif // CONFIG_RENEWAL_H

     


  4. Just now, Samuel said:

    There are referral scripts before lurking here or in rathena that can be used in game.

     

    If the script stores values thru SQL, you can code your own add on to integrate it with fluxcp

    It was too much for me to handle as of the moment. Im just starting learning. 
    Even the terms youve said intimidated me. 😂

     


  5. My server is set up using pre-renewal setting. 

    I checked my mob db and it is using pre-re. 

     

    Why is it that my woe emperium damage is only equals to 1. Regardless of any equip I put on. 

     

    I checked @spawning emperium in prontera and try hitting it my damage is ok huge damage. 

     

    Is the emperium on woe and emperium I spawned not the same?

     

    Can someone enlighten me?


  6. 4 minutes ago, Samuel said:

    @meruem you just need to add

    +

    OnClock0800 for example, not the whole L_start and L_end label

     

    And don't do 1855 start then 1856 end, 1 min event?

    Im trying it on my server so I set it up just for 1 minute to know that the script is working. 

     

    I think its working now. This is what I did. I will put it here for future ref. 
     

    L_start:
    OnClock1925:
    OnClock1935: // everyday 8pm starts
    	if ( .start ) end;
    	gvgon "guild_vs1";
    	announce "The King of Emperium Hill has begun!", bc_all;
    	.start = true;
    	enablenpc "The King#KoE";
    	disablenpc "Exit#KoE";
    	$koegid = 0;
    	donpcevent "::OnRevKoE";
    	maprespawnguildid "guild_vs1", $koegid, 3;
    	killmonster "guild_vs1", "KoE::OnEmpDead";
    	monster "guild_vs1",49,49, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
    	end;
    L_End:
    OnClock1930:
    OnClock1940: // everyday 8:30pm ends
    	gvgoff "guild_vs1";
    	announce "The King of Emperium Hill is over!", bc_all;
    	.start = 0;
    	enablenpc "Exit#KoE";
    	disablenpc "The King#KoE";
    	killmonster "guild_vs1", "KoE::OnEmpDead";
    	maprespawnguildid "guild_vs1", $koegid, 2; // uncomment this line to kick non-owner off the map when event ends
    	end;

    Thank you so much sir Samuel. 


  7. 3 hours ago, Samuel said:

    I think you should have read Annie's post in that topic

     

     

    Just add OnClock label on both L_start and L_end to add another time

     

    L_start: --Add another Starting time here OnClock2000: // everyday 8pm starts L_end: --Add another Ending time here OnClock2030: // everyday 8:30pm ends

    
    L_start:
    --Add another Starting time here
    OnClock2000: // everyday 8pm starts
    
    
    L_end:
    --Add another Ending time here
    OnClock2030: // everyday 8:30pm ends

     

    Just make sure that starting time will not overlap with ending time as well

    I add another line of l_start and l_end so my script looks like this

     

    L_start:
    OnClock1850: // everyday 8pm starts
    	if ( .start ) end;
    	gvgon "guild_vs1";
    	announce "The King of Emperium Hill has begun!", bc_all;
    	.start = true;
    	enablenpc "The King#KoE";
    	disablenpc "Exit#KoE";
    	$koegid = 0;
    	donpcevent "::OnRevKoE";
    	maprespawnguildid "guild_vs1", $koegid, 3;
    	killmonster "guild_vs1", "KoE::OnEmpDead";
    	monster "guild_vs1",49,49, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
    	end;
    L_End:
    OnClock1851: // everyday 8:30pm ends
    	gvgoff "guild_vs1";
    	announce "The King of Emperium Hill is over!", bc_all;
    	.start = 0;
    	enablenpc "Exit#KoE";
    	disablenpc "The King#KoE";
    	killmonster "guild_vs1", "KoE::OnEmpDead";
    	maprespawnguildid "guild_vs1", $koegid, 2; // uncomment this line to kick non-owner off the map when event ends
    	end;
    L_start:
    OnClock1855: // everyday 8pm starts
    	if ( .start ) end;
    	gvgon "guild_vs1";
    	announce "The King of Emperium Hill has begun!", bc_all;
    	.start = true;
    	enablenpc "The King#KoE";
    	disablenpc "Exit#KoE";
    	$koegid = 0;
    	donpcevent "::OnRevKoE";
    	maprespawnguildid "guild_vs1", $koegid, 3;
    	killmonster "guild_vs1", "KoE::OnEmpDead";
    	monster "guild_vs1",49,49, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
    	end;
    L_End:
    OnClock1856: // everyday 8:30pm ends
    	gvgoff "guild_vs1";
    	announce "The King of Emperium Hill is over!", bc_all;
    	.start = 0;
    	enablenpc "Exit#KoE";
    	disablenpc "The King#KoE";
    	killmonster "guild_vs1", "KoE::OnEmpDead";
    	maprespawnguildid "guild_vs1", $koegid, 2; // uncomment this line to kick non-owner off the map when event ends
    	end;
    OnEmpDead:
    	$koegid = getcharid(2);
    	announce "The current King of Emperium Hill is the ["+ strcharinfo(2) +"] guild.", bc_all;
    	donpcevent "::OnRevKoE";
    	maprespawnguildid "guild_vs1", $koegid, 2;
    	killmonster "guild_vs1", "KoE::OnEmpDead";
    	sleep 500;
    	if ( .start )
    		monster "guild_vs1",49,49, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
    	end;

    The npc appears but I cant go inside the koe map.
    And theres an error on my server. Here

     

    [Error]: script error in file 'npc/custom/koescript.txt' line 55 column 1
        set_label: dup label
        52:         killmonster "guild_vs1", "KoE::OnEmpDead";
        53:         maprespawnguildid "guild_vs1", $koegid, 2; // uncomment this lin                                                                                       e to kick non-owner off the map when event ends
        54:         end;
    *   55: L_start:
            ^
        56: OnClock1855: // everyday 8pm starts
        57:         if ( .start ) end;
        58:         gvgon "guild_vs1";
    [Warning]: script error in file 'npc/custom/koescript.txt' line 125 column 52
        This command is deprecated and it will be removed in a future update. Please                                                                                        see the script documentation for an alternative.
    
       122: {
       123:         if ( !$koegid ) end;
       124:         mes "[King of Emperium Hill]";
    *  125:         mes "The Current King of Emperium Hill is the ["+ getguildname($                                                                                       koegid) +"] guild.";
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
       126:         close;
       127: //OnInit: // Uncomment this line to make the emblem stay after @reloadsc                                                                                       ript
       128: OnRevKoE:

     


  8. 12 hours ago, meko said:

    pointshop is not a valid NPC type in Hercules. You might want to use the trader type with subtype NST_CUSTOM

     

    What exactly I need to do sir?
    Do i need to substitute just the "pointshop" to "trader"

    or i need to replace the whole script itself?

     

    Im looking for hourly rewards that gives certain item example pods (7179).

    This is the script
     

    //===== rAthena Script =======================================
    //= saders Hourly Rewards
    //===== By: ==================================================
    //= Sader1992
    //https://rathena.org/board/profile/30766-sader1992/
    //===== Current Version: =====================================
    //= 1.2
    //===== Compatible With: ===================================== 
    //= rAthena Project
    //https://rathena.org/board/files/file/3647-saders-hourly-rewards/
    //https://github.com/sader1992/sader_scripts
    //===== Description: =========================================
    //==== all the configuration are in the last
    //==== support gepard / ip / or without them
    //==== if you use ip/gepard sql will be used for that
    //==== can add minimem level to get the rewards
    //==== can change the time
    //==== can ban the vending from the rewards (it will reset after relogin)
    //==== can add rewards else then variable
    //==== there is a shop npc for the variable
    //==== you can make it only for vip
    //==== can ban idle players for X time from the Hourly Rewards
    //==== player can ban his char from getting the reward by @HourlyBan (it will reset after relogin)
    //============================================================
    //==== please send me a message if you find error
    //==== if you like my work maybe consider support me at paypal
    //==== [email protected]
    //============================================================
    //==== 1.1 FIX Critical issue with gepard/ip and compatibility with my other scripts
    //==== 1.2 FIX GrPard Variable
    //============================================================
    -	script	sader_Hourly_Rewards	-1,{
    
    OnHourlyRewards:
    		if(#Hourly_Ban){
    			message strcharinfo(0),"[Hourly Rewards]: You did ban this char from the Hourly Rewards , Relogin to change that .";
    			addtimer .s_time, strnpcinfo(3)+"::OnHourlyRewards";
    			end;
    		}
    		if(.s_idle){
    			if(checkidle() > .s_idle_time){
    				message strcharinfo(0),"[Hourly Rewards]: No Hourly Rewards for IDLE Players!.";
    				addtimer .s_time, strnpcinfo(3)+"::OnHourlyRewards";
    				end;
    			}
    		}
    		if(.s_vip){
    			if(!vip_status(VIP_STATUS_ACTIVE)){
    				message strcharinfo(0),"[Hourly Rewards]: if you are a VIP you will get Hourly Rewards!.";
    				addtimer .s_time, strnpcinfo(3)+"::OnHourlyRewards";
    				end;
    			}
    		}
    		if(BaseLevel < .s_hourly_level){
    			message strcharinfo(0),"[Hourly Rewards]: if you are level "+.s_hourly_level+" and more you will get Hourly Rewards!.";
    			addtimer .s_time, strnpcinfo(3)+"::OnHourlyRewards";
    			end;
    		}
    		if(.s_vinding){
    			if(checkvending() & .s_vinding){
    				message strcharinfo(0),"[Hourly Rewards]: No Hourly Rewards for Venders , Relogin to change that .";
    				if(.s_GePard_ip){
    				query_logsql("delete from `sader_variables_log` where `variable` = '#Hourly_Rewads_Check' AND `account_id`= '"+getcharid(3)+"'");
    				}
    				#Hourly_Rewads_Check = 0;
    				#Hourly_Ban = 1;
    				addtimer .s_time, strnpcinfo(3)+"::OnHourlyRewards";
    				end;
    			}
    		}
    		#Hourly_Rewads_Check += 1;
    		if(.s_GePard_ip == 1){
    			query_sql("SELECT `last_unique_id` FROM `login` WHERE `account_id` = '"+getcharid(3)+"'", .@s_last_unique_id$);
    			query_logsql("SELECT value FROM `sader_variables_log` WHERE unique_id = '"+.@s_last_unique_id$+"' AND `variable` = '#Hourly_Rewads_Check'", .@s_GePard);
    			if(.@s_GePard >= #Hourly_Rewads_Check){
    				message strcharinfo(0),"[Hourly Rewards]: You already got the Hourly Rewards from this PC";
    				#Hourly_Rewads_Check -= 1;
    				addtimer .s_time, strnpcinfo(3)+"::OnHourlyRewards";
    				end;
    			}
    			if(.@s_GePard == 0){
    				query_logsql("INSERT INTO `sader_variables_log` (`unique_id`,`ip`,`variable`,`index`,`value`, `account_id`, `char_id`, `char_name`) VALUES ('"+.@s_last_unique_id$+"', '"+getcharip()+"', '#Hourly_Rewads_Check', '0', '"+#Hourly_Rewads_Check+"', '"+getcharid(3)+"', '"+getcharid(0)+"', '"+strcharinfo(0)+"')");
    			}
    			query_logsql("Update `sader_variables_log` SET `value` = '"+#Hourly_Rewads_Check+"' WHERE `unique_id`= '"+.@s_last_unique_id$+"' AND `variable` = '#Hourly_Rewads_Check'");
    		}else if(.s_GePard_ip == 2){
    			query_logsql("SELECT value FROM `sader_variables_log` WHERE ip = '"+getcharip()+"' AND `variable` = '#Hourly_Rewads_Check'", .@s_ip);
    			if(.@s_ip >= #Hourly_Rewads_Check){
    				message strcharinfo(0),"[Hourly Rewards]: You already got the Hourly Rewards from this IP";
    				#Hourly_Rewads_Check -= 1;
    				addtimer .s_time, strnpcinfo(3)+"::OnHourlyRewards";
    				end;
    			}
    			if(.@s_ip == 0){
    				query_logsql("INSERT INTO `sader_variables_log` (`unique_id`,`ip`,`variable`,`index`,`value`, `account_id`, `char_id`, `char_name`) VALUES ('"+.@s_last_unique_id$+"', '"+getcharip()+"', '#Hourly_Rewads_Check', '0', '"+#Hourly_Rewads_Check+"', '"+getcharid(3)+"', '"+getcharid(0)+"', '"+strcharinfo(0)+"')");
    			}
    			query_logsql("Update `sader_variables_log` SET `value` = '"+#Hourly_Rewads_Check+"' WHERE `ip`= '"+getcharip()+"' AND `variable` = '#Hourly_Rewads_Check'");
    		}
    		message strcharinfo(0),"[Hourly Rewards]: you Gain your Reward.";
    		callsub Hourly_Rewads;
    		addtimer .s_time, strnpcinfo(3)+"::OnHourlyRewards";
    end;
    
    OnHourlyBan:
    	if(!#Hourly_Ban){
    		message strcharinfo(0),"[Hourly Rewards]: You did ban this char from the Hourly Rewards , Relogin to change that .";
    		if(.s_GePard_ip){
    		query_logsql("delete from `sader_variables_log` where `variable` = '#Hourly_Rewads_Check' AND `account_id`= '"+getcharid(3)+"'");
    		}
    		#Hourly_Rewads_Check = 0;
    		#Hourly_Ban = 1;
    		addtimer .s_time, strnpcinfo(3)+"::OnHourlyRewards";
    	}
    end;
    
    OnUnHourlyBan:
    	#Hourly_Ban = 0;
    end;
    OnPCLogoutEvent:
    	if(.s_GePard_ip){
    	query_logsql("delete from `sader_variables_log` where `variable` = '#Hourly_Rewads_Check' AND `account_id`= '"+getcharid(3)+"'");
    	}
    	if(#Hourly_Ban == 1){
    		#Hourly_Ban = 0;
    	}
    	#Hourly_Rewads_Check = 0;
    end;
    
    OnPCLoginEvent:
    	addtimer .s_time, strnpcinfo(3)+"::OnHourlyRewards";
    end;
    
    OnInit:
    	.s_idle = 0; //	ban hourly rewards from idle players ? 0 no / 1 yes {if player didn't move for x time he wont get hourly reward}  , DEFAULT = 0
    	.s_idle_time = 1800; //	this the time for idle in secend  , DEFAULT = 1800 (30 min)
    	.s_vip = 0; //	1 = only for VIP / 0 = for everyone  , DEFAULT = 0
    	.s_time = 60000; //	1000 = 1 secend | 60000 = 1 min | 3600000 = 1 houre  , DEFAULT = 3600000 (1 hr)
    	.s_hourly_level = 90; //	Minimam level to get the Houerly rewards / 0 = no minimem level  , DEFAULT 0
    	.s_GePard_ip = 0; //	0 = no Gepard / 1 = Gepard / 2 = IP  , DEFAULT 0
    	.s_vinding = 7; //	DEFAULT 7 / 0 = will give the reward even if vending / 1 = no normal vending / 2 = no @autotrade / 4 = no buyingstore | Example: if you want to ban normal vend and buying store you add the numbers 1+4=5
    	query_logsql("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");
    	bindatcmd("UnHourlyBan",strnpcinfo(3)+"::OnUnHourlyBan",99,99);
    	bindatcmd("HourlyBan",strnpcinfo(3)+"::OnHourlyBan",0,99);
    end;
    
    Hourly_Rewads:
    	//put the Hourly Rewards here
    	#HourlyRewards += 1;
    	//getitem 7179,1; //	if you want to add items as reward you can add them here like that
    	//getexp 10000,5000; //	if you wanna add exp as reward add them here like that
    	//if(#Hourly_Rewads_Check == 5){getitem 7179,2;} //	like this you can add reward for Xhr and this reward will be given for that X in this example 5 mean that the player did pass 5hr
    	//if(#Hourly_Rewads_Check == 5){getitem 7179,3;} //	like this you can add reward for Xhr and this reward will be given for that X in this example 5 mean that the player did pass 5hr or more
    return;
    }
    prontera,147,166,5	pointshop	Hourly Rewards	Shop	667,#HourlyRewards,7179:1,7179:10,7179:15,7179:1,7179:200
    //<ITEM_ID>:<PRICE>,<ITEM_ID>:<PRICE>,<ITEM_ID>:<PRICE>,<ITEM_ID>:<PRICE>

     


  9. I dont know if this is a correct section to post this?
    But is hercules DEAD?

    No one is answering anymore on discord / scripts section/ db section/ client section and other section that I posted for the past 3-4 weeks.

     

    Im just new to hercules I dont know what happened but is there some kind of anything that happened on the forums why no one is posting and answering anymore? 

    Please enlighten me. 


  10. prontera,151,171,5<tab> pointshop <tab>Hourly Rewards Shop<tab> 667,#HourlyRewards,901:1,902:10,903:15,904:1,905:200

     

    Whats wrong with that line?

     

    it giving me This error

    [Error]: npc_parsesrcfile: Unable to parse, probably a missing or extra TAB in file

    'npc/custom/hourly_reward.txt', line '147'. Skipping line...

    * w1=prontera,151,171,5

    * w2=pointshop

    * w3=Hourly Rewards Shop * w4=667,901:1,902:10,903:15,904:1,905:200


  11. Just now, Samuel said:

     

    basically your server grf contains the "data folder" in grf form.

     

    Usually translated files because data.grf contains korean verison.

    clientinfo.xml - the one you will use to connect to your server

    custom files (sprites, textures or anything that you will add or have customized for your server that is not inside the data.grf or anything inside the data.grf but you want to be overwritten by yours)

    THANK YOU SO MUCH SIR!!!

    YOURE LIKE A BIG SUNSHINE!!!

     

    Thank you thank you. 


  12. I followed this GUIDE on creating a server and I successfully made it. 

    Im now creating myserver.grf and browse thru guides. 

     

    My question is what are the things exactly I need to put inside my "myserver.grf"?

    Because I tried extracting the grfs of some server and whats inside their GRF's are the same files that I have on my data "folder" on the server client that I created following that guide link above. 

     

    So Im quite confuse. Can someone explain it to me clearly? 


  13. 6 hours ago, 4144 said:

    if you not using screen or tmux, your server probably closed if you close terminal.

    for look is your server processes running, you can try use ps or top or htop.

    also for check is servers running and listening on configured ports, you can run from root or sudo this command:

    netstat -lnp|grep -E "login|char|map"

    
    netstat -lnp|grep -E "login|char|map"

     

    How about checking the error on my login char and map server sir?

    coz i cant connect on my server. And i cant figure out what the error is because i cant see the 3 server windows.  Any solution for that?


  14. Hello guys. Im running my server on a centOS7 vps.

    And im quite new on linux and starting to love it

     

    I am following this guide and quite run my server successfully via terminal.

    https://herc.ws/board/topic/13146-guide-create-your-server-client-201608/

    My question is if i run my successfully the first time and close the terminal. Is the server continue to run on my vps?

    If yes is there a way or command that I can type on the terminal to check if my server is still running?

     

    Thanks in advance guys. Many thanks. 

     

×
×
  • Create New...

Important Information

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