Projekt

Allgemein

Profil

Aktionen

Fehler #10244

offen

[Sonstiges] Spawns der Kräuter und Erze in ein Pool System verpacken

Von erimioa vor mehr als 10 Jahren hinzugefügt. Vor 12 Monaten aktualisiert.

Status:
Bestätigt
Priorität:
Niedrig
Zugewiesen an:
-
Kategorie:
Sonstiges
Zielversion:
-
Beginn:
27.07.2014

Beschreibung

Derzeitiger Zustand:
Alle Kräuter und Erze eines Typs (z.B. alle Friedensblumen oder alle Eisenvorkommen) sind in einem Pool ein getragen und mit einem sehr hohen max. spawn versehen. Als beispiel thorium 550 positionen von denen 500 spawns gleichzeitig maximal da sind.

Daran ist Buggy:
Kräuter und Erze sollten (je für sich (also nicht kräuter zusammen mit erzen, sondern alle Erze in einen pool und alle kräuter in ein anderen Pool)) mit allen anderne kräutern bzw. Erzen innerhalb eines Gebietes gepoolt sein. Dabei sollte die maximal gleichzeitigen Spawns deutlich geringer sein.

Was mein Fix ist:
Mein Fix packt alle Kräuter pro gebiet und alle Erze pro gebiet in einen Pool. Die alten und fehlerhaften Pools werden gelöscht und durch die neuen ersetzt. Die maximalen Spawns pro gebiet (und für erze und kräuter getrennt) sind im derzeitigen Zustand an die Erfahrung von TrinityCore angepasst, welches jede 3,5. Position mit einem Spawn belegt.

Was mein Fix nicht ist:
Absolute blizzlike ist dies dann immer noch nicht. Ich habe kein weiteren Spawn hinzugefügt oder entfernt, obwohl einige falsch sind und viele fehlen. Außerdem müsste viel intensiever ein spawnpunkt als Position gesehen werden, während derzeit es vor allem ein gespawntes GO ist.

was noch zu tun ist:
Es muss noch entgültig entschieden werden, wie viele spawns pro gebiet vorhanden sein müssen. Derzeit ist der max spawn durch einen dividenten von 3,5 entstanden, wobei auf die nächste natürliche Zahl gerundet wurde.
Viel wichtiger sind die respawnzeiten. Meine empfehlungen sind, dass alle erze und Kräuter zwischen 10 - 15 Minuten eingestellt werden sollten. Höchstens ganz spezielle Vorkommen, wie Khorium etwas höher. Aber wenn der derzeitige Zustand beibehalten werden würde mit der respawnzeit, aber dennoch nur ein 3,5 divident, würde das farmen erheblichst erschwert werden.

Siehe auch http://paste2.org/hxEP0hCZ

Was zu testen ist:
natürlich sollte in so vielen wie nur möglich gebieten rein geschaut werden, ob die richtigen kräuter oder Erze da sind und auch die Anzahl ungefähr stimmt. Pro gebiet kann dies natürlich noch erhöht oder erniedrigt werden.

Wie bin ich auf meine Gebiete gekommen:
Ich habe in einem Core in dem Startup folgendes mit durchlaufen lassen:

void World::LoadGoContent()
{
    TC_LOG_INFO(LOG_FILTER_SERVER_LOADING, "Loading Go Data");

        QueryResult result = CharacterDatabase.Query("SELECT guid, map, position_x, position_y, position_z FROM mangos_dev_mangos.gameobject WHERE id IN (183043,176640,176586,3730,1622,2042,183046 ,142143,181166,176588,3726,1619,2866,181276,1618, 3724,142144,2046,176638,176583,1628,142145,176637, 2043,1624,2041,142140,3727,1620,181281,181279, 176587,176641,3725,1617,176636,142142,181277,183044,181270, 176639,176584,183045,181271,181272,3729,1621,1623,2044,2045,181275,176589, 181280,142141,176642)");
    if (!result)
    {
        TC_LOG_INFO(LOG_FILTER_SERVER_LOADING, "Nooooooooooooooooooooooooooooooooo");
        return;
    }

    // uint32 zoneId = sMapMgr->GetZoneId(MapId, x, y, z);
    do
    {
        Field* fields = result->Fetch();
        uint64 guid = fields[0].GetUInt64();
        uint32 map = fields[1].GetUInt32();
        float mx = fields[2].GetFloat();
        float my = fields[3].GetFloat();
        float mz = fields[4].GetFloat();

        if (guid != 16780
            && guid != 4004
            && guid != 86047)
            if (uint32 zoneId = sMapMgr->GetZoneId(map, mx, my, mz))
                TC_LOG_INFO(LOG_FILTER_SERVER_LOADING, "(%d, %d, 0, 'herb - '),", zoneId, guid);

    } while (result->NextRow());

    TC_LOG_INFO(LOG_FILTER_SERVER_LOADING, "Loaded");
}

