[Mod] Achievements [2.3] [awards] – UI support, more awards

User avatar
rubenwardy
Member
 
Posts: 4496
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

[Mod] Achievements [2.3] [awards] – UI support, more awards

by rubenwardy » Fri Feb 22, 2013 19:09

Image


This mod adds achievements to Minetest. Use /awards to see your awards.

Download - Browse the Code

License: LGPL 2.1 or later.
Dependencies: none.

+ Developer feature list and to do list
Last edited by rubenwardy on Mon Aug 01, 2016 23:42, edited 26 times in total.
 

User avatar
PilzAdam
Developer
 
Posts: 4026
Joined: Fri Jul 20, 2012 16:19
Location: Germany
GitHub: PilzAdam
IRC: PilzAdam

by PilzAdam » Fri Feb 22, 2013 19:26

Might be helpful: https://gist.github.com/PilzAdam/4540471
I would also add a function "give_achievement". Mods could use this on every callback, so achievements like "Taking damage" can also be created.
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20
Location: Lost in Crypt

by Likwid H-Craft » Fri Feb 22, 2013 19:31

Well done rubenwardy, :) now what the Testing start!

Hey you think I can make this work for my Portaltest?
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

User avatar
KingSmarty
Member
 
Posts: 85
Joined: Wed Jan 02, 2013 12:06
Location: Germany
GitHub: FsxShader2012
In-game: FsxShader2012

by KingSmarty » Fri Feb 22, 2013 21:32

So you actually have to do the achievments first right? Because there are no values (? sorry i'm from Germany donn't no how to spell value)
Last edited by KingSmarty on Fri Feb 22, 2013 21:33, edited 1 time in total.
 

tom_blue
New member
 
Posts: 1
Joined: Fri Feb 22, 2013 21:51

by tom_blue » Fri Feb 22, 2013 21:55

Achievement Get: Close Call
Go all the way down to half a heart and survive
 

User avatar
Mito551
Member
 
Posts: 1271
Joined: Sat Jun 16, 2012 15:03

by Mito551 » Fri Feb 22, 2013 22:46

KingSmarty wrote:So you actually have to do the achievments first right? Because there are no values (? sorry i'm from Germany donn't no how to spell value)


value is the correct spelling

tom_blue wrote:Achievement Get: Close Call
Go all the way down to half a heart and survive


lol
 

Josh
Member
 
Posts: 1146
Joined: Fri Jun 29, 2012 23:11
Location: Victoria, Australia

by Josh » Fri Feb 22, 2013 23:51

Achievment Get: You Hacker You!
Use /giveme air
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20
Location: Lost in Crypt

by Likwid H-Craft » Sat Feb 23, 2013 00:25

Tested Appove:Sky is the limt. (Minetest Achievment Get title)
Build a house tall as the sky limt.
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

User avatar
rubenwardy
Member
 
Posts: 4496
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

by rubenwardy » Sat Feb 23, 2013 09:30

KingSmarty wrote:So you actually have to do the achievments first right? Because there are no values (? sorry i'm from Germany donn't no how to spell value)


There are currently only two achievements:

--> First Mese Find (digging a mesE)

--> Foundations (placing a brick)
Last edited by rubenwardy on Sat Feb 23, 2013 11:19, edited 1 time in total.
 

User avatar
Gambit
Member
 
Posts: 452
Joined: Sat Oct 29, 2011 19:31
Location: United States

by Gambit » Sat Feb 23, 2013 10:22

Likwid H-Craft wrote:Tested Appove:Sky is the limt. (Minetest Achievment Get title)
Build a house tall as the sky limt.


What constitutes as a house in this mod? Also there is no limit! D;

rubenwardy wrote:There are currently only two achievements:

--> First Mese Find (digging a mesE)

--> Foundations (placing a brick)


Those are kinda easy. Achievements should be challenging like I said. What about those ideas Chinchow and I laid out in the other thread?

My Ideas for Achievements:
  • "Lumber Jack" - Cutting 100 tree blocks.
  • "Light It Up" - Place 100 torches.
  • "Survivalist" - Survive the world without the use of Chest or Furnace for 50 day cycles.


Chinchow's Ideas for Achievements:
  • Lasted 50 days without dying=Living Life
  • Collected 10 lava buckets=Get it while its hot!
  • Mined 10000 stone=Massive miner
  • Mined 1000 stone=Adequate Miner
  • Mined 100 stone=Mini Miner
  • Mined 10 stone=Just entered the mine

