Manawydan Mantis

Detaily problému Přechod na poznámky ] Historie problému ] Tisk ]
IDProjektKategorieZobrazit stavDatum vloženíPoslední změna
0001037NPCNezařazanoveřejný10.12.2012 - 08:1317.09.2013 - 01:24
ReportérWhitey 
PřiřazenWhitey 
PrioritanormálníZávažnostmaláReprodukovatelnostN/A
StavuzavřenýŘešenívyřešený 
PlatformaOSVerze OS
Shrnutí0001037: Eskortování NPC
PopisPrověřit a zprovoznit skripta umožňující eskortovat NPC na určité místo.
Pokud možno provázat do interakce, než jen na dvojklik.
ZnačkyŽádné štítky nepřiloženy.
Přiložené soubory

- Závislosti

-  Poznámky k problému
(0002522)
Whitey (správce)
10.12.2012 - 11:27

Prošel jsem skripta základu pro eskortovatelné NPC (BaseEscortable).
Jejich úprava by technicky měla být snadná.

1, Skripta NPC vodí pouze na konkrétní natvrdo skriptované regiony.
- napojit na Geovo systém Places.xml (navigační body ve městech)
- možnost nastavit vlastní region nebo lépe konkrétní lokaci kam chce NPC jít

2, Loot
- zrušit natvrdo skriptovaný loot a vybavení (máme Bestiář)
- smazat loot pokud bude NPC zabito čímkoliv mimo hráče
- pokud NPC zabije hráč může si ho lootnout (pokud bude co), ale bude šance na automatickou pokutu za zabití (kdosi ho u toho viděl). Pokuta bude udělena v lokaci kde bylo NPC najmuto.

