Jump to content

[Updated][Share] Subclass Master Multi Skills by Allen (Interlude-H5)


Allengc

Recommended Posts

hehehe

 

change this code:

elif info[1]!= player.getClassIndex(): return ERRORS_HTML(st,"13",even1)

 

to this:

elif info[1]!= player.getClassIndex(): return ERRORS_HTML(st,"13","0")

 

 

and now it works fine:)

 

Allen added this fix but first fijate if well what I did.

Thanks, yeah this line have a error, but the right fix is this:

elif info[1]!= player.getClassIndex(): return ERRORS_HTML(st,"13","event1")

 

I forgot the "t" xD even1 /= event1

 

Btw i havent the error bellow, did you change something?

i have find a new error in gameserver console.

 

This error refers to this line of code:

        elif event == "dorestart":
            if player.isTeleporting():
                player.abortCast()
                player.setIsTeleporting(false)
            if player.getActiveRequester() != None:
                player.getActiveRequester().onTradeCancel(player)
                player.onTradeCancel(player.getActiveRequester())
            if player.isFlying():
                player.removeSkill(SkillTable.getInstance().getInfo(4289, 1))
                st.exitQuest(1)
            client = player.getClient()
            player.setClient(None)
            player.deleteMe()
            client.setActiveChar(None)
            client.setState(GameClientState.AUTHED)
            client.sendPacket(RestartResponse.valueOf(True))
            cl = CharSelectionInfo(client.getAccountName(), client.getSessionId().playOkID1)
            client.sendPacket(cl)
            client.setCharSelection(cl.getCharInfo())
            return

and this is the error:

C:\Server\game\data\scripts\custom\855_SubclassNpc\__init__.py
Traceback (innermost last):
  File "__init__.py", line 589, in onAdvEvent
AttributeError: 'NoneType' object has no attribute 'setActiveChar'

        at org.python.core.Py.AttributeError(Unknown Source)
        at org.python.core.PyObject.noAttributeError(Unknown Source)
        at org.python.core.PyObject.__getattr__(Unknown Source)
        at org.python.core.PyObject.invoke(Unknown Source)
        at org.python.pycode.serializable._pyx1322229720855.onAdvEvent$32(__init
__.py:580)
        at org.python.pycode.serializable._pyx1322229720855.call_function(__init
__.py)
        at org.python.core.PyTableCode.call(Unknown Source)
        at org.python.core.PyTableCode.call(Unknown Source)
        at org.python.core.PyTableCode.call(Unknown Source)
        at org.python.core.PyFunction.__call__(Unknown Source)
        at org.python.core.PyMethod.__call__(Unknown Source)
        at org.python.core.PyObject.__call__(Unknown Source)
        at org.python.core.PyObject._jcallexc(Unknown Source)
        at org.python.core.PyObject._jcall(Unknown Source)
        at org.python.proxies.main$Quest$386.onAdvEvent(Unknown Source)
        at com.l2jserver.gameserver.model.quest.Quest.notifyEvent(Quest.java:468
)
        at com.l2jserver.gameserver.model.quest.QuestTimer$ScheduleTimerTask.run
(QuestTimer.java:43)
        at com.l2jserver.gameserver.ThreadPoolManager$RunnableWrapper.run(Thread
PoolManager.java:86)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.
access$201(Unknown Source)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.
run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

Traceback (innermost last):
  File "__init__.py", line 589, in onAdvEvent
AttributeError: 'NoneType' object has no attribute 'setActiveChar'

Link to comment
Share on other sites

Thanks, yeah this line have a error, but the right fix is this:

elif info[1]!= player.getClassIndex(): return ERRORS_HTML(st,"13","event1")

 

I forgot the "t" xD even1 /= event1

 

Btw i havent the error bellow, did you change something?

 

hahaha you are the programmer :p I'm still a novice xD

 

I will add event1 would believe that the error is due to the change (of course fix xD)

 

then come back and report

 

thanks

 

P/D:

look, I use the most of your scripts, modifications are made ​​to l2jserver with some of your scripts and few. but I have a very serious problem with the freezing of the players might see this issue?

