MightyPirates / OpenComputers

Home of the OpenComputers mod for Minecraft.
https://oc.cil.li
Other
1.59k stars 431 forks source link

Peaceful-friendliness of recipes #1080

Closed dgelessus closed 9 years ago

dgelessus commented 9 years ago

As one of these lame peaceful mode players I often have some problems crafting a few of the more advanced OC items. Most importantly this includes anything that requires ender pearls, eyes of ender, string or dispensers. Both ender pearls and string are only obtainable through loot chests or villager trade on peaceful mode, and are often much harder to get than on non-peaceful. This is that bad for ender pearls, which are somewhat difficult to get even on non-peaceful, but with strings it is quite ridiculous.

Personally I am fine with occasionally giving myself some mob drops to work around the issue, but it would of course be nicer to have peaceful-friendly variants of problematic recipes available, perhaps as an extra recipe config to keep recipes balanced on non-peaceful. What I would suggest as peaceful-friendly alternative recipes:

Vexatos commented 9 years ago

Well, feel free to provide a peaceful.recipes file to include in OC so others can choose that if they play peaceful mode. It's easy enough to do, just check your config/opencomputers folder for how to do recipe files. I recommend copying default.recipes over to a peaceful.recipes file and make your edits there.

fnuecke commented 9 years ago

I think we should actually take this as the chance to come up with a proper "vanilla" oriented recipe set (aka easymode) and possibly base these changes around that?

In particular in 1.8, the recipes are, relatively speaking, much harder due to the more or less lack of other mods, be that in the area of automining, autocrafting and/or ore processing. The default recipes are pretty much designed with other mods, providing such features, being present in mind.

dgelessus commented 9 years ago

@fnuecke I assume by "easymode" you mean less crafting steps? Personally I don't find that too problematic, I just make a bunch of transistors, chips and PCBs every now and then. Resource-wise I'm okay as well, though that will probably change once I try to make tier 3 stuff.

fnuecke commented 9 years ago

Aye, that seems to be the primary concern for those that do have an issue with the recipes.

Vexatos commented 9 years ago

@fnuecke Actually I got a person hating any kind of microcrafting or even recipes that feel like microcrafting to him to like the default recipes; I do not think that those are a problem anymore. I think a peaceful.recipes file would be pretty nice, though.

fnuecke commented 9 years ago

Hrm, one person is kind of a small sampling size. Though I honestly have a hard time telling if those that do complain actually are still prejudiced and might be referring to the (now) hardmode recipe set (or play a pack that uses that set, or...)

Let's try something: http://strawpoll.me/4149505

Hoping to get a bit of a better idea that way.

dgelessus commented 9 years ago

How about this...

Changes to default.recipes:

inventoryUpgrade {
  input: [[plankWood, hopper, plankWood]
          [dropper, chest, craftingPiston]
          [plankWood, "oc:circuitChip1", plankWood]]
}
inventoryControllerUpgrade {
  input: [[ingotGold, "oc:analyzer", ingotGold]
          [dropper, "oc:circuitChip2", craftingPiston]
          [ingotGold, "oc:materialCircuitBoardPrinted", ingotGold]]
}

New peaceful.recipes:

include file("default.recipes")

redstoneCard2 {
  input: [[blockRedstone, "oc:circuitChip2", diamond]
          ["", "oc:materialCard", ""]]
}
wlanCard {
  input: [[diamond, "oc:circuitChip2", ""]
          ["", "oc:materialCard", ""]]
}
linkedCard {
  input: [[diamond, "", diamond]
          ["oc:lanCard", "oc:materialInterweb", "oc:lanCard"]
          ["oc:circuitChip3", "", "oc:circuitChip3"]]
  output: 2 # Note: all resulting cards are linked to each other.
}

angelUpgrade {
  input: [[ingotIron, diamond, ingotIron]
          ["oc:circuitChip1", pistonStickyBase, "oc:circuitChip1"]
          [ingotIron, diamond, ingotIron]]
}
chunkloaderUpgrade {
  input: [[ingotGold, glass, ingotGold]
          ["oc:circuitChip3", diamond, "oc:circuitChip3"]
          [obsidian, "oc:materialCircuitBoardPrinted", obsidian]]
}
inventoryUpgrade {
  input: [[plankWood, hopper, plankWood]
          [dropper, chest, craftingPiston]
          [plankWood, "oc:circuitChip1", plankWood]]
}
inventoryControllerUpgrade {
  input: [[ingotGold, "oc:analyzer", ingotGold]
          [dropper, "oc:circuitChip2", craftingPiston]
          [ingotGold, "oc:materialCircuitBoardPrinted", ingotGold]]
}
signUpgrade {
  input: [[ingotIron, dyeBlack, ingotIron]
          ["oc:circuitChip1", stickWood, "oc:circuitChip1"]
          [ingotIron, craftingPiston, ingotIron]]
}
tankUpgrade {
  input: [[plankWood, fenceIron, plankWood]
          [dropper, cauldron, craftingPiston]
          [plankWood, "oc:circuitChip1", plankWood]]
}
tankControllerUpgrade {
  input: [[ingotGold, glassBottle, ingotGold]
          [dropper, "oc:circuitChip2", craftingPiston]
          [ingotGold, "oc:materialCircuitBoardPrinted", ingotGold]]
}

inkCartridgeEmpty {
  input: [[nuggetIron, dropper, nuggetIron],
          ["oc:materialTransistor", bucket, "oc:materialTransistor"],
          [nuggetIron, "oc:materialCircuitBoardPrinted", nuggetIron]]
}

