Advertisement
Guest User

Untitled

a guest
Feb 25th, 2017
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 70.51 KB | None | 0 0
  1. # OpenComputers configuration. This file uses typesafe config's HOCON syntax.
  2. # Try setting your syntax highlighting to Ruby, to help readability. At least
  3. # in Sublime Text that works really well. Note that this file is overwritten
  4. # whenever you start the game! Changes to the comments may vanish.
  5. # Note that all mentions of 'KB' or 'kilobyte' mean 1024 bytes.
  6. opencomputers {
  7.  
  8. # Client side settings, presentation and performance related stuff.
  9. client {
  10.  
  11. # The radius in which computer beeps can be heard.
  12. beepRadius=16
  13.  
  14. # The sample rate used for generating beeps of computers' internal
  15. # speakers. Use custom values at your own responsibility here; if it
  16. # breaks OC you'll get no support. Some potentially reasonable
  17. # lower values are 16000 or even 8000 (which was the old default, but
  18. # leads to artifacting on certain frequencies).
  19. beepSampleRate=44100
  20.  
  21. # The base volume of beeps generated by computers. This may be in a
  22. # range of [0, 127], where 0 means mute (the sound will not even be
  23. # generated), and 127 means maximum amplitude / volume.
  24. beepVolume=32
  25.  
  26. # Whether to emit particle effects around players via nanomachines. This
  27. # includes the basic particles giving a rough indication of the current
  28. # power level of the nanomachines as well as particles emitted by the
  29. # particle effect behaviors.
  30. enableNanomachinePfx=true
  31.  
  32. # This is the scaling of the individual chars rendered on screens. This
  33. # is set to slightly overscale per default, to avoid gaps between fully
  34. # filled chars to appear (i.e. the block symbol that is used for cursor
  35. # blinking for example) on less accurate hardware.
  36. fontCharScale=1.01
  37.  
  38. # Which font renderer to use. Defaults to `hexfont` if invalid.
  39. # Possible values:
  40. # - hexfont: the (since 1.3.2) default font renderer. Font in .hex format
  41. # capable of rendering many unicode glyphs.
  42. # The used font data can be swapped out using resource packs,
  43. # but is harder to work with, since it involves binary data.
  44. # - texture: the old, font-texture based font renderer that was used
  45. # in OC versions prior to 1.3.2. This will allow overriding
  46. # the font texture as before. Keep in mind that this renderer
  47. # is slightly less efficient than the new one, and more
  48. # importantly, can only render code page 437 (as opposed to...
  49. # a *lot* of unicode).
  50. fontRenderer=hexfont
  51.  
  52. # The distance at which to start fading out the hologram (as with
  53. # hologramRenderDistance). This is purely cosmetic, to avoid image
  54. # disappearing instantly when moving too far away from a projector.
  55. # It does not affect performance. Holograms are transparent anyway.
  56. hologramFadeStartDistance=48
  57.  
  58. # This controls how often holograms 'flicker'. This is the chance that it
  59. # flickers for *each frame*, meaning if you're running at high FPS you
  60. # may want to lower this a bit, to avoid it flickering too much.
  61. hologramFlickerFrequency=0.025
  62.  
  63. # The maximum render distance of a hologram projected by a highest tier
  64. # hologram projector when at maximum scale. Render distance is scaled
  65. # down with the actual scale of the hologram.
  66. hologramRenderDistance=64
  67.  
  68. # The maximum distance at which to render text on screens. Rendering text
  69. # can be pretty expensive, so if you have a lot of screens you'll want to
  70. # avoid huge numbers here. Note that this setting is client-sided, and
  71. # only has an impact on render performance on clients.
  72. maxScreenTextRenderDistance=20
  73.  
  74. # The color of monochrome text (i.e. displayed when in 1-bit color depth,
  75. # e.g. tier one screens / GPUs, or higher tier set to 1-bit color depth).
  76. # Defaults to white, feel free to make it some other color, tho!
  77. monochromeColor="0xFFFFFF"
  78.  
  79. # Position of the power indicator for nanomachines, by default left to the
  80. # player's health, specified by negative values. Values in [0, 1) will be
  81. # treated as relative positions, values in [1, inf) will be treated as
  82. # absolute positions.
  83. nanomachineHudPos=[
  84. -1,
  85. -1
  86. ]
  87.  
  88. # Render robots' names as a label above them when near them
  89. robotLabels=true
  90.  
  91. # The distance at which to start fading out the text on screens. This is
  92. # purely cosmetic, to avoid text disappearing instantly when moving too
  93. # far away from a screen. This should have no measurable impact on
  94. # performance. Note that this needs OpenGL 1.4 to work, otherwise text
  95. # will always just instantly disappear when moving away from the screen
  96. # displaying it.
  97. screenTextFadeStartDistance=15
  98.  
  99. # The volume multiplier applied to sounds from this mod like the computer
  100. # running noise. Disable sounds by setting this to zero.
  101. soundVolume=1
  102.  
  103. # If you prefer the text on the screens to be aliased (you know, *not*
  104. # anti-aliased / smoothed) turn this option off.
  105. textAntiAlias=true
  106.  
  107. # Whether to apply linear filtering for text displayed on screens when the
  108. # screen has to be scaled down - i.e. the text is rendered at a resolution
  109. # lower than their native one, e.g. when the GUI scale is less than one or
  110. # when looking at a far away screen. This leads to smoother text for
  111. # scaled down text but results in characters not perfectly connecting
  112. # anymore (for example for box drawing characters. Look it up on
  113. # Wikipedia.)
  114. textLinearFiltering=false
  115. }
  116.  
  117. # Computer related settings, concerns server performance and security.
  118. computer {
  119.  
  120. # The provided call budgets by the three tiers of CPU and memory. Higher
  121. # budgets mean that more direct calls can be performed per tick. You can
  122. # raise this to increase the "speed" of computers at the cost of higher
  123. # real CPU time. Lower this to lower the load Lua executors put on your
  124. # machine / server, at the cost of slower computers. This list must
  125. # contain exactly three entries, or it will be ignored.
  126. callBudgets=[
  127. 0.5,
  128. 1,
  129. 1.5
  130. ]
  131.  
  132. # This determines whether computers can only be used by players that are
  133. # registered as users on them. Per default a newly placed computer has no
  134. # users. Whenever there are no users the computer is free for all. Users
  135. # can be managed via the Lua API (computer.addUser, computer.removeUser,
  136. # computer.users). If this is true, the following interactions are only
  137. # possible for users:
  138. # - input via the keyboard and touch screen.
  139. # - inventory management.
  140. # - breaking the computer block.
  141. # If this is set to false, all computers will always be usable by all
  142. # players, no matter the contents of the user list. Note that operators
  143. # are treated as if they were in the user list of every computer, i.e. no
  144. # restrictions apply to them.
  145. # See also: `maxUsers` and `maxUsernameLength`.
  146. canComputersBeOwned=true
  147.  
  148. # The number of components the different CPU tiers support. This list
  149. # must contain exactly three entries, or it will be ignored.
  150. cpuComponentCount=[
  151. 8,
  152. 12,
  153. 16
  154. ]
  155.  
  156. # The maximum size of the byte array that can be stored on EEPROMs as configuration data.
  157. eepromDataSize=256
  158.  
  159. # The maximum size of the byte array that can be stored on EEPROMs as executable data..
  160. eepromSize=4096
  161.  
  162. # Whether to delete all contents in the /tmp file system when performing
  163. # a 'soft' reboot (i.e. via `computer.shutdown(true)`). The tmpfs will
  164. # always be erased when the computer is completely powered off, even if
  165. # it crashed. This setting is purely for software-triggered reboots.
  166. eraseTmpOnReboot=false
  167.  
  168. # The time in milliseconds that scheduled computers are forced to wait
  169. # before executing more code. This avoids computers to "busy idle",
  170. # leading to artificially high CPU load. If you're worried about
  171. # performance on your server, increase this number a little (it should
  172. # never exceed 50, a single tick, though) to reduce CPU load even more.
  173. executionDelay=12
  174.  
  175. # Settings specific to the Lua architecture.
  176. lua {
  177.  
  178. # Whether to allow loading precompiled bytecode via Lua's `load`
  179. # function, or related functions (`loadfile`, `dofile`). Enable this
  180. # only if you absolutely trust all users on your server and all Lua
  181. # code you run. This can be a MASSIVE SECURITY RISK, since precompiled
  182. # code can easily be used for exploits, running arbitrary code on the
  183. # real server! I cannot stress this enough: only enable this is you
  184. # know what you're doing.
  185. allowBytecode=false
  186.  
  187. # Whether to allow user defined __gc callbacks, i.e. __gc callbacks
  188. # defined *inside* the sandbox. Since garbage collection callbacks
  189. # are not sandboxed (hooks are disabled while they run), this is not
  190. # recommended.
  191. allowGC=false
  192.  
  193. # Whether to make the Lua 5.3 architecture available. If enabled, you
  194. # can reconfigure any CPU to use the Lua 5.3 architecture.
  195. enableLua53=true
  196.  
  197. # The total maximum amount of memory a Lua machine may use for user
  198. # programs. The total amount made available by components cannot
  199. # exceed this. The default is 64*1024*1024. Keep in mind that this does
  200. # not include memory reserved for built-in code such as `machine.lua`.
  201. # IMPORTANT: DO NOT MESS WITH THIS UNLESS YOU KNOW WHAT YOU'RE DOING.
  202. # IN PARTICULAR, DO NOT REPORT ISSUES AFTER MESSING WITH THIS!
  203. maxTotalRam=67108864
  204.  
  205. # This setting allows you to fine-tune how RAM sizes are scaled internally
  206. # on 64 Bit machines (i.e. when the Minecraft server runs in a 64 Bit VM).
  207. # Why is this even necessary? Because objects consume more memory in a 64
  208. # Bit environment than in a 32 Bit one, due to pointers and possibly some
  209. # integer types being twice as large. It's actually impossible to break
  210. # this down to a single number, so this is really just a rough guess. If
  211. # you notice this doesn't match what some Lua program would use on 32 bit,
  212. # feel free to play with this and report your findings!
  213. # Note that the values *displayed* to Lua via `computer.totalMemory` and
  214. # `computer.freeMemory` will be scaled by the inverse, so that they always
  215. # correspond to the "apparent" sizes of the installed memory modules. For
  216. # example, when running a computer with a 64KB RAM module, even if it's
  217. # scaled up to 96KB, `computer.totalMemory` will return 64KB, and if there
  218. # are really 45KB free, `computer.freeMemory` will return 32KB.
  219. ramScaleFor64Bit=1.8
  220.  
  221. # The sizes of the six levels of RAM, in kilobytes. This list must
  222. # contain exactly six entries, or it will be ignored. Note that while
  223. # there are six levels of RAM, they still fall into the three tiers of
  224. # items (level 1, 2 = tier 1, level 3, 4 = tier 2, level 5, 6 = tier 3).
  225. ramSizes=[
  226. 192,
  227. 256,
  228. 384,
  229. 512,
  230. 768,
  231. 1024
  232. ]
  233. }
  234.  
  235. # Sanity check for username length for users registered with computers. We
  236. # store the actual user names instead of a hash to allow iterating the
  237. # list of registered users on the Lua side.
  238. # See also: `canComputersBeOwned`.
  239. maxUsernameLength=32
  240.  
  241. # The maximum number of users that can be registered with a single
  242. # computer. This is used to avoid computers allocating unchecked amounts
  243. # of memory by registering an unlimited number of users. See also:
  244. # `canComputersBeOwned`.
  245. maxUsers=16
  246.  
  247. # The time in seconds to wait after a computer has been restored before it
  248. # continues to run. This is meant to allow the world around the computer
  249. # to settle, avoiding issues such as components in neighboring chunks
  250. # being removed and then re-connected and other odd things that might
  251. # happen.
  252. startupDelay=0.25
  253.  
  254. # The overall number of threads to use to drive computers. Whenever a
  255. # computer should run, for example because a signal should be processed or
  256. # some sleep timer expired it is queued for execution by a worker thread.
  257. # The higher the number of worker threads, the less likely it will be that
  258. # computers block each other from running, but the higher the host
  259. # system's load may become.
  260. threads=4
  261.  
  262. # The time in seconds a program may run without yielding before it is
  263. # forcibly aborted. This is used to avoid stupidly written or malicious
  264. # programs blocking other computers by locking down the executor threads.
  265. # Note that changing this won't have any effect on computers that are
  266. # already running - they'll have to be rebooted for this to take effect.
  267. timeout=5
  268. }
  269.  
  270. # Settings that are intended for debugging issues, not for normal use.
  271. # You usually don't want to touch these unless asked to do so by a developer.
  272. debug {
  273.  
  274. # On some platforms the native library can crash the game, so there are
  275. # a few checks in place to avoid trying to load it in those cases. This
  276. # is Windows XP and Windows Server 2003, right. If you think it might
  277. # work nonetheless (newer builds of Server2k3 e.g.) you might want to
  278. # try setting this to `true`. Use this at your own risk. If the game
  279. # crashes as a result of setting this to `true` DO NOT REPORT IT.
  280. alwaysTryNative=false
  281.  
  282. # Enable debug card functionality. This may also be of use for custom
  283. # maps, so it is enabled by default. If you run a server where people
  284. # may cheat in items but should not have op/admin-like rights, you may
  285. # want to set this to false or `deny`. Set this to `whitelist` if you
  286. # want to enable whitelisting of debug card users (managed by command
  287. # /oc_debugWhitelist). This will *not* remove the card, it will just
  288. # make all functions it provides error out.
  289. debugCardAccess=allow
  290.  
  291. # Prevent OC calling Lua's os.setlocale method to ensure number
  292. # formatting is the same on all systems it is run on. Use this if you
  293. # suspect this might mess with some other part of Java (this affects
  294. # the native C locale).
  295. disableLocaleChanging=false
  296.  
  297. # Disable memory limit enforcement. This means Lua states can
  298. # theoretically use as much memory as they want. Only relevant when
  299. # using the native library.
  300. disableMemoryLimit=false
  301.  
  302. # Disable computer state persistence. This means that computers will
  303. # automatically be rebooted when loaded after being unloaded, instead
  304. # of resuming with their exection (it also means the state is not even
  305. # saved). Only relevant when using the native library.
  306. disablePersistence=false
  307.  
  308. # Disable user data support. This means any otherwise supported
  309. # userdata (implementing the Value interface) will not be pushed
  310. # to the Lua state.
  311. disableUserdata=false
  312.  
  313. # Force the buffered file system to be case insensitive. This makes it
  314. # impossible to have multiple files whose names only differ in their
  315. # capitalization, which is commonly the case on Windows, for example.
  316. # This only takes effect when bufferChanges is set to true.
  317. forceCaseInsensitiveFS=false
  318.  
  319. # Forces the use of the LuaJ fallback instead of the native libraries.
  320. # Use this if you have concerns using native libraries or experience
  321. # issues with the native library.
  322. forceLuaJ=false
  323.  
  324. # Force loading one specific library, to avoid trying to load any
  325. # others. Use this if you get warnings in the log or are told to do
  326. # so for debugging purposes ;-)
  327. forceNativeLibWithName=""
  328.  
  329. # Pass along IDs of items and fluids when converting them to a table
  330. # representation for Lua.
  331. insertIdsInConverters=false
  332.  
  333. # This setting is meant for debugging errors that occur in Lua callbacks.
  334. # Per default, if an error occurs and it has a message set, only the
  335. # message is pushed back to Lua, and that's it. If you encounter weird
  336. # errors or are developing an addon you'll want the stacktrace for those
  337. # errors. Enabling this setting will log them to the game log. This is
  338. # disabled per default to avoid spamming the log with inconsequentual
  339. # exceptions such as IllegalArgumentExceptions and the like.
  340. logCallbackErrors=false
  341.  
  342. # Logs the full error when a native library fails to load. This is
  343. # disabled by default to avoid spamming the log, since libraries are
  344. # iterated until one works, so it's very likely for some to fail. Use
  345. # this in case all libraries fail to load even though you'd expect one
  346. # to work.
  347. logFullNativeLibLoadErrors=false
  348.  
  349. # Logs information about malformed glyphs (i.e. glyphs that deviate in
  350. # width from what wcwidth says).
  351. logHexFontErrors=false
  352.  
  353. # Used to suppress log spam for OpenGL errors on derpy drivers. I'm
  354. # quite certain the code in the font render is valid, display list
  355. # compatible OpenGL, but it seems to cause 'invalid operation' errors
  356. # when executed as a display list. I'd be happy to be proven wrong,
  357. # since it'd restore some of my trust into AMD drivers...
  358. logOpenGLErrors=false
  359.  
  360. # Extract the native library with Lua into the system's temporary
  361. # directory instead of the game directory (e.g. /tmp on Linux). The
  362. # default is to extract into the game directory, to avoid issues when
  363. # the temporary directory is mounted as noexec (meaning the lib cannot
  364. # be loaded). There is also less of a chance of conflicts when running
  365. # multiple servers or server and client on the same machine.
  366. nativeInTmpDir=false
  367.  
  368. # Due to a bug in Minecraft's lighting code there's an issue where
  369. # lighting does not properly update near light emitting blocks that are
  370. # fully solid - like screens, for example. This can be annoying when
  371. # using other blocks that dynamically change their brightness (e.g. for
  372. # the addon mod OpenLights). Enable this to force light emitting blocks
  373. # in oc to periodically (every two seconds) do an update. This should
  374. # not have an overly noticeable impact on performance, but it's disabled
  375. # by default because it is unnecessary in *most* cases.
  376. periodicallyForceLightUpdate=false
  377.  
  378. # Whether to always register the LuaJ architecture - even if the native
  379. # library is available. In that case it is possible to switch between
  380. # the two like any other registered architecture.
  381. registerLuaJArchitecture=false
  382.  
  383. # This is meant for debugging errors. Enabling this has a high impact
  384. # on computers' save and load performance, so you should not enable
  385. # this unless you're asked to.
  386. verbosePersistenceErrors=false
  387. }
  388.  
  389. # File system related settings, performance and and balancing.
  390. filesystem {
  391.  
  392. # Whether persistent file systems such as disk drives should be
  393. # 'buffered', and only written to disk when the world is saved. This
  394. # applies to all hard drives. The advantage of having this enabled is that
  395. # data will never go 'out of sync' with the computer's state if the game
  396. # crashes. The price is slightly higher memory consumption, since all
  397. # loaded files have to be kept in memory (loaded as in when the hard drive
  398. # is in a computer).
  399. bufferChanges=true
  400.  
  401. # The base 'cost' of a single file or directory on a limited file system,
  402. # such as hard drives. When computing the used space we add this cost to
  403. # the real size of each file (and folders, which are zero sized
  404. # otherwise). This is to ensure that users cannot spam the file system
  405. # with an infinite number of files and/or folders. Note that the size
  406. # returned via the API will always be the real file size, however.
  407. fileCost=512
  408.  
  409. # The size of writable floppy disks, in kilobytes.
  410. floppySize=512
  411.  
  412. # Number of physical platters to pretend a disk has in unmanaged mode. This
  413. # controls seek times, in how it emulates sectors overlapping (thus sharing
  414. # a common head position for access).
  415. hddPlatterCounts=[
  416. 2,
  417. 4,
  418. 6
  419. ]
  420.  
  421. # The sizes of the three tiers of hard drives, in kilobytes. This list
  422. # must contain exactly three entries, or it will be ignored.
  423. hddSizes=[
  424. 1024,
  425. 2048,
  426. 4096
  427. ]
  428.  
  429. # The maximum number of file handles any single computer may have open at
  430. # a time. Note that this is *per filesystem*. Also note that this is only
  431. # enforced by the filesystem node - if an add-on decides to be fancy it
  432. # may well ignore this. Since file systems are usually 'virtual' this will
  433. # usually not have any real impact on performance and won't be noticeable
  434. # on the host operating system.
  435. maxHandles=16
  436.  
  437. # The maximum block size that can be read in one 'read' call on a file
  438. # system. This is used to limit the amount of memory a call from a user
  439. # program can cause to be allocated on the host side: when 'read' is,
  440. # called a byte array with the specified size has to be allocated. So if
  441. # this weren't limited, a Lua program could trigger massive memory
  442. # allocations regardless of the amount of RAM installed in the computer it
  443. # runs on. As a side effect this pretty much determines the read
  444. # performance of file systems.
  445. maxReadBuffer=2048
  446.  
  447. # When skipping more than this number of sectors in unmanaged mode, the
  448. # pause specified in sectorSeekTime will be enforced. We use this instead
  449. # of linear scaling for movement because those values would have to be
  450. # really small, which is hard to conceptualize and configure.
  451. sectorSeekThreshold=128
  452.  
  453. # The time to pause when the head movement threshold is exceeded.
  454. sectorSeekTime=0.1
  455.  
  456. # The size of the /tmp filesystem that each computer gets for free. If
  457. # set to a non-positive value the tmp file system will not be created.
  458. tmpSize=64
  459. }
  460. hologram {
  461.  
  462. # Whether the hologram block should provide light. It'll also emit light
  463. # when off, because having state-based light in MC is... painful.
  464. emitLight=true
  465.  
  466. # This controls the maximum scales of holograms, by tier.
  467. # The size at scale 1 is 3x2x3 blocks, at scale 3 the hologram will
  468. # span up to 9x6x9 blocks. Unlike most other `client' settings, this
  469. # value is only used for validation *on the server*, with the effects
  470. # only being visible on the client.
  471. # Warning: very large values may lead to rendering and/or performance
  472. # issues due to the high view distance! Increase at your own peril.
  473. maxScale=[
  474. 3,
  475. 4
  476. ]
  477.  
  478. # This controls the maximum translation of holograms, by tier.
  479. # The scale is in "hologram sizes", i.e. scale 1 allows offsetting a
  480. # hologram once by its own size.
  481. maxTranslation=[
  482. 0.25,
  483. 0.5
  484. ]
  485.  
  486. # The delay forced on computers between calls to `hologram.setRaw`, in
  487. # seconds. Lower this if you want faster updates, raise this if you're
  488. # worried about bandwidth use; in *normal* use-cases this will never be
  489. # an issue. When abused, `setRaw` can be used to generate network traffic
  490. # due to changed data being sent to clients. With the default settings,
  491. # the *worst case* is ~30KB/s/client. Again, for normal use-cases this
  492. # is actually barely noticeable.
  493. setRawDelay=0.2
  494. }
  495.  
  496. # Settings for mod integration (the mod previously known as OpenComponents).
  497. integration {
  498. buildcraft {
  499.  
  500. # Cost to convert a loot disk to another in the BuildCraft programming table.
  501. programmingTableCost=5000
  502. }
  503.  
  504. # The name to use for the global fake player needed for some mod
  505. # interactions.
  506. fakePlayerName="[OpenComputers]"
  507.  
  508. # The UUID to use for the global fake player needed for some mod
  509. # interactions.
  510. fakePlayerUuid="7e506b5d-2ccb-4ac4-a249-5624925b0c67"
  511.  
  512. # A list of mods (by mod id) for which support should NOT be enabled. Use
  513. # this to disable support for mods you feel should not be controllable via
  514. # computers (such as magic related mods, which is why Thaumcraft is on this
  515. # list by default.)
  516. modBlacklist=[
  517. Thaumcraft,
  518. thaumicenergistics
  519. ]
  520.  
  521. # A list of tile entities by class name that should NOT be accessible via
  522. # the Adapter block. Add blocks here that can lead to crashes or deadlocks
  523. # (and report them, please!)
  524. peripheralBlacklist=[
  525. "net.minecraft.tileentity.TileEntityCommandBlock"
  526. ]
  527.  
  528. # Vanilla integration related settings.
  529. vanilla {
  530.  
  531. # Whether to allow the item stack converter to push NBT data in
  532. # compressed format (GZIP'ed). This can be useful for pushing this
  533. # data back to other callbacks. However, given a sophisticated
  534. # enough software (Lua script) it is possible to decode this data,
  535. # and get access to things that should be considered implementation
  536. # detail / private (mods may keep "secret" data in such NBT tags).
  537. # The recommended method is to use the database component instead.
  538. allowItemStackNBTTags=false
  539.  
  540. # Whether to enable the command block driver. Enabling this allows
  541. # computers to set and execute commands via command blocks next to
  542. # adapter blocks. The commands are run using OC's general fake player.
  543. enableCommandBlockDriver=false
  544.  
  545. # Whether to enable the inventory driver. This driver allows interacting
  546. # with inventories adjacent to adapters in a way similar to what the
  547. # inventory controller upgrade allows when built into a robot or placed
  548. # inside an adapter. It is therefore considered to be somewhat cheaty by
  549. # some, and disabled by default. If you don't care about that, feel free
  550. # to enable this driver.
  551. enableInventoryDriver=false
  552.  
  553. # Whether to enable the tank driver. This driver is like the inventory
  554. # driver, just for fluid tanks, and is disabled by default with the same
  555. # reasoning as the inventory driver - using a tank controller upgrade in
  556. # an adapter has pretty much the same effect.
  557. enableTankDriver=false
  558. }
  559. }
  560.  
  561. # Internet settings, security related.
  562. internet {
  563.  
  564. # This is a list of blacklisted domain names. If an HTTP request is made
  565. # or a socket connection is opened the target address will be compared
  566. # to the addresses / adress ranges in this list. It it is present in this
  567. # list, the request will be denied.
  568. # Entries are either domain names (www.example.com) or IP addresses in
  569. # string format (10.0.0.3), optionally in CIDR notation to make it easier
  570. # to define address ranges (1.0.0.0/8). Domains are resolved to their
  571. # actual IP once on startup, future requests are resolved and compared
  572. # to the resolved addresses.
  573. # By default all local addresses are blocked. This is only meant as a
  574. # thin layer of security, to avoid average users hosting a game on their
  575. # local machine having players access services in their local network.
  576. # Server hosters are expected to configure their network outside of the
  577. # mod's context in an appropriate manner, e.g. using a system firewall.
  578. blacklist=[
  579. "127.0.0.0/8",
  580. "10.0.0.0/8",
  581. "192.168.0.0/16",
  582. "172.16.0.0/12"
  583. ]
  584.  
  585. # Whether to allow HTTP requests via internet cards. When enabled,
  586. # the `request` method on internet card components becomes available.
  587. enableHttp=true
  588.  
  589. # Whether to allow adding custom headers to HTTP requests.
  590. enableHttpHeaders=true
  591.  
  592. # Whether to allow TCP connections via internet cards. When enabled,
  593. # the `connect` method on internet card components becomes available.
  594. enableTcp=true
  595.  
  596. # The maximum concurrent TCP connections *each* internet card can have
  597. # open at a time.
  598. maxTcpConnections=4
  599.  
  600. # The time in seconds to wait for a response to a request before timing
  601. # out and returning an error message. If this is zero (the default) the
  602. # request will never time out.
  603. requestTimeout=0
  604.  
  605. # The number of threads used for processing host name lookups and HTTP
  606. # requests in the background. The more there are, the more concurrent
  607. # connections can potentially be opened by computers, and the less likely
  608. # they are to delay each other.
  609. threads=4
  610.  
  611. # This is a list of whitelisted domain names. Requests may only be made
  612. # to addresses that are present in this list. If this list is empty,
  613. # requests may be made to all addresses not blacklisted. Note that the
  614. # blacklist is always applied, so if an entry is present in both the
  615. # whitelist and the blacklist, the blacklist will win.
  616. # Entries are of the same format as in the blacklist. Examples:
  617. # "gist.github.com", "www.pastebin.com"
  618. whitelist=[]
  619. }
  620.  
  621. # Other settings that you might find useful to tweak.
  622. misc {
  623.  
  624. # Allow robots to get a table representation of item stacks using the
  625. # inventory controller upgrade? (i.e. whether the getStackInSlot method
  626. # of said upgrade is enabled or not). Also applies to tank controller
  627. # upgrade and it's fluid getter method.
  628. allowItemStackInspection=true
  629.  
  630. # List of item descriptors of assembler template base items to blacklist,
  631. # i.e. for disabling the assembler template for. Entries must be of the
  632. # format 'itemid@damage', were the damage is optional.
  633. # Examples: 'OpenComputers:case3', 'minecraft:stonebrick@1'
  634. assemblerBlacklist=[]
  635.  
  636. # Hard limit for size of byte arrays passed to data card callbacks. If this
  637. # limit is exceeded, the call fails and does nothing.
  638. dataCardHardLimit=1048576
  639.  
  640. # Soft limit for size of byte arrays passed to data card callbacks. If this
  641. # limit is exceeded, a longer sleep is enforced (see dataCardTimeout).
  642. dataCardSoftLimit=8192
  643.  
  644. # Time in seconds to pause a calling machine when the soft limit for a data
  645. # card callback is exceeded.
  646. dataCardTimeout=1
  647.  
  648. # By default the disassembler can only be used to disassemble items from
  649. # OpenComputers itself (or objects whitelisted via the API). If you'd
  650. # like to allow the disassembler to work on all kinds of items, even from
  651. # other mods, set this to true.
  652. disassembleAllTheThings=false
  653.  
  654. # The probability that an item breaks when disassembled. This chance
  655. # applies *per extracted item*. For example, if an item was crafted from
  656. # three other items and gets disassembled, each of those three items has
  657. # this chance of breaking in the process.
  658. disassemblerBreakChance=0.05
  659.  
  660. # Names of items / blocks that are blacklisted. Recipes containing these
  661. # as inputs will be ignored by the disassembler.
  662. disassemblerInputBlacklist=[
  663. "minecraft:fire"
  664. ]
  665.  
  666. # Controls how noisy results from the Geolyzer are. This is the maximum
  667. # deviation from the original value at the maximum vertical distance
  668. # from the geolyzer. Noise increases linearly with the vertical distance
  669. # to the Geolyzer. So yes, on the same height, the returned value are of
  670. # equal 'quality', regardless of the real distance. This is a performance
  671. # trade-off.
  672. geolyzerNoise=2
  673.  
  674. # The range, in blocks, in which the Geolyzer can scan blocks. Note that
  675. # it uses the maximum-distance, not the euclidean one, i.e. it can scan
  676. # in a cube surrounding it with twice this value as its edge length.
  677. geolyzerRange=32
  678.  
  679. # Whether to give a new player a free copy of the manual. This will only
  680. # happen one time per game, not per world, not per death. Once. If this
  681. # is still too much for your taste, disable it here ;-)
  682. giveManualToNewPlayers=true
  683.  
  684. # Whether to not show your special thinger (if you have one you know it).
  685. hideOwnSpecial=false
  686.  
  687. # Whether to pass along the name of the user that caused an input signals
  688. # to the computer (mouse and keyboard signals). If you feel this breaks
  689. # the game's immersion, disable it.
  690. # Note: also applies to the motion sensor.
  691. inputUsername=true
  692.  
  693. # The probability (or rather, weighted chance) that a program disk is
  694. # spawned as loot in a treasure chest. For reference, iron ingots have
  695. # a value of 10, gold ingots a value of 5 and and diamonds a value of 3.
  696. # This is the chance *that* a disk is created. Which disk that will be
  697. # is decided in an extra roll of the dice.
  698. lootProbability=5
  699.  
  700. # Whether to allow loot disk cycling by crafting them with a wrench.
  701. lootRecrafting=true
  702.  
  703. # The maximum length of a string that may be pasted. This is used to limit
  704. # the size of the data sent to the server when the user tries to paste a
  705. # string from the clipboard (Shift+Ins on a screen with a keyboard).
  706. maxClipboard=1024
  707.  
  708. # The maximum number of "data parts" a network packet is allowed to have.
  709. # When sending a network message, from Lua this may look like so:
  710. # component.modem.broadcast(port, "first", true, "third", 123)
  711. # This limits how many arguments can be passed and are wrapped into a
  712. # packet. This limit mostly serves as a protection for lower-tier
  713. # computers, to avoid them getting nuked by more powerful computers.
  714. maxNetworkPacketParts=8
  715.  
  716. # The maximum size of network packets to allow sending via network cards.
  717. # This has *nothing to do* with real network traffic, it's just a limit
  718. # for the network cards, mostly to reduce the chance of computer with a
  719. # lot of RAM killing those with less by sending huge packets. This does
  720. # not apply to HTTP traffic.
  721. maxNetworkPacketSize=8192
  722.  
  723. # The maximum number of ports a single network card can have opened at
  724. # any given time.
  725. maxOpenPorts=16
  726.  
  727. # The maximum height of multi-block screens, in blocks. This is limited to
  728. # avoid excessive computations for merging screens. If you really need
  729. # bigger screens it's probably safe to bump this quite a bit before you
  730. # notice anything, since at least incremental updates should be very
  731. # efficient (i.e. when adding/removing a single screen).
  732. maxScreenHeight=6
  733.  
  734. # The maximum width of multi-block screens, in blocks.
  735. # See also: `maxScreenHeight`.
  736. maxScreenWidth=8
  737.  
  738. # The maximum distance a wireless message can be sent. In other words,
  739. # this is the maximum signal strength a wireless network card supports.
  740. # This is used to limit the search range in which to check for modems,
  741. # which may or may not lead to performance issues for ridiculous ranges -
  742. # like, you know, more than the loaded area.
  743. # See also: `wirelessCostPerRange`.
  744. maxWirelessRange=400
  745.  
  746. # Radius the MFU is able to operate in
  747. mfuRange=3
  748.  
  749. # Probablility that at certain celebratory times crafting an OC item will
  750. # spawn a present in the crafting player's inventory. Set to zero to
  751. # disable.
  752. presentChance=0.05
  753.  
  754. # Enforced delay when changing a redstone emitting component's output,
  755. # such as the redstone card and redstone I/O block. Lowering this can
  756. # have very negative impact on server TPS, so beware.
  757. redstoneDelay=0.1
  758.  
  759. # The general upgrade tier of the switch built into server racks, i.e. how
  760. # upgraded server racks' switching logic is. Prior to the introduction of
  761. # this setting (1.5.15) this was always none. This applies to all
  762. # properties, i.e. througput, frequency and buffer size.
  763. # Valid values are: 0 = none, 1 = tier 1, 2 = tier 2, 3 = tier 3.
  764. serverRackSwitchTier=1
  765.  
  766. # The number of remote terminals supported by each server tier.
  767. terminalsPerTier=[
  768. 2,
  769. 4,
  770. 8
  771. ]
  772.  
  773. # Override for the worker threads' thread priority. If set to a value
  774. # lower than 1 it will use the default value, which is half-way between
  775. # the system minimum and normal priority. Valid values may differ between
  776. # Java versions, but usually the minimum value (lowest priority) is 1,
  777. # the normal value is 5 and the maximum value is 10. If a manual value is
  778. # given it is automatically capped at the maximum.
  779. # USE THIS WITH GREAT CARE. Using a high priority for worker threads may
  780. # avoid issues with computers timing out, but can also lead to higher
  781. # server load. AGAIN, USE WITH CARE!
  782. threadPriority=-1
  783.  
  784. # The maximum range between the drone/robot and a villager for a trade to
  785. # be performed by the trading upgrade
  786. tradingRange=8
  787.  
  788. # Whether to perform an update check and informing local players and OPs
  789. # if a new version is available (contacts Github once the first player
  790. # joins a server / the first map in single player is opened).
  791. updateCheck=true
  792. }
  793.  
  794. # Nanomachine related values. Note that most of these are relative, as
  795. # they scale with the number of total effects controlled by nanomachines,
  796. # which may very much vary depending on other mods used together with OC.
  797. # To configure this, you'll need to know how this works a bit more in-
  798. # depth, so here goes: there are three layers, the behavior layer, the
  799. # connector layer, and the input layer. The behavior layer consists of
  800. # one node for each behavior provided by registered providers (by default
  801. # these will be potion effects and a few other things). The connector
  802. # layer merely serves to mix things up a little. The input layer is made
  803. # up from nodes that can be triggered by the nanomachines. Each connector
  804. # node has behavior nodes it outputs to, and gets signals from input nodes.
  805. # Behavior nodes get signals from both the connector and the input layers.
  806. # Reconfiguring builds up random connections. Some behaviors change what
  807. # they do based on the number of active inputs (e.g. potion effects will
  808. # increase their amplification value).
  809. nanomachines {
  810.  
  811. # Time in seconds it takes for the nanomachines to process a command
  812. # and send a response.
  813. commandDelay=1
  814.  
  815. # The distance in blocks that nanomachines can communicate within. If
  816. # a message comes from further away, it'll be ignored. When responding,
  817. # the response will only be sent this far.
  818. commandRange=2
  819.  
  820. # The relative number of connectors based on the number of available
  821. # behaviors (see triggerQuota).
  822. connectorQuota=0.2
  823.  
  824. # Radius in blocks of the disintegration behavior for each active input.
  825. disintegrationRange=1
  826.  
  827. # How much damage the hungry behavior should deal to the player when the
  828. # nanomachine controller runs out of energy.
  829. hungryDamage=5
  830.  
  831. # How much energy the hungry behavior should restore when damaging the
  832. # player.
  833. hungryEnergyRestored=50
  834.  
  835. # Range of the item magnet behavior added for each active input.
  836. magnetRange=8
  837.  
  838. # The maximum number of inputs for each node of the "neural network"
  839. # nanomachines connect to. I.e. each behavior node and connector node
  840. # may only have up to this many inputs.
  841. maxInputs=2
  842.  
  843. # Hard maximum number of active inputs. This is mainly to avoid people
  844. # bumping other nanomachines' inputs to max, killing them in a matter
  845. # of (milli)seconds.
  846. maxInputsActive=4
  847.  
  848. # The maximum number of outputs for each node (see maxInputs).
  849. maxOutputs=2
  850.  
  851. # Whitelisted potions, i.e. potions that will be used for the potion
  852. # behaviors nanomachines may trigger. This can contain strings or numbers.
  853. # In the case of strings, it has to be the internal name of the potion,
  854. # in case of a number it has to be the potion ID. Add any potion effects
  855. # to make use of here, since they will all be disabled by default.
  856. potionWhitelist=[
  857. speed,
  858. haste,
  859. strength,
  860. "jump_boost",
  861. resistance,
  862. "fire_resistance",
  863. "water_breathing",
  864. "night_vision",
  865. absorption,
  866. blindness,
  867. nausea,
  868. "mining_fatigue",
  869. "instant_damage",
  870. hunger,
  871. slowness,
  872. poison,
  873. weakness,
  874. wither
  875. ]
  876.  
  877. # How many input nodes may be active at the same time before negative
  878. # effects are applied to the player.
  879. safeInputsActive=2
  880.  
  881. # The relative amount of triggers available based on the number of
  882. # available behaviors (such as different potion effects). For example,
  883. # if there are a total of 10 behaviors available, 0.5 means there will
  884. # be 5 trigger inputs, triggers being the inputs that can be activated
  885. # via nanomachines.
  886. triggerQuota=0.4
  887. }
  888.  
  889. # Power settings, buffer sizes and power consumption.
  890. power {
  891.  
  892. # The amount of energy the robot assembler can apply per tick. This
  893. # controls the speed at which robots are assembled, basically.
  894. assemblerTickAmount=50
  895.  
  896. # Default "buffer" sizes, i.e. how much energy certain blocks can store.
  897. buffer {
  898.  
  899. # The amount of energy an access point can store.
  900. accessPoint=600
  901.  
  902. # The amount of energy a capacitor can store when installed as an
  903. # upgrade into a robot.
  904. batteryUpgrades=[
  905. 10000,
  906. 15000,
  907. 20000
  908. ]
  909.  
  910. # The amount of energy a single capacitor can store.
  911. capacitor=1600
  912.  
  913. # The amount of bonus energy a capacitor can store for each other
  914. # capacitor it shares a face with. This bonus applies to both of the
  915. # involved capacitors. It reaches a total of two blocks, where the
  916. # bonus is halved for the second neighbor. So three capacitors in a
  917. # row will give a total of 8.8k storage with default values:
  918. # (1.6 + 0.8 + 0.4)k + (0.8 + 1.6 + 0.8)k + (0.4 + 0.8 + 1.6)k
  919. capacitorAdjacencyBonus=800
  920.  
  921. # The amount of energy a computer can store. This allows you to get a
  922. # computer up and running without also having to build a capacitor.
  923. computer=500
  924.  
  925. # The amount of energy a converter can store. This allows directly
  926. # connecting a converter to a distributor, without having to have a
  927. # capacitor on the side of the converter.
  928. converter=1000
  929.  
  930. # The amount of energy each face of a distributor can store. This
  931. # allows connecting two power distributors directly. If the buffer
  932. # capacity between the two distributors is zero, they won't be able
  933. # to exchange energy. This basically controls the bandwidth. You can
  934. # add capacitors between two distributors to increase this bandwidth.
  935. distributor=500
  936.  
  937. # The amount of energy a drone can store in its internal buffer.
  938. drone=5000
  939.  
  940. # The internal buffer size of the hover boots.
  941. hoverBoots=15000
  942.  
  943. # The amount of energy a microcontroller can store in its internal
  944. # buffer.
  945. mcu=1000
  946.  
  947. # Amount of energy stored by nanomachines. Yeah, I also don't know
  948. # where all that energy is stored. It's quite fascinating.
  949. nanomachines=100000
  950.  
  951. # The amount of energy robots can store in their internal buffer.
  952. robot=20000
  953.  
  954. # The amount a tablet can store in its internal buffer.
  955. tablet=10000
  956. }
  957.  
  958. # The amount of energy a Charger transfers to each adjacent robot per tick
  959. # if a maximum strength redstone signal is set. Chargers load robots with
  960. # a controllable speed, based on the maximum strength of redstone signals
  961. # going into the block. So if a redstone signal of eight is set, it'll
  962. # charge robots at roughly half speed.
  963. chargerChargeRate=100
  964.  
  965. # The amount of energy a Charger transfers into a tablet, if present, per
  966. # tick. This is also based on configured charge speed, as for robots.
  967. chargerChargeRateTablet=10
  968.  
  969. # Default "costs", i.e. how much energy certain operations consume.
  970. cost {
  971.  
  972. # The cost of a single packet sent via StargateTech 2's abstract bus.
  973. abstractBusPacket=1
  974.  
  975. # The amount of energy the chunkloader upgrade draws per tick while
  976. # it is enabled, i.e. actually loading a chunk.
  977. chunkloaderCost=0.06
  978.  
  979. # The amount of energy a computer consumes per tick when running.
  980. computer=0.5
  981.  
  982. # Cost for asymmetric operations on the data card, such as ECDH and ECDSA
  983. # Per-byte cost for ECDSA operation is controlled by `complex` value,
  984. # because data is hashed with SHA256 before signing/verifying
  985. dataCardAsymmetric=10
  986.  
  987. # Cost for complex operations on the data card, such as SHA256, inflate/deflate and SecureRandom.
  988. dataCardComplex=6
  989.  
  990. # Per-byte cost for complex operations
  991. dataCardComplexByte=0.1
  992.  
  993. # Cost for simple operations on the data card, such as MD5 or AES
  994. dataCardSimple=1
  995.  
  996. # Per-byte cost for simple operations
  997. dataCardSimpleByte=0.01
  998.  
  999. # Cost for trivial operations on the data card, such as CRC32 or Base64
  1000. dataCardTrivial=0.2
  1001.  
  1002. # Per-byte cost for trivial operations
  1003. dataCardTrivialByte=0.005
  1004.  
  1005. # The amount of energy it takes to extract one ingredient from an
  1006. # item that is being disassembled. For example, if an item that was
  1007. # crafted from three other items gets disassembled, a total of 15000
  1008. # energy will be required by default.
  1009. # Note that this is consumed over time, and each time this amount is
  1010. # reached *one* ingredient gets ejected (unless it breaks, see the
  1011. # disassemblerBreakChance setting).
  1012. disassemblerPerItem=2000
  1013.  
  1014. # The amount of energy a drone consumes per tick when running.
  1015. drone=0.4
  1016.  
  1017. # The base energy cost for assembling a drone.
  1018. droneAssemblyBase=25000
  1019.  
  1020. # The additional amount of energy required to assemble a
  1021. # drone for each point of complexity.
  1022. droneAssemblyComplexity=15000
  1023.  
  1024. # Energy it costs to re-program an EEPROM. This is deliberately
  1025. # expensive, to discourage frequent re-writing of EEPROMs.
  1026. eepromWrite=50
  1027.  
  1028. # How much energy is consumed when the Geolyzer scans a block.
  1029. geolyzerScan=10
  1030.  
  1031. # Energy it takes to clear a basic screen using the fill command with
  1032. # 'space' as the fill char.
  1033. # Note: internally this is adjusted to a cost per pixel, and applied
  1034. # as such, so this also implicitly defines the cost for higher tier
  1035. # screens.
  1036. gpuClear=0.1
  1037.  
  1038. # Energy it takes to copy half of a basic screen via the copy command.
  1039. # Note: internally this is adjusted to a cost per pixel, and applied
  1040. # as such, so this also implicitly defines the cost for higher tier
  1041. # screens.
  1042. gpuCopy=0.25
  1043.  
  1044. # Energy it takes to change a basic screen with the fill command.
  1045. # Note: internally this is adjusted to a cost per pixel, and applied
  1046. # as such, so this also implicitly defines the cost for higher tier
  1047. # screens.
  1048. gpuFill=1
  1049.  
  1050. # Energy it takes to change *every* 'pixel' via the set command of a
  1051. # basic screen via the `set` command.
  1052. # Note: internally this is adjusted to a cost per pixel, and applied
  1053. # as such, so this also implicitly defines the cost for higher tier
  1054. # screens.
  1055. gpuSet=2
  1056.  
  1057. # Energy it takes read one kilobyte from a file system. Note that non
  1058. # I/O operations on file systems such as `list` or `getFreeSpace` do
  1059. # *not* consume power. Note that this very much determines how much
  1060. # energy you need in store to start a computer, since you need enough
  1061. # to have the computer read all the libraries, which is around 60KB
  1062. # at the time of writing.
  1063. # Note: internally this is adjusted to a cost per byte, and applied
  1064. # as such. It's just specified per kilobyte to be more intuitive.
  1065. hddRead=0.1
  1066.  
  1067. # Energy it takes to write one kilobyte to a file system.
  1068. # Note: internally this is adjusted to a cost per byte, and applied
  1069. # as such. It's just specified per kilobyte to be more intuitive.
  1070. hddWrite=0.25
  1071.  
  1072. # The amount of energy a hologram projetor consumes per tick. This
  1073. # is the cost if every column is lit. If not a single voxel is
  1074. # displayed the hologram projector will not drain energy.
  1075. hologram=0.2
  1076.  
  1077. # The amount of energy consumed when the hover boots absorb some fall
  1078. # velocity (i.e. when falling from something higher than three blocks).
  1079. hoverBootAbsorb=10
  1080.  
  1081. # The amount of energy consumed when jumping with the hover boots. Only
  1082. # applies when the jump boost is applied, i.e. when not sneaking.
  1083. hoverBootJump=10
  1084.  
  1085. # The amount of energy consumed *per second* when moving around while
  1086. # wearing the hover boots. This is compensate for the step assist, which
  1087. # does not consume energy on a per-use basis. When standing still or
  1088. # moving very slowly this also does not trigger.
  1089. hoverBootMove=1
  1090.  
  1091. # Energy consumed by a MFU per tick while connected.
  1092. # Similarly to `wirelessCostPerRange`, this is multiplied with the distance to the bound block.
  1093. mfuRelay=1
  1094.  
  1095. # Amount of energy a microcontroller consumes per tick while running.
  1096. microcontroller=0.1
  1097.  
  1098. # The base energy cost for assembling a microcontroller.
  1099. microcontrollerAssemblyBase=10000
  1100.  
  1101. # The additional amount of energy required to assemble a
  1102. # microcontroller for each point of complexity.
  1103. microcontrollerAssemblyComplexity=10000
  1104.  
  1105. # Energy consumed per tick per active input node by nanomachines.
  1106. nanomachineInput=0.5
  1107.  
  1108. # Energy consumed when reconfiguring nanomachines.
  1109. nanomachinesReconfigure=5000
  1110.  
  1111. # The amount of energy pushing blocks with the piston upgrade costs.
  1112. pistonPush=20
  1113.  
  1114. # How much energy is required for a single 3D print.
  1115. printerModel=100
  1116.  
  1117. # The amount of energy a robot consumes per tick when running. This is
  1118. # per default less than a normal computer uses because... well... they
  1119. # are better optimized? It balances out due to the cost for movement,
  1120. # interaction and whatnot, and the fact that robots cannot connect to
  1121. # component networks directly, so they are no replacements for normal
  1122. # computers.
  1123. robot=0.25
  1124.  
  1125. # The base energy cost for assembling a robot.
  1126. robotAssemblyBase=50000
  1127.  
  1128. # The additional amount of energy required to assemble a robot for
  1129. # each point of complexity.
  1130. robotAssemblyComplexity=10000
  1131.  
  1132. # The conversion rate of exhaustion from using items to energy
  1133. # consumed. Zero means exhaustion does not require energy, one is a
  1134. # one to one conversion. For example, breaking a block generates 0.025
  1135. # exhaustion, attacking an entity generates 0.3 exhaustion.
  1136. robotExhaustion=10
  1137.  
  1138. # The amount of energy it takes a robot to move a single block.
  1139. robotMove=15
  1140.  
  1141. # The amount of energy it takes a robot to perform a 90 degree turn.
  1142. robotTurn=2.5
  1143.  
  1144. # The amount of energy a screen consumes per tick. For each lit pixel
  1145. # (each character that is not blank) this cost increases linearly:
  1146. # for basic screens, if all pixels are lit the cost per tick will be
  1147. # this value. Higher tier screens can become even more expensive to
  1148. # run, due to their higher resolution. If a screen cannot consume the
  1149. # defined amount of energy it will stop rendering the text that
  1150. # should be displayed on it. It will *not* forget that text, however,
  1151. # so when enough power is available again it will restore the
  1152. # previously displayed text (with any changes possibly made in the
  1153. # meantime). Note that for multi-block screens *each* screen that is
  1154. # part of it will consume this amount of energy per tick.
  1155. screen=0.05
  1156.  
  1157. # The actual cost per tick for computers and robots is multiplied
  1158. # with this value if they are currently in a "sleeping" state. They
  1159. # enter this state either by calling `os.sleep()` or by pulling
  1160. # signals. Note that this does not apply in the tick they resume, so
  1161. # you can't fake sleep by calling `os.sleep(0)`.
  1162. sleepFactor=0.1
  1163.  
  1164. # The base energy cost for assembling a tablet.
  1165. tabletAssemblyBase=20000
  1166.  
  1167. # The additional amount of energy required to assemble a tablet for
  1168. # each point of complexity.
  1169. tabletAssemblyComplexity=5000
  1170.  
  1171. # Energy required for one transposer operation (regardless of the number
  1172. # of items / fluid volume moved).
  1173. transposer=1
  1174.  
  1175. # The amount of energy it costs to send a wireless message with signal
  1176. # strength one, which means the signal reaches one block. This is
  1177. # scaled up linearly, so for example to send a signal 400 blocks a
  1178. # signal strength of 400 is required, costing a total of
  1179. # 400 * `wirelessCostPerRange`. In other words, the higher this value,
  1180. # the higher the cost of wireless messages.
  1181. # See also: `maxWirelessRange`.
  1182. wirelessCostPerRange=0.05
  1183. }
  1184.  
  1185. # The amount of energy the disassembler can apply per tick. This
  1186. # controls the speed at which items are disassembled, basically.
  1187. disassemblerTickAmount=25
  1188.  
  1189. # The energy efficiency of the generator upgrade. At 1.0 this will
  1190. # generate as much energy as you'd get by burning the fuel in a BuildCraft
  1191. # Stirling Engine (1MJ per fuel value / burn ticks). To discourage fully
  1192. # autonomous robots the efficiency of generators is slighly reduced by
  1193. # default.
  1194. generatorEfficiency=0.8
  1195.  
  1196. # Whether to ignore any power requirements. Whenever something requires
  1197. # power to function, it will try to get the amount of energy it needs from
  1198. # the buffer of its connector node, and in case it fails it won't perform
  1199. # the action / trigger a shutdown / whatever. Setting this to `true` will
  1200. # simply make the check 'is there enough energy' succeed unconditionally.
  1201. # Note that buffers are still filled and emptied following the usual
  1202. # rules, there just is no failure case anymore. The converter will however
  1203. # not accept power from other mods.
  1204. ignorePower=false
  1205.  
  1206. # If you don't want OpenComputers to accept power from one or more of the
  1207. # supported power mods, for example because it doesn't suit the vision
  1208. # of your mod pack, you can disable support for them here. To stop
  1209. # OpenComputers accepting power from a mod, enter its mod id here, e.g.
  1210. # `BuildCraftAPI|power`, `IC2`, `factorization`, ...
  1211. modBlacklist=[]
  1212.  
  1213. # The amount of energy the printer can apply per tick. This controls
  1214. # the speed at which prints are completed, basically.
  1215. printerTickAmount=1
  1216.  
  1217. # The rate at which different blocks accept external power. All of these
  1218. # values are in OC energy / tick.
  1219. rate {
  1220. accessPoint=10
  1221. assembler=100
  1222. case=[
  1223. 5,
  1224. 10,
  1225. 20
  1226. ]
  1227. charger=200
  1228. disassembler=50
  1229. powerConverter=500
  1230. serverRack=50
  1231. }
  1232.  
  1233. # The energy efficiency of the solar generator upgrade. At 1.0 this will
  1234. # generate as much energy as you'd get by burning fuel in a BuildCraft
  1235. # Stirling Engine . To discourage fully autonomous robots the efficiency
  1236. # of solar generators is greatly reduced by default.
  1237. solarGeneratorEfficiency=0.2
  1238.  
  1239. # This determines how often continuous power sinks try to actually try to
  1240. # consume energy from the network. This includes computers, robots and
  1241. # screens. This also controls how frequent distributors revalidate their
  1242. # global state and secondary distributors, as well as how often the power
  1243. # converter queries sources for energy (for now: only BuildCraft). If set
  1244. # to 1, this would query every tick. The default queries every 10 ticks,
  1245. # or in other words twice per second.
  1246. # Higher values mean more responsive power consumption, but slightly more
  1247. # work per tick (shouldn't be that noticeable, though). Note that this
  1248. # has no influence on the actual amount of energy required by computers
  1249. # and screens. The power cost is directly scaled up accordingly:
  1250. # `tickFrequency * cost`.
  1251. tickFrequency=10
  1252.  
  1253. # Power values for different power systems. For reference, the value of
  1254. # OC's internal energy type is 1000. I.e. the conversion ratios are the
  1255. # values here divided by 1000. This is mainly to avoid small floating
  1256. # point numbers in the config, due to potential loss of precision.
  1257. value {
  1258. AppliedEnergistics2=200
  1259. Factorization=13
  1260. Galacticraft=48
  1261. IndustrialCraft2=400
  1262. Mekanism=1333.33
  1263. PowerAdvantage=31.25
  1264. RedstoneFlux=100
  1265.  
  1266. # / 11256, same as AE2
  1267. RotaryCraft=200
  1268. }
  1269. }
  1270.  
  1271. # 3D printer related stuff.
  1272. printer {
  1273.  
  1274. # Whether Chamelium is edible or not. When eaten, it gives a (short)
  1275. # invisibility buff, and (slightly longer) blindness debuff.
  1276. chameliumEdible=true
  1277.  
  1278. # The extra material cost involved for printing a model with a customized
  1279. # redstone output, i.e. something in [1, 14].
  1280. customRedstoneCost=300
  1281.  
  1282. # The amount by which a printers ink buffer gets filled for a single
  1283. # cartridge. Tweak this if you think printing is too cheap or expensive.
  1284. # Note: the amount a single dye adds is this divided by 10.
  1285. inkValue=50000
  1286.  
  1287. # The amount by which a printers material buffer gets filled for a single
  1288. # chamelium. Tweak this if you think printing is too cheap or expensive.
  1289. materialValue=2000
  1290.  
  1291. # The maximum light level a printed block can emit. This defaults to
  1292. # a value similar to that of a redstone torch, because by default the
  1293. # material prints are made of contains redstone, but no glowstone.
  1294. # Prints' light level can further be boosted by crafting them with
  1295. # glowstone dust. This is merely the maximum light level that can be
  1296. # achieved directly when printing them.
  1297. maxBaseLightLevel=8
  1298.  
  1299. # The maximum number of shape for a state of a 3D print allowed. This is
  1300. # for the individual states (off and on), so it is possible to have up to
  1301. # this many shapes *per state* (the reasoning being that only one state
  1302. # will ever be visible at a time).
  1303. maxShapes=24
  1304.  
  1305. # By what (linear) factor the cost of a print increases if one or both of
  1306. # its states are non-collidable (i.e. entities can move through them).
  1307. # This only influences the chamelium cost.
  1308. noclipMultiplier=2
  1309.  
  1310. # Whether to enable print opacity, i.e. make prints have shadows. If
  1311. # enabled, prints will have an opacity that is estimated from their
  1312. # sampled fill rate. This is disabled by default, because MC's lighting
  1313. # computation is apparently not very happy with multiple blocks with
  1314. # dynamic opacity sitting next to each other, and since all prints share
  1315. # the same block type, this can lead to weird shadows on prints. If you
  1316. # don't care about that and prefer them to be not totally shadowless,
  1317. # enable this.
  1318. printsHaveOpacity=false
  1319.  
  1320. # How much of the material used to print a model is refunded when using
  1321. # the model to refuel a printer. This the value the original material
  1322. # cost is multiplied with, so 1 is a full refund, 0 disables the
  1323. # functionality (won't be able to put prints into the material input).
  1324. recycleRate=0.75
  1325. }
  1326.  
  1327. # Robot related settings, what they may do and general balancing.
  1328. robot {
  1329.  
  1330. # Whether robots may 'activate' blocks in the world. This includes
  1331. # pressing buttons and flipping levers, for example. Disable this if it
  1332. # causes problems with some mod (but let me know!) or if you think this
  1333. # feature is too over-powered.
  1334. allowActivateBlocks=true
  1335.  
  1336. # Whether robots may use items for a specifiable duration. This allows
  1337. # robots to use items such as bows, for which the right mouse button has
  1338. # to be held down for a longer period of time. For robots this works
  1339. # slightly different: the item is told it was used for the specified
  1340. # duration immediately, but the robot will not resume execution until the
  1341. # time that the item was supposedly being used has elapsed. This way
  1342. # robots cannot rapidly fire critical shots with a bow, for example.
  1343. allowUseItemsWithDuration=true
  1344.  
  1345. # Whether robots may damage players if they get in their way. This
  1346. # includes all 'player' entities, which may be more than just real players
  1347. # in the game.
  1348. canAttackPlayers=false
  1349.  
  1350. # Allows fine-tuning of delays for robot actions.
  1351. delays {
  1352.  
  1353. # The time in seconds to pause execution after an item was
  1354. # successfully dropped from a robot's inventory.
  1355. drop=0.5
  1356.  
  1357. # This is the *ratio* of the time a player would require to harvest a
  1358. # block. Note that robots cannot break blocks they cannot harvest. So
  1359. # the time a robot is forced to sleep after harvesting a block is
  1360. # breakTime * harvestRatio
  1361. # Breaking a block will always at least take one tick, 0.05 seconds.
  1362. harvestRatio=1
  1363.  
  1364. # The time in seconds to pause execution after a robot issued a
  1365. # successful move command. Note that this essentially determines how
  1366. # fast robots can move around, since this also determines the length
  1367. # of the move animation.
  1368. move=0.4
  1369.  
  1370. # The time in seconds to pause execution after a robot successfully
  1371. # placed an item from its inventory.
  1372. place=0.4
  1373.  
  1374. # The time in seconds to pause execution after a robot successfully
  1375. # picked up an item after triggering a suck command.
  1376. suck=0.5
  1377.  
  1378. # The time in seconds to pause execution after a robot successfully
  1379. # swung a tool (or it's 'hands' if nothing is equipped). Successful in
  1380. # this case means that it hit something, i.e. it attacked an entity or
  1381. # extinguishing fires.
  1382. # When breaking blocks the normal harvest time scaled with the
  1383. # `harvestRatio` (see below) applies.
  1384. swing=0.4
  1385.  
  1386. # The time in seconds to pause execution after a robot turned either
  1387. # left or right. Note that this essentially determines hw fast robots
  1388. # can turn around, since this also determines the length of the turn
  1389. # animation.
  1390. turn=0.4
  1391.  
  1392. # The time in seconds to pause execution after a robot successfully
  1393. # used an equipped tool (or it's 'hands' if nothing is equipped).
  1394. # Successful in this case means that it either used the equipped item,
  1395. # for example a splash potion, or that it activated a block, for
  1396. # example by pushing a button.
  1397. # Note that if an item is used for a specific amount of time, like
  1398. # when shooting a bow, the maximum of this and the duration of the
  1399. # item use is taken.
  1400. use=0.4
  1401. }
  1402.  
  1403. # The rate at which items used as tools by robots take damage. A value of
  1404. # one means that items lose durability as quickly as when they are used by
  1405. # a real player. A value of zero means they will not lose any durability
  1406. # at all. This only applies to items that can actually be damaged (such as
  1407. # swords, pickaxes, axes and shovels).
  1408. # Note that this actually is the *chance* of an item losing durability
  1409. # when it is used. Or in other words, it's the inverse chance that the
  1410. # item will be automatically repaired for the damage it just took
  1411. # immediately after it was used.
  1412. itemDamageRate=0.1
  1413.  
  1414. # Limit robot flight height, based on the following rules:
  1415. # - Robots may only move if the start or target position is valid (e.g.
  1416. # to allow building bridges).
  1417. # - The position below a robot is always valid (can always move down).
  1418. # - Positions up to <flightHeight> above a block are valid (limited
  1419. # flight capabilities).
  1420. # - Any position that has an adjacent block with a solid face towards the
  1421. # position is valid (robots can "climb").
  1422. # Set this to 256 to allow robots to fly whereever, as was the case
  1423. # before the 1.5 update. Consider using drones for cases where you need
  1424. # unlimited flight capabilities instead!
  1425. limitFlightHeight=8
  1426.  
  1427. # The name format to use for robots. The substring '$player$' is
  1428. # replaced with the name of the player that owns the robot, so for the
  1429. # first robot placed this will be the name of the player that placed it.
  1430. # This is transitive, i.e. when a robot in turn places a robot, that
  1431. # robot's owner, too, will be the owner of the placing robot.
  1432. # The substring $random$ will be replaced with a random number in the
  1433. # interval [1, 0xFFFFFF], which may be useful if you need to differentiate
  1434. # individual robots.
  1435. # If a robot is placed by something that is not a player, e.g. by some
  1436. # block from another mod, the name will default to 'OpenComputers'.
  1437. nameFormat="$player$.robot"
  1438.  
  1439. # Determines whether robots are a pretty cool guy. Ususally cobwebs are
  1440. # the bane of anything using a tool other than a sword or shears. This is
  1441. # an utter pain in the part you sit on, because it makes robots meant to
  1442. # dig holes utterly useless: the poor things couldn't break cobwebs in
  1443. # mining shafts with their golden pick axes. So, if this setting is true,
  1444. # we check for cobwebs and allow robots to break 'em anyway, no matter
  1445. # their current tool. After all, the hardness value of cobweb can only
  1446. # rationally explained by Steve's fear of spiders, anyway.
  1447. notAfraidOfSpiders=true
  1448.  
  1449. # The 'range' of robots when swinging an equipped tool (left click). This
  1450. # is the distance to the center of block the robot swings the tool in to
  1451. # the side the tool is swung towards. I.e. for the collision check, which
  1452. # is performed via ray tracing, this determines the end point of the ray
  1453. # like so: `block_center + unit_vector_towards_side * swingRange`
  1454. # This defaults to a value just below 0.5 to ensure the robots will not
  1455. # hit anything that's actually outside said block.
  1456. swingRange=0.49
  1457.  
  1458. # The maximum flight height with upgrades, tier one and tier two of the
  1459. # hover upgrade, respectively.
  1460. upgradeFlightHeight=[
  1461. 64,
  1462. 256
  1463. ]
  1464.  
  1465. # The 'range' of robots when using an equipped tool (right click) or when
  1466. # placing items from their inventory. See `robot.swingRange`. This
  1467. # defaults to a value large enough to allow robots to detect 'farmland',
  1468. # i.e. tilled dirt, so that they can plant seeds.
  1469. useAndPlaceRange=0.65
  1470.  
  1471. # Controls the UUID robots are given. You can either specify a fixed UUID
  1472. # here or use the two provided variables:
  1473. # - $random$, which will assign each robot a random UUID.
  1474. # - $player$, which assigns to each placed robot the UUID of the player
  1475. # that placed it (note: if robots are placed by fake players, i.e.
  1476. # other mods' blocks, they will get that mods' fake player's profile!)
  1477. # Note that if no player UUID is available this will be the same as
  1478. # $random$.
  1479. uuidFormat="$player$"
  1480.  
  1481. # This controls how fast robots gain experience, and how that experience
  1482. # alters the stats.
  1483. xp {
  1484.  
  1485. # This controls how much experience a robot gains for each successful
  1486. # action it performs. "Actions" only include the following: swinging a
  1487. # tool and killing something or destroying a block and placing a block
  1488. # successfully. Note that a call to `swing` or `use` while "bare handed"
  1489. # will *not* gain a robot any experience.
  1490. actionXp=0.05
  1491.  
  1492. # The required amount per level is computed like this:
  1493. # xp(level) = baseValue + (level * constantGrowth) ^ exponentialGrowth
  1494. baseValue=50
  1495.  
  1496. # This is the amount of additional energy that fits into a robots
  1497. # internal buffer for each level it gains. So with the default values,
  1498. # at maximum level (30) a robot will have an internal buffer size of
  1499. # two hundred thousand.
  1500. bufferPerLevel=5000
  1501.  
  1502. # The required amount per level is computed like this:
  1503. # xp(level) = baseValue + (level * constantGrowth) ^ exponentialGrowth
  1504. constantGrowth=8
  1505.  
  1506. # This determines how much "exhaustion" contributes to a robots
  1507. # experience. This is additive to the "action" xp, so digging a block
  1508. # will per default give 0.05 + 0.025 [exhaustion] * 1.0 = 0.075 XP.
  1509. exhaustionXpRate=1
  1510.  
  1511. # The required amount per level is computed like this:
  1512. # xp(level) = baseValue + (level * constantGrowth) ^ exponentialGrowth
  1513. exponentialGrowth=2
  1514.  
  1515. # The increase in block harvest speed a robot gains per level. The time
  1516. # it takes to break a block is computed as actualTime * (1 - bonus).
  1517. # For example at level 20, with a bonus of 0.4 instead of taking 0.3
  1518. # seconds to break a stone block with a diamond pick axe it only takes
  1519. # 0.12 seconds.
  1520. harvestSpeedBoostPerLevel=0.02
  1521.  
  1522. # This determines how much experience a robot gets for each real XP orb
  1523. # an ore it harvested would have dropped. For example, coal is worth
  1524. # two real experience points, redstone is worth 5.
  1525. oreXpRate=4
  1526.  
  1527. # The additional "efficiency" a robot gains in using tools with each
  1528. # level. This basically increases the chances of a tool not losing
  1529. # durability when used, relative to the base rate. So for example, a
  1530. # robot with level 15 gets a 0.15 bonus, with the default damage rate
  1531. # that would lead to a damage rate of 0.1 * (1 - 0.15) = 0.085.
  1532. toolEfficiencyPerLevel=0.01
  1533. }
  1534. }
  1535.  
  1536. # Switch and access point network message forwarding logic related stuff.
  1537. switch {
  1538.  
  1539. # This is the size of the queue of a not upgraded switch. Increasing it
  1540. # avoids packets being dropped when many messages are sent in a single
  1541. # burst.
  1542. defaultMaxQueueSize=20
  1543.  
  1544. # The base number of packets that get relayed in one 'cycle'. The
  1545. # cooldown between cycles is determined by the delay.
  1546. defaultRelayAmount=1
  1547.  
  1548. # The delay a switch has by default between relaying packets (in ticks).
  1549. # WARNING: lowering this value will result in higher maximum CPU load,
  1550. # and may in extreme cases cause server lag.
  1551. defaultRelayDelay=5
  1552.  
  1553. # This is the amount by which the queue size increases per tier of the
  1554. # hard drive installed in the switch.
  1555. queueSizeUpgrade=10
  1556.  
  1557. # The number of additional packets that get relayed per cycle, based on
  1558. # the tier of RAM installed in the switch. For built-in RAM this
  1559. # increases by one per half-tier, for third-party ram this increases by
  1560. # two per item tier.
  1561. relayAmountUpgrade=1
  1562.  
  1563. # The amount of ticks the delay is *reduced* by per tier of the CPU
  1564. # inserted into a switch.
  1565. relayDelayUpgrade=1.5
  1566. }
  1567.  
  1568. # The version of OC this config was generated by. This is used to allow the
  1569. # mod to reset parts of the config when their meaning changed across
  1570. # versions, so that the user does not have to delete it.
  1571. version="1.6.2.7"
  1572.  
  1573. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement