[MOD 0.13.x] Cursed PI - v0.2.3

Topics and discussion about specific mods

[MOD 0.13.x] Cursed PI - v0.2.3

Postby L0771 » Fri Jul 31, 2015 5:55 pm

- Cursed Programable Inserter -
  • Name: Cursed PI
  • Version: 0.2.3
  • Factorio-Version: 0.13.0
  • Description: Inserters programables via GUI
  • License: BY-NC-ND
  • Release: 2016-07-05
  • Download-Url: Download
  • Website: Here
  • Source: Click
  • Dependencies: ["base"]
  • Category: Item
  • Tags: drop, pickup, burner, basic, long, fast, smart

LONG DESCRIPTION
Every inserter is created from base inserters, costs vanilla resources * 3 and consumes vanilla energy * 3

All combinations:
Image

To craft inserters, craft the programmer:
Image
And click over some assembler:
Image
And will show all yours possible inserters:
http://i.imgur.com/wEf57sS.jpg

Image

Image

Image
Image

Request


Changelog
v0.2.3:
- Added "Closer" option

v0.2.2:
- Fixed migration problem

v0.2.1:
- Modified the base, now inserters only modify pickup and drop position
- Added RU translation (Thanks to RikkiLook)

v0.1.1:
- Fixed for Factorio 0.13
- Added new inserters
- Fixed gui

v0.0.3:
- A lot of scripts
- Added Cursed assembler programmer

v0.0.2:
- Enabled technologies

v0.0.1:
- Initial release


for modders
If you want add your inserter, load your mod after Cursed PI and call this in data.lua
Code: Select all
cursedPI_addInserter(name,baseRecipe,baseItem,baseEntity,icon,ingredients,ingMult,energy,energyMult,distIn,distOut,othersRecipe,othersItem,othersEntity)

name: name of inserter, is the name of recipe, item and entity.
baseRecipe, baseItem, baseEntity: The base to copy this entity, can be a base item or can copy your item.
icon: the for recipe, item, entity
ingredients: if is ~= nil then override base ingredients with this - Can be null
ingMult: use base ingredients incresed - Can be null
energy: must be energy = {energy_per_movement,energy_per_rotation,effectivity,drain}, effectivity if is a burner inserter and drain if is a electric inserter - Can be null
energyMult: use base energy incresed - Can be null
distIn: distance to pickup items (i.e long-handler = 2, basic = 1)
distOut: distance to drop items
othersRecipe, othersItem, othersEntity: can modify what you want, i.e: othersRecipe {enabled = false} or othersItem {subgroup = yourgroup, order = "i[inserter]-p[pro]"}

I.E my inserters:
Code: Select all
cursedPI_addInserter("cursed-burner-inserter","burner-inserter","burner-inserter","burner-inserter",burnerIcon,nil,3,nil,3,1,1,{enabled = false})
cursedPI_addInserter("cursed-basic-inserter","basic-inserter","basic-inserter","basic-inserter",basicIcon,nil,3,nil,3,1,1,{enabled = false})
cursedPI_addInserter("cursed-long-handed-inserter","long-handed-inserter","long-handed-inserter","long-handed-inserter",longIcon,nil,3,nil,3,2,2,{enabled = false})
cursedPI_addInserter("cursed-smart-inserter","smart-inserter","smart-inserter","smart-inserter",smartIcon,nil,3,nil,3,1,1,{enabled = false})
cursedPI_addInserter("cursed-fast-inserter","fast-inserter","fast-inserter","fast-inserter",fastIcon,nil,3,nil,3,1,1,{enabled = false})


And in control.lua add this in your on_init and on_load:
Code: Select all
if remote.interfaces["Cursed-PI"] and remote.interfaces["Cursed-PI"]["addInserter"] then
   local inserter =
   {
      ["name"] = "MyName",
      ["entity"] = "MyEntityName",
      ["recipe"] = "MyRecipeName"
   }
   local temp = remote.call("Cursed-PI","addInserter")
   if temp ~= nil then
      error(temp)
   end
end


I.E 1 or my inserters:
Code: Select all
if remote.interfaces["Cursed-PI"] and remote.interfaces["Cursed-PI"]["addInserter"] then
   local inserter =
   {
      ["name"] = "cursed-basic-inserter",
      ["entity"] = "cursed-basic-inserter",
      ["recipe"] = "cursed-basic-inserter"
   }
   local temp = remote.call("Cursed-PI","addInserter",inserter)
   if temp ~= nil then
      error(temp)
   end