post:

http://maxcheaters.com/forum/index.php?topic=225499.0

Link to comment
Share on other sites

  • 2 weeks later...
  • 4 weeks later...

heya! nice update, little more difficult for me to edit it, but well, nice works.

Just a request, you added a list for disabled somes class, but can u add a list for allow only somes class for somes races?

Ex: before ur update, i added the class tyran only for dwarf race, and added BD only for sws (and sws for bd), but with the H5 version i dont know how add them...

thx

Link to comment
Share on other sites

  • 4 weeks later...

[Hidden post: You need 50 posts to see it. You currently have 90.]

 

Hi guys, well this is my first share, is a Stackable subclass NPC, Made by me :P. This is not a AIO Grand Master that let add original game subclasses. Really this npc let stack skills from choose subclass to the Main or Retail class. Besides it let switch or delete these subclasses if you want. Also Has a system that automatically check and reset the skills that not belong to the choose classes, before taking any action.

 

BTW take some time to read the settings options into the script, so you can set the NPC to your liking.

#-------------------------------------------------------------------------------------------------------------------------------------
# SETTINGS
#-------------------------------------------------------------------------------------------------------------------------------------
#For more than 3 subclasses, you must increase the variable number into the SQL and add to the database. 
#inside the sql you will find some variables named SubclassidX. Just change the "X" increasing the number. 
#This value shouldn't be changed if you don't want to increase the subclasses number beyond 3. 
#Increase or decrease the "CONFIG_MAX_SUBS_IN_DB" value without make these changes, will cause errors. Be carefull!.
CONFIG_MAX_SUBS_IN_DB = 3

# Subclasses number that can be added. Must be less than or equal to "CONFIG_MAX_SUBS_IN_DB".
CONFIG_MAX_SUBS_A-beep-T = 3

#True, allows reloading the configuration script from the game, without restarting the server (for GMs only). False, disables it.
CONFIG_SHOW_RELOAD_PANEL = True

# True enable restart protection. Recommended Default: True
CONFIG_ENABLE_RESTART_PROTECTION = True

# Delay time in seconds before being restarted automatically. Not recommended a number bellow to 5 seconds. Default: 5 seconds
CONFIG_RESTART_TIME_PROTECTION = 10

# True: The user must wait a while before take any action. Default: True
# False: The user can do any action without time constraints. Not recommended
CONFIG_ENABLE_FLOOD_PROTECTION = True

#Blocking time in seconds before take any action.
CONFIG_FLOOD_PROTECTION_TIME = 20

#Subclass list that won't be able to choose. Default: [] Overlord and Warsmith
CONFIG_FORBBIDEN_SUBCLASSES = [57,51]

# True, allows add stackable subclasses in every original game subclass (Mainclass and every retails).
# False, allows add stackable subclasses in only one original game subclass or main class
CONFIG_ALLOW_MULT_SUBS = False

# True, allows any stackable subclass. False, allows add your own race's subclasses only.
CONFIG_UNLOCK_SUBS_FOR_EVERY_RACE = True

#This option work if "CONFIG_UNLOCK_SUBS_FOR_EVERY_RACE = False", Also you need to be using a original game subclass (Retail) to get available this.
#True, allow add a subclass with the same main class's race. False, allow add a subclass with the same Retail's race.
CONFIG_ALLOW_MUTANT_RETAIL = True

#The next three options work if "CONFIG_UNLOCK_SUBS_FOR_EVERY_RACE = True" only.
#True, allows everybody add Kamael subclass. False otherwise.
CONFIG_UNLOCK_KAMAEL_FOR_EVERY_RACE = False

#True, allows Dark Elf class do elf subclass, and Elf class do Dark Elf Subclass. False otherwise.
CONFIG_ALLOW_DELF_AND_ELF_EXCHANGE_SUBS = False

#True, allows Kamaels add any subclass. False, allows Kamaels to add their own race only.
CONFIG_UNLOCK_ALL_SUBS_FOR_KAMAEL = False

