Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 14:49

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Source Code Bearbeiten (Game & Binary) ... welche Tools?

Discussion on Source Code Bearbeiten (Game & Binary) ... welche Tools? within the Metin2 Private Server forum part of the Metin2 category.

Reply
 
Old   #1

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Source Code Bearbeiten (Game & Binary) ... welche Tools?

Wollte mal fragen, welche Tools ihr benutzt / empfehlen könnt oder sogar Pflicht sind, wenn man den Sourcecode der Game und der Binary bearbeiten möchte.

Falls Microsoft Visual Studio ... welches könnt ihr empfehlen?
Ich kann mir durch meine Berufsschule kostenlos für jede Version eine Lizenz "kaufen" (DreamSpark) aber ich kenn den Unterschied zwischen Professional, Ultimate und Premium net ^^

Danke schonmal für Eure Antworten
rollback is offline  
Old 02/02/2015, 14:11   #2
 
DasSchwarzeT's Avatar
 
elite*gold: 399
Join Date: Sep 2011
Posts: 5,323
Received Thanks: 3,937
Zum Bearbeiten kannst du theoretisch auch Notepad++ nehmen, das Compilen wird damit jedoch eher weniger funktionieren
Dafür benutzt man meines Wissens nach VS2008 Ultimaten für die Binary und den game Source compilst du direkt on FreeBSD, wie man C++ in FreeBSD compilt googlest du am Besten
DasSchwarzeT is offline  
Thanks
1 User
Old 02/02/2015, 14:20   #3

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Quote:
Originally Posted by Noo'DasSchwarzeT View Post
wie man C++ in FreeBSD compilt googlest du am Besten
Ich glaub das wurde bei m2dev erklärt ...

Aber danke schonmal für deine Antwort. Dachte eig., dass man da nochmal ne Menge an Programmen braucht
rollback is offline  
Old 02/02/2015, 14:49   #4

 
elite*gold: 192
Join Date: Aug 2009
Posts: 5,797
Received Thanks: 3,141
Das compilen auf FreeBSD ist immer so eine Sache. Lt. meinem DEV war das auch erstmal ein hin und her bis es endlich funktioniert hat. auf einem anderen, sehr bekannten Metin2Forum was von einem P-server Admin geleitet wird, kannst dir eine VM runterladen welche du compilen kannst.
[-Lee-] is offline  
Thanks
1 User
Old 02/02/2015, 14:59   #5
Trade Restricted
 
elite*gold: 9
Join Date: Jul 2014
Posts: 818
Received Thanks: 677
Ich kann hier gerne noch einmal ein GUIDE posten indem die entsprechenden Konfigurationen um ihn wirklich compile fähig zu gestalten enthalten sind
grαyfox is offline  
Thanks
2 Users
Old 02/02/2015, 15:06   #6

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
Quote:
Originally Posted by [-Lee-] View Post
Das compilen auf FreeBSD ist immer so eine Sache. Lt. meinem DEV war das auch erstmal ein hin und her bis es endlich funktioniert hat. auf einem anderen, sehr bekannten Metin2Forum was von einem P-server Admin geleitet wird, kannst dir eine VM runterladen welche du compilen kannst.
Ja hab ich auch schon gesehen, da wollte ich mir das nachher laden
Also da habe ich dann ne VM, wie auch mein Hamachi Server jetzt, die starte ich, compile und ziehe mir die compilte Game raus und lade sie auf meinen Hamachi Server?

Quote:
Originally Posted by grαyfox View Post
Ich kann hier gerne noch einmal ein GUIDE posten indem die entsprechenden Konfigurationen um ihn wirklich compile fähig zu gestalten enthalten sind
Wäre nicht schlecht
rollback is offline  
Old 02/02/2015, 15:08   #7
Trade Restricted
 
elite*gold: 9
Join Date: Jul 2014
Posts: 818
Received Thanks: 677
Alles klar werde mich mal im Verlaufe des Tages daran setzten
grαyfox is offline  
Thanks
2 Users
Old 02/02/2015, 15:12   #8
 
elite*gold: 0
Join Date: Jan 2014
Posts: 268
Received Thanks: 373
Ich würde zum Bearbeiten ehrlich gesagt nicht zu Notepad++ wählen, sondern Visual Studio (welche Version auch immer). Zum einfachen Bearbeiten von ein zwei kleinen Sachen mag Notepad++ praktisch sein, wenn man aber ein wenig mehr damit arbeitet, dann ist VS tatsächlich sehr praktisch
Restliches wurde bereits geschrieben.

Kind Regards
Lefloyd is offline  
Thanks
2 Users
Old 02/02/2015, 15:20   #9
 
