Beginning of the cycle 380-389. Current focus : exploit fixes, scripts ending. Changeset 383 (1388) is up ! Movement rework - Part I, Sit / Shop fixes, Safe fall height, Bugfixes, Organization

Recent Posts

Announcements / Re: Questions & Answers
« Last post by Rootware on September 21, 2016, 07:59:25 AM »
In no way. Not sale now.
Announcements / Re: Questions & Answers
« Last post by UYFrank on September 21, 2016, 03:01:20 AM »
How can we pay for your geodata services?
Crappy servers / Re: L2 Order VS Chaos returns: 16/07 !
« Last post by sahar on July 16, 2016, 11:57:04 PM »
Today's action:

Crappy servers / Re: L2 Order VS Chaos returns: 16/07 !
« Last post by sahar on July 15, 2016, 11:43:32 PM »
The most imba factions interlude server is coming back to action!
Tommorow - new season - don't miss out the fun!
Announcements / Re: Questions & Answers
« Last post by Rootware on July 07, 2016, 11:20:02 PM »
Only for Geodata Customers.
Announcements / Re: Questions & Answers
« Last post by ArhsGr on July 07, 2016, 10:25:33 PM »
The project continue?
Crappy servers / [L2OFF]Lineage II Eternal Sin
« Last post by zoumhs on July 02, 2016, 08:49:39 PM »

Athena x45 Features List

- x45 Experience
- x55 Skill Points
-x200 Adena
- x20 Spoil
- x5 Seal Stones
- x1 Drop

- Weapons Information:
-Safe Enchant +3
-Maximum Enchant +20
-Medium Enchant Rate
-New Weapons - Ancient Weapons - Grand Bosses drop Raid Letter, these Letters will allow the player to exchange for an Ancient Weapon at the Ancient Merchant.

- Armors and Jewels Information:
-New Armors - Special Ability S-Grade Armory - Mithril Mines (Center) monsters will drop a spoilable item (Blood of Chaos) this will allow the player to add Special Ability to a S Grade Armor.
-Armors and Jewels Safe Enchant +3
-Armors and Jewels Maximum Enchant +8
-Hard Enchant Rate
-Shop about to B grades
- A grade weapons/armors traded from ancient merchant for sort of adenas and ancient adenas
- No A/S blessed grade scrolls in shop (Raid or spoil in custom zones)

- Customized Zones:
- Imperial Tomb Chaotic (76-80) Farm/PvP Area - This area was customized to a Chaotic Zone Area:
-Players with Karma won't drop items when killed inside one of the rooms;
-When a player dies in this zone, the player will be respawned to the teleport location;
-S Grade Weapons are obtained in this zone (Monsters inside the rooms will drop the weapons) - There's only this method to obtain S Grade Weapons
-Mithril Mines Entrance (65-75):
-Leveling area (Recommended 65-75)
-Seal Stones Farm (Green and Blue)
- Mithril Mines Center (76-80):
-Seal Stones Farm (Green, Blue and Red)
-Blood of Chaos Farm(Spoil) - Item required to add Special Ability to an S Grade Armor Set
- Mithril Mines Grounds (76-80):
-Seal Stones Farm (Green, Blue and Red)
-Blood of Chaos Farm(Spoil) - Item required to add Special Ability to an S Grade Armor Set
-Level 80 Raidbosses were added to end of this zone (Thief Kelbar, Anakim and Lilith)
- Customized Raidbosses - located in Mithril Mines
-These Raidbosses drop Raid Letter and a set of S Grade Weapons + *NEW* Angel Slayer with Evasion Special Ability
- Retail Raidbosses from 60-80+ levels
-bosses from level 60 to 75 in TOI drop Armor/Jewels A Grade sets, scrolls and Blood of Chaos
-Main quest bosses drop 1 S-Grade set, 1-2 s grade weapons, blood of chaos and scrolls
-Galaxia drops 3 S Grade Sets(Major,Draconic,Imperial) 3-6 S Grade WeaponsBlood of Chaos and Scrolls

