Biter Power


Generate electricity by placing biters on treadmills. Biters can be caught with cage traps, or by placing an egg extractor on a buried biter nest. Biters get tired after running on the treadmill after which they need be revitalized, which could be hazardous. Warning, biters might escape!

Content
20 days ago
1.1
2.05K
Combat Enemies Power

i [Added] Tiers of biters and cages

1 year, 4 months ago

Hi, loving the concept of this mod!!
The assets and graphics are very nice as well. Congrats! The thing that I like the most is how frantic they look when producing max power, poor biters :p

Have you thought of the possibility of trapping different tiers of biters, or modded ones, so they can give more power? And you'd need bigger cages for the behemoths or leviathans, plus a bigger risk of them escaping and thrashing your base. That way you can power very big bases with this mod. What do you think?

1 year, 4 months ago

Hello! I'm glad you enjoy the mod, thanks :)

Initially I didn't want to do different biter types in cages. Personally I don't like the whole tiers mechanic, I would prefer giving the player different better tools. And it's a bit harder to balance. However, this might be one of the few cases where tiers make sense, because there's already tiers of biters. And most feedback I've gotten was that it would be cool.

So I'm considering it quite a bit now and think I can make it work, although it will take some time. And there will be some limitations which I can't work around like I can change the colour of a biter in a treadmil, but not it's size. But I'll see what I can come up with.

Thanks for your feedback Hameleha! :)

1 year, 4 months ago

Wow, I'm glad that you found the idea interesting, so nice!

About giving the player different tools, taking from the fact that there are only 3 types of enemies in the game, it's pretty limited already. You could think of using spitters to spit so you can use that to mine better by melting ore, or use worms and their strong jaws to grind the minerals and separate the impurities from the pure ore, I don't really know

So I'm considering it quite a bit now and think I can make it work, although it will take some time. And there will be some limitations which I can't work around like I can change the colour of a biter in a treadmil, but not it's size. But I'll see what I can come up with.

I mean, you are doing this for free, so no pressure, take your time.
I don't know how Lua works, but maybe you can change the size by rescaling the whole render of the object? Like having a "little" cage (3x3) for small and normal biters, and a big one (4x5) for the bigs, behemoths, and modded (or a special one for those, they can get pretty big, 6x7 maybe?). That way, technically you have the same object, just different size and color of biter. Maybe that can be easier, I don't really know about graphics in games.
Hope this helps, have a nice day

1 year, 3 months ago

The new release contains different tiers of caged biters. The bigger the more energy the biter can exert on the treadmill. Also added a bigger treadmill with 10x the power output that's required for big and behemoth biters!

7 months ago

Ok, finally tried the mod again!

The new assets and reinforced cage are very cool, congrats!

Yeah, it's a nice concept to have this source of energy, with its quirks (escape attempts, renewal of cages, hunting biters...).
I was thinking, with the stack amount of eggs, is it more intended to have little powerplants near to the nests, or is it actually better to bring the eggs by train or belts? What do you think?

Thanks a lot!

7 months ago

You have a few options. In my head it would make sense to breed the biters at the biter nests, because the incubators will absorb the enormous pollution made by the Egg Extractors. Otherwise your pollution cloud will grow at your remote outposts.

I haven't given much thought to where the actual treadmills should be. I would put them at a central location. Moving all the biters to a central location would take more trains though, because they only stack to one. But it would be cool to have biter-filled trains. And makes logistics easier of catching the escaping biters.

My main goal is to make multiple approaches feasable :)

7 months ago

Yeah, that's actually a very good idea, so the pollution cancels out. And biter trains sound cool haha! You could do it that they become a main objective for other biters as they would like to rescue their kin. Jk, unless you'd like to :p

Right now I'm playing with Alien Economy and Biomass, so polution is good for me because causes more attacks and therefore more resources, but i can't let it go out of control.

Thanks again, have a nice day!

7 months ago

How does Biter Power play with Biomass? I was wondering if I could do something to make them more compatable. Do you mind if I ask you a few questions?

  1. Maybe when a biter dies in a Revitalizator then it drops biomass? How much should it drop?
  2. Does it happen that the Buried Biter Nest and Biomass Deposit sometimes generate on exactly the same spot?
  3. Would you want to be able to slaughter biters directly into biomass?
7 months ago