A "Foundation" shouldn't be laying down a brick. It should be something like: Flattening a 100x100 of land.

Achievements should make players sweat for once.
Current Projects: MineToon | PixelBOX
Gambit's Checkmate Server - 43.65.296.232 - port: 30001
 

User avatar
rubenwardy
Member
 
Posts: 4496
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

by rubenwardy » Sat Feb 23, 2013 11:18

The ones I created were just for testing if the code works.

I will add all of these eventually.
 

User avatar
Linxx
Member
 
Posts: 401
Joined: Wed May 16, 2012 00:37

by Linxx » Sat Feb 23, 2013 11:53

Gambit wrote:
Likwid H-Craft wrote:Tested Appove:Sky is the limt. (Minetest Achievment Get title)
Build a house tall as the sky limt.


What constitutes as a house in this mod? Also there is no limit! D;

rubenwardy wrote:There are currently only two achievements:

--> First Mese Find (digging a mesE)

--> Foundations (placing a brick)


Those are kinda easy. Achievements should be challenging like I said. What about those ideas Chinchow and I laid out in the other thread?

My Ideas for Achievements:
  • "Lumber Jack" - Cutting 100 tree blocks.
  • "Light It Up" - Place 100 torches.
  • "Survivalist" - Survive the world without the use of Chest or Furnace for 50 day cycles.


Chinchow's Ideas for Achievements:
  • Lasted 50 days without dying=Living Life
  • Collected 10 lava buckets=Get it while its hot!
  • Mined 10000 stone=Massive miner
  • Mined 1000 stone=Adequate Miner
  • Mined 100 stone=Mini Miner
  • Mined 10 stone=Just entered the mine

A "Foundation" shouldn't be laying down a brick. It should be something like: Flattening a 100x100 of land.

Achievements should make players sweat for once.
the achivements sounds nice and al but aren't they a bit... too much they look more like a chore they require a lot and not a really good reward... i mean completionists might like it but the rest might not since it asks too much...
 

User avatar
rubenwardy
Member
 
Posts: 4496
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

by rubenwardy » Sat Feb 23, 2013 12:05

[h]Version 0.1 Release[/h]

I have done enough to release it as 0.1

To register an achievement, a mod can call:

Code: Select all
awards.register_achievement("award_mesefind",{
     title = "First Mese Find",
     description = "Found some Mese!",
     trigger={
          type="dig",  --award is given when
          node="default:mese", --this type of node has been dug
          target=1, --this number of times
     },
})
Last edited by rubenwardy on Sat Feb 23, 2013 12:06, edited 1 time in total.
 

BZab
Member
 
Posts: 126
Joined: Mon Jan 28, 2013 10:04
Location: Poland

by BZab » Sat Feb 23, 2013 12:30

Maybe sb could build website, on which player's achivements could be... collected(?)/showed(?)

"Ace of spades" - dig 6666 dirt nodes using wooden spade
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20
Location: Lost in Crypt

by Likwid H-Craft » Sat Feb 23, 2013 12:51

I think that a cool idea BZab, but having a site, keep track of everything, it will need a custom html and all.
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

User avatar
rubenwardy
Member
 
Posts: 4496
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

by rubenwardy » Sat Feb 23, 2013 12:56

BZab wrote:Maybe sb could build website, on which player's achivements could be... collected(?)/showed(?)


I might do something like this in the near future, but I think it would be better if I just worked on the mod for now, and make it perfect. Plus I have "minetest extensions" to work on

Likwid H-Craft wrote:I think that a cool idea BZab, but having a site, keep track of everything, it will need a custom html and all.


"custom html" is not that hard, when making Minetest websites I use minetest.net's html.

It is the server side php that is the problem.
Last edited by rubenwardy on Sat Feb 23, 2013 12:56, edited 1 time in total.
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20
Location: Lost in Crypt

by Likwid H-Craft » Sat Feb 23, 2013 13:01

So what I program ruben to make my own, or change?
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

User avatar
rubenwardy
Member
 
Posts: 4496
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

by rubenwardy » Sat Feb 23, 2013 13:04

Likwid H-Craft wrote:So what I program ruben to make my own, or change?


All the current achievements are coded in init.lua