DasSchwarzeT's Avatar
 
elite*gold: 399
Join Date: Sep 2011
Posts: 5,323
Received Thanks: 3,937
Quote:
Originally Posted by Lefloyd View Post
Ich würde zum Bearbeiten ehrlich gesagt nicht zu Notepad++ wählen, sondern Visual Studio (welche Version auch immer). Zum einfachen Bearbeiten von ein zwei kleinen Sachen mag Notepad++ praktisch sein, wenn man aber ein wenig mehr damit arbeitet, dann ist VS tatsächlich sehr praktisch
Restliches wurde bereits geschrieben.

Kind Regards
Ich hab es ihm ja nicht empfohlen sondern wollte ihm zeigen, dass es sich im Prinzip wie bei allen anderen Programmiersprachen nur um "Text" geht und man für den nicht wirklich was besonderes braucht. Bei C++ muss man das Ganze dann noch compilen, sodass der Rechner den Code versteht. Dafür braucht man halt Visual Studio oder einen anderen Compiler. Es ist sicherlich viel entspannter in VS zu programmieren, es geht jedoch theoretisch auch in Notepad++. Allerdings bin ich bei dem Thema hier jetzt raus, da Leute wie grayfox von der Thematik viel mehr Ahnung haben und sich hier ja schon zu Wort melden.
DasSchwarzeT is offline  
Old 02/05/2015, 20:04   #10

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
So ich komme grad nicht weiter ...
Ich muss doch irgendwie per FileZilla darauf Connecten um den Source zu ziehen, wie mach ich das jetzt? Hab beim sysinstall die Standardschritte gemacht für Hamachi Server... ich hab bestimmt irgendwas total falsch gemacht oder?

rollback is offline  
Old 02/05/2015, 20:18   #11
 
Dyshaxo's Avatar
 
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
Quote:
Originally Posted by [Sensenmann] View Post
So ich komme grad nicht weiter ...
Ich muss doch irgendwie per FileZilla darauf Connecten um den Source zu ziehen, wie mach ich das jetzt? Hab beim sysinstall die Standardschritte gemacht für Hamachi Server... ich hab bestimmt irgendwas total falsch gemacht oder?

Alles Fresh =)

Ich nehme an - das ist die VM von Mt2dev mit BSD9.2?
Falls ja:
Da müsste der Source schon drauf sein, unter /usr/src/source
-> jetzt suchst du dir 'ne Branch aus (*hust* mainline_released), fügst dieses Makefile ein:
unter /usr/src/source/mainline_released/mainline_sg/Srcs/Server/game/src/


Code:
PLATFORM = $(shell file /bin/ls | cut -d' ' -f3 | cut -d'-' -f1)

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)
SVN_VERSION = 40250

CC = g++

INCDIR =
LIBDIR =
BINDIR = ..
OBJDIR = OBJDIR
$(shell if [ ! -d $(OBJDIR) ]; then mkdir $(OBJDIR); fi)

# Standard Setting
LIBS = -pthread -lm -lmd
# Removed -fno-rtti 
CFLAGS = -g -Wall -O2 -m32 -pipe -fexceptions -D_THREAD_SAFE -DNDEBUG # -D_USE_SERVER_KEY_

ifeq ($(GCC_VERSION), 4)
CFLAGS += -mtune=i686 -fstack-protector-all
else
CFLAGS += -mcpu=i686
endif

# boost
INCDIR += -I../../../Extern/include/boost

# DevIL
INCDIR += -I../../libdevil
LIBDIR += -L../../libdevil
LIBS += -lIL -lpng -ltiff -lmng -llcms -ljpeg

# MySQL
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

LIBDIR += -L/usr/local/lib/mysql

LIBS += -lmysqlclient -lz

# Miscellaneous external libraries
INCDIR += -I../../../Extern/include
LIBDIR += -L../../../Extern/lib
LIBS += -lcryptopp -lgtest

# HackShield
INCDIR += -I../../libhackshield/include
LIBDIR += -L../../libhackshield/lib
LIBS += -lanticpxsvr

# XTrap
INCDIR += -I../../libxtrap/include

# openssl
#INCDIR += -I/usr/include
#LIBS += -lssl
#LIBS += /usr/lib/libssl.a

# Project Library
INCDIR += -I../../liblua/include
INCDIR += -I/usr/local/include
INCDIR += -I../../libserverkey
LIBDIR += -L../../libthecore/lib -L../../libpoly -L../../libsql -L../../libgame/lib -L../../liblua/lib -L../../libserverkey
LIBDIR += -L/usr/local/lib
LIBS += -lthecore -lpoly -llua -llualib -lsql -lgame -lserverkey
USE_STACKTRACE = 0
ifeq ($(USE_STACKTRACE), 1)
LIBS += /usr/local/lib/libexecinfo.a
endif

