Jump to content

Erosion - Nature takes over


turbotutone

Recommended Posts

  • 2 weeks later...

Hey turbotune, considering this mod goes along the lines of my suggestion:

http://theindiestone.com/forums/index.php/topic/6413-buildings-interiors-apocalypse-look/

 

I'd love if, with this already great mod, you'd be able to do something along the lines of my suggestion, but in a basic form? I think it would go along well with the mod. Just a mini suggestion to add upon the mod.

Link to comment
Share on other sites

Just wanted to post up and say been using this mod on my recent play through just made it 8 months and my god the ambience your mod provides is amazing. If you manage to pull off half of the features you've mention in this thread I will be amazed. This mod should really be included in the game itself.

 

Only real problem I’ve noticed is plant life overtaking your garden (Perhaps an option to remove grass with an item, or make it auto delete from gardens?) Also several trees are unable to be removed? Not sure if this a glitch on my end or a known issue.

Link to comment
Share on other sites

Thanks all :)

 

Thought id leave a small post since ive not updated much lately. Firstly to answer these questions:

 

Hey turbotune, considering this mod goes along the lines of my suggestion:

http://theindiestone.com/forums/index.php/topic/6413-buildings-interiors-apocalypse-look/

 

I'd love if, with this already great mod, you'd be able to do something along the lines of my suggestion, but in a basic form? I think it would go along well with the mod. Just a mini suggestion to add upon the mod.

Something like that oughta be possible, the system as is could have support for interior erosion with the addition of 2 lines of code or so. In future im planning to enable that feature and maybe add a few basic litering, spider rags etc.

 

Only real problem I’ve noticed is plant life overtaking your garden (Perhaps an option to remove grass with an item, or make it auto delete from gardens?) Also several trees are unable to be removed? Not sure if this a glitch on my end or a known issue.

The grass cutter will be added as many people have asked for it to keep their gardens clean, frikken hippies! :D The tree issue is correct, in the public version all erosion stuff isnt clickable, got that fixed on my local version so next update the problem will be gone.

 

Secondly, concerning the next update, on my local version most bugs of the current build have been fixed (theres still a nasty one not yet resolved, that firks up the sprites uppon loading a game) In the meantime, the MP had been released as well, which is pretty kick ass i might add. Now i wanna see if i can make the next version of erosion also compatible with MP. However since the whole mp stuff is currently under development, ima wait a bit till its in a more mature state.

Also got some plans to rework some stuff in erosion that im not to happy about, so ill retreat to the shades for a little while and work on that.

Link to comment
Share on other sites

Why does the snow not cover streets and dirt tiles? nobody there to plow the snow. So  in the winter it would be hard traveling beetween towns. Only Road sings and stuff are visible. would be nice to see ingame, mabye the footprints can reveal the tiles under the snow, so you have a slight chance finding that road leading in town.

Link to comment
Share on other sites

Thanks all :)

 

Thought id leave a small post since ive not updated much lately. Firstly to answer these questions:

 

Hey turbotune, considering this mod goes along the lines of my suggestion:

http://theindiestone.com/forums/index.php/topic/6413-buildings-interiors-apocalypse-look/

 

I'd love if, with this already great mod, you'd be able to do something along the lines of my suggestion, but in a basic form? I think it would go along well with the mod. Just a mini suggestion to add upon the mod.

Something like that oughta be possible, the system as is could have support for interior erosion with the addition of 2 lines of code or so. In future im planning to enable that feature and maybe add a few basic litering, spider rags etc.

That sounds pretty awesome, I always thought that was something the game was lacking most when scavenging houses. It just didn't feel like the apocalypse had struck.

Link to comment
Share on other sites

Hmm, download Erosion.rar -> extract to users/username/zomboid/mods/

 

there should be now erosion and rmcoordinateviewer (also examplemod)

 

start game and in the mainmenu klick mods -> activate both

 

this works for steam + win

Link to comment
Share on other sites

This is the greatest mod out there no question. It adds so many interesting layers to the gameplay and the visuals. It snows for Zeke sake!

 

It's a little bit buggy (blobs of purple seem to indiscriminately appear everywhere) but by gosh if this isn't the best thing to happen to PZ since ever I'll eat my Spiffo!

 

Love the mod, won't play PZ without it :) Definitely should be incorporated into vanilla, although modding is so easy it practically is. Hoping the dev finishes up this mod soon because I love it so much (as if you couldn't already tell). 

Link to comment
Share on other sites

Hmm, download Erosion.rar -> extract to users/username/zomboid/mods/

 

there should be now erosion and rmcoordinateviewer (also examplemod)

 

start game and in the mainmenu klick mods -> activate both

 

this works for steam + win

ah thanks!

 

btw, how many days or months till' the Erosion occure?

Link to comment
Share on other sites

Purple? Care to screenshot it dude?

 

I've attached a whole bunch of screens here https://imgur.com/a/dkTTB

 

