Jump to content

[Working]OutdoorPvP r10049+


Recommended Posts

I have a question, what is the difference between InitWorldPvPArea() (witch is always true and not overridden) and InitOutdoorPvPArea() (which do not seem to be used in your patch, even if you create it) ?

Edit: As I suspected, those two functions should have the same name, just an error in the patch. Again, great work, congratulations!

Link to comment
Share on other sites

  • Replies 156
  • Created
  • Last Reply

Top Posters In This Topic

I have a question, what is the difference between InitWorldPvPArea() (witch is always true and not overridden) and InitOutdoorPvPArea() (which do not seem to be used in your patch, even if you create it) ?

Edit: As I suspected, those two functions should have the same name, just an error in the patch. Again, great work, congratulations!

Thanks. I have a few functionality changes and improvements in mind related to this patch, but I didn't have time yet to work on them. Hopefully I'll be able to finish them in the following weeks (or months :P). Then the patch will be very close to a complete state and I'll include a documentation as well.

Link to comment
Share on other sites

  • 2 months later...
  • 5 weeks later...

The patch wasn't updated for a long time because I was busy with SD2 stuff. Also I don't think I'll manage to update it until January. I hope that somewhere around Q1 next year I'll be able to come with a complete support for world pvp which could be added to the review section (split in a few small pieces, of course).

If somebody wants to help the development process I can share my current sources and mockups - https://github.com/xfurry/one/commits/world_pvp. Otherwise just wait until I'll post the patch source after I'll manage to update it and add the improvements I've been already planning on.

Link to comment
Share on other sites

  • 1 month later...

Are the needed core changes you've proposed the only reason why you feel this code is not suitable for inclusion into MaNGOS?

Regardless, I believe I speak for a great many in thanking you for all your hard work to have Outdoor PvP (or should it be called World PvP?) working as well as it does.

It's thanks to you, Schmoozerd, and Daemon Cantor that I was inspired to try and pick up C++ once more. It's slow going, especially after just recovering from a fried system, but I do wish to give back more to this community by contributing code and helping out with projects such as this one... hopefully in the near future.

Link to comment
Share on other sites

I think Xfurry is also working on a backport for MaNGOS-One, if the world_pvp branch in his one repo is indeed meant for that.

I know foohey posted a patch for a do-it-yourself backport for One, with some extra scripts for Outland and Silithus. However, it was committed to his Github repo last March, which is when Xfurry was still working on Outdoor/World PvP as a ScriptDev2 patch instead of the core mod it is now, if I recall correctly. The patch may be obsolete, though the scripts might still be useful.

I'm hoping we'll see a backport for Zero, soon, so all the 1.12 fans can slug it out in Silithus and Eastern Plaguelands.

Link to comment
Share on other sites

Compiling fails under freebsd when processing GameObject.h, didn't save the exact error, but at line 270 PlayersSet m_capturePlayers[bG_TEAMS_COUNT];

BG_TEAMS_COUNT is not defined, just a missing include? possibly BattleGround.h since that constant is defined there

(based on my memory) I think the file that failed to compile was Camera.cpp which includes GridNotifiers.h which includes GameObject.h but because BG_TEAMS_COUNT is not defined in any of the includes it failed

I can get the full error log later tonight if needed

Link to comment
Share on other sites

Move BG_TEAMS_COUNT define from BattleGround.h to SharedDefines.h

Thanks to xFurry

Maybe i'm a fool or something, I have