end
Last edited by L0771 on Tue Jul 05, 2016 6:03 pm, edited 11 times in total.
User avatar
L0771
Filter Inserter
Filter Inserter
 
Posts: 508
Joined: Tue Jan 14, 2014 1:51 pm
Location: Argentina

Re: [0.12.x] Cursed PI - v0.0.2

Postby SHiRKiT » Fri Jul 31, 2015 10:05 pm

Loved the concept, really useful in tight spaces!
User avatar
SHiRKiT
Filter Inserter
Filter Inserter
 
Posts: 678
Joined: Mon Jul 14, 2014 11:52 pm
Location: Brazil

Re: [0.12.x] Cursed PI - v0.0.2

Postby Corbald » Sat Aug 01, 2015 8:06 am

Burner Inserter (PI) causes Unhandled exception and crashes the game when it first tries to fuel it's self.

Game version: 12.2

Crash Log
Code: Select all
   0.003 2015-08-01 00:58:58; Factorio 0.12.2 (Build 16229, win64)
   0.003 Operating system: Windows 10
   0.003 Read data path: C:/Program Files/Factorio/data
   0.003 Write data path: C:/Users/corba_000/AppData/Roaming/Factorio
   0.003 Binaries path: C:/Program Files/Factorio/bin
   0.215 Initialised Direct3D: AMD Radeon HD 7640G; driver: aticfx64.dll 8.17.10.1404
   0.277 Turning off Align To V-Sync because desktop composition was detected (ie. Windows Aero).
   0.277 Graphics options: [FullScreen: true] [VSync: true] [UIScale: 100%] [MultiSampling: OFF] [Graphics quality: low] [Video memory usage: all]
   0.481 Loading mod core 0.0.0 (data.lua)
   0.487 Loading mod base 0.12.2 (data.lua)
   0.642 Loading mod Cursed-PI 0.0.2 (data.lua)
   0.828 Loading mod FARL 0.3.14 (data.lua)
   1.005 Loading mod Landfill 2.1.5 (data.lua)
   1.173 Loading mod LongLargeChests 0.12.6 (data.lua)
   1.354 Loading mod RailLogicSystem 0.0.6 (data.lua)
   1.710 Loading mod RailTanker 1.0.1 (data.lua)
   1.869 Loading mod SimpleTeleporters 0.0.1 (data.lua)
   2.038 Loading mod TheFatController 0.2.4 (data.lua)
   2.254 Loading mod Treefarm-Lite 0.2.0 (data.lua)
   2.424 Loading mod circuitgui 0.0.1 (data.lua)
   2.603 Loading mod color-coding 1.0.1 (data.lua)
   2.809 Loading mod tree_collision 0.2.0 (data.lua)
   3.029 Loading mod Treefarm-AC 0.2.1 (data.lua)
   3.283 Loading mod FARL 0.3.14 (data-updates.lua)
   3.491 Loading mod rso-mod 1.2.9 (data-updates.lua)
   6.378 Initial atlas bitmap size is 16384
   6.383 Created atlas bitmap 16384x5898
  43.935 Info Updater.cpp:720: Downloading https://www.factorio.com/updater/get-available-versions?username=Corbald&token=<private>&apiVersion=2
  44.802 0 packages available to download (experimental updates enabled).
  44.859 Factorio initialised
  51.991 Loading map C:/Users\corba_000\AppData\Roaming\Factorio\saves\_autosave2.zip
  52.048 Info Scenario.cpp:160: Map version 0.12.2-4
  52.418 Info LocaleProvider.cpp:141: Using locale files from the pre 0.11.0 structure (__Treefarm-Lite__/script-locale/en.cfg)