3, Odměna
- pozor, je tam natvrdo fůra zlaťáků. Přesunout do [props, tím bude i nastavitelná z interakce.
(0002537)
Whitey (správce)
15.12.2012 - 18:34

Betaverze na servru.
(0002538)
Whitey (správce)
15.12.2012 - 18:54

Pro testy
[add baseescortable
Parametry:

Destination = kam chce NPC právě teď jít, kódovaný text*
PresetDestination = kam bude NPC chtít jít, kódovaný tetx*
Payment = platba za doprovod
AfterEscortDelay = prodleva po eskortování (za jak dlouho lze nabrat jiné NPC)
DeleteAfterEscort = zda se NPC na konci cesty smaže (zatím nedoskriptováno)

Kódovaný text destinací:
region|lokace|nazev
region = název regionu. "random" pro náhodný výběr z regionů v Places.xml. Lze použít "null" pokud nechcete zadávat region.
lokace = souřadnicemi "x,y,z", přesným názvem lokace z Places.xml nebo "random" pro náhodný výběr z lokací v Places.xml
name = název lokace který NPC vyslovuje
| = oddělovač

Pokud je zadán pouze název regionu, zareaguje NPC ihned při vkročení do něj.
Pokud je zadaná lokace (pozicí nebo názvem), zareaguje NPC 3 políčka od ní.

Příklad destinací:
"Ishar" - NPC chce odvést do regionu Ishar
"Ishar|Dům starosty" - NPC chce odvést na lokaci 1137,1954,20 (lokace domu podle Places.xml)
"Ishar|Dům starosty|K starostovi" = to samé, ale NPC to bude vyslovovat jako "Zaveďte mě K starostovi" místo k domu starosty.
"null|0,0,0|Severní pól" - NPC chce k lokaci 0-0-0
(0002540)
Whitey (správce)
16.12.2012 - 10:20

Zprovozněna blokace smazání NPC po dokončení doprovodu - DeleteAfterEscort=false (pro interakce, nebo NPC které chce "vodit tam a zpátky po světě").

Doplněn spawner "EscortableSpawner" - klasický spawner, který má v [props parametry pro automatické nastavení eskortovatelného NPC.

Doplněny příkazy pro interakci:
ForceEscort - interakce vnutí eskortování majitele interakce
<ExecuteCode Class="Server.Mobiles.BaseEscortable" Method="ForceEscort" />
ForceStopEscort - interakce násilně přeruší eskortování svého majitele
<ExecuteCode Class="Server.Mobiles.BaseEscortable" Method="ForceStopEscort" />
(0002542)
Whitey (správce)
17.12.2012 - 12:04
upraveno: 17.12.2012 - 12:05

Přidána odměna za vzdálenost, defaultně 0.1st za 1 pole.

Přidána reakce na dvojklik - poprvé řekne NPC destinaci, podruhé (do 5s) se NPC najme.

(0002560)
Whitey (správce)
24.12.2012 - 12:22

Z fóra:

Tomáš Goj hlásil:
Hledám místo zvané "???" vezmete mě tam za 47st?

Ilicius:
Takže můj poznatek, při prvním zeptání se NPC má sklon říci pouze jméno lokace (svět, východní isharion atd). Jenže pokud NPC chce doprovodit přímo do města, lokaci neříká a v takovém případě, občas řekne jen ???

Jinak docela zajímalo, proč odměna za doprovod do Kitonu (zatím nejvzdálenější místo kam po mě chtěl), je jen 25 st.
(0002568)
Whitey (správce)
26.12.2012 - 15:19

Eskortovatelná NPC vypadají provozuschopně?
(0002650)
Whitey (správce)
03.01.2013 - 10:42

Ano, na lokále tak vypadají.
(0003061)
Stig (správce)
15.09.2013 - 17:38

Vytvořil jsem region Královská magická akademie. NPC mi z místa 1368 1831 55 nabízí za dovedení do akademie pouze 25 str. (což je jeho hodnota pro Payment, ale nějak k tomu nepřičetl PaymentPerSquare 0.1).
"Královská magická akademie" jsem nahrál i do Places.XML, po restartu zkusím, jestli to stačí k vyřešení problému.
(0003063)
Whitey (správce)
15.09.2013 - 19:54
upraveno: 15.09.2013 - 19:56

Pokud je cesta "do regionu", neumí skripta určit vzdálenost.
Máš možnost zadat konkrétní lokaci do Places, z Places si to vytáhne místo kam se má v tom regionu chodit.
Lepší možnost je zadat lokaci přímo do textu destinace.
V props zadat Definition jako "null|x,y,z|JmenoLokaceProGump". Lze provést i na odpovídajícím spawneru.
viz. parametry v http://mantis.manawydan.cz/view.php?id=1037#c2538 [^]

(0003081)
Stig (správce)
17.09.2013 - 01:23
upraveno: 17.09.2013 - 01:23

Díky moc za info, supr.

PS: Jinak můžeš považovat za otestované, změnil sem z "vyřešeno bez testování".


- Historie problému
Čas modifikace Uživatelské jméno Pole Změna
10.12.2012 - 08:13 Whitey Nový problém
10.12.2012 - 08:13 Whitey Stav nový => přiřazený
10.12.2012 - 08:13 Whitey Přiřazen => Whitey
10.12.2012 - 11:27 Whitey Poznámka přidána: 0002522
15.12.2012 - 18:34 Whitey Poznámka přidána: 0002537
15.12.2012 - 18:54 Whitey Poznámka přidána: 0002538
16.12.2012 - 10:20 Whitey Poznámka přidána: 0002540
16.12.2012 - 10:20 Whitey Stav přiřazený => čeká na testy
17.12.2012 - 12:04 Whitey Poznámka přidána: 0002542
17.12.2012 - 12:05 Whitey Poznámka upravena: 0002542 Zobrazit revize
24.12.2012 - 12:22 Whitey Poznámka přidána: 0002560
24.12.2012 - 12:22 Whitey Stav čeká na testy => reakce
26.12.2012 - 15:19 Whitey Poznámka přidána: 0002568
26.12.2012 - 15:19 Whitey Stav reakce => přiřazený
26.12.2012 - 15:19 Whitey Stav přiřazený => čeká na testy
03.01.2013 - 10:42 Whitey Poznámka přidána: 0002650
03.01.2013 - 10:42 Whitey Stav čeká na testy => uzavřený
03.01.2013 - 10:42 Whitey Řešení otevřený => vyřešený bez testování
15.09.2013 - 17:38 Stig Poznámka přidána: 0003061
15.09.2013 - 17:38 Stig Stav uzavřený => vyřešený
15.09.2013 - 17:38 Stig Řešení vyřešený bez testování => vyřešený
15.09.2013 - 19:54 Whitey Poznámka přidána: 0003063
15.09.2013 - 19:54 Whitey Stav vyřešený => reakce
15.09.2013 - 19:56 Whitey Poznámka upravena: 0003063 Zobrazit revize
17.09.2013 - 01:23 Stig Poznámka přidána: 0003081
17.09.2013 - 01:23 Stig Poznámka upravena: 0003081 Zobrazit revize
17.09.2013 - 01:24 Stig Stav reakce => uzavřený


Copyright © 2000 - 2024 MantisBT Team
Powered by Mantis Bugtracker