gmake[4]: *** Нет правила для сборки цели `../../../src/game/WorldPvP.cpp', требуемой для `WorldPvP.o'. Останов. 
gmake[4]: Leaving directory `/usr/home/wow/svn_test/comp/src/game

In english it's something like 'no rules for target... stopping'

All makefiles and includes are updated. Screwed up half a day with this xD

There is no such file nor such path in makefile

Link to comment
Share on other sites

@amaru

It is possible that there must be some cmake change to include the subdirectory "WorldPvp" of src/game, not familiar enough about this.

@ BG_TEAMS_COUNT

depends on the meaning what this is required for - from normal view there should be no need to include this to shared define (it is used for oPvp, not BG) - so maybe a new define would be better choice

Link to comment
Share on other sites

I think this help for cmake

diff --git a/src/game/CMakeLists.txt b/src/game/CMakeLists.txt

index 8f72c54..2a17e24 100644

--- a/src/game/CMakeLists.txt

+++ b/src/game/CMakeLists.txt

@@ -22,6 +22,7 @@ include_directories(

${CMAKE_CURRENT_SOURCE_DIR}

${CMAKE_CURRENT_SOURCE_DIR}/vmap

${CMAKE_CURRENT_SOURCE_DIR}/AuctionHouseBot

+ ${CMAKE_CURRENT_SOURCE_DIR}/WorldPvP

${CMAKE_SOURCE_DIR}/dep/include/g3dlite

${CMAKE_SOURCE_DIR}/dep/include

${CMAKE_SOURCE_DIR}/src/shared

--

1.7.5.4

Link to comment
Share on other sites

Unfortunately, i don't use cmake, only added

        WorldStateMgr.cpp \\
   WorldStateMgr.h \\
   ZoneScript.h \\
       WorldPvP/WorldPvP.cpp \\
   WorldPvP/WorldPvP.h \\
   WorldPvP/WorldPvPEP.cpp \\
   WorldPvP/WorldPvPEP.h \\
   WorldPvP/WorldPvPGH.cpp \\
   WorldPvP/WorldPvPGH.h \\
   WorldPvP/WorldPvPHP.cpp \\
   WorldPvP/WorldPvPHP.h \\
   WorldPvP/WorldPvPMgr.cpp \\
   WorldPvP/WorldPvPMgr.h \\
   WorldPvP/WorldPvPNA.cpp \\
   WorldPvP/WorldPvPNA.h \\
   WorldPvP/WorldPvPSI.cpp \\
   WorldPvP/WorldPvPSI.h \\
   WorldPvP/WorldPvPTF.cpp \\
   WorldPvP/WorldPvPTF.h \\
   WorldPvP/WorldPvPZM.cpp \\
   WorldPvP/WorldPvPZM.h

in game/Makefile.am

Link to comment
Share on other sites

@amaru

@ BG_TEAMS_COUNT

depends on the meaning what this is required for - from normal view there should be no need to include this to shared define (it is used for oPvp, not BG) - so maybe a new define would be better choice

If you would look at the comment in gameobject.h you would see that it says that we should define a generic enum for both cases as they have practically the same use for BG and OPvP. Btw I did not know that the current implementation would cause compile issues with some platforms :(

Link to comment
Share on other sites

typos in GameObject.cpp

// alliance takes the tower from neutral or contested to alliance

-- else if ((m_ownerFaction = TEAM_NONE || m_captureState == CAPTURE_STATE_CONTEST) && progressFaction == ALLIANCE && m_captureTicks > CAPTURE_SLIDER_NEUTRAL + neutralPercent * 0.5f)

++ else if ((m_ownerFaction == TEAM_NONE || m_captureState == CAPTURE_STATE_CONTEST) && progressFaction == ALLIANCE && m_captureTicks > CAPTURE_SLIDER_NEUTRAL + neutralPercent * 0.5f)

// horde takes the tower from neutral or contested to horde

-- else if ((m_ownerFaction = TEAM_NONE || m_captureState == CAPTURE_STATE_CONTEST) && progressFaction == HORDE && m_captureTicks < CAPTURE_SLIDER_NEUTRAL - neutralPercent * 0.5f)

++ else if ((m_ownerFaction == TEAM_NONE || m_captureState == CAPTURE_STATE_CONTEST) && progressFaction == HORDE && m_captureTicks < CAPTURE_SLIDER_NEUTRAL - neutralPercent * 0.5f)

Link to comment
Share on other sites

I'm not able to compile again, I've not actually read all the code in the world_pvp repo so the errors it's reporting are over my head.. sorry I can't be more helpful, I plan to digest the source this weekend to learn how it's all working

http://pastebin.com/mX1wu31m - Build Errors

Compile builds fine with clean mangos, mangos+SD2, but fails with mangos+SD2+world_pvp, again using FreeBSD

CXX compiler: c++ (GCC) 4.2.1 20070719 [FreeBSD]

Link to comment
Share on other sites

  • 2 weeks later...
Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

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. Privacy Policy Terms of Use