Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Piszemy bronie do Gothic


Ubytek

Rekomendowane odpowiedzi

Opublikowano

W tym wielkim poradniku opiszę Wam sposób na napisanie broni do Gothic.

Podzieliłem poradnik na kilka części, aby łatwiej się go przeglądało.

Zacznijmy od początku.

Patrząc na nazwę tematu możemy dostrzec, że będzie mowa o pisaniu, czyli stworzeniu broni od zera, a nie rysowaniu danego modelu broni.

Jest to dość czasochłonne zajęcie, ale czego nie robią poszukiwacze mocniejszych wrażeń ;-)

Potrzebny będzie dowolny notatnik. Tak więc tworzymy nowy dokument tekstowy.

Zaczynamy od kodu broni. Może być on dowolny, jednak musi mieć taką postać:

INSTANCE ItRw_tutaj_wstawiamy_nasz_kod
{

Poniżej są przedstawione działy z rodzajami wyposażenia:

_________________

Łuki/Kusze

Nasza kusza/łuk musi mieć swoją nazwę w grze, dlatego nadajmy im nazwę

name   = "Nazwa Łuku/Kuszy";

Kolejnym krokiem będzie Rodzaj przedmiotu.

Powinien zawierać następujące informacje:

- Przedmiot będzie oznaczony tym kodem:

mainflag   = ITEM_KAT_FF;


- Rodzaj broni. Dla łuku będzie to:

flags     = ITEM_BOW;

Natomiast dla kuszy:

flags   = ITEM_CROSSBOW;

- Ostatnią informacją dla rodzaju przedmiotu jest materiał, z jakiego

wykonana jest nasz łuk/kusza.

Standardowym materiałem będzie drewno:

material   = MAT_WOOD;

Niektórym kuszom, bądź łukom możemy nadać metal:

material   = MAT_METAL;

Następną kwestią będzie cena, za którą otrzymamy przedmiot w sklepie:

value   = 000;

W miejsce zer wpisujemy interesującą nas liczbę.

Przejdźmy do rodzaju amunicji oraz obrażeń zadawanych przez naszą broń.

Główną kwestią jest suma całkowitych obrażeń, dlatego tą część kodu zostawmy na koniec.

damageTotal = 000;

W miejsce zer wpisujemy łączną ilość obrażeń.

Ilość obrażeń zadawanych podczas uderzenia pocisku [strzały] w cel zapiszemy pod postacią:

damage[DAM_INDEX_POINT] = 000;

W miejsce zer wpisujemy ilość obrażeń.

Możemy również nadać naszej amunicji dodatkowe obrażenia od ognia, czyli zamiast

zer wpiszemy liczbę obrażeń od ognia:

damage[DAM_INDEX_FIRE] = 000;

 

Gdy już ustalimy poszczególne obrażenia, należy je zsumować i wpisać do łącznych obrażeń.

Określmy odległość ataku naszej broni. W tym przypadku będzie to atak na odległość:

damagetype = DAM_POINT;

Ostatnią informacją dla obrażeń będzie rodzaj amunicji.

W przypadku łuku będą to strzały:

munition  = ItAmArrow;

Zaś dla kuszy elementem wystrzału będą bełty:

munition   = ItAmBolt;

 

Teraz zajmiemy się ustaleniem wymogów dla łuku/kuszy, abyśmy wiedzieli od jakiego

progu będziemy mogli założyć łuk/kuszę.

Łuk wymaga od nas zręczności, więc wpiszmy odpowiedni kod:

cond_atr[2]     = ATR_DEXTERITY;

 

Kusza wymaga siły, czyli tutaj jest identycznie, z tą różnicą że zamiast zręczności wpiszemy siłę:

cond_atr[2]     = ATR_STRENGTH;

Ile łuk/kusza wymaga od nas siły lub zręczności ?

Dlatego uzupełnijmy nasze wymagania konkretną liczbą, wpisując ją w miejsce zer:

cond_value[2]   = 000;

 

Ostatnim punktem zostaje przedstawienie informacji [obrażenia, wymogi itp] podczas gry

po najechaniu na nasz łuk/kuszę. Umieśćmy je jeden pod drugim.

Zacznijmy od ustalonej na początku nazwy, która wyświetli się w grze:

description    = name;

 

Następnie przedstawione będą poszczególne obrażenia oraz ich łączna wartość:

 TEXT[2]    = NAME_Damage;     COUNT[2]    = damageTotal;

 

 

Kolejną rzeczą są wymagania.

Rodzaj wymogu oraz jego wartość zostanie przedstawiona poprzez:

TEXT[3]     = NAME_Dex_needed; COUNT[3]    = cond_value[2];

 

Ostatnią informacją zostaje cena przedmiotu.

Cena będzie wymaganą wartością, za którą otrzymamy dany łuk/kuszę:

TEXT[5]    = NAME_Value;     COUNT[5]    = value;
};

 

