Abandoned Ruins - Base Set

by Keysivi

Adds a Base ruin set to 'Abandoned Ruins' (Now co-authored with roland77)

Content
9 days ago
2.0
1.81K

g Im working on a ruin set

3 months ago

Hey, i'm currently working on a ruin set that will use the time fork, I wanted to know if you implemented the ability to blacklist surfaces as I would like to do it in my new ruins pack, if not do you know how to implement it? I looked in the control script of this ruin pack but I see no function that does.

3 months ago

Good day! Unfortunately no. And I don't know how to do it.

My apologies.

3 months ago

I found this code in the main ruins mod not the ruins packs, I think there could be a way to modify this to work per modpack unsure though.

local function init()
util.set_enemy_force_cease_fire(util.get_enemy_force(), not settings.global["AbandonedRuins-enemy-not-cease-fire"].value)
spawn_chances()
if storage.spawn_ruins == nil then
storage.spawn_ruins = true
end
storage.ruin_queue = storage.ruin_queue or {}
if not storage.excluded_surfaces then
storage.excluded_surfaces = {
["beltlayer"] = true,
["pipelayer"] = true,
["Factory floor"] = true, -- factorissimo
["ControlRoom"] = true -- mobile factory
}
end
end

3 months ago

there is a remote call I will try it:

-- Any surface whose name contains this string will not have ruins generated on it.
---@param name string
exclude_surface = function(name)
assert(type(name) == "string",
"Remote call parameter to exclude_surface for AbandonedRuins must be a string value."
)
storage.excluded_surfaces[name] = true
end,

3 months ago

Thanks for the recommendations.

I don't want to write exceptions in the main ruins mod. Because different ruins packages may require different exceptions.

It's best to write exceptions in each ruins package individually.

Unfortunately, I don't know how to do this, and I couldn't contact the person who helped me with the revival of this mod.

3 months ago

I spoke to Bilka he said a ruin pack should be able to use the remote call to update storage.excluded_surfaces table, im still making the art assets atm it wont be a while till im coding

3 months ago
(updated 3 months ago)

remote.call("AbandonedRuins", "exclude_surface", "my_surface_name") I think if a ruin pack has this line of code in control it will add the surface to the excluded list do this for all surfaces required and it should work, edit* it may need this line first local excluded_surfaces = remote.call("AbandonedRuins", "get_excluded_surfaces")

3 months ago

Unfortunately, I don't know English. And Google translator doesn't translate your reasoning quite correctly.

If you have any specific suggestions - what should I do so that ruins packs could add exceptions to the main mod - I'll try to do it.

a month ago

@Sacredanarchy A ruin pack should only include ruins, normally you don't have to setup your own surfaces for that. The initial list in the main mod is very generic (still maybe the last 2 can be externalized to the corresponding mods) and should not include any further surface names.

So if a developer of a "planet/moon", he should run remote.call("AbandonedRuins", "exclude_surface", "my_surface_name") and not ask in main mod for exclusion of his surface (all planets or moons are surfaces).

a month ago
(updated a month ago)

So if you want to start a new ruin set:
- download this one, best by first forking my repository at github and give it a proper name like the others did
- rename it in info.json, fix the version number to 0.0.0
- reset the changelog.txt and refit the ruins you find in ruins folder
- add more content as you please (graphics, etc.)
- prepare the ZIP file by executing ./scripts/build_package.py

Then you have a releasable ZIP file for this mod portal.

a month ago

Hello roland77! We have some communication difficulties. I wrote you a message via the forum https://forums.factorio.com/

If suddenly you haven't seen it - I'll temporarily duplicate it here. After your answer, I'll delete it so as not to interfere with the main discussion.


I decided to help you a little. I filled in the FAQ sections including your recommendations:

https://mods.factorio.com/mod/AbandonedRuins_updated_fork/faq
https://mods.factorio.com/mod/ruin-maker_updated_fork/faq
https://mods.factorio.com/mod/AbandonedRuins-base/faq