- NPC's Added:
-Global Gatekeeper (Clarissa)
-Ancient Merchant: In this Merchant you exchange your Ancient Adena and add Special Ability to your Armor and Weapon
-Exchange Raid Letters for Ancient Weapons
-Purchase A Grade Armors / S Grade Armors
-Purchase A Grade Jewels / S Grade Jewels
-Add Special Ability to S Grade Weapons / Armor
-Special Merchant: In this merchant you exchange your currencies
-Exchange Seal Stones for Ancient Adena
-Exchange Event Medals for Hair Accessories
-Exchange Adena for an Adena Credit Card ( - Adena Credit Card)
-General Buffer:
-The level of the buffs aren't maximized, giving the purpose and utility to Support Classes (Hierophant, Sword Muse, Eva Saint, Spectral Dancer, Shillen Saint, Doomcryer)
-Castle Special Ability (Enchanted) - -This NPC has the feature of adding Special Ability to a weapon without loosing its current enchant value. (Example: Draconic Bow +12 - Draconic Bow Focus +12)
-Only available inside Castles (Examples: Aden Castle / Giran Castle / Goddard Castle)
-Available for S Grade Weapons only
-Raidboss Manager:
-Allows a player to get information about Grandbosses and Customized Bosses. (If they are currently alive or the time left to respawn)
-Account Manager
-Allows a player to edit his account password in-game.
-Magic Supporter (1,5KK AA each buff).
-Allows a player to receive a Prophecy. (Wind, Water or Fire)
-Player vs Player Merchant - Player vs Player reward system, a player earns Honor Medallions after they defeat another player in a battle.
- In this Merchant you can exchange your Honor Medallions for special rewards.
- Quests:
-Subclass (Quest required, Red Pipette Knife can be purchased in Misc Merchant)
-Noblesse (Caradine Letter level 65 can be purchased in Misc Merchant, Goddess Quest Items can be purchased in Misc Merchant, Killing barakiel can give you nobless status, if and only if you are in an active sub at level 75 and above)
- Every time a Clan leader party kill raid boss -> You will be granded with 300 clan reputation points.
- Olympiad:
-Retail like with the only custom option that it is weekly.
-Every player is informed on login, when the period ends and when new heroes will be performed
- Rune Siege:
Everytime that rune siege is running Benom will spawn at throne room
Benom will attack both clan(s)
He will despawn if you don't kill him in 2 hours:
He drops:
x1 Raid Letter
x1 Raid Letter
x1 Raid Letter
x1 Raid Letter
x1 Raid Letter
x1 Raid Letter
x1 Raid Letter
5.000.000 Ancient Adena
5.000.000 Ancient Adena
1-3 S Grade Scroll Armor
1-3 S Grade Scroll Weapon
1-3 S Grade Blessed Scroll Armor
1-3 S Grade Blessed Scroll Weapon
x1 Book of giants
x1 Book of giants
x1 Book of giants
- Misc:
-24+4 Buff Slots
-Auto learn skills
-Class Master
-Offline shop system.


Grand Opening: 11/10/2019 - 19:00 PM GMT +2
Announcements / Re: Forum Announcements
« Last post by Sido on May 30, 2016, 08:40:07 PM »
Really sorry for the up and down times, working pretty hard to solve the love we are receiving from some people.
Announcements / Re: Last aCis updates
« Last post by Tryskell on May 23, 2016, 09:30:20 PM »
Changeset 362 (578)

Knownlist system , pets fixes, misc

So, I decided to rework the knownlist system. I will explain why, what are benefits and how it worked/works now.

Old version :
Each object (item, npc, player, summon) had its own knownlist, aka a Map holding surrounding objects. Objects were added/removed according owner's region and a self radius (getDistanceToWatch)

Why it sucked :
   - You needed to update map every time you added/remove. Even if ConcurrentHashMap is performant, that could be painful on big operations (sieges, mass kills, etc).
   - The data was extremely redundant ; for 2000 NPCs, there was 2000 knownlist holding each 1999 entries (excluded himself).
   - The data could scale really, really fast according number of surrounding NPCs, leading to important RAM/CPU usage.
   - A task, called every second, was updating every single region (11260 regions) objects to forget objects.
   - Added to the data being extremely redundant between knownlists, the same info was hold into WorldRegion's object maps (as knownlist feed upon those maps).
   - The definitive list of possible targets was cutted first by getVisibleObjects(2000), getDistanceToWatch, then by radius, leading to compute multiple times the same thing.
New version :
   - We use WorldRegion maps as reference.
   - We use setRegion as an passive update system. Which means a single setRegion is needed to refresh every object included in surrounding regions.
      - Regions we leave (aka, old region neighborhood but not part of new region neighborhood) are updated with removeKnownObject.
      - Regions we enter (aka, new region neighborhood but not part of old region neighborhood) are updated with addKnownObject.
      - Leftover (shared regions between old and new neighborhood) isn't processed.
