mirror of
https://github.com/ComfyFactory/ComfyFactorio.git
synced 2024-12-28 23:06:38 +02:00
1526 lines
74 KiB
Lua
1526 lines
74 KiB
Lua
-------------------------------------------------------------------------------
|
|
--[LICENSE]--
|
|
-------------------------------------------------------------------------------
|
|
-- .luacheckrc
|
|
-- This file is free and unencumbered software released into the public domain.
|
|
--
|
|
-- Anyone is free to copy, modify, publish, use, compile, sell, or
|
|
-- distribute this file, either in source code form or as a compiled
|
|
-- binary, for any purpose, commercial or non-commercial, and by any
|
|
-- means.
|
|
--
|
|
-- In jurisdictions that recognize copyright laws, the author or authors
|
|
-- of this file dedicate any and all copyright interest in the
|
|
-- software to the public domain. We make this dedication for the benefit
|
|
-- of the public at large and to the detriment of our heirs and
|
|
-- successors. We intend this dedication to be an overt act of
|
|
-- relinquishment in perpetuity of all present and future rights to this
|
|
-- software under copyright law.
|
|
--
|
|
-- THE FILE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
-- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
-- IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
|
-- OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
|
-- ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
-- OTHER DEALINGS IN THE SOFTWARE.
|
|
--
|
|
-- For more information, please refer to <http://unlicense.org/>
|
|
-- ]]
|
|
|
|
-- Current Factorio Version 0.17.0, luacheck version 0.23.0
|
|
|
|
-------------------------------------------------------------------------------
|
|
--[Set Defaults]--
|
|
-------------------------------------------------------------------------------
|
|
local LINE_LENGTH = false -- It is 2017 limits on length are a waste
|
|
local IGNORE = {'21./%w+_$', '21./^_%w+$', '213/[ijk]', '213/index', '213/key'}
|
|
local NOT_GLOBALS = {'coroutine', 'io', 'socket', 'dofile', 'loadfile'} -- These globals are not available to the factorio API
|
|
|
|
local STD_CONTROL = 'lua52c+factorio+factorio_control+stdlib+factorio_defines'
|
|
local STD_DATA = 'lua52c+factorio+factorio_data+stdlib+stdlib_data+factorio_defines'
|
|
|
|
-- In a perfect world these would be STD_DATA and STD_CONTROL (mostly)
|
|
local STD_BASE_DATA = 'lua52c+factorio+factorio_data+factorio_defines+factorio_base_data'
|
|
local STD_BASE_CONTROL = 'lua52c+factorio+factorio_control+factorio_defines+factorio_base_control'
|
|
|
|
-------------------------------------------------------------------------------
|
|
--[Assume Factorio Control stage as default]--
|
|
-------------------------------------------------------------------------------
|
|
std = STD_CONTROL
|
|
globals = {'print', '_DEBUG', '_CHEATS', '_DUMP_ENV', 'ServerCommands', 'Debug', '_LIFECYCLE', '_STAGE', 'get_game_version', 'is_loaded', 'is_game_modded', 'is_mod_loaded', 'require', 'comfy_panel_tabs'}
|
|
max_line_length = LINE_LENGTH
|
|
|
|
not_globals = NOT_GLOBALS
|
|
ignore = IGNORE
|
|
quiet = 1 -- pass -q option
|
|
max_cyclomatic_complexity = 75
|
|
codes = true
|
|
|
|
--List of files and directories to exclude
|
|
exclude_files = {
|
|
--Ignore special folders
|
|
'**/.*/*', --Ignore if path starts with .
|
|
'**/stdlib/vendor/',
|
|
'**/*WIP/',
|
|
|
|
--Ignore development mods
|
|
'**/combat-tester/',
|
|
'**/test-maker/',
|
|
'**/trailer/',
|
|
}
|
|
|
|
-------------------------------------------------------------------------------
|
|
--[Mod Prototypes]--
|
|
-------------------------------------------------------------------------------
|
|
--Set default prototype files
|
|
files['**/data.lua'].std = STD_DATA
|
|
files['**/data-updates.lua'].std = STD_DATA
|
|
files['**/data-final-fixes.lua'].std = STD_DATA
|
|
files['**/settings.lua'].std = STD_DATA
|
|
files['**/settings-updates.lua'].std = STD_DATA
|
|
files['**/settings-final-fixes.lua'].std = STD_DATA
|
|
files['**/prototypes/'].std = STD_DATA
|
|
files['**/settings/'].std = STD_DATA
|
|
|
|
-------------------------------------------------------------------------------
|
|
--[Base]--
|
|
-------------------------------------------------------------------------------
|
|
--Find and replace ignores *.cfg, migrations, *.txt, control.lua, *.json, trailer, scenarios, campaigns, *.glsl
|
|
|
|
local base_scenarios = {
|
|
std = STD_BASE_CONTROL .. '+factorio_base_scenarios+factorio_base_story',
|
|
--ignore = {'212/event', '111', '112', '113', '211', '212', '213', '311', '411', '412', '421', '422', '423', '431', '432', '512'}
|
|
ignore = {'...'}
|
|
}
|
|
files['**/base/scenarios/'] = base_scenarios
|
|
files['**/base/tutorials/'] = base_scenarios
|
|
files['**/base/campaigns/'] = base_scenarios
|
|
files['**/wip-scenario/'] = base_scenarios
|
|
|
|
files['**/base/migrations/'] = {std = STD_BASE_CONTROL}
|
|
|
|
files['**/core/lualib/'] = {std = STD_BASE_CONTROL}
|
|
files['**/core/lualib/util.lua'] = {globals = {'util', 'table'}, ignore = {'432/object'}}
|
|
files['**/core/lualib/silo-script.lua'] = {globals = {'silo_script'}, ignore = {'4../player'}}
|
|
files['**/core/lualib/production-score.lua'] = {globals = {'production_score', 'get_price_recursive'}, ignore = {'4../player'}}
|
|
files['**/core/lualib/story*'] = {std = '+factorio_base_story', ignore = {'42./k', '42./filter'}}
|
|
files['**/core/lualib/mod-gui.lua'] = {globals = {'mod_gui'}}
|
|
files['**/core/lualib/camera.lua'] = {globals = {'camera'}}
|
|
files['**/core/lualib/builder.lua'] = {globals = {'Builder', 'builder', 'action', 'down', 'right'}}
|
|
|
|
files['**/core/lualib/bonus-gui-ordering/'] = {std = STD_BASE_DATA}
|
|
files['**/core/lualib/dataloader.lua'] = {globals = {'data'}}
|
|
files['**/core/lualib/circuit-connector-*'] = {std = STD_BASE_DATA..'+factorio_circuit_connector_generated'}
|
|
files['**/core/lualib/bonus-gui-ordering.lua'] = {globals = {'bonus_gui_ordering'}}
|
|
|
|
files['**/base/prototypes/'] = {std = STD_BASE_DATA}
|
|
files['**/core/prototypes/'] = {std = STD_BASE_DATA}
|
|
files['**/core/prototypes/noise-programs.lua'] = {ignore = {'212/x', '212/y', '212/tile', '212/map'}}
|
|
|
|
--(( stdlib ))--
|
|
local stdlib_control = {
|
|
std = 'lua52c+factorio+factorio_control+stdlib+factorio_defines',
|
|
max_line_length = LINE_LENGTH
|
|
}
|
|
|
|
local stdlib_data = {
|
|
std = 'lua52c+factorio+factorio_data+stdlib+factorio_defines',
|
|
max_line_length = LINE_LENGTH
|
|
}
|
|
|
|
-- Assume control stage for stdlib
|
|
files['**/stdlib/'] = stdlib_control
|
|
|
|
-- Assume generic content for stdlib utils
|
|
files['**/stdlib/utils/**'].std = 'lua52c+stdlib'
|
|
|
|
-- STDLIB data files
|
|
files['**/stdlib/data/'] = stdlib_data
|
|
|
|
-- STDLIB Busted Spec
|
|
files['**/spec/**'] = {
|
|
globals = {'serpent', 'log', 'SLOG', 'RESET'},
|
|
std = 'lua52c+busted+factorio_defines+factorio_control+stdlib'
|
|
} --))
|
|
|
|
--(( Factorio ))--
|
|
stds.factorio = {
|
|
--Set the read only variables
|
|
read_globals = {
|
|
-- @log@: Gives writing access to Factorio's logger instance.
|
|
"log",
|
|
-- @serpent@: Lua serializer and pretty printer. (https://github.com/pkulchenko/serpent)
|
|
"serpent",
|
|
-- @table_size@: Returns the number of elements inside an LUA table
|
|
"table_size",
|
|
util = {
|
|
fields = {
|
|
"by_pixel", "distance", "findfirstentity", "positiontostr", "formattime", "moveposition", "oppositedirection",
|
|
"ismoduleavailable", "multiplystripes", "format_number", "increment", "color", "conditional_return",
|
|
"add_shift", "merge", "premul_color", "encode", "decode", "insert_safe",
|
|
table = {
|
|
fields = {
|
|
"compare", "deepcopy"
|
|
},
|
|
},
|
|
},
|
|
},
|
|
table = {
|
|
fields = {
|
|
"compare", "deepcopy"
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
stds.factorio_control = {
|
|
read_globals = {
|
|
|
|
-- @commands@:
|
|
commands = {
|
|
fields = {
|
|
"commands", "game_commands", "remove_command"
|
|
},
|
|
other_fields = false,
|
|
},
|
|
|
|
-- @settings@:
|
|
settings = {
|
|
fields = {
|
|
"get_player_settings",
|
|
startup = {read_only = false, other_fields = true},
|
|
global = {read_only = false, other_fields = true},
|
|
player = {read_only = false, other_fields = true},
|
|
},
|
|
},
|
|
|
|
-- @script@: Provides an interface for registering event handlers.
|
|
-- (http://lua-api.factorio.com/latest/LuaBootstrap.html)
|
|
script = {
|
|
fields = {
|
|
"on_nth_tick", "on_event", "on_init", "on_load",
|
|
"on_configuration_changed", "raise_event",
|
|
"get_event_handler", "mod_name", "get_event_order",
|
|
"generate_event_name",
|
|
},
|
|
other_fields = false,
|
|
},
|
|
|
|
-- @remote@: Allows inter-mod communication by providing a repository of interfaces that is shared by all mods.
|
|
-- (http://lua-api.factorio.com/latest/LuaRemote.html)
|
|
remote = {
|
|
fields = {
|
|
interfaces = {read_only = false, other_fields = true},
|
|
"add_interface", "remove_interface", "call"
|
|
},
|
|
read_only = true,
|
|
other_fields = false,
|
|
},
|
|
|
|
rcon = {
|
|
fields = {'print'}
|
|
},
|
|
|
|
commands = {
|
|
fields = {
|
|
'add_command'
|
|
}
|
|
},
|
|
|
|
rendering = {
|
|
other_fields = false,
|
|
read_only = true,
|
|
fields = {
|
|
'set_visible',
|
|
'draw_line',
|
|
'draw_text',
|
|
'draw_circle',
|
|
'draw_rectangle',
|
|
'draw_arc',
|
|
'draw_polygon',
|
|
'draw_sprite',
|
|
'draw_light',
|
|
'destroy',
|
|
'is_font_valid',
|
|
'is_valid',
|
|
'get_all_ids',
|
|
'clear',
|
|
'get_type',
|
|
'get_surface',
|
|
'get_time_to_live',
|
|
'set_time_to_live',
|
|
'get_forces',
|
|
'set_forces',
|
|
'get_players',
|
|
'set_players',
|
|
'get_color',
|
|
'set_color',
|
|
'get_width',
|
|
'set_width',
|
|
'get_from',
|
|
'set_from',
|
|
'get_to',
|
|
'set_to',
|
|
'get_gap_amount',
|
|
'set_gap_amount',
|
|
'get_gap_length',
|
|
'set_gap_length',
|
|
'get_target',
|
|
'set_target',
|
|
'get_orientation',
|
|
'set_orientation',
|
|
'get_scale',
|
|
'set_scale',
|
|
'get_text',
|
|
'set_text',
|
|
'get_font',
|
|
'set_font',
|
|
'get_alignment',
|
|
'set_alignment',
|
|
'get_scale_with_zoom',
|
|
'set_scale_with_zoom',
|
|
'get_filled',
|
|
'set_filled',
|
|
'get_radius',
|
|
'set_radius',
|
|
'get_left_top',
|
|
'set_left_top',
|
|
'get_right_bottom',
|
|
'set_right_bottom',
|
|
'get_max_radius',
|
|
'set_max_radius',
|
|
'get_min_radius',
|
|
'set_min_radius',
|
|
'get_start_angle',
|
|
'set_start_angle',
|
|
'get_angle',
|
|
'set_angle',
|
|
'get_vertices',
|
|
'set_vertices',
|
|
'get_sprite',
|
|
'set_sprite',
|
|
'get_x_scale',
|
|
'set_x_scale',
|
|
'get_y_scale',
|
|
'set_y_scale',
|
|
'get_render_layer',
|
|
'set_render_layer',
|
|
'get_orientation_target',
|
|
'set_orientation_target',
|
|
'get_oriented_offset',
|
|
'set_oriented_offset',
|
|
'get_intensity',
|
|
'set_intensity',
|
|
'get_minimum_darkness',
|
|
'set_minimum_darkness'
|
|
}
|
|
},
|
|
|
|
-- @game@: Main object through which most of the API is accessed.
|
|
-- It is, however, not available inside handlers registered with @script.on_load@.
|
|
-- (http://lua-api.factorio.com/latest/LuaGameScript.html)
|
|
game ={
|
|
other_fields = false,
|
|
read_only = false,
|
|
fields = {
|
|
"disable_tutorial_triggers",
|
|
"auto_save",
|
|
"ban_player",
|
|
"check_consistency",
|
|
"check_prototype_translations",
|
|
"count_pipe_groups",
|
|
"create_force",
|
|
"create_profiler",
|
|
"create_random_generator",
|
|
"create_surface",
|
|
"delete_surface",
|
|
"desync_players",
|
|
"direction_to_string",
|
|
"disable_replay",
|
|
"disable_tips_and_tricks",
|
|
"draw_resource_selection",
|
|
"force_crc",
|
|
"get_active_entities_count",
|
|
"get_entity_by_tag",
|
|
"get_map_exchange_string",
|
|
"get_player",
|
|
"get_surface",
|
|
"help",
|
|
"is_demo",
|
|
"is_multiplayer",
|
|
"is_valid_sound_path",
|
|
"json_to_table",
|
|
"kick_player",
|
|
"merge_forces",
|
|
"pollution_statistics",
|
|
"mute_player",
|
|
"play_sound",
|
|
"print",
|
|
"print_stack_size",
|
|
"purge_player",
|
|
"regenerate_entity",
|
|
"reload_mods",
|
|
"reload_script",
|
|
"remove_offline_players",
|
|
"remove_path",
|
|
"save_atlas",
|
|
"server_save",
|
|
"set_game_state",
|
|
"reset_time_played",
|
|
"show_message_dialog",
|
|
"table_to_json",
|
|
"encode_string",
|
|
"decode_string",
|
|
"take_screenshot",
|
|
|
|
"take_technology_screenshot",
|
|
"unban_player",
|
|
"unmute_player",
|
|
"write_file",
|
|
|
|
active_mods = {read_only = true, other_fields = true},
|
|
ammo_category_prototypes = {read_only = true, other_fields = true},
|
|
autoplace_control_prototypes = {read_only = true, other_fields = true},
|
|
backer_names = {read_only = true, other_fields = true},
|
|
connected_players = {read_only = true, other_fields = true},
|
|
custom_input_prototypes = {read_only = true, other_fields = true},
|
|
damage_prototypes = {read_only = true, other_fields = true},
|
|
decorative_prototypes = {read_only = true, other_fields = true},
|
|
default_map_gen_settings = {read_only = true, other_fields = true},
|
|
difficulty = {read_only = true, other_fields = true},
|
|
difficulty_settings = {read_only = true, other_fields = true},
|
|
enemy_has_vision_on_land_mines = {read_only = false, other_fields = false},
|
|
entity_prototypes = {read_only = true, other_fields = true},
|
|
equipment_grid_prototypes = {read_only = true, other_fields = true},
|
|
equipment_prototypes = {read_only = true, other_fields = true},
|
|
finished = {read_only = true, other_fields = true},
|
|
fluid_prototypes = {read_only = true, other_fields = true},
|
|
forces = {read_only = true, other_fields = true},
|
|
item_prototypes = {read_only = true, other_fields = true},
|
|
map_settings = {read_only = true, other_fields = true},
|
|
mod_setting_prototypes = {read_only = true, other_fields = true},
|
|
noise_layer_prototypes = {read_only = true, other_fields = true},
|
|
permissions = {read_only = true, other_fields = true},
|
|
player = {read_only = true, other_fields = true},
|
|
players = {read_only = true, other_fields = true},
|
|
recipe_prototypes = {read_only = true, other_fields = true},
|
|
speed = {read_only = false, other_fields = false},
|
|
styles = {read_only = true, other_fields = true},
|
|
surfaces = {read_only = true, other_fields = true},
|
|
technology_prototypes = {read_only = true, other_fields = true},
|
|
tick = {read_only = true, other_fields = true},
|
|
tick_paused = {read_only = false, other_fields = false},
|
|
ticks_played = {read_only = true, other_fields = true},
|
|
ticks_to_run = {read_only = false, other_fields = false},
|
|
tile_prototypes = {read_only = true, other_fields = true},
|
|
virtual_signal_prototypes = {read_only = true, other_fields = true}
|
|
},
|
|
},
|
|
},
|
|
|
|
globals = {
|
|
-- @global@: The global dictionary, useful for storing data persistent across a save-load cycle.
|
|
-- Writing access is given to the mod-id field (for mod-wise saved data).
|
|
-- (http://lua-api.factorio.com/latest/Global.html)
|
|
"global",
|
|
|
|
-- @MOD@: Keep it organized, use this variable for anything that "NEEDS" to be global for some reason.
|
|
"MOD"
|
|
},
|
|
}
|
|
|
|
stds.factorio_data = {
|
|
|
|
read_globals = {
|
|
data = {
|
|
fields = {
|
|
raw = {
|
|
other_fields = true,
|
|
read_only = false
|
|
},
|
|
"extend", "is_demo"
|
|
},
|
|
},
|
|
|
|
settings = {
|
|
fields = {
|
|
"startup", "global", "player",
|
|
},
|
|
},
|
|
|
|
--Popular mods
|
|
angelsmods = {
|
|
other_fields = true
|
|
},
|
|
|
|
bobmods = {
|
|
other_fields = true
|
|
},
|
|
|
|
mods = {
|
|
other_fields = true
|
|
}
|
|
}
|
|
} --))
|
|
|
|
--(( Factorio Globals are bad mkay ))--
|
|
stds.factorio_base_control = {
|
|
read_globals = {"silo_script", "mod_gui", "camera"}
|
|
}
|
|
|
|
stds.factorio_base_scenarios = {
|
|
globals = {
|
|
"check_automate_science_packs_advice", "check_research_hints", "check_supplies", "manage_attacks", "all_dead",
|
|
"on_win", "difficulty_number", "init_attack_data", "handle_attacks", "count_items_in_container", "progress", "scanned",
|
|
"check_light", "check_machine_gun", "level", "story_table",
|
|
|
|
"tightspot_prices", "tightspot_make_offer", "tightspot_init", "tightspot_get_required_balance",
|
|
"tightspot_init_level", "tightspot_init_spending_frame", "tightspot_init_progress_frame", "tightspot_update_progress", "tightspot_update_spending",
|
|
"tightspot_get_missing_to_win", "tightspot_sell_back", "tightspot_start_level", "tightspot_show_level_description", "tightspot_update_speed_label",
|
|
"map_ignore", "tightspot_check_level", "land_price",
|
|
|
|
"transport_belt_madness_init", "transport_belt_madness_init_level", "transport_belt_madness_create_chests", "transport_belt_madness_fill_chests",
|
|
"transport_belt_madness_start_level", "map_ignore", "map_clear", "map_load", "map_save", "transport_belt_madness_show_level_description",
|
|
"transport_belt_madness_check_level", "transport_belt_madness_next_level", "transport_belt_madness_clear_level", "transport_belt_madness_contains_next_level",
|
|
|
|
"restricted", "check_built_items", "result", "disable_combat_technologies", "apply_character_modifiers", "apply_combat_modifiers", "apply_balance",
|
|
"load_config", "starting_area_constant", "create_next_surface", "end_round", "prepare_next_round", "silo_died","choose_joining_gui",
|
|
"destroy_joining_guis", "create_random_join_gui", "create_auto_assign_gui", "create_pick_join_gui", "create_config_gui", "make_config_table", "default",
|
|
"make_team_gui", "make_team_gui_config", "add_team_button_press", "trash_team_button_press", "remove_team_from_team_table", "add_team_to_team_table",
|
|
"set_teams_from_gui", "on_team_button_press", "make_color_dropdown", "create_balance_option", "create_disable_frame", "disable_frame", "parse_disabled_items",
|
|
"set_balance_settings", "config_confirm", "parse_config_from_gui", "get_color", "roll_starting_area", "delete_roll_surfaces", "auto_assign",
|
|
"destroy_config_for_all", "prepare_map", "set_evolution_factor", "update_players_on_team_count", "random_join", "init_player_gui",
|
|
"destroy_player_gui", "objective_button_press", "admin_button_press", "admin_frame_button_press", "diplomacy_button_press", "update_diplomacy_frame",
|
|
"diplomacy_frame_button_press", "team_changed_diplomacy", "diplomacy_check_press", "get_stance", "give_inventory", "setup_teams", "disable_items_for_all",
|
|
"set_random_team", "set_diplomacy", "create_spawn_positions", "set_spawn_position", "set_team_together_spawns", "chart_starting_area_for_force_spawns",
|
|
"check_starting_area_chunks_are_generated", "check_player_color", "check_round_start", "clear_starting_area_enemies", "check_no_rush_end", "check_no_rush_players",
|
|
"finish_setup", "chart_area_for_force", "setup_start_area_copy", "update_copy_progress", "update_progress_bar", "copy_paste_starting_area_tiles",
|
|
"copy_paste_starting_area_entities", "create_silo_for_force", "setup_research", "on_chunk_generated", "get_distance_to_nearest_spawn",
|
|
"create_wall_for_force", "fpn", "give_items", "create_item_frame", "create_technologies_frame", "create_cheat_frame", "create_day_frame",
|
|
"time_modifier", "points_per_second_start", "points_per_second_level_subtract", "levels", "update_info", "get_time_left", "update_time_left",
|
|
"on_joined", "make_frame", "update_frame", "update_table", "calculate_task_item_multiplayer", "setup_config", "select_from_probability_table",
|
|
"select_inventory", "select_equipment", "select_challange_type", "save_round_statistics", "start_challenge", "create_teams", "set_areas",
|
|
"decide_player_team", "set_teams", "refresh_leaderboard", "set_player", "generate_technology_list", "generate_research_task","setup_unlocks",
|
|
"check_technology_progress", "generate_production_task", "generate_shopping_list_task", "set_gui_flow_table", "create_visibility_button",
|
|
"check_item_lists", "update_task_gui", "check_end_of_round", "end_round_gui_update", "try_to_check_victory", "update_gui", "check_start_round",
|
|
"check_start_set_areas", "check_start_setting_entities", "check_set_areas", "check_clear_areas", "check_chests", "check_chests_shopping_list",
|
|
"check_chests_production", "check_input_chests", "fill_input_chests", "check_victory", "shopping_task_finished", "calculate_force_points",
|
|
"update_research_task_table", "update_production_task_table", "update_shopping_list_task_table", "create_joined_game_gui", "pre_ending_round",
|
|
"player_ending_prompt", "update_end_timer", "update_begin_timer", "team_finished", "save_points_list", "give_force_players_points",
|
|
"update_winners_list", "set_spectator", "set_character", "give_starting_inventory", "give_equipment", "shuffle_table", "format_time",
|
|
"spairs", "fill_leaderboard", "create_grid", "simple_entities", "save_map_data", "clear_map", "create_tiles", "recreate_entities",
|
|
"map_sets", "give_points", "init_forces", "init_globals", "init_unit_settings", "check_next_wave", "next_wave", "calculate_wave_power",
|
|
"wave_end", "make_next_spawn_tick", "check_spawn_units", "get_wave_units", "spawn_units", "randomize_ore", "set_command", "command_straglers",
|
|
"unit_config", "make_next_wave_tick", "time_to_next_wave", "time_to_wave_end", "rocket_died", "unit_died", "get_bounty_price", "setup_waypoints",
|
|
"insert_items", "give_starting_equipment", "give_spawn_equipment", "next_round_button_visible", "gui_init", "create_wave_frame", "create_money_frame",
|
|
"create_upgrade_gui", "update_upgrade_listing", "upgrade_research", "get_upgrades", "get_money", "update_connected_players", "update_round_number",
|
|
"set_research", "set_recipes", "check_deconstruction", "check_blueprint_placement", "loop_entities", "experiment_items",
|
|
"setup", "story_gui_click", "clear_surface", "add_run_trains_button", "puzzle_condition", "basic_signals",
|
|
"loop_trains", "Y_offset", "ghosts_1", "ghosts_2", "required_path", "through_wall_path", "count", "check_built_real_rail",
|
|
"current_ghosts_count", "other", "rails", "set_rails", "straight_section", "late_entities", "entities", "stop",
|
|
"get_spawn_coordinate",
|
|
|
|
--tutorials
|
|
"intermission", "create_entities_on_tick", "on_player_created", "required_count", "non_player_entities", "clear_rails",
|
|
"chest", "damage", "furnace", "init_prototypes", "build_infi_table", "junk", "update_player_tags", "time_left", "team_production",
|
|
"create_task_frame", "create_visibilty_buttons", "update_leaderboard", "in_in_area"
|
|
}
|
|
}
|
|
|
|
stds.factorio_base_data = {
|
|
globals = {
|
|
--Style
|
|
"make_cursor_box", "make_full_cursor_box",
|
|
"default_container_padding", "default_orange_color", "default_light_orange_color", "warning_red_color",
|
|
"achievement_green_color", "achievement_tan_color", "orangebuttongraphcialset", "bluebuttongraphcialset",
|
|
"bonus_gui_ordering", "trivial_smoke", "technology_slot_base_width", "technology_slot_base_height", "default_frame_font_vertical_compensation",
|
|
|
|
--Belts
|
|
"transport_belt_connector_frame_sprites", "transport_belt_circuit_wire_connection_point", "transport_belt_circuit_wire_max_distance",
|
|
"transport_belt_circuit_connector_sprites", "ending_patch_prototype", "basic_belt_horizontal", "basic_belt_vertical",
|
|
"basic_belt_ending_top", "basic_belt_ending_bottom", "basic_belt_ending_side", "basic_belt_starting_top", "basic_belt_starting_bottom",
|
|
"basic_belt_starting_side", "fast_belt_horizontal", "fast_belt_vertical", "fast_belt_ending_top", "fast_belt_ending_bottom",
|
|
"fast_belt_ending_side", "fast_belt_starting_top", "fast_belt_starting_bottom", "fast_belt_starting_side", "express_belt_horizontal",
|
|
"express_belt_vertical", "express_belt_ending_top", "express_belt_ending_bottom", "express_belt_ending_side", "express_belt_starting_top",
|
|
"express_belt_starting_bottom", "express_belt_starting_side",
|
|
|
|
--Circuit Connectors
|
|
"circuit_connector_definitions", "default_circuit_wire_max_distance", "inserter_circuit_wire_max_distance",
|
|
"universal_connector_template", "belt_connector_template", "belt_frame_connector_template", "inserter_connector_template",
|
|
|
|
--Inserter Circuit Connectors
|
|
"inserter_circuit_wire_max_distance", "inserter_default_stack_control_input_signal",
|
|
|
|
--Sounds/beams
|
|
"make_heavy_gunshot_sounds", "make_light_gunshot_sounds", "make_laser_sounds",
|
|
|
|
--Gun/Laser
|
|
"gun_turret_extension", "gun_turret_extension_shadow", "gun_turret_extension_mask", "gun_turret_attack",
|
|
"laser_turret_extension", "laser_turret_extension_shadow", "laser_turret_extension_mask",
|
|
|
|
--Pipes
|
|
"pipecoverspictures", "pipepictures", "assembler2pipepictures", "assembler3pipepictures", "make_heat_pipe_pictures",
|
|
|
|
--Combinators
|
|
"generate_arithmetic_combinator", "generate_decider_combinator", "generate_constant_combinator",
|
|
|
|
--Rail
|
|
"destroyed_rail_pictures", "rail_pictures", "rail_pictures_internal", "standard_train_wheels", "drive_over_tie",
|
|
"rolling_stock_back_light", "rolling_stock_stand_by_light",
|
|
|
|
--Enemies
|
|
"make_enemy_autoplace", "make_enemy_spawner_autoplace", "make_enemy_worm_autoplace",
|
|
"make_spitter_attack_animation", "make_spitter_run_animation", "make_spitter_dying_animation",
|
|
"make_spitter_attack_parameters", "make_spitter_roars", "make_spitter_dying_sounds",
|
|
"make_spawner_idle_animation", "make_spawner_die_animation",
|
|
"make_biter_run_animation", "make_biter_attack_animation", "make_biter_die_animation",
|
|
"make_biter_roars", "make_biter_dying_sounds", "make_biter_calls",
|
|
"make_worm_roars", "make_worm_dying_sounds", "make_worm_folded_animation", "make_worm_preparing_animation",
|
|
"make_worm_prepared_animation", "make_worm_attack_animation", "make_worm_die_animation",
|
|
|
|
--Other
|
|
"tile_variations_template", "make_water_autoplace_settings",
|
|
"make_unit_melee_ammo_type", "make_trivial_smoke", "make_4way_animation_from_spritesheet", "flying_robot_sounds",
|
|
"productivitymodulelimitation", "crash_trigger", "capsule_smoke", "make_beam", "playeranimations",
|
|
"make_blood_tint", "make_shadow_tint",
|
|
|
|
--tiles
|
|
"water_transition_template", "make_water_transition_template", "water_autoplace_settings", "water_tile_type_names",
|
|
"patch_for_inner_corner_of_transition_between_transition",
|
|
}
|
|
}
|
|
|
|
stds.factorio_base_story = {
|
|
globals = {
|
|
"story_init_helpers", "story_update_table", "story_init", "story_update", "story_on_tick", "story_add_update",
|
|
"story_remove_update", "story_jump_to", "story_elapsed", "story_elapsed_check", "story_show_message_dialog",
|
|
"set_goal", "player_set_goal", "on_player_joined", "flash_goal", "set_info", "player_set_info", "export_entities",
|
|
"list", "recreate_entities", "entity_to_connect", "limit_camera", "find_gui_recursive", "enable_entity_export",
|
|
"add_button", "on_gui_click", "set_continue_button_style", "add_message_log", "story_add_message_log",
|
|
"player_add_message_log", "message_log_frame", "message_log_scrollpane", "message_log_close_button",
|
|
"message_log_table", "toggle_message_log_button", "toggle_objective_button", "message_log_init",
|
|
"add_gui_recursive", "add_toggle_message_log_button", "add_toggle_objective_button", "mod_gui",
|
|
"flash_message_log_button", "flash_message_log_on_tick", "story_gui_click", "story_points_by_name", "story_branches",
|
|
"player", "surface", "deconstruct_on_tick", "recreate_entities_on_tick", "flying_congrats", "story_table"
|
|
}
|
|
}
|
|
|
|
stds.factorio_circuit_connector_generated = {
|
|
globals = {
|
|
'default_circuit_wire_max_distance', 'circuit_connector_definitions', 'universal_connector_template',
|
|
'belt_connector_template', 'belt_frame_connector_template', 'inserter_connector_template', 'inserter_connector_template',
|
|
'inserter_circuit_wire_max_distance', 'inserter_default_stack_control_input_signal', 'transport_belt_connector_frame_sprites',
|
|
'transport_belt_circuit_wire_max_distance',
|
|
}
|
|
} --))
|
|
|
|
--(( STDLIB ))--
|
|
stds.stdlib = {
|
|
read_globals = {
|
|
table = {
|
|
fields = {
|
|
"mean", "binary_search", "shuffle_table", "map", "avg", "count_keys", "sum", "max", "remove", "insert", "invert", "first", "sort", "compare", "maxn", "any", "array_to_dictionary",
|
|
"each", "flatten", "keys", "filter", "remove_keys", "flexcopy", "find", "fullcopy", "values", "pack", "deepcopy", "concat", "clear", "min",
|
|
"is_empty", "merge", "size", "dictionary_merge", "unpack", "last"
|
|
},
|
|
},
|
|
string = {
|
|
fields = {
|
|
"is_space", "is_empty", "match", "title", "upper", "gmatch", "trim", "split", "len", "ordinal_suffix", "dump", "shorten", "reverse",
|
|
"ends_with", "byte", "starts_with", "join", "is_alpha", "lower", "is_upper", "is_digit", "is_alnum", "rjust", "center", "ljust", "format",
|
|
"char", "is_lower", "contains", "gsub", "find", "rep", "sub"
|
|
},
|
|
},
|
|
math = {
|
|
fields = {
|
|
"asin", "max", "clamp", "round", "modf", "midrange_mean", "pow", "ldexp", "maxuint16", "fmod", "round_to", "randomseed", "huge", "harmonic_mean", "tan",
|
|
"maxint32", "quadratic_mean", "pi", "energetic_mean", "minint8", "frexp", "generalized_mean", "rad", "sin", "sinh", "min", "geometric_mean",
|
|
"atan", "avg", "cosh", "maxint8", "arithmetic_mean", "exp", "sum", "round", "maxuint64", "minint64", "ceil", "maxint64", "atan2", "floor_to",
|
|
"floor", "log", "maxint16", "minint16", "tanh", "acos", "deg", "cos", "log10", "maxuint8", "abs", "weighted_mean", "random", "maxuint32",
|
|
"sqrt", "minint32"
|
|
}
|
|
},
|
|
},
|
|
globals = {
|
|
"prequire", "rawtostring", "traceback", "inspect", "serpent", "inline_if", "install",
|
|
"GAME", "AREA", "POSITION", "TILE", "SURFACE", "CHUNK", "COLOR", "ENTITY", "INVENTORY", "RESOURCE", "CONFIG", "LOGGER", "QUEUE",
|
|
"EVENT", "GUI", "server_commands", "PLAYER", "FORCE", "log"
|
|
}
|
|
}
|
|
|
|
stds.stdlib_control = {
|
|
}
|
|
|
|
stds.stdlib_data = {
|
|
globals = {
|
|
'DATA', 'RECIPE', 'ITEM', 'FLUID', 'ENTITY', 'TECHNOLOGY', 'CATEGORY'
|
|
}
|
|
} --))
|
|
|
|
--(( FACTORIO DEFINES ))--
|
|
stds.factorio_defines = {
|
|
read_globals = {
|
|
defines = {
|
|
fields = {
|
|
alert_type = {
|
|
fields = {
|
|
'entity_under_attack',
|
|
'custom',
|
|
'no_material_for_construction',
|
|
'turret_fire',
|
|
'no_storage',
|
|
'not_enough_construction_robots',
|
|
'train_out_of_fuel',
|
|
'entity_destroyed',
|
|
'not_enough_repair_packs'
|
|
}
|
|
},
|
|
anticolor = {other_fields = true},
|
|
behavior_result = {fields = {'success', 'in_progress', 'deleted', 'fail'}},
|
|
build_check_type = {fields = {'script', 'manual', 'ghost_revive', 'ghost_place'}},
|
|
chain_signal_state = {fields = {'partially_open', 'none_open', 'none', 'all_open'}},
|
|
chunk_generated_status = {
|
|
fields = {'basic_tiles', 'corrected_tiles', 'entities', 'nothing', 'tiles', 'custom_tiles'}
|
|
},
|
|
circuit_condition_index = {
|
|
fields = {
|
|
'pump',
|
|
'arithmetic_combinator',
|
|
'constant_combinator',
|
|
'inserter_circuit',
|
|
'offshore_pump',
|
|
'decider_combinator',
|
|
'inserter_logistic',
|
|
'lamp'
|
|
}
|
|
},
|
|
circuit_connector_id = {
|
|
fields = {
|
|
'programmable_speaker',
|
|
'offshore_pump',
|
|
'accumulator',
|
|
'wall',
|
|
'lamp',
|
|
'roboport',
|
|
'rail_chain_signal',
|
|
'inserter',
|
|
'rail_signal',
|
|
'pump',
|
|
'storage_tank',
|
|
'combinator_output',
|
|
'electric_pole',
|
|
'combinator_input',
|
|
'constant_combinator',
|
|
'container'
|
|
}
|
|
},
|
|
color = {other_fields = true},
|
|
command = {
|
|
fields = {
|
|
'attack',
|
|
'group',
|
|
'attack_area',
|
|
'build_base',
|
|
'stop',
|
|
'compound',
|
|
'wander',
|
|
'go_to_location',
|
|
'flee'
|
|
}
|
|
},
|
|
compound_command = {fields = {'return_last', 'logical_and', 'logical_or'}},
|
|
control_behavior = {
|
|
fields = {
|
|
inserter = {
|
|
fields = {
|
|
circuit_mode_of_operation = {
|
|
fields = {
|
|
'set_stack_size',
|
|
'read_hand_contents',
|
|
'none',
|
|
'set_filters',
|
|
'enable_disable'
|
|
}
|
|
},
|
|
hand_read_mode = {fields = {'hold', 'pulse'}}
|
|
}
|
|
},
|
|
lamp = {fields = {circuit_mode_of_operation = {fields = {'use_colors'}}}},
|
|
logistic_container = {
|
|
fields = {circuit_mode_of_operation = {fields = {'set_requests', 'send_contents'}}}
|
|
},
|
|
mining_drill = {fields = {resource_read_mode = {fields = {'this_miner', 'entire_patch'}}}},
|
|
transport_belt = {fields = {content_read_mode = {fields = {'hold', 'pulse'}}}},
|
|
type = {
|
|
fields = {
|
|
'rail_chain_signal',
|
|
'arithmetic_combinator',
|
|
'constant_combinator',
|
|
'lamp',
|
|
'generic_on_off',
|
|
'wall',
|
|
'container',
|
|
'programmable_speaker',
|
|
'accumulator',
|
|
'roboport',
|
|
'inserter',
|
|
'rail_signal',
|
|
'storage_tank',
|
|
'train_stop',
|
|
'transport_belt',
|
|
'decider_combinator',
|
|
'mining_drill',
|
|
'logistic_container'
|
|
}
|
|
}
|
|
}
|
|
},
|
|
controllers = {fields = {'spectator', 'character', 'god', 'cutscene', 'editor', 'ghost'}},
|
|
deconstruction_item = {
|
|
fields = {
|
|
entity_filter_mode = {fields = {'whitelist', 'blacklist'}},
|
|
tile_filter_mode = {fields = {'whitelist', 'blacklist'}},
|
|
tile_selection_mode = {fields = {'only', 'never', 'always', 'normal'}}
|
|
}
|
|
},
|
|
difficulty = {fields = {'hard', 'easy', 'normal'}},
|
|
difficulty_settings = {
|
|
fields = {
|
|
recipe_difficulty = {fields = {'normal', 'expensive'}},
|
|
technology_difficulty = {fields = {'normal', 'expensive'}}
|
|
}
|
|
},
|
|
direction = {
|
|
fields = {'southwest', 'north', 'northeast', 'west', 'east', 'northwest', 'south', 'southeast'}
|
|
},
|
|
disconnect_reason = {
|
|
fields = {
|
|
'desync_limit_reached',
|
|
'banned',
|
|
'cannot_keep_up',
|
|
'switching_servers',
|
|
'wrong_input',
|
|
'quit',
|
|
'kicked_and_deleted',
|
|
'afk',
|
|
'kicked',
|
|
'dropped',
|
|
'reconnect'
|
|
}
|
|
},
|
|
distraction = {fields = {'by_damage', 'by_anything', 'by_enemy', 'none'}},
|
|
entity_status = {
|
|
fields = {
|
|
'no_power',
|
|
'networks_connected',
|
|
'item_ingredient_shortage',
|
|
'normal',
|
|
'not_connected_to_rail',
|
|
'no_recipe',
|
|
'low_power',
|
|
'fluid_ingredient_shortage',
|
|
'networks_disconnected',
|
|
'low_input_fluid',
|
|
'launching_rocket',
|
|
'no_ammo',
|
|
'no_ingredients',
|
|
'cant_divide_segments',
|
|
'full_output',
|
|
'disabled_by_control_behavior',
|
|
'charging',
|
|
'low_temperature',
|
|
'discharging',
|
|
'no_modules_to_transmit',
|
|
'waiting_for_space_in_destination',
|
|
'working',
|
|
'waiting_to_launch_rocket',
|
|
'waiting_for_source_items',
|
|
'turned_off_during_daytime',
|
|
'recharging_after_power_outage',
|
|
'preparing_rocket_for_launch',
|
|
'out_of_logistic_network',
|
|
'no_research_in_progress',
|
|
'fully_charged',
|
|
'disabled',
|
|
'disabled_by_script',
|
|
'no_minable_resources',
|
|
'no_input_fluid',
|
|
'missing_required_fluid',
|
|
'missing_science_packs',
|
|
'no_fuel',
|
|
'marked_for_deconstruction'
|
|
}
|
|
},
|
|
events = {
|
|
fields = {
|
|
'on_picked_up_item',
|
|
'on_entity_cloned',
|
|
'on_player_main_inventory_changed',
|
|
'on_entity_damaged',
|
|
'on_pre_player_crafted_item',
|
|
'on_player_joined_game',
|
|
'on_gui_text_changed',
|
|
'on_player_demoted',
|
|
'on_unit_removed_from_group',
|
|
'on_chunk_charted',
|
|
'on_player_ammo_inventory_changed',
|
|
'on_pre_ghost_deconstructed',
|
|
'on_player_mined_tile',
|
|
'on_player_pipette',
|
|
'on_player_promoted',
|
|
'on_player_crafted_item',
|
|
'on_player_toggled_map_editor',
|
|
'on_player_clicked_gps_tag',
|
|
'on_entity_died',
|
|
'on_chart_tag_added',
|
|
'on_player_removed',
|
|
'on_script_inventory_resized',
|
|
'on_robot_mined_entity',
|
|
'on_forces_merging',
|
|
'on_research_started',
|
|
'on_rocket_launch_ordered',
|
|
'on_entity_destroyed',
|
|
'on_player_setup_blueprint',
|
|
'on_player_display_scale_changed',
|
|
'on_post_entity_died',
|
|
'on_train_changed_state',
|
|
'on_biter_base_built',
|
|
'on_player_trash_inventory_changed',
|
|
'on_pre_script_inventory_resized',
|
|
'on_console_chat',
|
|
'on_gui_opened',
|
|
'on_surface_cleared',
|
|
'on_chart_tag_modified',
|
|
'on_character_corpse_expired',
|
|
'on_player_rotated_entity',
|
|
'on_permission_group_deleted',
|
|
'on_player_gun_inventory_changed',
|
|
'on_console_command',
|
|
'on_robot_mined_tile',
|
|
'on_player_mined_item',
|
|
'on_gui_selection_state_changed',
|
|
'on_permission_group_added',
|
|
'on_player_banned',
|
|
'on_player_died',
|
|
'on_gui_value_changed',
|
|
'on_pre_chunk_deleted',
|
|
'on_build_base_arrived',
|
|
'on_resource_depleted',
|
|
'on_player_changed_surface',
|
|
'on_cancelled_upgrade',
|
|
'on_land_mine_armed',
|
|
'on_trigger_fired_artillery',
|
|
'on_player_used_capsule',
|
|
'on_chunk_generated',
|
|
'on_entity_renamed',
|
|
'on_player_cheat_mode_enabled',
|
|
'on_player_display_resolution_changed',
|
|
'on_difficulty_settings_changed',
|
|
'on_surface_renamed',
|
|
'on_permission_string_imported',
|
|
'on_player_deconstructed_area',
|
|
'on_player_placed_equipment',
|
|
'on_player_alt_selected_area',
|
|
'on_player_built_tile',
|
|
'on_player_repaired_entity',
|
|
'on_area_cloned',
|
|
'on_player_changed_position',
|
|
'on_force_reset',
|
|
'on_lua_shortcut',
|
|
'on_pre_surface_deleted',
|
|
'on_mod_item_opened',
|
|
'on_player_unmuted',
|
|
'on_ai_command_completed',
|
|
'on_sector_scanned',
|
|
'on_entity_spawned',
|
|
'on_player_fast_transferred',
|
|
'on_player_left_game',
|
|
'on_gui_selected_tab_changed',
|
|
'on_gui_switch_state_changed',
|
|
'on_force_friends_changed',
|
|
'on_player_driving_changed_state',
|
|
'on_player_cheat_mode_disabled',
|
|
'on_entity_settings_pasted',
|
|
'on_robot_pre_mined',
|
|
'on_player_cancelled_crafting',
|
|
'on_gui_closed',
|
|
'on_gui_click',
|
|
'on_technology_effects_reset',
|
|
'script_raised_set_tiles',
|
|
'on_player_configured_spider_remote',
|
|
'on_chunk_deleted',
|
|
'script_raised_revive',
|
|
'script_raised_destroy',
|
|
'script_raised_built',
|
|
'on_unit_group_finished_gathering',
|
|
'on_player_muted',
|
|
'on_script_trigger_effect',
|
|
'on_surface_deleted',
|
|
'on_built_entity',
|
|
'on_unit_added_to_group',
|
|
'on_trigger_created_entity',
|
|
'on_train_schedule_changed',
|
|
'on_unit_group_created',
|
|
'on_tick',
|
|
'on_surface_imported',
|
|
'on_surface_created',
|
|
'on_player_removed_equipment',
|
|
'on_cancelled_deconstruction',
|
|
'on_player_configured_blueprint',
|
|
'on_string_translated',
|
|
'on_spider_command_completed',
|
|
'on_selected_entity_changed',
|
|
'on_brush_cloned',
|
|
'on_train_created',
|
|
'on_player_changed_force',
|
|
'on_player_kicked',
|
|
'on_runtime_mod_setting_changed',
|
|
'on_rocket_launched',
|
|
'on_gui_confirmed',
|
|
'on_pre_player_mined_item',
|
|
'on_robot_mined',
|
|
'on_game_created_from_scenario',
|
|
'on_player_toggled_alt_mode',
|
|
'on_pre_player_died',
|
|
'on_pre_permission_group_deleted',
|
|
'on_robot_exploded_cliff',
|
|
'on_robot_built_tile',
|
|
'on_robot_built_entity',
|
|
'on_player_armor_inventory_changed',
|
|
'on_research_finished',
|
|
'on_pre_surface_cleared',
|
|
'on_pre_robot_exploded_cliff',
|
|
'on_pre_player_toggled_map_editor',
|
|
'on_permission_group_edited',
|
|
'on_pre_player_removed',
|
|
'on_force_created',
|
|
'on_market_item_purchased',
|
|
'on_pre_permission_string_imported',
|
|
'on_pre_entity_settings_pasted',
|
|
'on_player_selected_area',
|
|
'on_player_used_spider_remote',
|
|
'on_player_unbanned',
|
|
'on_player_set_quick_bar_slot',
|
|
'on_cutscene_cancelled',
|
|
'on_pre_build',
|
|
'on_player_respawned',
|
|
'on_player_mined_entity',
|
|
'on_player_flushed_fluid',
|
|
'on_gui_elem_changed',
|
|
'on_chart_tag_removed',
|
|
'on_player_cursor_stack_changed',
|
|
'on_cutscene_waypoint_reached',
|
|
'on_player_created',
|
|
'on_script_path_request_finished',
|
|
'on_pre_player_left_game',
|
|
'on_marked_for_upgrade',
|
|
'on_combat_robot_expired',
|
|
'on_marked_for_deconstruction',
|
|
'on_gui_location_changed',
|
|
'on_gui_checked_state_changed',
|
|
'on_forces_merged',
|
|
'on_force_cease_fire_changed',
|
|
'on_player_dropped_item'
|
|
}
|
|
},
|
|
flow_precision_index = {
|
|
fields = {
|
|
'two_hundred_fifty_hours',
|
|
'ten_minutes',
|
|
'ten_hours',
|
|
'one_minute',
|
|
'one_thousand_hours',
|
|
'fifty_hours',
|
|
'one_hour',
|
|
'one_second'
|
|
}
|
|
},
|
|
group_state = {
|
|
fields = {
|
|
'attacking_distraction',
|
|
'attacking_target',
|
|
'finished',
|
|
'gathering',
|
|
'moving',
|
|
'wander_in_group',
|
|
'pathfinding'
|
|
}
|
|
},
|
|
gui_type = {
|
|
fields = {
|
|
'entity',
|
|
'bonus',
|
|
'blueprint_library',
|
|
'achievement',
|
|
'item',
|
|
'server_management',
|
|
'permissions',
|
|
'research',
|
|
'custom',
|
|
'equipment',
|
|
'controller',
|
|
'tutorials',
|
|
'trains',
|
|
'tile',
|
|
'production',
|
|
'player_management',
|
|
'other_player',
|
|
'none',
|
|
'logistic'
|
|
}
|
|
},
|
|
input_action = {
|
|
fields = {
|
|
'build_item',
|
|
'change_blueprint_book_record_label',
|
|
'change_single_blueprint_record_label',
|
|
'clear_selected_blueprint',
|
|
'clear_selected_deconstruction_item',
|
|
'set_single_blueprint_record_icon',
|
|
'set_logistic_trash_filter_item',
|
|
'drop_to_blueprint_book',
|
|
'open_tutorials_gui',
|
|
'upgrade_opened_blueprint',
|
|
'create_blueprint_like',
|
|
'clear_selected_upgrade_item',
|
|
'open_kills_gui',
|
|
'change_item_description',
|
|
'fast_entity_transfer',
|
|
'set_recipe_notifications',
|
|
'quick_bar_set_slot',
|
|
'alt_select_blueprint_entities',
|
|
'change_decider_combinator_parameters',
|
|
'inventory_split',
|
|
'connect_rolling_stock',
|
|
'gui_confirmed',
|
|
'gui_value_changed',
|
|
'set_logistic_filter_item',
|
|
'setup_single_blueprint_record',
|
|
'set_entity_energy_property',
|
|
'stop_building_by_moving',
|
|
'set_signal',
|
|
'toggle_personal_logistic_requests',
|
|
'grab_blueprint_record',
|
|
'stack_split',
|
|
'undo',
|
|
'set_entity_logistic_trash_filter_item',
|
|
'switch_constant_combinator_state',
|
|
'export_blueprint',
|
|
'toggle_enable_vehicle_logistics_while_moving',
|
|
'copy',
|
|
'launch_rocket',
|
|
'copy_opened_blueprint',
|
|
'activate_cut',
|
|
'set_car_weapons_control',
|
|
'delete_permission_group',
|
|
'use_artillery_remote',
|
|
'copy_entity_settings',
|
|
'open_mod_item',
|
|
'open_parent_of_opened_item',
|
|
'set_flat_controller_gui',
|
|
'set_infinity_container_filter_item',
|
|
'open_gui',
|
|
'go_to_train_station',
|
|
'cancel_deconstruct',
|
|
'open_blueprint_library_gui',
|
|
'set_vehicle_automatic_targeting_parameters',
|
|
'change_riding_state',
|
|
'copy_opened_item',
|
|
'upgrade_opened_blueprint_by_record',
|
|
'gui_selection_state_changed',
|
|
'deconstruct',
|
|
'craft',
|
|
'reset_item',
|
|
'open_technology_gui',
|
|
'change_arithmetic_combinator_parameters',
|
|
'cancel_upgrade',
|
|
'map_editor_action',
|
|
'cursor_transfer',
|
|
'cancel_craft',
|
|
'change_picking_state',
|
|
'set_inventory_bar',
|
|
'gui_selected_tab_changed',
|
|
'open_logistic_gui',
|
|
'cursor_split',
|
|
'cycle_blueprint_book_backwards',
|
|
'destroy_opened_item',
|
|
'set_circuit_condition',
|
|
'open_bonus_gui',
|
|
'select_next_valid_gun',
|
|
'change_multiplayer_config',
|
|
'delete_blueprint_record',
|
|
'change_programmable_speaker_circuit_parameters',
|
|
'gui_click',
|
|
'inventory_transfer',
|
|
'open_production_gui',
|
|
'wire_dragging',
|
|
'upgrade_opened_blueprint_by_item',
|
|
'open_item',
|
|
'open_tips_and_tricks_gui',
|
|
'rotate_entity',
|
|
'set_linked_container_link_i_d',
|
|
'change_item_label',
|
|
'toggle_show_entity_info',
|
|
'flush_opened_entity_fluid',
|
|
'import_blueprint_string',
|
|
'toggle_map_editor',
|
|
'change_train_wait_condition_data',
|
|
'take_equipment',
|
|
'toggle_driving',
|
|
'select_item',
|
|
'alt_select_area',
|
|
'change_active_quick_bar',
|
|
'build_rail',
|
|
'gui_elem_changed',
|
|
'change_programmable_speaker_alert_parameters',
|
|
'toggle_entity_logistic_requests',
|
|
'disconnect_rolling_stock',
|
|
'set_player_color',
|
|
'set_splitter_priority',
|
|
'switch_to_rename_stop_gui',
|
|
'switch_power_switch_state',
|
|
'reset_assembling_machine',
|
|
'add_permission_group',
|
|
'open_current_vehicle_gui',
|
|
'open_blueprint_record',
|
|
'switch_connect_to_logistic_network',
|
|
'custom_input',
|
|
'add_train_station',
|
|
'reassign_blueprint',
|
|
'activate_copy',
|
|
'start_research',
|
|
'drag_train_wait_condition',
|
|
'start_repair',
|
|
'set_circuit_mode_of_operation',
|
|
'change_active_item_group_for_filters',
|
|
'edit_permission_group',
|
|
'use_item',
|
|
'spawn_item',
|
|
'smart_pipette',
|
|
'setup_blueprint',
|
|
'edit_custom_tag',
|
|
'setup_assembling_machine',
|
|
'build',
|
|
'import_blueprints_filtered',
|
|
'set_heat_interface_mode',
|
|
'set_logistic_filter_signal',
|
|
'begin_mining',
|
|
'set_trains_limit',
|
|
'set_train_stopped',
|
|
'set_research_finished_stops_game',
|
|
'set_inserter_max_stack_size',
|
|
'translate_string',
|
|
'set_request_from_buffers',
|
|
'set_infinity_pipe_filter',
|
|
'set_infinity_container_remove_unfiltered_items',
|
|
'set_heat_interface_temperature',
|
|
'set_filter',
|
|
'set_entity_color',
|
|
'cancel_new_blueprint',
|
|
'select_tile_slot',
|
|
'set_deconstruction_item_tile_selection_mode',
|
|
'activate_paste',
|
|
'alternative_copy',
|
|
'gui_location_changed',
|
|
'gui_switch_state_changed',
|
|
'set_controller_logistic_trash_filter_item',
|
|
'set_behavior_mode',
|
|
'set_autosort_inventory',
|
|
'set_auto_launch_rocket',
|
|
'send_spidertron',
|
|
'change_shooting_state',
|
|
'set_deconstruction_item_trees_and_rocks_only',
|
|
'select_mapper_slot',
|
|
'toggle_deconstruction_item_tile_filter_mode',
|
|
'drop_item',
|
|
'select_blueprint_entities',
|
|
'select_area',
|
|
'upgrade',
|
|
'remove_train_station',
|
|
'remove_cables',
|
|
'start_walking',
|
|
'quick_bar_set_selected_page',
|
|
'change_active_character_tab',
|
|
'paste_entity_settings',
|
|
'begin_mining_terrain',
|
|
'quick_bar_pick_slot',
|
|
'stack_transfer',
|
|
'lua_shortcut',
|
|
'drop_blueprint_record',
|
|
'open_trains_gui',
|
|
'drag_train_schedule',
|
|
'toggle_equipment_movement_bonus',
|
|
'cycle_blueprint_book_forwards',
|
|
'change_active_item_group_for_crafting',
|
|
'build_terrain',
|
|
'market_offer',
|
|
'change_entity_label',
|
|
'place_equipment',
|
|
'write_to_console',
|
|
'open_equipment',
|
|
'delete_custom_tag',
|
|
'clear_cursor',
|
|
'switch_inserter_filter_mode_state',
|
|
'open_character_gui',
|
|
'delete_blueprint_library',
|
|
'open_achievements_gui',
|
|
'mod_settings_changed',
|
|
'import_permissions_string',
|
|
'toggle_personal_roboport',
|
|
'import_blueprint',
|
|
'gui_text_changed',
|
|
'toggle_deconstruction_item_entity_filter_mode',
|
|
'admin_action',
|
|
'gui_checked_state_changed',
|
|
'flush_opened_entity_specific_fluid',
|
|
'change_train_wait_condition',
|
|
'fast_entity_split',
|
|
'destroy_item',
|
|
'cancel_research',
|
|
'edit_blueprint_tool_preview',
|
|
'select_entity_slot',
|
|
'open_train_gui',
|
|
'open_train_station_gui',
|
|
'change_train_stop_station',
|
|
'change_programmable_speaker_parameters'
|
|
}
|
|
},
|
|
inventory = {
|
|
fields = {
|
|
'car_ammo',
|
|
'furnace_result',
|
|
'furnace_source',
|
|
'character_ammo',
|
|
'spider_trunk',
|
|
'fuel',
|
|
'character_trash',
|
|
'artillery_wagon_ammo',
|
|
'robot_repair',
|
|
'rocket_silo_rocket',
|
|
'beacon_modules',
|
|
'car_trunk',
|
|
'spider_trash',
|
|
'chest',
|
|
'character_corpse',
|
|
'mining_drill_modules',
|
|
'rocket_silo_result',
|
|
'turret_ammo',
|
|
'editor_ammo',
|
|
'character_armor',
|
|
'assembling_machine_input',
|
|
'assembling_machine_output',
|
|
'lab_modules',
|
|
'rocket',
|
|
'robot_cargo',
|
|
'burnt_result',
|
|
'assembling_machine_modules',
|
|
'roboport_robot',
|
|
'artillery_turret_ammo',
|
|
'roboport_material',
|
|
'spider_ammo',
|
|
'lab_input',
|
|
'item_main',
|
|
'god_main',
|
|
'editor_guns',
|
|
'furnace_modules',
|
|
'editor_main',
|
|
'character_main',
|
|
'editor_armor',
|
|
'character_vehicle',
|
|
'character_guns',
|
|
'cargo_wagon'
|
|
}
|
|
},
|
|
lightcolor = {other_fields = true},
|
|
logistic_member_index = {
|
|
fields = {
|
|
'character_provider',
|
|
'character_storage',
|
|
'vehicle_storage',
|
|
'generic_on_off_behavior',
|
|
'logistic_container',
|
|
'character_requester'
|
|
}
|
|
},
|
|
logistic_mode = {
|
|
fields = {'passive_provider', 'active_provider', 'requester', 'storage', 'buffer', 'none'}
|
|
},
|
|
mouse_button_type = {fields = {'left', 'middle', 'right', 'none'}},
|
|
rail_connection_direction = {fields = {'left', 'straight', 'right', 'none'}},
|
|
rail_direction = {fields = {'back', 'front'}},
|
|
relative_gui_position = {fields = {'bottom', 'top', 'left', 'right'}},
|
|
relative_gui_type = {
|
|
fields = {
|
|
'blueprint_library_gui',
|
|
'item_with_inventory_gui',
|
|
'logistic_gui',
|
|
'generic_on_off_entity_gui',
|
|
'admin_gui',
|
|
'spider_vehicle_gui',
|
|
'bonus_gui',
|
|
'programmable_speaker_gui',
|
|
'upgrade_item_gui',
|
|
'power_switch_gui',
|
|
'assembling_machine_select_recipe_gui',
|
|
'equipment_grid_gui',
|
|
'blueprint_setup_gui',
|
|
'constant_combinator_gui',
|
|
'trains_gui',
|
|
'controller_gui',
|
|
'tile_variations_gui',
|
|
'train_stop_gui',
|
|
'wall_gui',
|
|
'deconstruction_item_gui',
|
|
'storage_tank_gui',
|
|
'splitter_gui',
|
|
'standalone_character_gui',
|
|
'decider_combinator_gui',
|
|
'mining_drill_gui',
|
|
'additional_entity_info_gui',
|
|
'server_config_gui',
|
|
'rocket_silo_gui',
|
|
'roboport_gui',
|
|
'infinity_pipe_gui',
|
|
'resource_entity_gui',
|
|
'beacon_gui',
|
|
'rename_stop_gui',
|
|
'reactor_gui',
|
|
'rail_signal_gui',
|
|
'rail_chain_signal_gui',
|
|
'inserter_gui',
|
|
'arithmetic_combinator_gui',
|
|
'assembling_machine_gui',
|
|
'train_gui',
|
|
'burner_equipment_gui',
|
|
'production_gui',
|
|
'pipe_gui',
|
|
'permissions_gui',
|
|
'loader_gui',
|
|
'electric_energy_interface_gui',
|
|
'transport_belt_gui',
|
|
'furnace_gui',
|
|
'other_player_gui',
|
|
'lab_gui',
|
|
'armor_gui',
|
|
'heat_interface_gui',
|
|
'achievement_gui',
|
|
'linked_container_gui',
|
|
'blueprint_book_gui',
|
|
'lamp_gui',
|
|
'electric_network_gui',
|
|
'market_gui',
|
|
'accumulator_gui',
|
|
'entity_with_energy_source_gui',
|
|
'container_gui',
|
|
'car_gui',
|
|
'entity_variations_gui'
|
|
}
|
|
},
|
|
render_mode = {fields = {'chart_zoomed_in', 'game', 'chart'}},
|
|
rich_text_setting = {fields = {'disabled', 'enabled', 'highlight'}},
|
|
riding = {
|
|
fields = {
|
|
acceleration = {fields = {'reversing', 'accelerating', 'nothing', 'braking'}},
|
|
direction = {fields = {'left', 'straight', 'right'}}
|
|
}
|
|
},
|
|
shooting = {fields = {'shooting_selected', 'not_shooting', 'shooting_enemies'}},
|
|
signal_state = {fields = {'reserved_by_circuit_network', 'reserved', 'closed', 'open'}},
|
|
time = {fields = {'hour', 'week', 'year', 'month', 'minute', 'second', 'day'}},
|
|
train_state = {
|
|
fields = {
|
|
'no_path',
|
|
'manual_control',
|
|
'manual_control_stop',
|
|
'on_the_path',
|
|
'wait_station',
|
|
'no_schedule',
|
|
'wait_signal',
|
|
'arrive_station',
|
|
'arrive_signal',
|
|
'path_lost'
|
|
}
|
|
},
|
|
transport_line = {
|
|
fields = {
|
|
'right_line',
|
|
'left_split_line',
|
|
'left_underground_line',
|
|
'secondary_left_split_line',
|
|
'secondary_right_split_line',
|
|
'secondary_right_line',
|
|
'secondary_left_line',
|
|
'right_underground_line',
|
|
'left_line',
|
|
'right_split_line'
|
|
}
|
|
},
|
|
wire_connection_id = {fields = {'power_switch_right', 'power_switch_left', 'electric_pole'}},
|
|
wire_type = {fields = {'copper', 'green', 'red'}}
|
|
}
|
|
}
|
|
}
|
|
}--))
|
|
|
|
--[[ Options
|
|
"ignore", "std", "globals", "unused_args", "self", "compat", "global", "unused", "redefined",
|
|
"unused_secondaries", "allow_defined", "allow_defined_top", "module",
|
|
"read_globals", "new_globals", "new_read_globals", "enable", "only", "not_globals",
|
|
"max_line_length", "max_code_line_length", "max_string_line_length", "max_comment_line_length",
|
|
"max_cyclomatic_complexity"
|
|
--]]
|
|
|
|
--[[ Warnings list
|
|
-- 011 A syntax error.
|
|
-- 021 An invalid inline option.
|
|
-- 022 An unpaired inline push directive.
|
|
-- 023 An unpaired inline pop directive.
|
|
-- 111 Setting an undefined global variable.
|
|
-- 112 Mutating an undefined global variable.
|
|
-- 113 Accessing an undefined global variable.
|
|
-- 121 Setting a read-only global variable.
|
|
-- 122 Setting a read-only field of a global variable.
|
|
-- 131 Unused implicitly defined global variable.
|
|
-- 142 Setting an undefined field of a global variable.
|
|
-- 143 Accessing an undefined field of a global variable.
|
|
-- 211 Unused local variable.
|
|
-- 212 Unused argument.
|
|
-- 213 Unused loop variable.
|
|
-- 221 Local variable is accessed but never set.
|
|
-- 231 Local variable is set but never accessed.
|
|
-- 232 An argument is set but never accessed.
|
|
-- 233 Loop variable is set but never accessed.
|
|
-- 241 Local variable is mutated but never accessed.
|
|
-- 311 Value assigned to a local variable is unused.
|
|
-- 312 Value of an argument is unused.
|
|
-- 313 Value of a loop variable is unused.
|
|
-- 314 Value of a field in a table literal is unused.
|
|
-- 321 Accessing uninitialized local variable.
|
|
-- 331 Value assigned to a local variable is mutated but never accessed.
|
|
-- 341 Mutating uninitialized local variable.
|
|
-- 411 Redefining a local variable.
|
|
-- 412 Redefining an argument.
|
|
-- 413 Redefining a loop variable.
|
|
-- 421 Shadowing a local variable.
|
|
-- 422 Shadowing an argument.
|
|
-- 423 Shadowing a loop variable.
|
|
-- 431 Shadowing an upvalue.
|
|
-- 432 Shadowing an upvalue argument.
|
|
-- 433 Shadowing an upvalue loop variable.
|
|
-- 511 Unreachable code.
|
|
-- 512 Loop can be executed at most once.
|
|
-- 521 Unused label.
|
|
-- 531 Left-hand side of an assignment is too short.
|
|
-- 532 Left-hand side of an assignment is too long.
|
|
-- 541 An empty do end block.
|
|
-- 542 An empty if branch.
|
|
-- 551 An empty statement.
|
|
-- 611 A line consists of nothing but whitespace.
|
|
-- 612 A line contains trailing whitespace.
|
|
-- 613 Trailing whitespace in a string.
|
|
-- 614 Trailing whitespace in a comment.
|
|
-- 621 Inconsistent indentation (SPACE followed by TAB).
|
|
-- 631 Line is too long.
|
|
--]]
|