Basically, to my laymen's brain, it looks like bits of Zeke's clothing assets (as well as shadow sprites and naked bodies) are being randomly dispersed across the terrain as if they were shrubs or vines. 

 

It's hard to know when you see something like this in a WIP if it's a known bug/issue or you are the first and only to have this 'feature' :)

 

Anyone else get these weird artefacts? I care not for artefacts, Erosion Mod is still my favourite mod. 

 

EDIT: there are some purplish bits in some of the photos towards the end, but in general I guess blue is the prevalent blob hue

Link to comment
Share on other sites

 

Purple? Care to screenshot it dude?

 

I've attached a whole bunch of screens here https://imgur.com/a/dkTTB

 

Basically, to my laymen's brain, it looks like bits of Zeke's clothing assets (as well as shadow sprites and naked bodies) are being randomly dispersed across the terrain as if they were shrubs or vines. 

 

It's hard to know when you see something like this in a WIP if it's a known bug/issue or you are the first and only to have this 'feature' :)

 

The dead rises from their graves! :)

 

 

Hmm, download Erosion.rar -> extract to users/username/zomboid/mods/

 

there should be now erosion and rmcoordinateviewer (also examplemod)

 

start game and in the mainmenu klick mods -> activate both

 

this works for steam + win

ah thanks!

 

btw, how many days or months till' the Erosion occure?

 

 

Turbotutone made a little setting tutorial at the "Download Erosion Alpha 0.1"-spoiler :)

 

 

fcfd57848d21ed5155c6b979183e8d42.png

 

 

The idea

 

To slowly have the map detoriate over time, nature grows wild and the urban areas slowly decay.

 

What will the mod do?

 

Currently the planning is for Erosion to add the following effects to the game:

 

  • Plantlife:
    • Nature will slowly start to take over, popping up on natural tiles.
    • Currently plants have 6 stages (low grass to tree), only the most fertile spots will reach the maximum.
    • Random special objects with a very low chance of spawning (imagine a dead campfire and the likes).
  • Streets:
    • Big cracks in the road that gradually become more intense.
    • Patches of cracked road where grass and stuff grows through.
    • More litter and garbage appearing over time.
    • Random special objects with a very low chance of spawning (a pile of zombie corpses for example).
  • Houses (exterior):
    • Cracks that can appear on over time.
    • Vines that slowly takover a part of a wall.
    • Windows have a chance to be broken over time (idea by RobertJohnson)
    • Doors have a tiny chance to pop open at some point.
    • Random stuff like smudges and what not.

 

 

Textures by Thutzor

 

Thutzor will be doing the extensive list of additional artwork for the mod. Thank you Thutzor! :)

 

 

Download Erosion Alpha 0.1

Please read this first:

 

DO NOT USE ON A WORLD/SAVE THAT IS DEAR TO YOU!

create a new world to play on (Y)

 

This version is NOT recommended for actual serious play yet. At own risk.

 

Things that are wrong:

  • The seed isnt saved, this will be fixed soon when ZombRand gets a seeding function. (this means for now everytime you load the map newly discovered chunks dont connect properly)
  • Sprites, current ones will gradually be replaced by better ones, and new types will be added.
  • Spawning, is very basic, will be fine tuned later on.
  • Season colors, some are decent others are not so good, for example grass contrast is bad in some months.
  • Performance, since a few builds performance has dropped, will be investigated.
  • Some stuff isnt implemented yet.
  • May crash without any output in console, a rarity i havent been able to pinpoint.

The reasons for releasing the alpha as is:

  • People finally being able to take a walk in the floral chaos.
  • Getting bug/performance feedback from community.
  • A critical look on the code produced so far.
  • Introducing the modability to community, if it got you interested and you make something be it sprites or code let me know as well, if its good and in line with the rest of erosion it could be added.
  • Same goes for things as the season colors mentioned, if you find a better color scheme for example.

 

Changing settings

Currently this can only be done by means of changing values in the theme file, no UI stuff yet.

Check out:

media/lua/Erosion/themes/ThemeErosion.lua

Some interesting options are:

ErosionLevel     = 100,

ProcessSpeed    = 10,

DemoMode    = false,

DevMode        = false,            

SetMonth    = 3,    

I recommend setting ErosionLevel to 0 and DemoMode to true, then start a new world to see a timelapse of the growth and seasons ingame.

(this will likely lag a bit :D)

 

Download link.

CoordinateViewer is bundled in the download for debugging purposes.

 

Thanks to:

RobertJohnson and Lemmy for helping me out with questions/problems.

RoboMat for letting me bundle his Coordinateviewer.

Myth for info on kentucky plantlife.

Everyone showing support/suggesting things.

 

 

Modding Erosion

General

The objects part of Erosion is designed to be modified or even completly replaced. Its still a bit of a work in progress so some stuff may change. Therefore i will give a brief overview/doc, once things get more solid ill write a more extensive one.

 

The objects system

The PZ world is first divided in "regions" which are the top level categories to consider. Currently there are 3 regions (only outdoors)

  • Nature (any natural tile)
  • Street (any street tile)
  • Wall (any "outdoor" wall)

