Page 1 of 1

[0.13] Moddable achievements possible?

Posted: Fri Jul 01, 2016 10:23 am
by bigyihsuan
Obviously modded achievements don't work because mods disable achievements, but in my recent bout of brain farts, I noticed that the new achievements are defined as prototypes in data/base/prototypes/achievements.lua. These achievements have no documentation at all from what I can see, so I've put upon myself to get the parameters for them.

Code: Select all

--All/achievement (so-long-and-thanks-for-all-the-fish)
name = "string",
order = "string", --order messiness
icon = "directory",

--build-entity-achievement
to_build = "item-name",

--research-achievement
to_build = "item-name",
until_second = number

--finish-the-game-achievement
until_second = number,
allowed_in_peaceful_mode = boolean, --if excluded, is true

--group-attack-achievement
amount = number

--construct-with-robots-achievement
amount = number
steam_stats_name = "string", --some sort of record.
limited_to_one_game = boolean,
more_than_manually = boolean

--deconstruct-with-robots-achievement
amount = number
steam_stats_name = "string" --some sort of record.

--deliver-by-robots-achievement
amount = number
steam_stats_name = "string" --some sort of record.

--train-path-achievement
minimum_distance = number,
steam_stats_name = "string" --some sort of record.

--player-damaged-achievement
type_of_dealer = "entity-name",
minimum_damage = number,
should_survive = boolean,
steam_stats_name = "string" --some sort of record.

--produce-achievement
item_product = "item-name",
amount = number,
steam_stats_name = "string", --some sort of record.
limited_to_one_game = boolean

--produce-per-hour-achievement
item_product = "item-name",
amount = number,
steam_stats_name = "string" --some sort of record.

--dont-use-entity-in-energy-production-achievement
last_hour_only = boolean, --if excluded, is false
excluded = "item/entity name",
included = "item/entity name",
minimum_energy_produced = "string" --energy

--kill-achievement
type_to_kill = "entity",
in_vehicle = boolean, --if excluded, is false
personally = boolean, --if excluded, is false
amount = number,
steam_stats_name = "string" --some sort of record.

--dont-craft-manually-achievement
amount = number

--dont-use-entity-in-energy-production-achievement
allowed_in_peaceful_mode = boolean, --if excluded, is true
excluded = "item/entity name"

--dont-build-entity-achievement
dont_build = {"list", "of", "item/entity names"}
allowed_in_peaceful_mode = boolean, --if excluded, is true

Re: [0.13] Moddable achievements possible?

Posted: Sun May 28, 2017 8:10 am
by Jürgen Erhard
Mods of course only disable global (Steam) achievements. Local achievements (not sure about Steam-install, since I only played modless there) in $INSTALLPATH/achievements-modded.dat work. And since I just found out that a mod can add achievements (there's a mod "Stupid Achievements"... which, via Google, brought me here :D)... I'll add the achievements I miss. Thanks for you detective work!