Limiting prototype names in 2.0

Place to post guides, observations, things related to modding that are not mods themselves.

Additional limits to prototype names in 2.0

Yes - limit them to AZaz09_-
31
91%
No - leave them as they are
3
9%
 
Total votes: 34

Rseding91
Factorio Staff
Factorio Staff
Posts: 14476
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Limiting prototype names in 2.0

Post by Rseding91 »

The question has once again come up about limiting prototype name characters to a smaller sub-set and I wanted to see what the existing modding community thinks about it.

Right now there are 2 limits on prototype names:

1. It must be <= 200 digits in length
2. It must not contain the dot "." symbol


I'm proposing adding a 3rd restriction for 2.0:

3. It must only contain the characters: AZaz09_-

The reason being: simpler handling of prototype names in external tools, and when interacting with file names. Specifically this was brought up again due to this reported issue: viewtopic.php?f=29&t=106734
If you want to get ahold of me I'm almost always on Discord.
User avatar
_CodeGreen
Long Handed Inserter
Long Handed Inserter
Posts: 72
Joined: Sat Mar 05, 2022 11:30 am
Contact:

Re: Limiting prototype names in 2.0

Post by _CodeGreen »

Most modded prototypes already follow the third restriction, so people won't really have to update anything. This change simplifies string matching in mods as well, and as someone who's made both mods and external tools, I'd definitely support this change.
My Mods | If you can't make it perfect, make it adjustable
User avatar
BrainGamer_
Long Handed Inserter
Long Handed Inserter
Posts: 93
Joined: Sun Nov 14, 2021 9:52 pm
Contact:

Re: Limiting prototype names in 2.0

Post by BrainGamer_ »

I also favour adding this third restriction.

Since I do have a somewhat complete list of all IDs used by mods (and their collisions) I thought I'll quickly check how many violations with the third rule there would be.

As of 2024-07-29 there are 148 mods breaking it.

Code: Select all

7seg
A_Total_Automization_Illy_Varient
A_Total_Automization_Infantry_Edition
A_Total_Automization_Monarch_Fork
AC-Aircraft
angelsexploration
Balanced_Updated_Construction_Drones
bbpp
BetterNuclear
bio-chemistry
biteorio
biterpet
biters-for-resources
biters-for-resources-tweaked
bitumen
blueprint_reader
bp100
bspr
CapsuleAmmo
chained-recipes
chem_early_landfill
chest-slot-reader
circuits_and_semiconductors
CJs_QoL_Research_Ver1
CliffMaker
Clowns-AngelBob-Nuclear
Clowns-Nuclear
colored_blueprints
Construction_Drones_Ost
Construction_Droneslk
crafting_combinator
crafting_combinator_depend_fix
crafting_combinator_xeraph
cryerysadWwt
Cursed-FMD
DeadlockStackingForMoreScience
DeadlockStackingForSPG
Deep_Storage_Unit
dog_mod
DyWorld-Dynamics-2
EmptyMinerDeconstructor
enemyracemanager
Epoch-Engineers
eradicators-belt-planner
eradicators-hand-crank-generator
eradicators-library
eradicators-screenshot-maker
erm_easier_terran
erm_marspeople
erm_redarmy
erm_terran
erm_terran_exp
erm_toss
erm_toss_exp
erm_zerg
erm_zerg_exp
erm_zerg_hd
exotic-industries
exotic-industries-compatibility
exotic-industries-se
exotic-seablock
FactorioChem
Fantario
fast_trans
FastFurnaceRecipes
FastLogistics
fhp-concrete-pathway
fiber-optics
filter-combinator-improved
firework_rockets
floofTrainTubes
FrallionTrains
giga_power
hardCrafting
hardCrafting_2
InserterModule
IR3_steam_locomotive
islands_world
itemized-nuclear
janky-quality
just_enough_inserters
just_enough_inserters_without_bobinserter
k2se-exotic-industries
kraskaska-biomass-biters
LesserMaterialNeeded
LinkFluidSystem
MapRevealTool
mesa-mods-chemistry
mh3-millitary-deconstruction
minefield
Mobile_Factory
MobileFactoryRedux
MoreScience
NFMC
no-pipe-touching
NotsosimpleWood
oilmine
OreCopy
OreEraser
OreEraserContinued
ParallelWorlds
pcj_trans
periodic-madness
periodic-madness-test
pollution-combinator
PollutionCombinator-JamieFork
productivity-fuel
pyalienlife
pyfunctionnal
pyfunctionnal_update
radar-signals
RadarGridGuideStrom
RenaiTransportation
reverse-factory-postprocess
rocket-shower
rumrun-npp
SciencePackGalore
SciencePackGaloreForked
SciencePackGaloreForkProdFix
SE-K2-BZ-Adjustments
se-seablock
Singistics
solar-sails
Space_trains
space-exploration
starry-sakura-flowerandperfume
steamtrain
steamtrainreupload
StoneToOre
StoneToOre_FreightForwarding
syn-crafting-ports
tanks_for_bob_fork
tesla_legacy
Therenalls_Updated_Construction_Drones
too-many-resources
TooManyItems
Total_Automization
toxic_waste
Train-Station-Light
trainConstructionSite
turrets-arc-limiter
underhaul
update-fish
Updated_Construction_Drones
VanillaFocusedGreenhouse
WeaponPack
xiuxian
yart
Attachments
illegal_ids.json
illegal ids by namespace
(7.52 MiB) Downloaded 35 times
mmmPI
Smart Inserter
Smart Inserter
Posts: 3728
Joined: Mon Jun 20, 2016 6:10 pm
Contact:

Re: Limiting prototype names in 2.0

Post by mmmPI »

as a noob modder, i can only say i was already using that convention because i didn't know precisely what was allowed and those are my standard. I wouldn't feel restricted.
Bilka
Factorio Staff
Factorio Staff
Posts: 3310
Joined: Sat Aug 13, 2016 9:20 am
Contact:

Re: Limiting prototype names in 2.0

Post by Bilka »

This was implemented for 2.0.
I'm an admin over at https://wiki.factorio.com. Feel free to contact me if there's anything wrong (or right) with it.
Post Reply

Return to “Modding discussion”