Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 02/24/18 in all areas

  1. M2 Download Center Download Here ( Internal ) //Find in PythonNetworkStreamModule.cpp: PyObject* netGetBettingGuildWarValue(PyObject* poSelf, PyObject* poArgs) { char* szName; if (!PyTuple_GetString(poArgs, 0, &szName)) return Py_BuildException(); CPythonNetworkStream& rkNetStream=CPythonNetworkStream::Instance(); return Py_BuildValue("i", rkNetStream.EXPORT_GetBettingGuildWarValue(szName)); } ///Add; static const char* ServerIPVName[4][2] = { {"192.168.0.100", "BETA-1"}, {"76.342.12.12", "BETA-2"}, {"145.12.231.12", "BETA-3"}, {"192.31.52.69", "BETA-4"} }; static unsigned int ServerPORT[] = {{13000},{1600},{1900},{21000},{11002},{13000}}; PyObject* netGetServer_IPNAME(PyObject* poSelf, PyObject* poArgs) { return Py_BuildValue("ssssssss", ServerIPVName[0][0], ServerIPVName[0][1], ServerIPVName[1][0], ServerIPVName[1][1], ServerIPVName[2][0], ServerIPVName[2][1], ServerIPVName[3][0], ServerIPVName[3][1] ); } PyObject* netGetServer_PORT(PyObject* poSelf, PyObject* poArgs) { return Py_BuildValue("iiiiii", ServerPORT[0],ServerPORT[1],ServerPORT[2],ServerPORT[3],ServerPORT[4],ServerPORT[5]); } //Find: { "SendOnClickPacket", netOnClickPacket, METH_VARARGS }, ///Add; { "GetServer_IPNAME", netGetServer_IPNAME, METH_VARARGS }, { "GetServer_PORT", netGetServer_PORT, METH_VARARGS }, Example ServerInfo.py import net (sv1_ip, sv1_name, sv2_ip, sv2_name, sv3_ip, sv3_name, sv4_ip, sv4_name) = net.GetServer_IPNAME() (ch1_port, ch2_port, ch3_port, ch4_port, auth_port, mark_port) = net.GetServer_PORT() CH_1_NAME = "|cFF00FFFF|hCH1" CH_2_NAME = "|cFF00FFFF|hCH2" CH_3_NAME = "|cFF00FFFF|hCH3" CH_4_NAME = "|cFF00FFFF|hCH4" STATE_NONE = "|cFFFF0000|hKAPALI" STATE_DICT = { 0 : "|cFFFF0000|hKAPALI", 1 : "|cff00ff00|hNORMAL", 2 : "|cff00ff00|hYOGUN", 3 : "|cff00ff00|hDOLU" } SERVER01_CHANNEL_DICT = { 1:{"key":11,"name":CH_1_NAME,"ip":sv1_ip,"tcp_port":ch1_port,"udp_port":ch1_port,"state":STATE_NONE,}, 2:{"key":12,"name":CH_2_NAME,"ip":sv1_ip,"tcp_port":ch2_port,"udp_port":ch2_port,"state":STATE_NONE,}, 3:{"key":13,"name":CH_3_NAME,"ip":sv1_ip,"tcp_port":ch3_port,"udp_port":ch3_port,"state":STATE_NONE,}, 4:{"key":14,"name":CH_4_NAME,"ip":sv1_ip,"tcp_port":ch4_port,"udp_port":ch4_port,"state":STATE_NONE,}, } SERVER02_CHANNEL_DICT = { 1:{"key":11,"name":CH_1_NAME,"ip":sv2_ip,"tcp_port":ch1_port,"udp_port":ch1_port,"state":STATE_NONE,}, 2:{"key":12,"name":CH_2_NAME,"ip":sv2_ip,"tcp_port":ch2_port,"udp_port":ch2_port,"state":STATE_NONE,}, 3:{"key":13,"name":CH_3_NAME,"ip":sv2_ip,"tcp_port":ch3_port,"udp_port":ch3_port,"state":STATE_NONE,}, 4:{"key":14,"name":CH_4_NAME,"ip":sv2_ip,"tcp_port":ch4_port,"udp_port":ch4_port,"state":STATE_NONE,}, } SERVER03_CHANNEL_DICT = { 1:{"key":11,"name":CH_1_NAME,"ip":sv3_ip,"tcp_port":ch1_port,"udp_port":ch1_port,"state":STATE_NONE,}, 2:{"key":12,"name":CH_2_NAME,"ip":sv3_ip,"tcp_port":ch2_port,"udp_port":ch2_port,"state":STATE_NONE,}, 3:{"key":13,"name":CH_3_NAME,"ip":sv3_ip,"tcp_port":ch3_port,"udp_port":ch3_port,"state":STATE_NONE,}, 4:{"key":14,"name":CH_4_NAME,"ip":sv3_ip,"tcp_port":ch4_port,"udp_port":ch4_port,"state":STATE_NONE,}, } SERVER04_CHANNEL_DICT = { 1:{"key":11,"name":CH_1_NAME,"ip":sv4_ip,"tcp_port":ch1_port,"udp_port":ch1_port,"state":STATE_NONE,}, 2:{"key":12,"name":CH_2_NAME,"ip":sv4_ip,"tcp_port":ch2_port,"udp_port":ch2_port,"state":STATE_NONE,}, 3:{"key":13,"name":CH_3_NAME,"ip":sv4_ip,"tcp_port":ch3_port,"udp_port":ch3_port,"state":STATE_NONE,}, 4:{"key":14,"name":CH_4_NAME,"ip":sv4_ip,"tcp_port":ch4_port,"udp_port":ch4_port,"state":STATE_NONE,}, } REGION_NAME_DICT = { 0 : "", } REGION_AUTH_SERVER_DICT = { 0 : { 1 : { "ip":sv1_ip, "port":auth_port, }, 2 : { "ip":sv2_ip, "port":auth_port, }, 3 : { "ip":sv3_ip, "port":auth_port, }, 4 : { "ip":sv4_ip, "port":auth_port, }, } } REGION_DICT = { 0 : { 1 : { "name" :sv1_name, "channel" : SERVER01_CHANNEL_DICT, }, 2 : { "name" :sv2_name, "channel" : SERVER02_CHANNEL_DICT, }, 3 : { "name" :sv3_name, "channel" : SERVER03_CHANNEL_DICT, }, 4 : { "name" :sv4_name, "channel" : SERVER04_CHANNEL_DICT, }, }, } MARKADDR_DICT = { 10 : { "ip" : sv1_ip, "tcp_port" : mark_port, "mark" : "10.tga", "symbol_path" : "10", }, 20 : { "ip" : sv2_ip, "tcp_port" : mark_port, "mark" : "20.tga", "symbol_path" : "20", }, 30 : { "ip" : sv3_ip, "tcp_port" : mark_port, "mark" : "30.tga", "symbol_path" : "30", }, 40 : { "ip" : sv4_ip, "tcp_port" : mark_port, "mark" : "40.tga", "symbol_path" : "40", }, }
    1 point
  2. M2 Download Center Download Here ( Internal ) I think they forgot to cythonize =)) I don't recommend to use that code, is ugly ... [Hidden Content]
    1 point
  3. M2 Download Center Download Here ( Internal ) Password: metin2.dev Hi guys, its small release Granny Converter to 2.11.8 version Download: Github Src: Github Virustotal click Note: The folder name can not contain spaces. Example: "...\converter\old\ymir work\monster" -> "...\converter\old\monster" If you find any shortcomings write in the comments... sorry for my english
    1 point
  4. quest skill_reset begin state start begin when 71002.use begin if pc.get_level() < 30 or pc.get_level() > 120 then say_title(item_name(71002)) say("") say("This item can be used in between level 30 and 120.") return end if pc.get_skill_group() == 0 then say_title(item_name(71002)) say("") say("You have no skill group.") return end say_title(item_name(71002)) say("") say("This scroll will instantly reset") say("your skill group, every skill you have") say("mastered will be losed in the process.") say("") say_reward("Notice: You won't lose any character points.") say("") say("Do you really want to do this?") if (select("Yes", "No") == 1) then pc.clear_skill() pc.set_skill_group(0) horse.set_level(horse_level) char_log(0, "RESET_SKILL", "RESET_SKILL_BY_71002") pc.remove_item(71002); set_quest_state("skill_group","run") end end end Whatever, shit code
    1 point
  5. Va dati toti smecheri dar va urla foamea in stomac.
    1 point
  6. You can fight here all day [Hidden Content] Just saying.
    1 point
  7. @GostMan Stop using fake account. You are the most of *dum.... from here, because you didn't really understand the sarcasm which @tierrilopes created it, a guy say on first page: "i can write better the code of official and things which containing a lot a lines I can do on one line.", but he doesn't have idea about coding. And from here start some examples from us and make fun about situation, what's your problem? Oh let me know..you are frustrated because you don't understand how it's working the code from us examples? Don't try to look smart than us because you aren't, don't come with examples of another language if there's all about Python. That one line here is called as "comprehension python list". For simple conditions is ok to use it, but on that case from the previous replies for multiple function to be called doesn't look very good and should stay on normally style. I'm not sure but you are looking like a romanian which didn't eat nothing since a lot a time. You should stop do spam without sense after some weeks just because you are frustrated, if all people do that which all what they don't like it and hate it what happens with community? If I hate something from guys which talking on some topics should I check now all topics and go and say them "yo guys, you are *dum...? Was ok if you was registered when we was had that discussion, not after some weeks. Have fun.
    1 point
  8. You still didn't learn to properly understand simple words yet you are still here asking for help. Ignorance should at least compensate with money those who compensate your ignorance with their knowledge. you are using my quest, if you want to delete the player kills use pc.delqf, since it works with QFs.
    1 point
  9. It's good practice to use understandable variable names. quest QUESTNAME begin state start begin function CanTakeItem(vnum) local accepted_items = {14500, 12000, 18000}; return table_is_in(accepted_items, vnum); end -- function when NPCVNUM.take with QUESTNAME.CanTakeItem(item.get_vnum()) begin -- end -- when end -- state end -- quest table_is_in is a function which already exists in every questlib.lua. [Hidden Content] Yours does the same thing, but custom-made functions are meant to be readable.
    1 point
  10. All quests. TRUNCATE TABLE player.quest; Specific quest. DELETE FROM player.quest WHERE szName = 'name_quest'; Navicat -> Any database -> CTRL + Q -> CTRL + V -> Run
    1 point
  11. Stop to kill Lua please. function right_item() return item.get_vnum() >= 85001 and item.get_vnum() <= 85024 end And don't reply if you don't understand what exactly he want. function CanTakeItem(itemVnum) local table_items = { 14500, 12000, 18000 } for _, v in pairs(table_items) do if v == itemVnum then return true end end return false end -- when npc_id.take with questName.CanTakeItem(item.get_vnum()) begin
    1 point
  12. Navicat -> Account -> Account -> LOOK WHERE YOU CAN PUT A DATE
    1 point
  13. import game self.BlaBla = game.ClassNameWhereIsTheFunction() self.BlaBla.FunctionToUse()
    1 point
  14. 1 point
  15. Maybe you still need it ;D [Hidden Content]
    1 point
  16. Why don't you set 20000 as default so you don't create two variables for it?
    1 point
  17. database works, the server does not work
    0 points
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.