Factorio crashed. Generating symbolized stacktrace, please wait ...
c:\temp\factorio-746f8a36\libraries\stackwalker\stackwalker.cpp (923): StackWalker::ShowCallstack
c:\temp\factorio-746f8a36\src\util\logger.cpp (283): Logger::writeStacktrace
c:\temp\factorio-746f8a36\src\util\logger.cpp (337): Logger::logStacktrace
c:\temp\factorio-746f8a36\src\util\crashhandler.cpp (79): CrashHandler::writeStackTrace
c:\temp\factorio-746f8a36\src\util\crashhandler.cpp (88): CrashHandler::SehHandler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A55E02CE)
00007FF8A55E02CE (KERNELBASE): (filename not available): UnhandledExceptionFilter
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A9B48992)
00007FF8A9B48992 (ntdll): (filename not available): memset
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A9B33F66)
00007FF8A9B33F66 (ntdll): (filename not available): _C_specific_handler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A9B4633D)
00007FF8A9B4633D (ntdll): (filename not available): _chkstk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A9AC3C00)
00007FF8A9AC3C00 (ntdll): (filename not available): RtlWalkFrameChain
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A9B4544A)
00007FF8A9B4544A (ntdll): (filename not available): KiUserExceptionDispatcher
c:\temp\factorio-746f8a36\libraries\allegro\addons\audio\kcm_mixer_helpers.inc (185): linear_spl32
c:\temp\factorio-746f8a36\libraries\allegro\addons\audio\kcm_mixer.c (340): read_to_mixer_linear_float_32
c:\temp\factorio-746f8a36\libraries\allegro\addons\audio\kcm_mixer.c (389): _al_kcm_mixer_read
c:\temp\factorio-746f8a36\libraries\allegro\addons\audio\kcm_mixer.c (389): _al_kcm_mixer_read
c:\temp\factorio-746f8a36\libraries\allegro\addons\audio\dsound.cpp (223): _dsound_update
c:\temp\factorio-746f8a36\libraries\allegro\src\threads.c (80): thread_func_trampoline
c:\temp\factorio-746f8a36\libraries\allegro\src\win\wxthread.c (38): thread_proc_trampoline
f:\dd\vctools\crt\crtw32\startup\threadex.c (376): _callthreadstartex
f:\dd\vctools\crt\crtw32\startup\threadex.c (354): _threadstartex
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A5F12D92)
00007FF8A5F12D92 (KERNEL32): (filename not available): BaseThreadInitThunk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A9AB9F64)
00007FF8A9AB9F64 (ntdll): (filename not available): RtlUserThreadStart
 231.262 Error Util.cpp:46: Unexpected error occurred. You can help us to solve the problem by posting the contents of the log file on the Factorio forums.
Corbald
Burner Inserter
Burner Inserter
 
Posts: 8
Joined: Wed May 21, 2014 1:41 am

Re: [0.12.x] Cursed PI - v0.0.2

Postby Talguy » Sat Aug 01, 2015 10:21 am

Going to try this, I'm guessing this is going to be very popular and make the other inserter mods obsolete.

Are these supported for blueprints?
Talguy
Fast Inserter
Fast Inserter
 
Posts: 103
Joined: Tue Apr 29, 2014 8:54 pm

Re: [0.12.x] Cursed PI - v0.0.2

Postby DreamSmith » Sat Aug 01, 2015 11:39 am

This is awesome, genius! If you are willing to expand to all variations of close, fast, smart, or apply your code to the Dytech insterters that would be perfect.
DreamSmith
Inserter
Inserter
 
Posts: 33
Joined: Wed Mar 26, 2014 7:43 pm

Re: [0.12.x] Cursed PI - v0.0.2

Postby L0771 » Sat Aug 01, 2015 10:02 pm

SHiRKiT wrote:Loved the concept, really useful in tight spaces!


I've stolen the idea from a request, i like make mods but i have no idea about what.

Corbald wrote:Burner Inserter (PI) causes Unhandled exception and crashes the game when it first tries to fuel it's self.

Game version: 12.2

