Jump to content

Cruel

Inactive Member
  • Posts

    27
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by Cruel

  1. Repaired :)

    MAKE = gmake
    CC = g++
    
    INCDIR =
    LIBDIR =
    BINDIR = ..
    OBJDIR = .obj
    
    GCC_VERSION = $(shell $(CC) --version 2>&1 | grep "(GCC)" | cut -d' ' -f3  | cut -d'.' -f1)
    BSD_VERSION = $(shell uname -v 2>&1 | cut -d' ' -f2 | cut -d'.' -f1)
    P4_VERSION = compiled
    $(shell if [ ! -d $(OBJDIR) ]; then mkdir $(OBJDIR); fi)
    
    TARGET = $(BINDIR)/db_r$(P4_VERSION)
    
    CFLAGS = -g -Wall -O2 -pipe -fno-rtti -fno-exceptions -pthread -D_THREAD_SAFE
    
    ifeq ($(GCC_VERSION), 4)
    CFLAGS += -mtune=i686
    else
    CFLAGS += -mcpu=i686
    endif
    
    # boost
    INCDIR += -I../../boost
    
    LIBDIR += -L../../libthecore/lib -L../../libsql -L../../libpoly -L../../libgame/lib
    
    ifeq ($(BSD_VERSION), 7)
    INCDIR += -I../../libmysql/7.x-5.1.35
    LIBDIR += -L../../libmysql/7.x-5.1.35
    else
    INCDIR += -I../../libmysql/5.x-5.1.35
    LIBDIR += -L../../libmysql/5.x-5.1.35
    endif
    
    LIBS = -lthecore -lmysqlclient -L/usr/local/lib/mysql -lsql -lpoly -lgame -lm -lz
    
    SRCS =	Config.cpp NetBase.cpp Peer.cpp PeerBase.cpp Main.cpp Lock.cpp DBManager.cpp 
    		Cache.cpp LoginData.cpp ClientManager.cpp ClientManagerPlayer.cpp ClientManagerLogin.cpp 
    		ClientManagerBoot.cpp ClientManagerParty.cpp ClientManagerGuild.cpp GuildManager.cpp HB.cpp 
    		PrivManager.cpp MoneyLog.cpp ItemAwardManager.cpp ClientManagerEventFlag.cpp Marriage.cpp 
    		Monarch.cpp BlockCountry.cpp ItemIDRangeManager.cpp ClientManagerHorseName.cpp version.cpp 
    		AuctionManager.cpp ProtoReader.cpp CsvReader.cpp 
    
    OBJS = $(SRCS:%.cpp=$(OBJDIR)/%.o)
    
    default: $(TARGET)
    
    $(TARGET): $(OBJS)
    	@echo linking ...
    	@$(CC) $(CFLAGS) $(LIBDIR) $(OBJS) $(LIBS) -o $(TARGET)
    	@touch version.cpp
    
    $(OBJDIR)/%.o: %.cpp
    	@echo compile $<
    	@$(CC) $(CFLAGS) $(INCDIR) -c $< -o $@
    
    $(OBJDIR)/version.o: version.cpp
    	@$(CC) $(CFLAGS) -D__P4_VERSION__="$(SVN_VERSION)" -c $< -o $@
    	@echo compile $<
    
    $(OBJDIR):
    	@mkdir $(OBJDIR)
    
    clean:
    	@rm -f $(OBJS) $(BINDIR)/db_*
    
    dep:
    	@touch Depend
    	makedepend -fDepend $(INCDIR) -I/usr/include/c++/3.3 -I/usr/include/c++/4.2 -p$(OBJDIR)/ $(SRCS) 2> /dev/null
    
    sinclude Depend
    
    

    :) change LIBS  too

  2. root@:/usr/src/mainline_released/mainline_sg/Srcs/Server/db/src # gmake
    compile Config.cpp
    compile NetBase.cpp
    compile Peer.cpp
    compile PeerBase.cpp
    compile Main.cpp
    compile Lock.cpp
    compile DBManager.cpp
    compile Cache.cpp
    Cache.cpp:365:7: warning: no newline at end of file
    compile LoginData.cpp
    compile ClientManager.cpp
    In file included from ClientManager.cpp:6:
    ../../common/VnumHelper.h:59:32: warning: no newline at end of file
    compile ClientManagerPlayer.cpp
    ClientManagerPlayer.cpp: In member function 'char* CClientManager::GetCommand(char*)':
    ClientManagerPlayer.cpp:433: warning: address of local variable 'command' returned
    compile ClientManagerLogin.cpp
    compile ClientManagerBoot.cpp
    In file included from ClientManagerBoot.cpp:8:
    ProtoReader.h:36:7: warning: no newline at end of file
    ClientManagerBoot.cpp: In member function 'bool CClientManager::InitializeMobTableSQL()':
    ClientManagerBoot.cpp:237: error: 'FCompareVnum' was not declared in this scope
    ClientManagerBoot.cpp: In member function 'bool CClientManager::InitializeItemTableSQL()':
    ClientManagerBoot.cpp:339: error: 'FCompareVnum' was not declared in this scope
    ClientManagerBoot.cpp: In member function 'bool CClientManager::InitializeMobTableTXT()':
    ClientManagerBoot.cpp:643: warning: statement has no effect
    ClientManagerBoot.cpp: At global scope:
    ClientManagerBoot.cpp:813: error: no 'bool CClientManager::InitializeItemTable()' member function declared in class 'CClientManager'
    ClientManagerBoot.cpp: In member function 'bool CClientManager::InitializeItemTable()':
    ClientManagerBoot.cpp:944: warning: unused variable 'testValue'
    ClientManagerBoot.cpp: In member function 'bool CClientManager::MirrorItemTableIntoDB()':
    gmake: *** [.obj/ClientManagerBoot.o] Error 1
    
    

    There's a lot of errors, and dont have a backup... to try again.

  3. you have declared in client vip?

    chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+1, "Bip01", localeInfo.FN_VIP_MARK)
        
    

    But better is to paste VIP before last, and declare in the client like:

    chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+41, "Bip01", localeInfo.FN_VIP_MARK)
        
    

    and in locale.py

    FN_VIP_MARK = "%s/effect/vip.mse" % app.GetLocalePath()
    
    
  4. Thank you very much, i will take a look and edit post.

    Look, here is structure of affects:

    enum EAffectBits
    {   
    	AFF_NONE,
    
    	AFF_YMIR,
    	AFF_INVISIBILITY,
    	AFF_SPAWN,
    
    	AFF_POISON,
    	AFF_SLOW,
    	AFF_STUN,
    
    	AFF_DUNGEON_READY,		// 던전에서 준비 상태
    	AFF_DUNGEON_UNIQUE,		// 던전 유니크 (클라이언트에서 컬링되지않음)
    
    	AFF_BUILDING_CONSTRUCTION_SMALL,
    	AFF_BUILDING_CONSTRUCTION_LARGE,
    	AFF_BUILDING_UPGRADE,
    
    	AFF_MOV_SPEED_POTION,
    	AFF_ATT_SPEED_POTION,
    
    	AFF_FISH_MIND,
    
    	AFF_JEONGWIHON,		// 전귀혼
    	AFF_GEOMGYEONG,		// 검경
    	AFF_CHEONGEUN,		// 천근추
    	AFF_GYEONGGONG,		// 경공술
    	AFF_EUNHYUNG,		// 은형법
    	AFF_GWIGUM,			// 귀검
    	AFF_TERROR,			// 공포
    	AFF_JUMAGAP,		// 주마갑
    	AFF_HOSIN,			// 호신
    	AFF_BOHO,			// 보호
    	AFF_KWAESOK,		// 쾌속
    	AFF_MANASHIELD,		// 마나쉴드
    	AFF_MUYEONG,		// 무영진 affect
    	AFF_REVIVE_INVISIBLE,	// 부활시 잠시동안 무적
    	AFF_FIRE,			// 지속 불 데미지
    	AFF_GICHEON,		// 기천대공
    	AFF_JEUNGRYEOK,		// 증력술
    	AFF_TANHWAN_DASH,		// 탄환격용 달리기어펙트
    	AFF_PABEOP,			// 파법술
    	AFF_CHEONGEUN_WITH_FALL,	// 천근추
    	AFF_POLYMORPH,
    	AFF_WAR_FLAG1,
    	AFF_WAR_FLAG2,
    	AFF_WAR_FLAG3,
    
    	AFF_CHINA_FIREWORK,
    	AFF_HAIR,	// 헤어
    	AFF_GERMANY, // 독일 
    
    	AFF_BITS_MAX
    };
    

    Here is list in playersettingmodule.py

    # LOCALE
    	chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+0, "Bip01", localeInfo.FN_GM_MARK)
    	# END_OF_LOCALE
    	
    	chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+3, "Bip01", "d:/ymir work/effect/hit/blow_poison/poison_loop.mse") ## 중독
    	chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+4, "", "d:/ymir work/effect/affect/slow.mse")
    	chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+5, "Bip01 Head", "d:/ymir work/effect/etc/stun/stun_loop.mse")
    	chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+6, "", "d:/ymir work/effect/etc/ready/ready.mse")
    	#chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+8, "", "d:/ymir work/guild/effect/10_construction.mse")
    	#chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+9, "", "d:/ymir work/guild/effect/20_construction.mse")
    	#chrmgr.RegisterEffect(chrmgr.EFFECT_AFFECT+10, "", "d:/ymir work/guild/effect/20_upgrade.mse")
    ........
    ........
    

    I seen that EFFECT_AFFECT is default 2, and that 2 is GM_MARK.

    5-th is poison, and in client version is "chrmgr.EFFECT_AFFECT+3".

    Thats why i think that in src just need to declared the list, and in client to localize where to find the effect. 

    What are you thinking about?

  5. I have c++ knowledge, not very big but have enougth to make some changes into src.

    I know method by quest, but i want to make it better. For example vips with quest when change armor that image upon head dissapear and just want to know where to find out  (gm.mse,ymirred.tga) in src, to add condition for VIP (think that this is somewhere in client binary).

  6. Hi guys, someone knows where is "gm.mse" declared from to add vip.mse.

    I want to make vip system from src.

    if (GetGMLevel() > GM_LOW_WIZARD)
    {
    m_afAffectFlag.Set(AFF_YMIR);
    m_bPKMode = PK_MODE_PROTECT;
    }
    
    if (GetGMLevel() == GM_VIP)
    {
    m_afAffectFlag.Set(AFF_YMIR_VIP);
    }
    
  7. Hello community,

     

    Today i will presend you, how to grand acces to players from CMD.

     

    Lets start:

    1.Open config.cpp

    2.Search 

    if ((fp = fopen("CMD", "r")))

    3.Replace 

    				fprintf(stderr, "CMD syntax error: <cmd> <DISABLE | LOW_WIZARD | WIZARD | HIGH_WIZARD | GOD>n");
    

    with 

    				fprintf(stderr, "CMD syntax error: <cmd> <DISABLE | PLAYER | LOW_WIZARD | WIZARD | HIGH_WIZARD | GOD>n");
    

    4.Search 

    if (!strcasecmp(levelname, "LOW_WIZARD"))
    				level = GM_LOW_WIZARD;

    and add under this

    else if (!strcasecmp(levelname, "PLAYER"))
    				level = GM_PLAYER;

    Finally, it should looks like this:

    2wLGvz1.png

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