At the beginning of the week I took a short pause from writing the content for ‘Lil Red’ (having completed ‘Reds Room’) to add a little ‘game mechanics’ to the title. With the support of Quest developer Alex Warren, ‘we’ constructed some ‘leveling code’ by creating and recording a player’s status attribute (progress) with ‘progress’ points attached to game objects. This serves two benefits, first it encourages players to invest more actively in reading and exploring the game (in search of points) and also feedbacks effective game play towards solving the game and its challenges and problems. This status attribute (progress) is then referenced against a rewards ladder, rewarding that investment in the game. Just to make this a little more ‘fun’ I have added a short 3 sec fanfare and level up image.
- Traveler – progress points (3)
- Surveyor – progress points (6)
- Explorer – progress points (10)
- Pioneer- progress points (15)
- Discoverer – progress points (20)
- Adventurer – progress points (25)
- Voyager – progress points (28)
- Buccaneer – progress points (30)
- Trailblazer – progress points (33)
(A later added and icons and learnt that if you are going to add icons, that you use a very pertinent file name. For example the Traveler icon image is 01traveler.png and the surveyor icon is 02surveyor,png. It just helps you id the level and the image).
What I need to learn / investigate is how structure the reward intervals, currently I plan to load the front and end three rewards on the ladder. Is this most effective? Can anyone tell me? Can anyone suggest more rungs or for the rewards ladder with a, ‘exploring’ theme? Not being a particularly expert game player myself, I have exhausted my synonyms.
[qr_code_display]
So what does this actually look like?
<changedProgress type=”script”><![CDATA[
if (player.Progress>=3) {
if (player.level=0) {
msg (“LEVEL UP – TRAVELLER”)
player.level = 1
play sound (“LVL_UP.mp3”, true, false)
picture (“LVL_UP.jpg”)
}
}
if (player.Progress>=8) {
if (player.level=1) {
msg (“Level UP – SURVEYOR”)
player.level = 2
play sound (“LVL_UP.mp3”, true, false)
}
}
if (player.Progress>=15) {
if (player.level=2) {
msg (“Level UP – EXPLORER”)
player.level = 3
play sound (“LVL_UP.mp3”, true, false)
}
}
if (player.Progress>=25) {
if (player.level=3) {
msg (“Level UP – PIONEER”)
player.level = 4
play sound (“LVL_UP.mp3”, true, false)
}
}
]]></changedProgress>
</object>
I’ve been thinking about this today…
Something I remember you sharing with me a little while ago was about the uncertainty of reward – that predictability was not necessarily a good motivator.
However… The predictable reward does seem to often work well in the game world. Beating your best score/time, completing levels, etc. Maybe predictable works if you know what you need to do to achieve it?
So, levels for getting to certain stages could be good if I know that is what I’m aiming at, how far off I am from achieving the next one.
Maybe…