-1) on_doubleclick script explained at the second line of README file. If doesn't exist, the core creates it.
0) The documentation MUST reflect POL's event driven model instead of being an extensive EScript reference. The newbie has no slightest idea why thy should learn the script - we should give them the idea why. Doesn't have to be reworked, just a paragraph explaining the ideology would do.
1) Folders nightmare must end with scripts and config folders removed and servers.cfg placed in POL's root renamed to shard.cfg (becase why plural is not obvious).
2) use directive needs to be removed making every Core function automatically available.
3) "Distro" renamed to something that would convey its meaning and silently included into every distribution.
4) program directive must be explained in the first line of the README. Most people get it wrong.
5) servopts, combat.*local.cfg and uoclient.cfg merged back to the pol.cfg with all of the "expert" tweaking options given some sane defaults and just left off.
6) The very notion of a Core hook along exported directive removed with every current core hook placed to pol/pkg/core. I.e combat hook becomes pol/pkg/core/combat.src. Akin to scripts/misc/ which are essentially core hooks...
7) in fact pkg folder must be renamed to scripts with the old meaning scripts folders removed from the core and the documentation.
9) struct datatype removed from the core and array renamed into list giving it list::remove(object) // removes an object from a list.
10) think on the way to join on/canremove and inserts back into one giving it only 2 parameters: container and item.
11) Distro's gumps package embeded into core.
12) Storage system simplified to 2 API calls MAXIMUM.
..) Skills and regen rates should be Real datatype with rates expressed per minute.
...) Integer objtypes removed! from the core as it only used to create a coding terror by hardcore noobs. And aseparate call to create something non-existant in itemdesc.cfg but available in tiledata.
....) Have len() return error for anything but String. With < > <= => operators to create exception when used with uncomparable datatypes. That would save many lives! Thats the mother of all Chaos!
-) ecompile should have no options and just compile every script needs compiling (update option). It also begs to support all the cpu cores.
--) send_event to always send a dictionary containing sender and controller.
---) Sacrifice the flexibility for ease of use wherever possible. Yes, exterminate!
x) The most demanded feature .isa(POLCLASS_PLAYER) should see the light! Scripters tend have about 20 ways of doing it with 19 of these being essentially wrong.
This is rant or whatever it means. Itsn't not a demand or a way to start a flame. In fact, just disregard this message totally.