|
You last visited: Today at 14:49
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.
02/02/2015, 14:07
|
#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
|
|
|
02/02/2015, 14:11
|
#2
|
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
|
|
|
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
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
|
|
|
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.
|
|
|
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
|
|
|
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-]
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
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
|
|
|
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
|
|
|
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
|
|
|
02/02/2015, 15:20
|
#9
|
elite*gold: 399
Join Date: Sep 2011
Posts: 5,323
Received Thanks: 3,937
|
Quote:
Originally Posted by Lefloyd
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.
|
|
|
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?
|
|
|
02/05/2015, 20:18
|
#11
|
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
|
Quote:
Originally Posted by [Sensenmann]
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 =)
|
|
|
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 ...^^
|
|
|
02/05/2015, 20:26
|
#13
|
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
|
Quote:
Originally Posted by [Sensenmann]
ich komm ja nicht mit filezilla rauf ...^^
|
Adde mich in Skype, sobald ich geschlafen hab' (morgen) mach' ich dir das =)
|
|
|
02/05/2015, 20:52
|
#14
|
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
|
Quote:
Originally Posted by i[Remix]
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
|
|
|
02/05/2015, 21:11
|
#15
|
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
|
Quote:
Originally Posted by i[Remix]
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
|
|
|
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.
|
|