TARGET  = $(BINDIR)/game_r$(SVN_VERSION)_$(PLATFORM)

CFILE	= minilzo.c

CPPFILE = BattleArena.cpp FSM.cpp MarkConvert.cpp MarkImage.cpp MarkManager.cpp OXEvent.cpp TrafficProfiler.cpp ani.cpp\
		  arena.cpp banword.cpp battle.cpp blend_item.cpp block_country.cpp buffer_manager.cpp building.cpp castle.cpp\
		  char.cpp char_affect.cpp char_battle.cpp char_change_empire.cpp char_horse.cpp char_item.cpp char_manager.cpp\
		  char_quickslot.cpp char_resist.cpp char_skill.cpp char_state.cpp PetSystem.cpp cmd.cpp cmd_emotion.cpp cmd_general.cpp\
		  cmd_gm.cpp cmd_oxevent.cpp config.cpp constants.cpp crc32.cpp cube.cpp db.cpp desc.cpp\
		  desc_client.cpp desc_manager.cpp desc_p2p.cpp dev_log.cpp dungeon.cpp empire_text_convert.cpp entity.cpp\
		  entity_view.cpp event.cpp event_queue.cpp exchange.cpp file_loader.cpp fishing.cpp gm.cpp guild.cpp\
		  guild_manager.cpp guild_war.cpp horse_rider.cpp horsename_manager.cpp input.cpp input_auth.cpp input_db.cpp\
		  input_login.cpp input_main.cpp input_p2p.cpp input_teen.cpp input_udp.cpp ip_ban.cpp\
		  item.cpp item_addon.cpp item_attribute.cpp item_manager.cpp item_manager_idrange.cpp locale.cpp\
		  locale_service.cpp log.cpp login_data.cpp lzo_manager.cpp marriage.cpp matrix_card.cpp\
		  messenger_manager.cpp mining.cpp mob_manager.cpp monarch.cpp motion.cpp over9refine.cpp p2p.cpp packet_info.cpp\
		  party.cpp passpod.cpp pcbang.cpp polymorph.cpp priv_manager.cpp pvp.cpp\
		  questevent.cpp questlua.cpp questlua_affect.cpp questlua_arena.cpp questlua_ba.cpp questlua_building.cpp\
		  questlua_danceevent.cpp questlua_dungeon.cpp questlua_forked.cpp questlua_game.cpp questlua_global.cpp\
		  questlua_guild.cpp questlua_horse.cpp questlua_pet.cpp questlua_item.cpp questlua_marriage.cpp questlua_mgmt.cpp\
		  questlua_monarch.cpp questlua_npc.cpp questlua_oxevent.cpp questlua_party.cpp questlua_pc.cpp\
		  questlua_quest.cpp questlua_target.cpp questmanager.cpp questnpc.cpp questpc.cpp\
		  refine.cpp regen.cpp safebox.cpp sectree.cpp sectree_manager.cpp sequence.cpp shop.cpp\
		  skill.cpp start_position.cpp target.cpp text_file_loader.cpp trigger.cpp utils.cpp vector.cpp war_map.cpp\
		  wedding.cpp xmas_event.cpp version.cpp panama.cpp threeway_war.cpp map_location.cpp auth_brazil.cpp\
		  BlueDragon.cpp BlueDragon_Binder.cpp DragonLair.cpp questlua_dragonlair.cpp\
		  HackShield.cpp HackShield_Impl.cpp char_hackshield.cpp skill_power.cpp affect.cpp\
		  SpeedServer.cpp questlua_speedserver.cpp XTrapManager.cpp\
		  auction_manager.cpp FileMonitor_FreeBSD.cpp ClientPackageCryptInfo.cpp cipher.cpp\
		  buff_on_attributes.cpp check_server.cpp dragon_soul_table.cpp DragonSoul.cpp\
		  group_text_parse_tree.cpp char_dragonsoul.cpp questlua_dragonsoul.cpp\
		  shop_manager.cpp shopEx.cpp item_manager_read_tables.cpp


COBJS	= $(CFILE:%.c=$(OBJDIR)/%.o)
CPPOBJS	= $(CPPFILE:%.cpp=$(OBJDIR)/%.o)

MAINOBJ = $(OBJDIR)/main.o
MAINCPP = main.cpp

TESTOBJ = $(OBJDIR)/test.o
TESTCPP = test.cpp
TEST_TARGET = $(BINDIR)/test

default: $(TARGET) $(TEST_TARGET)

