Massive overhaul to entity variant system.
Now uses fabric data attachment api as components and uses vanilla's mob variant system for spawn conditions.
Changes
- Much cleaner code
- Added texture override attachment
- zombie attributes are no longer hardcoded
- Various additions to data driven system (kinda long)
Fixes
- No null pointer exception in random zombie effect
Changes
- Basic update to 1.21.5
- Removed usage of deprecated method for smartbrainlib
Use smartbrainlib for 1.21.4 Build against @b0fe16a6d4eb767ecc1b7d6ebc9c1b820c7c0d78
New Features
- Zombie variant based entity textures
- zombies variants now use "{namespace}/textures/entity/zombie/{id}.png" as its texture if the path is present
- uses fabric data attachments api for syncing this info to client
- So the mod is still optional on clientside
Extra
- Updated dependencies,updated smartbrainlib
- kind of better leaping code
Just me dumping commits from repo I did 3 months ago
Changes
- Code refactor (not that it changes on gameside)
- Zombies can now leap at you (kinda broken, so much so I want to stop trying to write custom Ai for zombies)
- Added attributes field to zombie variants (yeah now they are variants)
- Zombie equipment now mirrors vanilla
- Added a loot condition as a spawn check (you can now restrict zombie spawning)
- Added TimeCheckLootCondition (I someday need to write documentation for this)
- Added quality field to like make better/stronger zombies spawn at higher difficulty
Future plans
Well, I kinda abandoned the project after/during my exams. SO now
- Remove smartbrainlib unless I have a solid plan for what I want to do with it
- Maintain the project, just update dependencies
- Add more data driven features like make mob spawning less hardcoded
- Make it more modular, like implement component system from 1.21.5
- Work towards 1.21.5
- Backport to 1.21.1
Changes
- A new dependency (smartbrainlib)
- The new dependency will allow for much more complex zombie behaviour
- The zombies currently have two behaviours removed.
- They can't break doors (will add later).
- They won't break eggs (I guess fine since they were spawning in broad daylight).
- Zombies no longer try to call spawning code when they get damaged
- Now most zombies have half health (but double speed if spawned at night)
- Have lower follow range (about same follow range at night)
- Added a density capper (no longer zombies getting flooded in a single area
- Added a gamerule to control if zombies should immediately target player on spawning (default: false / used to true)
- Implemented all zombie events
Note
- This is an alpha mod so api is unstable so datapack features are likely (definetly) going to change
Changes
- Make more fields optional in template format
- Change and add biome tags (now uses conventional tags)
- Add a field for death loot table of a zombie template
- Add a lot more event fields (only previous are implemented)
- Change format and now being able to specify a status effect instance
Update to minecraft 1.21.4
Fix launching the game in the rc candidate
Big Changes
- Now you can configure the zombies using datapacks
- (Being lazy i have not written a guide yet)
- The configuration is similiar to how enchantments work
- Forgot to wrote this initially but loading old worlds with old zombies will reset those zombies to normal zombies because of changes to id and I couldnt be bothered to write a backward compatible so, now you know
Fixes
- Zombies no longer target creative players on spawn
- Spawn speed can now be lot slower
- Fix zombies not spawning if player is standing under sky and zombies burn is daylight is set to true
Changes
- Now zombies stop spawning if you spend too much time in a place
- Changed difficulty calculation
- There is no longer a sudden increase in difficulty as soon as you craft wooden tools
- Now you can have maximum difficulty without having moon size being max
- Add lots of features to zombie templates
- Next version could possibly be data driven (with datapacks)
Zombie Templates
- fire zombies (spawns in hot biomes (using biomes which warm frog variant spawns in))
- freeze zombies (spawns in cold biomes (using biomes which cold frog variant spawns in))
- swapping zombie (spawns in all biomes rarely, swaps position with the mob it attacks)
- All these zombies also show particle effects
- Zombie equipment is now controlled by loot tables. (Difficulty is inserted into the zombie loot table through luck value).
- Zombies immediately target nearest player on spawn (within 64 blocks)
- internally added zombie templates (could become data driven in futute)
Fixed
- Zombie now don't spawn in ancient city
Known issues
- Zombie equipment are always enchanted
-
Removed debug code that wasn't mean to be there (simply commented a line)
-
Removed config
-
Added data generation (now internal stuff is controlled by tags, only items for now)
-
Also an enchantment provider now controls enchantments
-
Fixed a bug with enchantments not applying
-
Added two gamerules
-
Now mod depends on fabric api
-
Now difficulty is dependent on number of zombies killed,time passed,equipment,weapons and food in your inventory
Added lots of new config options
- optionally showing difficulty in player subtitle (debug.toml) time period through which difficulty varies (time.toml)
- enchantments (equipment.toml)
- biome checks (spawn.toml)
Changed logic for several factors
- spawning, now picks an initial pos and tries spawning extra around that
- Now uses #swords #axes #{mace,trident,{head,...}_armor}_enchantable weapons/armor
- Changed chances for picking weapons (lowered it, ~0.5 chance for any single piece on a zombie)
Fixed bugs (I don't know which ones, or even new or old ones but they were fixed)
I basically went full quality control and like tried to over engineer I think (add too many locs/ so maybe more bugs)
Performance might get worse.
Added a basic config to the mod.
Using Kaleido config/quilt config Will find toml files under config/zenxarch_zombies
- For lightlevel effect on spawn rates
- Range in which zombies are spawned
- Biomes in which no zombies should spawn
- Debug config (logging and particles disabled by default)
A few fixes to the spawning code. Very stable right now.