Do you mind if I ask you a few questions?
Nah, go ahead. Glad to be able to help!

  1. That would be an interesting choice. But I don't really think it would be worth it. It's easy to farm biomass with turrets and belts (or the Schall pickup tower / autodeconstruct with roboports ...), and the mod itself gives you technoology to replicate it (although it's kind of late-game). But I've never really had problems with the amount. The biomass gathered from that method would be minimal, unless you are powering a megabase and you had like 20 biters dead per minute at least, or the quantity you give for each biter is massive (like 10x normal maybe).

  2. It's a possibility. I've yet to genocide enough :) , but I think I've still not seen a biomass deposit. But it's not confirmed, cause I got a 1% chance of it spawning, so I wouldn't be worried. I'll answer to you later.
    Later it is, and I've been testing with the editor (I'm playing with toxic, explosive, frost and armoured biters btw). I've been popping nests of every type, and it looks like they have no problems. In every biter race, they spawn both eggs and biomass. Congrats on that.
    Biomass deposits keep spawning, and in different positions than the buried nests. What I can't assure you is that maybe they spawn in the same place, but the game decides which one finally stays in place. I don't know debugging to such extent.

  3. You mean capturing them, or hatching them, and then directly killing them? Mmmm, maybe, but only with eggs. The cost of the cage, unless it is retrieved in most of cases, would be a loss (unless again, you gave massive amounts of biomass). Other option would be slowly extracting biomass from them while they are still alive. You would get more biomass, but the chance of them revolting and scaping skyrockets!
    Still, the means to get biomass would have to be tweaked, as right now you don't really need to get to such extents to squeeze some extra biomass.

Hope this helps!

7 months ago
  1. I guess that would then simply for a logistic challenge. I usually had revitalizing drop eggs, but that was actually very hard to get rid of. Biomass seems easy to use to not let it back up.
  2. It's probably possible that they overlap then, but highly unlikely. I would probably add a check for it anyway though.
  3. I would make it so that you get the cage back of course. I also like the idea of getting it from live ones, with a high chance of escape. But as you said, biomass is not really something that's hard to get by.

Thanks for the feedback, it's very useful :)

7 months ago

No problem, anything else you need, I check this web often. See u!

7 months ago

Hello again, I've been using this energy more time, and I wanted to ask you some questions:

Still loving the mod, I've come up with a blueprint for the "energy central" that I'm satisfied and kinda absorbs the pollution of the nests (ended with energy next to the egg mines).

So, I'm using the biters as backup energy, so they only generate energy when solar can't keep up. The only energy they are usually supplying is that passive consumption of inserters and such. However, they are scaping constantly. It is true that they are big biters, but I'm using reinforced cages. In the last 10 minutes, with 36 cages occupied, I've had like 20 scapes!! That's much more than the supposed "1 every 3 hours" that they have! Am I doing something wrong? s the chance of scaping the same when they aren't generating almost anything than when they are at full capacity?

And I've noticed the notes of "peaceful and dangerous" biter power that every biter has. How does that affect the scape attempts and such?

Thanks!

7 months ago
(updated 7 months ago)

Hello!

However, they are scaping constantly.

This seems by design. If the stat on the biter is "1 every 3 hours", and you have 36 of them on treadmills, then it will happen 36 times as often, or once every 180 / 36 = 7 minutes. This might be too much though, I agree. I think I'll make everything 10 times less likely to escape. What do you think of this?

the chance of scaping the same when they aren't generating almost anything than when they are at full capacity?

The escape chance is always the same, regardless of how much power they are generating. I thought about making the escape chance dependent on how much power they are outputting, but I feel that doesn't make sense because it would probably be easier to escape for the biter if it wasn't running at all. And I also don't want all biters to suddenly escape when your factory is pulling a lot of power. It's already very easy to lose all your biters.

And I've noticed the notes of "peaceful and dangerous" biter power that every biter has. How does that affect the scape attempts and such?

Ah that doesn't really do anything. Dangerous biters can only be put in Reinforced Treadmills. Peaceful biters can be put in both treadmills.

7 months ago

OK, thanks for the fast response!

This seems by design. If the stat on the biter is "1 every 3 hours", and you have 36 of them on treadmills, then it will happen 36 times as often, or once every 180 / 36 = 7 minutes. This might be too much though, I agree.

I mean, you calculations are still way less than what I'm experiencing. Take in account also that the reinforced cages have a modifier of scape of 0.5, so it should be 1 scape every 6 hours per biter (on average). My average is no less than 1 every 2 minutes, and that's the absolute minimum i had, usually it's like 2 per minute.

I think I'll make everything 10 times less likely to escape. What do you think of this?

Maybe 10 times less likely is overkill, but you could try to make it 3, or even configurable in settings. A scape modifier with a minimum of 0 and a maximum of 1000%?

And I also don't want all biters to suddenly escape when your factory is pulling a lot of power.

Following your reasoning, it's when your factory pulls the strongest when the biters less scape, so it's not a bad idea. If it doesn't have impact on performance, it's a cool concept.

Have a nice day!

7 months ago

I mean, you calculations are still way less than what I'm experiencing. Take in account also that the reinforced cages have a modifier of scape of 0.5, so it should be 1 scape every 6 hours per biter (on average). My average is no less than 1 every 2 minutes, and that's the absolute minimum i had, usually it's like 2 per minute.

Oof, I'll need to go investigate that. I hope my maths isn't off because that's hard to debug. Hopefully I get some time in the next week or so.

7 months ago
(updated 7 months ago)

Ok, after some "debugging" (he), I've had my 36 cages powering my base for about an hour. The most reliable way I thought of counting the kills was to reset the lasers and later count the kills of all of them. They sum in total 30!
I don't know if when several of them are firing at the same biter the kill goes for all or not, but this average is 0.5 scapes/min. It should be 0.14/min following your calculations, or 0.07/min taking the 0.5 chance modifier in the reinforced cages, so about 3.5 or 7 times more likely respectively.

