-
Posts
5,365 -
Credits
0 -
Joined
-
Last visited
-
Days Won
67 -
Feedback
0%
Content Type
Articles
Profiles
Forums
Store
Everything posted by Tryskell
-
Gracia Final Private Server Bug. Help!
Tryskell replied to Kostas912's question in Request Server Development Help [L2J]
Put graphics to the minimum, it speaks about "rendering water reflect shader material". -
For self teleport heading, you have to correctly address Player heading upon TeleportToLocation packet. CharInfo is only for others people who are appearing on a zone you are "seeing the first time". Will be part of aCis rev 382, it is validated on L2OvC.
-
It has been fixed since Kamael on L2J, so postIL chronicles, and probably few downgrades, aren't impacted. If you ask "why", I would answer "why not" ? If we use a base L2J IL, we inherit from all L2J issues. Whoever use L2J IL shares a common pool of issues than people can eventually see and fix. I won't blame you if you don't have EventTrigger, ShortCutDelete (than L2J doesn't even have nowadays, btw), ExDuelEnemyRelation or ExMPCCPartyInfoUpdate packets. Or one of the 20+ PvP event. It's all about seeing it, first. That's simply tell you than every project shares the same mommy DNA. Ty for the find. @sotid Everytime you addKnownObject a Player on your knownlist. Which is : teleport and enterworld. Few appreciations of that edit is on a market, people won't be on the same heading anymore, or if you want to backstab correctly a Player (which didn't yet move) upon teleport on pvp grounds.
-
Changeset 381 (1225) Updates, Cleanup, ClanHall, Bugfixes Updates - aCis officially support JDK11 (since Oracle changed their licence, consider to use OpenJDK), and is now mandatory. Older/different versions aren't supported anymore. - Refresh mysql connector from 5.1.26 to 8.0.15. Cleanup - Revert StringUtil#isEmpty(String... strings) logic. - Rnd.get(list) / Rnd.get(array) uses are unified over the source. Those methods don't send anymore default values, and will lead to errors if the given array is null. - Add Player#isWearingFormalWear(). - Add ExProperties#parseIntIntList. - Add ZoneType#addKnownObject / removeKnownObject. - Drop L2Skill isDemonicSkill() / isFlyingSkill() / isStriderSkill() - no use anymore. - Activation of the try-with-ressources warning. All impacted classes were cleaned up in the process (renames, CLogger addition, regular writting style, Stringified queries, Javadoc...). I won't list all changes, but there was something like 200+ warnings. - IdFactory - Merged with BitSetIDFactory. - Drop _freeIds.clear() on initialization (Javadoc says it sets to false by default). - Drop _initialized flag (unused). - Drop Collections.sort(usedObjectIds) (pointless). - Basic Duel packets cleanup. Add missing ExDuelEnemyRelation packet (with no use). Ty RooT. - ZoneType#getKnownTypeInside returns Collections.emptyList() if no characters are found - avoid to generate an empty List for nothing. Delete children classes isEmpty() checks. ClanHall - Complete rework of ClanHall system. Added to the regular cleanup (CLogger, Javadoc, Stringified queries,...) : - Improve clanhall admin management. - Usage is now //ch chId <set|del|open|close|goto|end> (one admincommand for all actions). - Clan Hall and Siege admincommands got now seperated AdminCommandHandler. - No more Exception on invalid parameter for both clan halls and sieges admincommands. - Fix clan hall doormen "To Beginning" button. - Change the way of attribution of ClanHallManagerNpc ClanHall (no subsequent ClanHallManager calls). - XMLize static data (moved out from SQL). Merge Auction db content with ClanHall db content. AuctionManager is dropped, Auction is now stored to the ClanHall directly. - Rework the fee task to be more friendly. - ClanHallFunctions are loaded in same time than ClanHall, to benefit from the existing Connection. ClanHall don't use anymore one Connection per ClanHall, too. - "Clan Action" panel is refreshed upon ClanHall free() method call. - Fix an issue with owned ClanHall bids cleaned up upon server start. - Upon setOwner() : previous owner got some actions made on it, fee task is renewed for new clan, existing ClanHallFunctions are deleted, outsiders are dumped out. - Doors are closed for both free() / setOwner() processes. Bugfixes - Implementation of EventTrigger packet + retail usage (castle traps visual effect on siege progress). Ty RooT. - Implementation of ExMPCCPartyInfoUpdate packet. - Add mods_wedding as part of restored objectIds (otherwise those ids are usable, while they shouldn't). - ShortcutList / Shortcut - Fix addition/remove/update SKILL shortcut type (manual or from trainer). - Integrity check upon addition (check MACRO, RECIPE, ITEM, SKILL types). - Fix cleaning issue for ITEM (dropping an item on ground was only clearing the first occurence of shortcut met, not others if existing). - Implementation of ShortCutDelete packet. - Olympiad Competition starts time seconds are set to 0. - EnterWorld exploit fix (create a special GameClientState ENTRING for the occasion, more infos here : https://acis.i-live.eu/index.php?topic=10070). - GMViewSkillInfo shows correctly disabled skills when wearing Formal Wear. Also refresh skills state upon equiping/unequiping Formal Wear. - Add back regular skills use for mounted players and cursed weapons users. Indirectly fix SoE and alike skills items for mounted / CW user. - Fix zone/region overlapping (can be tested on Giran castle active front trap). Ty bowling4soup. - Fix Q348. It uses L2OFF script for Blooded Fabric acquisition formula. - Add MultiSellChoose _entryId integrity check to avoid packet craft (avoid IOOBE). Ty Ghadda / bowling4soup. - Rework BrokenLabyrinth based on L2OFF GF. Fix an IOOBE. - Edit Linux shell scripts to automatically create log folder if not existing. Ty RooT. - Add CW SocialAnimation upon ranking. - Fix CW visual effect (goes from 1 to 10 stage, not 0 to 9). Ty RooT for tip. - Fix XP/SP calculation. HP ratio is already taken in consideration by template values. Ty Ghadda. - Revert previous edition of a config, based on Sahar observations - From -18104, 109992, -2656 to -18312, 110056, -2512 archers could shoot. PS : if you already own a live server, you have to add "?serverTimezone=UTC" as part of database URL. PS2 : you have to refresh your developement board : - OpenJDK 11 can be downloaded here : https://jdk.java.net/ - Eclipse 2018-12 or any IDE accepting JDK11.
-
Help Unstuck Location
Tryskell replied to Guarder's question in Request Server Development Help [L2J]
Since this method is used on numerous place and not only for /unstuck, you should care to clone the method and use it only for L2SkillTeleport, or to remove entirely the skill cast and make your own custom teleport method (broadcast MagicSkillUse packet, teleport, checks, etc). Otherwise it will also affect legit ways of teleport (SoE, expel Clan Halls / Castle outsiders, etc). -
Help Unstuck Location
Tryskell replied to Guarder's question in Request Server Development Help [L2J]
RECALL skilltype leads to L2SkillTeleport, L2SkillTeleport uses if (_recallType.equalsIgnoreCase("Castle")) loc = MapRegionData.getInstance().getLocationToTeleport(target, TeleportType.CASTLE); else if (_recallType.equalsIgnoreCase("ClanHall")) loc = MapRegionData.getInstance().getLocationToTeleport(target, TeleportType.CLAN_HALL); else loc = MapRegionData.getInstance().getLocationToTeleport(target, TeleportType.TOWN); So edit MapRegionData#getLocationToTeleport(Creature creature, TeleportType teleportType) to fit your needs. By default, you are teleported on a random location of the nearest town. -
Help Unstuck Location
Tryskell replied to Guarder's question in Request Server Development Help [L2J]
Escape usercommand, skill use 2100 for GMs and 2099 for regular users. -
custom Script for BlowSound
Tryskell replied to etherian's question in Request Server Development Help [L2J]
Using PlaySound is bad, with a script (or adding a new effect for it) is simply overkill. It got nothing to do with lag/performance (even if you save ressources simply tagging a boolean to true instead of creating new effects), it's simply ugly. One packet (which is already sent, btw) is supposed to do the job - that's how NCSoft decided to do it, no really need to argue about it, that's what the client understands - simply put the boolean to true to get a sound. The constructor you try to use is now private, check PlaySound packet uses to see the correct writting style (not sure why they used static approach, since a new PlaySound is anyway generated). Since the amount of skills is really low, you can simply hardcode it. Past in the time, I figured out than some skills launched status as 0, 1, 2 - so it can't be resolved by a simply boolean, and L2JFrozen fix isn't even complete (so it is both clunky AND incomplete). -
custom Script for BlowSound
Tryskell replied to etherian's question in Request Server Development Help [L2J]
http://www.l2jserver.com/forum/viewtopic.php?f=90&t=23583 Point 3. -
By "expired item", I suppose you speak about Shadow Weapon. PostIL chronicles probably uses the same timer/engine anyway. On aCis, it would be located into ShadowItemTaskManager#run() method, in the following "if" block : if (mana == -1) If you use another pack, simply search for S1S_REMAINING_MANA_IS_NOW_0 which is the destruction of the item when mana reached 0. If it's another system, simply check which message is sent when item is destroyed or when time expires, and put your teleToLocation in the block.
-
How do we split strings in java
Tryskell replied to mytuo's question in Request Server Development Help [L2J]
String#split generates an array of String based on the pattern you put as parameter, in your case \n, which is the symbol of new line. An array starts at 0, so a 100 size array goes from 0 to 99, getting the 100th, 101th, etc element would end into IOOBE (index out of bounds exception). To debug such crappy stuff, the easiest is to log each cut element and see if it's supposed to be cut that way. Use System.out.println(Arrays.toString(strs)); To see how your tokens are generated, if they are correctly formed, etc. You can also put logs into handleDonation to see what the transformed Strings are. @Kara` I got a gf, and I visit my friends (14y of friendship for the oldest) every month for some roleplaying session (I'm the DM). -
You have to edit AbstractAI#describeStateToPlayer(Player player). Probably a ValidateLocation could solve the issue. But if you begin to edit that, than you should solve more important similar issues. Social actions, casting skills, attack stance,... Basically any action, except movement, isn't sent.
-
You got multiple issues : * First one is about knownlist (players being far enough and refresh them, or relog event - both those 2 actions is supposed to fire addKnownObject from knownlist sytem) * Second one is about teleport (if and only if the region is the same). For the first problem (and another similar problem can be tested if a player A casts a skill while a player B teleports near him, in 99% of L2J projects you won't have any refresh and skill won't be visually shown for player B) is about AbstractAI#describeStateToPlayer(Player player) which misses packet calls. The only refresh which actually exists is about if player A is moving, but if he doesn't move then informations aren't sent. The second problem, which has been solved on aCis, is about TeleportToLocation packet which is supposed to get heading information. Here's my troll face for the support :
-
You probably can do x10 to x100 that sum per month if your server is successful. Some servers using aCis pack probably made more money in 6 months than I did in 10 years. You can also sell yourself your own codes, and make money. If you sell a custom 20/30€, which is a common price, you basically can have 20/30 revisions of aCis. I spend all my free time on this project, and actually I'm jobless (employeer didn't renew my job 3 months ago ; which explained why aCis progression jumped those last weeks). While I don't really care about the money people do on my back (and they are, I'm not naive), I think I still can be respected for the job I do. I don't need statues, really. The really basic form is at least to respect what I do for my community (and for MxC). You seem to be worried about 10€, but that's more than 10€ you simply denied me - while I got nothing to do with your whole story, should I remember you. It's np Exiledvp. If you got a question, create a topic on "Request Help" section. If I can answer, I will. I appreciate your words @Designatix ! <3
-
Help L2 aCis server online ( LF Tryskell after video)
Tryskell replied to Withmain's question in Request Server Development Help [L2J]
Show errors. -
I got subforums on those forums, and I participate to L2J section since 10y. I add views with my project, and I participate to keep L2J section alive. MxC got no reason to don't go in my way. Finally, for your heading problem, if it's not an aCis based issue, make a request help topic on those boards. And if it's aCis vanilla, you can directly report it on aCis forums bug report section.
-
If it's an aCis vanilla problem you can report any issue on bug report section, or directly on Discord if it's game-breaking. I fixed 800+ bugs reports since aCis exists (670 topics, but some topics got multiple issues). If you paid someone to fix something, I'm basically not involved, nor aCis project. If you follow someone call, well, maybe be angry vs that people...? And not me ? If a man insults you in the street, you probably won't punch back a random woman who was passing nearby, right ? Nothing stops you to make a "request help" topic on MxC forum. If I got the answer to your question, I generally answer. @Elfo, I know you're part of the sharing people with your l2kt project on L2JBrazil (or even previously, when you were angry), but I know than your project won't move. You are basically harmless, you will stick to 380, code for 3 months and change of idea. Meanwhile I will move to 381, 382, 383,... You simply follow my lead. In your particular way. The problem is about people who share latest and stick to share latest. It's really not sweet, and while others aren't respectful, nothing block you to be respectful towards the amount of work I did. Better goes in my way than the versus, that's better for anyone.
-
Not sure why you want to deny me 10€ / contributions. That could be explained if I scammed anyone, but I'm helpful, I share exploit fixes for everyone, and my project is my project. Use another project if you're unhappy. If you simply share my work, you simply deny my work and the way my project works. While there isn't legit way to block the redistribution, It's just common sense to avoid to get sources shared. First because you remove me some "income", second because you block my contributors system. Third because none got control over what is shared - it could be backdoored, people simply can resell it with higher prices stating it's fixed but none can control it. I got the freedom to share, as I got the freedom to stop to share aCis. If you want one day aCis ended, maybe you should follow my lead. Moreover, if you dislike my project nothing stop you to begin from L2JIL, as I did. Actually I'm the only dude who did that. If you like the project, simply read my rules and contribute to the project. Sharing the project randomly simply delete contributors aspect (none will share) and possible income. Not sure why you are so much happy about it.
-
Help What client animations does the server utilize?
Tryskell replied to NoldorL2's question in Request Server Development Help [L2J]
On aCis, RandomAnimationTaskManager handles the behavior. NPCs are registered into it either when a region becomes active, or when the NPC intention is set to ACTIVE using startRandomAnimationTimer(). _lastSocialBroadcast guarantees a social action can't occur lesser than 12sec. Broadcasted animations are 2 and 3. Special bosses got specific animations, used by cinematics (Baium wake up, Mad Doctor,...).- 1 reply
-
- 1
-
-
Help L2 aCis server online ( LF Tryskell after video)
Tryskell replied to Withmain's question in Request Server Development Help [L2J]
For a localhost server you got nothing to edit, simply edit your hosts file from C:\Windows\System32\drivers\etc adding 127.0.0.1 L2authd.lineage2.com It's generally enough to connect. For an IP bound server, only edit the loginserver config if both ls/gs are set on same computer, gs will pick ls config. Verify all your ports are opened. -
Creating server from zero.
Tryskell replied to Withmain's question in Request Server Development Help [L2J]
Tutorial made for aCis, but work virtually for almost any project. For L2J git checkout, use their tutorial http://www.l2jserver.com/#getstarted-advanced -
Help Erreur Dark Mystic Help Me
Tryskell replied to p_mirko's question in Request Server Development Help [L2J]
Your skills trees XMLs aren't parsed properly, therefore all methods using it fail to find values from containers (NPEs). Revert whatever you did on XMLs. -
Help Raidboss earthquake
Tryskell replied to Guarder's question in Request Server Development Help [L2J]
Edit fourth parameter of the Earthquake packet. If you don't know where's the use, search for all occurences of "new Earthquake(" on project scope.