#True, allows delete the main class or any subclass added. False, allow to delete added subclasses only. Default: False
CONFIG_ALLOW_DELETE_MAIN_CLASS = False

#Allow to add subclasses already used in the original game subclasses (Retail). Default: False
CONFIG_ALLOW_SUBCLASS_DUPLICATION = False

#True, allows add subsclasses if the character is a Noblesse only. False, otherwise. Default: False
CONFIG_ALLOW_SUBS_FOR_NOBLESSE_ONLY = False

#True, allow to add subclass or any other actions if you have the required items only. False, otherwise
CONFIG_ENABLE_FEE_FOR_SUBCLASS = True

#Required Item to switch between the subclasses. Default: 57 (Adena)
#Required items number.
CONFIG_SWITCH_ITEM_REQUIRED = 57
CONFIG_SWITCH_ITEM_A-beep-T = 1000000

#Required Item to add a subclass.
#Required items number.
CONFIG_ADD_ITEM_REQUIRED = 3481
CONFIG_ADD_ITEM_A-beep-T = 100

#Required Item to delete subclasses.
#Required items number.
CONFIG_DELETE_ITEM_REQUIRED = 3481
CONFIG_DELETE_ITEM_A-beep-T = 10

# Minimum Level to add a subclass. Default: 76
CONFIG_MIN_LEVEL_FOR_SUBS = 76

# True:  Show 3rd Class trasfer to choose. False: Show 2nd Class trasfer to choose.
CONFIG_HTML_SHOW_3RD_TRANSFER_CLASS = True

#Disallow add subclasses if the user's class transfer level is lower than bellow option.
CONFIG_CLASS_TRANSFER_LEVEL = 2

# True: The user level will chang after add a subclass. False: User level won't change after add a subclass. Default: True
CONFIG_ENABLE_DECREASE_LEVEL = True

#Level at which the character will be changed after add a subclass. Default: 40
CONFIG_LEVEL_AFTER_ADD_A_SUBCLASS = 40

#-------------------------------------------------------------------------------------------------------------------------------------

 

Picture

 

subclassmasterbyallen.png

 

Link: Subclass Master By Allen (L2jServer H5)

 

Link: Subclass Master By Allen (L2jServer Gracia Freya)

 

Link: Subclass Master By Allen (L2jServer Gracia Epilogue)

 

Link: Subclass Master By Allen (L2jServer Gracia Final)

 

Link: Subclass Master By Allen (L2jServer-L2jFree Interlude)

 

Credits: Inspired by the foxer's NPC but Remade by Me  ;)

 

GMS haven't restrictions, so i recommend you test it as a gm and with a normal character.

This Npc was tested on L2jServerCT2.3, L2jOfficialCT2.3, L2emuCT2.3 and L2EmuCT2.2 successfully.

If you liked this Share a thanx is a nice answer. Well Enjoy it  ;D

 

Edit1: Added new option "AllowDelMainClass" check settings within the script

Edit2: Added new option "AllowMutantRetail" check settings within the script

Edit3: Added new option "AllowThirdJob" check settings within the script

Edit4: Added new option "ShowReloadScriptPanel" and now the file has english and Spanish Version to choose.

        fixed overflow with longs names at HTML

Edit5: Added new option "AllowMultiSubs" check settings within the script. Fixed problems with skills enchanted and gracia final skills.

        Added new table for skills exceptions.

Edit6: Updated to Gracia Epilogue. I will now only support epilogue client.

        Added new option "AllowDElfvsElfSubs" check settings within the script.

        Added new option "RestartDelay" check settings within the script. Really important option to avoid some buggers players.

        Added skill exceptions for Certification skills

        Delete some lines of code and Queries unnecessarily and remake some codes too, for improving the performance of NPC.

Edit7: Updated to Gracia Freya.

Edit8: Updated to H5 + some new configs.

 

