login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Quests.. hoe werkt dat

Offline Erwt - 31/05/2010 10:47
Avatar van ErwtPHP beginner Hey allemaal,

Ik vraag mij al een tijdje af hoe spellen nu precies de 'quests' maken. Stel een quest heeft simpelweg 3 delen:

1. Je moet praten met een meneer om de quest te accepteren.
2. Je moet 25 x een wolf afmaken zodat je 25x een poot van een wolf krijgt.
3. Je moet terug naar dezelfde meneer om de quest in te leveren.

Uiteraard kan ik dit heel simpel met héél veel if'jes oplossen. Is er een goede manier om dit werkend te krijgen? Ik weet dat het niet simpel zal zijn maar als ik een duwtje krijg dan ben ik in ieder geval niet voor niets bezig.

Wat ik zelf denk:

1. Een record toevoegen aan de database waar de Quest_ID en User_ID instaat, zodat je weet dat een gebruiker een bepaalde quest geaccepteerd heeft.

2. Bij het afmaken van een bepaalde wolf, controleren of er een record is uit stap 1. zo ja: Geef een quest item.

3. Bij het praten met de persoon als de quest geaccepteerd is, geeft hij een message terug dat je OF niet genoeg quest items hebt OF dat je wel genoeg hebt en dus de quest klaar is.

Oké.. is dit de juiste denkwijze? en stel je krijgt 10 healthpotions en 5000 experience als je de quest voltooid hebt, hoe zou dit er geprogrammeerd uitzien? waar staan die rewards en hoe noteer je dat het beste?

Groeten,

Erwin

2 antwoorden

Gesponsorde links
Offline Martijn - 31/05/2010 11:43
Avatar van Martijn Crew PHP Hoe ik het deed, was gewoon stats/inventory bijhouden. Je kunt ook al poten krijgen voordat je die quest begint.
Dan had ik ook een tweede tabel met daarin je userId en een INT met hoeveelste quest je bezig bent.
En dan in quest.php doen if($fetch['questInt'] ===1){select aantal pootjes. Pootjes genoeg? questInt++}

Op die manier krijg je automatisch de volgende quest. Als je steeds wilt dat ze accepteren, zou je je in de tweede tabel een enum '0','1' kunnen aanmaken, en na elke missie gehaald zet je die op0 en als iemand doen [accepteer] zet je m op 1 (van active)
Offline Erwt - 31/05/2010 14:24 (laatste wijziging 31/05/2010 14:33)
Avatar van Erwt PHP beginner Ik vond mijn oplossing wel héél wat makkelijker lijken dan hoe jij het nu uitlegt. Want SOMS wil je wel dat je bepaalde items krijgt die je later in een quest kunt gebruiken en soms ook niet.

En verder snap ik je eerste idee met de voorbeeld php code niet.

En stel je doet het op mijn manier, zou ik dan een quest_reward tabel kunnen maken met daarin de Quest_ID en Item_ID. En dan kan ik zo per quest een reward geven. Maar hoe zou ik voor bepaalde questen een Requirement aan kunnen geven, of geld(niet in vorm van een item), of experience aan een persoon kunnen geven?

Edit: Ik kan uiteraard 2 attributen "Money" en "Experience" aanmaken, en als die ingevuld zijn deze als reward meesturen.

Nog enkele tips voor quests?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.174s