Main Menu

Recent posts

#1
Newcomers, read this / Re: Public sources
Last post by Tryskell - October 11, 2024, 07:49:20 PM
Public revision is moved to rev 409, geodata link is refreshed.
#2
Newcomers, read this / Re: How to access private sour...
Last post by Tryskell - September 27, 2024, 10:28:20 PM
Since last massive leak as explained as 07/09 (notably all development branches), I don't accept anymore financial newcomers that easily. People will have to contribute 100 cookies worth of contributions (bug reports/fixes) as a first step to be accepted as Donator. Free user can join after sharing over 200 cookies out of contributions, compared to 100 cookies before.

You can say thanks to RusAcis, and notably his worthless leader, UnleashedForce.

The size of users will continue to shrink if more leaks occur, until true helpers only will be left.

New prices are as following :

Joining price: 200€ + 100 cookies, or 200 cookies
This fee has to be paid if you are joining aCis project. Next month, and all other months, you will have to donate only basic monthly donation.

Monthly price: 10€ / 10 cookies
This fee has to be paid every month.

I won't accept any new join fee before the 100 cookies contribution. Your money will be instantly sent back.

Also, in the same shape of idea, actual supporters/donators have to be active to stay in sources. It doesn't have to be a particular amount, you just have to share from time to time *anything*. I don't accept anymore silent ppl. Only useful people will be kept.
#3
Announcements / Re: Last aCis updates
Last post by Tryskell - September 07, 2024, 07:21:07 PM
Changeset 409 (3301)

SCH, Castles, IU, Npc movement, Drop rate rework, Bugfixes, Organization


SCH - Ty Bandnentans for the good work
    - All SCHs are normally fixed and working.
    - CH decorations are reworked (they got their own XML, related Configs are dropped).
    - Aden CHs got the Wyvern option, as stated in Patch Notes. Ty Denzel for report.
    - CH features levels are corrected. Ty Denzel for report.
    - Fix NPC clan crest issue.

Castles
    - Keep Castle next tax percent instead of resetting it to 0.
    - Implementation of missing variables over Castle vault management. Ty KejbL for report.
    - Remove doublons over Residence npcIds. Add npcId 35552 HTMs. Ty //Dev for report.
    - Fix the tax income calculation.
   
IU
    - Add PAPERDOLL as potential location for IU (fix gm enchant, arrows consumption). Ty Roko91 for report.
    - Fix weight calculation over login. Ty KejbL for report.
    - Fix inventory update upon teleport (BSOE consumption). Ty //Dev for report, La Roja for fix.
    - Fix inventory weight upon NPC buy.
   
Npc movement
    - MOVE_TO desire is cleansed over onEvtBlocked, avoiding to build infinite desire.
    - Don't add MOVE_TO desire if given Location isn't reachable.
    - FLEE doesn't call event upon onEvtBlocked (that event means something wrong happened, it's then impossible to trigger "regular" FLEE checks).
    - Use Location#equals in few scripts.
    - NpcAI#thinkFollow cleanup (-8 arrays, -24 List#get, -8 distance2D).
   
Drop rate rework
    - Main idea is to iterate each category X times, as if X monsters were killed. No % re-calculation or whatever, it's plain and simple. x50 means you got the calculated drops of 50 monsters.
    - Avoid to generate IntIntHolder, manage the drop/spoil using a Map<Integer, Integer> instead, which also allow to merge similar itemIds.
    - Categories % are tested no matter if drop or spoil, which allow levelMultiplier to be properly applied.
    - Monster#dropItem is moved to Npc#dropItem, which allow any Npc to drop an item and avoid cast.
    - "killer" is now part of all Npc#dropItem, meaning the item is properly item protected.
   
