The problem with ACPs is that they require the player to be offline for most of the actions to happen.
A while ago i started coding a acp that connects to a restful api which runs inside the l2jserver, so that every action is instant and it uses actualy l2j code to execute, so the acp itself acts like the middleware.
Abandoned it as it doesn't really worth the effort (at least for the way i value my own time).