Crash Log
Code: Select all
   0.003 2015-08-01 00:58:58; Factorio 0.12.2 (Build 16229, win64)
   0.003 Operating system: Windows 10
   0.003 Read data path: C:/Program Files/Factorio/data
   0.003 Write data path: C:/Users/corba_000/AppData/Roaming/Factorio
   0.003 Binaries path: C:/Program Files/Factorio/bin
   0.215 Initialised Direct3D: AMD Radeon HD 7640G; driver: aticfx64.dll 8.17.10.1404
   0.277 Turning off Align To V-Sync because desktop composition was detected (ie. Windows Aero).
   0.277 Graphics options: [FullScreen: true] [VSync: true] [UIScale: 100%] [MultiSampling: OFF] [Graphics quality: low] [Video memory usage: all]
   0.481 Loading mod core 0.0.0 (data.lua)
   0.487 Loading mod base 0.12.2 (data.lua)
   0.642 Loading mod Cursed-PI 0.0.2 (data.lua)
   0.828 Loading mod FARL 0.3.14 (data.lua)
   1.005 Loading mod Landfill 2.1.5 (data.lua)
   1.173 Loading mod LongLargeChests 0.12.6 (data.lua)
   1.354 Loading mod RailLogicSystem 0.0.6 (data.lua)
   1.710 Loading mod RailTanker 1.0.1 (data.lua)
   1.869 Loading mod SimpleTeleporters 0.0.1 (data.lua)
   2.038 Loading mod TheFatController 0.2.4 (data.lua)
   2.254 Loading mod Treefarm-Lite 0.2.0 (data.lua)
   2.424 Loading mod circuitgui 0.0.1 (data.lua)
   2.603 Loading mod color-coding 1.0.1 (data.lua)
   2.809 Loading mod tree_collision 0.2.0 (data.lua)
   3.029 Loading mod Treefarm-AC 0.2.1 (data.lua)
   3.283 Loading mod FARL 0.3.14 (data-updates.lua)
   3.491 Loading mod rso-mod 1.2.9 (data-updates.lua)
   6.378 Initial atlas bitmap size is 16384
   6.383 Created atlas bitmap 16384x5898
  43.935 Info Updater.cpp:720: Downloading https://www.factorio.com/updater/get-available-versions?username=Corbald&token=<private>&apiVersion=2
  44.802 0 packages available to download (experimental updates enabled).
  44.859 Factorio initialised
  51.991 Loading map C:/Users\corba_000\AppData\Roaming\Factorio\saves\_autosave2.zip
  52.048 Info Scenario.cpp:160: Map version 0.12.2-4
  52.418 Info LocaleProvider.cpp:141: Using locale files from the pre 0.11.0 structure (__Treefarm-Lite__/script-locale/en.cfg)
Factorio crashed. Generating symbolized stacktrace, please wait ...
c:\temp\factorio-746f8a36\libraries\stackwalker\stackwalker.cpp (923): StackWalker::ShowCallstack
c:\temp\factorio-746f8a36\src\util\logger.cpp (283): Logger::writeStacktrace
c:\temp\factorio-746f8a36\src\util\logger.cpp (337): Logger::logStacktrace
c:\temp\factorio-746f8a36\src\util\crashhandler.cpp (79): CrashHandler::writeStackTrace
c:\temp\factorio-746f8a36\src\util\crashhandler.cpp (88): CrashHandler::SehHandler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A55E02CE)
00007FF8A55E02CE (KERNELBASE): (filename not available): UnhandledExceptionFilter
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A9B48992)
00007FF8A9B48992 (ntdll): (filename not available): memset
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A9B33F66)
00007FF8A9B33F66 (ntdll): (filename not available): _C_specific_handler
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A9B4633D)
00007FF8A9B4633D (ntdll): (filename not available): _chkstk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A9AC3C00)
00007FF8A9AC3C00 (ntdll): (filename not available): RtlWalkFrameChain
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A9B4544A)
00007FF8A9B4544A (ntdll): (filename not available): KiUserExceptionDispatcher
c:\temp\factorio-746f8a36\libraries\allegro\addons\audio\kcm_mixer_helpers.inc (185): linear_spl32
c:\temp\factorio-746f8a36\libraries\allegro\addons\audio\kcm_mixer.c (340): read_to_mixer_linear_float_32
c:\temp\factorio-746f8a36\libraries\allegro\addons\audio\kcm_mixer.c (389): _al_kcm_mixer_read
c:\temp\factorio-746f8a36\libraries\allegro\addons\audio\kcm_mixer.c (389): _al_kcm_mixer_read
c:\temp\factorio-746f8a36\libraries\allegro\addons\audio\dsound.cpp (223): _dsound_update
c:\temp\factorio-746f8a36\libraries\allegro\src\threads.c (80): thread_func_trampoline
c:\temp\factorio-746f8a36\libraries\allegro\src\win\wxthread.c (38): thread_proc_trampoline
f:\dd\vctools\crt\crtw32\startup\threadex.c (376): _callthreadstartex
f:\dd\vctools\crt\crtw32\startup\threadex.c (354): _threadstartex
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A5F12D92)
00007FF8A5F12D92 (KERNEL32): (filename not available): BaseThreadInitThunk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FF8A9AB9F64)
00007FF8A9AB9F64 (ntdll): (filename not available): RtlUserThreadStart
 231.262 Error Util.cpp:46: Unexpected error occurred. You can help us to solve the problem by posting the contents of the log file on the Factorio forums.