_________________

Miecze/Topory

Miecze, bądź topory wykorzystujemy do pojedynków wręcz lub większych ilości przeciwników.

Mają podobną strukturę jak np. łuk.

Tak więc zaczynamy od nazwy:

name = "Nazwa Miecza/Topora";

 

Następnie określmy przedmiot

Powinniśmy awrzeć poniższe informacje:

- Oznaczenie naszego miecza, bądź topora:

mainflag  = ITEM_KAT_FF;


- Typ broni, taki jak miecz lub topór. Miecz będzie miał następującą postać:

flags  = ITEM_SWD;   

Natomiast dla Topora wartość będzie taka:

flags  = ITEM_AXE;

 

- Ostatnią informacją dla typu oręża jest materiał, z jakiego

wykonany jest nasz miecz/topór.

Najczęstszym materiałem będzie metal:

material = MAT_METAL;

 

Następną kwestią będzie cena, za którą otrzymamy nasz oręż w sklepie:

 

value   = 000;

Zamiast zer ustawmy interesującą nas cenę.

Kolejnym punktem są obrażenia oraz wymagania.

Łączną ilość obrażeń zostawmy na później. Zapiszemy ją następująco:

damageTotal = 000;

W miejsce zer wpisujemy łączną ilość obrażeń.

Ilość obrażeń zadawanych podczas uderzenia w cel zapiszemy ako:

damage[DAM_INDEX_EDGE] = 000;

Nadpisując zera wpisujemy ilość obrażeń.

Możemy również nadać naszej amunicji dodatkowe obrażenia od ognia, czyli zamiast

zer wpiszemy liczbę obrażeń od ognia:

damage[DAM_INDEX_FIRE] = 000;

Jeżeli ma być to broń obuchowa to obrażenia, jakie będzie zadawać zapiszemy pod

poniższą wartością, pozbywając się zer:

damage[DAM_INDEX_BLUNT] = 00;

 

Szkody muszą być odpowiednio oznaczone:

damagetype = DAM_EDGE|DAM_FIRE|DAM_BLUNT;

Jeżeli broń posiada obrażenia tylko fizyczne musimy zapisać to tak:

damagetype = DAM_EDGE;

Tak samo jest w przypadku innych obrażeń pojedynczych. Zaś w sytuacji z podwójnymi

szkodami wygląda to tak:

 damagetype = DAM_EDGE|DAM_FIRE;

 

Wystarczy dodać rangę, wyglądać będzie ona tak:

range  = 100;

 

Kolejność może być losowa.

Gdy już ustalimy interesujące nas obrażenia, należy je zsumować i wpisać do łącznych obrażeń

na początku punktu.

Następną rzeczą są wymogi naszego miecza/topora.

Aby podnieść nasz oręż potrzebujemy siły, dlatego zapiszemy to następująco:

cond_atr[2]   = ATR_STRENGTH;

 

Jeszcze tylko musimy wiedzieć od jakiej ilości siły podniesiemy nasz oręż:

 

cond_value[2]  = 000;

Nadpisując zera podajemy wartość.


Ostatnim już punktem jest przedstawienie informacji

Ostatnim punktem zostaje przedstawienie informacji [obrażenia, wymogi itp] podczas gry

po najechaniu na nasz miecz, bądź topór. Umieśćmy je jeden pod drugim.

Zacznijmy od ustalonej na początku nazwy, która wyświetli się w grze

description    = name;

 

 

Następnie przedstawione będą poszczególne obrażenia oraz ich łączna ilość:

TEXT[2]    = NAME_Damage;     COUNT[2]    = damageTotal;

 

 

Rodzaj wymagań oraz jego wartość zostanie przedstawiona następująco:

TEXT[3]     = NAME_Dex_needed; COUNT[3]    = cond_value[2];

 

 

Następnym krokiem jest informacja z rodzajem oręża. Broń jednoręczna to:

TEXT[4]   = NAME_OneHanded;

Natomiast broń dwuręczną opisana będzie w ten sposób:

TEXT[4]   = NAME_TwoHanded;

 

 

Cena będzie wymaganą wartością, za którą wykupimy nasz miecz/topór:

TEXT[5]    = NAME_Value;     COUNT[5]    = value;

Zakończymy pisanie odpowiednim znakiem:

 

};
  

 

Gotowy plik zapisujemy w formacie *.d

To wszystko w tym poradniku, aby wiedzieć jak stworzyć własną broń.

Mam nadzieję, że poradnik jest schludny i przejrzysty ;)

Poradnik został wykonany przeze mnie.

1375884335-U390809.png

Blue Member

  • 1 miesiąc temu...
  • 2 tygodnie później...
  • 1 miesiąc temu...

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...