Jump to content

avertusss

Inactive Member
  • Posts

    30
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by avertusss

  1. Hi. I wanted to make ch100(something like ch99). So i made everything like other channels. Ch100 is starting etc but maps from ch100 doesn't work. 

    Config:

    CHANNEL: 100
    HOSTNAME: game100
    PORT: 13100
    P2P_PORT: 14100
    DB_ADDR: 127.0.0.1
    DB_PORT: 15000
    MAP_ALLOW: 3
    PLAYER_SQL: 127.0.0.1 root password player
    COMMON_SQL: 127.0.0.1 root password common
    LOG_SQL: 127.0.0.1 root password log
    TABLE_POSTFIX: 
    PASSES_PER_SEC: 25
    SAVE_EVENT_SECOND_CYCLE: 180
    PING_EVENT_SECOND_CYCLE: 180
    VIEW_RANGE: 8000
    CHECK_MULTIHACK: 0
    ADMINPAGE_PASSWORD: metin2adminpass
    ADMINPAGE_IP: 127.0.0.1
    SPEEDHACK_LIMIT_COUNT: 300
    SPEEDHACK_LIMIT_BONUS: 80
    PK_PROTECT_LEVEL: 15
    MALL_URL: google.com
    TRAFFIC_PROFILE: 
    TEST_SERVER: 0
    MAX_LEVEL: 200

    When i want to teleport to this map i get that in syserr(i added port to this syserr bcs i wanted to debug it):

    WarpSet: cannot find map location index 3 x 360800 y 877600 port 233 name Testchamp

    As you can see port isn't good it should be 13100. Any ideas? 

  2. Hi. I want to make mobs waves in dungeon but i have problem with server_timer.

    		when login with is_in_dungeon(130) begin
    			if not d.is_joinable() then
    				d.notice("Bye bye")
    				pc.warp_exit()
    				return
    			end
    			
    			if d.getf("stage") == 0 then
    				d.setf("stage", 1)
    				notice_mission("Kills mobs")
    				d.regen_file("data/dungeon/dungeon_75.txt")
    				d.setf("mobs", 100)
    				server_timer("dungeon_wave_2", 5)
    			end
    		end
    		
    		when dungeon_wave_2.server_timer begin
    			d.notice("Kill mobs from second wave")
    			d.regen_file("data/dungeon/dungeon_75.txt")
    		end

    Server_timer doesn't work. How should i make that? Normal timer works properly.

  3. 24 minutes ago, TMP4 said:

    You have to move the src folder to your jail's location, switch to your jail via "jexec 1 tcsh" (1 is the id of the jail), install the required stuff for compililing llvm-devel, mysql and recompile everything, not just the game & db. You may need to modifiy some makefile (game,db,libsql) since it reads the mysql includes and libs from /usr/xy and you need to edit it to your jail's location.

    Yee, i compiled but i cannot run:

    ld-elf32.so.1: Shared object "libm.so.5" not found, required by "db"

     

  4. On 4/14/2023 at 8:49 PM, TMP4 said:

    This screen is before the FreeBSD would load.

    So on vps control panel you choose your vps then click reinstall, choose FreeBSD, type a password, and click "Start installation".
    If you did this and FreeBSD fails to start and you're stuck on this screen, then please open a support ticket because that is a bug and only the Contabo support can solve it for you.

    By the way If they do not have the desired FreeBSD version, as I remember there were only 12.x when we did, just choose that and upgrade FreeBSD later, there are good tutorials on the internet like this.

    but they installed 12.3 64 bit not 32. I cannot compile src. Can i change it to 32 bit by myself?

  5. I don't know why but when i want to restart server db doesn't start(connection refused). I need to restart whole vps xD

    db.core

    Core was generated by `./db'.
    Program terminated with signal SIGSEGV, Segmentation fault.
    Address not mapped to object.
    
    warning: Section `.reg-xstate/100104' in core file too small.
    #0  0x20784912 in strtoul_l () from /lib/libc.so.7
    [Current thread is 1 (LWP 100104)]
    (gdb) bt full
    #0  0x20784912 in strtoul_l () from /lib/libc.so.7
    No symbol table info available.
    #1  0x20784b15 in strtoul () from /lib/libc.so.7
    No symbol table info available.
    #2  0x00499c0b in mysql_set_character_set ()
    No symbol table info available.
    #3  0x004a0b90 in CAsyncSQL::QueryLocaleSet() ()
    No symbol table info available.
    #4  0x00427f02 in CDBManager::SetLocale (this=0xffbfeb38,
        szLocale=0x5bd4ed <g_stLocale+1> "latin1") at DBManager.cpp:172
            n = 2
            stLocale = "latin1"
    #5  0x0042c366 in CClientManager::InitializeLocalization (this=0xffbfe42c)
        at ClientManager.cpp:3862
            locale = {
              szValue = "english\000\001\207\001\000\000\000\000\000\001\000\000\000\001A\203 \340A\203 \b\207\001",
              szKey = "LOCALE\000 \204\201\203 \250\266\177 T\020c L\340\277\377\343bb \000\000\000"}
            col = 2
            n = <optimized out>
            szQuery = "SELECT mValue, mKey FROM locale\000\204G@\000eG@\000\204G@\000\210\225~ `\340\277\377\333\361s \360A\177 t߿\377\004\000\000\000\210\225~ \00--Type <RET> for more, q to quit, c to continue without paging--
    2\000\000\000\000\000\000\000\001\000\000\000\023\000\000\000\037\000\000\000\037", '\000' <repeats 23 times>, "\017\000\000\000\004\000\000\000\001\000\000\000\000\000\000\000\001", '\000' <repeats 15 times>, "\001\000\000\000\004\000\000\000\001\000\000\000\000\000\000\000\321lf \000\000\000\000\321lf ", '\000' <repeats 20 times>, "\250\266\177 \000"...
            pMsg = 0x2086c3f0
            row = <optimized out>
    #6  0x0042b835 in CClientManager::Initialize (this=0xffbfe42c)
        at ClientManager.cpp:103
            szBindIP = "p\340\277\377\355\255s \360A\177 T\020c \204\340\277\377\306\357a \360A\177 \000\000\000\000\210\225~ \224\340\277\377\277Hk \001\000\000\000\210\225~ \324\340\277\377\201\024s \001\000\000\000\250\266\177 \000\000\000\000Эs \360A\177 \000\000\000\000\360A\177 l\200~ eG@\000\226\030\240>\226\030\240>\250U\177 eG@\000C\342\277\377\360\340\277\377\223\062G\000\360A\177 "
            tmpValue = <optimized out>
            iChinaEventServer = <optimized out>
    #7  0x0042721e in Start () at Main.cpp:409
            szBuf = "\000\024\343\277\377\b\000\000\000`\342\277\377H?L \004\200L \000\360\020~s\221b `\342\277\377\b\000\000\000\a\000\000\000\327&@\000\304I<\a0\270\202\r$tL \001", '\000' <repeats 11 times>, "x\343\277\377\000\000\000\000\000\000\000\000(\000\000\000\220pM \210\225~ @\343\277\377\005qx \220pM \200\003\240 \254qM \\rM \b\000\000\000$\343\277\377\216\222b \004\200L H?L X\343\277\377\264\031K \327&@\000\000@\203 \000@\203 T\020c 4\343\277\377\022\221b 0A\203 T\020--Type <RET> for more, q to quit, c to continue without paging--

    Any ideas?

  6. 1 hour ago, TMP4 said:

    It will work but you have to make your own 13.0 vm where you compile, because I bet your vps will be x64 where you can't compile.

    Why do you want 13.0 instead of 13.1? If your vps provider don't have the option for 13.1 yet, check if you can use your own iso to install 13.1, or just update 13.0 to 13.1 because it is possible.

    I have vps for dev server with 13.0 and dedicated with few users with 13.0 too. That's why i want still use 13.0.

    • Love 1
    • Love 1
  7. 15 hours ago, ReFresh said:

    @avertusss

    File: root/uiattachmetin.py

      Reveal hidden contents
    Find:
      newToolTip.SetPosition(230 + 20, 38)
      
    Change to:
      newToolTip.SetPosition(300 + 20, 38)
    
    Find:
      newWidth = self.newToolTip.GetWidth() + 230 + 15 + 20
    
    Change to:
      newWidth = self.newToolTip.GetWidth() + 300 + 15 + 20
      
    Find:
      self.SetPosition(x, y)
    
    Change to:
      self.SetCenterPosition()

    File: uiscript/attachstonedialog.py

      Reveal hidden contents

    spacer.png

    I believe this will fix your problem with font.

    It's not fix. It's just change size of tooltip. If someone will have font changer ingame it will looks weird if you make it big af but someone want use small font instead of big. 

    • Smile Tear 1
  8. 24 minutes ago, xTryhard said:

    what do you want to do exactly?

    I want to check other active characters owned by checked player(that's why i need ip address for that). I have something like this

    ACMD(do_checkplayer)
    {
    	char arg1[256];
    	one_argument(argument, arg1, sizeof(arg1));
    	
    	if (!*arg1 || strlen(arg1) < 3)
    	{
    		ch->ChatPacket(CHAT_TYPE_INFO, "Enter player name");
    		return;
    	}
    	
    	char playerip[256];
    	
    	std::unique_ptr<SQLMsg> pkMsg2(DBManager::instance().DirectQuery("SELECT IP from player where name = '%s'", arg1));
    	SQLResult * pRes2 = pkMsg2->Get();
    
    	if (pRes2->uiNumRows > 0)
    	{
    		MYSQL_ROW row;
    		while ((row = mysql_fetch_row(pRes2->pSQLResult)) != NULL)
    		{
    			sql_IP = row[0];
    		}
    		playerip = sql_IP;
    	}
    	
    	ch->ChatPacket(CHAT_TYPE_INFO, "%s", playerip);
    	
    	std::string name;
    	std::string buffer;
    	{
    		std::unique_ptr<SQLMsg> pkMsg(DBManager::instance().DirectQuery("SELECT player.name as '0' FROM player WHERE player.last_play > NOW()-600 and player.IP='%s'", playerip));
    		SQLResult * pRes = pkMsg->Get();
    		if (pRes->uiNumRows>0)
    		{
    			MYSQL_ROW row;
    			int count = 0;
    			ch->ChatPacket(CHAT_TYPE_INFO, "Character list:");
    			while ((row = mysql_fetch_row(pRes->pSQLResult)) != NULL)
    			{
    				buffer = row[0];
    				count += buffer.length() + 3;
    				if(count > 110)
    				{
    					ch->ChatPacket(CHAT_TYPE_INFO, "%s", name.c_str());
    					name="";
    					count = 0;
    				}
    				name += " | ";
    				name += "|cffffc700|Hwhisper:";
    				name += buffer;
    				name += "|h";
    				name += buffer;
    				name += "|h|r";
    			}
    			ch->ChatPacket(CHAT_TYPE_INFO, "%s", name.c_str());
    		}
    		else
    			ch->ChatPacket(CHAT_TYPE_INFO, "No available characters in 10 min.");
    	}
    }

     

  9. 26 minutes ago, xTryhard said:
    char szQuery[50]; // << the length of your string
    snprintf(szQuery, sizeof(szQuery), "SELECT IP FROM player.player WHERE name = '%s'", arg1);
    std::unique_ptr<SQLMsg> msg(DBManager::instance().DirectQuery(szQuery));
    
    MYSQL_RES* Result = msg->Get()->pSQLResult;
    MYSQL_ROW row = mysql_fetch_row(Result);
    std::string IP = row[0];

    if you select a string you can just create one if you use an integer you have to use this function :
     

    str_to_number(IP, row[0]);

     

    But if i use str_to_number i can''t compare it with other select bcs number doens't have . so ip won't be 192.168.0.1 but 19216801 or idk how.

     

    I want use that checked ip in other mysql query like this

    std::unique_ptr<SQLMsg> pkMsg(DBManager::instance().DirectQuery("SELECT player.name as '0' FROM player WHERE player.last_play > NOW()-600 and player.IP='whatshouldiwritethere????"));

     

  10. Hi. I want to make function which check ip of inserted player name. I have

    ACMD(do_checkplayer)
    {
    	char arg1[256];
    	one_argument(argument, arg1, sizeof(arg1));
    	
    	if (!*arg1 || strlen(arg1) < 3)
    	{
    		ch->ChatPacket(CHAT_TYPE_INFO, "Enter player name");
    		return;
    	}
    	
    	char ip[256];
    	
    	std::unique_ptr<SQLMsg> pkMsg2(DBManager::instance().DirectQuery("SELECT IP from player where name = '%s'", arg1));
    	SQLResult * pRes2 = pkMsg2->Get();
    
    	if (pRes2->uiNumRows > 0)
    	{
    		MYSQL_ROW row;
    		while ((row = mysql_fetch_row(pRes2->pSQLResult)) != NULL)
    		{
    			sql_IP = row[0];
    		}
    		ip = sql_IP;
    	}
    	
    	ch->ChatPacket(CHAT_TYPE_INFO, "%s", ip);
    }

    I don't know how to exactly return that ip into variable and use it everywhere in that function. Can someone help me? 

×
×
  • 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.