Benefits :
   - No more maps for every object = instant RAM save. No more dangerous RAM scaling when gathering important group of NPCs.
   - Cut a entire layer (before WorldRegion CHMap was updated, and WorldRegion's objects knownlists aswell. Now, only WorldRegion is updated).
   - The task was really heavy (11260 areas to refresh on a populated server every 1m) ; its drop delayed the GC cycle from 6min to 10min on vanilla aCis (cutted the garbage on empty server by almost 2).
   - Merge redundant systems and optimize the output (only 6 cells are updated in case of regular region change).
(Biggest) changes :
   - Revert from previous revision : ArrayList to CHMap to hold WorldRegion objects (wasn't correctly synchronized leading to ConcurrentException).
   - Whole package && KnownListUpdateTaskManager class dissapear.
   - Broadcast.toSelfAndKnownPlayersInRadiusSq method is dropped, as we are standardizing "distance" system.
   - Heavy rework of spawnMe, spawnMe(x, y, z), decayMe to avoid multiple setRegion calls (before : 2 for every L2Object, 3 for summons !). Avoid multiple addKnownObject() calls (bow use, setTarget) aswell.
   - setXYZInvisible(Location) has been added. Uses are tweaked (when spawning you don't need to setRegion(null), so we only update position).
   - PcTemplate holds player spawn under a Location.
   - EVT_FORGET_OBJECT event is dropped (no use, probably not launched at all).
   - WorldRegion setActive is processed instantly by setRegion method.
   - Fix : guards don't go IDLE if aggrolist is cleaned up, breaking aggro system.
   - Rework knownlist admincommand (includes a page system, as known objects number is way bigger than before).
PS :
   - To get knownlist, simply use object.getKnownType or object.getKnownTypeInRadius (all objects on the 9 surrouding areas = object.getKnownType(L2Object.class))
   - Computed knownlist don't show yourself. It shows any type of status : dead, visible, etc. You have to add your own conditions.
   - Always try to choose the HIGHEST instance type (ex: L2PcInstance for players, and not L2Object) to restrain list objects to a maximum. In addition, you won't need any cast.
   - IDLE state for NPCs should be achieved only if no players are left on region. It means the AI is detached from NPC.
Multiple pets fixes
   - Pet inventory isn't restored anymore (as pets inventory is transfered on inventory deletion to owner's inventory, the whole thing is useless).
   - On pet dismiss (or player restart), if the player does not have room in their inventory, these items will drop to the ground.
   - Pets cannot pick up arrows, Soulshots, Spiritshots, Blessed Spiritshots.
   - Cleanup L2PetInstance.validateWeight().
   - Refresh correctly pets inventory weight gauge.
   - Numerous cleanup :
      - don't send twice setShowSummonAnimation() info (inherited from L2Summon, no need to call on children)
      - Merge L2PetInstance.spawnPet() with its single usage.
      - Move setLevel from Pet initialization to restore(), which avoids double call.
      - Don't feed _petData on Pet initialization, as info would be wrong anyway. It's already handled by setLevel().
      - Don't set twice item enchant level (was called by setLevel() and SummonItems).
      - Avoid one call of PetItemList / broadcast status.
   - Wedding mod HTMs are moved in their own "mods" folder.

PPS : knownlist rework probably fixes any type of "ghost" issue (player/monsters which look to be here, but when targeting them they update).

PPPS : I thank "monkeys team" for the good job on reporting behavior. You're invited to drop what I sent you and apply this changeset (you normally have a problem with pets summoning, fixed with this changeset).
Announcements / Searching for laboratory monkeys !
« Last post by Tryskell on May 15, 2016, 08:27:55 PM »
I'm searching for live server owners who would like to contribute to aCis on a special way.

You probably know than testing things alone is extremely slow and unproductive. Most of the time, you don't even find issues when there are. That's where Laboratory Monkeys come from ; they got the power to report things really fast, but generally lack of developer.

Server owners who decide to become Laboratory Monkey got access to experimental codes and got priority about fixes. You also don't have to wait for the public release of the revision to get fixes.

Sahar cooperation allowed the fix of 40-50 issues. Why not you ?

  • A live server with at least 50+ players, sticked to LATEST aCis revision.
  • Server owner is ok/fluent with english writing - can write on aCis Discord
  • Server owner/developer can apply/revert code without I babysit him.
  • Server owner must be ranked Customer or Inner Circle.


  • Promoted to Inner Circle if cooperation is successful after few weeks (no need to pay for future revisions, for the cooperation time).
  • Fast access to critical fixes (no need to wait next public revision).
  • Get experimental fixes, so your server is the coolest server of the world.
  • Support the project on a unique way.

  • As you accept to test potential fixes, some can be bugged. Which means you can have to rollback to previous revision.

That's all, monkeys.