• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

0.3 Quest System

elf

Sing, sing blue silver
Senator
Joined
Dec 11, 2007
Messages
3,666
Solutions
1
Reaction score
125
Location
Warsaw, Poland
GitHub
tayandenga
Twitch
tayandenga
Hello,

This time I'll explain a bit how the new system exactly works.
At begining, I would like to point, its based of Gesior idea, however it was completely rewritten and tested.

How it exactly works and what's the difference
The system is completely different from old one. In the old one, you could give player only one reward, only from chest and storage key had to be exactly same, as item id, so you couldn't do two quests for same item.
Here, you may give reward player with any amount of items, 'from' any item (not only container!) and you are controling what storage key should be used- everything from your map edtior!

Here's a screenie from Gesior- please note to not follow steps on this screenshot as its outdated:
multiquest.PNG

and a bit old from me:
zrzut_ekranu4.png


Basic usage
You have to place on map a chest... Oops, sorry, ANYTHING! Then, set for it an actionid 2000 and uniqueid you wish, but watch out- it will be used as storage for player!
Now, if the item is not a container, just save your map and run on server- reward will be a clone of the item you've used.
If not, then put to the container item(s) you wish to be as reward(s).
Follow the save and run part, and poff, you've just designed a quest!

Advanced usage
You want an advanced quest, where you can pick only 1 reward? No problem! But, it will be a bit harded.
Follow the #Basic usage# instructions, but instead of actionid 2000 set an id you wish (Remember: actionid has to be above 2000 and free!) and do not set any uniqueid.
Now, enter data/actions/scripts/quests and open system.lua.
In specialQuests table add the following:
Code:
[actionid] = storageid
where actionid is actionid you have used above, and storageid is storage key you want to be used for your quest.
Save and close the file.
Time to update data/actions/actions.xml - find out:
Code:
<action actionid="2000" script="quests/system.lua"/>[code]
and add below:
[code]<action actionid="actionid" script="quests/system.lua"/>
Again save, close and follow the save-run-test part from #Basic usage# :thumbup:

(Optional)Quest experience:
You want your players to obtain experience from new quest? Easy!
Enter data/actions/scripts/quests, open system.lua and in questsExperience table add the following:
Code:
[storageid] = experience
where storageid is storage key you are using for your quest- in case of:
a) advanced quest- its pre-defined key by you, some lines above; b) basic quest- its uniqueid you've set in map editor;
and experience is amount of experience points players should gain.
Save and close the file.

Hope this will help someone though, the system is very easy to understand.
 
Last edited:
Awesome, even if I didn't get it :p
 
maybe im just retarded but i don't understand that explanation. im sure ill get it once i see if on the release and can mess around with it myself
 
by elf ... tigaiehi : D
 
I can't understand the new quest system very well, I tried to make poi rewards i.e avenger, arbalest and arcane staff and only choose 1 etc but it didn't work for me. The new system is obviously better than the old one but could you explain it some more so I can figure out how to use it...


Yea i'm noob! o/
 
call me a noob but i dont quite get it
say i wanted to make a quest that gives DSM do i put

CHEST: Actionid:2000
Uniqueid:2492 --DSM ID

or do i put the dsm in the chest on the map editor with action id2000 and make the unique id a random number?


and wtf do i do with systems.lua, how to hell do i use it?
 
Last edited:
Put the dsm into chest(any container or even just simple dsm with actiondid and unique xd) in map editor, use actionid 2000 to chest and ANY FREE uniqueid. Quest done. Anyway, this system is a bit bugged yet, if Elf give me permission to post fixed version of system.lua or post it himself, then it will work 100%(in those version of system.lua, there are some little bugs, as I remember you cannot put 1 item in container(it works with with some items), also it not 100% displaying the reward(if there is fs + dsm, it will show just fs))
 
I don't know why but new system doesn't working for me.
I made a chest:
Code:
22:09 You see a chest (Vol:15).
It weighs 120.00 oz.
ItemID: [1749].
ActionID: [2000].
UniqueID: [50010].
And put into it one item (halberd). I tried to "Open" chest and... nothing. Is possible that linux client have bug?

@edit: With more than one item is the same problem.
@edit2: Without any item too :/
 
Last edited:
I don't know why but new system doesn't working for me.
I made a chest:
Code:
22:09 You see a chest (Vol:15).
It weighs 120.00 oz.
ItemID: [1749].
ActionID: [2000].
UniqueID: [50010].
And put into it one item (halberd). I tried to "Open" chest and... nothing. Is possible that linux client have bug?

@edit: With more than one item is the same problem.
@edit2: Without any item too :/
1. GM's cannot open chests.
2. Did you put items to chest?
 
@1: You should add it to first post :p All works.

There's small issue with it:
Code:
15:35 You have found 1 red apples.
but I got 3 items :) Fare-Fray has right.
 
Using the system, When I open the quest chest it loots a chest with the item inside, how do i make it loot just the item?
 
Yeah, added item inside chest in map editor, set action id to 2000 and then my unique id values are 3700 - 3800 which i double checked are free
 
Back
Top