$(OBJDIR)/minilzo.o: minilzo.c
	@$(CC) $(CFLAGS) $(INCDIR) -c $< -o $@
	@echo compile $<

$(OBJDIR)/version.o: version.cpp
	@$(CC) $(CFLAGS) -D__USER__=\"$(USER)\" -D__HOSTNAME__=\"$(HOSTNAME)\" -D__PWD__=\"$(PWD)\" -D__SVN_VERSION__=\"$(SVN_VERSION)\" -c $< -o $@
	@echo compile $<

$(OBJDIR)/%.o: %.cpp
	@echo compile $<
	@$(CC) $(CFLAGS) $(INCDIR) -c $< -o $@

limit_time:
	@echo update limit time
	@python update_limit_time.py

$(TARGET): $(CPPOBJS) $(COBJS) $(MAINOBJ)
	@echo linking $(TARGET)....
	@$(CC) $(CFLAGS) $(LIBDIR) $(COBJS) $(CPPOBJS) $(MAINOBJ) $(LIBS) -o $(TARGET)

$(TEST_TARGET): $(TESTCPP) $(CPPOBJS) $(COBJS) $(TESTOBJ)
	@echo linking $(TEST_TARGET)
	@$(CC) $(CFLAGS) $(LIBDIR) $(COBJS) $(CPPOBJS) $(TESTOBJ) $(LIBS) -o ../test

clean:
	@rm -f $(COBJS) $(CPPOBJS)
	@rm -f $(BINDIR)/game_r* $(BINDIR)/conv

tag:
	ctags *.cpp *.h *.c

dep:
	makedepend -f Depend $(INCDIR) -I/usr/include/c++/3.3 -I/usr/include/c++/4.2 -p$(OBJDIR)/ $(CPPFILE) $(CFILE) $(MAINCPP) $(TESTCPP) 2> /dev/null > Depend

sinclude Depend
ziehst den Extern-Ordner aus /usr/src/source/mainline/Srcs/ nach /usr/src/source/mainline_released/mainline_sg/Srcs,

und sobald das erledigt ist - navigierst du nach:
/usr/src/source/mainline_released/mainline_sg/Srcs/Server/game/src/

tippst: "gmake clean" und "gmake -j20" -> done =)
Dyshaxo is offline  
Old 02/05/2015, 20:24   #12

 
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
ich komm ja nicht mit filezilla rauf ...^^
rollback is offline  
Old 02/05/2015, 20:26   #13
 
Dyshaxo's Avatar
 
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
Quote:
Originally Posted by [Sensenmann] View Post
ich komm ja nicht mit filezilla rauf ...^^
Adde mich in Skype, sobald ich geschlafen hab' (morgen) mach' ich dir das =)
Dyshaxo is offline  
Thanks
1 User
Old 02/05/2015, 20:52   #14
 
Dyshaxo's Avatar
 
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
Quote:
Originally Posted by i[Remix] View Post
Du meinst, du schreibst die Tipps zum Compilen von anderen ab?
Ja man, das kriegt echt nicht jeder hin!

Brauchst zwei Programme: Notepad++ (oder einen anderen Editor, z.B Sublime) und Visual Studio (um die Binary zu compilen)
Welche Version von Visual Studio ist so irrelevant, wie nie etwas zuvor.
Ich weiß nicht, welcher Idiot erzählt hat, dass man VS2008 braucht, um die Binary zu compilen.
Die Binary wird lediglich mit VS2008 von ymir bearbeitet, weil sie dafür einfach Lizenzen haben.
Bei den VS Preisen ist das auch verständlich, dass man nicht unnötig eine neuere Version kauft ()
Trotzdem unterstützt jede neuere Version auch 2008er Projekte.



Dann nimm WinSCP. FileZilla ist sowieso bullshit.
Nope, es ist nicht ganz vollkommen Latte, z.B. unterstützt der compiler von VS2012 keine initializer_lists, weshalb' mir mein wunderschönes stylisches VS2012 Ultimate leuchte leuchte bling bling holy *sing* von Dreamspark 'nen Dreck genützt hat
Dyshaxo is offline  
Old 02/05/2015, 21:11   #15
 
Dyshaxo's Avatar
 
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
Quote:
Originally Posted by i[Remix] View Post
Seit wann benutzt der Source C++11 Neuerungen?
Und außerdem compilen wir unsere Binary mit VS2012
Well, dann hab' ich offensichtlich was falsch gemacht
Dyshaxo is offline  
Reply


Similar Threads Similar Threads
[Help]TQ binary accserver Source code
01/17/2010 - CO2 Private Server - 3 Replies
Can any one bring to me TQ binary accserver Source code or any program can i use to make some adjustments on it



All times are GMT +1. The time now is 14:51.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.