Code: Select all
awards.register_achievement("award_mesefind",{
     title = "First Mese Find",
     description = "Found some Mese!",
     trigger={
          type="dig",  --award is given when
          node="default:mese", --this type of node has been dug
          target=1, --this number of times
     },
})
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20
Location: Lost in Crypt

by Likwid H-Craft » Sat Feb 23, 2013 13:09

what about the other file? or is it fine how is...Well ok then use init.

Oh and next there should be imgs... maybe for 0.2 or 0.5
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

User avatar
jojoa1997
Member
 
Posts: 2890
Joined: Thu Dec 13, 2012 05:11
Location: Earth

by jojoa1997 » Sat Feb 23, 2013 13:11

I just had an awsome idea
Code: Select all
awards.register_achievement("award_mesefind",{
     title = "First Mese Find",
     description = "Cheater!",
     trigger={
          type="dig",  --award is given when
          node="air", --this type of node has been dug
          target=1, --this number of times
     },
})
Coding;
1X coding
3X debugging
12X tweaking to be just right
 

User avatar
rubenwardy
Member
 
Posts: 4496
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

by rubenwardy » Sat Feb 23, 2013 13:15

Likwid H-Craft wrote:what about the other file? or is it fine how is...Well ok then use init.

Oh and next there should be imgs... maybe for 0.2 or 0.5


If you want to add an image, add

Code: Select all
image = "name",


after

Code: Select all
description = "Found some Mese!",


There is no way to render the images on the screen, but when there is, image="name" will be used.

http://forum.minetest.net/viewtopic.php?id=4168
Last edited by rubenwardy on Sat Feb 23, 2013 13:15, edited 1 time in total.
 

User avatar
rubenwardy
Member
 
Posts: 4496
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

by rubenwardy » Sat Feb 23, 2013 14:47

I have added some "real" achievements

  • "Lumber Jack" - Cutting 100 tree blocks.
  • "Light It Up" - Place 100 torches.
  • "Master Miner" - Mined 10000 stone
  • "Hardened Miner" - Mined 1000 stone
  • "Mini Miner" - Mined 100 stone
  • "Just entered the mine" - Mined 10 stone

and deleted the foundation achievement
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20
Location: Lost in Crypt

by Likwid H-Craft » Sat Feb 23, 2013 15:06

Yeah only if we, can make a hidden craft achievement, form making a item, that don't show in list, but I think we can't yet.
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

User avatar
rubenwardy
Member
 
Posts: 4496
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

by rubenwardy » Sat Feb 23, 2013 15:15

[h]Version 0.2 Released[/h]

API additions

  • onDeath counter

Added achievements:

  • "Lumber Jack" - Cutting 100 tree blocks.
  • "Light It Up" - Place 100 torches.
  • "Master Miner" - Mined 10000 stone
  • "Hardened Miner" - Mined 1000 stone
  • "Mini Miner" - Mined 100 stone
  • "Just entered the mine" - Mined 10 stone
  • "First death" - die once
 

User avatar
Likwid H-Craft
Member
 
Posts: 1113
Joined: Sun Jan 06, 2013 14:20
Location: Lost in Crypt

by Likwid H-Craft » Sat Feb 23, 2013 15:36

Some I did :)

[h]Fire Achievements 0.1[/h]

Code: Select all
-- First Fire
awards.register_achievement("award_fire1",{
    title = "First Fire",
    description = "You have start yours first fire.",
    trigger={
        type="place",
        node="fire:basic_flame",
        target=1,
    },
})

-- 100 Fire Starter
awards.register_achievement("award_fire2",{
    title = "100 Fire Starter",
    description = "You have started 100 fires...BURN!",
    trigger={
        type="place",
        node="fire:basic_flame",
        target=100,
    },
})

-- Set the world on Fire.
awards.register_achievement("award_fire3",{
    title = "Set the world on Fire.",
    description = "You have started 1000000000 fires...BURN BABY BURN!",
    trigger={
        type="place",
        node="fire:basic_flame",
        target=1000000000,
    },
})


Only if there was way, can make it when water placed and take out fire, will give you a Achievement.
Last edited by Likwid H-Craft on Sat Feb 23, 2013 15:42, edited 1 time in total.
My Domain's/others:
http://likwidtest.hj.cx/ (Not Done)
 

Next

Return to Mod Releases

Who is online

Users browsing this forum: No registered users and 5 guests