You are viewing a potentially older version of this package. View all versions.
Fandovec03-Natural_selection-0.2.0 icon

Natural selection

Rewamps the ecosystem to feel more alive and immersive.

Date uploaded 10 months ago
Version 0.2.0
Download link Fandovec03-Natural_selection-0.2.0.zip
Downloads 4418
Dependency string Fandovec03-Natural_selection-0.2.0

This mod requires the following mods to function

Fandovec03-SpiderPositionFix-1.5.3 icon
Fandovec03-SpiderPositionFix

Host fixes for bunker spider. Fixes desync/separation between agent and mesh container. Client-side fix for the offset idle animation

Preferred version: 1.5.3
Fandovec03-NaturalSelectionLib-0.8.2 icon
Fandovec03-NaturalSelectionLib

Personal Library with functions for getting, sorting and filtering enemies

Preferred version: 0.8.2
xilophor-LethalNetworkAPI-3.3.2 icon
xilophor-LethalNetworkAPI

A library/API to allow developers to easily add networking to their mods.

Preferred version: 3.3.2

README

MAIN BRANCH: Natural Selection - food chains and ecosystems

Natural selection - food chains and ecosystems

Aimed to make the game's ecosystem feel more alive, immersive and semi-realistic.
Ever felt like every living being is trying to kill you and everything is stacked agaisnt you? or do you just want to observe the world? This mod might be for you!

Currently supported entities:

  • Red bees (Circuit bees)
    • They defend their hive from anything that gets too close. They're now deadly to every living being!
    • Small chance to set giants on fire
  • Hygrodere (Blob)
    • Damages creatures it has contact with it with an exception of Maneater. Non-organic and immortal entities are not affected.
  • Earth Leviathan (Sandworm)
    • Targets creatures that come near it. Ignores small creatures.

Modified enemies:

  • Forest keeper:
    • Stays on fire for a while after death
    • Has a chance to extinguish itself

Currently worked on:

  • Bunker Spider

WIP:

  • Nutcracker
  • Spore Lizard
  • Hoarder bug

Pre-release branch: Experimental Enemy Interactions

Report bugs on either github issues or the Lethal company modding discord.

Credits:

Unofficial LethalCompany Discord:

  • Zesa, TKronix, Swaggies: helping me figure out collision detection
  • Hamunii: Helped fixing the variables
  • EnzoTheProtogen: Reporting a bug.

CHANGELOG

Natural selection

0.4.14

  • Fixed spider webs slowing down enemies that haven't finished vent animation, resulting in deformities
  • Fixed Bees and Spiders not being able to damage enemies
  • Added try/catch block so the body will destroy properly in case of failure

0.4.13

  • Attempted to fix possible NRE getting enemy data (99% sure it's fixed I just didn't test it)

0.4.12

  • Whitelisted Item types in logNS method

0.4.11

  • Fixed loggers falsely triggering unsupported type message
  • Instead of triggering kill switch on meeting an unsupported type, it adds the source to a blacklist and ignores logs.
    • Blacklist is cleared after user leaves moon or disconnects fropm the game

0.4.10

  • Fixed logs
  • Added a check to turn killswitch on if an unsupported type is passed as a source

0.4.9

Reworked data containers

  • All data containers are stored in single dictionary
  • Fixed EnemyAI and Spiderweb issues getting their containers
  • Enemies will destroy their data containers when destroyed

Library

  • Added option to use Pathfinding to find and determine the closest enemy
  • Added PathfindingLib support
    • Highly recommended when using pathfinding to find closest enemy
    • Coroutines are required to be turned on
  • Global enemy lists are now accessed with methods instead of directly

Other changes

  • Reorganized and cleaned up code
  • Added killswitch for logs
    • Stops all logs from logging
  • Added coroutines
    • Enemies will asynchronously find the closest enemy

Fixes

  • Fixed sandworms not targetting immortal enemies
  • Some small fixed I forgot

0.4.8

  • Updated Blacklists.
    • WARNING: Blacklists will be reset. Check your config for orphaned entries after loading into game once.
  • Updated ReXuvination compatibility
  • Updated logs

Internal

  • Replaced majority of loggers with method
  • Rewamped enemy data system

Library

  • Updated DebugStringHead. Now it accepts any type

0.4.7

  • Redone fix for blob opening doors.

0.4.6

  • Redone ReXuvination patch for enemy colliders
    • Modified enemy collider optimization with transpiller. Enemies will always collide with eachother.
  • Modified debug logs

