8120a5c715
NodeCore is supposed to be a "player vs self" mental challenge, neither tourism/spectacle, nor a "player vs environment" conquest. Players are supposed to find their own goals, as well as applying the effort to achieve them, and the nature of the goals is purposefully as open-ended as possible, ideally with no bias toward any kind of "completionism." The name "Hints" implied some kind of assistance, and thus was inappropriate. The name "Challenges" similarly implies an extrinsic source of motivation, which the system is only marginally designed to provide; especially, it helps new player gain some momentum, but players are supposed to find their own motivation eventually instead of chasing after hint completion as a goal, especially since they will miss the most compelling aspects of the game. Somewhat experimentally, rename these once again to "discovery"/"discoveries" and remove language that suggests progress toward completion. Add stronger language suggesting that there is much more to discover outside of this, hinting at emergent systems as an example
27 lines
901 B
Lua
27 lines
901 B
Lua
-- LUALOCALS < ---------------------------------------------------------
|
|
local minetest, next, nodecore, pairs
|
|
= minetest, next, nodecore, pairs
|
|
-- LUALOCALS > ---------------------------------------------------------
|
|
|
|
minetest.register_chatcommand("tabula", {
|
|
desciption = "Reset NodeCore discoveries",
|
|
params = "rasa",
|
|
func = function(name, param)
|
|
if param ~= "rasa" then
|
|
return false, "If you're sure you want to erase all discovery"
|
|
.. " progress, use the command \"/tabula rasa\""
|
|
end
|
|
local db, player, pname, save = nodecore.get_player_discovered(name)
|
|
if not db then
|
|
return false, "Must be online and have interact privs"
|
|
.. " to use this command"
|
|
end
|
|
while next(db) do db[next(db)] = nil end
|
|
for _, cb in pairs(nodecore.registered_on_discovers) do
|
|
cb(player, nil, pname, db)
|
|
end
|
|
save()
|
|
return true, "All discoveries reset"
|
|
end
|
|
})
|