hmmm the mod is very simple, i've created 7 * 8 inserters (7 possibles convinations of OUT for every IN and 8 possibles IN), like a grid:
1-2-3
4-5-6
7-8-9
If you want a inserter from 1 to 6 the inserter is called cursed-basic-inserter_1_6 (can't IN and OUT in the same position and position 5 can't be In or OUT)
-- I know, i can make it with 7 * 2 and all possibles rotarions, but is easy for me with this code...
With this i want to say, this mod only works between build the inserter until you click Accept :)
I can't reproduce this error.
I can add 1 wood to burner inserter, with this may solve the problem?

Talguy wrote:Going to try this, I'm guessing this is going to be very popular and make the other inserter mods obsolete.

I don't want that, i only want ... i don't know, i'm only a modder, i do mods :/

Talguy wrote:Are these supported for blueprints?

:o no
wtf
Image

I don't know why, but i'll solve it.

DreamSmith wrote:This is awesome, genius! If you are willing to expand to all variations of close, fast, smart, or apply your code to the Dytech insterters that would be perfect.

Thanks you.
In the next version i'll make a script, if he wants add his inserters i have no problem :)
User avatar
L0771
Filter Inserter
Filter Inserter
 
Posts: 508
Joined: Tue Jan 14, 2014 1:51 pm
Location: Argentina

Re: [0.12.x] Cursed PI - v0.0.2

Postby DreamSmith » Sat Aug 01, 2015 11:42 pm

Is there a problem with the sound files, get a squeel when the basic one is working.
DreamSmith
Inserter
Inserter
 
Posts: 33
Joined: Wed Mar 26, 2014 7:43 pm

Re: [0.12.x] Cursed PI - v0.0.2

Postby L0771 » Sun Aug 02, 2015 12:47 am

DreamSmith wrote:Is there a problem with the sound files, get a squeel when the basic one is working.

yep, and sound is useless, i'll erase all sounds.
User avatar
L0771
Filter Inserter
Filter Inserter
 
Posts: 508
Joined: Tue Jan 14, 2014 1:51 pm
Location: Argentina

Re: [0.12.x] Cursed PI - v0.0.2

Postby Corbald » Sun Aug 02, 2015 10:00 am

Yeah, I love this idea. Still getting crash from the burner inserters, but I don't think it's just them. The sound squeal is present in all inserters and sometimes regular speed inserters (PI) crash the game. Can't seem to come up with reproducible method... dunno. I'd hate to have to switch to the other Side Inserters mod (no offence to it's author) because it doesn't support corner angles, AND because it clutters the build menu. I don't want to switch over to it then have to pull them all out to replace with your mod... not sure how I want to handle this. :/
Corbald
Burner Inserter
Burner Inserter
 
Posts: 8
Joined: Wed May 21, 2014 1:41 am

Re: [0.12.x] Cursed PI - v0.0.2

Postby GotLag » Sun Aug 02, 2015 3:37 pm

Setting match_progress_to_activity to false in the entity definitions appears to stop the squealing/squeaking.

If you place a second programmable inserter before closing the GUI from the first, it throws an error (frame already exists) and boots you back to the main menu.
GotLag
Filter Inserter
Filter Inserter
 
Posts: 473
Joined: Sat May 03, 2014 3:32 pm

Re: [0.12.x] Cursed PI - v0.0.2

Postby L0771 » Sun Aug 02, 2015 11:56 pm

GotLag wrote:Setting match_progress_to_activity to false in the entity definitions appears to stop the squealing/squeaking.

If you place a second programmable inserter before closing the GUI from the first, it throws an error (frame already exists) and boots you back to the main menu.

Thanks you!
I'm finishing the script to make all inserters (1/4 than before) and i'll upload a new version.
User avatar
L0771
Filter Inserter
Filter Inserter
 
Posts: 508
Joined: Tue Jan 14, 2014 1:51 pm
Location: Argentina

Re: [0.12.x] Cursed PI - v0.0.3

Postby L0771 » Mon Aug 03, 2015 6:02 am

Upgraded v0.0.3
My changelog is sleepy, can see all changes here maybe.

v0.0.3
- A lot of scripts
- Added Cursed assembler programmer


hmmm i forgot, blueprint compatible.
User avatar
L0771
Filter Inserter
Filter Inserter
 
Posts: 508
Joined: Tue Jan 14, 2014 1:51 pm
Location: Argentina

Re: [0.12.x] Cursed PI - v0.0.3

Postby orzelek » Mon Aug 03, 2015 6:31 pm

L0771 wrote:Upgraded v0.0.3
My changelog is sleepy, can see all changes here maybe.

v0.0.3
- A lot of scripts
- Added Cursed assembler programmer


hmmm i forgot, blueprint compatible.

Just out of curiosity - what made it incompatible with blueprints?
orzelek
Smart Inserter
Smart Inserter
 
Posts: 3219
Joined: Fri Apr 03, 2015 10:20 am

Re: [0.12.x] Cursed PI - v0.0.3

Postby L0771 » Mon Aug 03, 2015 10:17 pm

orzelek wrote:
L0771 wrote:Upgraded v0.0.3
My changelog is sleepy, can see all changes here maybe.

v0.0.3
- A lot of scripts
- Added Cursed assembler programmer


hmmm i forgot, blueprint compatible.

Just out of curiosity - what made it incompatible with blueprints?


:D I've thought a lot about it!
Possible problems are: a line of code, but my entities are all a copy from base items, but, item? what item? I'm modifying the base... I don't have a item for this entities... Item... Blueprint... OMFG!
I need items! How can a robot build something without a item? but... how can you make a item without a recipe?
I think blueprints needs a recipe, something without a recipe, can't be blueprinted.

Now, how can make 1 item and 1 recipe for every inserter? i have 56 inserters of everyone(168 counting items and recipes for inserter!!)
With v0.0.3 i've implemented about direction, now have 14 recipes of every inserter (1/4), are ONLY 14 inserters, 14 items and 14 recipes for every inserter! But, who can select 1 inserter from 14 inserters with the same icon, calculating direction too? for this i've created Cursed assembler programmer, using every assembler to make your inserter :)
User avatar
L0771
Filter Inserter
Filter Inserter
 