usually it's like 2 per minute.

Maybe exaggerations were made ^_^' , you know how fast time goes playing this shit.

By the way, I've also noticed a little bug (he), when the biters aren't powering anything, they disappear from the cages instead of appearing motionless.

7 months ago

Looks like there is a bug in my code where the Escape Modifier on the building was making it easier for biters to escape instead of harder.

But lets look at the math together. Let's assume the Big Biter in the Reinforced Treadmil. That means escape once every 3 hours usually, and the building modifier makes it once every 6 hours. That's 1 / (6 * 60) = 0.003 per minute per biter. If you have 36 biters that's 0.003 * 36 = 0.1 escapers per minute.

In the version of the mod you played in it would be 1 / (1.5 * 60) = 0.11 per minute per biter, and if you have 36 biters it would be 0.11 * 36 = 0.4 escapes per minute. And that's likely what you observed, it's very close to 0.5 escapes per minute.

So if I fix this bug then it will seem like biters are 4 times less likely to escape when you use the Reinforced Treadmil. I'll probably release the fix this weekend still. I want to maybe add support for more biters, and make sure the escape really work as they should.

7 months ago

Amazing!! Truly wonderful when math ckecks out!

Looks like there is a bug in my code where the Escape Modifier on the building was making it easier for biters to escape instead of harder.

Reminds me of GreenTec, where there are recipes with negative pollution, so when you speed or productive module them, they actually produce even less pollution!!

May I ask how is it? I don't have much experience programming, so how do you get a bug on an operation?

7 months ago
(updated 7 months ago)

May I ask how is it? I don't have much experience programming, so how do you get a bug on an operation?

Of course. In this case it was just me getting confused with how I defined the probability, and how to increase or decrease it.

For example I store that the Big Biter will escape roughly every 3 x 60 x 60 = 10800 seconds. In physics this would be called the escape period. (Actually it's in ticks, not in seconds, but seconds is easier to explain.) I then check every treadmill every now and again, see how many seconds passed since I last checked it, and then calculate how probable it was that the biter would have escaped. The code is something like this which you can find here. I can explain this for you too if you want.

Then each treadmill has a modifier that changes the probability of the biter in it, by basically multiplying the biter's escape value in seconds that I mentioned. But I got confused, and thought the multiplier will change the frequency, not the period. So instead of halving the frequency I accidentally halved the period. Which of course instead doubled the frequency, because 1 / frequency = period.

Don't know if that makes sense, or if I over-explained XD. I hope it answered your question :)

7 months ago

Oh, and I released a new version of the mod where this bug is fixed.

7 months ago

OK, everything makes sense. Kinda what I imagined, using a division instead of a multiplication. I thought (cause you said a bug) it had to do with variable overflow or something like that.

Sometimes I had to change mod files so they don't break the game (not yours). The code seem somewhat readable, but I don't fully understand it.
Is it hard to learn lua? And useful in todays world? I was thinking of maybe learn a little to see how it goes. Apart from factorio, I've never heard about lua or luascript (are they the same thing?), so maybe you can enlighten me.

Thanks for the quick fix!

7 months ago

Lua is a very easy language to learn, and I find it quite a fun language to work with. I'm an embedded programmer working mostly with C/C++ and a little bit of Python, and in my industry I've not seen someone use Lua. But I would highly recommend modding in Factorio with Lua, even if you might not use it in an actual job.
1. It still teaches basic programming experience that you only get with time. How to structure code, variable naming, readability, etc.
2. Teaches you to manipulate something with a limited interface. Just like working with old legacy code, or hardware constraints, there's things the Factorio game engine can do well, and things it does bad, or unable to do. A good mod (or any software) knows how to efficiently achieve it's goal within those constraints.
3. Kind of connects with point 2, but interacting with the Factorio engine is a lot like writing code for microcontrollers. Usually the best way to for mods to stay event driven. An example is like listening for the on_entity_built event, instead of checking every tick if a new entity was built. The same with microcontrollers, for example waiting for a incoming UART packet on an interrupt (or DMA), instead of a for loop constantly checking if it's received anything. This analogy goes into much deeper, which keeps it fun - for example it's better to ofload as much as processing of your mod (read software) to the Factorio engine (read hardware) to keep it fast.
4. If you publish a mod it's like managing a small project. You need to decide when is a new feature worth the cost of potential bugs. When to do bug fixing instead of a new feature. Having the feature polished and (hopefully) unbreakable and not just barely working. Thinking how how users could accidentally break your mod. Managing a public repository or mod page. etc.
5. It's really fun! Many of the regular modders enjoy modding more than even playing Factorio. I've likely spent more time on mods than actually playing, and I've got over 1000 hours already in-game.

That's a lot of words. I'm more active on Discord if you have more questions you can find me there with the same name, but not capatilized. Hope this helps :)

6 months ago

Yeah, it's always useful to learn another language if you will work with programming. Maybe when I'm more free I'll get a course or some ind of tutorial to try it. Thanks

New response