Last aCis updates

Started by Tryskell, January 04, 2011, 10:46:15 PM

Tryskell

It's stupid, I update my "marketing" thread on MxC saying updates, but I never warn you on my own forum, dear users  :).

This topic will be updated to each commit, with a copy/paste of changeset. Like that if you're lazy to check timeline, you just have to jump here.

It begins in revision 28, for others, you got timeline... Lazy asses.
<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

#1
Changeset 28

AccessLevel rework


  • Deletion of the two ancient systems to add the new one. It uses 2 new tables, one for admincommandhandlers, the other for the different access states.
  • By default, the "root" access is 127. He got all rights, and can't be modified via configs. Others accesses are from 1 to 5, you can customize them as you want (rights, colors, title names,...). 0 is for normal user.
  • By default, all commands are put to 1. Need more infos about the child access system. Well, play with buttons to make priviledges work.
  • At your first login, and if you didn't change your access in characters table, your access should be reseted to 0, as 100 isn't a right access number (by default: 1, 2, 3, 4, 5 & 127). So before log, change it in your db.


Others changes :


  • GMAudit model have been moved to util folder. It's used actually only for admincommandhandler.
  • getMessageRefusal() & setMessageRefusal() have been modified to isInRefusalMode() & setInRefusalMode()
  • dietMode have been deleted (GM stuff). If you want to wear a lot of items, MAKE A DWARF ! Their dances are funny too...
  • deleted FightCalculator? stuff. Except if someone explain me the use of it.

I have to warn you : many "links" to commands are bugged. As I use the Freya SQLs, and as many commands have been modified between this time and IL, some commands will be shown as "non existing handler for command admin_xxxxx". I wait the commands refactor to care about (and the html part need a total relook too).

So make a single error thread in forum, & report all missing commands to help all users.
<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

Changeset 29

CharacterCreate packet rework.
<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

Changeset 30

Faenor & events deletion

Who uses that anyway ? Delete both event engine and Faenor (compiledScript like Valentines.zip) stuff. You're now free to put any event engine you like.

Report on forum if anything occurs.
<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

Changeset 31

Logs rework


  • refactored (use StringUtil instead of TextBuilder)
  • cleaned (moved them into log folder).
<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

Changeset 32

Trade commit

Fix a lot of things, add many checks, "freeze" many data. Thx to Chr.Trance about scam exploit report & some parts of fix code.

You have to test Trade, Buy & Sell shop. Do a lot of tests, as code is "semi-experimental". Be aware about both seller and buyer amount of adenas. I did a couple of tests and normally all work fine, but still, test :>.

The maximum amount in a trade is 1,999,999,999. It takes in consideration both price and amount. You can't sell 1 item for 2kkk, as you can't sell 4 items 500kk each, etc.
<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

Changeset 33

ChatHandlers refactor

As PartyMatching doesn't move '-_- (no one help with those packets), I commit a little one.


  • Add blocklist check on all, trade and shout trades.
  • Add checks on Say2, rewrite some parts of chat handlers aswell (using collections, this sort of stuff).
  • Add L2Walker protection, based on keywords. Option put on "False" by default, server.properties.
  • Finally, deletion of social actions custom. It was too much primitive and bad coded.


About L2W protection, if it isn't working, give me IL L2W commands. I based my hope they didn't change it from IL to Freya. Share section is your friend else.
<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

Changeset 34/35

L2SkillType / L2EffectType refactor

Both are needed in future. Check changesets if you want, there shouldn't have nothing to test about.
<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

Changeset 36

BaseStats add


  • Basically, go with the 2 last commits in the "don't care" section o_o.
  • It uses a new file, located in data/stats, and named statBonus.xml (else you got massive error, so easy to remember it).

