Jump to content

Dazzu

Members
  • Content Count

    7
  • Avg. Content Per Day

    0
  • Joined

  • Last visited

Community Reputation

1 Neutral

1 Follower

About Dazzu

  • Rank
    New Member

Profile Information

  • Gender
    Male
  • Location
    Canada
  • Server
    XIVRO, DarkRO

Contact Methods

  • Discord
    Dazzu#7449

Recent Profile Visitors

280 profile views
  1. View File Dazzu's Guild Package NPC with optional Gepard support Please do not remove my signature from the file, claim my work as your own, nor sell this script. Please provide credit where it's due. I may or may not update this script to address below limitation in the future. If you like this script, please drop a like! Description: The code flow is similar to benching's guild package npc script and uses his SQL CREATE TABLE statements. However, this script is written from the ground up and supports optional checks based on either IP address or Gepard's unique id. By default, ONLY IP checks are enabled. Any code blocks that uses get_unique_ip has been commented out. However, there are instructions on how to enable unique id related functions provided in the changelogs section of the script and this thread. Allows either IP or unique id based checks. IP check is used by default. Please refer to the initialization section on how to toggle between checking modes. This script allows a guild and all her guild members to receive a predetermined package through redeeming a code. Only requires the guild master to interact with the NPC. Package code is generated by an authorized game master (authorization is based on the minimum gm level set in the script). Package code can only be generated by a game master. The code is communicated by the game master to the guild master which is then redeemed. Both guild master and his/her members will receive the same package contents. Supplied equipment is account-bound. Multiple codes can be generated and claimed for a guild. However, claim restrictions are enforced by either IP or unique id checks. Performs (some optional) checks. Claim is cancelled and certain messages are displayed if one of these checks fail: Weight Limit - Displays name of members whose weight limit can not accommodate the package contents. Repeat claim per unique IP (Optional) - Display names of a member's alternate character who has already made a previous claim (using account id and ip address/unique id). Multi-client claim (Optional) - Display names of a member's characters they are controlling through multi-clienting on a single system (using ip address or unique id). All members online requirements (Optional) - Self explanatory display. Optional checks can be toggled within the script. Requirement: Gepard Shield if using unique id checks. Initialization: Variables are set under the OnInit label (line 331) Set .disableMultiLogging to true to restrict players from claiming a guild package when they are logged into multiple clients in the same guild on a single machine. Set .disableRepeatClaim to true to restrict players from claiming a guild package when they have claimed a package previously. Set .allMembersOnline to true to require all guild members be online when claiming the package. If set to false, only online guild members will receive the package. .useGepard - stores and uses unique ids for checks. If set to false, IP address is used instead. (default false). IMPORTANT: If possible, do not change after claims are made, otherwise players may be able to re-claim or unable to first-time claim. Please refer to the limitations section for additional information. .codeLength - length of the guild package code (default 10). .minMembers - minimum number of guild members to redeem the code. .minGMLevel - minimum Game Master level to access the GM menu. .package[0] - array of the guild package Item IDs. .packwgt[0] - array that denotes the amount of items to be dispensed that corresponds to the item IDs in .package Limitations: Unique id check works well through VPN. However, attempts to bypass checks using a Virtual Machine has not been tested. Code generation is manually done by a game master. This was done by design, however it is an obvious limitation. Toggling between gepard and ip checks after some use may have the following effects: Players with previous claim may be able to perform a reclaim (IP to gepard toggle). Players with NO previous claim may NOT be able to perform a claim if someone else under the same IP has made a claim. (Gepard to IP toggle). To comply with rAthena submission standards, all unique id calls have been commented out and replaced with charip calls instead. However, instructions to easily enable unique id calls have been included in the script. Please refer to the changelogs section on how to perform this change. Submitter Dazzu Submitted 06/13/2020 Category Utilities Video Content Author Dazzu  
  2. skillratio has an initial value of 100 that denotes the "base" ratio of the skill. Within the context of the Arrow Shower formula, a more complete calculation would be: 100 - 25 + 5 * skillLV
  3. In status.cpp, under the status_calc_x function. eg. Increasing STR by 10% while under the Assassin Soul Link effect would require the changes be made under the status_calc_str function static unsigned short status_calc_str(struct block_list *bl, struct status_change *sc, int str) { ... if(sc->data[SC_SPIRIT] && sc->data[SC_SPIRIT]->val2==SL_ASSASIN) str += (str * 20) / 100; ... }
  4. Version 1.1.0

    64 downloads

    Please do not remove my signature from the file, claim my work as your own, nor sell this script. Please provide credit where it's due. I may or may not update this script to address below limitation in the future. If you like this script, please drop a like! Description: The code flow is similar to benching's guild package npc script and uses his SQL CREATE TABLE statements. However, this script is written from the ground up and supports optional checks based on either IP address or Gepard's unique id. By default, ONLY IP checks are enabled. Any code blocks that uses get_unique_ip has been commented out. However, there are instructions on how to enable unique id related functions provided in the changelogs section of the script and this thread. Allows either IP or unique id based checks. IP check is used by default. Please refer to the initialization section on how to toggle between checking modes. This script allows a guild and all her guild members to receive a predetermined package through redeeming a code. Only requires the guild master to interact with the NPC. Package code is generated by an authorized game master (authorization is based on the minimum gm level set in the script). Package code can only be generated by a game master. The code is communicated by the game master to the guild master which is then redeemed. Both guild master and his/her members will receive the same package contents. Supplied equipment is account-bound. Multiple codes can be generated and claimed for a guild. However, claim restrictions are enforced by either IP or unique id checks. Performs (some optional) checks. Claim is cancelled and certain messages are displayed if one of these checks fail: Weight Limit - Displays name of members whose weight limit can not accommodate the package contents. Repeat claim per unique IP (Optional) - Display names of a member's alternate character who has already made a previous claim (using account id and ip address/unique id). Multi-client claim (Optional) - Display names of a member's characters they are controlling through multi-clienting on a single system (using ip address or unique id). All members online requirements (Optional) - Self explanatory display. Optional checks can be toggled within the script. Requirement: Gepard Shield if using unique id checks. Initialization: Variables are set under the OnInit label (line 331) Set .disableMultiLogging to true to restrict players from claiming a guild package when they are logged into multiple clients in the same guild on a single machine. Set .disableRepeatClaim to true to restrict players from claiming a guild package when they have claimed a package previously. Set .allMembersOnline to true to require all guild members be online when claiming the package. If set to false, only online guild members will receive the package. .useGepard - stores and uses unique ids for checks. If set to false, IP address is used instead. (default false). IMPORTANT: If possible, do not change after claims are made, otherwise players may be able to re-claim or unable to first-time claim. Please refer to the limitations section for additional information. .codeLength - length of the guild package code (default 10). .minMembers - minimum number of guild members to redeem the code. .minGMLevel - minimum Game Master level to access the GM menu. .package[0] - array of the guild package Item IDs. .packwgt[0] - array that denotes the amount of items to be dispensed that corresponds to the item IDs in .package Limitations: Unique id check works well through VPN. However, attempts to bypass checks using a Virtual Machine has not been tested. Code generation is manually done by a game master. This was done by design, however it is an obvious limitation. Toggling between gepard and ip checks after some use may have the following effects: Players with previous claim may be able to perform a reclaim (IP to gepard toggle). Players with NO previous claim may NOT be able to perform a claim if someone else under the same IP has made a claim. (Gepard to IP toggle). To comply with rAthena submission standards, all unique id calls have been commented out and replaced with charip calls instead. However, instructions to easily enable unique id calls have been included in the script. Please refer to the changelogs section on how to perform this change.

    Free

  5. OnMonsterCommand: [email protected] = atoi([email protected]_parameters$[0]); if([email protected]) //Input is not mob ID, store as string instead [email protected]$ = [email protected]_parameters$[0]; if(getgmlevel()<60 && (inarray(.restricted[0],[email protected])>-1 || inarray(.restricted$[0],[email protected]$)>-1)){ message strcharinfo(0),"Your GM level does not allow you to summon this monster."; end; } if([email protected]_numparameters==2){ [email protected] = atoi([email protected]_parameters$[1]); } atcommand "@monster "+([email protected][email protected]:[email protected]$)+" "+([email protected]>[email protected]:""); end; OnInit: bindatcmd "monster","<npc name>::OnMonsterCommand",60,100; setarray .restricted[0],1751; //Add mob id as needed setarray .restricted$[0],"RANDGRIS"; //Added mob name that corresponds to mob id in the above array.This is required for mob name inputs instead of mob id Quick and dirty solution. Tested for functionality, but not tested for bugs. It accounts for both mob name and mob id inputs, but you'll have to add both the mob id and proper mob name in the arrays in OnInit. Personally, I don't like overwriting atcommands. Here's a nicer src-based solution that you could put under ACMD_FUNC(monster) in atcommand.ccp. Note that the MOBID_EMPERIUM statement is there for reference on where you should put it. if (mob_id == MOBID_EMPERIUM) { clif_displaymessage(fd, msg_txt(sd,83)); // Monster 'Emperium' cannot be spawned. return -1; } int restricted_mob_id[] {1751}; //Add mob ID as needed i = 0; int restricted_mob_id_size = ARRAYLENGTH(restricted_mob_id); ARR_FIND(0,restricted_mob_id_size,i,restricted_mob_id[i]==mob_id); if(pc_get_group_level(sd)<=60 && i<restricted_mob_id_size){ clif_displaymessage(fd, "Your GM level does not allow you to summon this monster."); return -1; }
  6. It is there, but I didn't think I'd have a need for it until now (which I'm REALLY regretting right now). However, my current client is now connected to some encrypted grfs as well as gepard. Re-diffing the client would be a lot of work, which I don't mind doing if it's the only option I have.
  7. Can anyone share the hex address and the replacement bytes to enable proxy support on the client? I've combed rAthena and Herc, but I haven't found anything that solves this specific request unfortunately. Thanks!
  8. My experience with Daifuku so far has been phenomenal. I have already received the logo (and different size/detail variations of it, which I didn't expect) only less than a day after starting the commission. The quality of work and accuracy to the initial design has been excellent. She communicates very well with regards to providing updates as well as giving her opinions and suggestions to the design. I have always received updates whenever she starts or ends her work in addition to showing current progress. Her input has also been invaluable due to her experiences, all the while maintaining great professionalism. Overall, I highly recommend Daifuku's services. Her prices are very fair for the quality, passion, and enthusiasm she puts into her work. Personally, I would ask for her services again for future commissions.
×
×
  • Create New...

Important Information

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