interweb {
  input: [[redstone, {block="minecraft:wool", subID=9}, redstone]
          [{block="minecraft:wool", subID=9}, diamond, {block="minecraft:wool", subID=9}]
          [redstone, {block="minecraft:wool", subID=9}, redstone]]
}

geolyzer {
  input: [[ingotGold, compass, ingotGold]
          [diamond, "oc:circuitChip2", diamond]
          [ingotGold, "oc:materialCircuitBoardPrinted", ingotGold]]
}
hologram2 {
  input: [["oc:circuitChip3", glass, "oc:circuitChip3"]
          ["oc:materialCircuitBoardPrinted", blockDiamond, "oc:materialCircuitBoardPrinted"]
          [obsidian, yellowDust, obsidian]]
}

(I could fork and PR already, but that would probably result in more individual commits than necessary. I'll do that once we're done discussing.)

gjgfuj commented 9 years ago

Since you have the changes there anyway, you could just fork it and commit that whole thing?

On Sat, 18 Apr 2015 10:37 pm dgelessus notifications@github.com wrote:

How about this...

Changes to default.recipes:

inventoryUpgrade { input: [[plankWood, hopper, plankWood] [dropper, chest, craftingPiston] [plankWood, "oc:circuitChip1", plankWood]] } inventoryControllerUpgrade { input: [[ingotGold, "oc:analyzer", ingotGold] [dropper, "oc:circuitChip2", craftingPiston] [ingotGold, "oc:materialCircuitBoardPrinted", ingotGold]] }

New peaceful.recipes:

include file("default_.recipes")

redstoneCard2 { input: [[blockRedstone, "oc:circuitChip2", diamond] ["", "oc:materialCard", ""]] } wlanCard { input: [[diamond, "oc:circuitChip2", ""] ["", "oc:materialCard", ""]] } linkedCard { input: [[diamond, "", diamond] ["oc:lanCard", "oc:materialInterweb", "oc:lanCard"] ["oc:circuitChip3", "", "oc:circuitChip3"]] output: 2 # Note: all resulting cards are linked to each other. }

angelUpgrade { input: [[ingotIron, diamond, ingotIron] ["oc:circuitChip1", pistonStickyBase, "oc:circuitChip1"] [ingotIron, diamond, ingotIron]] } chunkloaderUpgrade { input: [[ingotGold, glass, ingotGold] ["oc:circuitChip3", diamond, "oc:circuitChip3"] [obsidian, "oc:materialCircuitBoardPrinted", obsidian]] } inventoryUpgrade { input: [[plankWood, hopper, plankWood] [dropper, chest, craftingPiston] [plankWood, "oc:circuitChip1", plankWood]] } inventoryControllerUpgrade { input: [[ingotGold, "oc:analyzer", ingotGold] [dropper, "oc:circuitChip2", craftingPiston] [ingotGold, "oc:materialCircuitBoardPrinted", ingotGold]] } signUpgrade { input: [[ingotIron, dyeBlack, ingotIron] ["oc:circuitChip1", stickWood, "oc:circuitChip1"] [ingotIron, craftingPiston, ingotIron]] } tankUpgrade { input: [[plankWood, fenceIron, plankWood] [dropper, cauldron, craftingPiston] [plankWood, "oc:circuitChip1", plankWood]] } tankControllerUpgrade { input: [[ingotGold, glassBottle, ingotGold] [dropper, "oc:circuitChip2", craftingPiston] [ingotGold, "oc:materialCircuitBoardPrinted", ingotGold]] }

inkCartridgeEmpty { input: [[nuggetIron, dropper, nuggetIron], ["oc:materialTransistor", bucket, "oc:materialTransistor"], [nuggetIron, "oc:materialCircuitBoardPrinted", nuggetIron]] }

interweb { input: [[redstone, {block="minecraft:wool", subID=9}, redstone] [{block="minecraft:wool", subID=9}, diamond, {block="minecraft:wool", subID=9}] [redstone, {block="minecraft:wool", subID=9}, redstone]] }

geolyzer { input: [[ingotGold, compass, ingotGold] [diamond, "oc:circuitChip2", diamond] [ingotGold, "oc:materialCircuitBoardPrinted", ingotGold]] } hologram2 { input: [["oc:circuitChip3", glass, "oc:circuitChip3"] ["oc:materialCircuitBoardPrinted", blockDiamond, "oc:materialCircuitBoardPrinted"] [obsidian, yellowDust, obsidian]] }

(I could fork and PR, but that would probably result in more individual commits than necessary.)

— Reply to this email directly or view it on GitHub https://github.com/MightyPirates/OpenComputers/issues/1080#issuecomment-94162850 .

dgelessus commented 9 years ago

@gjgfuj

(I could fork and PR already, but that would probably result in more individual commits than necessary. I'll do that once we're done discussing.)

Vexatos commented 9 years ago

@dgelessus Why are you doing changes to default.recipes?

dgelessus commented 9 years ago

@Vexatos Because droppers make more sense than dispensers in these cases anyway.

This might even be reasonable in general, for "game logic" reasons. After all, you probably want to drop those snowballs into the chest instead of throwing them.

Vexatos commented 9 years ago

Fair enough. I am sure a Pull Request will be much appreciated. Don't worry about the commit spam.

fnuecke commented 9 years ago

Don't worry about the commit spam if you know how to squash

FTFY.

(Seriously, for simple changes, I'd appreciate it if there was no commit spam.)

fnuecke commented 9 years ago

But yeah, looks good to me. If there's nothing else that needs changing, make that PR and I'll merge it.

dgelessus commented 9 years ago

1084

I assume that master-MC1.7.10 is the right branch to PR to?

fnuecke commented 9 years ago

That's the one.