Bugfixes
    - Fix a ClassCastException over Quest#onClanAttacked.
    - Fix a NegativeSizeArrayException upon client logging. Drop few logging errors related to invalid client attempts.
    - Fix NPE over Q635.
    - Fix PDAM calculation prior to rev 399 physical attack/skill split. Ty Yoska for report.
    - Fix TradeList automatic title cleanup. Ty Denzel for report/fix.
    - Add back missing Config.PARTY_XP_CUTOFF_METHOD "none" option. Ty CUCU23 for report/fix.
    - Fix "upper roof" NPCs. Ty Bandnentans for fix.
    - Fix Seven Signs individual stone contribution method. Ty //Dev for report.
    - Fix Q372 reward table and drop rate. Ty //Dev for report.
    - Q348 now distributes drops as party-random, despite the client info. Ty Denzel for report.
    - Fix Benom teleports out. Hardcode other in/out Locations. Ty //Dev for report.
    - Don't show Crystallize icon on inventory for Bounty Hunters (was an addition of CT1 GP1). Ty Bandnentans for report.
    - Replace "weightPenalty" for "weightLimit" over skills XMLs. Ty //Dev for report/fix.
    - When Heroes participate in a raid against Antharas, Valakas, and Baium, the boss monster has a chance to shout out the Hero characters' names. Ty deekay for fix.
    - Fix isRaidBoss implementation (a raidboss minion without master was considered raidboss).
    - Fix Nurse Ants not healing the Queen Ant larva.
    - Fix a SQLException over Olympiad server startup.
    - Fix a SQLException over Clan member removal (since clan privs rework).
    - Fix default 30169 npcId HTM. Ty Bandnentans for report.
    - Fix Festival Guide missing rift option. Ty Denzel for report/semi-fix.
    - Few dwarven/general manufacture fixes
        - Add the missing max recipe integrity check.
        - Upon shop fail, call back the manage window.
        - Upon shop fail, don't cleanup the manufacture list.
        - Upon shop success, cleanup the reverse manufacture list (successful general shop resets dwarven, successful dwarven shop resets general).

Organization
    - Rework HtmCache and CrestCache to use NIO. Move CrestType to enums.
    - Implementation of WorldObject#forEachKnownType / WorldRegion#forEachType & forEachRegion - Avoid List overhead in numerous popular locations (notably broadcastPacket or region checks - which are done on every knownlist check).
    - Rework SkillList packet, it is now handled as other packets. Delete Player#sendSkillList method.
    - Delete DeadlockDetector class and related configs.
    - Add GameServer#isServerCrash, based on LaRoja implementation - without uses, for now.
    - Move IPv4Filter class to commons.network, delete net.sf.l2j.util package.
    - Add DefaultSeeRange config, use the retail value 450 instead of 400.
    - Add more records, ty LaRoja for the merge request.
    - Delete unused dimensionalRift.xml.
    - Few ItemContainer optimizations.
    - Rename all ocurrences of adenas to Adena.
    - SonarLint / UCDetector fixes :
        - Drop MathUtil#limit, use Math#clamp instead (introduced in JDK21).
        - Drop following unused Configs : FS_TIME_ENTRY, FS_TIME_END, RAID_MINION_RESPAWN_TIMER.
        - Few public / protected / private edits. A lot more to come.
        - switch cases are merged (introduced in JDK12).
        - Boolean object is compared to Boolean.FALSE/TRUE, not directly tested as a boolean.
        - String#replaceAll is replaced with String#replace when a regex pattern isn't involved.
        - Generate few records : Sequence, TutorialEvent.
        - Few class-based variables are now local.
        - Use HashMap.newHashMap instead of new HashMap when the capacity is known (static final maps). HashMap.newHashMap avoids to set 0.75 capacity when it's not needed.
        - LogRecord record is renamed LogRecord logRecord, due to record being now a keyword.
        - Use proper Singleton pattern for instance type (notably listeners).
        - Generate private constructors calling IllegalStateException for utility classes.
#4
Announcements / New leak involved, and its cou...
Last post by Tryskell - September 07, 2024, 01:19:08 PM
Hellllllo everyone ! Good news for some, bad news for others : aCis was, once again, leaked.