0.4.5

  • Optimized and Delobotomized Earth Leviathan

0.4.4

  • Fixed ReXuvination patch not working sometimes. Now patch prevents ReXuvination from patching enemy colliders.

0.4.3

  • Fixed some supported mods not registering when not specified with BepInDependency attribute

0.4.2

  • Updated config. Spider toggle is on by default instead of off.

0.4.1

  • Fixed compatibility patches not loading automatically with the toggle on
  • Added compatibility for LobbyCompatibility

0.4.0

Bunker spider released

  • Spider webs stick to enemies and alert spider
    • Investigates webs and chases prey. Returns back when the prey gets too far from the nest.

Added compatibility for SellbodiesFixed, Enhanced Monsters and ReXuvination

  • Beware of slimes consuming your profits away!

Major Changes

  • Added checks for enemy data structures
  • Added custom enemy sizes
    • Customizable in config file

Circuit Bees

  • Circuit bees properly prioritize enemies holding its nest

Sandworms

  • Sandworms ignores enemies by custom enemy size

Optimizations, Fixes and QoL

  • Optimized networking with generics
  • Added setting update interval of global enemy lists
  • Updated library to newest version
    • More optimized LOS check
    • Deprecated usage of types
  • Fixed spider webs throwing NREs when enemy is missing animator
  • Fixed spider webs playing audio when it shouldn't
  • Fixed spider webs getting triggered by dead enemies
  • Updated logs

IMPORTANT

  • Regenerate and check your config logs

0.3.0

Major changes

Added support for spider webs

  • Spider webs slow down and stick to enemies passing through them

Configuration file rewamped

  • Updated Layout and descriptions
  • Added more options and variables
  • Added automatically generating entries for blacklists and similar lists
    • Generates on booting up the game or 2nd time on loading into lobby if some entries fail to generate
  • Debug toggles update automatically if they're changed on runtime with LethalConfig/LethalSettings

Misc

  • Updated description, readme, changelog and links
  • Updated logs
    • More logs are toggled with trigger flags bool

Bug fixes

  • Fixed sandworm's networking connections and variables not being disposed of
  • Fixed ememies colliding with blacklisted enemies

0.2.6

  • Fixed bees throwing error when every enemy in LOS is killed
  • Upgraded collision system. Bees and hygrodere now hit multiplle enemies they collide with
  • Added config to log the library
  • updated README

0.2.5

  • Reupload because I forgot to upload a file. Woops
  • Updated README

0.2.4

  • Updated README
  • Updated mod for newest Library version
    • Finally fixed invisible bees!
    • Enemies can now target enemies outside of their usual domain! Inside enemies can target outside enemies when outsise and vise versa
  • Fixed bees not returning to beehives after chasing/killing enemy
  • Global enemy lists get cleared at the end of rounds or when client disconnects

0.2.3

  • Fixed and simplified config enabling enemy changes
  • Updated README

0.2.2

  • Fixed shit Networking implementation causing massive lag (Credit to Robyn and Xilo on Discord for pointing it out!)
  • Updated logs
  • edited README

0.2.1

  • Fixed giants always set on fire
  • Fixed Error spam on clients
  • Small changes to networking which fixes lag

0.2.0

  • Added networking
    • Fixes desync and network related issues, mainly enemy sounds not playing on non-host clients
  • Fixed sandworm eating non-host players inside the ship with the toggle on
  • Fixed giants not using the extinguish chance from config
  • Added blacklists to config
  • Optimization on clients/server

0.1.5

  • Fixed collisions returning NullReferenceException errors
  • Added config for sandworms to not eat players inside leaving ship
  • Updated logs and configs

0.1.4

  • Fixed logs spamming you're on experimental version
  • Added option to override vanilla sandworm collisions to possibly fix the lag when colliding with multiple enemies at once

0.1.3

  • Implemented global enemy list.
  • Fixed bees becoming invisible due to black magic (still dont know how).
  • The mod no longer sets all colliders on enemies to be triggers.
  • Hydrogires now move and consume dead corpses
  • Many more config options

0.1.2

  • Fixed logs
  • Updated for NaturalSelectionLib 0.4.0

0.1.1

  • Fixed NullReferenceException some logs

0.1.0

  • Updated manifest, README and library integration

0.0.2

  • Made less spammy logs

0.0.1

  • Inital Upload