Posts: 508
Joined: Tue Jan 14, 2014 1:51 pm
Location: Argentina

Re: [0.12.x] Cursed PI - v0.0.3

Postby Ralord89 » Thu Aug 06, 2015 1:47 am

I get this error when running it with Reverse Factory mod

Image

I have put this post in this thread and Reverse Factory
User avatar
Ralord89
Inserter
Inserter
 
Posts: 26
Joined: Sat Jul 25, 2015 6:06 am

Re: [0.12.x] Cursed PI - v0.0.3

Postby L0771 » Thu Aug 06, 2015 8:24 am

Ralord89 wrote:I get this error when running it with Reverse Factory mod


Code: Select all
data.raw["recipe"]["cursed-pa"].ingredients = {{"iron-plate",1}}


Add this in the end of the data.lua.
i have this modified for the next version, but i don't want update only for this.
User avatar
L0771
Filter Inserter
Filter Inserter
 
Posts: 508
Joined: Tue Jan 14, 2014 1:51 pm
Location: Argentina

Re: [MOD 0.12.x] Cursed PI - v0.0.3

Postby provet » Sun Aug 23, 2015 10:48 am

Nice mod! Can it be programmed to place on the near/far belt path?
User avatar
provet
Fast Inserter
Fast Inserter
 
Posts: 125
Joined: Thu Feb 12, 2015 9:49 pm

Re: [MOD 0.12.x] Cursed PI - v0.0.3

Postby L0771 » Mon Aug 24, 2015 8:27 am

provet wrote:Nice mod! Can it be programmed to place on the near/far belt path?

You can make a mod and modify distOut here:
cursedPI_addInserter(name,baseRecipe,baseItem,baseEntity,icon,ingredients,ingMult,energy,energyMult,distIn,distOut,othersRecipe,othersItem,othersEntity)

for modders
If you want add your inserter, load your mod after Cursed PI and call this in data.lua
Code: Select all
cursedPI_addInserter(name,baseRecipe,baseItem,baseEntity,icon,ingredients,ingMult,energy,energyMult,distIn,distOut,othersRecipe,othersItem,othersEntity)