It wouldn't be that problematic if it was old content, or even last revision 408 ; but this time, the whole content of under development/master branches was leaked out. One pack project is actually reselling NEXT revision content - before even being announced on aCis forums.

The mole/leaker is still part of customers, and is still capable to leak data, at the date I speak about.

Since I'm on a joyful mood, following events will occur :

PIRATE PLANK MINIGAME

Since we got restricted amount of donators (we're actually 13 on sources counting developers, over all), it's not extremely hard to actually delete the mole ; few ppl are actually matching the description, and a list can be easily generated based on time leak, potential country, contributions,...

Which basically end with that representation :



How will it work ? Everytime a new leak will occur, the following donator on the board will jump out of ship (and Talking Island waters are kinda cold). Since I'm not a monster and got principles, I will send back spent money for the non-granted months to the kicked dude. You won't be added back to the sources, anytime. The game ends when the mole is dropped out, or when I'm alone with my most loyal peeps around.

CONTRIBUTION

Leftover donators will have to contribute to the pack, being reports or code edits. Silent people won't be renewed anymore solely based on money.

In the same order of idea, I will now request a minimum of 100 cookies contribution before accepting any new ppl on the gitlab - which anyway won't be hard to do if you're a minimum invested into the pack.

If you understood the concept, free ppl can access gitlab sharing for 200 cookies contribution (100+100), and donators can access with 100 cookies + 200€. Regarding monthly contribution, there are no special numbers to achieve, stay active and you will stay.

PUBLIC REVISION WILL STEP UP

Next rev 409 will be exceptionally released as public revision. This revision got unique reworks, notably AI (L2OFF GF 1:1) and pathfind systems (up to 100 times faster, see #for-your-eyes-only over aCis discord for screens proofs).

This revision got a lot of new content, and is far ahead of any other L2J pack in terms of AI fidelity with L2OFF - even the costier.

ENDING WORD

Thanks to all loyal people who have, will or currently support this pack - one of the very few to offer unique reworks.

L2J community, as a whole, unfortunately never stepped up or shined by its cleverness or integrity - and is more preocuppied to add poorly written customs over quality leaked sources.

The olympic medal goes to the poop-eater project owner applying straight leak, not even knowing what exactly is the changeset content (because yes, he doesn't know)... It's actually sad real people follow and pay for your work, but well, good job surfing on my own merits, I guess. Maybe one day you will go out of my shadows, and make your own path. That's the best I can wish you.

So, my thanks to the few beacons of light in this mere pool of shadows. That's essentially for you (and for my own pleasure, ofc) I continue to work on this hobbyist project - started almost 14 years ago.
#5
Newcomers, read this / Re: How to access private sour...
Last post by Tryskell - August 15, 2024, 08:47:52 PM
Cryptos section was slightly edited to reflect current state, it's not 2017 anymore so you have to choose crypto AND network.

I will deliver the deposit address by PM.

QuoteI will accept any cryptos from the coinmarketcap top 10th. Simply provide me in PM (discord/forums) the crypto/network to use (avoid ETH, big fees), and I will deliver you the deposit address in return by PM.
#6
Crappy servers / Re: L2Free returns on May 17th...
Last post by henrique - April 24, 2024, 12:22:09 AM
New season coming, begins on May 17, 2024 at 20:00. Server Timezone (UTC-3) :O

Server information updated in the first post.  :ork1_10:

L2Free.org  :hu1_4:

#7
Announcements / Re: Last aCis updates
Last post by Tryskell - January 29, 2024, 07:33:23 PM
Changeset 408 (3205)

TradeList refactor, Duel refactor, Handlers management, SpawnManager, Sieges, AdminCommands, Bugfixes, Organization


TradeList refactor
   - Use AtomicBoolean instead of synchronized.
   - Rework entirely buy/sell methods, which are now far more safer (notably TradeList#privateStoreSell, which was checking and processing transferItem in same time). A fail upon item transfer notably corrects total transaction price.
   - Few checks (being pointless or doubled) or even entire loops (calling removeItem instead of remove...) are dropped/avoided in few places.
   - Fix few issues :
      - BuyList is now properly refreshed upon inventory edition. Ty bios for report.
      - The strange adena issue is fixed (was due to removeItem not processing -1 as a special value but regular value, which was actually --1 -> +1). Ty bios for report.
      - Items aren't shown anymore as possible sellable item, if that item is already part of the SellList or is equipped.
      
Duel refactor
   - Big cleanup, deleting 1/3 of the class.
   - Abnormal effects are now properly cleansed. Ty MoodFreak for report, Diablo for the initial fix.
   - Play the lose animation only if WIN or SURRENDER, no TIE.
   - Don't play anymore the winner animation.
   - Don't countdown 5/4 upon 1vs1 Duels (5sec timer, starts at 3).
   - Restore Players conditions after SystemMessages.
   - Upon teleport, cancel active enchant and trades for Players, no matter the situation. Indirectly fixes "cancel trade upon party duel teleport".

Handlers management - by LaRoja
   - Handlers are now dynamically loaded based on their appearance in package. You don't have to manually set them anymore.

SpawnManager
   - Fix 3 invalid bosses dbSave. Ty Denzel for report, Bandnentans for fix.
   - Manually fix few territories (invalid nodes, bad Z, zone over Fortresses...).
   - Delete the whole magic behind setting a returning point from an offset of spawn location ; it's anyway mostly blocked by first returnHome check.
   - Banned territories are considered way before in the random location calculation of territories, which avoid to trigger Z/geo fail for nothing.
   - SiegeGuard#returnHome now also have a geopathfail logic.
   - Max iterations of random location search is reduced from 20 to 10 to trigger issues faster (will probably set back to 20 or even 50 when most territories are fixed).
   - Delete the whole for loop from MultiSpawn#getSpawnLocation for "anywhere" type, since Territory#getRandomLocation generate at least one point (last wrong iterated point).
   
Sieges
   - Control Towers, guards and mercenaries are anew Residence bound (was buggy since Residence rework) ;
   - Control Towers are now implemented as retail ;
   - Siege Guards won't attack you anymore if you're DEFENDER (produced by few scripts, mostly spells related).
   - Fix SiegeFlag NPE. Each NPC must have a Spawn.
   
AdminCommands
   - Revamp //tele panels.
   - Introduce //find item [name]. Ty melron for initial idea, StinkyMadness/CUCU23 for improvements.
   - Introduce //find npc [name], delete 6 related admincommands :
      - admin_show_spawns
      - admin_spawn_index
      - admin_spawn_reload
      - admin_npc_index
      - admin_spawn_once
      - admin_show_npcs
   
Bugfixes
   - Lotto and race tickets are generated differently, and now are bound to an objectId. Ty bios for report.
   - Fix petdata speeds, prior to converted classes to records commit. Ty Denzel for report and fix.
   - Fix ghost Pet over unsummon. Ty Denzel for report, LaRoja for fix.
   - Fix Q220 Radar misplacement. Ty FDX for fix.
   - Fix Q025 Triol's Pawn behavior.
   - AI related - Ty Bandnentans for fixes.
      - Fix ClassCastException from a regular AI script. Ty Denzel for report.
      - Fix SaintNinja script.
      - Fix QueenAnt, Orfen minions and Core scripts.
      - Fix LV3Orc script.
      - Fix GludioHold/GludioStand NPEs.
   - Don't send Npc SocialAction if in a blocking statut (dead, stunned, etc). Ty artemis for report.
   - Fix potential NPE over Siege#isOnOppositeSide.
   - Little GeoEngine#findPath fix (if originZ is too different from calculated Z) - Ty Bandnentans for the fix.
   - Update skills shortcuts upon AutoLearn config on. Ty hqsly for report, Rufo for fix.
   - Don't send inventory update over items which aren't in inventory. Ty FDX for report.
   - Fix NPE over teleportTo (regarding scripts Guards), introducing _isTeleporting as an AtomicBoolean. Ty Bandnentans for fix.
   - Potential IOOBE fix for boat movement. Ty Bandnentans for fix.
   - Fix 2 potential NPEs (if Config.SPAWN_EVENTS is null).
   
Organization
   - Triangle3D class is dropped.
   - Add Player#isOverweight method.
   - Add few records.
   - Rework ITEM_LOGS config
      - Indirectly fix an issue with pet inventory invalid item count. Ty Denzel for report, LaRoja for fix.
      - Avoid to spread useless parameters and generate Strings for nothing.
      - Shortcut most Item related methods by 1 up to 4 parameters.
      - Herbs ItemInstance objects are properly deleted when using addItem(int, int, boolean).
   - Addition of Residence#getTownName
   - MinionSpawn passively delete minion from master list if no respawn is associated to it.
   - Cleanup TerritoryStatus bypass, avoid a NPE if castle owner Clan doesn't exist.
   - Add Quest#createOnePrivateEx method with SpawnLocation parameter.
   - Delete NpcAI#setBackToPeace parameter (unused).
   - Delete GrandBossManager class (unused). Ty LaRoja for report.
   - Delete _isReturningToSpawnPoint variable (unused).
#8
Announcements / Re: Forum Announcements
Last post by Sido - January 02, 2024, 01:29:47 PM
Maintenance is over.
Please report anything that does not look right.
#9
Announcements / Re: aCis PTS "Blackbird" is on...
Last post by Tryskell - December 28, 2023, 09:29:10 PM
The download link of the PTS folder was refreshed, Google Drive being annoying and detecting viruses everywhere.
#10
Announcements / Re: Last aCis updates
Last post by Tryskell - November 15, 2023, 08:11:49 PM
Changeset 407 (3136)

JDK21, Pathfind, RelationManager, Boats, NpcData, Desires, AI / Script part I, SpawnManager, RestartPointData, Clan privileges revamp, ItemInstanceTaskManager, InventoryUpdateTaskManager, Bugfixes, Organization


JDK21
    - aCis officialy supports JDK21 !
    - Enhanced instanceof pattern matching from JDK14
    - ThreadPool uses virtual threads from JDK21
    - .collect(Collectors.toList()) > toList() from JDK16
    - Convert few classes using record pattern from JDK21
   
Pathfind
    - Abandon the buffer pooling approach, allocating wrong buffer size. Indirectly fix complex middle distance pathfinding being unprocessed.
    - Refresh the heuristics to use Euclidean. Give up diagonals heuristics leading to strange diamond shape pathing.
    - Big overall cleanup. Ty LaRoja.
    - Pathes are being executed up to x100 faster. Values don't exceed 50ms anymore. Ty LaRoja.
    - Thanks to previous point, MAX_ITERATIONS was moved from 3500 to 10000, allowing more complex pathes. The Config can be virtually deleted, but it is kept for security valve.

RelationManager - by LaRoja
    - Rework friend and blocklist relations to be handled simultanously, avoiding SQLIntegrityConstraintViolationException upon /friendinvite someone and then /block him.
    - Decrease the amount of SQL entries by 2, rename character_friends > character_relations. Introduce RelationManager.
    - Add missing THE_PLAYER_IS_REJECTING_FRIEND_INVITATIONS check - for non-GM player trying to invite GM Players.
    - Fix S1_BLOCKED_EVERYTHING check - it must check target's isBlockingAll statut, not player's.
    - Add FriendAddRequestResult for all negative checks.

Boats - by LaRoja
    - Rewrite Boat system ; data is handled by XML.
    - Rewrite boarding concept, which now works better than L2OFF.
    - Fix known issues (ghost boats, boats moving on territories, isBusy concept generating instability).
    - Boarding now trigger PEACE and NO_SUMMON zone types.
    - Trying to summon while onboard trigger proper SystemMessageId.

NpcData
    - Reparse all NPC templates using our internal parser. The data can be reparsed at will according needs.
    - Most stat values are now set as double instead of int to avoid to lose accuracy.
    - Many missing variables were added, aswell as all AI params, which are used by scripts.
    - Templates don't hold anymore enchant effect.
    - Attack distance is not calculated anymore based on weapon, but as a template variable. Fix indirectly all "exotic" weapon bearers (sarbacane, throwing knives...) which weren't considered as a BOW.
    - Minions don't have anymore min/max count.
    - NpcSkillType now hold all types used by L2OFF AI - from 6-8 to 111.
    - NpcType system is dropped.
   
Desires
    - All NPCs can now register "Desires", which are Intentions with a weight. Biggest Desire weight is processed - others are stored, waiting to be processed, allowing scripters to fully manipulate a NPC.
    - Added multiple missing events.
   
AI / Scripts - by Bandnentans
    - Deletion of main behavior of AttackableAI loop. All NPCs become "empty shells" and must be fully driven by scripts to handle their behaviors. A NPC without a script won't do anything, nor react.
    - Introduce DefaultAI tree based on L2OFF scripts, which add 150+ individual AIs instead of the 3 previous behaviors (FIGHTER, MAGE, HEALER).
    - Introduce all epic bosses - as retail.
    - Introduce all regular bosses - as retail.
    - Introduce all regular attackable trees - as retail.
    - Split //info ai and add //info script with running QuestTimers.
    - Aggro transfer upon Summon death is moved from Summon#doDie to script.
    - Implement Black Judge script. Ty Denzel for report.
    - Indirect bugfixes due to AI rework :
        - Attackables weren't attacking when mana is depleted. Ty stepbystep for report.
        - Attackables were idle if already buffed with similar buffs (eg. a Player launching Might on a Npc which could buff with Might, was making him totally idle). Ty stepbystep for report.
        - Bosses were struggling choosing the proper intention.

SpawnManager
    - Maximum number of NPCs per Territory is fixed. Ty Denzel for report.
    - Reintroduce //delete for Spawn (which is used by //spawn).
    - Introduce privates based on Spawn (811 occurences).

RestartPointData
    - Replace entirely MapRegionData - delete mapRegions.xml and add restartPointAreas.xml instead.
    - Implement RestartArea and RestartPoint, used by SoE/death teleport. Handle Race and karma based spawns. Data is parsed from L2OFF.
    - Delete spawns from TownZones. TownZones aren't considered SpawnZone anymore.
    - Extract MapRegionData#TeleportType and rename it RestartType.
    - Add //show restart [area|point].
    - Implement location localization upon PartyMatching.

Clan privileges revamp
    - Use PrivilegeType enum instead of Clan ints.
    - Delete _clanPrivileges out of Player. It's now calculated based on power grade and Clan.
    - Rework Clan#setNewLeader method.
    - Rework few packets : ManagePledgePower, PledgePowerGradeList, PledgeReceivePowerInfo, RequestPledgePowerGradeList
    - Add a missing sysMsg over RequestPledgeReorganizeMember.
    - Implement //pledge transfer - your target replaces his Clan leader.

ItemInstanceTaskManager - by LaRoja
    - Introduction of a lazy-SQL save of ItemInstances (1min task running for everyone), saving the vast majority of SQL queries related to items.

InventoryUpdateTaskManager - by LaRoja
    - Introduction of a single task allowing to process an IU packet.
    - Fix indirectly any type of visual issue :
        - Fix adena duplicate.
        - Fix harvest reward duplicate.
    - Avoid to send multiple IU packets, all operations are batched and executed after a short delay. In case of identical stackable items edits in short timelapse, only the operation is updated.
    - Delete all custom cases of ItemList used because of lazyness - except the retail ones.

Bugfixes
    - Cubic chooses enemy target based on owner isAttackableWithoutForceBy (which will handle all cases).
    - Fix the 1.001% elemental bonus deleting the attacker getAttackElementValue part off the calcElementalSkillModifier.
    - Fix teleport price upon weekends / 7s period. Ty Denzel for fix.
    - Fix //help search button. Ty l2drim for report, StinkyMadness for fix.
    - Add few missing sanity checks for PartyMatchRoom manage/join/answer. Ty MrThirtyOddSix for the report.
    - Fix quotes in .sh db installer. Ty Vladalien for the fix.
    - Fix a potential NPE over FishingStance. Ty newuser for the report.
    - Fix Lottery event end day. Ty henrique for fix.
    - Add missing db save for shortcuts upon skill addition. Ty Anarchy for report.
    - Rework //set sex/class switch to avoid the need of restart. Ty LaRoja for the fix.
    - Refresh Summon infos for owner upon effects removal methods. Ty bios for report.
    - Desactivate arrow based movement (buggy and exploit friendly).
    - Add distance check on L2Skill#getEffects. Should solve Olympiad prebuff. Ty BiggBoss for fix idea.
    - Fix NPE + ConcurrentException upon Festival of Darkness save.
    - Fix NewbieHelper NPC interaction when dropping Tutorial progress. Ty LaRoja for the fix.
    - Fix Petition system objectId management.
    - Fix an issue where the pet referenced by a Summon Item saved as "item on ground" was deleted upon server restart.
    - Fix missing visual effect over skillId 3159. Ty KejbL for fix.
    - Fix CP/HP/MP upon restart with Hennas on. Ty Denzel for report.
    - Fix client critical errors (all related to HTM max size excess) upon :
        - //info drop/spoil. Ty Denzel for report, LaRoja for the fix.
        - //list_spawns.
        - //info spawn, upon big amount of minions. Ty Denzel for report.
    - Make Traveler's weapons non-enchantable. Ty Denzel for report, LaRoja for the fix.
    - Fix Dual Fists weapons animation/damage. Ty Bandnentans for report.
    - Fix following behavior : casters, over failed cast check, must stop movement. The rotation towards target can't be properly added, NCZOFT aswell does it wrong and lately deleted it.
    - Rework getUniqueItems, adressing 2 issues - Ty LaRoja for the initial share.
        - You can now give back Apprentice and Traveler weapons towards Miss Queen (due to non-tradable state of the item). Ty x-user for report.
        - You can now put an SA over augmented items (you could already put an Augment over a SA weapon). Ty Denzel for report.
    - Fix mounted Player stats penalties using C2 notes. Ty Gigi85 for report.
    - Fix teleport as PK to owned castle or CH. Ty Denzel for report.
    - Fix the SQLIntegrityConstraintViolationException upon store manor data, reparsing manor data using AdvExt. Ty Denzel for the report.
    - Don't save CONT effects upon character disconnection (Battle Force, Spell Force). A SkillChannelizer handler would be the ideal solution, but it will wait for a potential Skill refactor.
    - Fix few Shadow Weapon issues - Ty RooT for the fixes
        - Every equip action / login must decrease lifetime of 1 minute, as stated by IL patch notes. The first equip doesn't trigger it.
        - Add missing messages upon destroying such item from inventory.
        - Add missing message upon disarming the weapon upon mana == 0.
        - isShadowWeapon() check was wrong.
    - Give the possibility to edit stackable items on a trade. Tu Anarchy for the report, StinkyMadness for the fix.
    - Fix the last NPCs unrelated to TerritoryStatus (NPEs upon null Castle).
   
Organization
    - Update MariaDB to 3.1.4.
    - //info over NPC now handle all possible //info types.
    - Move castle and clanhall classes under residence package. Ty Minutis for the idea.
    - More uses of TRUNCATE over DELETE FROM.
    - Drawn shapes using ExServerPrimitives now build vertical lines for a 3D visual effect.
    - Add few utility methods over IntIntHolder, IXmlReader and StatSet.
    - Fix big length Announcements formatting over //announce all. Ty artemis for fix.
    - New Players don't save anymore following values : karma, pvpkills, pkkills, clanid, deletetime, cancraft, online, isin7sdungeon, clan_privs, wantspeace, nobless, power_grade.
    - Delete characters table cancraft/clan_privs columns.
    - Don't load cancraft/online over CharSelectInfo.