[0.13] Moddable achievements possible?

Place to post guides, observations, things related to modding that are not mods themselves.
Post Reply
User avatar
bigyihsuan
Filter Inserter
Filter Inserter
Posts: 299
Joined: Thu Jan 01, 2015 12:57 pm
Contact:

[0.13] Moddable achievements possible?

Post 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

Jürgen Erhard
Filter Inserter
Filter Inserter
Posts: 298
Joined: Sun Jun 12, 2016 11:29 pm
Contact:

Re: [0.13] Moddable achievements possible?

Post 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!

Post Reply

Return to “Modding discussion”