Guest Elfocrash Posted April 22, 2014 Posted April 22, 2014 (edited) So World of Warcraft is doing this thing in it's future expansion. On "sub class change the gear will keep their attributes but will turn into the gear needed from the class" To make thing simple what this will do is that If i am a Archer and i wanna play mage then my gear when i change subclass will turn from Bow and draconic to arana mace and dark crystal. Here is a very first version of the system. For now only archer and mage class changes work but it looks to work pretty fine. Enchant will stay the same so if AM is +25 then DB will be +25 How to install? Add the ElfoArmor.jar file into the lib folder and then open L2VillageMasterInstance.java and do this. Find: player.setActiveClass(paramOne); player.sendPacket(SystemMessageId.SUBCLASS_TRANSFER_COMPLETED); // Transfer completed. and make it look like: if(paramOne == 0) { ItemSquish.changeSet(player, player.getBaseClass()); } else ItemSquish.changeSet(player, player.getSubClasses().get(paramOne).getClassId()); player.setActiveClass(paramOne); player.sendPacket(SystemMessageId.SUBCLASS_TRANSFER_COMPLETED); // Transfer completed. And this is it. This share is actually a test. I wanna see both interest for the idea and interest of the new share model where you just add a jar and a couple of lines. This is coded ONLY for acis. THE FEATURE IS INCOMPLETE. WILL BE COMPLETED IF YOU ARE INTERESTED IN IT. elfoarmor.zip Edited April 23, 2014 by Elfocrash Quote
xdem Posted April 22, 2014 Posted April 22, 2014 doesnt fit with L2, also would be cool to give an armor only for the same armor family, DC heavy -> DC Robe but still it doesnt fit Quote
Guest Elfocrash Posted April 22, 2014 Posted April 22, 2014 doesnt fit with L2, also would be cool to give an armor only for the same armor family, DC heavy -> DC Robe but still it doesnt fit If the economy of a server is built around this it would save tons of time of enchanting and shit for players. I know i'd play on a server with such a feature at least. Quote
`iAndre Posted April 22, 2014 Posted April 22, 2014 Nice one, but what about of the ability that weapon has ?? Quote
Guest Elfocrash Posted April 22, 2014 Posted April 22, 2014 Nice one, but what about of the ability that weapon has ?? Mana up, cheap shot Focus, Acumen The other crappy with the other shitty. only one matters either way. Quote
xdem Posted April 23, 2014 Posted April 23, 2014 (edited) I 've read your code and imo it should work by reading the data from xmls java side L2Item: L2Item LightSubstitute = null; //if the items ts already light stays null L2Item RobeSubstitute = null; L2Item HeavySubstitute = null; xml side: <item id= lighsub= HeavySubstitute = > //didnt used robesub block cause obviously this item is robe item ItemManager side if (class.isLight && item.getLightSub != null) //replace the item with its substitute Edited April 23, 2014 by xdem Quote
Guest Elfocrash Posted April 23, 2014 Posted April 23, 2014 (edited) I 've read your code and imo it should work by reading the data from xmls java side L2Item: L2Item LightSubstitute = null; //if the items ts already light stays null L2Item RobeSubstitute = null; L2Item HeavySubstitute = null; xml side: <item id= lighsub= HeavySubstitute = > //didnt used robesub block cause obviously this item is light item ItemManager side if (class.isLight && item.getLightSub != null) //replace the item with its substitute I though of making all of this getting parsed from a file to a map, however there are way too many things to check. For example what if the hierophant wants to play with duals ? What if the Spectral Master want to use bow? Shit like that make it impossible to have static items for every change so i could add an ingame menu where the player can choose in what he wan't his items to turn into apart from the normal choices. Also all these checks are the reason that the code has this statement repeatance pattern. However i wouldn't do it exactly as you proposed tho is a think i considered. Edited April 23, 2014 by Elfocrash Quote
xdem Posted April 23, 2014 Posted April 23, 2014 (edited) I though of making all of this getting parsed from a file to a map, however there are way too many things to check. For example what if the hierophant wants to play with duals ? What if the Spectral Master want to use bow? Shit like that make it impossible to have static items for every change so i could add an ingame menu where the player can choose in what he wan't his items to turn into apart from the normal choices. Also all these checks are the reason that the code has this statement repeatance pattern. However i wouldn't do it exactly as you proposed tho is a think i considered. fix the quote plz int RobeSubstitute = null; i made a misatke there xD it should be L2Item but I was confused it with its id Edited April 23, 2014 by xdem Quote
Guest Elfocrash Posted April 23, 2014 Posted April 23, 2014 (edited) fix the quote plz int RobeSubstitute = null; i made a misatke there xD it should be L2Item but I was confused it with its id It actually should be ItemInstance as you get the instance of the item equipped. You don't change anything no matter what item. You get the item equiped instance then the item itself and you pass on the ench and change the type with a new instance. Edited April 23, 2014 by Elfocrash Quote
xdem Posted April 23, 2014 Posted April 23, 2014 It actually should be ItemInstance as you get the instance of the item equipped. You don't change anything no matter what item. You get the item equiped instance then the item itself and you pass on the ench and change the type with a new instance. L2Item is the template of all L2ItemInstances so if you store it on L2Item witch is kinda a static class of L2ItemInstance its better 15600 dragonic bows on a server is ONE L2Item with dragonic bow data while it is 15600 L2ItemInstance with dragonic bow data. Tho you dont need to store the same data 15600 times. logic Quote
Guest Elfocrash Posted April 23, 2014 Posted April 23, 2014 L2Item is the template of all L2ItemInstances so if you store it on L2Item witch is kinda a static class of L2ItemInstance its better 15600 dragonic bows on a server is ONE L2Item with dragonic bow data while it is 15600 L2ItemInstance with dragonic bow data. Tho you dont need to store the same data 15600 times. logic Yeah but you can get the enchantment value only from the instance. Quote
Intrepid Posted April 23, 2014 Posted April 23, 2014 Interesting idea tho i would find it necessary to dont let it apply special features heres an example. I have a +16 angel slayer and im destroying the server than my adventurer for example is about to get nerfed to fuck so what i do? I just switch to a subclass thats OP in the current enviroment and i have my fully maxed equipment. That makes the game boring, for me atleast.What i would do is i would allow equipment trade in a midrate enviroment so if i want to have a heavy but i have a light set i can trade it in for whatever currency and get my desired heavy with the same enchant level and the SA of my choice in case of a weapon. Quote
Eagle_Eye Posted April 23, 2014 Posted April 23, 2014 Nc feature ;D Im happy that some people actually bring something constructive and unique from time to time on this forum. Keep coding. :good sir: Quote
xdem Posted April 23, 2014 Posted April 23, 2014 (edited) Interesting idea tho i would find it necessary to dont let it apply special features heres an example. I have a +16 angel slayer and im destroying the server than my adventurer for example is about to get nerfed to fuck so what i do? I just switch to a subclass thats OP in the current enviroment and i have my fully maxed equipment. That makes the game boring, for me atleast. What i would do is i would allow equipment trade in a midrate enviroment so if i want to have a heavy but i have a light set i can trade it in for whatever currency and get my desired heavy with the same enchant level and the SA of my choice in case of a weapon. trading is a main activity in any type of Lineage2 server, costum pvp low or whatever. Thats why I said it doesnt fit Lineage2, wow is wow and Lineage is Lineage. This method ruins trading Edited April 23, 2014 by xdem Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.