A huge request - please look through them - did I write everything correctly. If you see errors and missing data - you can make all the necessary edits and additions. Plus, it is advisable to add a link to your github - so that it would be easier for the developers to implement your recommendations.

Thank you!

a month ago

Hello Keysivi. I'm not at the forum. Only here and on github (please not "attention please" issues). I need to find some time to go through the FAQs, if they are okay. But they feel a bit redundant to documentation in AbandonedRuins-base. There is an updated version of ruin_sets.md and a new file migration.md.

You can view them both online without cloning or downloading a release package:
https://github.com/Quix0r/AbandonedRuins-base/blob/master/docs/migration.md
https://github.com/Quix0r/AbandonedRuins-base/blob/master/docs/ruin_sets.md

I find it more convincing that I can upload the documentation during working on the LUA code and not use an external editor (this website) again.

a month ago

Thanks for your reply! We still want to have prompt communication. At least for the first time, while you are getting used to it.

If you don't want me to write to you on https://github.com/ - or somewhere else - then we can allocate a separate discussion thread for this in one of the mods.

Regarding the FAQ - you can edit it as you see fit. Just make sure it is clear and accessible enough.

I thought it necessary to add instructions directly on the mod pages, since some users (like me, for example) do not use https://github.com/

Regarding the content of my messages - unfortunately, I do not speak English and have to use Google Translate. I never set goals to offend or insult anyone.

And if something in my messages seemed unpleasant to you - I apologize.

a month ago

Thanks for your reply! We still want to have prompt communication. At least for the first time, while you are getting used to it.

If you don't want me to write to you on https://github.com/ - or somewhere else - then we can allocate a separate discussion thread for this in one of the mods.

It is just improper way to use github issues. For that, we should communicate outside these forums. Do you have XMPP/Jabber? I like to use OpenSource software on my Linux system.

Regarding the FAQ - you can edit it as you see fit. Just make sure it is clear and accessible enough.

I find it more helpful for me, to only maintain one place. github can render .md files which is short for mark-down (in contrast to markup languages like HTML).

I thought it necessary to add instructions directly on the mod pages, since some users (like me, for example) do not use https://github.com/

The documentation should be written for an audience and generally broad. For each mod - once I'm finish with editing it - the documentation can be found in the docs directory. Skilled developers are normally used to that circumstance, to check for a "README" (read: "Read me, please!") file or files named like "CONTRIBUTING"

Regarding the content of my messages - unfortunately, I do not speak English and have to use Google Translate. I never set goals to offend or insult anyone.

Don't worry. You didn't do it. :-) But thank you for consideration.

And if something in my messages seemed unpleasant to you - I apologize.

No, they aren't. I like it more directly being said without being rude. This way I know what I have done wrong and can improve slowly.

a month ago

I don't use XMPP/Jabber, but I do have an account on discord.com

In fact, it's not so important for me to have a permanent channel of communication with you, but to have the ability to quickly communicate during the transition period - while you establish contacts with the developers of the ruins packages and bring the mod to a stable state.

After everything is more or less settled for you, I think - my intervention in your work will no longer be needed.


Regarding the FAQ - I just suggested an option. If you think it's right - it will be possible to simply write - "detailed instructions are in such and such a file". It's just that ruins packages can be created not only by experienced developers, but also by dummies like me...

a month ago

I have subscribed to the whole forum here on the mods I develop on. So I get all notifications. But thank you for wanting me to attend quickly to user requests. But I have to inform you, that I now have more time, only because I'm unemployed.

Regarding the FAQs, I have cleared them but will later add links to github "pages".

a month ago

Okay. As I see it, all processes are currently running in a normal constructive mode.

Therefore, I will try not to interfere with your work.

a month ago

Sure, if you want anything to be changed (I'm also only a human) then I can try to change it.

Oh: New releases with discussed new features for exclusive ruin-sets are coming!

New response