Leaderboard
Popular Content
Showing content with the highest reputation on 12/03/12 in all areas
-
2 points
-
I would like to propose adding this to the svn as a quick alternative to /guildbreak, because guild names with spaces are not supported anymore on newer clients. Index: atcommand.c =================================================================== --- atcommand.c (revision 16820) +++ atcommand.c (working copy) @@ -8817,6 +8817,26 @@ #undef MC_CART_MDFY } +/*========================================== + * works like /breakguild "<guild name>" (without the name though) + * This is needed for newer clients as an + * alternative to /guildbreak because support + * for " " in newer clients is dropped. [clydelion] + *------------------------------------------*/ +ACMD_FUNC(breakguild) +{ + struct guild *g; + nullpo_retr(-1, sd); + + if (sd->status.guild_id == 0 || (g = guild_search(sd->status.guild_id)) == NULL || strcmp(g->master,sd->status.name)) { + clif_displaymessage(fd, "Only the guild leader can use this command."); + return -1; + } + + guild_break(sd,g->name); + return 0; +} + /** * Fills the reference of available commands in atcommand DBMap **/ @@ -8827,6 +8847,7 @@ * Command reference list, place the base of your commands here **/ AtCommandInfo atcommand_base[] = { + ACMD_DEF(breakguild), ACMD_DEF2("warp", mapmove), ACMD_DEF(where), ACMD_DEF(jumpto), breakguild.diff2 points
-
BrowEdit Tutorial Videos Here is a list of free tutorial videos I made about a year ago that gives BrowEdit users a good grasp on using the BrowEdit Mapping Program. The tutorial videos teaches young BrowEdit users from the ground up of how to install BrowEdit, get familar with the interface and functions and finally actually producing a fully functional map you can integrate in a ragnarok server. I plan on expanding this list to cover a broader range of topics. Browedit Tutorial #1 - Getting Started Video Information: Downloading and setting up BrowEdit. Configuring BrowEdit to be usable & providing recommendations on BrowEdit revisions. - Browedit Tutorial #2 - Basics of Designing Video Information: Understanding the user inferface of BrowEdit & editing functions. Teaches navigational controls and introduces how to properly setup a map for editing. Part 1 - Part 2 - Part 3 - Browedit Tutorial #3 - Intermediate Level Terrain Editing Video Information: Teaches how to apply textures, build walls, making slopes and environmental terrain changes, and controlling water levels. Part 1 - Part 2 - Browedit Tutorial #4 - Intermediate Level Light Editing Video Information: Introduces how to implement lights to brighten and colorize a map. Gives recommended RGB combinations and lighti strength parameter settings in giving ideal light and shadow outputs. Part 1 - Part 2 - Browedit Tutorial #5 - Adding Effects Video Information: How to add effects to a map to fit the needs of the environment. Examples can be torches, flying bats, magic circles etc.. - Browedit Tutorial #6 - Adding Sounds Video Information: How to add ambient sounds to your map. This includes noises you hear in niflheim, prontera, geffen etc.. - Browedit Tutorial #7 - Making a Sky Map Video Information: Ever wanted to make a sky map? Well this tutorial will show you how to make a floating blue sky based map with cloud formations. - Browedit Tutorial #8 - Adding Custom Textures to BrowEdit Video Information: How to add your own custom textures to BrowEdit and using them in your custom map. - Browedit Tutorial #9 - Adding Custom BGM Music to a Map Video Information: How to add your own personal background music to a map as well as making sure the BGM file is compatible with the client. - Browedit Tutorial #10 - Adding a Custom Map to a Server Video Information: How to add your own personal map to a eAthena test server so you can test your own maps. - Browedit Tutorial #11 - Adding a Duplicate Model that Utilizes Custom Textures Video Information: Ever wanted to use a model in a map that doesn't come into conflict with another model. Perhaps for the sake of the maps theme? - Browedit Tutorial #12 - Quick Tips/Tricks & Useful Hotkey Info Video Information: Creating a new map can take a while. This tutorial will cover useful tips/tricks to reduce the development time of your map as well as avoiding long processes to complete a task. - Browedit Tutorial #13 - New Lightmaps Tutorial Video Information: This tutorial is a revamp of the previous lightmaps video tutorial. This particular tutorial is a more concise and easier to learn version of how to create lightmaps with ease in the areas of shadows/sun/colors/global lighting and light fixes. - Browedit Tutorial #14 - Making Slopes Video Information: This is a quick tutorial that explains how to create sloped terrain primarily based on ramps that can lead up to raised areas. It also shows how to make slopes on the edge of a map. - Browedit Tutorial #15 - Making Map Minimaps Video Information: Want to make a minimap that matches your coordinates perfectly whether it be a minimap with color or black/white gradient? Well this tutorial will cover just that! - Browedit Tutorial #16 - GAT Editing Video Information: Explains the main kinds of gats, how to place them, slope them, and what applications they are used in. - Browedit Tutorial #17 - 3ds Max Modeling [Acquiring Models] Video Information: A quick video covering several different sites you can get models for free that are supported by 3ds Max. - Browedit Tutorial #18 - 3ds Max Modeling [importing/Apply Textures to Model] Video Information: Using 3ds Max, you will be able to import models supported by 3ds Max, apply textures to them, and UV Unwrap the model to have it ready for RO. - Browedit Tutorial #19 - 3ds Max Modeling [Polygon Limit & Splitting Models] Video Information: RO has limits to how many polygons it can draw per model. This tutorial will explain what those limits are and how to split a model into parts. - Browedit Tutorial #20 - Exporting & Importing Lightmap Shadows for Editing Video Information: How to remove or add specific shadows on a map without having to redo all of the lightmaps through means of exporting & editing the shadow png file directly. - Browedit Tutorial #21 - Cleaning Up Shadows Along Walls & Ground Video Information: Didn't like the shadow drop across the edge of a map or lifted platform/wall? - Browedit Tutorial #22 - How to Create Transparent Objects Video Information: How to provide transparency in a model by means of TGA support. - NOTE: If you wish to see a certain topic covered in a future tutorial video, please make a request by leaving a comment in this thread!1 point
-
Im not EXPERT extracting scripts but i will try to extract Port Malaya, i put this in "Proyects" because it is gonna be SLOW(I think) (: so i will post here the updates of the NPC's when i get to lvl 100+ (Rune Knight) ANY support is welcome(Equip/Zeny/1 Potato?) wait for updates ! Port Malaya is designed for players of level 100+ so im getting to that lvl to extract scripts without any problem GitHub Repostory UPDATES After 5 days finally im Rune Knight. Quests apparently are the same. I just noticed of the Instance requeriments.1 point
-
Briefing & Concept Hello!. First of all, I must give big thanks to all members that posted their feedback about my previous map. Thanks a lot for taking your time. Here we are again, with a new map in showcase. As the title says, this is a map based on Rivendel ... yes that awesome elven outpost fantasy land, that I'm sure all of us remember with our hearts... obvious, we are talking about that gold movie that is -Lord of the Rings- Rivendel is a beautiful elvish town. It is so purish, with white and clean structures with elvish decoration on walls, roofs etc. The land is represented in the movie the most times with some kind of -gold sunset- light tones that certainly gives a really warm style. This place is covered with lot of big mountains, waterfalls, nature, and rives. This request is from a new customer. I must say that one of the best I have worked for. He gave me a lot of details about the -idea- of how Rivendel is, but the most important fact is, that he had an extraordinary -patience- with his request... also he thrust me a lot to allow me do whatever I thought it would make the map look good with a lot of freedom. In result, I'm really glad that this is one of my most beautiful maps I have ever made. In fact, this was my main purpose of the map. To do something really beautiful. About this map So, what do we have new on this map? The idea of this map is, to recreate that Rivendel land. To do that, First of all the entire sctructure of the main building is placed on mountains among all the areas, but... at the backside we have some really high alltitude mountains covered by big colorfull woods that covers those mountains as they fall to a river. It was a priority to make beautiful panoramic views on the map. To do that I was in need to do almost all what I could by even adding manually leaves by leaves to enourmous trees, covering big mountain areas with woods.... Adding 6 trees variations with real life leaves on all the map, etc. Honestly I love to try new things about nature. I hope you will be pleased with what I did. Another big part of this work was with models. I must say, I increased a lot on this area. Before this request, I could only import models with pre-existing textures on a mesh. But here, All the big structure elvish houses, bridges, temples, pillars, etc. were full UV texturized and polygonal edited by me. I must say in advance, that these models were not like I picked some buildings and I added them. It was a really hard work to edit each. Some houses consists of maybe 20 models, with different alltitude and cropped all in pieces to make it compatible in RO. Last, the map has an extra feature that I must say thanks to f0xxy that helped me greatly with the script that I wanted to add as a new feature among my maps. Continue reading for more details about. Video ... watch it in HD 720p! Warning!: Map is not finished yet. Forget some random walk cells glitches and/or small fixes to do Full 1080 HD SS :: Map Sketch :: :: Full Map View :: Screens are in Full 1920x1080 HD resolution. You can allways hit the image thumbnaills to check the images on full size, and check some details that can only be appreciated in HD resolution. Rivendel Flat Panoramic Front View This is the main lower base structure of rivendel. Two big elvish houses decorated with elf style on the roofs, pillars etc. A bridge on the left, a temple on the center with waterfalls, an elf dome on the left side ... and last, some colorfull woods on a far distance that you can see nearly on the camera. Beautiful view if you ask me, that I can easily use as a wallpaper on my desktop Rivendel Flat Panoramic Aside View This correspond to the left area of the whole structure. A bridge, an elf dome, and the most important... the design of the big elf houses. They has some entrances with elf windows where I placed some benches. A very relaxing place for the users of this server Rivendel Flat Panoramic Top View This is the upper part of this rivendel land. You can see 2 houses on each side, with a lot of small decoration and elf design. A huge elvish temple on the center, with big windows. On that area we have a great panoramic view that cant be possible to see it here, because the big zoom that I needed to take the SS, but I will show you later with details about. Rivendel Sky Lower plaza View This is one of the main open areas of rivendel. A sky view... one plus of this map was the multilevel edition that I tried with some effort. I thought that I needed to improve that on my previous maps so here is the result. You will see a lot of small multilevels not only on the walkable areas, also on the bases of the structures that are on the mountains. Sky view Middle Area, core of the map and temple This is what I call the middle area. There are 2 houses with 2 floors on the sides. A mini plaza on the center, some stairs, etc. There we have the core area, a wide open area with a custom elvish texture I obtained somewhere and edited on the midle. Sky backview of the Top Area Here we have the top area. This is a backview of the area that shows the roof of the temple, and the core area of the map. Here we are at a really high alltitude. First detailed SS. Bridge Entrance When you enter rivendel, you have to walk on a bridge. This bridge -and other buildings- has some innotvation among RO maps actually, that you can walk on areas with a roof up to you. How this was possible? by making a bridge with open windows as that one... so, by a camera with the correct values on the clients, it is quite easily to walk on this bridge. High alltitude woods comes from the lower part, mountains, and finally some leaves that I placed manually to make the feeling like they are hugging the bridge from the outside areas. I think this is the area I like most. Lower platform, detailed elf monument on center area Here you can have a detailed look to the center area. We have a statue of an elf druid hero that looks really cool. Some elf style gates on the sides that I did by taking some models part here and there. The houses has some statues that I placed manually on each window... we have the elf art on that small plaza too, but in a lower scale form. To make a variation. Elf buildings on the sides, open hangout areas Each of those houses are really big. They have 2 open areas on the sides, with an elvish style. Walkable Elf dome area. You might remember this elvish dome, it appears on my initial image of this topic. That elf building is made from a lot of models... it was very tricky, since I had to use the same model and rotate it on exact rotations to make it look as it. There are some trees that covers the upper part to make it look beautiful. Perfect place for couples! Big View from Balcon 1 If you remember my previous -top and flat views Images I posted- there are 2 big houses with 2 floors on each. Well, I thought that it would be awesome to add something as a balcon, with a high alltitude on each. So, when the users walk on there they can sit around and have a panoramic view of all the town. This is the panoramic view of the balcon of the first house (the one on the right) Big View from Balcon 2 Same case as the previous one, but this one correspond to the one on the left. This panoramic view is for a lake that is on the left side of rivendel. Middle Passage This area connects the 2 houses, the lower base area, and the upper core area. It has some like a mini-plaza style with an elvish statue again, on the center. Some stairs on the back Core Area Well, this area is what I call the -core- area. It is a big open area with an elvish design on the center. It has some terrain edits on the walls on the sides, with some small models to increase the decoration. A welcome gate where you access with 2 female elf warrios that holds an eagle gives a welcome to those that may enter this sacred place! Top Area, Temple This is like the crown of all this place. The top area, the area with the highest alltitude on all the map... it is so glorious!. Again 2 elf warriors statues gives the welcome of this place. Some stairs that I did manually with terrain *I was in a need for this*. An elf statue on the center.... and the most important! if you take a look on the backside, we have a huge mountain views, that are REALLY FAR away. This was to increase the feeling that we are on a high alltitude and distant place. Top Area, Temple Ok... so this was my main purpose by making those big mountains on the backside. As I said before, to have Beautiful panoramic views was a priority on this one. Here is an example of those views on the walkable aside areas that, you can walk into the top temple. Yeah, maybe this will be the first custom map where you walk inside a closed building structure. Night Screens As I said before, I tried to add a plus on this map. I must say, I'm not that good with doing scripts, but I did some test and with a lot of help around this board... The idea was to replace the sakura and fallen leaves effects with some lamps and bubble lights effects when the Night is present on the map. Those effect lights were added on those custom lamps made with nature branches that you see around the map *did someone said teldrassil *. But they turn on only with night present! I hope you will like this extra I was thinking for this map. Detailed Night View on Core Area When night is present, rivendel spirit spheres of lights awakes all around the area! also some lamps activates on all those wood lamps that grows naturally. Details of the Lamps As I said before, this lamps grows naturally and randomly on a lot of areas of the map. here we have one that just grow up between some benchs. Also, you can walk under some of those lamps and see how the effect looks on your character. Lower Plaza With lights Same lower plaza but with night present. Lamps turns on again here, as also on all areas around the map. It took me a while to add all those effects with scripts *as also adjusting gat height to have the correct height on each invisible npc* but there is. I like this a lot! Panoramic View at night Last SS! just a panoramic view with all the map at nightmode. I must say, that I'm still fixing some small detailes on this simple script *that for me it was not that simple anymore for the fact, that the effect is not -loopeable- and that is a problem to me at the time I want to call this script and with other players present. But luckily my customer knows some good scripter that might fix this to make it full compatible when -other players- visit the map also. I'm sure this one was a very progress for me, not all my requests becomes as this one.... As I said, I had a lot of freedom to try new things and try what I though it would look great. My customer by his own initiative, paid almost the double of the price when he saw how the map was becoming at the end. He is a truly a happy map owner now! To all! Thanks for watching this map and ... thanks in advance for your comment! I appreciate every rating, like, comment or suggestion. Thank you and see you all very soon.1 point
-
Hi! I have this question in mind: Would it be possible to clean the bug tracker's Core and Skill topics from the old eA issues that are on the last ~10-15 pages? Those are mostly out of date, duplicate or already solved issues, and noone cares about em. So why pollute the threads?1 point
-
So this is kinda old stuff but I think we should take more in accounts warnings and if possible fix them. Currently we only have fews build who throwing out warnings : (http://build.rathena...ings (40)]NMAKE[/url]) cause other one are either set as silent or don't got a warnings level sufficient. I'm suggesting to change visual warnings rom lvl 3 to lvl 4 and modify configure to remove -Wno parenthese, -Wno unused -Wno-sign-compare -Wno-pointer-sign. For configure since we trying to optimise and make the code stronger those silent warnings serve againt our purpose, Why do we need to silent parenthese, bettter to let us know if a condition is dubious : if(a && b || c) => do you mean ((a && || c) or (a && (b || c)). unused is trivial and worse is done in Vcc but not in Gcc cause we tell him to shut us, what the logic in that ? The only one I believe should stay is -Wno switch cause we using lot of switch and enum, and he will complaint to not have them all, well we could always put a default path for all of them. If there still some warnings and you feel we should silent them, let at least do it if degug mode is off (--enable debug) so we can easely take a look at it later. Of course I also believe buildbot should have debug mode on for compile so we know what missing. Configure diff Vcc Files If you doing this you'll see those kind of warnings : http://upaste.me/e1dc170363199020 So quick study of them we assigning to smaller type a bigger type like : short a = int b, so ofc only half of b will be assign. Signed to unsigned or unsigned to signed short a = unsigned short b; unsigned short a = short a; So ofc after SHRT_MAX will have some issue of sign nonstandard extension used : bit field types char a:1; unsigned short a:1; All useless we said we wanted only 1 bit assign for this type, putting short or char is useless as we still only gonna have 1bit This only bring confusion as expected type, real declaration is : int a:x (x = number of bit) etc... So just changing those ain't hat hard and will put the code more coherent, they were mostly done by optimisation attempt, like we change mapid to short but not in function call causing those issues or trought scanf... This will also optimise the code cause we will reduce in most case type so less ram reserved. I already starting doing the change, ain't that easy to explain rule change but it's basically : -1) keep struct assign in type if optimise; -2) harmonize other struct we have the same index in there. -3) Update local variable for correct match -4) Update function parameter call -5) cast Here what I've done for the moment : ra_warns2.diff So tell me what u think about it1 point
-
1 point
-
Geez.....both of you posted while i was squeezing out the script from my brain.. >.< haha ~ try this http://pastebin.com/raw.php?i=4nbGh0ke1 point
-
@Annie: Small mistake here: for ( .@i = 1; .@i <= 22; .@i++ ) { if ( .@i == 9 ) .@menu$ = .@menu$ +":"; // 'continue' would skip an array element else .@menu$ = .@menu$ +( ( .weaponbits[ .@job ] & 1 << .@i )? "^00FF00" : "^FF0000" )+ .weaponname$[ .@i ] +":"; } Great work though. o.o1 point
-
I've tried out several methodsseems like 'enormous switch in the beginning' is unavoidable prontera,156,184,4 script ksdjfhskhfj 100,{ mes "blah"; switch ( basejob ) { case Job_Novice: case Job_SuperNovice: .@job = 0; break; case Job_Swordman: .@job = 1; break; case Job_Mage: .@job = 2; break; case Job_Archer: .@job = 3; break; case Job_Acolyte: .@job = 4; break; case Job_Merchant: .@job = 5; break; case Job_Thief: .@job = 6; break; case Job_Knight: .@job = 7; break; case Job_Priest: .@job = 8; break; case Job_Wizard: .@job = 9; break; case Job_Blacksmith: .@job = 10; break; case Job_Hunter: .@job = 11; break; case Job_Assassin: .@job = 12; break; case Job_Crusader: .@job = 14; break; case Job_Monk: .@job = 15; break; case Job_Sage: .@job = 16; break; case Job_Rogue: .@job = 17; break; case Job_Alchemist: .@job = 18; break; case Job_Bard: case Job_Dancer: .@job = 19; break; case Job_Taekwon: .@job = 21; break; case Job_Star_Gladiator: .@job = 22; break; case Job_Soul_Linker: .@job = 23; break; case Job_Gunslinger: .@job = 24; break; case Job_Ninja: .@job = 25; break; default: mes "error"; close; } .@s = select( .menu$[ .@job ] ); close2; callshop "weapon_shop#"+ .@s, 1; end; OnInit: setarray .weaponname$[1], "Daggers", "One-handed swords", "Two-handed swords", "One-handed spears", "Two-handed spears", "One-handed axes", "Two-handed axes", "Maces", "", // <-- stupid unused "Staves", "Bows", "Knuckles", "Musical Instruments", "Whips", "Books", "Katars", "Revolvers", "Rifles", "Gatling guns", "Shotguns", "Grenade launchers", "Fuuma Shurikens", "Two-handed staves"; // select hex( sum(aaa) ) from ( select 1 << view as aaa from item_db where type = 4 && equip_jobs & 1<<0 group by view ) as zzz; setarray .@weaponbits, 0x54E, // 0 novice 0x1FE, // 1 swordsman 0x80050A, // 2 mage 0x90A, // 3 archer 0x80050A, // 4 acolyte 0x1CE, // 5 merchant 0x94E, // 6 thief 0x1FE, // 7 knight 0x80950A, // 8 priest 0x80050A, // 9 wizard 0x1CE, // 10 blacksmith 0x90A, // 11 hunter 0x1014E, // 12 assassin -1, // 13 unused 0x1FE, // 14 crusader 0x80150A, // 15 monk 0x80850A, // 16 sage 0x94E, // 17 rogue 0x1CE, // 18 alchemist 0x690A, // 19 barddancer -1, // 20 unused 0x10A, // 21 taekwon 0x810A, // 22 star gladiator 0x80050A, // 23 soul linker 0x3E010A, // 24 gunslinger 0x40010A; // 25 ninja freeloop 1; for ( .@j = 0; .@j <= 25; .@j++ ) { // job index if ( .@j == 13 || .@j == 20 ) continue; for ( .@i = 1; .@i <= 22; .@i++ ) { // weapon index if ( .@i != 9 ) .menu$[.@j] = .menu$[.@j] +( ( .@weaponbits[.@j] & 1 << .@i )? "^00FF00" : "^FF0000" )+ .weaponname$[.@i] +":"; else .menu$[.@j] = .menu$[.@j] +":"; } } .@i = 1; while ( .@i <= 23 ){ .@nb = query_sql( "select id from item_db where type = 4 && view = "+ .@i, .@id ); npcshopdelitem "weapon_shop#"+ .@i, 501; .@j = 0; while ( .@j < .@nb ) { npcshopadditem "weapon_shop#"+ .@i, .@id[.@j], getiteminfo( .@id[.@j], 0 ); .@j++; } .@i++; } freeloop 0; end; } - shop weapon_shop#1 -1,501:1000 - shop weapon_shop#2 -1,501:1000 - shop weapon_shop#3 -1,501:1000 - shop weapon_shop#4 -1,501:1000 - shop weapon_shop#5 -1,501:1000 - shop weapon_shop#6 -1,501:1000 - shop weapon_shop#7 -1,501:1000 - shop weapon_shop#8 -1,501:1000 - shop weapon_shop#10 -1,501:1000 - shop weapon_shop#11 -1,501:1000 - shop weapon_shop#12 -1,501:1000 - shop weapon_shop#13 -1,501:1000 - shop weapon_shop#14 -1,501:1000 - shop weapon_shop#15 -1,501:1000 - shop weapon_shop#16 -1,501:1000 - shop weapon_shop#17 -1,501:1000 - shop weapon_shop#18 -1,501:1000 - shop weapon_shop#19 -1,501:1000 - shop weapon_shop#20 -1,501:1000 - shop weapon_shop#21 -1,501:1000 - shop weapon_shop#22 -1,501:1000 - shop weapon_shop#23 -1,501:1000 btw I don't hold back in my scripting technique ... so take your time to crack this EDIT: wtf ???? post at same time EDIT2: editing script .... done I think the main difference is Euphy script calculate it when the script call for it while mine has already did itself when server startup EDIT3: from below wow thx for reminding ! EDIT4: fix a bug on .@s = select( .menu$ ); ... missing index1 point
-
prt_in,172,140,3 script Weapon Shop 951,{ function SetShop; switch (BaseJob) { case Job_Priest: SetShop(4,5,10,7); case Job_Assassin: SetShop(0,13,1); case Job_Monk: SetShop(4,7); case Job_Sage: SetShop(5,10); case Job_Rogue: SetShop(0,1,6); case Job_Bard: SetShop(6,8,0); case Job_Dancer: SetShop(6,9,0); case Job_Gunslinger: SetShop(11); case Job_Ninja: SetShop(12); default: switch (BaseClass) { case Job_Novice: SetShop(0,1); case Job_Swordman: SetShop(1,2); case Job_Mage: SetShop(5); case Job_Archer: SetShop(6); case Job_Acolyte: SetShop(4,5); case Job_Merchant: SetShop(3,0,4,1); case Job_Thief: SetShop(0,6); default: SetShop(); } } function SetShop { for(set .@i,0; .@i<getargcount(); set .@i,.@i+1) { set .@menu$, .@menu$+"( ^FF0000"+.Shops$[getarg(.@i)]+"^000000 ):"; set .@j[getarraysize(.@j)], getarg(.@i)+1; set .@k, .@k | (1<<getarg(.@i)); } for(set .@i,0; .@i<getarraysize(.Shops$); set .@i,.@i+1) if (!(.@k & (1<<.@i))) { set .@menu$, .@menu$+"( ^0000FF"+.Shops$[.@i]+"^000000 ):"; set .@j[getarraysize(.@j)], .@i+1; } mes "[ ^0000FFWeapon Shop^000000 ]"; mes "Please choose your desired shop."; next; callshop .Shops$[.@j[select(.@menu$)-1]-1],1; close; } OnInit: setarray .Shops$[0], "Daggers", // 0 "Swords", // 1 "Spears", // 2 "Axes", // 3 "Maces", // 4 "Wands", // 5 "Bows", // 6 "Knuckles", // 7 "Instruments", // 8 "Whips", // 9 "Books", // 10 "Guns", // 11 "Huuma and Kunai", // 12 "Katars"; // 13 end; } - shop Daggers -1,1203:-1,1201:-1,1202:-1,1206:-1,1204:-1,1205:-1,1209:-1,1207:-1,1208:-1,1212:-1,1210:-1,1211:-1,1215:-1,1213:-1,1214:-1,1218:-1,1216:-1,1217:-1,1221:-1,1219:-1,1220:-1,1222:-1,1226:-1,1245:-1,1246:-1,1247:-1,1248:-1,1249:-1,13000:-1,13003:-1,13004:-1 - shop Swords -1,1103:-1,1101:-1,1102:-1,1106:-1,1104:-1,1105:-1,1109:-1,1107:-1,1108:-1,1112:-1,1110:-1,1111:-1,1113:-1,1114:-1,1121:-1,1119:-1,1120:-1,1122:-1,1125:-1,1123:-1,1128:-1,1126:-1,1127:-1,1129:-1,1149:-1,1146:-1,1147:-1,1118:-1,1116:-1,1117:-1,1153:-1,1151:-1,1152:-1,1156:-1,1154:-1,1155:-1,1159:-1,1157:-1,1158:-1,1160:-1,1162:-1,1163:-1,31172:-1,1172:-1 - shop Spears -1,1403:-1,1401:-1,1402:-1,1406:-1,1404:-1,1405:-1,1409:-1,1407:-1,1408:-1,1411:-1,1453:-1,1451:-1,1452:-1,1456:-1,1454:-1,1455:-1,1459:-1,1457:-1,1458:-1,1462:-1,1460:-1,1461:-1,1465:-1,1463:-1,1464:-1 - shop Axes -1,1303:-1,1301:-1,1302:-1,1353:-1,1351:-1,1352:-1,1356:-1,1354:-1,1355:-1,1359:-1,1357:-1,1358:-1,1362:-1,1360:-1,1361:-1 - shop Maces -1,1503:-1,1501:-1,1502:-1,1506:-1,1504:-1,1505:-1,1509:-1,1507:-1,1508:-1,1512:-1,1510:-1,1511:-1,1519:-1,1520:-1,1521:-1,1513:-1,1514:-1,1515:-1,1516:-1,1517:-1,1518:-1,1522:-1,1532:-1 - shop Wands -1,1603:-1,1601:-1,1602:-1,1606:-1,1604:-1,1605:-1,1609:-1,1607:-1,1608:-1,1612:-1,1610:-1,1611:-1,1617:-1,1618:-1,1619:-1,1620:-1 - shop Bows -1,1703:-1,1701:-1,1702:-1,1706:-1,1704:-1,1705:-1,1709:-1,1707:-1,1708:-1,1712:-1,1710:-1,1711:-1,1713:-1,1715:-1,1714:-1,1716:-1,1726:-1,1721:-1 - shop Knuckles -1,1801:-1,1802:-1,1803:-1,1804:-1,1805:-1,1806:-1,1807:-1,1808:-1,1809:-1,1810:-1,1811:-1,1812:-1 - shop Instruments -1,1901:-1,1902:-1,1903:-1,1904:-1,1905:-1,1906:-1,1907:-1,1908:-1,1909:-1,1910:-1,1921:-1,1911:-1,1912:-1,1913:-1 - shop Whips -1,1950:-1,1951:-1,1952:-1,1953:-1,1954:-1,1955:-1,1956:-1,1957:-1,1958:-1,1959:-1,1960:-1,1961:-1,1963:-1 - shop Books -1,1550:-1,1551:-1,1552:-1,1553:-1,1568:-1,1554:-1,1569:-1,1570:-1,1556:-1,1571:-1,1557:-1,1578:-1 - shop Guns -1,13102:-1,13103:-1,13150:-1,13151:-1,13152:-1,13163:-1,13164:-1,13165:-1,13166:-1,13154:-1,13155:-1,13168:-1,13169:-1 - shop Huuma and Kunai -1,13010:-1,13011:-1,13007:-1,13008:-1,13012:-1,13013:-1,13006:-1,13300:-1,13301:-1,13302:-1,13303:-1,13311:-1,13313:-1,13314:-1,13315:-1,13312:-1 - shop Katars -1,1250:-1,1251:-1,1252:-1,1253:-1,1254:-1,1255:-1 http://upaste.me/raw/a5e71739a63abd831 point
-
1 point
-
Maybe it is just me, but I prefer to only do one specific refactoring with one commit. For example to turn on one warning in gcc and fix those warnings with the same commit may be a bit easier to track in the future than huge changesets. For the same reason it may be better to first enable several gcc warning and only set w4 warning level in visual studio after the warnings in gcc are fixed.1 point
-
Because it's only used in the char-server. "battle/" folder just contains data for the map-server.1 point
-
It doesn't need bindatcmd, but it'd be cleaner to use it. mapname,x,y,z script at_ecall 123,{ OnECall: if( getguildmasterid( getcharid(2) ) != getcharid(0) ) {dispbottom "This can only be used by a guild leader."; end;} if( gettimetick(2) < getd( ".guild"+ getcharid(2) +"" ) ) {dispbottom "You can use this command in: "+ ( (getd(".guild"+ getcharid(2) +"") - gettimetick(2) ) / 1000 ) +" more seconds."; end;} if( select("Recall now :A moment please") == 2 ){close;} atcommand("@guildrecall"); setd ".guild"+ getcharid(2) +"", gettimetick(2) + 300000; close; OnInit: bindatcmd("guildrecall","at_ecall::OnECall"); end; }1 point
-
prontera,153,182,5 script kdjfhskdfj 100,{ end; OnPCLoadMapEvent: showevent 1,2; end; OnInit: setmapflag strnpcinfo(4), mf_loadevent; end; }1 point
-
... <spr>,<x>,<y>,{ OnTouch: if (<condition>) showevent <state>,<color>; end; }1 point
-
1 point
-
I'm FOR doing this. We replace with the source from r16967, which was actually last-modified in r16966 (doesn't matter much). Then we could do this: • Either every one recommit their own commit, so blame will be properly placed which will take more time (depends on that dev's activity) which I strongly recommend we do this, regardless of revision number, at least we'd have blame righty (partially, source-related would be different but still blame the same person). Also I'd go for keep commit AS IS even if they would be reverted or follow up'd after, for the sake of blame. • Otherwise we take a single person to recommit everything and even though we'd have less "useless" revisions (or follow ups), blame would be broken. (which I don't like) And since this code style thing is giving so much trouble (which I thought it wouldn't), personally I don't want this kind of headache anymore, so leave it be. List of commits envolving source modifications and its authors: http://trac.rathena.org/changeset/16988/rathena - malufett http://trac.rathena.org/changeset/16987/rathena - ligtha http://trac.rathena.org/changeset/16986/rathena - mkbu95 http://trac.rathena.org/changeset/16985/rathena - mkbu95 http://trac.rathena.org/changeset/16984/rathena - markzd http://trac.rathena.org/changeset/16981/rathena - malufett http://trac.rathena.org/changeset/16980/rathena - markzd http://trac.rathena.org/changeset/16979/rathena - markzd http://trac.rathena.org/changeset/16977/rathena - akkarin http://trac.rathena.org/changeset/16974/rathena - mkbu95 http://trac.rathena.org/changeset/16973/rathena - mkbu95 http://trac.rathena.org/changeset/16971/rathena - mkbu95 http://trac.rathena.org/changeset/16969/rathena - lighta1 point
-
You can find it here => http://www.mediafire.com/download.php?4o7m0tq3ss8ah9b1 point
-
conf/battle/client.conf packet_ver_flag: 0xFFFFFF What's your current setting there?1 point
-
Afaik that feature hasn't been added to Brow, but I somewhat believe some tests were done regarding that (don't take my words srsly, I may be wrong). Regarding the models thing, you can select the whole area to copy with F2 mode. Select it and press copy key ( C ), it will ask you what do you want to copy (only models, in your case). Then move to your other map and click on the area where you want to paste all your models. If you have any doubt regarding this, I could record a video .1 point
-
Figured I'd post it here too! A while ago there was a french website (i lost the link) that would organize your romodel.txt into categories so things were easier to find. Sadly, not all of us speak french. But I speak enough (and have help through google) to figure out what was what! This is sort of an old copy of romodel.txt, but its better than searching through endless amounts of gibberish. So here you go: Link Here All you need to do is copy paste it into your romodels.txt in your borf files and you'll be rearing to go. I've also uploaded my copy of romodels.txt to help you out if you can't figure it out romodels.txt1 point