Sign in to follow this  
GenSekiel

[RELEASED] Accelerated Forestry & Gardening (& Farming) 1.2

Recommended Posts

With the new server updates, does this mod still work? I don't want to install and have to uninstall if it is already known to need updating first.

Share this post


Link to post
Share on other sites
16 hours ago, Cadh20000 said:

With the new server updates, does this mod still work? I don't want to install and have to uninstall if it is already known to need updating first.

 

We needed to delete it, then reinstall it from the same source as before, but it works fine after that.

  • Like 1

Share this post


Link to post
Share on other sites

Yep I can confirm that it works. At least the tree growth by watering them works as intended. 

 

But: If I fertilize a tree that is able to bare fruit with ash, it doesn't work for me. Does anyone else experience the same or is it maybe me just doing something wrong here?

Share this post


Link to post
Share on other sites

This mod is amazing.  Any chance of a similar mod to speed up charcoal piles?

 

Or are my search skills failing, and there's already something that does that..?  :)

Share this post


Link to post
Share on other sites

Hey everyone!

Got some inquiries here.
How exactly does this mod function, in what way does it increase growth? I'm wanting to make tree farming a thing, but with how slow the default growth rate is, that's impossible (ideally I want it to take a few days to grow as opposed to weeks or months.)
If this mod makes that possible, which configuration options would I need to change? I've tried many different numbers in many different places, but nothing changes, the saplings just look at me funny.
Primarily looking to do this because I don't like mass deforestation, so if I can just do a Minecraft-esque thing and leave the forests intact, that would be awesome.

Thanks!

Share this post


Link to post
Share on other sites
15 hours ago, Hypocrita said:

Hey everyone!

Got some inquiries here.
How exactly does this mod function, in what way does it increase growth? I'm wanting to make tree farming a thing, but with how slow the default growth rate is, that's impossible (ideally I want it to take a few days to grow as opposed to weeks or months.)
If this mod makes that possible, which configuration options would I need to change? I've tried many different numbers in many different places, but nothing changes, the saplings just look at me funny.
Primarily looking to do this because I don't like mass deforestation, so if I can just do a Minecraft-esque thing and leave the forests intact, that would be awesome.

Thanks!

Looking at the Config file, you have to Activate Water (Or the Container?) and then use it on a Tree

Share this post


Link to post
Share on other sites

Hello everyone.

 

I did a quick compatibility test with Wurm 1.5.2.1 and almost everything seems to work. However, growing hedges is severely broken and doing so appears to reliably crash the server. Sorry about that.

 

Therefore, do not try to grow hedges at the moment!  fixed

 

If you are running a public server, make sure to deactivate hedge growing in the modtreefarm.properties file in the Wurm Unlimited/WurmServerLauncher/mods folder. To do this, change

AllowHedges=true

to

AllowHedges=false

The server needs to be restarted for the changes to take effect. I will probably have the time to fix the problem this weekend.

 

 

@Arduin

The mod throws a message at you whenever something prevents you from doing something. Could it be that the tree is not at a fertilizable age? If fertilization was successful, it should block all other actions, e.g., watering, with a message telling you that the tree has been fertilized and can not be watered until the fruit have grown. I'm not quite sure what would prevent it from working for you. You activate the ash, a large enough amount (100g by default), and then select "fertilize" for a tree that has reached the proper age (you have to grow it four or five times), is a fruit tree and has no other task pending. If you have watered the ground tile the tree stands on, it will block fertilization as well. That's all there is to it. You then of course need a sickle for the "harvest" option to appear.

 

@Hypocrita

