• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Otclient Classic UI

I can login to my server using the OTClientv8, or the normal 8.0 client. But not with this OTClient. Does anyone have any idea what may be wrong? This is my init.lua:
1710073479107.png1710073514735.png
 
I can login to my server using the OTClientv8, or the normal 8.0 client. But not with this OTClient. Does anyone have any idea what may be wrong? This is my init.lua:
View attachment 82892View attachment 82893

It has to do with the files in the folder gamelib. I fixed it by using the gamelib files from the standard otcv8 client :)
Post automatically merged:

Is there a way to fix this? I am using the 7.92 sabrehaven server. The original OTCv8 works fine and I use my own sprite and dat file that works with the otcv8.
 

Attachments

Last edited:
It has to do with the files in the folder gamelib. I fixed it by using the gamelib files from the standard otcv8 client :)
Post automatically merged:

Is there a way to fix this? I am using the 7.92 sabrehaven server. The original OTCv8 works fine and I use my own sprite and dat file that works with the otcv8.

Probably just your game_features

g_game.enableFeature(GameTileAddThingWithStackpos)
 
How to change or select clothing for the otcv8 pattern? with option of shaders, auras, mounts?
 
Can anyone help me with this? replace the game_outfit with a common otcv8 one, to try to work like mounts, auras, shader... but without success, (about features, I'm using those from my main client)
outfit erro.png
 
Can anyone help me with this? replace the game_outfit with a common otcv8 one, to try to work like mounts, auras, shader... but without success, (about features, I'm using those from my main client)
View attachment 86106
You cant do that. You have to add with the original outfit.otui the new slot for mounts and addon or try to get from another otversion like otg-br client
 
hello everything is fine

Has anyone managed to insert the module trainer into this client?

and the analyzer module
 
I would like to set the same hotkey as in version 8.0, could someone help me?
 
Like a charm :D
jbt0S1c.png

Now i need to make adjustments to outfit window same goes for hotkeys :P
5S8h76P.png

This one is a masterpiece :D -
damn, didnt notice it was 2 yeard old post. but, by any chance, is it possible to download this game_outfit module from you?
 
Heyo! I've stumbled across this problem using the classic controls, when I try to attack a monster that is standing on a recently killed monster, I just keep opening the dead body instead of attacking the other monster. If I hold ALT while attacking, it works correctly. But this shouldn't be necessary when using classic controls, should it?
ezgif-2-5375a86211.gif
 
1731086230201.webp
ted lua call failed: /modules/game_outfit/outfit.lua:425: attempt to index a nil value
stack traceback:
[C]: in function '__index'
/modules/game_outfit/outfit.lua:425: in function 'nextOutfit'
/modules/game_outfit/outfitwindow.otui:34: [@onClick]:2: in function </modules/game_outfit/outfitwindow.otui:34: [@onClick]:1>
ERROR: ProtocolGame parse message exception (86 bytes, 68 unread, last opcode is 0x00 (0), prev opcode is 0xc8 (200)): InputMessage eof reached
Packet has been saved to packet.log, you can use it to find what was wrong. (Protocol: 772)
ERROR: protected lua call failed: /modules/game_outfit/outfit.lua:425: attempt to index a nil value
stack traceback:
[C]: in function '__index'
/modules/game_outfit/outfit.lua:425: in function 'nextOutfit'
/modules/game_outfit/outfitwindow.otui:34: [@onClick]:2: in function </modules/game_outfit/outfitwindow.otui:34: [@onClick]:1>
 
modules/game_interface/gameinterface.lua
LUA:
 if creatureThing:isPartyMember() then
        menu:addOption(tr('Leave Party'), function() g_game.partyLeave() end)
      end
      
      if creatureThing:isPartyMember() then
        menu:addOption(tr('Enable Shared'), function() g_game.talk("!share") end)
      end

1732034809385.webp

1732034836470.webp
Post automatically merged:

View attachment 88142
ted lua call failed: /modules/game_outfit/outfit.lua:425: attempt to index a nil value
stack traceback:
[C]: in function '__index'
/modules/game_outfit/outfit.lua:425: in function 'nextOutfit'
/modules/game_outfit/outfitwindow.otui:34: [@onClick]:2: in function </modules/game_outfit/outfitwindow.otui:34: [@onClick]:1>
ERROR: ProtocolGame parse message exception (86 bytes, 68 unread, last opcode is 0x00 (0), prev opcode is 0xc8 (200)): InputMessage eof reached
Packet has been saved to packet.log, you can use it to find what was wrong. (Protocol: 772)
ERROR: protected lua call failed: /modules/game_outfit/outfit.lua:425: attempt to index a nil value
stack traceback:
[C]: in function '__index'
/modules/game_outfit/outfit.lua:425: in function 'nextOutfit'
/modules/game_outfit/outfitwindow.otui:34: [@onClick]:2: in function </modules/game_outfit/outfitwindow.otui:34: [@onClick]:1>
C++:
void ProtocolGame::sendOutfitWindow()
{
    const auto& outfits = Outfits::getInstance().getOutfits(player->getSex());
    if (outfits.size() == 0) {
        return;
    }

    NetworkMessage msg;
    msg.addByte(0xC8);

    if (player->getOperatingSystem() >= CLIENTOS_OTCLIENT_LINUX) {
        
        Outfit_t currentOutfit = player->getDefaultOutfit();
        AddOutfit(msg, currentOutfit);

        if (player->getSex() == PLAYERSEX_MALE) {
            msg.add<uint16_t>(128);
            if (player->isPremium()) {
                msg.add<uint16_t>(134);
            } else {
                msg.add<uint16_t>(131);
            }
        } else {
            msg.add<uint16_t>(136);
            if (player->isPremium()) {
                msg.add<uint16_t>(142);
            } else {
                msg.add<uint16_t>(139);
            }
        }
    }

    writeToOutputBuffer(msg);
}
 
Anybody made the outfit window with addons for this ui? I made the otui but cant get the checkboxes working. I have this function in outfit.lua:
LUA:
function configureAddons(addons)
  local hasAddon1 = addons == 1 or addons == 3
  local hasAddon2 = addons == 2 or addons == 3
  window.configure.addon1.check:setEnabled(hasAddon1)
  window.configure.addon2.check:setEnabled(hasAddon2)

  window.configure.addon1.check.onCheckChange = nil
  window.configure.addon2.check.onCheckChange = nil
  window.configure.addon1.check:setChecked(false)
  window.configure.addon2.check:setChecked(false)
  if tempOutfit.addons == 3 then
    window.configure.addon1.check:setChecked(true)
    window.configure.addon2.check:setChecked(true)
  elseif tempOutfit.addons == 2 then
    window.configure.addon1.check:setChecked(false)
    window.configure.addon2.check:setChecked(true)
  elseif tempOutfit.addons == 1 then
    window.configure.addon1.check:setChecked(true)
    window.configure.addon2.check:setChecked(false)
  end
  window.configure.addon1.check.onCheckChange = onAddonChange
  window.configure.addon2.check.onCheckChange = onAddonChange
end
I have also enabled addons in features.lua.. Why it is not working?
Zrzut ekranu 2024-11-24 215550.webp
This is my otui:

Code:
  CheckBox
    id: addon1
    width: 80
    anchors.top: addonsPanel.top
    anchors.left: addonsPanel.left
    !text: tr('Addon 1')
    margin-left: 2
    margin-top: 2
    enabled: false

  CheckBox
    id: addon2
    width: 80
    anchors.top: addonsPanel.top
    anchors.left: addon1.right
    margin-left: 2
    margin-top: 2
    !text: tr('Addon 2')
    enabled: false

  CheckBox
    id: addon3
    width: 80
    anchors.top: addonsPanel.top
    anchors.left: addon2.right
    margin-left: 2
    margin-top: 2
    !text: tr('Addon 3')
    enabled: false

Changing enabled to true doesnt work. Even if the checkboxes are interactive i cant get the addon. No errors in terminal, using official otcv8 i can setup addons with no problems.
 
Last edited:
Back
Top