Modding Info References
Posted: Tue Jul 15, 2014 9:06 pm
This post/topic is obviously meant as a list of links to Factorio modding information, to be honest it's mostly duplicating links from the wiki, but I've been notified that some people don't know to look there when just starting out so... no harm putting it here as well (at least, not that I could think of)
So the obvious starting point is the wiki's main modding page here with links to all of the general pages (which then link to other, increasingly specific, pages). Not everything is complete (and some is out of date, though it's fairly rare for anything to actually be wrong, most often a few things are missing).
If you are just starting out then look at the Modding Overview which lists some basic information about how mods work in general and the Modding Tutorial which goes through the process of creating a small mod (Originally created by me, updated to 0.10.3 by jeroon). Then look at the links below (don't get overwhelmed and give up, it is a decent amount of information but a lot of it is used in only certain cases ).
From there the primary links are:
The last reference I can think of to add here is drs9999's post about some of the methods added in 0.10.0, most of them should be on the wiki by now but I'm not sure if all of them are.
Also: 11.x Fluid Interaction with entity.fluidbox (on wiki as of Feb. 4, 2015)
data.lua, data-updates.lua, and data-final-fixes.lua: are run for each mod in that order (all data.lua files first, then ...). allows mods to change the data of other mods without the need to be last (specifying [optional] dependencies in info.json).
If you know of any other wiki pages or forum topics/posts that are helpful and should be linked here then make a post below and I'll update this. Obviously if there are several forum posts linked here then someone (anyone) could take the time to place them on the wiki (in a logical place) but at least having them here helps keep the information from being lost in the void of time
So the obvious starting point is the wiki's main modding page here with links to all of the general pages (which then link to other, increasingly specific, pages). Not everything is complete (and some is out of date, though it's fairly rare for anything to actually be wrong, most often a few things are missing).
If you are just starting out then look at the Modding Overview which lists some basic information about how mods work in general and the Modding Tutorial which goes through the process of creating a small mod (Originally created by me, updated to 0.10.3 by jeroon). Then look at the links below (don't get overwhelmed and give up, it is a decent amount of information but a lot of it is used in only certain cases ).
From there the primary links are:
- Lua Objects: which lists all of the properties and methods of different lua objects (the global 'game' object is also listed here), this is one of the pages you'll want to bookmark when starting out (and I still reference it sometimes)
- Prototypes definitions: lists all of the prototypes that you can create, the ones that are finished have (at least) the required fields and some of (if not all) of the optional fields as well. This is likely to be the most out of date, but still occasionally useful (sometimes more useful than looking at the base files).
- Lua Events: which describes the events that allow a mod to know when something has happened in game (like the player building or mining something).
- Modding FAQ: Meant to be a list of frequently asked questions concerning mods (mostly how to fix common errors)...not much is really here yet though.
The last reference I can think of to add here is drs9999's post about some of the methods added in 0.10.0, most of them should be on the wiki by now but I'm not sure if all of them are.
Also: 11.x Fluid Interaction with entity.fluidbox (on wiki as of Feb. 4, 2015)
data.lua, data-updates.lua, and data-final-fixes.lua: are run for each mod in that order (all data.lua files first, then ...). allows mods to change the data of other mods without the need to be last (specifying [optional] dependencies in info.json).
If you know of any other wiki pages or forum topics/posts that are helpful and should be linked here then make a post below and I'll update this. Obviously if there are several forum posts linked here then someone (anyone) could take the time to place them on the wiki (in a logical place) but at least having them here helps keep the information from being lost in the void of time