[move]Plz look file not found For Freya PLZ LOOK[/move] :(

Link to comment
Share on other sites

  • 3 weeks later...
  • 2 weeks later...
Guest
This topic is now closed to further replies.



  • Posts

    • Well, sorry not sorry for resurrecting old topic, but I believe it's ultimately stupid to implement license checks like Vilmis did 🙂   private static String url = "jdbc:mysql://185.80.128.233/" + getData("Zm9ydW1fZGI="); private static String username = getData("bXJjb3B5cmlnaHQ="); private static String password = getData("Y29weXJpZ2h0XzEyMw=="); con = GlobalDB.getInstance().getConnection(); PreparedStatement statement; statement = con.prepareStatement("SELECT field_6 from core_pfields_content WHERE member_id = ?"); statement.setInt(1, Config.FORUM_USER_ID); ResultSet rset = statement.executeQuery();   This awesome way of coding things leaves us with base64-encoded credentials and DB exposed and accessible globally 😉 Btw he checks his licensing data from some plugin generated table his forum uses. Vilmis took action and ensured that mrcopyright user would have only needed accesses and rights for this operation. But he forgot to ensure that his INFORMATION_SCHEMA database would not be exposed and readable... That leads us to fully readable server variables like version used (10.1.26-MariaDB-0+deb9u1 - pretty ancient DB and OS, I'd assume). From here you can go south and do some kinky stuff, if you want and have knowledge for that. But who cares, right?   Ooh, table core_pfields_content field_6 is IP address which is checked by FORUM_USER_ID. Yep, you can query all IP addresses there (124 of them right now) and also do whatever you want with them! 🙂  The most fun part? Files source has been shared what, more than 2 years ago?  Vilmis still uses very same credentials and never changed it after sources exposure - who cares. Although, "sources" may be way too strong word here. If anyone still use paid Orion versions, I'd suggest packing your shit and leaving immediately, or at least fix this incompetent fool caused problems. It's obvious Vilmis don't care or maybe doesn't even know from the first place how to solve this problem (hint hint - tiny PHP Rest API microservice which would do absolutely the same but without exposing sensitive data?). By doing that, he exposes his infrastructure and YOUR data, and he does that for more than 2 years now 🙂 Developer of century!    
    • rename the l2.bin into l2.exe
    • L2LIVE.PRO- Dynamic Mid-rates Essence Seven Signs GRAND OPENING - July 5, 20:00 GMT+3 (EEST) TEST SERVER IS OPEN - COME AND CHECK IT OUT TODAY! Join our community and be part of it at: https://www.l2live.pro https://discord.gg/k3NMgR4Dmu   Server description * EXP/SP: Dynamic (x1- x100 based on your level, *before* Sayha and EXP buffs * Adena: x50 / Item Drop: x10 / Fishing EXP increased / Attribute EXP increased * Simplified gameplay to stay in the loop while not spending hours and hours farming * Starter Pack containing very useful items for beginners * MP replenishing potions with auto-consumption * No overpowered donations L2LIVE shop * All spellbook coupons, pet spellbook coupons and master books are sold via Game Assistant * Additionally you can buy SP pouches, enchanted talismans, pet training guides and various other consumables for Adena and L-Coin * More items such as cloaks, more talismans, agathions, belts, pendants, enchantment scrolls of various grades, evolution stones, etc will be added! Shop server as a shortcut, and all retail-like ways of earning items are still here! L-Coins * Drops with small change and in random amounts from Lv60+ monsters  * All raidbosses drop random amount of L-Coin Pouches generating up to 420 Lcoin per unit. **Grand Olympiad and Events** * Grand Olympiad is held week day * Format is 1v1, unlimited weekly fights  * Heroes are declared weekly at Sunday * There are three automated events - TvT, CTF and Deathmatch, running at evenings * Orc Fortress, Battle with Balok, Keber Hunter, Archievements Box, Daily Gift Calendar provisional events are active too Custom user commands * .offlineplay command, your character will keep playing till death or server restart * .offlineshop command, keeps your shop sitting until all items are purchased * .apon / .apoff - enable/disable HP/MP autoconsume And lots of other small improvements are waiting for you!   Join our community and be part of it at: https://www.l2live.pro https://discord.gg/k3NMgR4Dmu
  • Topics

×
×
  • Create New...