Tryskell

L2J Developer
  • Content Count

    5,024
  • Joined

  • Last visited

  • Days Won

    20
  • Feedback

    0%

Tryskell last won the day on January 17

Tryskell had the most liked content!

Community Reputation

117 Excellent

About Tryskell

  • Rank
    Distinguished King
  • Birthday 11/15/1986

Contact Methods

  • Website URL
    http://acis.i-live.eu/index.php

Profile Information

  • Current Mood
    Playful
  • Gender
    Male
  • Country
    France
  • Location
    In your kitchen eating cookies.
  • Interests
    Bitchslapping IL since 2010.

Recent Profile Visitors

7,336 profile views
  1. It tries to register item elements while using RequestExEnchantItemAttribute packet - and it seems it already exists. L2ItemInstance line 1069. Either check if attributes already exist and discontinue method process, or replace the query for a "ON DUPLICATE KEY UPDATE" behavior, which will correctly save things if a duplicate is found. I'm not a postIL dude, so my answer will be limited to that. Gl !
  2. Changeset 388 (1562) Movement is still experimental. The status IS NOT OK for LIVE servers. MoveToPawn behavior still need to be fixed. Siegable Hall isn't tested, and probably need further development. Those CHs are normally fully working regarding owner administration. Env drop, PartyMatching, Quests, Bugfixes, Organization Env drop - Ty Hasha for debug. - Drop Env and Lambda, which were retaining a lot of pointless variables. - Add missing "base" functions, and make a use of it. - All FuncHennaCON/DEX/... are merged into FuncHenna. PartyMatching Organization - Merge PartyMatchWaitingList and PartyMatchRoomList into PartyMatchRoomManager. - Move PartyMatchRoom on model.group, make it use AbstractGroup. - Delete package model.partymatching. - Related packets are cleaned. Methods are generated on appropriated classes to make it cleaner. Bugfixes - Fix all possible CMEs due to unappropriated containers, fix one possible NPE. - Rework the changeLeader management to avoid a client crash. - Add the missing max member amount check. - Rework waiting list behavior to fit with L2OFF. - Set the location as "1", to avoid a client crash. Put a TODO, as we miss needed implementation to code it as it should. Quests - Q351 : Fix reward. Ty p0w3rf1y. - Q025 addition. Ty roko91 / Hasha. - Q335 addition. Ty RooT / Hasha. Bugfixes - Fix login system, reverting Account cache system. - Clan skills aren't rewarded on Player relog if reputation < 0. - Clan skill, upon acquisition, isn't rewarded if reputation reaches 0. - Add a missing Config.MINIMUM_CLAN_LEVEL use over ClanMember. - Fix Sand Cloud, Heroic Grandeur, Heroic Berserker, Invocation skills. - Rework ForestOfTheDead in order Npc references are correctly exploited + some cleanup. Ty Hasha. - Fix HP/MP Clan Hall regen calculation. Ty p0w3rf1y. - Save ClanHallFunction upon creation. Ty p0w3rf1y. Organization - Optimize packet sending over Clan skill acquisition. Movement is still experimental. The status IS NOT OK for LIVE servers. MoveToPawn behavior still need to be fixed. Siegable Hall isn't tested, and probably need further development. Those CHs are normally fully working regarding owner administration.
  3. aCis 388 (1562) is up ! Env drop, PartyMatching, Quests, Bugfixes, Organization

  4. It doesn't collide with what I say :). L2J isn't complex, once you are aware about inner organization ; the "complexity" comes from the size and from the amount of features colliding between each other - at worst. Technically, there are only few parts which can block someone, and that would basically be, from my PoV : movement, geoengine/pathfinding, mmcore/network, knownlist. The leftover is complex only if the developer is complex in his head. About customs, the only limit of complexity is your imagination, and the question "is it really useful ?".
  5. I, and L2 world in general, got no point opening a public custom version of aCis, except sitting my dominion over Interlude chronicle, once and for all, leaving (almost) no other space for other packs in this chronicle. Do we really want the same custom server spreads everywhere ? I believe than no. Simply see how that L2Pride share harmed the concept of L2Pride ; any idiot could simply open one server out of nothing. And I believe CONCEPTS should be kept original, and the sole property of "real" developers (aka, people who used their time to make the thing possible). Not from a leecher, who simply downloaded something at best, or stole it at worst. My position towards customs generated a whole ecosystem which wouldn't eventually exist. L2JFrozen's death actually harmed me, it was what I call "my anti-noob firewall". That project shielded me for a very long time of retards, people who aren't able to read a topic, leechers, and whatever else bad people you (I, at least) don't want involved into development. While I agree everyone should access to some decent BASE files (and that's what I aim with aCis, giving anyone the chance to open a decent server), I believe UNIQUE CONCEPTS should be kept secret. And overall, it's more challenging trying to reproduce something than to invent something out of nothing.
  6. 1.5 is a side project from Reynald0, it isn't affiliated to L2JFrozen initial team. He picked latest free L2JFrozen sources as base. 2.0 was supposedly the private/premium version of L2JFrozen, except than Shyla/Nefer never did it. They did few revisions based on L2 towns naming (Giran, Oren, etc) and that's almost it. There are numerous abandoned chronicles out there, not sure why everyone focus on IL. I chose IL because it's the chronicle I mostly played on, but I doubt it's the same for every monkey out there. :) You got entire chronicles like C1, C4, GF which can be easily done with reliable informations (unlike IL) and which aren't (a lot) developped (some aren't developped at ALL). ---- Custom packs would never get the priority over packs which work on retail fixes, simply because retail fixes are way harder to produce than customs, which are abundant and heavily spread/shared. I simply can apply the 10 most used customs, clean them a little and call aCis a "custom pack". That would probably make okish concurrency to L2JFrozen and alike. But well, I got better things to fix for now. Maybe I will move of chronicle/type when I will judge aCis mostly done. :)
  7. It actually matches really well the background. They even developped some parts of that aspect in retail, but they didn't go really far, where it could be actually a real part of the gameplay.
  8. Faction engine is a matter of 400 lines, more or less. Trickiest part - if that is tricky - is to put faction checks on existing features. The leftover is extremely basic, and can be basically adapted from any server pack holding faction engine to any other server pack in few hours, or coded in few days taking your time. Before opening aCis, back in 2010, my own server project was a faction server, that's to say how easy it is to code it.
  9. acIs 387 (1541) is up ! LS rework, Quest related edits, Chat related edits, Organization 

  10. Changeset 387 (1541) Movement is still experimental. The status IS NOT OK for LIVE servers. MoveToPawn behavior still need to be fixed. Siegable Hall isn't tested, and probably need further development. Those CHs are normally fully working regarding owner administration. LS rework, Quest related edits, Chat related edits, Organization LS rework - Generate enums package for LS, and extract existing enums to it. - Generate data (sql and manager) package, and move all related classes to it. - Replacement of password algorithm from Base64 to BCrypt. Ty SweeTs. - Load all Account (previously AccountInfo) in memory, to avoid pointless SQL manipulation and generating/destroying Accounts objects. - Extract related content from multiple classes and generate AccountManager and IpBanManager out of it. Quest related edits - Ty Hasha - Quest system edit - Complete the javadoc + cleanup. - QuestTimer storage is simplified (all timers are stored on same level). - Quest#onEvent is dropped, onAdvEvent prevails. - Add the possibility to cancel specific QuestTimer based on multiple criterias. - Implement Quest#onTimer, moving timer based events from onAdvEvent. - Quest#onGameTime and Quest#onSiegeEvent got now parameter for easier usage. - Make an extensive use of onDecay on all quests. - All quests are edited to spawn only one instance of a quest monster at a time. - Remove boolean flag isRepeating over Quest#startQuestTimer ; cut that method in 2, Quest#startQuestTimer and Quest#startQuestTimerAtFixedRate. - Quests - Introduce SecondClassQuest abstract class, holding shared content between all 2nd class transfert quests. - Q021 : Add few missing sounds and HTMs. - Q242 : Fix the Fallen Unicorn issue. - Q619 : Introduce droplists of relics for 4sep and IT. - Fix retail typo "Neidrahu" > "Nidrah" on all HTMs ("Nidrah" being the reverse of "Hardin", the necromancer). - Q334 addition, ty Rootware. Chat related edits - Ty Hasha - NpcSay : added more constructors, javadoc - CreatureSay (Say2) - added more constructors, javadoc - updated packet structure, removed _npcString (IL client does not use NpcString) - removed systemmessage parameters, they are not used by client - updated parameter names, added some explanation - updated the usage of packet, whenever possible, changed to NpcSay(shorter packer name (string) -> npcid (int)) - Introduction of new enum SayType for chat type. - Added NpcStringId container, based on L2OFF fstring.txt content. Organization - Add SevenSignsManager#getLosingCabal(), rename SevenSignsManager#getCabalHighestScore() > getWinningCabal(). - Delete CabalBuffer instance. Move behavior to AI script, as group.CabalBuffers. Behavior is taken from L2OFF GF (same than IL). Note: Prefer NpcSay over CreatureSay, when having a need for creature (with NPC ID) to speak. PS : The transition between Base64 and BCrypt for password encryption is left to live servers owners, but the idea is to edit used algorithm of "password replace feature" using BCrypt on your existing account panel, and request your users to edit their password to be able to log on. Movement is still experimental. The status IS NOT OK for LIVE servers. MoveToPawn behavior still need to be fixed. Siegable Hall isn't tested, and probably need further development. Those CHs are normally fully working regarding owner administration.
  11. aCis 386 (1497) is out !

    MariaDB / SQL tables, Scripts, Bugfixes, Organization

  12. Changeset 386 (1497) Movement is still experimental. The status IS NOT OK for LIVE servers. MoveToPawn behavior still need to be fixed. Siegable Hall isn't tested, and probably need further development. Those CHs are normally fully working regarding owner administration. MariaDB / SQL tables, Scripts, Bugfixes, Organization MariaDB / SQL tables - Consider to download latest MariaDB (10.4.11 at the date of this note) and transfer your db to it. MySQL is considered legacy. - Following tables are edited : accounts, auctions, augmentations. More will come with time, until all are optimized and follow convention. Scripts - Addition of Q120. Ty StinkyMadness for adaptation. - Addition of Q343, based on L2J's ivantotov script. Fix memoStateEx to fit L2OFF. - ShadowWeapon script - Add 10 missing entries out of 90, out of 3 multisells. - Add exchange option to Ranspo, as depicted on L2OFF. - Q101 : add missing quest items in registered items list. Ty Rootware. - Q336 : add missing npcId in addTalkId. Ty p0w3rf1y. - Q626 : make the quest repetable and party friendly, according client infos. Ty p0w3rf1y. Movement - Fix Boat stop behavior upon harbor reach (both regular and busy states), leading to memory leak. - Fix IOOBE over GeoEngine#findPath (trying to set player on non-existing layers), based on Hasha fix. - Fix movement issue related to route cutting edges. Ty vladalien. Bugfixes - Orcs Mystics are considered as FIGHTER, and not MAGE anymore (22nd May 2007 patch note). Ty shyr. - Allow non stackable items with amount > 1 over create_item. Limitation based on inventory slot amount. - Second layer of fixes for enchanted item buy possibility. - Add missing messages for buy/sell enchanted items. - Add missing OperateType.NONE, which fix stuck behavior upon fail (casting a skill, setting on NO_STORE zone, etc). - Add ItemRequest#_enchant + related checks. - Fix Dice roll vector. - Fix SchemeBuffer duplicate key exception. Ty Sahar. - Revert part of 385 related to CC edit, fixing CCE about Raidboss. - Fix SecondClassChange "congratulations" htm. - Don't disband Party on DISCONNECTED leader (as tested on AdvExt). - Add missing zone data related to rev 384. Implement it under new enum SpawnType, based on StinkyMadness suggestion. Organization - Server bypass floodprotection is lowered from 500ms to 100ms (lowest secured value, less painful for user). - Add SpawnLocation#getLocationWithOffset. - isVisible refactor, ty StinkyMadness. Movement is still experimental. The status IS NOT OK for LIVE servers. MoveToPawn behavior still need to be fixed. Siegable Hall isn't tested, and probably need further development. Those CHs are normally fully working regarding owner administration.
  13. I would like to help, but it directly collide with my own project management (+ wasting time saying what's wrong with your version when I already got a version waiting to be tested/commited). I will try to commit missing quests at a ratio of 1/changeset.
  14. If you successfully pass the account creation and goes on character creation panel : check logs for errors, compare revision with changesets (even if I don't have memory of such a problem), drop your security (lameguard or any sort of external guard) and/or change of client. If you use W10, you need a w10 fix for IL client (I think it's fixed on latest W10 versions, but it was running for a long time).
  15. None will give you the use of the 1500+ core files of a L2J project. I invite you to be curious and explore it. L2J is 80% project knowledge and 20% Java. Langages to know : HTM, XML, SQL, Java. Some projects still have scripts under Jython. With ok logic and no specific knowledge, you can expect to be "mhe" after 6 months of tries/fails, "ok" with 1y and "decent" after 1y+. stackoverflow website is the best way to get answers regarding Java structures/logic/patterns in general.