What's new

[7.6] RME - Problem z depo

Vrxey

New User
Joined
May 23, 2021
Messages
2
Reaction score
0
Cześć!
Chciałem pobawić się w robienie mapki pod Tibię 7.6 - tak czysto dla siebie ewentualnie żeby pograć ze znajomymi, ale zapomniałem, że RME nie lubi się z Tibią 7.6.
Kiedyś był taki "skrypt" który wklejało się do folderu z RME, który naprawiał skrzynki w depo.
Ma ktos może ten skrypt?
Będę mega wdzięczny
 

Kuzyn

Dziad.
Staff member
Joined
May 3, 2008
Messages
1,936
Reaction score
165
A co konkretnie nie działa z depo? Od wieków nic nie robiłem na 7.6, może da radę coś zaradzić na to.
 

Vrxey

New User
Joined
May 23, 2021
Messages
2
Reaction score
0
Chodzi o to, że jak jest jakakolwiek mapa na 7.6 przykładowo Armia 6 6 6 to po zapisie mapy w RME wywala depo tj.
Nie ma głównej skrzynki w Depo "Depot" i każdy może wrzucić i wyciągnąć rzeczy.

#edit
Kiedyś dodawało się kilka linijek w items.xml w RME i można było wybrać "town" po wejściu w properties.

1696424476385.png

a w grze
1696424949040.png
 
Last edited:

Kuzyn

Dziad.
Staff member
Joined
May 3, 2008
Messages
1,936
Reaction score
165
Pogadaliśmy chwilę na DC i wychodzi na to, że są trzy możliwe rozwiązania jak dodać sobie depo na 7.6 w dzisiejszych czasach:
  • Pierwsza sprawa, jeśli dana dystrybucja serwera, który posiadacie została zaktualizowana i jest kompatybilna z RME, to wystarczy sprawdzić czy w items.xml w plikach edytora macie dodane odpowiednie linijki, te co poniżej. Ale to i tak nie gwarantuje, że będzie można przykładowo przypisać dany depozyt do miasta (ale sam w sobie będzie działał).
XML:
<!-- depots -->
    <item id="2589" article="a" name="locker">
        <attribute key="type" value="depot"/>
        <attribute key="containerSize" value="30"/>
    </item>
    <item id="2590" article="a" name="locker">
        <attribute key="type" value="depot"/>
        <attribute key="containerSize" value="30"/>
    </item>
    <item id="2591" article="a" name="locker">
        <attribute key="type" value="depot"/>
        <attribute key="containerSize" value="30"/>
    </item>
    <item id="2592" article="a" name="locker">
        <attribute key="type" value="depot"/>
        <attribute key="containerSize" value="30"/>
    </item>
  • Jeśli nie, to sprawa się komplikuje bo musicie mieć source danego serwera i wtedy zrobić małego fixa, dodanego przez hans henrik na Otlandzie.
Dla YurOTS 7.6X, i innych bazowanych na yurots:
W pliku const76.h znaleźć linijkę
C++:
enum item_t {
i dodać poniższe
C++:
#ifdef HHB_RME_HOTFIX
ITEM_LOCKER1 = 2589,
ITEM_LOCKER2 = 2590,
ITEM_LOCKER3 = 2591,
ITEM_LOCKER4 = 2592,
#endif//HHB_RME_HOTFIX
Następnie w item.cpp pod tym
C++:
Item* Item::CreateItem(const unsigned short _type, unsigned short _count /*= 0*/)
{
Item *newItem;
Dodać to:
C++:
#ifdef HHB_RME_HOTFIX
if(_type == ITEM_LOCKER1 || _type == ITEM_LOCKER2 || _type == ITEM_LOCKER3 || _type == ITEM_LOCKER4){
newItem = new Container(_type);

Container* c=dynamic_cast<Container*>(newItem);
if(c)
{
c->depot=true;
}/// else {std::cout << "depot error..."<<std::endl;}
} else
#endif//HHB_RME_HOTFIX
A na koniec jeszcze to: -DHHB_RME_HOTFIX
Ale tak szczerze mówiąc, nie wiem czy autor miał na myśli dodanie tej linijki po #endif dodatkowo? Nie znam się na C++ zupełnie, pewnie chodzi o to, żeby gdzieś to zadeklarować?

Dodatkowo ktoś zgłosił jeszcze uwagę, że musiał zmienić:
C++:
c->depot=true;
Na:
C++:
c->depot=1;
  • Ostatnia opcja jest dla tych, którzy koniecznie chcą pracować na dystrybucji, która nie jest kompatybilna z RME. Pozostaje użyć starego poczciwego SimOne's Map Editora, link na otlandzie:
 
Top