Indoors could be added later on as well.

Check out "Erosion/objects/ErosionRegions.lua" to see how regions are managed.

 

To these regions category class files can be added as found in "Erosion/objects/categories/".

In the category files spawn and update behaviour is defined for one more erosionobjects that belong to that category.

 

ErosionObjects:

Erosion/objects/ErosionGameObject.lua

Erosion/objects/ErosionGameOverlay.lua

These classes have functionallity to place, manipulate or remove IsoObjects (or childsprites incase of overlay)

based on a given "ErosionSpriteTable".

 

 A "ErosionSpriteTable" is basically what the name suggests, a table with sprites for a certain object, all stages and variations.

It also hase some functionallity for getting a IsoSprite or adding them. See the corresponding lua file.

 

Theres also a "ErosionSpriteObj", this one is being used by the spritemanager, "ErosionSprites", to store/control colors, animations etc.

 

Spawning/Updating

Perhaps its worth mentioning that whenever erosion encounters a tile it can do 2 things, call the validatespawn function chain if its a new tile, or the update function chain if its a know tile and its due for updating.

This chain starts in Erosion.lua->ErodingQue(), gets called in ErosionRegions, and optionally a category is called.

When validating spawn for new objects, the categories are called in order by a z value defined when adding them to the regionmanager (see theme file).

So in the nature region, the system will first see if it can spawn a tree (top category), if not it will try a bush, again fail try spawning grass. Untill something spawns or the category list has no more items.

When updating it already knows which category has succesfully spawned there and calls it directly.

 

Themes

In a theme file you can load and construct all these mentioned components. You can copy and modify the default theme, or create one from scratch, if you want you can also write your own category classes to create a completly unique theme for a overhaul mod par example.

 

The default theme can be found in:

Erosion/themes/ThemeErosion.lua

In the top of the theme file a table with erosion options is defined, you can copy/modify those to your custom theme.

(any options not defined will revert to default)

You could also add custom variables to the list (as the cfg table is also passed to category class files this maybe usefull)

 

The init block:

ThemeErosion.Init = function( _spriteMgr, _regionMgr, _cfg )

...

end

This block is called when the game starts a world if this theme file is selected as theme.

The parameters supplied are:

_spriteMgr     = Instance of ErosionSprites.

_regionMgr     = Region manager (ErosionRegions).

_cfg        = the config table as defined in current theme file.

If you sniff around in the default theme file youll find examples how to override game sprites or load a set of images for a tree for example.

 

Some things that may be helpfull:

 

SeasonColors

_spriteMgr.AddSeasonColor( "BaseGrassLow", { 3, 98,115, 35,255}, { 6, 75,100, 39,255} );

the numbers in the tables define:

{ MONTH, R, G, B, ALPHA }

month count = 1 to 12

 

Image Filenaming

To use autoload functions like this:

_spriteMgr.AutoLoadSet( "bushes/A/bushA", 3, 1, false, { snow = { "snow" } } );

your files need to follow a certain naming scheme, which is:

name_<stage>_<variation>.png

tree_1_1.png

to add a "animation" to the tree, for example snow use:

name_<stage>_<variation>_<snow>_0.png

tree_1_1_snow_0.png

 

Animations

When passing animation information to functions like this:

local anims = { early = { 2, 11 }, mid = { 3, 10 }, invis = { 1, 12 } };

_spriteMgr.AutoLoadSet( "bushes/bushBleaves", 1, 1, false, anims );

The keys in the "anims" table are the animation names as defined in the filename of the sprite, ex: tree_1_1_early_0.png

the numbers in the value table are the months/periods to play the anim.

strings can also be accepted, currently "snow" is the only accepted string for a period.

 

Hope this rather poor documentation helps a little bit atleast :P, if anything is unclear leave a post in the thread and ill try to clarify.

 

Videos

Seasons test

 

Early test

 

Screenshots

cbfcee1d4fb1300cac02bcd7677cd437.png

1fa925721442b05c8053c638ea7ff908.png

 

Screenshots Archive

Outdated screenshots from the very first functional version:

screenshot 1:

3c4026ca48974d63a4ba500f2d922ee2.png

ce04accac576463bb5e4f909080f3ef9.png

screenshot 2:

0ac33da310a1b6746059245464e2ab20.png

2d47173e4796b73555528d952506ae97.png

screenshot 3:

b30c9cceaa9b2674d696bc65386cf0ed.png

188402b63999b40464a00960c1457a63.png

screenshot 4:

43ac02a9f0bec167012d8bf3b0505aa4.png

5428430a7d3cb9fd1902f5efcec3eede.png

screenshot 5:

6e7d0940a8d094ade2cef14330c8c85f.png

1a4575554dafe0131aefb8809f3d85a8.png

screenshot 6:

78300b774a02d0d06ac3c7bf8815c53d.png

30c6dc22ee5648f5df85026eba9f8e23.png

 

Link to comment
Share on other sites

  • 5 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...