Others


  • Remove of double setCurrent(HP/CP/MP) in L2PcInstance restore() method (need perhaps more tests about);
  • "Debug" of AutoLootRaid (it was a missing space, don't write "true "... I tested it is working);
  • Added some limits which were missing (max runspd limit was totally missing, max critical rate was fixed to 500);

<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

Changeset 37

Zones updates (692 overall)


  • deletion of many useless vertices from Gracia++;
  • deletion of some areas which aren't supposed to be Peace Zone (rift public room, Ivory Tower).
  • correction of the 2 stupids castle areas which asked for cuboid parameters when they where NPoly. No more areas bugs logs.


<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

Changeset 38 / 39

Augmentation packets rework, Max lvl fix


  • Can loose % if reached lvl 80 & 100%;
  • Can apply all types of LS on any type of weapon.
<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

Changeset 40

Skill refactor, part 1 on... Dunno

Sooo, here it is : skills refactor.

Where to begin... Well, I won't do a list of what is it corrected. Just understand it's a 13k patch line (without counting datapack, modifying AIs, L2Character, L2Skill in their globality). Let's jump directly to issues I know, and what you haven't to report.


  • "storeSkill() couldn't store blabla" message is because many skills are missing. It comes only at load of any characters.
  • the huge list of GS errors is due to restricted items which need a full refactor. Basically I have to refactor entirely items load (use XMLs instead of SQLs tables).
  • ingame, you should miss many skills. Once again skills aren't all rewritten, you got 1/6 of skills (or so ?). So test skills you see, and don't bother with missing ones.
  • an issue about monsters exists. You have to stop to make mobs spawn. If you walk/run all time, you won't met any mob. This is due to ValidatePosition? rework, some other work is needed to make it work back. You will live until I rework, aren't you ?
  • as you perhaps don't know, many items (soe, etc) use skills to be casted. As they miss, the result is a NPE each time you use an item using a skill. In the same order of idea, as armors sets / weapons SAs use skills, some GS infos can come about missing datapack skill (armorlistener blabla).


Now the good part :


  • test each rewritten skill, and tell me if the current behavior should be modified. You have to test each skill one by one, and if possible to check XML about effects (as I used Freya XMLs, I know some errors are existing).

I have to remember to you each XML have to be rewritten, and items have to be refactored (so others xmls...). Topic about missing skill or error reported in this comment will be eradicated from forum without any type of warning.

Old XMLs skills have to been deleted, and replaced by the 4 shared in this commit. Two SQLs tables have to be deleted aswell and replaced with new ones. There aren't issues to delete them.

If you find errors about :


  • XML : post in datapack section.
  • GS errors launching a *REWRITTEN* skill : post in core section.
<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

Changeset 41

Some random corrections

Ty SweeTs for skills reports, I wait more :).


  • Insane damage on some skills : cAtk => cAtkAdd (corrected 2 skills);
  • Relax effect debugged (chameleon rest is affected aswell).
  • Added an aggression intention on TargetMe? effect (affect only L2PcInstance, mobs have their own aggro system based on points);


  • Added some L2SkillTypes as pvpskills (aggression, manadamage,...). Check L2Skill.
  • Deletion of Universe (useless stuff). Even Chuck Norris can't do it.
  • Basic (-'"*correction*"'-) for statBonus, but I had a whiner for that. Better to (-'"*correct*"'-) before I got a second.
  • Added back the 2 peaceful areas (ITower and central rift room), ty Sim.
  • Added the database_installer for linux type. Ty Vrugar for complete rework/tests.
<html><body>Triskel:<br>
Triskel does not speak with foolish fellows who do not know their profession!
</body></html>

Tryskell

#13
    Changeset 42


    • summons cast formulas changed (need to recode xml to get summons and see if I don't fock soemthing...)
    • "has resisted" messages corrected
    • isUndead() have been modified. No more values in sql, it directly does the calcul on Race.UNDEAD. If you don't want to drop your npc.sql, design your table and remove the isUndead column.

    Changeset 43


    • Refactor of DecayTaskManager? (added different delays according of RB/spoiled-seeded/normal mobs);
    • Moved pvpflag from L2Character to L2PcInstance;
    • Added the condition to drain corpse ("corpse is too old" message if you drain too late).
    • *forgotten to say on commit* Animation timer for NPC social actions (6 seconds minimum before each packet send)

    I just saw some effects like Sting still continue to show a "has resisted your" blank message. Don't cry on forum then :P.[/list]
    <html><body>Triskel:<br>
    Triskel does not speak with foolish fellows who do not know their profession!
    </body></html>

    Tryskell

    Changeset 44

    Some reworks :

        * CharTemplate? rework (and many files related to race/class)
        * Classmaster rework (new configs)
              o give available skills
              o give noblesse
              o do the old stuff he did before but better :D
        * VillageMaster? rework
              o give now the possibility to rename pledges
              o all subclass options are reworked
              o one VillageMaster? as "core" of multiple VillageMaster? instances (to handle class/race restrictions).


    DP side :

        * NPC.sql to drop and change
        * many htm to put in good place.


    The classmaster have been verified, about subclass I'm not in fond of admin commands so I didn't know how to give quests items (lol), so couldn't test (arg).

    Htm have been c/ped from Freya and put in form, so shouldn't have problem.

    Didn't test pledges names, but should work, if I didn't miss anything database sided.
    <html><body>Triskel:<br>
    Triskel does not speak with foolish fellows who do not know their profession!
    </body></html>