bzw mit den IDs
(
123309, 2047, 150081, 3764, 1732, 103711,
2054, 1734, 73941, 150080, 181557, 181570,
181556, 181569, 165658, 1735, 1733, 73940,
324, 123848, 150082, 176643, 175404, 177388,
181555, 176645, 2040, 123310, 150079, 1731,
103713, 3763, 2055
)

Dies gibt dann im startfenster entsprechend die GUIds+ ZonenIDs. Diese Ausgabe wurde dann noch von hand bearbeitet, in dem alle Treffer aus einer Zone raus getragen wurde und diese in ein Pool gesetzt. Die Zonenzuordnung hat man aus der worldmaparea.dbc erhalnte.


Dateien

b2b_pool_ore_and_herb.sql (775 KB) b2b_pool_ore_and_herb.sql Fix vom Pool erimioa, 27.07.2014 20:04
Screenshot_3.png (1,76 MB) Screenshot_3.png b2b-jose87, 28.12.2023 17:33
Screenshot_4.png (225 KB) Screenshot_4.png b2b-jose87, 28.12.2023 18:21
Vorkommen Schattenmondtal.png (4,21 MB) Vorkommen Schattenmondtal.png b2b-jose87, 28.12.2023 18:22

Zugehörige Tickets

Beziehung mit B2B Live TBC 2.4.3 - Fehler #21364: [Kräuterkunde/Bergbau]Eventuelle fehlende Kräuter (Erze?)Recherche11.11.2016Aktionen
Beziehung mit B2B Live TBC 2.4.3 - Fehler #12077: [Sonstiges] Spawnpunkte Goldener Sansam in Sümpfe des ElendesBestätigt30.12.2014Aktionen
Beziehung mit B2B Live TBC 2.4.3 - Fehler #9209: [Sontiges] zu viele Zinnvorkommen in Westfall ("Der Jangoschacht")Bestätigt10.04.2014Aktionen
Aktionen #1

Von erimioa vor mehr als 10 Jahren aktualisiert

  • Kategorie wurde auf Sonstiges gesetzt
  • Zugewiesen an wurde auf fgreinus gesetzt
Aktionen #2

Von erimioa vor mehr als 10 Jahren aktualisiert

Aktionen #3

Von itslovelol vor mehr als 10 Jahren aktualisiert

062 - Duplicate entry '73586' for key 'PRIMARY'

Aktionen #4

Von jadihasi vor mehr als 10 Jahren aktualisiert

  • Thema wurde von Spawns der Käruter und Erze in ein Pool System verpacken zu [Sonstiges] Spawns der Kräuter und Erze in ein Pool System verpacken geändert
Aktionen #5

Von asmodan42 vor mehr als 10 Jahren aktualisiert

  • Status wurde von Neu zu Bestätigt geändert
  • Priorität wurde von Normal zu Niedrig geändert
Aktionen #6

Von Ajolkus vor mehr als 10 Jahren aktualisiert

  • Zugewiesen an fgreinus wurde gelöscht
Aktionen #7

Von B2B-SannerKek vor etwa 8 Jahren aktualisiert

  • Beziehung mit Fehler #21364: [Kräuterkunde/Bergbau]Eventuelle fehlende Kräuter (Erze?) wurde hinzugefügt
Aktionen #8

Von B2B-SannerKek vor etwa 8 Jahren aktualisiert

  • Beziehung mit Fehler #12077: [Sonstiges] Spawnpunkte Goldener Sansam in Sümpfe des Elendes wurde hinzugefügt
Aktionen #9

Von B2B-SannerKek vor etwa 8 Jahren aktualisiert

  • Beziehung mit Fehler #9209: [Sontiges] zu viele Zinnvorkommen in Westfall ("Der Jangoschacht") wurde hinzugefügt
Aktionen #10

Von b2b-jose87 vor 12 Monaten aktualisiert

Meines Erachtens würde es reichen, wenn man selber geographische Pools festlegt.
Das Bild im Anhang erklärt es ganz gut. Wie aufwändig das wäre, kann ich leider nicht einschätzen. Theoretisch müsste man "nur" 4 Punkte als Eckpunkte eines Vierecks bestimmen und alle Spawns innerhalb gehören zu diesem Pool.

Wie ist denn hier der Stand?

Aktionen #11

Von b2b-jose87 vor 12 Monaten aktualisiert

Ich habe mal eine Runde auf dem offi in wotlk gedreht. Es waren maximal 2 andere Spieler da. Das dürfte die Anzahl also kaum verändern.
Ich habe Gathermate angeschmissen, die Vorkommen angehauen und folgendes war vorhanden (siehe auch Anhang):

8 Teufelseisenvorkommen (von 96 Spawns laut wowhead)
9 Adamantitvorkommen (von 115 Spawns)
3 reiche Adamantitvorkommen (von 100 Spawns)
2 Khoriumvorkommen (von 19 Spawns)

Aktionen #12

Von b2b-jose87 vor 12 Monaten aktualisiert

Nachtrag:
15-16 Netheritvorkommen in der Mine war ich jetzt nicht.

Aktionen

Auch abrufbar als: Atom PDF