Jump to content

Tryskell

Legendary Member
  • Posts

    5,359
  • Credits

  • Joined

  • Last visited

  • Days Won

    62
  • Feedback

    0%

Everything posted by Tryskell

  1. Movement is a complex (not the hardest, but still) code, unfortunately giving you an "exemple" would be basically coding it for you. And launching yourself on such thing without experience is bad aswell. Eventually, read old L2J code, movement is working "ok" - at least it doesn't have your type of issue. Try to mimic what exists, on whatever pack the feature is working on. You can begin to quote moveTo and unquote moveToPawn and figure if it works better or not.
  2. As says Nightw0lf, classes in general got "L2" dropped and the instances were renamed in a single revision during rev 367. General rule is to drop "L2" and "Instance" out of it, the exceptions are listed in changeset 367. About regular classes and methods, they also can be renamed, merged, refactored - it's largely splitted over aCis history - 36th cycle was almost only about it, and laterly was regrouped under Organization tab since rev 382+ (package holding all enums, addition/removal of methods, etc). If you manage to re-adapt a code, consider to share it back on the associated topic. People forgets to do that, those days.
  3. moveTo goes on the exact same spot than X/Y/Z. It uses MoveToLocation packet, which got no specific content about offset. Use moveToPawn to set and handle an offset. If you can't use moveToPawn (for no reason, but let's say you can't), edit updatePosition in order to handle offset and call a stopMove if you reached the place (if offset > 0 and dist < offset return true). It's definitively not what L2OFF is supposed to do, but it will work. Without proper offset calculation/handling, everything like bows etc will make you melee.
  4. @xJustMe answer is fine, eventually make the difference between leader (in red) and regular members (in blue).
  5. Just as a sidenote (for aCis), the AI thing takes a longer time than expected because L2OFF data isn't reliable at all and we struggle to find decent data to parse (current version is like 15+-1h respawn time for boss and 3x the amount of spawns sometimes, for something tagged/shared as "untouched"). C5/IL content is handwritten as if you or me had it written manually - and we probably could do a better work. L2OFF IL is a fucking clown, if you ask me. I'm sad to be an IL lover, that would be far more simple with C4/GF (probably would be already done with C4 since they got far lesser systems/AI types). The parsing itself is done and repeatable at will, the core logic is mostly done (regular/regular bosses/70% grandbosses). The leftover will be AI exceptions (particular individual AI), which won't run any AI time we find/do them.
  6. for (WorldObject object : getKnownType(Player.class)) { if (object instanceof Player) { sendInfo(object.getActingPlayer()); } } > getKnownType(Player.class).forEach(p -> sendInfo(p));
  7. Name appearing as null is fine, since it's the name the pet owner decides to put which is taken in consideration - and by default, no pet got any name. The "null" appearance only occurs on custom (admin) messages, so it's not problematic aswell since nowhere else client finds such info. We can use template name if no personal name exists, but that's only for aesthetic purpose. I will make a commit for that. The inventory flute with "no name exists" is also, perfectly fine from the moment the owner didn't set any name (same on L2OFF aswell). If he sets a name, the value is edited. About the interaction itself, I tbh don't remember if I had to fix such issue between rev 401-latest. It works as intented on the PTS, which uses latest..
  8. You probably make something wrong, since everything is on the good place. https://gitlab.com/Tryskell/acis_public/-/tree/master/aCis_gameserver/config ---- About aCis we're working on retail AI implementation since almost one year, it will simply slap every single L2J project's face by a FAR, FAR margin on the AI question once it's fully operational. Lucera, until they made major changes, wouldn't compete anymore - since they use the basic L2J RU fork than any russian is using (eg. L2Scripts included). Regular monsters and few bosses are already testable on aCis PTS.
  9. https://stackoverflow.com/questions/62637584/how-to-set-default-jdk-compliance-level-and-release-enabled-in-eclipse-jdk-prefe https://stackoverflow.com/questions/50734953/how-to-set-jdk-compiler-compliance-level-to-10 etc. Do some search, it's your environment which needs some fixes.
  10. Edit your Eclipse compiler JDK compliance. Also be sure to use latest Eclipse.
  11. Delete JRE (which is version 8 btw) and install JDK 11.
  12. Well, you're kinda heroic to edit all those data to match your own needs. I wouldn't get the same patience :D.
  13. I see you created a reddit about it 2y ago but nothing inside. "A D2 mod for L2" -> how does it even work ? Just curious.
  14. I heard a lot about Ashes, if you manage to make a MxC guild I would eventually join when it's up (I'm support, generally healer, btw). Hopefully, we don't wait for nothing. Those days, games are launched while they're not even ready.
  15. I played L2 mostly on C3/IL private servers (Dragon Network x5, Dragonians L2OFF), then on retail when GoD was released (around lvl 86) and except few hours on L2OvC (released by my laboratory monkey Sahar), I never played again on a server. I play TESO, some Satisfactory and I was on the Dark and Darker playtest (unfortunately it was only one week of game and I played for 3 days) those days. Most of my MMO experience is on non-Steam games : Warhammer online (where the private server state is way worst than L2J btw - mob don't use any skill), Rift, Dungeons & Dragons Online, Star Trek Online, Aion (private server), Fallen Earth, Black Desert Online, Lord of the Rings online (was collecting the Turbine Points to unlock multiple zones), Vindictus, APB Reloaded, Defiance, Planetside 2, Perfect Online,... I got probably multiple thousands hours of games on all those MMOs, played more than 15 for sure with heavy hours spent on.
  16. It's not the packet which generates the issue, it's what happen after - IN RESPONSE OF that DeleteObject packet. Which explain why laRoja/AbsolutePower use ThreadPool to differ execution.
  17. Sorry, but I have already chosen other battlefields to spend my time on.
  18. aCis was totally free until mid 2012, then 1€/rev until 2021. The multiple thousands hours of work of my whole community worths far more than actual price. None requested to promote your project on an help request topic related to aCis (which seem to be a trend of your, like our previous dialogue). Moderators do their job when they have to, I don't need to call them, you make a fool of yourself alone and you probably broke rules. Don't victimize yourself when you are wrong. I actually answer when someone speak about my project on public forums, which is normal and is my right. It just feels normal to correct something when it is actually wrong. Also, debating (when there are arguments) should be natural. By the way, I still wait your proof about my "russian dev hiring". You should thank moderators, really, it actually helps you not being seeing as a giant . Hopefully you're lesser than 20, otherwise it's dramatic. You should learn to use facts, numbers and avoid to craft things out of your mind to make yourself more competent and more trustful. I cut the offtopic here ! You forgot the part where I said it was generating a critical error on client.
  19. Direction never changed, it always focused about retailness, with uneeded dropped customs and an emphasis about dropping existing content to rebuild it (skills and scripts were deleted in 2011 - you can't say I changed my way of doing things, it was always like that). Rev 220 isn't really different than L2J IL vanilla (with maybe 100~ fixes and a overhaul step-up using L2J GF, then L2J H5), since most of the changesets were extremely short and mostly based on skills/quests re-addition. The first 220 revisions are maybe the size of 50 current revisions in terms of size, and definitively not the best ones in terms of content (I mean, except the GF/H5 overhaul, it is simply L2J with L2J issues). The first 50 revisions are even shorter and equal maybe 5 current revs. You basically don't even know what is currently aCis, and I would be perfectly fine with it if you weren't insulting randomly, based on strictly nothing since you got 0 arguable point to do about my/my community work, since you stopped to follow it around 2011 (eg,10y ago for those who are bad in maths). For one time, the flow of trash which generally comes from your mouth is actually right. 2011-2013 was basically upgrading L2J IL using L2J GF/H5 (trade sanity checks, olympiads rework, C5/IL skills addition, partymatching addition,...). There is nothing to be ashamed about or to laugh about, I planned it like that. Unlike you, I didn't sit on other ppl faces to make it. It's cool if you didn't have to care about all that, since others did the job for you, but I had to do it since I had no pack to copy-paste (unfortunately, Sethek which was under L2JArchid dropped his timeline so I couldn't base my job on other ppl fork).
  20. And you missed my part where I said the development wasn't worthy the spent time. How much hours do you think you need to handle the perfect behavior - giving the fact it randomly client critical without timer - for which benefits ? It's a simple admincommand, if you spend more than 30min doing it then it's not worthy to be developed further. And that's why I never personally cared about it, since it's just QoL stuff. I don't want to spend more than 30min to pick all possible packets from L2PHX properly, add it in the good sequence... All that to probably figured out it was impossible in the first place, because IL client is IL client and client wasn't developed to handle that stuff. If you think you got the time and the will to do it, simply do it and share it, that will help people out there - but don't random taunt out of nothing (eg "your pack is trash") - moreover when you specifically said retailness isn't your business, meaning you got actually no clue what I'm doing and will probably never be interested in what I'm doing since you stucked yourself to rev 32x or so. Don't be "that" randomer stucked in 2015 stating I only edit class names for fun and/or money and/or lack of skill (which, btw, was the main point of the said cycle, "organization", back in time). It's enough to read aCis changesets to understand you are wrong.
  21. Feel free to deliver a "not expensive" version of it instead of random taunting. Everytime I read you there is like 0 added value and it's a waste of time. You're like a fucking NPC, even my scripts got a less predictable behavior loop than your.
  22. laRoja share was committed with slight edit on 406, +10 cookies for him. I set 4sec as timer, since 3sec still could generate critical (and 1.5sec 100% does it). I won't dig deeper in that, since it's only an admincommand and the ratio spent time / interest is extremely limited.
  23. Your main problem is server owners won't run concurrency versus their own servers, simply because "Player" ressource is limited, and they gain nothing to split an already limited amount of Players towards multiple servers. If so, it basically means the end of their own servers - because people trend is to go to the most populated server. So, server admins will better do a single 400-600 player server, which seems "popular" for newcomers rather than 3 servers filled with 133-200 people which will, in the end be deserted by players due to the low amount of people. I believe you, as MxC, should either "swallow" some existing community/ies, or make your own servers from zero and (try to) kill the concurrency. Someone who managed to make money / get its own fame and got consistant 1k playerbase probably don't need to be advertised anymore, and even if so, they probably would prefer to keep their full independancy (aka full control over forums/name/whatever). What you offer is basically perfect for "newcomers". It's actually extremely easy for you to handle such state - you offer all you said, and if the server is successful (have to be defined) you keep it in the MxC rooster otherwise you delete it. Server admins tried without losing "much" money, and you allow MxC to get some traffic. It will basically cost you a "poll" topic, where poller is a "> 50 posts and > 1 month" user, to define if "this" or "this" server is wanted on MxC.
  24. There is rarely 1k+ online players per server nowadays. That was true in 2008, but 14 years later if you got 500 REAL players you can already consider it successful. Playerbase is now either based in RU or BR, that's where 90% of your 1k+ ppl servers are. EU "left the chat" since few years already (it's easy to see it in L2J development section aswell). I doubt 1k+communities will want to get their own fame "diluted". You probably also want ppl to keep their server name aswell and simply put L2MxC in front of them. The name is actually important if you want old playerbase follow. Your next consideration you should take is to launch yourself, with your own team and money, your own servers and keep them alive - like any community does, basically. To short it up, you maybe speak to 10 admins actually, and off those 10 you maybe will get 1-2 answers. Just my 50 cents. Good luck with your project !
  25. If the point is only to retrieve item name to put it in a NpcHtmlMessage, you can use the client option "&#"+itemId + ";". Obviously it only works if you properly edited client to reflect what names are on the server, but it's by far the cheapest option. So you only String weaponName = "&#" + rs.getInt("itemId") + ";"; or even better, you integrate it directly into your ret String and you put your different rs.get methods directly into String (you can then delete the first 7 lines, for loop included, and keep only ret +=).
×
×
  • Create New...