BananaFight 196 Postado Maio 24, 2013 Share Postado Maio 24, 2013 (editado) Esse Mod faz com que seja possível criar novos char na sua acc usando apenas o client. OBS: Ele usa Opcode, e com isso só é possível criar char com um personagem online, Porem o sistema é foi totalmente feito para funcionar com um personagem off, então a menos que você consiga editar as source do server, só será possível criar novos personagens na conta com um char logado, Pois os opcodes só funcionam com um char logado. Nome: Char MakerDescrição: Criado de charAutor: Eduardo Vicente (Banana Fight)Website: www.xtibia.com Client Side Client_Entergame/Entergame.lua Procure por: if modules.game_things.isLoaded() thenprotocolLogin:login(G.host, G.port, G.account, G.password) e embaixo adicione: accountName = G.account Client_Entergame/Characterlist.lua procure por : -- public functions[function CharacterList.init()connect(g_game, { onLoginError = onGameLoginError })connect(g_game, { onUpdateNeeded = onGameUpdateNeeded })connect(g_game, { onConnectionError = onGameConnectionError })connect(g_game, { onGameStart = CharacterList.destroyLoadBox })connect(g_game, { onLoginWait = onLoginWait })connect(g_game, { onGameEnd = CharacterList.showAgain })if G.characters thenCharacterList.create(G.characters, G.characterAccount)endend E substitua por : -- public functions[function CharacterList.init()connect(g_game, { onLoginError = onGameLoginError })connect(g_game, { onUpdateNeeded = onGameUpdateNeeded })connect(g_game, { onConnectionError = onGameConnectionError })connect(g_game, { onGameStart = CharacterList.destroyLoadBox })connect(g_game, { onLoginWait = onLoginWait })connect(g_game, { onGameEnd = CharacterList.showAgain })if G.characters thenCharacterList.create(G.characters, G.characterAccount)endnewChar = g_ui.displayUI('newchar')newChar:hide()endfunction sendAll()local msg = newChar:getChildById('msg')local name = newChar:getChildById('name'):getText()local sex = newChar:getChildById('sex'):getText()local voc = newChar:getChildById('vocation'):getText()local protocol = g_game.getProtocolGame()local sendSexlocal sendVocif sex == "male" thensendSex = 0elsesendSex = 1endif voc == "Sorcerer" thensendVoc = 1elseif voc == "Druid" thensendVoc = 2elseif voc == "Paladin" thensendVoc = 3elsesendVoc = 4endprotocol:sendExtendedOpcode(152, string.format("%s,%s,%d,%d", accountName, name, sendVoc, sendSex))msg:setColor("green")msg:setText("Character "..name.." Created")end Agora Crie um arquivo com o nome newchar.lua, e adiciona isso dentro : MainWindowid: characterCreator!text: tr('New Char')size: 210 250@onEnter: sendAll()Labelid: labelNametext: Choose your name:color: whitetext-auto-resize: trueanchors.top: parent.topanchors.left: parent.leftmargin-top: 2TextEditid: nameanchors.left: parent.leftanchors.right: parent.rightanchors.top: prev.bottommargin-top: 5Labelid: labelSextext: Chose your sextext-auto-resize: truecolor: whiteanchors.left: parent.leftanchors.top: name.bottommargin-top: 10ComboBoxid: sexanchors.left: parent.leftanchors.top: labelSex.bottommargin-top: 5width: 75options:- Male- FemaleLabelid: labelVocationtext: Chose your vocationtext-auto-resize: truecolor: whiteanchors.left: parent.leftanchors.top: sex.bottommargin-top: 10ComboBoxid: vocationanchors.left: parent.leftanchors.top: labelVocation.bottommargin-top: 5width: 100options:- Knight- Paladin- Sorcerer- DruidLabelid: msgtext-auto-resize: trueanchors.left: parent.leftanchors.top: vocation.bottommargin-top: 20Buttonid: creatChartext: Creat Charactercolor: whiteanchors.left: parent.leftanchors.bottom: parent.bottom@onClick: sendAll()Buttonid: canceltext: Cancelcolor: whiteanchors.left: creatChar.rightanchors.right: parent.rightanchors.bottom: parent.bottommargin-left: 10@onClick: newChar:hide() E no chartacterlist.otui, lá no final você apaga os 2 botões de "cancel" e "ok" e substituto por estes : Buttonid: newChartext: New Charwidth: 64anchors.left: parent.leftanchors.bottom: parent.bottom@onClick: newChar:show()Buttonid: buttonOk!text: tr('Ok')width: 64anchors.left: newChar.rightanchors.right: buttonCancel.leftanchors.bottom: parent.bottommargin-right: 10margin-left: 10@onClick: CharacterList.doLogin()Buttonid: buttonCancel!text: tr('Cancel')width: 64anchors.right: parent.rightanchors.bottom: parent.bottom@onClick: CharacterList.hide(true) Server Side Data/Creaturescritps/scripts crie um arquivo chamado exetendedopcode.lua, e adicione isso dentro : local QUERY = "INSERT INTO `players` VALUES (NULL, '%s', 0, 1, %d, 1, %d, 150, 150, 0, 0, 0, 0, 0, 221, 0, 0, 50, 50, 0, 0, 1, 95, 127, 7, 0, 400, %d, 0, 0, 1, 0, 0, 0, '', 0, 0, 0, 151200000, 2, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '');"NEW_ACCOUNT_CHAR = 152function onExtendedOpcode(cid, opcode, buffer)if opcode == NEW_ACCOUNT_CHAR thenlocal info = string.explode(buffer, ",")for a = 1, #info doif tonumber(info[a]) theninfo[a] = tonumber(info[a])endenddb.executeQuery(string.format(QUERY, info[2], getAccountIdByAccount(info[1]), info[3], info[4]))endreturn trueend E dentro do creaturescripts.xml adicione : <event type="extendedopcode" name="ExtendedOpcode" event="script" value="extendedopcode.lua"/> O sistema ainda não esta 100% completo, falta a parte que envia uma mensagem de erro quando o char não é criado, Porem eu não irei atualizar esse sistema pelo fato de só funcionar com char online. Editado Abril 14, 2017 por Bennyyw Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/ Compartilhar em outros sites More sharing options...
AlexandreKG 134 Postado Maio 24, 2013 Share Postado Maio 24, 2013 Caraca que legal hein! Parabéns, obrigado por compartilhar. Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1524219 Compartilhar em outros sites More sharing options...
StyloMaldoso 330 Postado Maio 24, 2013 Share Postado Maio 24, 2013 Caraca que interessante, daría pra faze no modo Gambiarra para o PDA? Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1524228 Compartilhar em outros sites More sharing options...
BananaFight 196 Postado Maio 24, 2013 Autor Share Postado Maio 24, 2013 (editado) @StyloMaldoso, você poderia fazer de um modo que quando clicasse em New Char, ele executasse uma talkactions com as infos que foram escolhidas. @All, Pessoal, sei que estou um pouco ausente do fórum, e por isso quando eu trazer algo para o fórum irei tentar trazer algo que não foi visto ainda para mostrar as incríveis possibilidades que o OtClient nos oferece. E obrigado pelo apoio de todos vocês. Editado Maio 24, 2013 por BananaFight Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1524313 Compartilhar em outros sites More sharing options...
Alexclusive 687 Postado Maio 24, 2013 Share Postado Maio 24, 2013 Muito bom Edu. Como já falaram, sempre trazendo coisas boas! Parabéns! Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1524419 Compartilhar em outros sites More sharing options...
Faelzdanil 102 Postado Maio 26, 2013 Share Postado Maio 26, 2013 (editado) E dentro do creaturescripts.lua adicione : <event type="extendedopcode" name="ExtendedOpcode" event="script" value="extendedopcode.lua"/> Corrigindo que é na creaturescripts.xml ! Editado Maio 26, 2013 por Faelzdanil Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1524854 Compartilhar em outros sites More sharing options...
BananaFight 196 Postado Maio 26, 2013 Autor Share Postado Maio 26, 2013 Pronto, corrigido, e desculpem pelo erro. Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1524855 Compartilhar em outros sites More sharing options...
manoelneto 24 Postado Maio 26, 2013 Share Postado Maio 26, 2013 Boa Banana, estava sentindo falta desses seus posts, eu nunca tinha imaginado que poderia ter algo assim no Otc, sua ideia é muito boa. Andei pensando em fazer uma janela de Guild, que nem tem naqueles MMORPGS mostrando membro, level e outras coisas, difícil é saber como proceder e_e Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1524857 Compartilhar em outros sites More sharing options...
BananaFight 196 Postado Junho 1, 2013 Autor Share Postado Junho 1, 2013 (editado) Pessoal pesso desculpas, mais tinha esquecido de uma parte então para que não aja bugs arrume em, Entergame.lua Procure por: if modules.game_things.isLoaded() then protocolLogin:login(G.host, G.port, G.account, G.password) e embaixo adicione: accountName = G.account Editado Junho 1, 2013 por BananaFight Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1526757 Compartilhar em outros sites More sharing options...
saviomu 49 Postado Junho 23, 2013 Share Postado Junho 23, 2013 Ola teria como por para mudar outifit tambem? Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1533976 Compartilhar em outros sites More sharing options...
planetc 9 Postado Junho 26, 2013 Share Postado Junho 26, 2013 tem como postar os arquivos Client_Entergame/Entergame.lua Client_Entergame/Characterlist.lua ? pois nao estou conseguindo :S fiz certinho mas n ta adiantando. vlw! Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1534689 Compartilhar em outros sites More sharing options...
xS0NYx 2 Postado Julho 17, 2013 Share Postado Julho 17, 2013 O que precisa editar nas sources pra colocar pra criar char off? Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1540492 Compartilhar em outros sites More sharing options...
3145288 17 Postado Julho 17, 2013 Share Postado Julho 17, 2013 vc teria que criar um socket no cliente para conectar no servidor no inicio da aplicação (ao abrir o cliente), ao contrário do mod, que conecta no servidor ao logar o char. Um package no servidor também, para receber os bits enviados do cliente em tempo constante e, executar a função de forma interna (ou até mesmo por scripts) se manjar um teco de programação Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1540509 Compartilhar em outros sites More sharing options...
elvenstrike 1 Postado Julho 30, 2013 Share Postado Julho 30, 2013 Parabéns cara isso vai ajudar muito no meu projeto de narutibia. rep+ Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1545577 Compartilhar em outros sites More sharing options...
GODMedieval 1 Postado Setembro 23, 2013 Share Postado Setembro 23, 2013 Nossa cara muito massa isso ae, realmente esse "OTClient" tá revolucionando o mundo dos Ots e a cada dia tá me surpreendendo, não só a mim né, tem mias um monte de gente que tenho certeza que tá gostando muito dele ! Obrigado por compartilhar, Muito Obrigado! Link para o comentário https://xtibia.com/forum/topic/214918-char-maker/#findComment-1564637 Compartilhar em outros sites More sharing options...
Posts Recomendados