name: name of inserter, is the name of recipe, item and entity.
baseRecipe, baseItem, baseEntity: The base to copy this entity, can be a base item or can copy your item.
icon: the for recipe, item, entity
ingredients: if is ~= nil then override base ingredients with this - Can be null
ingMult: use base ingredients incresed - Can be null
energy: must be energy = {energy_per_movement,energy_per_rotation,effectivity,drain}, effectivity if is a burner inserter and drain if is a electric inserter - Can be null
energyMult: use base energy incresed - Can be null
distIn: distance to pickup items (i.e long-handler = 2, basic = 1)
distOut: distance to drop items
othersRecipe, othersItem, othersEntity: can modify what you want, i.e: othersRecipe {enabled = false} or othersItem {subgroup = yourgroup, order = "i[inserter]-p[pro]"}

I.E my inserters:
Code: Select all
cursedPI_addInserter("cursed-burner-inserter","burner-inserter","burner-inserter","burner-inserter",burnerIcon,nil,3,nil,3,1,1,{enabled = false})
cursedPI_addInserter("cursed-basic-inserter","basic-inserter","basic-inserter","basic-inserter",basicIcon,nil,3,nil,3,1,1,{enabled = false})
cursedPI_addInserter("cursed-long-handed-inserter","long-handed-inserter","long-handed-inserter","long-handed-inserter",longIcon,nil,3,nil,3,2,2,{enabled = false})
cursedPI_addInserter("cursed-smart-inserter","smart-inserter","smart-inserter","smart-inserter",smartIcon,nil,3,nil,3,1,1,{enabled = false})
cursedPI_addInserter("cursed-fast-inserter","fast-inserter","fast-inserter","fast-inserter",fastIcon,nil,3,nil,3,1,1,{enabled = false})


And in control.lua add this in your on_init and on_load:
Code: Select all
if remote.interfaces["Cursed-PI"] and remote.interfaces["Cursed-PI"]["addInserter"] then
   local inserter =
   {
      ["name"] = "MyName",
      ["entity"] = "MyEntityName",
      ["recipe"] = "MyRecipeName"
   }
   local temp = remote.call("Cursed-PI","addInserter")
   if temp ~= nil then
      error(temp)
   end
end


I.E 1 or my inserters:
Code: Select all
if remote.interfaces["Cursed-PI"] and remote.interfaces["Cursed-PI"]["addInserter"] then
   local inserter =
   {
      ["name"] = "cursed-basic-inserter",
      ["entity"] = "cursed-basic-inserter",
      ["recipe"] = "cursed-basic-inserter"
   }
   local temp = remote.call("Cursed-PI","addInserter",inserter)
   if temp ~= nil then
      error(temp)
   end
end
User avatar
L0771
Filter Inserter
Filter Inserter
 
Posts: 508
Joined: Tue Jan 14, 2014 1:51 pm
Location: Argentina

Re: [MOD 0.12.x] Cursed PI - v0.0.3

Postby FalcoGer » Thu Aug 27, 2015 12:21 am

i've seen all kinds of variations of this concept. personally i like the one where you click on the actual inserter to change it's orientation and you get a normal inserter of the type back when deconstructing.
I also like the one where there is 4 (short, normal, medium, long) different ranges for output and 2 (standard normal, long) for input separately. where you can set where to place the item on the belt. so with 8 directions to take from, 7 to put things to (pointless to put it back where it came from, so 1 less), 2 variations on the arm length to grab, and 4 variations where to put it, that would make a total of 8*7*4*2 = 448 variations of each and every one inserter type.
FalcoGer
Long Handed Inserter
Long Handed Inserter
 
Posts: 78
Joined: Fri Sep 05, 2014 3:11 pm

Re: [MOD 0.12.x] Cursed PI - v0.0.3

Postby L0771 » Sun Aug 30, 2015 12:20 pm

FalcoGer wrote:i've seen all kinds of variations of this concept. personally i like the one where you click on the actual inserter to change it's orientation and you get a normal inserter of the type back when deconstructing.
I also like the one where there is 4 (short, normal, medium, long) different ranges for output and 2 (standard normal, long) for input separately. where you can set where to place the item on the belt. so with 8 directions to take from, 7 to put things to (pointless to put it back where it came from, so 1 less), 2 variations on the arm length to grab, and 4 variations where to put it, that would make a total of 8*7*4*2 = 448 variations of each and every one inserter type.

ok, but i need more graphics :d
User avatar
L0771
Filter Inserter
Filter Inserter
 
Posts: 508
Joined: Tue Jan 14, 2014 1:51 pm
Location: Argentina

Next

Return to Mods

Who is online

Users browsing this forum: No registered users and 9 guests