Rampant: heavy walls

by ldinc

Extension with super reinforced walls. Can be usefull with rampant arsenal mods.

Content
11 months ago
1.1 - 2.0
19.6K
Combat

i Mod remake

3 days ago
(updated 3 days ago)

Would you be against if i remade your mod (use your mod as a dependency) and make a heavy tweak out of it? Not sure how to interpret that Mozilla public license so i am asking.

The idea is to make it tie together with a bunch of mods:

Drog's Regenerative Walls
https://mods.factorio.com/mod/Drox-Regenerative-Walls?from=search

Industrialcraft - Heavy walls
https://mods.factorio.com/mod/ic-reinforced-walls

The carbon fibre wall from Castra:
https://mods.factorio.com/mod/castra?from=search

Nanites from metal and stars:
https://mods.factorio.com/mod/metal-and-stars?from=search

Blue tiberium slurry from Factorio and Conquer:
https://mods.factorio.com/mod/Factorio-Tiberium

Ultra density structure from Shattered Planet:
https://mods.factorio.com/mod/skewer_shattered_planet?from=search

Idea:

The recipe to make the wall will be something like: 1 MK3 regenerative wall, 1 enriched uranium wall, 1 carbon fibre wall, 1 ultra density structure, 10 nanites and 10 blue tiberium slurry, required to be made in a microgravity assembler.

The wall:

Then tweak the wall to get the properties of all, 10% dmg reflectiveness, better regeneration than the mk3 regenerative one, massive hp pool (around 100k) and resistances. (For tier 10 rampant enemies and super duper late game enemies, with increased tweaked values). Would ofc be completely broken without rampant, but the cost and complexity to make it will be pretty insane.

I would probably rename the wall and call it something like "Project Omega titanlock-U9 Composite Nano-Mesh Hyperbarrier" or something like that, rolls off the tongue just about right.

I could make my own mod but your mod is more fitting, and that it is not really a stand-alone wall, but a mish-mash of walls and stuff from alot of mods.

3 days ago

Hi! If I understood everything correctly the main idea is get entity of reinforced wall, got copy for item, entity, recipe and maybe tech.
If the process is get copy, patch it and hide original (maybe with some book settings: be default hide original heavy wall) - all is fine. The mpl license allow further runtime modification:)
If you want copy and modified some code too, the only modified files still should have original license, if I'm not wrong. It can be cherry picked only some parts.
I'm ok for using my mod as deps or even reuse code :)
If it should be fine to add some remote commands or smth else for more smooth integration - let me know about it and we'll try to solve it.

3 days ago

The short note from chatgpt about mpl 2.0:
"
For Factorio mods, here’s a short explanation of using MPL 2.0 code as a dependency:

You can use MPL 2.0 code in your mod, including commercially.

If you modify MPL-licensed files, you must release those modified files under MPL 2.0.

You do not have to open-source your entire mod — only the MPL-covered files themselves.

You must include the MPL 2.0 license text and keep copyright notices.

You can keep your own original files under any license you choose.

In short: MPL 2.0 is safe to use for Factorio mod dependencies because it only requires sharing changes to the MPL files, not your whole mod.
"
Seems legit)

3 days ago
(updated 3 days ago)

Hi! If I understood everything correctly the main idea is get entity of reinforced wall, got copy for item, entity, recipe and maybe tech.
If the process is get copy, patch it and hide original (maybe with some book settings: be default hide original heavy wall) - all is fine. The mpl license allow further runtime modification:)
If you want copy and modified some code too, the only modified files still should have original license, if I'm not wrong. It can be cherry picked only some parts.
I'm ok for using my mod as deps or even reuse code :)
If it should be fine to add some remote commands or smth else for more smooth integration - let me know about it and we'll try to solve it.

I was planning on doing a "data-final-fixes" in this new mod and change stuff that way, without touching anything or copying your mod, seems "the right way" to do these kind of things to my understanding, have done it privately for my personal modpacks but never uploaded a mod before and i just want to do it the right way. Read about someone that made a big mod but used stuff from other people the wrong way and basicly had to scrap his whole project.

The one thing i think is going to be a problem is to rename it. But what you meant about that remote part, is that if it detects my mod it's going to rename itself or something?

Another idea is to make a stand alone fork of yours, include your wall in the recipe aswell so it is a dependency aswell. It is going to be a megabase wall after all.

Or i don't know....should i make my own wall after all? xD i just suck at editing these low-res images, i tried myself to make a few dark green lines on it but it looked horrible, i could change tint but there are already like 14 different tinted walls in this modpack.

3 days ago

I meant that i tried to edit the vanilla wall, not yours.

3 days ago
(updated 3 days ago)

About remote commands: https://wiki.factorio.com/Tutorial:Script_interfaces
The feature - the one mod can register some function to be easy callable from another one.

I can refine the code to make generators fn, for enitites. I just create new entities with custom tint, name and specs. Reusing vanilla graphics =)
https://github.com/ldinc/apm-mods/blob/master/rampart_heavy_wall/prototypes/main/entities/wall.lua
The example. I can wrap the wall creation to function, like rampart_heavy_wall.generate.wall(new_name, new_tint, max_hp, resistances).

And you can just in you mode to call the func from my mod directly like:

local wall = rampart_heavy_wall.generate.wall(new_name, new_tint, max_hp, resistances)
--- do some extra patсhing if needed
data:extend({wall})
3 days ago

Example of using public function from one mod in another:
https://github.com/ldinc/apm-mods/blob/master/apm_power/prototypes/main/entities/burner_inserters.lua#L48

the mod apm_power using fn from apm_lib apm.lib.utils.inserter.get.by_name

2 days ago

Okey thanks for all the info, i really appreciate it.

I am wondering if i am going to give it a go to try and make it myself again. I was planning on first for it just to be a personal project to quickly get it done and playable with my current mod setup but i have been wanting to learn how to mod factorio for real for a while now, not just data-final-fix stuff.

My personal stuff on my own PC ofc doesn't have to abide any rules but it sounds easier in the long run to just make a mod myself, that way i don't have to depend on your mod either and dont bother you with requests if i want to do stuff.

Got any guides you would recommend?

Again....sorry that i am having second thoughts, looks like you took alot of time to write those answers.

a day ago

All is fine)
The guides about making mods?
The basics are good described by Wube:
- https://wiki.factorio.com/Tutorial:Modding_tutorial/Gangsir
- https://wiki.factorio.com/Modding

The good start - is relative mod and check original vanila game lua files (the game is a big mod too =) ).

You can also check the code of creating wall and other entities from my mod. It's similar to vanila code.

a day ago

Oh didn't know it was updated for 2.0, nice! :D

Thanks, yes i will probably take a peek :3

New response