Commit Graph

334 Commits

Author SHA1 Message Date
Vanessa Ezekowitz 869d0597ef add pipeworks tube entry overlay to tool workshop 2017-04-11 07:57:45 -04:00
Vanessa Ezekowitz ca86550f26 added tube entry overlays to most MV machines 2017-04-11 07:54:00 -04:00
Vanessa Ezekowitz a3a959ab5e add pipeworks tube overlays to MV, HV battery boxes 2017-04-11 07:48:46 -04:00
Vanessa Ezekowitz 3f8478086d fix crash in battery mod (missing meta check) 2017-04-11 07:45:31 -04:00
Vanessa Ezekowitz 092ab7e738 added tube entry overlays to fuel-fired generators 2017-04-11 07:37:18 -04:00
Vanessa Ezekowitz bdd45f161a fix broken ltier checks on MV/HV fuel-fired generators 2017-04-11 06:56:21 -04:00
Vanessa Ezekowitz 5d05f59482 allow per-node stack splitting on all other standard machines
(default off)
2017-04-11 06:26:11 -04:00
Vanessa Ezekowitz a353a807bd allow per-injector stack split
(default off)
2017-04-11 05:36:39 -04:00
Vanessa Ezekowitz db0f8e04a1 fix wrong size of self-contained injector inv 2017-04-11 05:31:36 -04:00
Vanessa Ezekowitz 64f38f423e tool workshop shouldn't ever allow stack splitting
(tools don't stack :) )
2017-04-11 05:25:25 -04:00
Vanessa Ezekowitz ceead2b5ab re-route tubes if active fuel-fired gen is dug (and can be) 2017-04-11 05:15:05 -04:00
Vanessa Ezekowitz 4eaf48290f allow per-generator stack splitting
(default off)
2017-04-11 05:13:27 -04:00
Vanessa Ezekowitz 7244f86ee5 allow per-battery charge/discharge stack splitting
(default off for both)
2017-04-11 04:41:11 -04:00
Vanessa Ezekowitz af39221df9 only reject part of itemtack from chest/machine/etc., if possible
(e.g. if there's room for 50 of some item, and you send a stack of 99,
50 are added to the chest and a stack of 49 is rejected and sent
on to the next destination)
2017-04-09 20:35:11 -04:00
Vanessa Ezekowitz 72c536c04e always set the EU level
don't wait for production = 0.

(if water is removed, that causes phantom output)
2017-04-09 14:07:50 -04:00
DS-Minetest ef8bb38bfd Make forcefield controlable with digilines. 2017-04-04 23:58:02 -03:00
DS-Minetest 6c4e90d39c Add digiline support to supply converter. 2017-04-04 23:52:27 -03:00
DS-Minetest 4dda59da0c Add conductive plates.
These work exactly like cables, but are meant to be
used as floor for when the machine does not fill the
while cube.
2017-04-04 21:59:13 -03:00
DS-Minetest 338f3b6a99 Make battery box send information via digilines. 2017-04-01 16:47:34 -03:00
Vanessa Ezekowitz 78f16c3e8e label all ABMs for profiler 2017-03-31 19:15:25 -04:00
DS-Minetest 6abd857b3f Add digiline support to switching station.
Makes the switching station able to send supply and demand
via digilines.
2017-03-28 09:30:59 -03:00
number Zero 408128d800 Add backward compatibility to the new supply converter 2017-03-17 21:10:43 +03:00
Vanessa Ezekowitz 6341ac9638 assume missing "enabled" key == enabled also.
(would signify supply converts in old maps)
2017-03-15 23:23:07 -04:00
Carter Kolwey 7ea645496d Add chernobylite dust
Made by grinding chernobylite blocks, can be centrifuged into sand and 0.3% fissile uranium dust.
2017-03-15 20:05:37 -05:00
Maciej 'agaran' Pijanka 10307f23a7 Do not run converters twice. 2017-03-15 19:00:22 -04:00
number Zero 7d5329834d Fix supply converter bug 2017-03-15 19:00:22 -04:00
Carter Kolwey c4acb7225a Don't require a full network recalculation to add or remove a dead end
A dead end (node with only one connection) can be simply added or removed from the network without needing to traverse the whole thing.
2017-03-11 00:57:52 -06:00
Vanessa Ezekowitz 343c7946d9 power monitor changes
New textures, uses facedir, connects from the back as well.
2017-03-10 14:15:38 -05:00
Carter Kolwey 088eea1e3b Fixes for network calculation issues
This fixes several issues:
* More than one switching station could become active on large networks
 - Switching stations now semi-permanently become disabled if another is present
 - Power monitors have been added to replace the function of "slave" switching stations, to discourage overuse of switching stations
* Networks did not reliably "split" when cutting a cable
 - I "may" have caused this issue, but I believe it is solved by this
* Machines did not run without a player near the switching station
 - Active switching stations now forceload themselves, and free the forceloaded block if disabled, dug, or disconnected
 - Machines are only loaded to run them (as before), so only one mapblock (or two if the bottom edge of the switching station is a mapblock boundary) is loaded
 - Cables are still only loaded during a full network recalculation
2017-03-10 01:35:58 -06:00
Diego Martínez 186f9b70ac Temporary fix for crash in constructor. 2017-03-06 23:02:39 -03:00
Vanessa Ezekowitz 32b6ca9816 Merge pull request #298 from t4im/fix/quarry_loops
Mitigate server freezes due to item-transportation loops with quarries.
2017-03-06 14:11:40 -05:00
Vanessa Ezekowitz 314d8c6c23 Merge pull request #288 from numberZero/control-supply_converter
Supply converter control
2017-03-06 14:07:12 -05:00
Vanessa Ezekowitz ff6675ef28 Merge pull request #315 from cheapie/master
Only update the associated network(s) when placing/digging nodes
2017-03-06 00:35:44 -05:00
Carter Kolwey d3f40e0fd0 Only update the associated network(s) when placing/digging nodes 2017-03-05 04:09:23 -06:00
Vanessa Ezekowitz fd609d0f7b lower the cap on water mill to 1575 EU
2250 is just too much
2017-03-02 19:06:40 -05:00
Carter Kolwey dab5fa7105 Grind gravel into sand 2017-02-27 18:03:39 -06:00
Carter Kolwey 5e19514c60 Add dirt recipe to centrifuge
4 dirt -> 2 clay lumps, 1 sand, 1 gravel
2017-02-27 17:58:43 -06:00
Carter Kolwey 0139eab9a2 Rework dirt crafting
Dirt is now crafted from stone dust, leaves, water, and sand, instead of by grinding gravel. Stone dust can be obtained by grinding stone or sand.
2017-02-27 17:51:33 -06:00
Vanessa Ezekowitz 1f49ef973d cap water mill output at `max_output` and 100% :P 2017-02-26 15:16:41 -05:00
Vanessa Ezekowitz 4888581bee Make hydro generators sense the water flow volume around them
Water flow around a gen is shown more or less directly by the water's
param2, range 0 to 15, so four sides could total 60.  Cap the result to 45
so that three sides' worth of full flow (or four sides at reduced flow) still
registers as "100%", and raise the maximum outpu to 2250 EU.
2017-02-21 13:36:58 -05:00
Vanessa Ezekowitz 8cab1a0aec don't allow standing water to power a gen,
and add support for default flowing river water
2017-02-21 13:21:23 -05:00
ShadowNinja 06dec20326 Add longer-term radiation damage
Radiation now slowly damages you for a while after exposure,
with the effect's time and intensity proportional to the
amount of radiation received.  The radioactivity of some
items is reduced to account for the increased damage.
2017-01-28 17:51:14 -05:00
ShadowNinja 1da213a5e4 Split radiation from nuclear reactor code 2017-01-28 17:51:14 -05:00
ShadowNinja 26de2f7c88 Tweak radioactivity
This simplifies radioactivity by removing the 1000 and 0.25 multipliers.
It also increases the effectiveness of protection (I think it was too low
before -- most of the advantage of adding protective layers was just from
the increased distance).
2017-01-28 17:51:14 -05:00
ShadowNinja 8ccb6d97ec Switch nuclear reactor to a lead shield
The reactor originaly used a stainless steel shield only
because lead wasn't yet available.  Stainless steel shields
are automatically converted to lead shields for legacy reasons.
2017-01-28 17:51:14 -05:00
Tim d39797aad8 Handle CONTENT_IGNORE when checking windmill conditions.
Windmills always span more than one mapblock, so even with a switching station next to the generators, they will stop working if unloaded due to the windmill check failing to handle CONTENT_IGNORE of the frames at the foot of the windmill, unless a second switching station would be placed there.

The commit assumes, that a user has to load a block to modify it, and thus unloaded blocks to have the same windmill frame state as before.
This also makes technic_run for windmills a little faster by being able to skip some unnecessary node lookups and generally avoiding creation of 20 tables per windmill per step.
2016-11-17 11:59:48 -05:00
raymoo 63efc395cd fix node dupe exploit in frames
You can dupe nodes by placing them on a frame, because the on_rightclick wouldn't return the new itemstack.
2016-10-14 05:41:31 -03:00
Tim 428b1b8709 Mitigate several forms of quarry-placement leading to item-transportation loops, that eventually cause server freezes.
As a nice side effect, items are not gonna be unnecessarily received by the quarry anymore, if another tube is available for transport.
2016-10-09 17:46:06 +02:00
number Zero 03df68461a Power control added 2016-07-24 00:38:29 +03:00
number Zero e8ac23e111 Supply converter now has control panel 2016-07-24 00:34:20 +03:00
tenplus1 322615542e Fix item drop when digging mv furnace
Fixed crash when digging mv furnace
2016-05-12 23:59:16 +02:00
ShadowNinja 097d033585 Fix radiation damage 2016-03-20 22:38:30 -04:00
ShadowNinja 85a984982c Cleanup
Changes:
  * Make rayIter a global utility, and use it for radiation too.
  * prettynum -> pretty_num and cleanup.
  * Remove resolve_name/function_exists (unused).
  * Cleanup nuclear reactor code.
2016-03-20 00:02:33 -04:00
ShadowNinja 83c6494166 Use connected nodeboxes for cables 2016-03-20 00:02:33 -04:00
RealBadAngel c5127f4b1b Fix code style (useless or) 2015-11-28 08:31:27 +01:00
RealBadAngel 8ef83e8f7e Fix corium greifing disabling not working. 2015-11-14 11:29:16 +01:00
est31 54b6d9976c CNC: re-add player inventory to formspec
Fix regression of commit

d732c8dfbd - "Add listring functionality"

by @est31 (me xD).
2015-09-12 08:04:07 +02:00
Vanessa Ezekowitz e7d06b33d1 fix missing radiation resistance for lead block 2015-09-12 01:34:57 -04:00
Vanessa Ezekowitz 1b1780946e add facedir to tool workshop 2015-09-12 01:18:16 -04:00
ThatGraemeGuy a529baba47 Machines should become inactive when output slots are full 2015-07-12 20:43:01 +02:00
est31 a793747d92 Move coal furnaces to other/
They don't use power, move them to where they belong.
2015-06-18 04:16:47 +02:00
est31 d732c8dfbd Add listring functionality
Add shift-click functionality
2015-06-18 04:09:27 +02:00
ShadowNinja e393617fa1 Fix undefined global warning 2015-04-26 18:17:04 -04:00
ShadowNinja 35b0f068af Fix grinder name in recipe 2015-04-26 18:00:20 -04:00
est31 1615681e89 Fix autoloading for solar arrays
This autoloads the node above a solar array, so that its light value can be determined.
Previously, solar arrays in unloaded blocks would report an input of 0 to the switching station.
2015-03-23 03:41:03 +01:00
est31 6b800758fb Rename technic.cables and make it private
Give it a more descriptive name.
Previous use outside cables.lua isn't neccessary and gets removed.
2015-03-22 19:35:50 +01:00
Tim 137695ea67 allow activation/deactivation of frames/templates by config
have them deactivated by default due to a larger collection of associated issues
including but not limited to
* #170
* #216
* item duplication involving templates
* runaway machines
* traversal loop issues with huge machines leading to lag-outs
2015-03-16 18:58:41 -04:00
Vanessa Ezekowitz b00e942824 don't run the damage ABM if damage is disabled on the server. 2015-03-15 18:21:28 -04:00
Vanessa Ezekowitz cf75916ea7 Add spheres to the CNC machine
Note: this required renaming the base node name for the oblate spheroid
object, which previously had been named simply "sphere".  The result is
that all such nodes in an old world will change to actual spheres.

Since this includes a formspec change, machines will have to be dug and
re-placed to get the new program button to show up, and/or if the image
on the Oblate Spheroid button shows wrongly.
2015-03-12 00:02:23 -04:00
Novatux 8b16fc1176 Add lead block, and lead & sulfur dusts 2015-03-08 13:32:59 +01:00
Jay Arndt 0113975160 Fix detection of if the machine should call pipeworks.after_place
The tube variable in these contexts always evaluates to a true value.
data.tube is the variable that indicates if pipeworks needs to be notified.
2015-03-07 21:44:42 -05:00
Jay Arndt c8cbd261ee Drop upgrade items in the after_dig_node handler instead of can_dig
This fixes an item duplication bug triggered by using a screwdriver on an upgraded machine
2015-03-07 21:44:42 -05:00
Tim c6464d3ebe label the switching station abm for profiling purposes
this allows the mtt profiler to profile this abm individually from other abms since t4im/mtt@48eff13
2015-02-28 00:47:15 +01:00
est31 4b179821d3 Get rid of technic.format 2015-02-13 21:13:17 +01:00
Tim 7ed1aa9398 correct injector inventory handling by tubes 2015-02-11 03:15:34 +01:00
Tim ce40d1cfb8 add group tubedevice_receiver to injector to fix the issue of it acting more like a tube than an inventory
it sent the items into all directions, when being injected into, instead of entering the injector as it used to
2015-02-08 12:27:10 +01:00
Vanessa Ezekowitz 5ac93cccc9 simplify pipeworks tube detect
deMorgan's axiom, which I suck at using :P
2015-02-07 12:42:18 -05:00
Vanessa Ezekowitz bccefd6997 fix other machines, battery boxes, etc to work with tube routing. 2015-02-07 03:47:53 -05:00
Tim 48e02b8452 drop upgrade list items if dug (but protect other inventories) 2015-02-06 08:35:42 +01:00
Tim a13e7b7ed1 add the option for publicly shared machines via an upgrade item "default:chest
the upgrade slots remain protected

this replaces the need for a few forks and also resolves #131 in the process, which is obsolete now
2015-02-06 07:54:29 +01:00
Tim 96788677bb clean up upgrade handling a bit and only allow setting known upgrades 2015-02-05 17:27:28 +01:00
Tim 6ef3438832 limit the upgrade slot to one item per slot, as more are ignored anyway 2015-02-05 16:09:16 +01:00
est31 9444eff7f7 Make switching station only react to nodes from below 2015-02-02 05:29:44 +01:00
est31 3dc01a6720 Formatting for supply converter too 2015-01-31 10:42:55 +01:00
est31 d9bf9830b0 Better number formating
Is it 120000 or 1200000?
2015-01-31 01:29:16 -05:00
Vanessa Ezekowitz 0c3f55e0c9 fix cobble and gravel grinder recipes 2015-01-30 14:29:50 -05:00
Tim 6dd7ffc455 move from recipe defusion to recipe deactivation to avoid confusion 2015-01-30 20:15:15 +01:00
Tim b9173be3b8 remove unnecessary definition fields 2015-01-30 17:47:04 +01:00
Tim 91fceece18 tune latex->rubber alloy recipe based on wikipedia data pointed out by @est31 2015-01-30 17:41:05 +01:00
Tim f330d58354 redfine latex->rubber path via alloy furnace
latex is being refined to rubber by drying and adding carbon pigments to strengthen the material
(which also turns it black)
it should not yield more rubber than its latex input, but it may be processed faster than ores
2015-01-30 05:16:49 +01:00
Tim 56e96b2593 add sawdust and tree/wood grindings with arcacia tree for dye and provide a better alternative rubbertree->latex path that yields the same as the tree tap, but requires more machine work
yet without textures
2015-01-30 05:16:41 +01:00
Tim a8c097bcd9 tweak sandstone/sand recipes to a more efficent compressing 2 sand -> sandstone and grinding sandstone -> 2 sand ratio; make sure the default recipes are defused 2015-01-30 05:09:21 +01:00
Tim 3cc568ddbd defuse by fake_fire added recipes, make people use the grinder for those 2015-01-30 05:09:21 +01:00
Tim 9d3f7304fb add a sandstone compression recipe back in place of the default recipe, without leading to an infinite sand/sandstone generation which lead to its removal in c0a1739 in the first place 2015-01-30 05:09:21 +01:00
Tim 9087abcde0 add centrifuge recipe for wheat 2015-01-30 05:09:21 +01:00
Tim 00f61dfb81 rewrite extractor dye recipes, adding a few dyes and making it work better with the dye mod
also preventing any issues if it is being run in a game without it
2015-01-30 05:09:20 +01:00
Tim a8b711a7f4 allow grinding wheatseeds to flour, closes #173 2015-01-30 05:09:20 +01:00
Tim 3252da05d1 use the timers, that are allready running instead of allocating a new one every tick 2015-01-27 19:02:33 +01:00
est31 f250e1632f Give quarries a better inventory icon
Current inventory icon is indistinguishable from carbon steel block. The side with the pick was hidden. This commit moves that part to the front.
2015-01-24 21:23:26 +01:00
est31 86dd5852aa Add cache to quarry
Adds a cache to the quarry in order to reduce load and send larger stacks through pipes instead of just single items. Coin tossing ensures the cache gets purged around every 200 seconds. The interval isn't fixed in order to prevent material spikes from multiple quarries which got loaded simultaneously. When the cache is full, or the quarry finished, it is purged too.
2015-01-24 21:22:49 +01:00