Hiladdar's Research


Adds two new labs, expands research speed, and adds research productivity.

Tweaks
4 years ago
0.16 - 1.1
2.52K

i Pls make it compatible with the Timed Technology...

5 years ago

The Timed Technology from Keiler is a mod that change the research for consuming time and energy instead of resources...Those new labs from your mod can make the endgame situation easier...or harder (it can be configured on mod options)...can you make this mod work together (like AngelBob :D)?

5 years ago

That is a very interesting recommendation. Bottom line up front, the correct spot to incorporate this change would be within the Time Technology mod.

I took a look at how Timed Technology is consuming time and energy and not resources to accomplish research for other mods. It has several optional dependencies to the other mods, identified within the .json file. Then within the prototype folder the file increaselabenergy.lua contains the code which converts the lab to use time and energy for research.

It is not practical for me to incorporate the time and energy in lieu of resources within my module. That is a function that Keiler does extremely efficiently within the Timed Technology module. The Timed Technology works with AngelBob, because there is an optional dependencies set up to AngleBobs within Timed Technology.

To incorporate the same capability within my module would take a major rewrite of my module, while what appears to be two minor editing changes to Timed Technology as follows.

The first would be to set up an optional dependency for Hiladdar's Research within the .json file distributed in Timed Technology. Currently, there are three such optional dependencies within Timed Technology module version 0.0.5.

The second change would be within increaselabenergy.lua, by adding about several lines of code to convert the two labs within Hiladdar's Research conduct research using only time and energy. Again this is a fairly simple cut and base with minor editing. The variable names I am using for the labs within my module are hsmd-lab-mk2 and hsmd-lab-mk3.

The new labs within this mod are designed to provide a minor boost in speed, with the big boost coming from the use of 3 modules within the Mk2 and 4 modules within the Mk3.

What I can consider for a future release is to allow the player toggle research productivity and research speed, as well as set the productivity and speed values for the infinite research to allow the difficulty of the end game be adjustable via the mod configuration screen. Likewise, I can also consider the allowing the user to set the lab speed.

Hiladdar

5 years ago

Ok, I will open a suggestion on the discussion tab on Timed Technology mod page. I really want to help it but i don't even know how can i edit the .json without messing all up...Anyway, thank you so much :D.

5 years ago

Hey Hiladdar...seems that Keiler doesn't even updates its mods anymore...i've already asked a few days ago...any answers given so far...i don't know if it's my impatience...but...damn it all...

5 years ago

I took a look and I can post the instructions, changes and explanation needed to time technology module compatible with this module. The good news, is that this is simple and easy enough that it should not take more than 5 minutes for an average user. Making this module compatible with timed technology is a major rewrite of this module.

First, the tools you will need, a text editor of some sort, and a way to extract .zip files. Good news is Windows 10 provides all that as part of the operating system.

Step 1, is to copy the entire folder from the zip file into the mods folder. This is so that you can then edit the needed files.

Then you need to open info.json in your editor, and add the following line of code:

"? Hiladdar_Research >= 0.16.1",

After your edit, you should see something like:

"base >= 0.16.0",
"? Hiladdar_Research >= 0.16.1",
"? Yi_Tech_Tree >= 0.16.0",

Save this file. What this does is tell the Timed Technology module know that there is now a new optional dependency and where and how to find it.

The second step is to open the prototype folder and open the file named increaselableenergy.lua. That is a very short file; again add the following lines of code to the end:

if ((data.raw["lab"]["hsmd-lab-mk2"] == nil) == false) then
data.raw["lab"]["hsmd-lab-mk2"].energy_usage = ((settings.startup["Energy_consumption_m"].value * 100) .. "kW")
end
if ((data.raw["lab"]["hsmd-lab-mk3"] == nil) == false) then
data.raw["lab"]["hsmd-lab-mk3"].energy_usage = ((settings.startup["Energy_consumption_m"].value * 150) .. "kW")
end

Just drop the six lines of code to the end of the file, and save it.

What this code does is convert the labs within this module to research only using energy. If you will notice, I am using different settings for the Mk3 lab from this module. This is because other mods only have one additional lab whereas this module provides two. Keiler uses one constant multiplier set within the settings file and multiplies that by hard coded energy settings. The base lab uses 60 kW, Mk2 uses 100 kW, and Mk3 uses 150 kw. So, to keep consistency with the original code, I am plugging multipliers in. There are 2 " IF .... THEN .... ELSE .... END" statements of three lines each. The first line checks to see if there are labs with the named hsmd-lab-mk2 and hsmd-lab-mk3 in the load. If they exist the second line of code resets the amount energy needed to for that lab to operate. The last line of code for each of the iff statements ends the “IF” statement. There is no else condition in this “IF” statement.

Last step is to just load up Factorio to test everything. During the load you should get an error message that the same module has 2 versions one as a zipped file, and second as a non-zipped. Just ignore it and click through it. By the way, if you have gotten to this step, most likely you did everything correctly! Congratulations!

If something does not load correctly, just delete the unzipped timed_technology_0.0.5 folder and start over.

Hiladdar

5 years ago

Thanks for giving your time to do this explanation man...I will try to do it right now😃

5 years ago

There is an update for timed technology, but not by the original author that includes this module as a dependency for Factorio 0.17.xx. The URL is: https://mods.factorio.com/mod/timed_technology_17.

It does includes Bobs, since Bob has already updated a of his modules. The other two modules are not included at the moment, since they are yet to be updated.

New response