Open malomaster opened 1 year ago
@malomaster hello, yes it's possible, later today I'll release a version to fix that for you.
It's normal because factory levels just checks few entities.
On my mod I do check all prototypes, but haven't optimize that part
hey @malomaster i just installed heroturrets + 5dim_battlefield and its compatible haven't trigger errors
may you share your safe file, without Xp for buildings, so i can check?
Hi. I'm playing with a large bunch of mods, so I don't think that just sending a save file will helps you. Better if I just send you my modlist with list of edits I made in some of them – it pasted after the modlist, and you try to download all mods I mentioned and start the game. It is possible that not all my tweaks are present in there – I wrote that list of changes for myself and some little tweaks I might have forgotten to write. Also, my changes list is Google translated, so it can contain errors or might be not so accurate or a little confusing. In addition, I packed all edited mods except my locale mod and uploaded on Google Drive (353 MB 7z archive). Mods list and mod changes are HERE (txt file). I know almost nothing about LUA or coding in general, and ≈ all of my changes are copied from other mods (and most works fine – like adding fuel from 3 mods to trains from 5 or 6 mods), or made according to the pattern I found in mods, or I just guessed which parameters could be safely changed because of their English names. So I just can't track why 5dim_battlefield cause an error with bunch of mods (like Extended-Laser-Turrets or Hero turrets) or what other mod causes an error in 5dim_battlefield. Sometimes I tried to turn off/on some mods to try to track it, but I haven't much time to try many combinations, especially with not so fast Intel 10100f CPU (yeah, the game loads 3-5 minutes and even more after system boot). So if you can track, why this error happens and/or what mod cause it, or even how to fix this problem with 5dim_battlefield's turrets, I'll be very grateful.
That's a lot of work tweaking on each file, when I started was like that, but you should avoid change directly the mod. Turns out conflicts are triggered easier, and it's hard to track and you be unable to update when new version releases
You may change everything from other mods like I'm doing here :
https://github.com/millerscout/MMD-Factorio-Mods/blob/main/MMD-QoL-Tweaks/data-final-fixes.lua
I guess where the error must be on your mods, must be a typo on one of the prototypes @hero-turrets , version control would save your time
Won't promise to fix that, when I reach my PC I'll try, but your approach to tweak mods must change otherwise will be hard to get help
The problem is not all mods can be tweaked by external patches. For example, 5Dim's entities totally ignore ALL tries to somehow edit their properties by patching data.raw. Only direct mod code editing works. And no, in most cases in 5dim mods I changed only multiplier/bonuses for some properties (like turret attack speed, bonus damage modifier or recipe reduce costs for most of them to more or less fair). Some mods have internal functions I don't know how to use or, when I found those functions used in external mod to call other mod, and tried to copy-past-tweak them, but sometimes them trows errors, sometimes they doesn't work at all. For example, I tried to add some additional fuel types to jetpacks from "Jetpack" mod, but it make a bunch of errors or, when I tried to delete or edit some strings that caused errors -- and found that my changes just doesn't working, and jetpacks doesn't think that those modded fuel types are usable for jetpack.
I fixed that adding those mods as requisite, it overrides
I think I found the problem.
data.raw["ammo-turret"]["gun-turret"].fast_replaceable_group = "turret"
data.raw["electric-turret"]["laser-turret"].fast_replaceable_group = "turret"
The thing is, those 2 strings are in the beginning of "bobwarfare" mod. So Bob gave those two turrets the same group, but some other mods like "5dim_battlefield" have their own fast replaceable group for turrets. I think I haven't issues with "bobwarfare + 5dim_battlefield" mod combo because bobwarfare doesn't make gun turret's next_update as "bob-gun-turret-2", so it doesn't collide with 5dim. But for some reason when using with mods like "hero turrets"/"xp-for-buildings", "Extended-Laser-Turrets" etc. during the prototype building phase the game suddenly discovered that other turrets made from prototype "gun-turret" and its next update (5d-gun-turret) have different groups. Later I'll try to turn off those strings and try to load game with "xp-for-buildings". Also I'll try to combine and rewrite 5dim_battlefield for myself based on bobwarfare code -- I think I know how to make it work.
xp-for-buildings_0.0.23a.zip Some changes to your mod.
Also, for some reason, when I loaded my save I played with "Factory-levels" mod, some entities almost immediately got levels (even max 30 level), when some other entities doesn't. Additionally, if you don't mind, in the next few days I'll edit "settings" a little – I'll add order to them because now the settings are a little in a mess. One more thing. Found an issue with "DiscoScience". Looks like when Lab levels up and is replaced by a leveled up lab, DiscoScience got a non-critical error. It's not a problem, the problem is all leveled up labs doesn't support DiscoScience, so they're working without colorful internal light flicking animation (or even basic light flicking at all). Can you fix it?
Also, some questions.
per_level.crafting_speed_bonus = (this_tier.crafting_speed - previous_tier.crafting_speed) / Max_level * 1.2
? With similar formulas, when machines leveling up, they will get smooth parameters line, where max level machine will be 20% (or more/less, if you change "1.2" multiplier) better than 0 level next tier machine. Also, I think, for the last machine tier (if next_upgrade = nil) it will be cool if that "1.2" multiplier will be replaced by 1.4 or 1.5, so assembling max tier machine will be more profitable.* 0.01
at the end of the corresponding strings in mmddata.lua
and edit locale file a little (just adding "(in %)" to them).per_level.productivity_bonus = 20% / max_level
, and machines starting from tier 2 will have base_productivity_bonus = (machine.tier - 1) * 10%
?Disco science added at 0.0.29 and well your locale changes, Thanks ❤️
- Will be machines, after reaching maximum level, autoreplaced to the next tier machine according their "next_update" parameter (assembling machine 1 –› assembling machine 2 –› assembling machine 3, stone furnace –› steel furnace etc.), like it made in "Factory levels" mod?
personally, i don't like that mechanic, but ill implement as an optional feature. there's some missing mechanics, like upgrade to another tier as you progress technology.
- Can you make dynamical level bonuses? Something like:
per_level.crafting_speed_bonus = (this_tier.crafting_speed - previous_tier.crafting_speed) / Max_level * 1.2
? With similar formulas, when machines leveling up, they will get smooth parameters line, where max level machine will be 20% (or more/less, if you change "1.2" multiplier) better than 0 level next tier machine. Also, I think, for the last machine tier (if next_upgrade = nil) it will be cool if that "1.2" multiplier will be replaced by 1.4 or 1.5, so assembling max tier machine will be more profitable.
yes! i'm trying to achieve that, but there's alot of planning about it, don't know if you noticed but this mod dynamically creates level for most of entities without error, because of that there's no way yet to assign tiers directly
using my mod list as an example
what's the algorithm needed to properly detect this order:
burner assembly
> assembly 1
> assembly 2
> assembly 3
> Advanced assembly
> Space assembly
> Space Manufacture
To achieve that without breaking it needs further planning and alot of testing with different setups
- If you don't like my previous suggestion, at least, I think, will be better if you change settings from a fractional number to a percentage. I don't know about you, but I like more when I see numbers "1", "5" instead of "0.01", "0.05" – I think it's more readable and understandable. All you need – just add
* 0.01
at the end of the corresponding strings inmmddata.lua
and edit locale file a little (just adding "(in %)" to them).- I think productivity bonus added by mod now is too cheaty. Maybe you should make
per_level.productivity_bonus = 20% / max_level
, and machines starting from tier 2 will havebase_productivity_bonus = (machine.tier - 1) * 10%
?Currently the best way to do it it's decrease for you the productivity bonus.
- Can you make that first tier machines will have lesser levels, like in "Factory-levels"? I think the best option will be: 1st tier -- math.ceil(max_levels / 4) or math.ceil(max_levels / 2) if next_update = nil; 2nd tier -- math.ceil(max_levels / 2) or max_level if next_update = nil; 3rd tier -- math.ceil(max_level / 4 * 3) or max_level if next_update = nil; 4th and higher tiers -- max_level.
Tiers need to be implemented first.
what's the algorithm needed to properly detect this order:
burner assembly
>assembly 1
>assembly 2
>assembly 3
>Advanced assembly
>Space assembly
>Space Manufacture
The problem is, not all playing the "K2+SE" modpacks. For example, now I'm playing "Bob+5dim+MilesBobExpansion" (the last adds additional levels for Bob's assemblers and electronics machines). I think, for "1." and/or "2." mechanic I mentioned working properly, you'll need to make a setting -- smth like "Choose upgrade path for: assemblers"/"drills"/"furnaces" with autodetecting which mods are presented (you know, "if mods["mod"] then"). And, if more than 1 mod from the "More vanilla machines tiers" present, this setting appears, and player must choose upgrade chain. Also I think you need to add "next_upgrade" patch for all those machines. If you wanted, I'll look in my mods – I think I saw in some of them how to make setting with chooses that are present if condition x is met.
For example, in case of use "Bob+5dim+MilesBobExpansion" in "Choose upgrade" must appear chooses "Bob's" and "5Dim's" (I preferred Bob). And order of upgrades will be:
burner assembly
> steam assembly
(if setting.startup["bobmods-assembly-burner"] == true) > assembly 1
> assembly 2
> assembly 3
> bob assembly 4
> bob assembly 5
> bob assembly 6
> Miles assembly 7
> Miles assembly 8
> Miles assembly 9
> Miles assembly 10
For 5Dim's it will be:
assembly 1
> assembly 2
> assembly 3
> bob assembly 4
> 5d-assembling-machine-[04..10]
If you don't mind, I can help you to make those lists and to add entities from 5dim, Bob+MilesBob, my edited "Munda big machine" etc. to migrations, when I'll have more free time on next week.
there's some missing mechanics, like upgrade to another tier as you progress technology.
This will be very cool addition and will works like anti-cheating option.
Tried to use "pull request" for implementing "3.". Now can you tell me how to delete my own requests and how to edit/add multiple files in one request?
Hi. Error on load when using with 5dim_battlefield mod:
Error while running setup for entity prototype "hero-turret-1-gun-turret" (ammo-turret): next_update target (5d-gun-turret-02) must have the same fast_replaceable_group (gun-turret != turret)
. Is it possible to make your mod working with 5Dim? Because I don't want to delete 5Dim's mods (at least "battlefield", because it added 3 additional turret types for gun and laser turrets, and all turrets including tesla turret now have 10 levels, every level have more range, also I tweaked it, so next levels also have little damage and attack speed), because with "Rampart" mod and some other mods which add new types of enemies, without those towers (especially sniper and laser sniper turrets) the game became almost unplayable because of too strong and too annoying enemies.And one more question. Is it normal that, when game is loading, all mods loaded after your "XP for buildings" starting to load 3-4 times slower than without it? When I'm playing with "factory levels" mod, it didn't affect the mods loading similarly.