Tree farming is what this mod was created for. To grow a planted tree one stage, as Virtuos pointed out, activate some water (you'll need 5 liters by default) before you select "water" from the context menu of the tree. Trees have 16 age stages, watering them will make them advance one stage after an amount of time. The default value is between 5 and 10 minutes and is adjusted via the PollInterval and BaseTaskTime options as explained in the OP. The default settings also make it grow a bit slower as the trees get older. So you have to water the tree repeatedly to make it grow larger. If you don't want to water a tree multiple times for it to grow to a certain age, the KeepGrowing and AgeLimit options can do that. If you activate KeepGrowing and set AgeLimit to, say, 10, trees automatically grow until that age. This also affects bushes.

If you want to test it more quickly, set PollInterval=2500 and BaseTaskTime=5000 for growth in 5 to 7.5 seconds (or even smaller) and maybe WateringCost=10. You may also want to reset all other options back to the default.

Edited by GenSekiel
  • Like 1

Share this post


Link to post
Share on other sites

Still trying to understand the "KeepGrowing" setting.  I have AgeLimit set to 15, KeepGrowing true, PollInterval 2000 and BaseTaskTime 3000.  I plant a sprout, and water it.  I see the first growth tick fairly quickly (within a few seconds).  When I examine the tree after that tick, it says it's been watered recently.  Should I keep seeing additional growth ticks? If so, how often (relative to the amount of time it took for the first tick)?

Share this post


Link to post
Share on other sites

@Nikalus

Yeah you are right, that's broken as well. I'll try fixing it today.

 

Regarding the charcoal piles, I guess that's within the scope of this mod. There also are other things that I could probably add, like beehives. I'll look into that, maybe in the coming weeks if I find the time.

It kind of exceeds the forestry/gardening theme, might have to change the name of the mod then.

Edited by GenSekiel
  • Like 2

Share this post


Link to post
Share on other sites

Update to WU 1.5.2.1 and Ago's Mod Launcher 0.31.1.

  • Fixed hedge growing crash issue.
  • Fixed continuous growth, added separate target ages.

I changed the way automatic growth works a bit. The KeepGrowing switch is gone, setting the target age to 1 or 0 is the same as disabling automatic growth. If the target age is larger, watering something below the target age will make it grow continuously until the target age is reached. Before, it was not possible to manually grow further. Now, if the age is above or equal to the target age, watering results in conventional one-step growth. I also added a bit of information on ageing to the modtreefarm.properties file:

 

Age ranges:

Trees   0-15  (fertile 4-13; sprouting @ 7,9,11,13; most wood @ 14)
Hedges  0-2   (lavender 0 only, camellia 0-1)
Grass   0-3   (around trees & bushes 1-3, 0 is lawn)
Trellis 0-15  (fertile 4-13)
Planter 0-127 (fertile 6-94)

 

Make sure to also update your modtreefarm.properties file. If pending tasks have been saved in the modTreeFarm.mtf file in the server directory, the first server start after the update may trigger a warning and not load the list because the format has changed slightly. The issue should resolve itself as soon as the list is overwritten the next time the server is shut down. Otherwise, delete the modTreeFarm.mtf file in the server directory.

Edited by GenSekiel
  • Like 1

Share this post


Link to post
Share on other sites

I seem to be having trouble with trellises. Fertilizing doesn't seem to have any effect, and even trellises in season never become harvestable.  I've tested it with grape, hops and rose trellises, and none ever bear anything. They say they are fertilized upon examination, but after a period of time they can be fertilized again without having become harvestable. Everything else seems to work fine.

 

I uninstalled the mod, deleted modTreeFarm.mtf, started up the server and shut down again, then reinstalled the mod. Just as before, everything is working except trellises.

Share this post


Link to post
Share on other sites

@stormcrow22Hi, I think it may be because you might have dropped the trellis on the ground instead of planting it. It seems I did not think about issuing a warning when a dropped trellis is being watered (works, I might leave it at that) or fertilized (does not work). I'll add a warning message next time around, for now I'll add a hint in the OP.

Share this post


Link to post
Share on other sites

This is currently broken for 1.6. Attempting to water trees/bushes causes the server to crash.

[02:21:53 PM] SEVERE com.wurmonline.server.Server: java.lang.reflect.InvocationTargetException
org.gotti.wurmunlimited.modloader.classhooks.HookException: java.lang.reflect.InvocationTargetException
	at org.gotti.wurmunlimited.modloader.classhooks.HookManager.invoke(HookManager.java:354)
	at com.wurmonline.server.Players.pollPlayers(Players.java)
	at com.wurmonline.server.Server.run(Server.java:1905)
	at java.util.TimerThread.mainLoop(Timer.java:555)
	at java.util.TimerThread.run(Timer.java:505)
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.gotti.wurmunlimited.modloader.server.ProxyServerHook$6$1.invoke(ProxyServerHook.java:181)
	at org.gotti.wurmunlimited.modloader.classhooks.HookManager.invoke(HookManager.java:344)
	... 4 more
Caused by: java.lang.IllegalAccessError: tried to access field com.wurmonline.server.skills.Skill.knowledge from class gensekiel.wurmunlimited.mods.treefarm.TileAction
	at gensekiel.wurmunlimited.mods.treefarm.TileAction.action(TileAction.java:60)
	at org.gotti.wurmunlimited.modsupport.actions.ActionPerformerBehaviour.action(ActionPerformerBehaviour.java:52)
	at org.gotti.wurmunlimited.modsupport.actions.WrappedBehaviour.lambda$action$3(WrappedBehaviour.java:78)
	at org.gotti.wurmunlimited.modsupport.actions.WrappedBehaviour.action(WrappedBehaviour.java:211)
	at org.gotti.wurmunlimited.modsupport.actions.WrappedBehaviour.action(WrappedBehaviour.java:78)
	at org.gotti.wurmunlimited.modsupport.actions.ActionPerformerChain.action(ActionPerformerChain.java:53)
	at com.wurmonline.server.behaviours.Action.poll(Action.java:3157)
	at com.wurmonline.server.behaviours.ActionStack.poll(ActionStack.java:243)
	at com.wurmonline.server.players.Player.pollActions(Player.java:9693)
	at com.wurmonline.server.Players.pollPlayers$1(Players.java:4543)
	... 9 more

 

Share this post


Link to post
Share on other sites
On 4/7/2018 at 6:26 AM, Yakslapper said:

This is currently broken for 1.6. Attempting to water trees/bushes causes the server to crash.

This is happening for us, too.  Hoping a fix is underway, but we have to remove it until then. 

Share this post


Link to post
Share on other sites

Will this mod allow me to stop hedges from growing above a certain height by setting a maximum age for them?

Share this post


Link to post
Share on other sites

Down for 2 weeks now. Any fix underway for this mod?  We miss having it!

Share this post


Link to post
Share on other sites

I made a Pull request for changes that make it 1.6 compatible. 

 

 

Edited by Oluffus
Removed release as it was temporary
  • Like 1

Share this post


Link to post
Share on other sites

Hello everyone,

 

sorry for the delay, I completely missed this update. I have merged Oluffus' fix. Thankfully, not much seems to have changed. Thanks, @Oluffus. I'll compile a new release, which will be identical to the one Oluffus posted, for the sake of completeness. If anything does not work as intended as of the current patch, please report it here, even though it may take a while for me to notice. I come here to look for bug reports every once in a while.

 

Thanks for your ongoing interest in this mod.

 

Edit: The build is out. I decided to version it as 1.0.2.1 since it's a pure compatibility update.

 

@AtteniaThis mod does not prevent naturally occurring growth (well, it can, as long as it is tracking a certain object to perform a task, but not beyond that). I might extend its functionality to include something like that if I ever get around to add more functionality to it.

Edited by GenSekiel

Share this post


Link to post
Share on other sites

@GenSekiel The mod doesn't appear to be working. We're able to water and fertilize trees etc., but nothing happens when we do. Have I maybe made some error in how I configured it?

Spoiler

classname=gensekiel.wurmunlimited.mods.treefarm.TreeFarmMod
classpath=modtreefarm.jar

########################################################################
# Options
########################################################################

# Activate/deactivate tasks that can be performed.
AllowTrees=true
AllowBushes=true
AllowHedges=true
AllowGrass=true
AllowKelp=true
AllowReed=true
AllowGrow=true
AllowFertilize=true
AllowForageBotanize=true
AllowFlowers=true
AllowTrellises=true
AllowPlanters=true

# Cost, in grams of WateringItem, for performing grow actions.
WateringCost=500

# Time in 1/10 seconds for performing grow actions.
WateringTime=1

# Item ID used for performing grow actions. Water: 128
# Set to zero for no item at all.
WateringItem=128

# Cost, in grams of FertilizingItem, for performing fertilize actions.
FertilizingCost=100

# Time in 1/10 seconds for performing fertilize actions.
FertilizingTime=1

# Item ID used for performing fertilize actions. Ash: 141
# Set to zero for no item at all.
FertilizingItem=141

# Interval, in milliseconds, in which all tasks are polled.
# The time to finish a task, t, is 
#
#   TaskTime < t < TaskTime + PollInterval
#
# where TaskTime is the time for a certain type of task as specified by
# BaseTaskTime and a collection of multipliers (if applicable).

#   TaskTime =   BaseTaskTime 
#              * task_multiplier
#              * type_multiplier
#              * species_multiplier 
#              * age_multiplier
#              * modifier_multiplier
#              * skill_multiplier
#              * quality_multiplier
PollInterval=300000

# Base task time, in milliseconds.
BaseTaskTime=600000

# Show status of tracked objects when examining them. 
StatusOnExamine=true

# If > 0, enforces a cool-down time, t, with
#
#   CoolDownTime < t < CoolDownTime + PollInterval
#
# where CoolDownTime is
#
#  TaskTime * CoolDownMultiplier,
#
# i.e., all multipliers apply. Requires CheckIfPolled to be activated
# to work properly. 
CoolDownMultiplier=0.0

# Gain forestry/gardening skill by performing tasks. The amount of skill
# gained is the game default and affected by server skill gain rate.
GainSkill=true

# Action cost multiplier for a skill level of 100. The cost for all
# other skill levels is linearly interpolated.
# Choose 1.0 for no skill-based effect.
CostSkillMultiplier=1.0

# Action cost multiplier by tree/bush age for trees/bushes of age 15.
# The cost for all other ages is linearly interpolated.
# Choose 1.0 for no age-based effect.
CostAgeMultiplier=1.0

# Action time multiplier for a skill level of 100. The time for all 
# other skill levels is linearly interpolated.
# Choose 1.0 for no skill-based effect.
ActionTimeSkillMultiplier=1.0

# Task time multiplier for items of quality level 100. The task time
# multipliers for all other quality levels are linearly interpolated. 
# Choose 1.0 for no quality-based effect.
TimeQualityMultiplier=1.0

# Task time multiplier for a skill level of 100. The task time
# multipliers for all other quality levels are linearly interpolated. 
# Choose 1.0 for no skill-based effect.
TimeSkillMultiplier=1.0

# Automatic growth until the specified age is reached. Afterwards,
# watering advances age by just one step. TreeAgeLimit also applies to 
# bushes. Age ranges:
#   Trees   0-15  (fertile 4-13; sprouting @ 7,9,11,13; most wood @ 14)
#   Hedges  0-2   (lavender 0 only, camellia 0-1)
#   Grass   0-3   (around trees & bushes 1-3, 0 is lawn)
#   Trellis 0-15  (fertile 4-13)
#   Planter 0-127 (fertile 6-94)
TreeAgeLimit=15
HedgeAgeLimit=2
GrassAgeLimit=3
TrellisAgeLimit=15
PlanterAgeLimit=100

# Task time multipliers by task.
TimeMultiplierGrow=1.0
TimeMultiplierFruit=1.0
TimeMultiplierForageBotanize=1.0

# Task time multipliers by type.
TimeMultiplierTree=1.0
TimeMultiplierBush=1.0
TimeMultiplierHedge=1.0
TimeMultiplierGrass=1.0
TimeMultiplierFlowers=1.0
TimeMultiplierTrellises=1.0
TimeMultiplierPlanters=1.0

# Special multiplier for planters.
CostMultiplierPlanters=1.0

# Aging step for planter growth.
PlanterAgeStep=1

# Task time multipliers by tree type.
TimeMultiplierBirch=1.0
TimeMultiplierPine=1.0
TimeMultiplierOak=1.0
TimeMultiplierCedar=1.0
TimeMultiplierWillow=1.0
TimeMultiplierMaple=1.0
TimeMultiplierApple=1.0
TimeMultiplierLemon=1.0
TimeMultiplierOlive=1.0
TimeMultiplierCherry=1.0
TimeMultiplierChestnut=1.0
TimeMultiplierWalnut=1.0
TimeMultiplierFir=1.0
TimeMultiplierLinden=1.0
TimeMultiplierOrange=1.0

# Task time multiplier by bush type.
TimeMultiplierCamellia=1.0
TimeMultiplierGrape=1.0
TimeMultiplierLavender=1.0
TimeMultiplierOleander=1.0
TimeMultiplierRose=1.0
TimeMultiplierThorn=1.0
TimeMultiplierHazelnut=1.0

# Task time multipliers by modifier.
TimeMultiplierNormal=1.0
TimeMultiplierEnchanted=1.0
TimeMultiplierMycelium=1.0

# Task time multipliers by age.
TimeMultiplierAge0=1.0
TimeMultiplierAge1=1.0
TimeMultiplierAge2=1.0
TimeMultiplierAge3=1.0
TimeMultiplierAge4=1.0
TimeMultiplierAge5=1.0
TimeMultiplierAge6=1.0
TimeMultiplierAge7=1.0
TimeMultiplierAge8=1.0
TimeMultiplierAge9=1.0
TimeMultiplierAge10=1.0
TimeMultiplierAge11=1.0
TimeMultiplierAge12=1.0
TimeMultiplierAge13=1.0
TimeMultiplierAge14=1.0

# Save the list of tracked tasks when the server shuts down so that it 
# can be loaded again the next time the server starts.
PreserveList=true

# When performing a task, check if a task is currently pending for the
# targeted object and prevent any further tasks until the queued task 
# is finished. If false, any additional task will overwrite the queued 
# task and reset its timestamp. This also applies to cool-down tasks.
CheckIfPolled=true

# When starting an action, check if the conditions for success are met.
# Disabling this will allow to perform actions without the chance of 
# success; no message will be issued.
CheckConditions=true

# If true, the mod tries to detect whether a WU poll did occur in the
# queued time span and will not perform the task, preventing, e.g., 
# double growth.
CheckForWUPoll=true

# Obey tile protection. All actions are blocked on protected tiles.
ObeyProtection=true

# Disables server-poll induced invocation of growth functions on 
# tracked objects or tiles.
ProtectTasks=false

# Activating this will use the original growth functions of WU, 
# including all additional processes involved. For tree growth these 
# would be: tree death & re-plant, mycelium death, small chances for 
# tree growth depending on age and tree type, sounds, killing area of 
# oaks and willows, sprouting to adjacent tiles and mushrooms, several 
# additional checks, and so on. In particular, watering a tree may not 
# lead to growth and you will have to repeatedly try, possibly many 
# times. Only use if you know that you want this.
UseOriginalGrowthFunction=false

# Debug mode. Enable zero-cost no-item debug actions.
Debug=false
 

 

Share this post


Link to post
Share on other sites

Okay, maybe the update changed how things work. I'll have to do some testing.

 

Edit: A first quick test with your setup (I only reduced time and cost) seems to work in my test world for growing trees and fertilizing them. I would need some more information. Do you have a test server where you can test with different settings? Your times are set to 5min/10min, but can you test with 1sec/3secs to quickly see if really nothing happens after at most 4 seconds? Also, if you try to water again, do you get a message saying that the tree has been watered? Your settings activate auto-growth, so watering should be blocked until the tree has reached its full height.

 

There also is a debug mode that can be activated in the settings. It can show the task status of, e.g., a watered tree when examining it. It will show poll times and remaining task times. With this we can make sure that there is actually a task registered for the tree.

The debug mode enables some other stuff, but that should only appear if someone has admin rights (5). It does enable free watering/fertilizing for everyone, though.

Edited by GenSekiel
  • Like 2

Share this post


Link to post
Share on other sites

Will this affect areas outside deeds too? 

Share this post


Link to post
Share on other sites

Yes, stuff can be grown everywhere. Deeds have nothing to do with it.

Share this post


Link to post
Share on other sites

How does the plants servuve outside deeds then? Will the replant?

Share this post


Link to post
Share on other sites

The life cycle of the plants is not changed. This mod just accelerates the growth by having the player take some action, but does not preserve them. The server handles them the same as always, but server-induced growth is slow.

Edited by GenSekiel

Share this post


Link to post
Share on other sites

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
Sign in to follow this