Jump to content

LeonZ

Members
  • Posts

    20
  • Joined

  • Last visited

  • Days Won

    3

LeonZ last won the day on March 30 2023

LeonZ had the most liked content!

About LeonZ

  • Birthday 09/11/1994

Profile Information

  • Gender
    Male
  • Location
    Brasil

Recent Profile Visitors

2030 profile views

LeonZ's Achievements

Drops

Drops (2/15)

  • Reacting Well
  • Dedicated
  • First Post
  • Collaborator
  • Conversation Starter

Recent Badges

13

Reputation

  1. I managed to solve it. I say at least it solved it for me, Every time I press cancel it appears that the skill failed, It depends a lot on your emulator too. Src/Map/Skill.cpp clif_item_identified(sd,idx,flag); } /** /* Extended Vending system [Lilith] **/ int skill_vending(struct map_session_data *sd, t_itemid nameid) { std::shared_ptr<item_data> item; char output[1024]; nullpo_ret(sd); if (!pc_can_give_items(sd) || (item = item_db.find(nameid)) == NULL) { sd->state.prevend = 0; sd->vend_loot = 0; sd->state.workinprogress = WIP_DISABLE_NONE; clif_skill_fail(sd, MC_VENDING, USESKILL_FAIL_LEVEL, 0); } else { sd->vend_loot = nameid; sd->state.prevend = 1; clif_openvendingreq(sd, 2 + sd->vend_lvl); sprintf(output, msg_txt(sd, 1594), item->ename.c_str()); clif_messagecolor(&sd->bl, color_table[COLOR_CYAN], output, false, SELF); } return 0; } ExtendedVending_Rev9.2.diff
  2. Regarding canceling and being left with unknown item, I couldn't resolve it. However, in relation to Warning, just create a file named item_db_ex.yml in the db/import folder. With the following: After creating the file, go to the db folder and open Item_db and add the following line.
  3. Do you want like mine? If yes, use Emistry's second suggestion. https://github.com/rathena/rathena/pull/6508 Assim?
  4. Hello friends of rAthena, I came to share the CD of Brazil Ragnarok Online that was distributed at the time. (I remember coming to Sucrilhos) In case anyone wants to study or try to make an Old Times Root. Episode of Niflheim (EP-6), Released in Brazil in 2004. Promotional video of the time that was released. Credit: LevelUpGames/Gravity Download
  5. Agora que o Mob_Drop se juntou com a Mob_DB não estou conseguindo adicionar alguém poderia me dar uma luz? Sei que e necessario por RandomOptionGroup porém não sei o que adicionar a frente Now that Mob_Drop joined with Mob_DB I'm not able to add someone could you help me? I know it's needed by RandomOptionGroup but I don't know what to add in front
  6. Acho que isso pode te ajudar. https://github.com/rathena/rathena/blob/master/npc/re/merchants/cash_trader-idRO.txt
  7. https://ragnatool.blogspot.com/2021/06/datas-antigas-para-old-times.html
  8. I don't know what to put in front of Knife to have random options.
  9. This error has been occurring, But I couldn't fix someone could help me? //===== rAthena Script ======================================= //= WoE Rewards by Mastagoon //===== Description: ========================================= //= This script rewards players for each minute spent on WoE castle. //===== Featrures: =========================================== //= This script rewards players for each minute spent on WoE castle. //===== Current Version: ===================================== //= 1.0 //===== Featuers: ============================================ //= Can reward players for every minute they spend inside a WoE castle //= Can reward players for every kill in WoE castle, and will also display the name of the killed/killer. //= Excludes AFK players and players who are not in a guild. //= Announces kills with different colors depending on the killer's castle //= Can set a modifier for certain classes to gain more points than others //============================================================ function script getcharid2 { .@size = query_sql("select char_id, party_id, guild_id, account_id, clan_id from `char` where name = '"+getarg(1)+"'",.@charid,.@pid,.@gid,.@aid,.@cid); if(.@size < 0) return 0; if(getarg(0)==0) return .@charid; else if(getarg(0)==1) return .@pid; else if(getarg(0)==2) return .@gid; else if(getarg(0)==3) return .@aid; else if(getarg(0)==4) return .@cid; return 0; } - script woerewards -1,{ function AddPlayer { //player name , npc name for (.@i = 0 ; .@i < getvariableofnpc(.player_amount,getarg(1)) ; .@i += 3) if (getvariableofnpc(.players$[.@i],getarg(1)) == getarg(0)) return; setarray getvariableofnpc(.players$[getvariableofnpc(.player_amount,getarg(1))],getarg(1)) , getarg(0) , strcharinfo(3) , "0"; set getvariableofnpc(.player_amount,getarg(1)) , getvariableofnpc(.player_amount,getarg(1)) + 3; return; } OnInit: setarray .maps$ ,"schg_cas03", "prtg_cas01"; //maps where the system is active .points_per_minute = 1; //number of points earned for each minute you spend in the castle for (.@i = 0 ; .@i < getarraysize(.maps$) ; .@i++) if (!getmapflag(.maps$[.@i],mf_loadevent)) setmapflag .maps$[.@i],mf_loadevent; .s_idle_time = 180; // time before player is considered idle (in seconds) .rewardId = 909; // ID of the reward item .announce = 0; // Announce kills (0 = no announcement, 1 = map announcement, 2 = global announcement) .color_defenders$ = "0xffff00"; // Announcement color when a defending player kills an attacking player .color_attackers$ = "0x99ccff"; // Announcement color when an attacking player kills a member of the castle's owner .kill_reward = 1; // Amount of points earned for every kill, set to 0 to disable it setarray .class_modifier[0],4063,3,4076,2; // Modifier for certain classes [Id, Modifier, Id, Modifier....] if(agitcheck() || agitcheck2()) initnpctimer; end; OnAgitStart: .@sql$ = "DELETE from `char_reg_num` WHERE `key` = 'woepoints' OR `key` = 'woedeaths' OR `key` = 'woekills' OR `key` = 'woedamage' OR `key` = 'woeempbreak'"; query_sql(.@sql$); addrid(0); woepoints = 0; detachrid(); initnpctimer; end; OnPCLoadMapEvent: if(!agitcheck() || !getcharid(2)) end; for (.@i = 0 ; .@i < getarraysize(.maps$) ; .@i++) { if (.maps$[.@i] == strcharinfo(3)) { if(!woepoints) { dispbottom "You've entered a WoE castle map, you will gain rewards for each minute you spend in this castle."; } AddPlayer(strcharinfo(0),strnpcinfo(0)); } } end; OnTimer10000: //will check every ten seconds if player is still on the map freeloop (1); for (.@i = 0 ; .@i < .player_amount ; .@i += 3) { if (!attachrid(getcharid2(3,.players$[.@i]))) { deletearray .players$[.@i],3 ; .player_amount -= 3; } else if(strcharinfo(3) != .players$[.@i+1]) { deletearray .players$[.@i],3 ; .player_amount -= 3; } } for (.@i = 0 ; .@i < .player_amount ; .@i += 3) { if(checkidle() < .s_idle_time) { // no points for idle players setarray .players$[.@i+2] , ""+(atoi(.players$[.@i+2]) + 1)+""; if (atoi(.players$[.@i+2]) >= 6) { if(attachrid(getcharid2(3,.players$[.@i]))) { woepoints += .points_per_minute; dispbottom "You've spent one minute in WoE and gained a WoE point." dispbottom "Total points earned: +woepoints; setarray .players$[.@i+2] , "0"; } } } } initnpctimer; freeloop(0); end; OnPCKillEvent: if(!agitcheck() || !getcharid(2) || !.kill_reward) end; if(inarray(.maps$,strcharinfo(3)) == -1) end; dispbottom "You've recieved "+.kill_reward+" Points for killing "+rid2name(killedrid); woepoints += .kill_reward; .@color$ = getcharid(2) == getcastledata(strcharinfo(3),CD_GUILD_ID) ? .color_defenders$ : .color_attackers$; if(.announce == 1) announce "[WoE]: "+strcharinfo(0)+" Has Killed "+rid2name(killedrid),bc_all,.@color$; if(.announce == 2) mapannounce strcharinfo(3),"[WoE]: "+strcharinfo(0)+" Has Killed "+rid2name(killedrid),bc_map,.@color$; end; OnPCDieEvent: if(!agitcheck() || !getcharid(2)) end; if(inarray(.maps$,strcharinfo(3)) == -1) end; dispbottom "You've been killed by "+rid2name(killerrid); end; OnPCLogoutEvent: if(!agitcheck() && !agitcheck2()) woepoints = 0; end; OnAgitEnd: stopnpctimer; //participation rewards. .@sql$ = "SELECT `char_id`, `value` FROM `char_reg_num` WHERE `key` = 'woepoints'"; query_sql(.@sql$,.@ids, .@points); for(.@i = 0; .@i < getarraysize(.@ids); .@i++) { .@modifier = inarray(.class_modifier, Class) > -1 ? .class_modifier[inarray(.class_modifier, Class)+1] : 1; .@charid = .@ids[.@i]; .@sender$ = "[WoE Rewards]"; .@title$ = "Rewards"; .@body$ = "You've recieved a reward for participating in war of emperium.\nTotal Participation Time:"; setarray .@itemarray[0],.coinid; setarray .@itemamtarray[0], .@points[.@i] * .@modifier; mail .@charid,.@sender$,.@title$,.@body$,.@zeny,.@itemarray,.@itemamtarray; } end; }
  10. I wanted a script to spawn a monster after x amount of the map is killed. For example for every 10000 monsters killed in gef_fild10 a global appears on the map and spawns a Lord of Orcs randomly across the map.
  11. There are several causes for me, for example, when I migrated from 2019 to 2020 my haxed it closed but it didn't give an error, I replaced the textures of my date by textures from KRO and it solved. There may also be Luafiles that may not be haxed-compatible. It could also be your emulator that is not compiled with Haxed.
  12. Not RE it is mostly used on test servers like Sakray, while non-RE is used on both Renewal and Old Times servers. If it keeps crashing, it's probably something in your ragnarok folder from some dll to the data folder, Try to get the dlls from KRO and add them to see if it solves. 2018-06-21aRagexe_patched.exe
  13. It could probably be your date that is not Haxed-compatible. Try using this one and see if it stops crashing https://github.com/llchrisll/ROenglishRE
×
×
  • Create New...