После скачивания, переименуем папку с нашими исходниками, в source (для удобства), так, чтобы путь к исходникам был такой:
Код:
Code
D:\work\source
Скачивание исходников завершено.
2. "Накатывание" патчей на ядро. Патч - это некая модификация для ядра, написанная на CPP, которая может в корне изменить работоспособность сервера, начиная от работы спелов заканчивая Гильд-Хаусами. Установка патчей производится с помощью программы Git. Для примера "накатывания" патча, я предлагаю Вам воспользоваться патчем, который дает возможность игрокам получать различные звания за убийства игроков противоположной фракции в зависимости от количества убийств.
Сам патч:
Code
# HG changeset patch -- Bitbucket.org # Project EasyCore # URL [url]http://bitbucket.org/easytrinity/easycore/overview[/url] # User easytrinity <admin@likenet.ru> # Date 1285770323 -14400 # Node ID ccb906b16695e1f93c91ea9d6f173f60968b9c45 # Parent 9696c9e8cca39bf0626faaf07240ed434d2df805 added PvP Rank system
--- a/src/server/game/World/World.cpp +++ b/src/server/game/World/World.cpp @@ -862,6 +862,18 @@ void World::LoadConfigSettings(bool relo sLog.outError("MinPetitionSigns (%i) must be in range 0..9. Set to 9.", m_int_configs[CONFIG_MIN_PETITION_SIGNS]); m_int_configs[CONFIG_MIN_PETITION_SIGNS] = 9; } + rate_values[RATE_PVP_RANK_EXTRA_HONOR] = sConfig.GetFloatDefault("PvPRank.Rate.ExtraHonor", 1); + std::string s_pvp_ranks = sConfig.GetStringDefault("PvPRank.HKPerRank", "10,50,100,200,450,750,1300,2000,3500,6000,9500,15000,21000,30000"); + char *c_pvp_ranks = const_cast<char*>(s_pvp_ranks.c_str()); + for (int i = 0; i !=HKRANKMAX; i++) + { + if (i==0) + pvp_ranks[0] = 0; + else if (i==1) + pvp_ranks[1] = atoi(strtok (c_pvp_ranks, ",")); + else + pvp_ranks[i] = atoi(strtok (NULL, ",")); + }
/// Can be used in SMSG_AUTH_RESPONSE packet enum BillingPlanFlags @@ -639,6 +660,8 @@ class World void SendZoneText(uint32 zone, const char *text, WorldSession *self = 0, uint32 team = 0); void SendServerMessage(ServerMessageType type, const char *text = "", Player* player = NULL);
+ uint32 pvp_ranks[HKRANKMAX]; + /// Are we in the middle of a shutdown? bool IsShutdowning() const { return m_ShutdownTimer > 0; } void ShutdownServ(uint32 time, uint32 options, uint8 exitcode);
Копируем всё это содержимое, сохраняем в файл с расширением .patch, например:
Код:
Code
rank.patch
После того как мы сохранили наш патч на компьютере, нам необходимо перенести его в папку с нашими исходниками, а точнее: Код:
Code
D:\work\source
Так чтобы полный путь к патчу был такой: Код:
Code
D:\work\source\rank.patch
Так следует поступать с любым устанавливаемым патчем.
После того как мы перенесли наш патч, жмем ПКМ по папке с исходниками, а точнее: Код:
Code
D:\work\source
И выбираем Git Bash Here:
В появившемся окне, пишем: Код:
Code
patch -p1 < название.patch, в нашем случае:
Жмем Enter.
Если после завершения вы видите:
Значит всё в порядке, можно продолжать. Вы можете продолжить установку других патчей (если они у вас имеются), но у нас он один, так что мы продолжим. Закрываем Git.
3. Сборка компилятора. Создаем новую папку в нашей рабочей директории, например: Код:
Code
D:\work\tc - в этой папке будет хранится готовый к компиляции проект.
После того как мы подготовили директорию, запускаем ранее нами установленный CMake.
Where is the source code - папка с исходниками, у нас это: Код:
Code
D:\work\source
Where to build the binaries - папка для готового проекта VS, у нас это: Код:
Code
D:\work\tc
Указываем эти данные в программе:
После жмем Configure и выбираем, на какой платформе будем компилировать, в моем случае это Visual Studio 10, выбираем, после чего жмем Finish:
Ждем завершение процесса, после чего вы увидите:
Столбец - TOOLS, позволяет нам после компилирования получить экстракторы карт. Так что ставим галочку. Больше ничего не меняем. Снова жмем Configure и видим:
После жмем: .
Если все прошло успешно - то мы увидим:
Можно закрывать CMake.
4. Компиляция ядра. Наш проект теперь хранится в: Код:
Code
D:\work\tc
Запускаем файл с расширением .sln, в нашем случае это: Код:
Code
TrinityCore.sln
После открытия VS, запускаем Диспетчер конфигураций... и меняем Активную конфигурацию решения с Debug на Release, после жмем Закрыть:
Если мы все сделали как надо, то можно смело жать F7 (Построить решение).
Если после компиляции мы видим результат без ошибок, значит, компиляция прошла успешно. Все, наше ядро скомпилировано, но оно ещё не работоспособно.
Win32OpenSSL-1_0_0d Win64OpenSSL-1_0_0d скачай полную версию она весит 16мб те что по 1-3 метра не качай даже + обызательно установи vcredist_x64_2008 vcredist_x64_2010 vcredist_x86_2008 vcredist_x86_2008 и фраймворк 4 dotNetFx40_Full_x86_x64