Jump to content

Promise

Members
  • Posts

    386
  • Joined

  • Last visited

  • Days Won

    5

Community Answers

  1. Promise's post in Please Help with Sql Base was marked as the answer   
    Try to add this on your SQL:
    ALTER TABLE vendings ADD vend_coin VARCHAR(5) NOT NULL;  
  2. Promise's post in Setting Variable to Option select was marked as the answer   
    That's the best way to do this, i'll explain a little better, but all credits to @Jey <3
    switch(questlevel) { case 1: // in case that the variable questlevel = 1; mes "Your Quest"; break; case 2: mes "Your Quest"; break; case 3: mes "Your Quest"; break; default: mes "Woops! there's something wrong in the source script!"; // This line will excecute when the variable questlevel haves a different value. close; }  
    If you want to add another one, just add another "case <value>:"
  3. Promise's post in How to make a clean basic english GRF? was marked as the answer   
    Ill leave the links here.
    https://github.com/ROClientSide/Translation
    https://github.com/zackdreaver/ROenglishRE
     
    About the setup problem, have you tried to open your exe as admin?
    The setup problem could be fixed by this way or downloading a good setup.
    You can try to download these tools
     
  4. Promise's post in Help: Sell Everything for 1z? was marked as the answer   
    As Sikiro said, you must edit it on the npc.
    If you want to edit the item default price, you must go to the item_db and edit the sell column.
    For example:
    // Structure of Database: // ID,AegisName,Name,Type,Buy,Sell,Weight,ATK[:MATK],DEF,Range,Slots,Job,Class,Gender,Loc,wLV,eLV[:maxLevel],Refineable,View,{ Script },{ OnEquip_Script },{ OnUnequip_Script } 501,Red_Potion,Red Potion,0,50,,70,,,,,0xFFFFFFFF,63,2,,,,,,{ itemheal rand(45,65),0; },{},{} to 501,Red_Potion,Red Potion,0,1,,70,,,,,0xFFFFFFFF,63,2,,,,,,{ itemheal rand(45,65),0; },{},{} This means that every npc that sells apples on the server, will sell it for 50 -> 1z
  5. Promise's post in help - bg_pvp was marked as the answer   
    really?...
     
    OnInit: .minplayer2start = 2; // minimum players to start (ex. if 3vs3, set to 3) .eventlasting = 20*60; // event duration before auto-reset (20 minutes * seconds) setarray .rewarditem[0], // rewards for the winning team: <item>,<amount>,... 7828, 4; end; OnStart:  
    .minplayer2start = 2; // minimum player  
    .minplayer2start = 5;
     
     
  6. Promise's post in Refused by server was marked as the answer   
    Can you upload 3 files:
    data/clientinfo.xml src/common/mmo.h db/packet_db.txt  
     
    Sometimes this error ocurrs, because you need to change the packet_ver: on packet_db
    default -> 51
  7. Promise's post in Check class instead of account was marked as the answer   
    You have to change the script check from
    #variable to
    variable #variables are account variables.
    variables withouth the # are character variables
  8. Promise's post in How to modify skill calculate was marked as the answer   
    battle.c
    static int64 battle_calc_base_damage(struct status_data *status, struct weapon_atk *wa, struct status_change *sc, unsigned short t_size, struct map_session_data *sd, int flag) { unsigned int atkmin = 0, atkmax = 0; short type = 0; int64 damage = 0; if (!sd) { //Mobs/Pets if(flag&4) { atkmin = status->matk_min; atkmax = status->matk_max; } else { atkmin = wa->atk; atkmax = wa->atk2; } if (atkmin > atkmax) atkmin = atkmax; } else { //PCs atkmax = wa->atk; type = (wa == &status->lhw)?EQI_HAND_L:EQI_HAND_R; if (!(flag&1) || (flag&2)) { //Normal attacks atkmin = status->dex; if (sd->equip_index[type] >= 0 && sd->inventory_data[sd->equip_index[type]]) atkmin = atkmin*(80 + sd->inventory_data[sd->equip_index[type]]->wlv*20)/100; if (atkmin > atkmax) atkmin = atkmax; if(flag&2 && !(flag&16)) { //Bows atkmin = atkmin*atkmax/100; if (atkmin > atkmax) atkmax = atkmin; } } } if (sc && sc->data[SC_MAXIMIZEPOWER]) atkmin = atkmax; //Weapon Damage calculation if (!(flag&1)) damage = (atkmax>atkmin? rnd()%(atkmax-atkmin):0)+atkmin; else damage = atkmax; if (sd) { //rodatazone says the range is 0~arrow_atk-1 for non crit if (flag&2 && sd->bonus.arrow_atk) damage += ( (flag&1) ? sd->bonus.arrow_atk : rnd()%sd->bonus.arrow_atk ); // Size fix only for players if (!(sd->special_state.no_sizefix || (flag&8))) damage = damage * (type == EQI_HAND_L ? sd->left_weapon.atkmods[t_size] : sd->right_weapon.atkmods[t_size]) / 100; } //Finally, add baseatk if(flag&4) damage += status->matk_min; else damage += status->batk; //rodatazone says that Overrefine bonuses are part of baseatk //Here we also apply the weapon_damage_rate bonus so it is correctly applied on left/right hands. if(sd) { if (type == EQI_HAND_L) { if(sd->left_weapon.overrefine) damage += rnd()%sd->left_weapon.overrefine+1; if (sd->weapon_damage_rate[sd->weapontype2]) damage += damage * sd->weapon_damage_rate[sd->weapontype2] / 100; } else { //Right hand if(sd->right_weapon.overrefine) damage += rnd()%sd->right_weapon.overrefine+1; if (sd->weapon_damage_rate[sd->weapontype1]) damage += damage * sd->weapon_damage_rate[sd->weapontype1] / 100; } } #ifdef RENEWAL if (flag&1) damage = (damage * 14) / 10; #endif return damage; } Here you can edit the damage calc as you want, but we need to know wich part you want to edit.
  9. Promise's post in Programs Required to Run from Desktop was marked as the answer   
    Compile: Visual Basics C++ 2010-2016
    SQL: mySQL workbench
  10. Promise's post in check gender was marked as the answer   
    if(sex) { mes "you're a male."; } else { mes "you're a female"; } sex == 1 // Male sex == 0 // female
  11. Promise's post in Error on Map Server. Huhu was marked as the answer   
    .@i = getarg(select(.@menu$) - 1, 0); to
    .@i = select(.@menu$)-1;
  12. Promise's post in Emperium HP was marked as the answer   
    Forget it, try
     
    Mob.c
    #if PACKETVER >= 20120404 if( battle_config.monster_hp_bars_info){ int i; for(i = 0; i < DAMAGELOG_SIZE; i++){ // must show hp bar to all char who already hit the mob. struct map_session_data *sd = map_charid2sd(md->dmglog[i].id); if( sd && check_distance_bl(&md->bl, &sd->bl, AREA_SIZE) ) // check if in range clif_monster_hp_bar(md, sd->fd); } } #endif to
    #if PACKETVER >= 20120404 if( battle_config.monster_hp_bars_info){ if( !(md->class_ == MOBID_EMPERIUM) ){ int i; for(i = 0; i < DAMAGELOG_SIZE; i++){ // must show hp bar to all char who already hit the mob. struct map_session_data *sd = map_charid2sd(md->dmglog[i].id); if( sd && check_distance_bl(&md->bl, &sd->bl, AREA_SIZE) ) // check if in range clif_monster_hp_bar(md, sd->fd); } } } #endif Try this and compile.
    Remember to do a backup before change anything.
  13. Promise's post in Equip not showing till u relog. (Solved in another revision) was marked as the answer   
    Solved.
     
     
    Changed from:
    packet_ver: default
     
    to:
    packet_ver: 25.
  14. Promise's post in lua files problem was marked as the answer   
    Solved guys, i enabled "Read Luas Before Lub" again, and put them on lua files/
     
    Thank u.
  15. Promise's post in Disconnect from the server. was marked as the answer   
    [Warning]: s aid=XXXXXXXX has an incorect version=30 in clientinfo. Server compiled for 50
    [Info]: sd->version = 30
     
    Compile after change the date on mmo.h
    and fix packet_db.txt
  16. Promise's post in Euphy's Quest Shop Problem was marked as the answer   
    I never used this shop but with a fast view:
    // Dummy shop data -- copy as needed. //============================================================ - shop qshop1 -1,909:-1 - shop qshop2 -1,909:-1 - shop qshop3 -1,909:-1 - shop qshop4 -1,909:-1 - shop qshop5 -1,909:-1 u should try to add another shop (qshop6)
  17. Promise's post in sql query eathena -> rathena was marked as the answer   
    Same:
    query_sql "SELECT refineable FROM item_db WHERE id = '"+.@ID+"'",.@ref;
    to
    query_sql "SELECT refineable FROM item_db WHERE id = "+.@ID+";",.@ref;
  18. Promise's post in Bulk Buyer Shop License doubts was marked as the answer   
    Have you edited:
     
    - data/buyingstoreitemlist.txt
    - db/item_buyingstore.txt
  19. Promise's post in HELP - Emergency Call mechanic was marked as the answer   
    Try to do this(not tested):
    go to src/map/skill.c:
    Find: 
    case GD_EMERGENCYCALL: case GD_ITEMEMERGENCYCALL: if ( !(battle_config.emergency_call&((agit_flag || agit2_flag)?2:1)) || !(battle_config.emergency_call&(map[m].flag.gvg || map[m].flag.gvg_castle?8:4)) || (battle_config.emergency_call&16 && map[m].flag.nowarpto && !map[m].flag.gvg_castle) ) { clif_skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0); return true; replace to:
    case GD_EMERGENCYCALL: // Added map restriction [PromisE] This if(agit_flag) {                          clif_skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0); return true; } case GD_ITEMEMERGENCYCALL: if ( !(battle_config.emergency_call&((agit_flag || agit2_flag)?2:1)) || !(battle_config.emergency_call&(map[m].flag.gvg || map[m].flag.gvg_castle?8:4)) || (battle_config.emergency_call&16 && map[m].flag.nowarpto && !map[m].flag.gvg_castle) ) { clif_skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0); return true; Then recompile your server and try it.
    The skill fail if you are woe 1.0
  20. Promise's post in static camera on internal maps. was marked as the answer   
    data/indoorrswtable.txt
  21. Promise's post in @security login message was marked as the answer   
    pc.c
    // Security System if( pc_readaccountreg(sd,"#SECURITYCODE") > 0 ) { clif_displaymessage(sd->fd, "Item Security System ENABLE : Use @security for more options."); sd->state.secure_items = 1; } else clif_displaymessage(sd->fd, "Item Security System DISABLE : Use @security for more options."); to
    /* // Security System if( pc_readaccountreg(sd,"#SECURITYCODE") > 0 ) { clif_displaymessage(sd->fd, "Item Security System ENABLE : Use @security for more options."); sd->state.secure_items = 1; } else clif_displaymessage(sd->fd, "Item Security System DISABLE : Use @security for more options."); */ Then recompile and done.
  22. Promise's post in require item was marked as the answer   
    If you want to have to use the item and delete it, you have to do:
    mes "[Costume-IT]"; if( !countitem(<item_id>) < 20) { mes "I'm sorry but you need at least one "+getitemname(<item_id>)+" before you may use my services!"; close; }         delitem <item_id>, 20; mes "Hello and welcome to the Costume-IT service."; mes "Here you can convert your headgears into a Costume Headgear.";
  23. Promise's post in Browedit objects in game. was marked as the answer   
    Solved i think.
    Was quadtree problem.
×
×
  • Create New...