Quanto a liberação de modulos, tenho certeza de que não é necessário mais que 1 semana (sendo muito exagerado) para criar uma cópia dele.
O importante é o que está no seu servidor. Não adianta nada ter o modulo do cliente se ele não é compativel com seu servidor.
Em relação ao "bug" do order.
int32_t LuaInterface::luaDoMoveCreatureToPosition(lua_State* L)
{
//doMoveCreatureToPosition(cid, position[, minDist = 0, maxDist = minDist])
int maxDist = 0, minDist = 0;
if(lua_gettop(L) > 3)
maxDist = popNumber(L);
if(lua_gettop(L) > 2) {
minDist = popNumber(L);
if(lua_gettop(L) < 3)
maxDist = minDist;
}
PositionEx position;
popPosition(L, position);
ScriptEnviroment* env = getEnv();
if(Creature* creature = env->getCreatureByUID(popNumber(L))) {
std::list<Direction> listDir;
if(g_game.getPathToEx(creature, position, listDir, minDist, maxDist, true, true, 10)) {
Dispatcher::getInstance().addTask(createTask(boost::bind(&Creature::startAutoWalk, creature, listDir)));
lua_pushboolean(L, true);
}
else
lua_pushboolean(L, false);
}
else
{
errorEx(L, getError(LUA_ERROR_CREATURE_NOT_FOUND));
lua_pushboolean(L, false);
}
return 1;
}
Declare esta função no luascript.cpp.
E utilize-a no script de order.
Eu cheguei a olhar o código do order postado no issues do otclient. Que vergonha.