Jump to content

quesoph

Members
  • Content Count

    562
  • Joined

  • Last visited

  • Days Won

    6

Reputation Activity

  1. Upvote
    quesoph reacted to Mystery in July Digest 2013   
    July Digest 2013
    The following digest covers the month of July 1st - July 31st 2013.
     
    Team Changes
    [*]Xgear has been moved from Community Contributor to High Council. [*]Shikazu has joined as a International Moderator. [*]Haru has joined as a Core Developer. [*]Gepard has joined as a High Council. [*]Susu has joined as a Core Developer.

     
    Development Highlights
    [*]Battlegrounds Queue Update (7aa9e6e) [*]Ultimate Item DB Update (1caae98) [*]Additional Interface Changes [*]Mercenary Interface (b717147) [*]Intif Interface (853489bcb) [*]Elemental Interface (9d53093) [*]iDuel Interface (5a22b04) [*]Chat Interface (9ac2cf7) [*]Expansion of script.c interface (5832722)
    [*]Extended ID <item_id> syntax to Item Packages and Item Groups (606a985) [*]Item Package Update (0118a09, dc85ce0) [*]Server Statistics Implementation (ea5a413) [*]Splitting of use_sql_db into: item_db, mob_db, and mob_skill_db (0f2899c) [*]Implementation of Official Mute System (da064c0) [*]Implementation of new commands { sit(), stand(), issit() } (e8adea6) - Please refer to /doc/script_commands.txt for documentation


     
    Scripts
    [*] Dewata Warps now available (3e91032)

     
    Client Support
    [*]New Packets for: 2013-06-12Ragexe, 2013-06-18Ragexe, 2013-06-26Ragexe, 2013-07-03Ragexe. New Packet Keys for: 2013-06-26Ragexe, 2013-07-03Ragexe (f530cfe)

     
     Introduction to Github: Issues
    [*]For the past two weeks, the staff has been using Github: Issues to discuss issues and development strategies with the help of source code annotation features provided by Github. While being mainly used by Hercules team, all users are welcome to provide feedback on GitHub Issues page.


    [*]You can view our issues that are posted and labeled by heading to our Hercules Repo in Github and on your right, there's a little tab with an Exclamation (!) inside a circle.

    Once you're in our Issues page, you'll be able to view a variety of issues that the developers have opened - you may also view issues that have been closed.
     
     
     
     
    Statistics
    [*]During the period there were 95 Commits. [*]Of these 95 commits, 57 included bug-fixes. [*]11 Commits from Pull Requests [*]In this month, there were 33,805 Additions and 30,555 Deletions.

  2. Upvote
    quesoph got a reaction from jaBote in How to write down Item Script increase asura strike skill   
    bonus2 bSkillAtk,n,x; Increase damage of skill n by x% (supports skill names)
  3. Upvote
    quesoph reacted to Ind in Ultimate Item DB Update   
    Ultimate Item DB Update
     
    Overview
    A very extensive item db update for renewal mode The Numbers: Over 6500 individual flag updates 212 newly added/enabled items Made Possible Thanks To: Muad_Dib for all the data Yommy for the help on the equip field Haru for the new upper masks and his ultimate parser skills that improved the quality of this update by many fold In the update
    db/re/item_db (and thus sql-files/item_db_re.sql) over 6500 flag updates and 212 newly added/enabled items 16: Upper Third jobs (Trans)32: Baby Third jobs The AegisName field was updated in several entries to match the official ones The name field was also updated in several entries to match the client display files 2 New 'Upper' flags were added to accommodate many of the newly added items:Custom items in renewal mode will require to have these new flags if you wish these jobs to make use of such items db/re/item_packages update to match the newly added items db/re/item_groups update to match the newly added items A new error message in the item db parser that will display any duplicate AegisName fields that are conflicting (Thanks to Masao) Special Thanks
    once again,
    Muad_Dib, this update wouldn't exist if it weren't for all the data he provided us with Yommy, wouldn't have been able to properly update the equip flags if it weren't for the job data he provided me with Haru, for making it possible to polish this update so many times. Haru spent many hours debugging this update and writing tools to further enhance the quality of the update Link~u!
    Commit Commit 2 (Follow up)Special Thanks to Yommy for bringing it to our attention and for providing the data for the follow up, and to Haru for help in validating the update
  4. Upvote
    quesoph got a reaction from madtoyz in Make Mini Dice script random prize   
    forgot to change the getitem part on my first post.
  5. Upvote
    quesoph reacted to Najara in Najara's (Free) Map Package   
    Hello there, Hercules!
     
     
    I thought I might as well be more active on this forum seeing how I am running on Hercules myself now.
     
    Here my gift for you, a free map pack!
     
     
    This pack contains the following (7) maps:
     
    - Lunette V1.0
    - Altzibar V1.0
    - Crystilia
    - Flaris
    - Jazeera
    - Welgaia
    - War Cage
     

     ] - All the maps are in the playlist, 'cept for War Cage. That map is too small to actually make a video of. 
    Please be so kind to consider one of my purchasable maps. It'll mean a lot to me.
     
     
    Special thanks: Syouji
    If Syouji didn't save these maps, they would've been lost after reformatting my computer. ^^;
     
     
    Thank you and have fun with the maps! ♥
     
     
    Free Map Pack.rar
  6. Upvote
    quesoph reacted to jaBote in How to add Rental Items to the Cash Shop?   
    Rental items make use of the rentitem script command (check rentitem on doc/script_commands.txt). They're usually a box that when you open it you'll have that item for some time (time expressed in seconds) and after that it's gone.
     
    I think you can't directly rent items from the Cash Shop but you could take the idea from what it's done on official servers, which is selling boxes that rent you the items when you open them. There are numerous examples on RateMyServer for instance.
  7. Upvote
    quesoph got a reaction from jaBote in Make Mini Dice script random prize   
    forgot to change the getitem part on my first post.
  8. Upvote
    quesoph got a reaction from madtoyz in Make Mini Dice script random prize   
    See 2nd post.
  9. Upvote
    quesoph reacted to Ai4rei in RO Credentials (ROCred), v1.10.0 - last updated 2017/12/31   
    RO Credentials


    About
    Simple and tiny client launcher+login. Has no prerequisites and runs on all Windows versions. Known Issues
    [aavc] This tool is not safe for computers running Avast Anti-Virus. Download
    binary, reference source Q & A Is it customizable?
    Yes. How?
    With resource editing tools, such as ResourceHacker. All text and icons can be customized. Settings can be edited in an INI file, instructions on how to do that are provided in the example files together with the launcher. What is "reference source"?
    You cannot compile it (unless you provide the missing components), but see what functionality the latest binary contains. I want it to be xyz.exe, but it does not read the INI file. Why?
    You have to match the INI name to the EXE name. rocred.exe -> rocred.ini mytest.exe -> mytest.ini  
    How can I embed an INI file into the EXE?
    Add the INI file as RCDATA resource named CONFIG with ResourceHacker. How do I use background skinning?
    Create a file named bgskin.bmp (magenta #ff00ff is considered transparent). You can also embed the file as BITMAP resource with the name BGSKIN. Window size is adjusted to the bitmap size, position of controls must be set in the INI. Buttons can be skinned as well, see the INI for names.
    Can I add custom buttons, if so, how many?
    Yes, see the INI template for details. There is no defined limit on how many, the only constraints are available memory, GDI resources and INI size limit on some platforms. By the way, custom buttons can be skinned as well. Why does the client not auto-login when I press "Start" / Why do I have to login twice?
    The client must be 2010-08-04aRagexeRE or newer and must not have the "Restore Login Window" patch and should have the "Use SSO Login Packet" patch.
    This work is licensed under a Creative Commons Attribution-Noncommercial 3.0 Unported License.
     
  10. Upvote
    quesoph got a reaction from Zalbahis in R> MVP Hunting Points..   
    Oh thanks for pointing that out
     
    anyway
    This is account based.
     
    set #MVPPOINTS, #MVPPOINTS + 1;  
    And this is character based.
     
    set MVPPOINTS, MVPPOINTS + 1;
  11. Upvote
    quesoph got a reaction from Zalbahis in R> MVP Hunting Points..   
    OnNpcKillEvent: if ( killedrid == 1159 ) { // 1159 is phreeoni's monster ID. dispbottom "You killed Phreeoni"; set #MVPPOINTS, #MVPOINTS + 1; // +1 MVP Points if you kill phreeoni. end; }
  12. Upvote
    quesoph got a reaction from Loky in R> Gold Room for Hercules SVN   
    // _______ __ ____ ____ __ __ ____ __ __ __ __ __ __ __ ____ _ ____ // /__ __/ / / / __ / __ / / / / /__ / / /_/ __/ /_ / // / / /__/ / /__ / /__ / __ _____// / / / /_ / /_/ / / / / / / / / / ____/ / / / __ /_ __// // / / _ _ / ____/ / / // / / /_/ / / __ // / / / __ / ____/ / / / / / / / / / __ / / / / / / / _ / / // /// / __ / / __/ / ____/ / / /_/// / / / / / / / /__ / /_/ /_ / /_/ / / /_/ / / / / / / / __/ / / // /// / /_/ / / _ / /__ / ////_/ /_/ /_/ ____/ _______/ ____/ ____/ /_/ /_/ /_/ __/ /_//_/// ____/ /_/ _ ____/ /_///=============================================================================//// Gold Room Advance Script - Mining Gold for wealth - Please Leave Credit //=============================================================================//POWERED by: rudolp//[The Quality Maker]//Time Finished :6:28 PM 6/7/2009//Please Report any bug and suggestions.//===== Compatible With: =================================================================//= Any eAthena Version//=============Gold Room Settings===================//This should always be enable for a better Gold Room System.//==================================================ordeal_1-2.gat mapflag noskillordeal_1-2.gat mapflag nomemoordeal_1-2.gat mapflag nobranchordeal_1-2.gat mapflag noloot ordeal_1-2.gat mapflag noexpordeal_1-2.gat mapflag nodropordeal_1-2.gat mapflag novendingordeal_1-2.gat mapflag nowarpordeal_1-2.gat mapflag nowarptoordeal_1-2.gat mapflag noreturn//=================================================ordeal_1-2,0,0,0 script Gold Room -1,{OnInit://No. of Mine Guardian.//For golden peko it is default to 100 and 4 seconds~2 seconds spawn rate. set .guardian,50;//Type of guardian. 0 = normal 1 = extreme set .@guardiantype,0; if(.@guardiantype == 0){ monster "ordeal_1-2",0,0,"Taga Bantay",2001,.guardian,""; }else{ monster "ordeal_1-2",0,0,"Taga Bantay",2002,.guardian,""; }end;OnNPCKillEvent://===== Configurations: ========================================================================//Max gold can a player get after killing 1 golden peko (default 5 note:this will increase if luk bonus is enable). set .@maxgaingold,5;//Apply gold penalty. 0 = no 1 = yes set .@penalty1,1;//The Maximum no. of gold Penalty. set .@maxpenalty1,3;//Apply speed & HP penalty. 0 = no 1 = yes set .@penalty2,1;//Gold limitation penalty must be enable set .@maxgold,200;//The maximum no. of hp penalty by %. set .@maxpenalty2,10;//Enable luk bonus. 0=no 1=yes set .@lukbonus,0;//If luk Bonus is enable,luk divider default 49 w/ 99 max parameter. Note: the quotient of your max parameter and .@lukdiv must not grater than 5 to avoid over mining. set .@lukdiv,49;//Show Server Name. 0=no 1=yes set .@showservername,1;//Name of your Server set .@servername$,"[The Quality Maker]";//=========================================================================================if (getmapxy(@mapname$,@mapx,@mapy,0) == -1) goto L_Finish;if (@mapname$ == "ordeal_1-2"){ set @bonus,0; set @deduction,0; set @gain,rand (.@maxgaingold);//Luk bonus if (.@lukbonus != 0){ set @bonus,readparam(bLuk)/.@lukdiv; }//Gold Penalty if (.@penalty1 != 0){ set @deduction,rand(.@maxpenalty1); if(@deduction == 0) set @deduction,1; } set @gain, @gain + @bonus - @deduction; set golds, golds + @gain ;//Displaying Gained Gold if(.@showservername != 0){ if(golds%5 == 0){ //Show Server Name every 10 gold gain. dispbottom "===============Brought to you by==============="; dispbottom "==============" + .@servername$ +"=============="; } } if(@gain){ dispbottom "-|You got: " +@gain+ " gold| - |Total: " +golds+ " gold|- "; }else{ dispbottom "-|You got: NOTHING! |- "; } if (.@penalty2 != 0){ if (golds >= .@maxgold/2 && golds <=.@maxgold/2+20){ sc_start SC_DECREASEAGI,240000,10; }else if(golds >.@maxgold){ sc_start SC_CURSE,240000,10; percentheal (.@maxpenalty2*-1),(.@maxpenalty2*-1); heal -50,0; //For him to die } } if(paid == 0){ mapannounce "ordeal_1-2"," x( "+strcharinfo(0)+" is a cheater!",bc_map; dispbottom "Go out you bastard!"; set golds,0; warp "prontera", 173, 160; } end;}OnPCDieEvent: if (getmapxy(@mapname$,@mapx,@mapy,0) == -1) goto L_Finish;if (@mapname$ == "ordeal_1-2"){ dispbottom "Holy Shit you died!"; dispbottom "All of your gold will gone!"; set alive, 0; set paid, 0; end;}L_Finish:close;}//===============================================//warper//===============================================ordeal_1-2,154,156,5 script Gold Miner 813,{ mes "[Gold Miner]"; if(golds >=50){ goto wa; } mes "Want to go now?"; mes "Your gold is just "+golds+" you can still get more."; close;wa: mes "Want to go now?"; if(select("Yes", "No") == 1) { set alive,1; warp "prontera", 173, 160; } close;} prontera,165,158,5 script Gold Room Warperer#pront 813,{ set @name$,"prontera"; callfunc "goldmain"; end;}aldebaran,133,116,4 script Gold Room Warperer#alde 813,{ set @name$,"aldebaran"; callfunc "goldmain"; end;}alberta,23,247,4 script Gold Room Warperer#alb 813,{ set @name$,"alberta"; callfunc "goldmain"; end;}payon,151,182,4 script Gold Room Warperer#pay 813,{ set @name$,"payon"; callfunc "goldmain"; end;}geffen,115,74,4 script Gold Room Warperer#gef 813,{ set @name$,"geffen"; callfunc "goldmain"; end;}function script goldmain { if (getgmlevel() >= 90){ mes "[Gold Room Warperer]"+zeny," "+#CASHPOINTS; if(sex != 0){ mes "Hello Sir what can I do for you?"; }else{ mes "Hello Maam what can I do for you?"+#KAFRAPOINTS; } next; menu "Enter Mining Site",start,"Please close the mine Site. Now!",-,"Please Open the mine Site. Now!",G_open,"Nothing",C_s; next; mes "[Gold Room Warperer]"; mapannounce "ordeal_1-2","Excuse me Miners.",bc_map; mes "Ok."; next; mapannounce "ordeal_1-2",strcharinfo(0) +" wants to close the Gold Room for a while",bc_map; mes "Just a second I will just ask them to"; mes "go out in the mining site"; next; mapannounce "ordeal_1-2","Please settle your things and move quitely",bc_map; mes "[Gold Room Warperer]"; mes "............."; mes "........"; next; mes "[Gold Room Warperer]"; mes "Ok your done"; set .opengoldroom,1; areawarp "ordeal_1-2",21,286,286,22,"prontera", 173, 160; close; } if(.opengoldroom == 0){ goto start; }else{ mes "[Gold Room Warperer]"; mes "Sorry!"; mes "The Mining Site is closed."; close; }G_open: mes "[Gold Room Warperer]"; mes "Ok."; mes "Mining Site is Already Available."; announce " Gold Room is open for public!",bc_map; set .opengoldroom,0;close;start: if ( alive == 0){ set golds,0; } mes "[Gold Room Warperer]"; mes "What do you want?"+cash; next; menu "To the Gold Room",-,"Exchange Gold",exchange,"Nothing",C_s; mes "[Gold Room Warperer]"; mes "Hmm.."; mes "It cost 100,000z"; mes "Would you like to go now to the gold room?"; if(select("Yes", "No") == 2) close; if(@name$ == "prontera") savepoint "prontera", 173, 160; if(@name$ == "aldebaran") savepoint "aldebaran",166, 163; if(@name$ == "alberta") savepoint "alberta",16, 246; if(@name$ == "payon") savepoint "payon",160, 179; if(@name$ == "geffen") savepoint "geffen",124, 85; if (Zeny < 100000) goto nomoney; set Zeny, Zeny - 100000; set alive, 1; set paid, 1; set golds,0; warp "ordeal_1-2", 156, 155; close;nomoney: mes "[Gold Room Warperer]"; mes "Sorry insufficient balance"; close;exchange: mes "[Gold Room Warperer]"; mes "Hmm...let me see"; mes "You have " +golds+ "."; if (golds == 0) goto nogold; mes "Ok get this."; next; if (checkweight(969,golds) == 0) goto L_OverWeight; getitem 969, golds; set golds, 0; emotion e_gg; close;L_OverWeight: mes "[Gold Room Warperer]"; mes "Sorry your overweight"; close;nogold: close;C_s: close;}//============================================================//===========================================================//========================================//warps you may edit this one for your convenience//========================================ordeal_1-2,73,265,0 warp ord500 1,1,prontera,173,160ordeal_1-2,129,194,0 warp ord501 1,1,prontera,173,160ordeal_1-2,130,194,0 warp ord502 1,1,prontera,173,160ordeal_1-2,178,193,0 warp ord503 1,1,prontera,173,160ordeal_1-2,290,130,0 warp ord504 1,1,prontera,173,160ordeal_1-2,241,281,0 warp ord505 1,1,prontera,173,160ordeal_1-2,66,25,0 warp ord506 1,1,prontera,173,160ordeal_1-2,202,129,0 warp ord509 1,1,prontera,173,160ordeal_1-2,105,154,0 warp ord510 1,1,prontera,173,160//============Spawns=================ordeal_1-2,0,0,0,0 monster Golden Pecopeco 1002,100,40000,20000,0
  13. Upvote
    quesoph got a reaction from Zalbahis in Hi!, I just need a lil tweak   
    ../db/pre-re/refine_db.txt
     
    or
     
    ../db/re/refine_db.txt
     
     
    pre-re is +1 to +10
    and
    re is +1 to +20
  14. Upvote
    quesoph reacted to KeyWorld in ROChargenPHP - Free PHP Character Viewer   
    ROChargenPHP
     
      
     
     
     
    Features

    Core [*]Support for .spr, .act, .pal, .grf, ... [*].act file completed support (transparency, scale, color, rotate, ...) [*]Characters fully implemented ( body, head, hats, weapon, shield, robe, mount) with palettes support. [*]Can modify action, animation and direction. [*]Class to generate : Full Character / Character Head only / Monster-NPC-Homunculus / Avatar / Signature. [*]Cache system available (and can be set off) with configurable time to cache. [*]Emblem Loader available.
    Client
    [*]Data.ini file support (to list your GRFs) [*]Support GRF (0x200 version only without DES encryption - repack before uploading) - the data folder is always read first. [*]Auto-Extract files from GRF if needed (optimize performance) [*]Updater script available to convert some lua files to PHP.





    How to use

    Really url-friendly:
    myserver.com/chargen/<controller>/<data> // with url-rewritingmyserver.com/chargen/index.php/<controller>/<data> // without url-rewriting Example for my character called "KeyWorld":myserver.com/chargen/avatar/KeyWorld // avatarmyserver.com/chargen/signature/KeyWorld // signaturemyserver.com/chargen/character/KeyWorld // full Charactermyserver.com/chargen/characterhead/KeyWorld // Character's head  

    You can change the default link by modify the array $routes in the index.php file:// $routes['url'] = controller$routes['/avatar/(.*)'] = 'Avatar';$routes['/character/(.*)'] = 'Character';$routes['/characterhead/(.*)'] = 'CharacterHead';$routes['/monster/(d+)'] = 'Monster';$routes['/signature/(.*)'] = 'Signature'; 




    Custom display

    At least, the tool is really easy to use, here an example on how to display a static character:
     
    $chargen = new CharacterRender(); $chargen->action = CharacterRender::ACTION_READYFIGHT; $chargen->direction = CharacterRender::DIRECTION_SOUTHEAST; $chargen->body_animation = 0; $chargen->doridori = 0; // Custom data: $chargen->sex    = "M"; $chargen->class = 4002; $chargen->clothes_color = 0; $chargen->hair = 5; $chargen->hair_color = 12; // ... head_top, head_mid, head_bottom, robe, weapon, shield, ... // Generate Image $img = $chargen->render(); imagepng($img);  
     




    Examples / Demos









     

    Sources
     
     


    Get the source
    (Thanks to report all bugs)


    License

    Instead of selling it, I give a try to "Open Source project with Donation".
    So if you think, you would have buy it if i was selling it, think to give a donation ?




     


    Notes [*]A directory "client" is in the project, it will be a good idea to move it to a directory not accessible by the user (for example /home/client/). [*]If you use generate images from GRFs you have to know it's a little slower, i recommend you in this case to allow the "AutoExtract" option to gain performance. [*]GRFs have to be save as 0x200 version without any encryption (even the official DES), good idea is to remove unused folders ( textures, wav, models).. [*]If you use the options Cache and AutoExtract, don't forget the script need to have a write access to the client and cache folder. [*]Thanks to Khazou for the acces to his server to fully testing the tool

  15. Upvote
    quesoph got a reaction from LukeOdin in Extended Vending System UPDATED rev14395! by Lilith   
    db/item_vending.txt Modify your client data files:
     
    idnum2itemdisplaynametable.txt
    idnum2itemresnametable.txt
    Ragexe 2013 ( haven't tested it with Ragexe 2012 )
    System/Iteminfo.lub
    or
    System/Iteminfo.lua
     
     
    Update:
    item_db2.txt should be:
     
     
    Creator: Lilith
    Modified by: dastgir and quesoph
     
    *Warning: It will not work with auto trade persistency.
     
    Hercules Rev 14041.
    Extended Vending System Hercules Rev 14041.patch
     
    Hercules Rev 14395.
    Extended Vending System Hercules Rev 14395.patch
  16. Upvote
    quesoph got a reaction from Lelouch in Extended Vending System UPDATED rev14395! by Lilith   
    db/item_vending.txt Modify your client data files:
     
    idnum2itemdisplaynametable.txt
    idnum2itemresnametable.txt
    Ragexe 2013 ( haven't tested it with Ragexe 2012 )
    System/Iteminfo.lub
    or
    System/Iteminfo.lua
     
     
    Update:
    item_db2.txt should be:
     
     
    Creator: Lilith
    Modified by: dastgir and quesoph
     
    *Warning: It will not work with auto trade persistency.
     
    Hercules Rev 14041.
    Extended Vending System Hercules Rev 14041.patch
     
    Hercules Rev 14395.
    Extended Vending System Hercules Rev 14395.patch
  17. Upvote
    quesoph got a reaction from Zalbahis in R> Hercules version of this   
    Index: conf/battle.conf===================================================================--- conf/battle.conf (revision 12062)+++ conf/battle.conf (working copy)@@ -58,4 +58,4 @@ import: conf/battle/misc.conf //Your custom config goes here.-import: conf/import/battle_conf.txt+import: conf/battle/custom.confIndex: conf/battle/custom.conf===================================================================--- conf/battle/custom.conf (revision 0)+++ conf/battle/custom.conf (working copy)@@ -0,0 +1,7 @@+//--------------------------------------------------------------+// Hercules Battle Configuration File+//--------------------------------------------------------------++// Warp and Go delay in miliseconds ( 5000 = 5 Seconds )+// Official is 0+gowarp_delay: 5000 No newline at end of fileIndex: src/map/atcommand.c===================================================================--- src/map/atcommand.c (revision 12062)+++ src/map/atcommand.c (working copy)@@ -426,6 +431,10 @@ clif->message(fd, msg_txt(248)); return false; }+ if( !pc->get_group_level(sd) && DIFF_TICK(iTimer->gettick(),sd->canlog_tick) < battle_config.gowarp_delay ) {+ clif->message(fd,"@warp cannot be issued since you were into battle recently");+ return false;+ } if (pc->setpos(sd, mapindex, x, y, CLR_TELEPORT) != 0) { clif->message(fd, msg_txt(1)); // Map not found. return false;@@ -1755,6 +1780,11 @@ memset(map_name, '0', sizeof(map_name)); memset(atcmd_output, '0', sizeof(atcmd_output)); + if( !pc->get_group_level(sd) && DIFF_TICK(iTimer->gettick(),sd->canlog_tick) < battle_config.gowarp_delay ) {+ clif->message(fd,"@go cannot be issued since you were into battle recently");+ return -1;+ }+ // get the number town = atoi(message); Index: src/map/battle.c===================================================================--- src/map/battle.c (revision 12062)+++ src/map/battle.c (working copy)@@ -6486,6 +6527,7 @@ { "gm_ignore_warpable_area", &battle_config.gm_ignore_warpable_area, 0, 2, 100, }, { "packet_obfuscation", &battle_config.packet_obfuscation, 1, 0, 3, }, { "client_accept_chatdori", &battle_config.client_accept_chatdori, 0, 0, INT_MAX, },+ { "gowarp_delay", &battle_config.gowarp_delay, 0, 0, INT_MAX, }, }; #ifndef STATS_OPT_OUT /**Index: src/map/battle.h===================================================================--- src/map/battle.h (revision 12062)+++ src/map/battle.h (working copy)@@ -453,7 +453,7 @@ int gm_ignore_warpable_area; int client_accept_chatdori; // [Ai4rei/Mirei]- + int gowarp_delay; } battle_config; Index: src/map/pc.c===================================================================--- src/map/pc.c (revision 12062)+++ src/map/pc.c (working copy)@@ -6630,6 +6648,8 @@ elemental_set_target(sd,src); sd->canlog_tick = iTimer->gettick();+ if( src->type == BL_PC )+ ((TBL_PC*)src)->canlog_tick = iTimer->gettick(); } /*==========================================  
  18. Upvote
    quesoph got a reaction from jaBote in R> Hercules version of this   
    Index: conf/battle.conf===================================================================--- conf/battle.conf (revision 12062)+++ conf/battle.conf (working copy)@@ -58,4 +58,4 @@ import: conf/battle/misc.conf //Your custom config goes here.-import: conf/import/battle_conf.txt+import: conf/battle/custom.confIndex: conf/battle/custom.conf===================================================================--- conf/battle/custom.conf (revision 0)+++ conf/battle/custom.conf (working copy)@@ -0,0 +1,7 @@+//--------------------------------------------------------------+// Hercules Battle Configuration File+//--------------------------------------------------------------++// Warp and Go delay in miliseconds ( 5000 = 5 Seconds )+// Official is 0+gowarp_delay: 5000 No newline at end of fileIndex: src/map/atcommand.c===================================================================--- src/map/atcommand.c (revision 12062)+++ src/map/atcommand.c (working copy)@@ -426,6 +431,10 @@ clif->message(fd, msg_txt(248)); return false; }+ if( !pc->get_group_level(sd) && DIFF_TICK(iTimer->gettick(),sd->canlog_tick) < battle_config.gowarp_delay ) {+ clif->message(fd,"@warp cannot be issued since you were into battle recently");+ return false;+ } if (pc->setpos(sd, mapindex, x, y, CLR_TELEPORT) != 0) { clif->message(fd, msg_txt(1)); // Map not found. return false;@@ -1755,6 +1780,11 @@ memset(map_name, '0', sizeof(map_name)); memset(atcmd_output, '0', sizeof(atcmd_output)); + if( !pc->get_group_level(sd) && DIFF_TICK(iTimer->gettick(),sd->canlog_tick) < battle_config.gowarp_delay ) {+ clif->message(fd,"@go cannot be issued since you were into battle recently");+ return -1;+ }+ // get the number town = atoi(message); Index: src/map/battle.c===================================================================--- src/map/battle.c (revision 12062)+++ src/map/battle.c (working copy)@@ -6486,6 +6527,7 @@ { "gm_ignore_warpable_area", &battle_config.gm_ignore_warpable_area, 0, 2, 100, }, { "packet_obfuscation", &battle_config.packet_obfuscation, 1, 0, 3, }, { "client_accept_chatdori", &battle_config.client_accept_chatdori, 0, 0, INT_MAX, },+ { "gowarp_delay", &battle_config.gowarp_delay, 0, 0, INT_MAX, }, }; #ifndef STATS_OPT_OUT /**Index: src/map/battle.h===================================================================--- src/map/battle.h (revision 12062)+++ src/map/battle.h (working copy)@@ -453,7 +453,7 @@ int gm_ignore_warpable_area; int client_accept_chatdori; // [Ai4rei/Mirei]- + int gowarp_delay; } battle_config; Index: src/map/pc.c===================================================================--- src/map/pc.c (revision 12062)+++ src/map/pc.c (working copy)@@ -6630,6 +6648,8 @@ elemental_set_target(sd,src); sd->canlog_tick = iTimer->gettick();+ if( src->type == BL_PC )+ ((TBL_PC*)src)->canlog_tick = iTimer->gettick(); } /*==========================================  
  19. Upvote
    quesoph got a reaction from jaBote in Locator NPC   
    prontera,149,172,3  script  testetsttest  100,{   mes "Tell me a player name to track. Must be an exact player name, cases included.";   mes "I'll take "+ .cost +" Zeny even if the search fails.";if ( select ( "Go:Stop" ) == 2 ) close;   if ( Zeny < .cost ) {        mes "Not Enough Zeny.";   close;   }   input .@name$;   next;  if (getmapxy(.@map$,.@x,.@y,0,.@name$) == -1) {   mes "Sorry, I can't seem to find him!";   close;   }   mes "I found "+ .@name$ +" in "+ .@map$ +", "+ .@x +", "+ .@y +".";   mes "Hope you can find him too!";  set Zeny, Zeny - .cost;   close;   OnInit:   set .cost, 50000;   end;}
  20. Upvote
    quesoph got a reaction from mofo in Locator NPC   
    prontera,149,172,3  script  testetsttest  100,{   mes "Tell me a player name to track. Must be an exact player name, cases included.";   mes "I'll take "+ .cost +" Zeny even if the search fails."; if ( select ( "Go:Stop" ) == 2 ) close;   input .@name$;   next;  if (getmapxy(.@map$,.@x,.@y,0,.@name$) == -1) {   mes "Sorry, I can't seem to find him!";   close;   }   mes "I found "+ .@name$ +" in "+ .@map$ +", "+ .@x +", "+ .@y +".";   mes "Hope you can find him too!";  set Zeny, Zeny - .cost;   close;   OnInit:   set .cost, 50000;   end;}
  21. Upvote
    quesoph got a reaction from falce in [REQUEST] Npc zeny convert to coin   
    prontera,164,186,3  script  Coin Trader  860,{    // ----------------------  // - Core Code  // ----------------------    cutin "kafra_08",2;  mes "[" + .colors$[1] + .npc_name$ + .colors$[0] + "]";  mes "What do you want to do today?";  set .@trade_type, select("Coins -> Zeny:Zeny -> Coins");    mes "Very well. Here is the list on how much each coin is worth:";  for (set .@a, 0; .@a < getarraysize(.coin_id); set .@a, .@a + 1) {    mes .colors$[3 + .@a] + getitemname(.coin_id[.@a]) + .colors$[0] + ": " + .coin_to_zeny_format$[.@a] + "z";    set .@coin_menu$, .@coin_menu$ + (.@coin_menu$ == "" ? "" : ":") + .colors$[3 + .@a] + getitemname(.coin_id[.@a]) + .colors$[0];  }  mes "Tell me, what coin would you like to exchange?";  next;  set .@coin_choice, select(.@coin_menu$) - 1;    next;    mes "[" + .colors$[1] + .npc_name$ + .colors$[0] + "]";    switch(.@trade_type) {    case 1: // Coins -> Zeny      mes "How many coins would you like to give up?";      input .@amount;      if (.@amount <= 0) { // Invalid Number?        mes .colors$[2] + "Please Input a Number Greater Than 0";        cutin "",255;        close;      } else if ( Zeny == 2000000000 ) {        mes .colors$[2] + "Cant go over 2 Billion...";        cutin "",255;        close;      } else if (countitem(.coin_id[.@coin_choice]) < .@amount) {        mes .colors$[2] + "I'm sorry, you do not have " + .@amount + " " + getitemname(.coin_id[.@coin_choice]) + (.@amount == 1 ? "" : "s");        cutin "",255;        close;      } else { // Ok! Checks Passed, Let's Trade!        set Zeny,Zeny + (.coin_to_zeny[.@coin_choice] * .@amount);        delitem .coin_id[.@coin_choice],.@amount;        cutin "",255;        break;      }          case 2: // Zeny -> Coins      mes "How many coins would you like?";      input .@amount;      if (.@amount <= 0) { // Invalid Number?        mes .colors$[2] + "Please Input a Number Greater Than 0";        cutin "",255;        close;      } else if (Zeny < .coin_to_zeny[.@coin_choice] * .@amount) {        mes .colors$[2] + "I'm sorry, you do not have enough zeny...";        cutin "",255;        close;      } else { // Checks OK! Let's trade!        set Zeny, Zeny - (.coin_to_zeny[.@coin_choice] * .@amount);        getitem .coin_id[.@coin_choice], .@amount;                cutin "",255;      }    }    mes "[" + .colors$[1] + .npc_name$ + .colors$[0] + "]";    mes "Pleasure doing business with you.";    close2;    cutin "", 255;    close;      // ----------------------      // - Soft Code      // ----------------------        OnInit:      // Store NPC Name      set .npc_name$, "Coin Master";            // Store Colors      // default text, npc name, error, coin_type1, coin_type2, coin_type3, coin_type4, etc...      // Note: If you plan on adding additional coins, simply add a new color here      setarray .colors$[0],"^000000", "^336699", "^550000";//, "^996633", "^666666", "^FFFF66", "^99CCCC";            // Set Coin Item ID's      // In Order coin_id1, coin_id2, coin_id3, coin_id4, etc...      setarray .coin_id[0],20104, 20105, 20106;//, 674;            // Coin -> Zeny Value      setarray .coin_to_zeny[0],10000000,50000000,100000000;//,200000000;            // Currency Formatted String of Zeny      setarray .coin_to_zeny_format$[0],"10,000,000","50,000,000","100,000,000";//,"200,000,000";}
  22. Upvote
    quesoph got a reaction from ToiletMaster in Adding Message before changing job   
  23. Upvote
    quesoph got a reaction from jaBote in Disable Cashshop in pvp & woe   
    nocashshop.patch
     
    or for pvp and gvg
     
     
     
    PS.
    I am not really good with src.
  24. Upvote
    quesoph got a reaction from kyeme in Disable Cashshop in pvp & woe   
    nocashshop.patch
     
    or for pvp and gvg
     
     
     
    PS.
    I am not really good with src.
  25. Upvote
    quesoph reacted to Ind in [ Error ] Compiling with Cygwin.   
    ran it on cygwin a couple times, fixed in https://github.com/HerculesWS/Hercules/commit/4f69a9ea0f80e78da61482b2d1143a6e58859fd1
    Thank you very much
×
×
  • Create New...

Important Information

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