<<Prev
Next>>
Scroll to Bottom
Stuff goes here
L1[00:33:59] ⇦
Quits: Delaxarnyazer
(~Delaxarny@2a02:a44e:91ce:1:80dc:7855:5421:3308) (Ping timeout:
186 seconds)
L2[00:36:33] ⇨
Joins: Delaxarnyazer
(~Delaxarny@ip56572345.direct-adsl.nl)
L3[00:47:22] ⇦
Quits: smbarbour (~smbarbour@c-73-211-171-154.hsd1.il.comcast.net)
(Ping timeout: 201 seconds)
L4[00:50:31] ***
TTFTCUTS is now known as TTFT|Away
L5[00:52:42] ⇨
Joins: Ipsis
(~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk)
L6[00:54:21] ⇨
Joins: smbarbour
(~smbarbour@c-73-211-171-154.hsd1.il.comcast.net)
L7[01:02:48] <McJty>
"before:xnet@[" + RFTools.MIN_XNET_VER + ",);"
+
L8[01:02:53] <McJty> That should not be a
hard dependency right?
L9[01:03:04] <McJty> But forge on 1.12 is
complaining if xnet is not present anyway
L10[01:04:15] <mezz> can I see the
resulting client log?
L11[01:04:39] <mezz> (yes that sounds like
a bug)
L12[01:05:22] <McJty> I will ask for
it
L14[01:05:44] <McJty> And I asked for the
log
L15[01:05:55] ⇦
Quits: secknv (~secknv@bl14-176-22.dsl.telepac.pt) (Ping timeout:
383 seconds)
L16[01:06:04] <mezz> thanks
L17[01:07:15] <mezz> it is possible that
they have an old xnet
L18[01:07:23] <mezz> the client log will
show
L19[01:07:49] <McJty> XNet is new according
to the ticket
L20[01:07:52] <McJty> XNet
1.12-1.3.4beta2
L21[01:07:58] <McJty> That was released 15
minutes ago
L22[01:08:34] <mezz> ticket may be wrong,
hard to know for sure why they got that screen
L23[01:08:57] <mezz> if they have no xnet
and still got that error then we will have to do some digging in
fml to see what's going on
L24[01:10:30] ⇦
Quits: killjoy (~killjoy@2606:a000:1118:8126:e5b9:4f24:e000:d804)
(Ping timeout: 204 seconds)
L25[01:10:56] ***
KnightMiner_ is now known as KnightMiner
L26[01:11:05] <capitalthree> if I use an AT
to make a private member function public, can I override it in a
subclass?
L27[01:11:22] <capitalthree> (specifically,
can I make an EntityItem subclass that overrides
combineItems)
L28[01:11:27] <mezz> yes, in that case you
should consider making it protected though
L29[01:11:45] <capitalthree> as in package
protected? but my mod is in a different package from
minecraft
L30[01:11:53] <KnightMiner> Regular
protected
L31[01:12:00] <capitalthree> regular
protected *is* package protected in java
L32[01:12:02] <KnightMiner> It allows
overriding, but not accessing outside the class
L33[01:12:05] <mezz> package protected is
different from protected
L34[01:12:10] <McJty> capitalthree, no,
that's not the same
L35[01:12:13] <capitalthree> oh :O
L36[01:12:16] <KnightMiner> Package
protected is default, no keyword
L37[01:12:19] <capitalthree> oh right
L38[01:12:21] <capitalthree> ok silly me
sorry
L39[01:12:27] <mezz> no worries
L40[01:12:29] <capitalthree> protected is
class and subclasses right?
L41[01:12:35] <KnightMiner> Yep
L42[01:12:39] <capitalthree> ok yeah that
should work
L43[01:13:30] <mezz> just be very careful,
you're kind of entering the dark side of ATs there by changing
behavior that is normally private :)
L44[01:13:32] <capitalthree> and while I'm
asking, are there any major gotchas to spawning subclassed
EntityItems?
L45[01:13:47] <capitalthree> yeah that's
fair. I wish I could do it without ATs
L46[01:14:03] <mezz> not sure, you're
entering new territory
L47[01:14:13] <capitalthree> but all I'm
going to do is make combineItems immediately return false, so at
least it won't be adding complex behavior
L48[01:14:17] <capitalthree> it can already
return false in various circumstances
L50[01:18:00] <mezz> why do you want them
to never combine?
L51[01:18:50] <mezz> you can do something
similar by setting the max stack size to 1 on items. depends on
your goals though
L52[01:19:12] ⇦
Quits: McJty (~jorrit@94-224-152-129.access.telenet.be) (Quit:
Leaving)
L53[01:22:03] <capitalthree> mezz: I want
to make a "volatile ammo"-like mod where items that are
going to despawn start to do stuff, eg, stacks of blocks start
placing themselves. I want the stack to split up as it places
blocks, so it gets a good distribution (and doesn't just make a
snake), and I want to prevent them recombining during that
L54[01:22:16] ⇨
Joins: CoderPuppy (~cpup@32.218.119.40)
L55[01:22:33] <capitalthree> so they will
be EntityItems representing existing blocks/items from vanilla and
other mods. I don't want to have to subclass the items
themselves
L56[01:23:29] <mezz> neat
L57[01:23:45] ⇦
Quits: cpup (~cpup@32.218.118.169) (Ping timeout: 201
seconds)
L58[01:24:36] <capitalthree> :) hopefully
it will be fun
L59[01:24:46] ⇨
Joins: Upthorn
(~ogmar@108-204-125-173.lightspeed.frokca.sbcglobal.net)
L60[01:27:03] <capitalthree> it's actually
going to be bolted onto one of my existing mods, as a very
out-of-character joke feature (but disabled by default)
L61[01:37:19] ⇨
Joins: cpup (~cpup@32.218.119.61)
L62[01:39:00] ⇦
Quits: CoderPuppy (~cpup@32.218.119.40) (Ping timeout: 204
seconds)
L63[01:40:43] <capitalthree> "your
access transformers be broke!"
L64[01:40:47] <capitalthree> well that's
detailed >_>
L65[01:40:55] <kashike> it shows
details.
L66[01:41:00] <capitalthree> where?
L67[01:41:04] <kashike> right below
that
L68[01:41:05] <kashike> lol
L69[01:41:22] <mezz> !!gm
combineItems
L70[01:41:23] <MCPBot_Reborn> === MC 1.12:
net/minecraft/entity/item/EntityItem.combineItems (acj.a) UNLOCKED
===
L71[01:41:24] <MCPBot_Reborn> Name : a
=> func_70289_a => combineItems
L72[01:41:24] <MCPBot_Reborn> Descriptor :
(Lacj;)Z => (Lnet/minecraft/entity/item/EntityItem;)Z
L73[01:41:25] <MCPBot_Reborn> AT : public
net.minecraft.entity.item.EntityItem
func_70289_a(Lnet/minecraft/entity/item/EntityItem;)Z #
combineItems
L74[01:41:26] <MCPBot_Reborn> Comment :
Tries to merge this item with the item passed as the parameter.
Returns true if successful. Either this item or the other item will
be removed from the world.
L75[01:41:26] <kashike> or, above,
rather
L76[01:41:27] <MCPBot_Reborn> SRG Params :
EntityItem p_70289_1_
L77[01:41:27] <MCPBot_Reborn> MCP Params :
EntityItem other
L78[01:41:28] <MCPBot_Reborn> Last Change:
2012-11-19 04:35:41-05:00 (immibis)
L79[01:41:40] <mezz> you can grab the AT
line from the bot
L80[01:42:01] <immibis> what did i last
change? oh, nothing important
L82[01:42:09] <kashike> you didn't change
anything
L83[01:42:10] <kashike> :P
L84[01:42:23] ⇨
Joins: quadraxis
(~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
L85[01:42:32] <immibis> how many
narcissists does it take to change a lightbulb? one to hold the
bulb while the world revolves around it
L86[01:43:49] <capitalthree> kashike: well
it didn't for me, and adding --info and --stacktrace didn't help
either D:
L87[01:44:03] <capitalthree> 1 Broken
Access Transformer lines: --- net.minecraft.entity.item.EntityItem
func_70289_a
L88[01:44:06] <capitalthree> that's all the
info I have
L89[01:44:19] <kashike> and that's all you
need to know to fix it
L90[01:44:21] <kashike> :P
L91[01:44:25] <kashike> that line is
broken, fix it
L92[01:44:33] <kashike> public
net.minecraft.entity.item.EntityItem
func_70289_a(Lnet/minecraft/entity/item/EntityItem;)Z #
combineItems
L93[01:44:38] <capitalthree> in my actual
file, I have protected
L94[01:44:43] <capitalthree> is protected
not allowed for an AT?
L95[01:44:49] <kashike> it is
L96[01:44:49] <capitalthree> mezz had
suggested it
L97[01:44:51] <mezz> I've used it
before
L98[01:44:56] <kashike> so long as you
aren't going from public -> protected
L99[01:45:02] <mezz> maybe you spelled
protected wrong?
L100[01:45:10] <capitalthree> wait I see
what kashike is getting at
L101[01:45:12] <capitalthree> I ommitted
the parameter
L102[01:45:16] <capitalthree> and return
type
L103[01:45:22] <mezz> welp
L104[01:45:25] <kashike> :P
L105[01:45:28] <mezz> that'll do it
heh
L106[01:45:41] <kashike> that's like
pooring some milk and cereal
L107[01:45:43] <capitalthree> sorry, I am
just a noob modder with big dreams!
L108[01:45:44] <kashike> but without a
bowl
L109[01:45:45] <capitalthree> trying it
again
L110[01:46:58] <kashike> darn it, closed a
sublime tab without saving it accidentally
L111[01:47:08] <kashike> le sigh
L112[01:48:43] <KnightMiner> I've found
ATs generally work as long as you are not going from protected to
public, that breaks so many things with classes extending
classes
L113[01:49:04] <KnightMiner> Private to
protected I've used before IIRC
L114[01:56:28] ⇦
Quits: Upthorn
(~ogmar@108-204-125-173.lightspeed.frokca.sbcglobal.net) (Read
error: Connection reset by peer)
L115[01:56:52]
⇨ Joins: Upthorn
(~ogmar@108-204-125-173.lightspeed.frokca.sbcglobal.net)
L116[01:59:44] <capitalthree> kashike:
yeah it's all good now, much thanks!
L117[01:59:58] <kashike> \o/
L118[02:00:03] <MCPBot_Reborn> [TEST CSV]
Pushing snapshot_20170701 mappings to Forge Maven.
L119[02:00:07] <MCPBot_Reborn> [TEST CSV]
Maven upload successful for mcp_snapshot-20170701-1.12.zip
(mappings = "snapshot_20170701" in build.gradle).
L120[02:00:17] <MCPBot_Reborn> Semi-live
(every 10 min), Snapshot (daily ~3:00 EST), and Stable (committed)
MCPBot mapping exports can be found here:
http://export.mcpbot.bspk.rs/
L121[02:00:50] <KnightMiner> Did we ever
get a mapping for iron nuggets by the way?
L122[02:00:56] <kashike> yes
L123[02:01:01] <KnightMiner> I recall
seeing that as field_###### in Forge
L124[02:01:04] <KnightMiner> Oh,
good
L125[02:01:06] <kashike> !!gf
Item.IRON_NUGGET
L126[02:01:07] <MCPBot_Reborn> No results
found.
L127[02:01:11] <kashike> urg
L128[02:01:12] <mezz> heh
L129[02:01:34] <kashike> ItemS.
L130[02:01:36] <kashike> !!gf
field_191525_da
L131[02:01:37] <MCPBot_Reborn> === MC
1.12: net/minecraft/init/Items.IRON_NUGGET (aip.da) UNLOCKED
===
L132[02:01:38] <MCPBot_Reborn> Name : da
=> field_191525_da => IRON_NUGGET
L133[02:01:38] <MCPBot_Reborn> Descriptor
: Lail; => Lnet/minecraft/item/Item;
L134[02:01:39] <MCPBot_Reborn> Comment :
None
L135[02:01:40] <MCPBot_Reborn> Last
Change: 2017-06-13 12:48:43.441810-04:00 (kashike)
L136[02:01:57] <kashike> doing ten things
at once :P
L137[02:02:23] <KnightMiner> Where does
someone go to work on those mappings?
L138[02:02:39] <quadraxis> all the 1.11.1
stuff got added with the 1.12 mappings
L139[02:02:48] <kashike> KnightMiner:
#mcpbot, I'll explain in there :)
L140[02:05:37] ⇦
Quits: kinggoesgaming (uid23106@id-23106.ealing.irccloud.com)
(Quit: Connection closed for inactivity)
L141[02:15:31] ⇦
Quits: bilde2910 (bilde2910@178.51-174-170.customer.lyse.net) (Ping
timeout: 383 seconds)
L142[02:17:20]
⇨ Joins: bilde2910
(bilde2910@178.51-174-170.customer.lyse.net)
L143[02:18:04]
⇨ Joins: c64cosmin (kiwiirc@79.114.70.41)
L144[02:21:05] ⇦
Quits: c64cosmin (kiwiirc@79.114.70.41) (Client Quit)
L145[02:30:14] ⇦
Quits: KnightMiner
(~KnightMin@adsl-75-5-64-185.dsl.emhril.sbcglobal.net) (Quit:
Leaving)
L146[02:33:29] <capitalthree> when
creating a block from an ItemBlock should I use
item.block.blockState.baseState?
L147[02:34:29]
⇨ Joins: McJty
(~jorrit@94-224-152-129.access.telenet.be)
L148[02:36:04] <kashike> what?
L149[02:38:33]
⇨ Joins: Hgreb
(~Hgrebnedn@ptr-908g3ori03smp1885um.18120a2.ip6.access.telenet.be)
L150[02:44:31] ⇦
Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 383
seconds)
L151[02:58:10] ⇦
Quits: Davnit (~Davnit@72-189-115-20.res.bhn.net) (Ping timeout:
204 seconds)
L152[02:59:06]
⇨ Joins: c64cosmin (kiwiirc@79.114.70.41)
L153[03:03:42] <capitalthree> kashike:
right now the line looks like:
entityItem.world.setBlockState(entityItem.position,
type.block.blockState.baseState)
L154[03:03:49] <capitalthree> I am still
mocking this up, I will be able to test it soon in any case
L155[03:04:17] <capitalthree> entityItem:
EntityItem and type: Item
L157[03:10:32]
⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L158[03:13:16]
⇨ Joins: Noppes
(~Noppes@ip56530f2e.direct-adsl.nl)
L159[03:17:52] <capitalthree> yeah I was
looking at that
L160[03:18:26] ⇦
Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 204
seconds)
L161[03:19:35]
⇨ Joins: CoderPuppy (~cpup@32.218.119.182)
L162[03:20:58] ⇦
Quits: cpup (~cpup@32.218.119.61) (Ping timeout: 204
seconds)
L163[03:23:59]
⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L164[03:25:05]
⇨ Joins: Searge_DP
(~Searge@c83-250-150-134.bredband.comhem.se)
L165[03:25:17] ⇦
Quits: Spottedleaf
(~Spottedle@node-1w7jr9qqos9g0vkt9odkrty2o.ipv6.telus.net) (Killed
(NickServ (GHOST command used by Spottedleaf_)))
L166[03:25:21]
⇨ Joins: Spottedleaf
(~Spottedle@node-1w7jr9qqos9g0vkt9odkrty2o.ipv6.telus.net)
L167[03:25:21]
⇨ Joins: Seppon
(~Noppes@ip56530f2e.direct-adsl.nl)
L168[03:28:24] <capitalthree> oh wow. it
worked almost how I wanted on my first try
L169[03:28:31] <capitalthree> I am a lucky
kitty today. also this is really funny
L170[03:29:14] ⇦
Quits: Meronat (uid190493@id-190493.highgate.irccloud.com) (Quit:
Connection closed for inactivity)
L171[03:30:26] ⇦
Quits: SeargeDP (~Searge@c83-250-150-134.bredband.comhem.se) (Ping
timeout: 383 seconds)
L172[03:30:55] ⇦
Quits: Noppes (~Noppes@ip56530f2e.direct-adsl.nl) (Ping timeout:
383 seconds)
L173[03:30:55] ⇦
Quits: Actuarius (~Actuarius@195.91.246.187) (Ping timeout: 383
seconds)
L174[03:31:37]
⇨ Joins: Actuarius (~Actuarius@195.91.246.187)
L175[03:33:09]
⇨ Joins: cpup (~cpup@32.218.119.204)
L176[03:38:10] ⇦
Quits: CoderPuppy (~cpup@32.218.119.182) (Ping timeout: 383
seconds)
L177[03:41:43] ⇦
Quits: Cornelia (~Nel@c-75-71-231-133.hsd1.co.comcast.net) (Ping
timeout: 186 seconds)
L178[03:48:31] <capitalthree> ok, so my
mod can create illegal arrangements of chests >_> is there a
general-case way to check if a setBlockState results in an illegal
configuration?
L179[03:48:31] ***
PaleOff is now known as PaleoCrafter
L180[03:57:42] ⇦
Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 204
seconds)
L181[03:58:14] <c64cosmin> updating the
Forge MDK implies downloading the archive, pasting it in my
environment and re-executing the gradlew.bat?
L182[03:58:40] <PaleoCrafter> you could
just change your own build.gradle
L183[03:59:50] ⇦
Quits: McJty (~jorrit@94-224-152-129.access.telenet.be) (Remote
host closed the connection)
L184[04:00:23] ⇦
Quits: Cisien (~Cisien@u18549070.onlinehome-server.com) (Ping
timeout: 201 seconds)
L185[04:07:40]
⇨ Joins: Hgrebnednav_
(~Hgrebnedn@ptr-908g3otq75flp80u6yj.18120a2.ip6.access.telenet.be)
L186[04:09:06] ⇦
Quits: Shawn|i7-Q720M
(~shawn156@c-73-153-76-80.hsd1.co.comcast.net) (Quit:
Leaving)
L187[04:09:57]
⇨ Joins: Cisien
(~Cisien@u18549070.onlinehome-server.com)
L188[04:10:52] ⇦
Quits: Hgreb
(~Hgrebnedn@ptr-908g3ori03smp1885um.18120a2.ip6.access.telenet.be)
(Ping timeout: 201 seconds)
L189[04:13:55]
⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L190[04:14:45] ⇦
Quits: bilde2910 (bilde2910@178.51-174-170.customer.lyse.net) (Ping
timeout: 190 seconds)
L191[04:16:31]
⇨ Joins: bilde2910
(bilde2910@178.51-174-170.customer.lyse.net)
L192[04:34:38] <capitalthree> is using
reflection preferrable to an AT for just reading private
members?
L193[04:40:54] <PaleoCrafter> most
definitely
L194[04:41:37] <capitalthree> ok
cool
L195[04:41:45] <capitalthree> fun fact: I
can pretty much pull off fake access transformers in kotlin
L196[04:42:02] ⇦
Quits: bilde2910 (bilde2910@178.51-174-170.customer.lyse.net) (Ping
timeout: 204 seconds)
L197[04:42:13] <capitalthree> (by creating
an extension function on the type that wraps the reflection call,
with a standard getter name, and then relying on kotlin's fake
member access syntax)
L198[04:42:35] <capitalthree> so my
calling code looks the same either way :D
L199[04:43:42] <capitalthree> well for
member variables anyways. pretty sure I still have to use an access
transformer to subclass something and override a private method.
right?
L200[04:44:04]
⇨ Joins: bilde2910
(bilde2910@178.51-174-170.customer.lyse.net)
L201[04:45:33] <capitalthree> so minecraft
apparently loves to spawn lots of fake EntityItems in various
situations and I have to learn to sort them out from the real ones
in despawn events xD
L202[05:02:47]
⇨ Joins: h5h77
(~h5h77@2a02:8108:4b40:907:922b:34ff:feae:b38b)
L203[05:03:33]
⇨ Joins: Samario
(~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net)
L204[05:18:32]
⇨ Joins: Fye
(~Fye@dynamic-adsl-78-13-103-40.clienti.tiscali.it)
L205[05:21:48] ***
manmaed[away] is now known as manmaed
L206[05:27:38] <ghz|afk> hey ppl, since my
old method isn't really working anymore and I have to redesign it,
what would you say is the best way to intercept a vanilla keybind
in 1.12?
L207[05:28:41] <c64cosmin> you man to have
a way to call back the keypress event?
L208[05:28:47] <ghz|afk> no I mean
L209[05:28:53] <ghz|afk> I have a WIP
magic mod
L210[05:29:12] <ghz|afk> and you use the
same keys as the hotbar, to input the spell
L211[05:29:25] <ghz|afk> like hotbar1 =
fire, hotbar2 = air, ...
L212[05:29:55] <PaleoCrafter> add a
modifier by default?
L213[05:29:56] <ghz|afk> so I want to
prevent the hotbar keys from switching slots, while the player is
rightclicking on the wand
L214[05:30:23] <c64cosmin> it is out of my
reach, sry :(
L215[05:39:05]
⇨ Joins: Cornelia (~Nel@75.71.231.133)
L216[05:40:23] <ghz|afk> I'm thinking I
should probably just register another set of keybinds, and make use
of the conflict context to tell forge to use mine
L217[05:40:24] ***
MrKick|Away is now known as MrKickkiller
L218[05:54:47] <c64cosmin> isn't there a
way to do isKey pressed? (also that will need a update function
call)
L219[05:56:18]
⇨ Joins: KGS
(~KGS@h-158-174-9-249.NA.cust.bahnhof.se)
L220[06:02:31] ⇦
Quits: IdleGandalf (~IdleGanda@staff.harting.hosting) (Quit:
Leaving)
L221[06:14:47] ⇦
Quits: cpup (~cpup@32.218.119.204) (Ping timeout: 186
seconds)
L222[06:20:24]
⇨ Joins: cpup (~cpup@32.218.112.125)
L223[06:25:43]
⇨ Joins: CoderPuppy (~cpup@32.218.112.137)
L224[06:27:04] ⇦
Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
(Read error: Connection reset by peer)
L225[06:28:15]
⇨ Joins: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L226[06:28:26] ⇦
Quits: cpup (~cpup@32.218.112.125) (Ping timeout: 204
seconds)
L227[06:39:29]
⇨ Joins: Cast0077
(~Cast0077@24-151-30-78.dhcp.nwtn.ct.charter.com)
L228[07:16:49] <masa> any ideas what is
happening here?
L231[07:17:15] <masa> note the one line
difference in the clear method
L232[07:17:44] <masa> and naturally I
can't reproduce this, so...
L233[07:17:50] ⇦
Quits: Cornelia (~Nel@75.71.231.133) (Ping timeout: 204
seconds)
L234[07:19:17] <TechnicianLP> that does
not even make sense ... its a int assignment and a method call
...
L235[07:20:16] <fry> when in doubt - blame
coremods :P
L237[07:30:24] ⇦
Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
(Read error: Connection reset by peer)
L238[07:30:54]
⇨ Joins: cpup (~cpup@32.218.113.11)
L239[07:31:43] <capitalthree> if I set
capabilities on an EntityItem are they ephemeral? (will they be
gone if the item is picked up or whatever?)
L240[07:31:58] <capitalthree> maybe this
would be a better way to prevent items stacking instead of
subclassing EntityItem?
L241[07:33:08] ⇦
Quits: CoderPuppy (~cpup@32.218.112.137) (Ping timeout: 201
seconds)
L242[07:34:25]
⇨ Joins: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L243[07:36:32] ⇦
Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
(Read error: Connection reset by peer)
L244[07:40:45]
⇨ Joins: Cornelia (~Nel@75.71.231.133)
L245[07:54:57]
⇨ Joins: CoderPuppy (~cpup@32.218.113.50)
L246[07:55:47]
⇨ Joins: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L247[08:00:08] ⇦
Quits: cpup (~cpup@32.218.113.11) (Ping timeout: 383
seconds)
L248[08:02:22]
⇨ Joins: Girafi
(Girafi@port445.ds1-alb.adsl.cybercity.dk)
L249[08:07:40] ⇦
Quits: p455w0rd (~p455w0rd@172.76.252.126) (Ping timeout: 201
seconds)
L250[08:08:22]
⇨ Joins: p455w0rd (~p455w0rd@50.102.91.181)
L251[08:08:25] ⇦
Quits: Girafi (Girafi@port445.ds1-alb.adsl.cybercity.dk)
()
L252[08:11:47] <ghz|afk> capitalthree:
yes, the capabilities of the EntityItem would be lost when the
entity is destroyed
L253[08:12:24]
⇨ Joins: Raycoms
(~Raycoms@2804:14d:baa6:25e1::1002)
L254[08:12:27] <Raycoms> Hey there
L255[08:13:06] <Raycoms> public class
BlockRack extends BlockContainer is still the right way to define a
container?
L256[08:13:17] <ghz|afk> nope
L257[08:13:20] <Raycoms> If I want to
create my custom chest
L258[08:13:21] <ghz|afk> it hasn't been
since like 1.2
L259[08:13:34] <Raycoms> Okay, how is it
then?
L260[08:13:40] <ghz|afk> you extend Block
as usual
L261[08:13:50] <ghz|afk> but override
hasTileEntity and createTileEntity
L262[08:14:00] <ghz|afk> don't implement
ITileEntityProvider either
L263[08:14:07] <ghz|afk> that's also
deprecated
L264[08:14:31] <Raycoms> Okay thanks
L265[08:14:49] <Raycoms> besides that, If
I want to render that block with a different texture in different
cases
L266[08:15:10] <Raycoms> how do I do that?
I looked how minecraft does it with furnace, and that seems kind of
contra intuitive
L267[08:15:13] <ghz|afk> the blockstates
system lets you have different models per state
L268[08:15:21] <ghz|afk> (which includes
using the same model with different textures)
L269[08:17:11] <Raycoms> Is there a good
example for that?
L270[08:20:06] ⇦
Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
(Quit: Leaving)
L271[08:29:30] <Raycoms> extends
TileEntityLockable is the right way for the container entity?
=D
L272[08:30:09]
⇨ Joins: Brokkoli
(~Brokkoli@p5B23C80C.dip0.t-ipconnect.de)
L273[08:30:25] <capitalthree> ghz|afk: ok
thanks!
L274[08:30:36] <capitalthree> sorry for
the late response
L275[08:37:38]
⇨ Joins: McJty
(~jorrit@94-224-152-129.access.telenet.be)
L277[08:38:25] <capitalthree> just for
blocks right now
L278[08:38:36] <capitalthree> I will go do
sleep things and then try to add moar!
L279[08:42:15] <ghz|afk> sorry back
L280[08:42:16] <ghz|afk> lunch was
ready
L281[08:42:21] <ghz|afk> [15:29]
(Raycoms): extends TileEntityLockable is the right way for the
container entity? =D
L282[08:42:25] <ghz|afk>
"lockable" is optional
L283[08:42:53] <Raycoms> Thanks
L284[08:43:10] <ghz|afk> the proper way to
implement a container
L285[08:43:14] <ghz|afk> is to extend
TileEntity
L286[08:43:26] <ghz|afk> and give it an
IItemHandler capability
L287[08:43:35] <ghz|afk> (don't implement
IItemHandler -- that's not how capabilities work ;P)
L288[08:44:34] <Raycoms> The problem I
have is that I need a way to control 100% what comes in and what
goes out
L289[08:45:21] <Raycoms> I kinda want that
my block a) stores the blocks and interacts with the player like a
chest
L290[08:45:37] ⇦
Quits: CoderPuppy (~cpup@32.218.113.50) (Ping timeout: 200
seconds)
L291[08:45:46] <Raycoms> and b) that I
can, from the coding side retrieve the blocks as a list (120
cobble, 10 planks, rest empty)
L292[08:46:50] <Raycoms> and I don't want
to scan the whole inventory to get this
L293[08:47:48] <McJty> ghz|afk,
implementing IItemHandler is fine in many cases
L294[08:48:01] <McJty> If you have custom
needs there
L295[08:48:04] <ghz|afk> McJty horrible
practicethough ;P
L296[08:48:08] <ghz|afk> I mean in the
TileEntity
L297[08:48:14] <ghz|afk> rolling your own
IItemHandler is ok yes
L298[08:48:24] <McJty> Ah that's what I
meant
L299[08:49:09] <ghz|afk> Raycoms:
L300[08:49:11] <ghz|afk> what I do
is
L301[08:49:23] <ghz|afk> IItemHandler
inventory = new ItemStackHandler(slots) {
L302[08:49:26] <ghz|afk> override
insertItem
L303[08:49:29] <ghz|afk> override
extractItem
L304[08:49:41] <ghz|afk> override
onSlotChange(...) { markDirty(); }
L305[08:49:42] <ghz|afk> };
L306[08:49:55] <ghz|afk> you have full
control of the insertion and removal
L307[08:50:08] <ghz|afk> while not having
to implement the code manually 100%
L308[08:50:20]
⇨ Joins: cpup (~cpup@32.218.113.151)
L309[08:50:22] <ghz|afk> anonymous
extensions ftw
L310[08:50:41] <ghz|afk> if only Java had
auto/var/let inference
L311[08:50:55] <ghz|afk> so you could
access public methods of an anonymous class that aren't part of the
interface
L312[08:56:41] ⇦
Quits: Seppon (~Noppes@ip56530f2e.direct-adsl.nl) (Ping timeout:
383 seconds)
L314[09:08:46] <c64cosmin>
GlStateManager.pushAttrib(); does push the current state of the
Manager to later pop it out?
L315[09:09:33] <PaleoCrafter> don't use
it, it's broken
L316[09:10:02] <ghz|afk> c64cosmin: it's
counter-intuitive
L317[09:10:13] <ghz|afk> pushAttrib is
designed to be used when you "break out" of
GlStateManager
L318[09:10:21] <ghz|afk> so that you can
run some direct GL11 commands
L319[09:10:23] <ghz|afk> then
popAttrib
L320[09:10:28] <ghz|afk> to put the state
manager back in sync
L321[09:10:32] <ghz|afk> but it doesn't
sync everything
L322[09:10:37] <ghz|afk> so it's highly
discouraged
L323[09:14:42] <c64cosmin> yup, very xD,
stuff goes wild, thanks for clarification, I don't want to use GL11
functions, it's jsut that my TESR influences other TESR like chests
which will render badly, thought that I might got out of it
cheaply
L324[09:15:04] <ghz|afk> mojang misuses
the glstatemanager
L325[09:15:07] <ghz|afk> which is very
annoying
L326[09:15:10] <ghz|afk> the idea for
thosethings
L327[09:15:15] <ghz|afk> is that you set
*all* the states you need
L328[09:15:20] <ghz|afk> then
"apply"
L329[09:15:28] <ghz|afk> and it sends the
states to the gpu
L330[09:15:31] <ghz|afk> but
L331[09:15:42] <ghz|afk> they only set the
ones they know will change
L332[09:15:48] <ghz|afk> which makes
glstatemanager sortof useless
L333[09:15:48] <c64cosmin> also skipping
the states that are not changed
L334[09:16:03] <ghz|afk> meaning you still
have to unset the states
L335[09:16:09] <ghz|afk> to leave things
the way vanilla expects them
L336[09:16:11] <ghz|afk> ¬¬
L337[09:17:16] <c64cosmin> it's
interesting, I had expected that based on the current
GlStateManager it will batch Teselator.draw() with the same state
to gain a small improvement in speed (state changes in OpenGL are
time consuming)
L338[09:17:32] <ghz|afk> lol no
L339[09:17:36] <ghz|afk> it's not that
advanced
L340[09:17:39] <c64cosmin> xD
L341[09:17:42] <ghz|afk> the only thing it
tracks
L342[09:17:55] <ghz|afk> are things like
the blending state, last texture, etc
L343[09:18:13] <ghz|afk> but that
aside
L344[09:18:14] <ghz|afk> WTF
L345[09:18:20] <ghz|afk> I have an
animation in a gui
L346[09:18:33] <c64cosmin> which is up to
the next Renderer to set up, expect disabling the blending which is
left for other renderers ARGH!
L347[09:18:33] <ghz|afk> which goes from
0% to 100%
L348[09:18:35] <ghz|afk> in 20 ticks
L349[09:18:40] <ghz|afk> but it takes 3
seconds
L350[09:18:41] <ghz|afk> ...
L351[09:19:11] <c64cosmin> why is
that?
L352[09:19:15] <ghz|afk> I have no
idea
L353[09:19:19] <ghz|afk> that's the
WTF
L354[09:19:35] <ghz|afk> I even stopped
using updateScreen
L355[09:19:38] <ghz|afk> and switched it
to do
L356[09:19:43] <ghz|afk> float
openAnimation =
(float)(Minecraft.getMinecraft().world.getTotalWorldTime() +
partialTicks - startAnimation);
L357[09:19:52] <ghz|afk> to see if
updateScreen wasn't being called each tick
L358[09:19:55] <ghz|afk> but it's the
same
L359[09:20:27] <c64cosmin> my face right
now :o
L360[09:20:44] <ghz|afk> and it's smooth,
so it's not like there getTotalWorldTime isn't updating as
expected
L361[09:21:02] <ghz|afk> because then I'd
see some shakiness in the edges
L362[09:21:33] <c64cosmin> yeah, you
should go very deeply in the MC engine to actually understand
what's happening
L363[09:21:53] <c64cosmin> maybe it's
related to the way UI are rendered and skips some frames...might
be, just asumptions
L364[09:21:58] <ghz|afk> it's like if the
client is running at 5tps
L365[09:22:00] <ghz|afk> instead of
20
L366[09:22:20] <ghz|afk> brb
L367[09:23:46] <Raycoms> ghz how do I tell
him which blockState file he should use?
L370[09:30:23] <ghz|afk> okay nevermind
the ticks stuff
L371[09:30:27] <ghz|afk> it's my
perception
L372[09:30:39] <ghz|afk> 250ms feel like a
second to me right now
L373[09:30:39] <ghz|afk> ;p
L374[09:38:30]
⇨ Joins: malte0811
(~malte0811@p54825E2A.dip0.t-ipconnect.de)
L375[09:40:52]
⇨ Joins: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L376[09:46:55] <Raycoms> =D
L377[09:50:28] ⇦
Quits: I9hdkill
(~quassel@static.102.152.243.136.clients.your-server.de) (Ping
timeout: 204 seconds)
L378[09:53:59] ⇦
Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
(Read error: Connection reset by peer)
L379[09:56:48]
⇨ Joins: I9hdkill
(~quassel@static.102.152.243.136.clients.your-server.de)
L380[09:59:21] <c64cosmin> xD Played SC2
too much maybe
L381[09:59:26]
⇨ Joins: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L382[10:00:36] ⇦
Quits: I9hdkill
(~quassel@static.102.152.243.136.clients.your-server.de) (Ping
timeout: 204 seconds)
L383[10:13:06]
⇨ Joins: Davnit
(~Davnit@72-189-115-20.res.bhn.net)
L384[10:17:31]
⇨ Joins: JDLogic_
(~JDLogic_@cpe-76-174-210-17.socal.res.rr.com)
L385[10:27:18] ⇦
Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
(Read error: -0x1: UNKNOWN ERROR CODE (0001))
L386[10:28:29]
⇨ Joins: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L387[10:28:31] ⇦
Quits: Cast0077 (~Cast0077@24-151-30-78.dhcp.nwtn.ct.charter.com)
(Quit: Poof)
L388[10:28:45]
⇨ Joins: Seppon
(~Noppes@ip56530f2e.direct-adsl.nl)
L389[10:36:03] ***
TTFT|Away is now known as TTFTCUTS
L390[10:37:05]
⇨ Joins: Xalcon
(~Xalcon@ip4d171d68.dynamic.kabel-deutschland.de)
L391[10:41:00] ⇦
Quits: Samario
(~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net) (Read
error: Connection reset by peer)
L392[10:41:09] <Xalcon> hey, regarding the
forge coding guidelines. Do i use { } for if's (+else) with a
single statement in the if/else body? The forge code is a bit
inconsistent and i'd like to do it right.
L393[10:41:25] ⇦
Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
(Read error: Connection reset by peer)
L394[10:42:28]
⇨ Joins: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L395[10:44:18] <capitalthree> hehe I've
had people direct strong opinions towards me for not using enough
curly braces
L396[10:44:42] <quadraxis> in your case,
i'd just use ?:
L397[10:45:31] <quadraxis> if you want an
official opinion, probably best to wait until mezz is around
L398[10:46:21] <Xalcon> hehe, yeah i was
thinking about using ?: but I dont know if the forge guys like that
:P
L399[10:46:31] <capitalthree> if you want
a totally unsanctioned opinion, I think it's ok to leave them out
as long as both the if and the else clause are single
statements
L400[10:46:36] <capitalthree> but don't do
it for one and not the other
L401[10:46:54] <Xalcon> yeah, single
statement bodies
L402[10:47:23] <capitalthree> also a
ternary operator is definitely better than an if statement where
both bodies are just assignments to the same variable :P
L403[10:47:30] <quadraxis> normally i'd
leave out braces for single statements on the same line as the
if
L404[10:47:35] <Xalcon> its just
williewillus told me to add { } to my PR :P
L405[10:47:58] <quadraxis> that at least
avoids goto fail mistakes
L406[10:48:34] <capitalthree> you should
see my kotlin code, it would make those who want to see extra
syntax everywhere, cry :P
L407[10:48:48] <Xalcon> hehe :D
L408[10:49:12] <Xalcon> ok, ill just wait
for official feedback then :)
L411[10:49:59] <capitalthree> (that's my
latest commit)
L412[10:50:14] <capitalthree> if anyone's
bored, I'm still pretty new to mc modding, so I am always fishing
for comments/criticism
L413[10:57:17] ⇦
Quits: Waterpicker
(~Waterpick@2602:306:35ba:ca40:99cc:e940:eab:5512) (Quit:
Leaving)
L414[11:02:19] <PaleoCrafter>
"splitNumberEvenlyIsh" xD
L415[11:03:50] <capitalthree> :D I think
it's a good description of what that function does
L416[11:09:43] ⇦
Quits: immibis (~chatzilla@122-60-106-2.jetstream.xtra.co.nz) (Ping
timeout: 186 seconds)
L417[11:09:48] ⇦
Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
(Read error: Connection reset by peer)
L418[11:13:46] <c64cosmin> why is my TESR
not being drawn when not looking at it, I do use the
INFINITE_EXTENT_AABB thought?
L419[11:14:10] <PaleoCrafter> return true
in hasGlobalRenderer or something like that
L420[11:14:20] <PaleoCrafter>
isGlobalRenderer, right
L421[11:15:25] <c64cosmin> in the TE or
the BLock?
L422[11:16:08] <Xalcon> the TESR
L423[11:17:38] <c64cosmin> that worked
thanks a lot <3
L424[11:19:45] <tterrag> only do that if
your TESR is quite large
L425[11:19:54] <tterrag> the issue being
that TESRs are culled when their chunk is outside the frustum
L426[11:19:59] <malte0811> Has anyone seen
item duplication on entity pickup when the player inv has large NBT
compounds (empty share tag though)? Single player, haven't tested
dedi servers yet. Have some mods (IE dev instance)
L427[11:20:01] <tterrag> regardless of the
TE bounds
L428[11:20:20] <malte0811> tterrag: does
that include "vertical" chunks?
L429[11:20:31] <tterrag> render chunks
(16x16x16)
L430[11:20:32] <tterrag> so yes
L431[11:20:48]
⇨ Joins: Hunterz (~hunterz@62.182.234.189)
L432[11:23:45] <malte0811> Ok, the dupe
bug happens with just the forge test mods as well
L433[11:23:50]
⇨ Joins: immibis
(~chatzilla@122-59-206-245.jetstream.xtra.co.nz)
L434[11:26:39] <malte0811> And it is
single player only
L435[11:29:46] <TechnicianLP> happens in
vanilla as well?
L436[11:30:05] <malte0811> No idea, how
would I quickly generate large NBT in vanilla?
L437[11:30:20] <ghz|afk> why the fuck is
the jar generating with -1.6.4
L438[11:30:29] <ghz|afk> when I have
changed the version value to 1.7.0?!
L439[11:30:40] <ghz|afk> malte0811: with a
commandblock
L440[11:30:53] <PaleoCrafter> Gradle
refuses to go from numeric IDs to strings
L441[11:30:56] <Xalcon> you can create
items with nbt via /give, just add the nbt after the meta value and
put in random tags i guess
L442[11:31:06] <Wuppy> hey PaleoCrafter
did you see the game I've been working on yet? :3
L443[11:31:09] <ghz|afk> PaleoCrafter: but
it was "1.6.4" and it's now "1.7.0"
L444[11:31:18] <PaleoCrafter> do you mean
the Norse mythology one, Wuppy? :P
L445[11:31:42] <Wuppy> yep, we just
released our gameplay trailer :D
L446[11:31:44] <TechnicianLP> 1.6.4 and
1.7? pretty old ...
L447[11:31:51] <malte0811> "A few
random tags" I am talking about something like 3^8 doubles
here
L449[11:31:55] <ghz|afk> TechnicianLP: mod
version, not mc version
L450[11:31:56] <ghz|afk> ;P
L451[11:32:05] <TechnicianLP> oh ...
L452[11:32:05] <PaleoCrafter> I sent in a
lengthy response in your feedback form, iirc :P
L453[11:32:12] <ghz|afk> yep the 1.11.2
build did generate a -1.7.0 jar just fine
L454[11:32:19] <ghz|afk> wtf is wrong with
the 1.12 one?!
L455[11:32:23] <Wuppy> we read and
implemented all of the stuff we could :)
L456[11:32:33] <Wuppy> it's being released
on Steam soon
L457[11:32:38] <Wuppy> and probably also
PS4
L458[11:32:39] ⇦
Quits: afdw (~afdw@80.80.197.209) (Ping timeout: 186
seconds)
L459[11:33:55] <ghz|afk> wtf
L460[11:34:02] <ghz|afk> fast leaf decay
isn't ported to 1.12 yet?!
L461[11:36:22] <ghz|afk> welp, I changed
mappings and recompiled
L462[11:36:29] <ghz|afk> seems to have
"shaken" the glitch loose
L463[11:36:32] <ghz|afk> works now
L464[11:38:32] <Wuppy> do any of you have
a nintendo swithc?
L465[11:38:52] <ghz|afk> my flatmate
does
L466[11:38:58] <ghz|afk> i'll get one...
someday
L467[11:39:24] <Wuppy> let me know when
you do, would be nice to add more people :)
L468[11:39:44] <ghz|afk> basically
Nintendo convinced me to get one in their e3 thingy
L469[11:40:03] <Wuppy> I was already
convinced before their e3 show
L470[11:40:09] <Wuppy> but at that point I
just got one the next day
L471[11:40:14] <ghz|afk> (the kirby one
was the one that tipped the balance toward the "me
wants!" side)
L472[11:40:31] <Wuppy> not even
pokemon?
L473[11:40:58] <ghz|afk> pokemon is the
one that interests me the least
L474[11:41:09] <ghz|afk> I played red, and
gold, and then said "fuck it, it's all the same"
L475[11:41:26] <Wuppy> fair enough
L476[11:41:30] <Wuppy> it's been ages
since I played one
L477[11:41:34] <Wuppy> same with Mario
Kart
L478[11:42:15] <ghz|afk> I played
MK8
L479[11:42:18] <ghz|afk> my flatmate has a
wiiu
L480[11:42:26] <ghz|afk> so MK8 deluxe
isn't really that critical
L481[11:43:11] <ghz|afk> and I don't
really care much about openworld games, so Zelda eh.
L482[11:43:18] <ghz|afk> I saw enough of
it watching my flatmate play
L483[11:44:24] <ghz|afk> so,
L484[11:44:31] <ghz|afk> I'm upgrading my
vanilla save to modded
L485[11:44:42] <ghz|afk> any suggestions
for modsthat don't really change the vanilla experience
radically?
L486[11:45:00] <malte0811> Re: dupe on
item pickup: Command blocks don't work for testing on vanilla, my
NBT seems to be too big to be put into command blocks (I had to
implement getNBTShareTag to prevent crashes)
L487[11:45:28] <ghz|afk> so far: toolbelt,
ironchest, gravestone, jei, journeymap, quark
L488[11:45:33] <ghz|afk> is waht I have
put in the folder
L489[11:45:41]
⇨ Joins: afdw (~afdw@109.111.16.78)
L490[11:45:54] <ghz|afk> malte0811: wtf
kind of giant NBT are you adding?!?!?!?!?!
L491[11:46:08] <malte0811> It was for
testing potential bugs with large NBT
L492[11:46:17] <malte0811> Not actually in
game
L493[11:46:18] <ghz|afk> ah so you are
just testing for nbt bugs
L494[11:46:19] <ghz|afk> hmm
L495[11:46:22] <ghz|afk> how about
this:
L496[11:46:27] <ghz|afk> apply that huge
nbt tag to a vanilla item
L497[11:46:32] <ghz|afk> then load that
save in vanilla
L498[11:46:39] <ghz|afk> and see if you
get the issue
L499[11:46:42] <malte0811> Might work,
I'll try
L500[11:50:22] <malte0811> Yep, happens on
vanilla too
L501[11:50:40] <malte0811> 1.11.2 that
is
L502[11:50:56] *
ghz|afk nods
L503[11:51:05] <ghz|afk> yeah sounds liek
a "not my problem" issue ;P
L504[11:52:04]
⇨ Joins: baegmon
(~baegmon@cpe-121-210-40-148.rfcz1.ken.bigpond.net.au)
L505[11:52:28] <malte0811> It is kind of
funny though: I was investigating item loss potentially due to
large NBT :D
L506[11:52:51] <ghz|afk> oh hey
L508[11:53:00] <ghz|afk> why did I not
know about this?!
L509[11:53:14] *
ghz|afk adds
L510[11:54:35]
⇨ Joins: KnightMiner
(~KnightMin@adsl-75-5-64-185.dsl.emhril.sbcglobal.net)
L511[11:55:17] ⇦
Quits: RichardG_ (~richardg8@201.37.252.173) (Read error:
Connection reset by peer)
L512[11:55:38]
⇨ Joins: RichardG (~richardg8@201.37.252.173)
L513[11:55:39] <ghz|afk> to mystical
agriculture, or not to mystical agriculture... that is the
question
L514[11:55:39]
MineBot sets mode: +v on RichardG
L515[11:55:47] <ghz|afk> (dunno if it's
too OP for a vanilla-style save ;P)
L516[11:59:37] ⇦
Quits: Seppon (~Noppes@ip56530f2e.direct-adsl.nl) (Read error:
Connection reset by peer)
L517[11:59:56]
⇨ Joins: Seppon
(~Noppes@ip56530f2e.direct-adsl.nl)
L518[12:02:31] ⇦
Quits: HeroCC (~HeroCC@cac.herocc.com) (Ping timeout: 186
seconds)
L519[12:03:06] ⇦
Parts: malte0811 (~malte0811@p54825E2A.dip0.t-ipconnect.de)
())
L520[12:03:13]
⇨ Joins: HeroCC (~HeroCC@cac.herocc.com)
L521[12:04:04] ⇦
Quits: baegmon
(~baegmon@cpe-121-210-40-148.rfcz1.ken.bigpond.net.au) (Quit:
Leaving)
L522[12:07:32] ⇦
Quits: Spottedleaf
(~Spottedle@node-1w7jr9qqos9g0vkt9odkrty2o.ipv6.telus.net) (Killed
(NickServ (GHOST command used by Spottedleaf_)))
L523[12:07:36]
⇨ Joins: Spottedleaf
(~Spottedle@node-1w7jr9qqos9g0vkt9odkrty2o.ipv6.telus.net)
L524[12:10:36]
⇨ Joins: useless2764_ (useless@69.197.136.164)
L525[12:10:53] ***
Clank[Away] is now known as Clank
L526[12:10:59] ⇦
Quits: useless2764 (useless@69.197.136.164) (Ping timeout: 383
seconds)
L527[12:23:05]
⇨ Joins: BloodWorkXGaming
(~BloodWork@ppp-88-217-84-154.dynamic.mnet-online.de)
L528[12:28:36]
⇨ Joins: I9hdkill
(~quassel@static.102.152.243.136.clients.your-server.de)
L529[12:28:57] ⇦
Quits: BloodWorkXGaming
(~BloodWork@ppp-88-217-84-154.dynamic.mnet-online.de) (Quit:
Leaving)
L530[12:31:06] ⇦
Quits: I9hdkill
(~quassel@static.102.152.243.136.clients.your-server.de) (Read
error: Connection reset by peer)
L531[12:31:25]
⇨ Joins: BloodWorkXGaming
(~BloodWork@ppp-88-217-84-154.dynamic.mnet-online.de)
L532[12:32:06] <c64cosmin> when is
createNewTileEntity actually called?
L533[12:32:40] <ghz|afk>
createNewTileEntity is part of ITileEntityProvider
L534[12:32:41] <ghz|afk> don't use
that
L535[12:32:47] <ghz|afk> use
hasTileEntity+createTileEntity
L536[12:33:01] <ghz|afk> and they are
called when you place a new block
L537[12:33:15] <ghz|afk> when reloading a
save, mc instantiates the TE based on its registry name
L538[12:33:51] <c64cosmin> seems like MC
is creating a TE every frame :/
L539[12:34:02] <ghz|afk> that would make
no sense
L540[12:34:05] <c64cosmin> forgot to add
hasTileEntity though
L541[12:34:58] <c64cosmin> it does
instanciate a TE each frame
L542[12:35:10] <TechnicianLP> frame or
tick?
L543[12:35:31] <c64cosmin> it's my fault,
I think it might be to the fact that I set the IBlockState and that
might recreate the block
L544[12:35:43] <ghz|afk> ah yes
L545[12:35:49] <ghz|afk> you have to
override shouldRefresh
L546[12:35:50] <KnightMiner> There is a
TileEntity method to override to prevent that
L547[12:35:51] <ghz|afk> in your TE
L548[12:36:04] <ghz|afk> and return
oldstate.getBlock() != newState.getBlock();
L549[12:36:08] <ghz|afk> instead of the
default behaviour
L550[12:36:25] <KnightMiner> Default is
any state change, though vanilla blocks default to any block
change
L551[12:36:42] <TechnicianLP> setting a
different blockstate each tick sounds bad ... what are you trying
to do?
L552[12:36:44] <ghz|afk> it's silly,
IMO
L553[12:37:04] <ghz|afk> the default
should be to assume that one block = one TE
L554[12:37:12] <ghz|afk> sub-blocks should
be the exception
L555[12:37:24] <KnightMiner> Only use case
I can think of, getActualState would be better for changing the
state
L556[12:38:59]
⇨ Joins: I9hdkill
(~quassel@static.102.152.243.136.clients.your-server.de)
L557[12:39:14] <c64cosmin> @ghz looking
for shouldRefresh| @TechnicianLP I'm looking if there is a portal
frame around and set the TE active if so
L558[12:39:29] <c64cosmin> @KnightMiner
what do you mean with getActualState? what does that do?
L559[12:39:54] <KnightMiner>
getActualState is used to get data that is not written to the
blockstate, but is useful otherwise
L560[12:40:03] <KnightMiner> An example is
fence extensions, or TE data
L561[12:40:06] <TechnicianLP> getactual
state is called to collect the
L562[12:40:12] <ghz|afk> c64cosmin:
"looking for nearby blocks" shouldn't require you to
change the state every tick
L563[12:40:26] <ghz|afk> even if you
didn't use getActualState to augment the state
L564[12:40:33] <ghz|afk> it should only
change if and when you find something
L565[12:40:51] <c64cosmin> indeed, but
right now I'm mocking up the portal TE
L567[12:46:16] <TechnicianLP> still
searching for lightweight mods ghz?
L568[12:46:58] <ghz|afk> not specifically
lightweight
L569[12:47:02] ⇦
Quits: McJty (~jorrit@94-224-152-129.access.telenet.be) (Quit:
Leaving)
L570[12:47:12] <ghz|afk> I'm looking for
things that "fit in" inside vanilla
L571[12:47:38] <ghz|afk> so nothing that
adds high-tech or high-magic
L572[12:47:47] *
TechnicianLP recommends "harvestables"
L573[12:48:21] <ghz|afk> does it work with
forge RB?
L574[12:48:24] <PaleoCrafter> 1.12?
L575[12:48:48] <ghz|afk> yeh
L576[12:48:54] <TechnicianLP> rb?
L577[12:49:01] <PaleoCrafter> recommended
build
L578[12:49:11] <PaleoCrafter> i.e.
2387
L579[12:49:17] *
TechnicianLP switches workspaces and tries
L581[12:49:31] <ghz|afk> that's what I got
so far
L583[12:50:05] <ghz|afk> heh
L584[12:50:13] <ghz|afk> yeah that's nice,
but right now I don't want to replace GUIs ;P
L585[12:50:27] <PaleoCrafter> you could
disable the Furnace and Crafting Table ;)
L587[12:52:28] <Raycoms> I made an enum
EnumType implements IStringSerializable with DEFAULT(0,
"blockRackEmpty", "Empty"), and FULL(1,
"blockRackFull", "Full");
L588[12:52:33] <TechnicianLP> tehnut one's
requires config
L589[12:52:37] <Raycoms> But I get
IllegalArgumentException: Block: class
com.minecolonies.coremod.blocks.BlockRack has property: variant
with invalidly named value: blockRackEmpty
L590[12:52:43] <TechnicianLP> mine
doesnt
L591[12:52:47] <ghz|afk> heh
L592[12:53:07] <ghz|afk> Raycoms: I don't
think uppercase is allowed
L593[12:53:26] <Raycoms> Its 1.10
still
L594[12:53:32] <Raycoms> (I will port to
1.11, 1.12 later)
L595[12:55:07] <ghz|afk> that doesn't
matter
L596[12:55:17] <ghz|afk> uppercase letters
in properties are simply not allowed
L597[12:55:26] <ghz|afk> only lowercase
letters, numbers, and underscore
L598[12:55:48] <quadraxis> yes,
[a-z0-9_]
L599[12:56:27] <Raycoms> Ahk
L600[12:56:28] <Raycoms> Thanks
L601[12:59:02] <Raycoms> okay it now
loaded =D Throwing horrors of exceptions but loaded
L602[13:00:32] <TechnicianLP> when was
ReflectionHelper.findMethod changed? grr...
L603[13:02:22] <ghz|afk> Caught exception
from Harvestables (harvestables)
L604[13:02:24] <ghz|afk> oww :(
L605[13:02:49] <TechnicianLP> have to
recompile ... (SOMEONE changed reflectionhelper ...)
L606[13:02:53] <ghz|afk> XD
L607[13:02:59] <ghz|afk> ping me when it's
fixed ;P
L608[13:04:20] <quadraxis> mezz changed
ReflectionHelper
L609[13:04:29] <quadraxis> in 2230 I
think
L610[13:05:22] ⇦
Quits: srs_bsns (blk@198-48-175-31.cpe.pppoe.ca) (Read error:
Connection reset by peer)
L611[13:05:23] <quadraxis> and I prefer
the new method that doesn't loop through names and try/catch
each
L612[13:07:39] <TechnicianLP> yes its
better (but intellij somehow didnt mark it deprecated for me
...)
L613[13:09:02] <ghz|afk> oh nice
L615[13:09:05]
⇨ Joins: srs_bsns
(blk@198-48-175-31.cpe.pppoe.ca)
L616[13:11:51] <Raycoms> Hmm sorry to
annoy you, but I'm getting a
ModelBlockDefinition$MissingVariantException
L619[13:15:46] ⇦
Quits: Hunterz (~hunterz@62.182.234.189) (Quit:
Leaving.)
L620[13:19:17]
⇨ Joins: Hunterz (~hunterz@62.182.234.189)
L622[13:21:55] <TechnicianLP> (still under
review though)
L623[13:24:13]
⇨ Joins: Shambling
(~Shambling@97-89-242-134.static.plbg.ny.charter.com)
L624[13:26:39] <mezz> cool capitalthree,
glad it worked out
L625[13:27:25] <mezz> Xalcon, you are
"allowed" to leave braces off of one-line it/else bodies.
personally I choose not to do that most of the time. it's up to
you
L626[13:30:24] <Xalcon> thanks!
L629[13:34:18] <PaleoCrafter> one approach
would be to require a new param for the annotations (something
along the lines of "staticContainer") which is for
providing a class name, but that's a little annoying for
modders
L630[13:34:43] <PaleoCrafter> the other
approach would be to somehow extract mod container information from
context and just get the lang adapter from the mod
L631[13:40:43] <mezz> I need to understand
the original problem first, why doesn't scala work with the
existing systems?
L632[13:43:07] <PaleoCrafter> because it's
not actually exposing its methods and fields statically but through
a "singleton" object
L633[13:43:10] <LexMobile> Because
aparently scala is stupid and doesnt understand anything about
statics
L634[13:43:29] <PaleoCrafter> oh, Lex, you
pinged me last night? :P
L635[13:44:35] <mezz> interesting...
L636[13:44:37] <LexMobile> yes... cant
quite remember why tho..
L637[13:44:47] <LexMobile> also mez, slow
says in about an hour
L638[13:44:53] <mezz> cool thanks
L639[13:45:01] <PaleoCrafter> maybe the
dep extraction?
L640[13:45:09] <LexMobile> yes
L641[13:45:22] <LexMobile> hows that
going?
L642[13:45:37] <LexMobile> Also is it
possible to use the getResource trick to find the libraries
folder?
L643[13:45:49] <PaleoCrafter> which
getResource trick? ^^
L644[13:45:55] <LexMobile> there are a few
libraries we ship directly in the libs folder on both sides.
L645[13:46:15] <LexMobile> get one of
their classes then walk up the tree to get the root lib
folder
L646[13:46:27] <PaleoCrafter> hm... I can
give that a try
L647[13:47:02] <PaleoCrafter> I've added
tests, but there wasn't any way to get around actually creating a
file, but I've made it use a temp directory that gets deleted right
after the tests are done
L648[13:47:14] <LexMobile> thats
fine
L649[13:47:37] <PaleoCrafter> also, saw my
mod programming language stats? :P
L650[13:47:59] ⇦
Quits: srs_bsns (blk@198-48-175-31.cpe.pppoe.ca) (Read error:
Connection reset by peer)
L651[13:49:03] <LexMobile> yes
L652[13:49:06] <LexMobile> doesnt matter
right now
L653[13:49:17] <PaleoCrafter> sure, just
wanted to make sure you saw them ^^
L654[13:51:31] <ghz|afk> is there a link
to those stats? I'm curious ;P
L656[13:53:23] <ghz|afk> heh
L657[13:56:18] <Raycoms> Hmm what does the
other half use?
L658[13:56:36] <PaleoCrafter> they simply
haven't specified a (valid) source link
L659[13:56:46] <mezz> ???
L661[13:57:21] <mezz> write a download
script and analyze?
L662[13:57:52] <PaleoCrafter> not really
download, but get repo link if available and use GH/Bitbucket API
to get language data
L663[14:01:10] ***
Vaht is now known as Tahg
L664[14:06:45] ⇦
Quits: BloodWorkXGaming
(~BloodWork@ppp-88-217-84-154.dynamic.mnet-online.de) (Quit:
Leaving)
L665[14:12:20]
⇨ Joins: Intektor
(~Intektor@p5B2742D9.dip0.t-ipconnect.de)
L666[14:12:33] <Intektor> my entity is not
reacting to any motion changen, what can I do?
L668[14:13:41] <Intektor> yes, I
registered it, and when I use pos changes it works
L669[14:14:36] ***
mumfrey is now known as Mumfrey
L670[14:16:56]
⇨ Joins: gabizou|laptop
(~gabizou@irc.spongepowered.org)
L671[14:18:14] <ghz|afk> ugh
L672[14:18:17] <ghz|afk> I love my Tool
Belt mod
L673[14:18:20] <ghz|afk> but it's annoying
at first
L674[14:18:24] <ghz|afk> to go against
muscle memory
L675[14:18:28] <ghz|afk> and press the
radial menu key XD
L676[14:18:50] *
ghz|afk hadn't used it during normal gameplay yet
L677[14:20:42] <Intektor> ghz|afk, do you
have a minute?
L678[14:20:46] <ghz|afk> sure
L679[14:21:21] <Intektor> so I made an
entity, that should move on certain blocks
L680[14:21:30] <Intektor> but I have 2
problems
L681[14:21:39] <Intektor> 1. it doesnt
move when I set motion
L682[14:22:22] <Intektor> ghz|afk, 2.
might be solved by solving the first one, so you have an idea why
this is happening?
L683[14:22:29] <ghz|afk> hmmm
L684[14:22:42] <ghz|afk> does it extend
Entity, or some subclass?
L685[14:22:57] <Intektor> it extends
Entity
L686[14:23:52] <c64cosmin> is there any
problem if I use a minecraft original texture in my mod?
L687[14:24:19] <ghz|afk> well it appears
that Entity doesn't move based on its motionX
L688[14:24:48] <PaleoCrafter> so... Lex, I
added the libs dir search, but it has to rely on a certain dir
structure. It goes up the dir structure, but the termination
condition is a little weird. I could add a max depth though
L689[14:24:51] <ghz|afk> you would have to
override the entity update method
L690[14:25:06] <ghz|afk> and call the
appropriate method
L691[14:25:32] <ghz|afk> EntityLivings use
the tavel(x,y,z) method
L692[14:27:02] <Intektor> hm ok, and my
second problem is, I make them move on my block, and they move
away, and as soon as they are gone new ones should be spawned, here
is my code:
https://pastebin.com/Sq7CbUhJ
L694[14:27:53] <Intektor> ghz|afk, but for
some reason, although the items are like 10 blocks away, the entity
list in my tile entitiy still says that the entity is still
there
L695[14:28:49] <Intektor> I mean entitiesL
and entitiesR
L696[14:28:55] *
kashike stabs PaleoCrafter because of star imports
L697[14:29:02] <PaleoCrafter> I blame IDEA
q.q
L698[14:29:23] <PaleoCrafter> I forced it
to fix them the last few times round
L699[14:29:29] <kashike> your code style
is to blame, not IDEA itself :P
L700[14:29:33] <PaleoCrafter> let me fix
my code style xD
L701[14:30:38] *
ghz|afk likes star imports
L702[14:31:55] <ghz|afk> if the time it
takes the java compiler to resolve the imports when you import like
java.lang.*; is longer than parsing two dozen import lines one
after the other -- the issue is the compiler. XD
L703[14:31:57] <PaleoCrafter> did it ping
you, kashike? :P
L704[14:32:17] <kashike> yes
L705[14:32:25] <PaleoCrafter> gewd
L706[14:35:09]
⇨ Joins: KnightMiner_
(~KnightMin@adsl-75-5-67-68.dsl.emhril.sbcglobal.net)
L707[14:36:31] ⇦
Quits: KnightMiner
(~KnightMin@adsl-75-5-64-185.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L708[14:47:23] ⇦
Quits: Hunterz (~hunterz@62.182.234.189) (Remote host closed the
connection)
L709[14:48:02] ⇦
Quits: Shambling
(~Shambling@97-89-242-134.static.plbg.ny.charter.com) (Quit:
Leaving)
L710[14:48:08] <c64cosmin> how do you
consume one item from the players inventory?
L711[14:48:09] ***
KnightMiner_ is now known as KnightMiner
L712[14:50:23]
⇨ Joins: KnightMiner_
(~KnightMin@adsl-76-202-213-87.dsl.emhril.sbcglobal.net)
L714[14:51:34] <ghz|afk> oh hey
L715[14:51:38] <ghz|afk> there's a missing
return; there
L716[14:51:47] <ghz|afk> if you have paper
in the offhand slot, it will use two paper!
L717[14:51:48] <ghz|afk> ;P
L718[14:52:03] <c64cosmin> seems that I
can use this in the block too...
L719[14:52:39] ⇦
Quits: KnightMiner
(~KnightMin@adsl-75-5-67-68.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L720[14:55:13] <c64cosmin> thanks a lot,
this solved it like this
playerIn.inventory.setInventorySlotContents(playerIn.inventory.currentItem,
ItemStack.EMPTY);
L721[14:55:13]
⇨ Joins: KnightMinerX
(~KnightMin@adsl-76-202-213-87.dsl.emhril.sbcglobal.net)
L722[14:56:14]
⇨ Joins: KnightMiner
(~KnightMin@adsl-76-202-213-87.dsl.emhril.sbcglobal.net)
L723[14:56:39] <ghz|afk> c64cosmin: that
will remove an entire stack, not just one item
L724[14:57:47] ⇦
Quits: KnightMiner_
(~KnightMin@adsl-76-202-213-87.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L725[14:58:53] ⇦
Quits: KnightMinerX
(~KnightMin@adsl-76-202-213-87.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L726[15:02:46] <c64cosmin> yes that is
what I intended :D
L727[15:03:35] <c64cosmin> my item is max
1 stack
L728[15:04:49] <ghz|afk> the convention is
to always reduce the stack by 1 first, and only set to empty if the
stack became 0
L729[15:04:59] <ghz|afk> -- even if your
item is supposed to be stackable only to 1
L730[15:19:22] <c64cosmin> this is quite
pequliar, is there any reason for that?
L731[15:19:56] <ghz|afk> it's how Mojang
does it
L732[15:20:20] <ghz|afk> reduce durability
-> durability reached 0? -> reduce stack size -> stack
size is 0? -> empty slot
L733[15:20:58] <c64cosmin> oh it's a
matter of good practice, already added the grow(-1), thanks for the
point...
L734[15:21:52]
⇨ Joins: risux
(~risux@2600:8804:285:6b00:b4f5:edb0:f037:3dd2)
L735[15:21:58] <KnightMiner> You know,
there is shrink(1)
L736[15:22:31] <KnightMiner> Though
technically in 1.11 a stack size of 0 is an empty stack as a
different object. Probably better on RAM to replace it, but
gameplay wise it has no different function
L737[15:23:19] <ghz|afk> KnightMiner: yes
but if you have a fake-empty stack
L738[15:23:21] <ghz|afk> and call
grow(1)
L739[15:23:30] <ghz|afk> it goes back to
being the old item
L740[15:23:35] <ghz|afk> while a true
empty stack keeps being AIR
L741[15:23:35] <ghz|afk> ;P
L742[15:23:41] <KnightMiner> True
L743[15:23:52] <KnightMiner> But why would
you call grow(1) on an empty stack intentionally?
L744[15:24:36] ***
SatanicSanta is now known as Santa|afk
L745[15:24:36] <c64cosmin> creating a
block in the world is done with setBlockState?
L746[15:25:24]
⇨ Joins: KnightMiner_
(~KnightMin@adsl-76-202-213-175.dsl.emhril.sbcglobal.net)
L747[15:25:57] <KnightMiner_> Internet be
weird, but what can I expect when I am simultaneously downloading
Portal
L748[15:26:36] <ghz|afk> are your packets
going through Portal
L749[15:26:40] <ghz|afk> and somewhere
else?
L750[15:26:59] <ghz|afk> c64cosmin: tes,
but
L751[15:27:08] <KnightMiner_> I don't
know, I use the internet, and the internet comes
L752[15:27:08] <ghz|afk> while
setBlockState will put the block in the world
L753[15:27:17] <ghz|afk> if you want to
simulate a player placing the block
L754[15:27:21] <ghz|afk> there's a bit
more that would need to be done
L755[15:27:34] <ghz|afk> check
ItemBlock#onItemUse for details
L756[15:27:34] <risux> Do I need a custom
blockstate in order to implement getCollisionBoundingBox()? Trying
to modify the collision bounding box
L757[15:27:43] <ghz|afk> no
L758[15:27:51] ⇦
Quits: KnightMiner
(~KnightMin@adsl-76-202-213-87.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L759[15:28:04] <KnightMiner_> Mojang
marked a bunch of stuff deprecated without replacements being
added
L760[15:28:08] ***
KnightMiner_ is now known as KnightMiner
L761[15:28:20] <risux> So then half of
these block methods are the only option to use?
L762[15:28:35] <KnightMiner> Its safe to
override getCollisionBoundingBox() in blocks, just use the ones
from IBlockState
L763[15:28:56] <risux> Okay, thanks
L764[15:28:57] <KnightMiner> Sometimes
Forge marks them deprecated because it added a replacement, you
have to check the javadocs
L765[15:31:56] <ghz|afk> ah yes
L766[15:31:59] <ghz|afk> the
"deprecated"
L767[15:32:05] <ghz|afk> that just means
"don't call from outside"
L768[15:32:38] <ghz|afk> since java
doesn't have an "@Internal" annotation or anything like
that
L769[15:32:42] <ghz|afk> they chose
@Deprecated
L770[15:33:02] <ghz|afk> blame java's
protected being stupid
L771[15:33:09] <ghz|afk> and allowing
package access
L772[15:33:18] <ghz|afk> at my job
L773[15:33:23] <ghz|afk> if you use
protected for what it's intended for
L774[15:33:39] <ghz|afk> someone
inevitably says "I don't think protected does what you think
it does"
L775[15:33:56] <ghz|afk> to which I have
to answer "I know exactly what it does, but lacking a true
protected, this is still better than 'public'."
L776[15:34:23] <ghz|afk> sorry I started
ranting again ;p
L777[15:35:12] <c64cosmin> can a block be
unbreakable when in one state but soft on other?
L778[15:36:48] <ghz|afk>
setBlockUnbreakable does setBlockHardness(-1)
L779[15:36:56] <ghz|afk> so it means you
can implement getBlockHardness
L780[15:37:00] <ghz|afk> to return -1 only
in the unbreakable state
L781[15:37:49] <c64cosmin> thought that
setBlockHardness would set that state for all BLocks, good thing
there is a function
L782[15:38:10] <c64cosmin> Gigahertz with
all the help you offered, you should go in the credits haha
:D
L783[15:41:18] <KnightMiner> Well,
technically setBlockHardness does, its just that getBlockHardness
returns that value by default
L784[15:42:00] <ghz|afk> c64cosmin: i'd be
in many credits at this point ;P
L785[15:42:30] <KnightMiner> KnightMiner's
mod credits: ghz|afk talked while KnightMiner was on IRC
L786[15:43:03] <c64cosmin> well, you do in
mine, anyhow it seems that getBlockHardness is deprecated...
L787[15:43:22] <KnightMiner> Yeah, outside
you should call state.getHardness()
L788[15:43:45] <KnightMiner> Mojang wants
to slowly switch to using BlockStates for everything and remove
blocks IIRC
L789[15:46:26] <c64cosmin> so it's fine
for now to use the getHardness
L790[15:46:42] <risux> Is there some new
property that, even though the collision box of a block is null,
adds some resistance to it like a liquid?
L791[15:46:49] <KnightMiner> Yep, unless
it has "Forge, replaced with blah blah" overriding it is
fine
L792[15:47:17] <KnightMiner> risux: yeah,
though I have to double check the name
L793[15:48:17] <KnightMiner> Here it is,
isEntityInsideMaterial
L795[15:48:38] <KnightMiner> Return true
if the material is water, though you might want to do some checking
as to where the entity is in your block
L796[15:49:13] <risux> Thanks :)
L797[15:52:45] <risux> Actually wait, this
is to actually add resistance. I didnt mean I wanted to do that, I
meant that the block I'm working with has a resistance to it even
though the collision box is null. Like I can't actually walk
through it.
L798[15:53:18] <KnightMiner> Come
again?
L799[15:53:28] <risux> I'll reword
L800[15:53:28] <KnightMiner> You want to
remove the resistance?
L801[15:53:31] <risux> Yeah
L802[15:53:40] <KnightMiner> Oh, your
block must still claim its solid
L803[15:53:44] <risux> oh
L804[15:53:54] <KnightMiner> Again, let me
double check the method name
L806[15:54:26] <KnightMiner> isPassible
should be it
L807[15:57:43] <risux> Its still nearly
impossible to walk through the block.
L808[15:57:55] <risux> I can slowly get
through it, and then it just pushes me back out if I let off
L809[15:58:30] <KnightMiner> Hmm, try a
few of those other methods. IsOpaqueCube for example
L810[15:58:42] <risux> I have that set
false, thats just for rendering as far as I know
L811[15:58:47] <KnightMiner> isFullCube
could be it too, Mojang has like 8 methods that should do the same
thing...
L812[15:59:29] <risux> isFullCube,
isFullBlock.... whats the difference. This is kinda
ridiculous
L813[15:59:43] <KnightMiner> I know
L814[16:00:01] <KnightMiner> I know like
half of them simply call isFullCube, it should be the main one for
a lot of things
L815[16:00:15] <KnightMiner> I just have
the three and its fine, isOpaque, isFill, and isPassable
L817[16:01:09] <KnightMiner> isFullCube
seems to be the same thing you set there
L818[16:01:14] <risux> isFullCube let me
through
L820[16:01:19] <risux> That should be
renamed
L821[16:01:27] <KnightMiner> Yep, they all
should
L822[16:01:44] <Corosus> KnightMiner, i
probably was live debugging something and never ended up removing
it
L823[16:01:45] <KnightMiner> I guess you
can think of it as the block is not full, so I can walk inside
it
L824[16:01:53] <KnightMiner> Makes
sense
L825[16:02:51] <risux> Yeah but then what
does isFullCube do? lmao
L826[16:03:11] <KnightMiner> That was
isFullCube, is isFullBlock separate?
L827[16:03:20] <Corosus> the full purpose
of them all has always been confusing as hell
L828[16:03:53] <Corosus> i couldnt explain
it, i just tried shit till it worked when i made this, no
pushout
L829[16:05:54] <risux> *sigh*
L830[16:13:00] ⇦
Quits: Ipsis (~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk) (Ping
timeout: 204 seconds)
L831[16:14:13] <Raycoms> Can someone tell
me what I'm doing wrong:
L834[16:14:23] <Raycoms> it somehow can't
find the blockstate
L835[16:20:40]
⇨ Joins: Shawn|i7-Q720M
(~shawn156@c-73-153-76-80.hsd1.co.comcast.net)
L836[16:29:11] ⇦
Quits: Hgrebnednav_
(~Hgrebnedn@ptr-908g3otq75flp80u6yj.18120a2.ip6.access.telenet.be)
(Ping timeout: 186 seconds)
L837[16:29:32]
⇨ Joins: AforAnonymous (bitch2k@212.108.51.241)
L838[16:37:35]
⇨ Joins: Kolatra (~Kolatra@abrarsyed.com)
L839[16:37:49] <PaleoCrafter> did you
actually just come from the stream, Kolatra? :P
L840[16:38:04]
⇨ Joins: Hubry (~Hubry@pip9.t19.ds.pwr.wroc.pl)
L841[16:38:58] <capitalthree>
stream?
L843[16:39:26] <Hubry> the stream just
ended, btw
L844[16:39:36]
⇨ Joins: Randysdoom
(~Randysdoo@2601:243:c300:92b0:fc2b:6099:11c:2764)
L845[16:39:48] <ghz|afk> yep
L846[16:39:54] <capitalthree> oh no!
L847[16:39:56] <ghz|afk> I was watching
;P
L848[16:39:57] <capitalthree> I will
remain a shit modder
L849[16:40:05] <capitalthree> maybe next
stream...
L850[16:40:10] <ghz|afk> it wasn't a
modding stream
L851[16:40:10] <capitalthree> oh wait
*core* mod
L852[16:40:12] <Hubry> there's always
vods
L853[16:40:20] <capitalthree> I am afraid
to make a core mod anyways, problem solved
L854[16:40:20] <ghz|afk> it was a best
practices Q&A
L856[16:40:48] <PaleoCrafter> and
apparently that needs an update because it mentions SHA-1
L857[16:41:16]
⇨ Joins: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L858[16:41:50] <Hubry> the ftb policy
announcement is up
L859[16:42:42] <capitalthree> why is the
jar signing page papered with warnings saying it's not
secure?
L860[16:42:45] <masa> hmm, what exactly
does that jar signing do without some external key repository to
compare the key to?
L862[16:43:01] <PaleoCrafter> nothing,
really, masa
L863[16:43:08] <capitalthree>
"Signatures are used as sanity checks, so that developers are
able to check if they are running their own un-edited
code."
L864[16:43:11] <capitalthree> how would
this be an issue?
L865[16:43:26] <PaleoCrafter> the best we
can do without an external authority is crosscheck signatures from
different mods
L866[16:43:27] <masa> if 9minecraft want
to add some malicious code, wouldn't they just sign their version
with their own key and everything "seems fine" again
according to Forge?
L867[16:43:29] <capitalthree> if I want to
make sure I'm running my own code, I compile it and run that
L868[16:43:32] <capitalthree>
>_>
L869[16:43:33] <PaleoCrafter> Forestry
used to do that, for instance, iirc
L870[16:43:45] <capitalthree> forestry
used to do a lot of things that aren't a great example :P
L872[16:45:38] <KnightMiner> No idea how
(not in charge of the build process), or what we do with it, but it
happens
L874[16:46:36] <ghz|afk> KnightMiner:
forge has done signature checking for years
L875[16:46:40] <ghz|afk> so if someone
edits the jar
L876[16:46:43] <ghz|afk> forge will
complain in the logs
L877[16:47:01] <KnightMiner> So I guess
that is just externally edited then, not someone built their
own?
L878[16:47:07] <ghz|afk> yes
L879[16:47:20] <ghz|afk> someone opening
the jar in winzip and dropping some extra files in it? signature
won't match
L880[16:47:30] <ghz|afk> but if they build
and self-sign their own, forge won't care
L881[16:47:34] <capitalthree> issued to
mercurius.minecraftforge.net
L882[16:47:36] <masa> but if they just
sign the jar with their own key... then everything seems
fine?
L883[16:47:36] <capitalthree> that's
pretty strange, yeah
L884[16:47:46] <ghz|afk> *currently*
L885[16:48:02] <capitalthree> yeah
exactly
L886[16:48:13] <ghz|afk> Lex did mention
the possibility in the future of having a similar good practices
for non-core mods
L887[16:48:15] <capitalthree> I'll happily
bother with jar signing when there's any ability to actually care
about who the correct publisher is :P
L888[16:48:19] <ghz|afk> but yeah -- in
the future
L889[16:48:32] <ghz|afk> that doesn't
remove the fact it's good to sign the mods
L890[16:48:50] <capitalthree> well it
would be good if it did anything xD
L891[16:48:58] <ghz|afk> it does
L892[16:49:05] <ghz|afk> it lets people
manually verify the mod jar
L893[16:49:16] <masa> right...
L894[16:49:16] <ghz|afk> and see if the
signature ID matches the expected one
L895[16:49:33] <PaleoCrafter> again, you
could currently enforce this by checking your own mods' signatures
from within others, the violation event is fired for all mods
L896[16:49:44] <masa> I guess I'll add
signing to all my mods when I next build them
L897[16:49:46] <capitalthree> true. this
could be a useful part of someone's CI or publishing automation or
something
L898[16:49:57] <capitalthree> it doesn't
really seem relevant once your mod is posted on curse though
L899[16:50:13] <ghz|afk> maybe not for
YOU
L900[16:50:23] <ghz|afk> but it's
something that only costs you a few minutes to set up
L901[16:50:30] <ghz|afk> and it opens up
the doors for others to make use of the info
L902[16:50:52] <ghz|afk> and that's the
whole point of it, so far as I understand the idea
L903[16:50:53] <capitalthree> I'm just not
keen on half-measures
L904[16:51:04] <ghz|afk> look at it
another way
L906[16:51:12] <ghz|afk> suppose you do
sign your jar
L907[16:51:15] <ghz|afk> and next
month
L908[16:51:25] <ghz|afk> forge adds
non-coremod signature enforcement
L909[16:51:30] <ghz|afk> your jar would
work
L910[16:51:32] <ghz|afk> mine
wouldn't
L911[16:51:39] ⇦
Parts: JDLogic_ (~JDLogic_@cpe-76-174-210-17.socal.res.rr.com)
())
L912[16:51:44] <PaleoCrafter> there's a
mod distribution platform in the works that will display some
"verified" marker next to files that were uploaded with a
known and trusted signature, similar to GPG signing with git
L913[16:52:03] <capitalthree>
modistry?
L914[16:52:11] <masa> would it make sense
to make a mod that could be configured by pack authors with the
keys per modids...
L915[16:52:27] <masa> although when
distributing through curse, the benefit would be fairly small I
imagine
L916[16:52:35] <capitalthree> yeah fair
enough
L917[16:52:42] <masa> other than hacked
accounts and malware versions of mods, like TiC last year
L918[16:52:52] <manmaed> PaleoCrafter do
you know what i need for jarsigning?
L919[16:52:55] <capitalthree> D:
L920[16:53:01] <capitalthree> you're not
talking about my TiC fork I hope!
L921[16:53:05] <ghz|afk> manmaed: 2 lines
in your buildscript, and a signature file
L923[16:53:29] <capitalthree> I forked TiC
last year, but it's not malware, unless you consider making it so
tools can burn in lava to be malware :P
L924[16:53:50] <ghz|afk> no
L925[16:53:55] <ghz|afk> tic's curse
account was hacked
L926[16:54:00] <ghz|afk> and malware jars
were uploaded to it
L927[16:54:25] <manmaed> i read that i
dont know what to put for keyStore, alias, storePass and
keyPass
L928[16:54:28] <Hubry> that wasn't even a
mod jar though right? forge didn't touch it, you had to run it
yourself
L929[16:54:28] <masa> capitalthree: no :D
I mean the time when mDiyo's account got compromiosed, and a
malware version of TiC got uploaded (and approved by CF too!)
L930[16:54:47] <ghz|afk> Hubry: I didn't
dig that deeply into it
L931[16:55:11] <KnightMiner> TiC does not
have a curse account, just one author got hacked :P
L932[16:55:11] <ghz|afk> manmaed: that's
the things you used in keytool, to generate the signature
file
L933[16:55:12] <masa> nope, it wasn't a
mod, you had to manually run it
L934[16:55:22] <manmaed> i have a jks
file
L935[16:55:34] <capitalthree> masa: well
damn that's pretty crappy
L936[16:55:40] <ghz|afk> so that jks file,
has a certificate in it
L937[16:55:42] <masa> I still have that
compromised file laying around...
L938[16:55:44] <capitalthree> masa: and I
always assumed anything gets "approved" by CF
L939[16:56:02] <ghz|afk> keyStore = the
jks file
L940[16:56:07] <KnightMiner> I think their
approval process is based on how trustworthy you are
L941[16:56:09] <capitalthree> although
that's kinda hilarious. if someone was going to bother to go to the
trouble of replacing a minecraft mod with malware, it's really not
hard to make your malware load as a minecraft mod
L942[16:56:10] <ghz|afk> alias = the name
of the certificate within the jks file
L943[16:56:19] <capitalthree> and it could
be a polyglot naughty jar that loads as a mod *or* directly
executes
L944[16:56:19] <ghz|afk> storePass = the
master passwordof the jks file
L945[16:56:23] <KnightMiner> For example,
mDiyo has 20 million downloaads on a project, so they probably
trust things he uploads
L946[16:56:24] <ghz|afk> keyPass = the
password of the certificate
L947[16:56:29] <capitalthree> maybe I
shouldn't give people ideas
L948[16:57:08] <capitalthree> anyways the
problem is still that the jarsigning page says "Once again
keep in mind that this system is not intended to be a security
measure. With enough malicious intend it can be circumvented."
For all this talk about security needs, it's claiming not to offer
any security.
L949[16:57:09] <KnightMiner>
preInit(MaliciousCode.main())
L950[16:57:14] <KnightMiner> Not like its
hard to do
L951[16:57:18] <capitalthree> yep
L952[16:57:44] <TechnicianLP> the only
thing that bother me about the signing thing is: we need some way
to say "hey im <name> and these are my
cert.-fingerprints" (because selfsigned is a bit stupid in
that sense ... (in the TiC example it could have just been signed
with a different key ...))
L953[16:57:45] <capitalthree> so how do we
know jarsigning is relevant to the mDiyo situation if the forge
team is insisting that it can be circumvented?
L954[16:57:58] <ghz|afk> TechnicianLP:
that's why they want to set up a place to do that
L955[16:58:10] <ghz|afk> some
"authority" to validate your identity
L956[16:58:21] <ghz|afk> and tell people
what your fingerprint should be
L957[16:58:31] <ghz|afk> it's in the
talks
L958[16:58:33] <ghz|afk> but nothing
confirmed
L959[16:59:22] <Lumien> I feel like the
main thing from the guidelines is the visible source thing
anyway
L960[16:59:26] <TechnicianLP> thats one
thing ... (but forge should check that (and warn the user if it
isnt there)
L961[16:59:56] <ghz|afk> that's not
forge's reposnsibility
L962[17:00:03] <KnightMiner> Visible
source is the main thing that I want anyways
L963[17:00:12] <LexMobile> Mornin
guys
L964[17:00:17] <KnightMiner> Its
impossible to tell how some modd is breaking stuff when we cannot
even see what they are doing
L965[17:00:19] <manmaed> ghz how do i find
the certificate name
L966[17:00:20] <KnightMiner> Morning
L967[17:00:25] <KnightMiner> Well, more
evening for me
L968[17:00:27] <capitalthree> oh visible
source is a requirement for coremods now, huh? that's neat
L969[17:00:33] <ghz|afk> manmaed: YOU ran
keytool to generate the jks, you typed that name in
L970[17:00:41] <capitalthree> I want the
whole minecraft community to go open source
L971[17:00:42] <ghz|afk> it's your jks, so
your should know it
L972[17:00:53] <capitalthree> very little
makes me facepalm harder than a minecraft modder who has closed
source mods and has a patreon xD
L973[17:00:54] <manmaed> a real name and
an org
L974[17:01:03] <LexMobile> Is there any
actual questions I need to answer right now?
L975[17:01:03] <c64cosmin> what is the
moment when a block is destroyed, either by a player either by a
explosion or the creative destruction?
L976[17:01:22] <ghz|afk> capitalthree:
it's a best practice, not requirement
L977[17:01:27] <KnightMiner> Lex: people
were asking about jar signing, not sure if anyone had specific
questions
L978[17:01:34] <capitalthree> LexMobile:
I'm really curious if you know, why are there the "this can be
circumvented, this is not a security measure" warnings on the
page about jar signing? is that going to be removed later when the
system is better proven?
L979[17:01:47] <LexMobile> No
L980[17:02:02] <ghz|afk> capitalthree:
remember Windows Vista and the driver signing?
L981[17:02:03] <LexMobile> Its there
specifrically for the asshats who think I dont know anything about
security.
L982[17:02:04] <capitalthree> so it's
never expected to be an actual secure feature?
L983[17:02:15] <ghz|afk> and how people
were annoyed because windows wouldn't load drivers if they weren't
signed by microsoft?
L984[17:02:17] <LexMobile> Its NOT inteded
to be a SECURITY feature
L985[17:02:21] <LexMobile> its meant as a
trust feature
L986[17:02:28] <ghz|afk> THAT is what is
required to enforce it
L987[17:02:30] <PaleoCrafter> Not really
regarding this thing, but does the dep extraction thing need any
changes from your side, I'd go to sleep now otherwise :D
L988[17:02:31] <ghz|afk> that level of
annoyance
L989[17:02:36] <ghz|afk> so forge won't do
that
L990[17:02:44] <LexMobile> go to sleep i
will look at it eventually
L991[17:02:49] <LexMobile> need to talk to
DB and cpw about it
L992[17:03:17] <PaleoCrafter> okay, great.
I've used the LZMA lib as reference for now, fyi
L993[17:03:19] <capitalthree> ok let me
try to be more clear in my question
L994[17:03:44] <capitalthree> LexMobile:
is it suspected that these signatures could be forged, to that jars
could be maliciously tampered while preserving someone else's
signature? or are you calling it insecure for other reasons?
L995[17:04:17] <LexMobile> if a modder
does it right the forging isnt a real issue
L996[17:04:32] <TechnicianLP> if there
will be a community thingy for verifying signatures - will forge
care about it? (or would the enduser (who has no clue and will
always hit yes) have to care and compare the
cert-fingerprint?)
L997[17:04:35] <LexMobile> but SHA1 is
broken so if someone wants to they COULD make a SHA1 forged key
fairly easily
L998[17:04:45]
⇨ Joins: darknsided (~darknside@46.72.241.190)
L999[17:04:46] <LexMobile> That combined
witht eh fact that there is no central revocation list
L1000[17:04:47] <darknsided> hello
L1001[17:04:55] <LexMobile> Makes this
nowhere near a security system.
L1002[17:04:55] <capitalthree> oh right
sha1 o_o why is it using sha1 then?
L1003[17:05:01] <darknsided> Hello
guys
L1004[17:05:02] <LexMobile> But
signatures for the basic sense that they are are fine.
L1005[17:05:04] <ghz|afk> hello
L1006[17:05:13] <LexMobile> it uses
whatever algo you tell it to
L1007[17:05:15] <darknsided> How to
change spawn mobs?
L1008[17:05:21] <capitalthree> ahh
ok
L1009[17:05:30] <capitalthree> thanks
Lex
L1010[17:05:44] <c64cosmin> Google
prooved recently how to forge a checksum
L1011[17:05:55] <ghz|afk> darknsided:
your mob, or vanilla, or what?
L1012[17:06:01] <LexMobile> I just want
to make this completly clear this WAS NEVER intended as SECURITY
system. My 18 years of security work wouldn't let me even THINK of
this as SECURITY system.
L1013[17:06:10] <LexMobile> This is just
a identification system as cpw said
L1014[17:06:38] <darknsided> I have a
server with mods on Forge
L1015[17:06:43] <capitalthree> I was just
wondering because despite those warnings, everyone here was happily
cooking up security-sensitive use cases for it
L1016[17:06:50] <capitalthree> like
preventing malicious builds from being uploaded to curse
L1017[17:06:58] <LexMobile> Mainly, The
warning in his post is because people think they know better then i
do about security and I want to make it VARY clear thats NOT what
this is.
L1018[17:07:09] <LexMobile> ya ther eis
nothing to stop that
L1019[17:07:13] <capitalthree> so
basically it's defensive because people harass you a lot? :(
L1020[17:07:16] <LexMobile> A trusted
author can betray your trust
L1021[17:07:24]
⇨ Joins: Meronat
(uid190493@id-190493.highgate.irccloud.com)
L1022[17:07:25] <capitalthree> oh well of
course
L1023[17:07:29] <LexMobile> There is
LITERALLY nothign we can do to stop that
L1024[17:07:34] <darknsided> stop
flood
L1025[17:07:44] <capitalthree> when I
think about the security of a signing system, I am just thinking
about whether an *untrusted* author can betray your trust for a
trusted author
L1026[17:08:12] <LexMobile> Seince there
is no central authroity, yes there is a chance of spoofing if
modders do their keys wrong.
L1027[17:08:29] <LexMobile> But i dont
ahve the manpower to run a central auth so this is just what we got
to do.
L1028[17:08:41] <LexMobile> But as it
sits its a million times better then what we have right now.
L1029[17:08:58] <capitalthree> ok. but
this can still be a secure way for a modding team to, eg, verify
builds for their own internal automated publishing platform, if
they keep their keys properly secured?
L1030[17:09:00] <LexMobile> As it would
require actual work for the spoofer. Instead of the 0 work it is
now.
L1031[17:09:06] <darknsided> How to
change spawn mobs?
L1032[17:09:11] <KnightMiner> So I assume
the idea is instead of anyone can make a fake build, it takes a bit
of work to make a fake build?
L1033[17:09:22] <ghz|afk> darknsided: I
don't know what you want to change
L1034[17:09:26] <LexMobile> Get a mod
that changes the spawns.
L1035[17:09:36] <LexMobile> Ya sorta
Knight.
L1037[17:09:49] <capitalthree> I don't
think it would be much work
L1038[17:10:05] <LexMobile> We have
sights out there right now that distribute modified/compleetly
different jar files under the names of certian popular mods.
L1039[17:10:20] <capitalthree> yeah I
hate those sites
L1040[17:10:26] <LexMobile> I know of
atleast 3 that make tons of money by shipping 'Minecraft Mods'
which are just trojan installers.
L1041[17:10:30] <LexMobile> This is to
help that.
L1042[17:10:47] <capitalthree> I run a
minecraft server and every day my dumbass players are like
"hey look this mod I want is available for 1.11.2!" and I
have to tell them "oh yeah? find it on a real website
then"
L1043[17:10:57] <LexMobile> mm
L1044[17:11:03] <LexMobile> Anyways,
beyond signing anything else?
L1045[17:11:23] <darknsided> I would like
to change the number of emerging mobs on the Forge server
L1046[17:11:26] <darknsided>
ghz|afk
L1047[17:11:43] <darknsided> Why should I
look at mods?
L1048[17:11:48] <capitalthree> I mean I
could ask my modding question of the moment... how do I check if
it's legal to place a block (as in won't create illegal triple
chests or whatever), but without protecting entities (still want to
be able to fill up spaces and suffocate them)?
L1049[17:12:00] <ghz|afk> darknsided:
because forge doesn't have that directly.
L1050[17:12:05] <ghz|afk> you need a mod
to change that
L1051[17:12:09] <Hubry> darknsided: and
you got linked a mod that has one purpose - modifying mob
spawns
L1052[17:12:10] <ghz|afk> so you should
search for mods
L1053[17:12:32] <ghz|afk> I don't know if
the one I linked can change the frequency of the mobs
L1054[17:12:36] <TechnicianLP> the
mod-maven-thingy - will it support regular maven dependencies?
(non-mods)(i guess that will be up to the launchers creating the
maven anyways ...)
L1055[17:12:39] <ghz|afk> I just gave you
one link
L1056[17:12:45] <capitalthree> In Control
looks pretty good and McJty is reputable. darknsided I'm not sure
what the problem is, go click ghz|afk's link
L1057[17:12:45] <ghz|afk> you can search
for mode
L1058[17:12:57]
⇦ Quits: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com) (Read error:
Connection reset by peer)
L1059[17:13:05] <darknsided> I have
version 1.7.10
L1060[17:13:19] <ghz|afk> well then look
for 1.7.10 mods
L1061[17:13:37] <ghz|afk> we are not here
to google for you
L1062[17:13:41] <darknsided> nice
help
L1063[17:13:42] <darknsided> man
L1064[17:13:43] <darknsided> !
L1065[17:13:44] <PaleoCrafter>
TechnicianLP, it does
L1066[17:13:44] <darknsided> :D
L1067[17:13:53] <masa> capitalthree:
maybe look at World#mayPlace() and what it calls?
L1068[17:14:00] <darknsided> delete
channel
L1069[17:14:02] <darknsided> please
L1070[17:14:05] <darknsided> no
help
L1071[17:14:08] <masa> just take out the
check for collidinh entity AABBs
L1072[17:14:10] <ghz|afk> thisis a
MODDING channel
L1073[17:14:13] <ghz|afk> not a mod-users
channel
L1074[17:14:23] <capitalthree> masa: ahh
good idea, I did look at that, I could just copy the code and edit
it
L1075[17:14:24] <PaleoCrafter> FML will
load anything on the list onto the classpath
L1076[17:14:26] <capitalthree>
thanks
L1077[17:14:34] <LexMobile> When it comes
to the maven stuff
L1078[17:14:37] <LexMobile> Maven is just
maven
L1079[17:14:44] <LexMobile> It doesnt
spoecifically need to be a @Mod.
L1080[17:14:53] <capitalthree> hey lex
wanna hear about the wacky fun mod feature I made last night?
L1081[17:15:01] <LexMobile> As long as we
know 'I want this jar to be included in the classpath/as a
mod'
L1082[17:15:04] <capitalthree> volatile
items... dropped blocks that are about to despawn place themselves
in-world instead
L1083[17:15:37] <Hubry> how does it
handle stacks?
L1084[17:15:48]
⇦ Parts: darknsided (~darknside@46.72.241.190)
())
L1085[17:15:55] <LexMobile> Just what I
thought, drop something and 5 mins later POOF moutain
L1086[17:16:00] <capitalthree> oh, it
handles stacks wonderfully. it places one block, then splits the
stack into up to 3 stacks that fly off in random directions
L1087[17:16:17] <capitalthree> yeah
exactly. mountains, filled in rivers and holes, etc
L1088[17:16:20]
⇨ Joins: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L1089[17:16:24] <capitalthree> it's as
hilarious as I fantasized it would be when I had the idea
L1090[17:16:25] <Hubry> put it on curse
and post on reddit for karma :P
L1091[17:16:51] <capitalthree> LexMobile:
also it was an addon feature to my despawn timer tweak mod. usually
I use it to turn despawn timers way up, but for use with this
feature it would probably be more fun to turn the timers way down
>:)
L1092[17:16:57]
⇦ Quits: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com) (Read error:
Connection reset by peer)
L1093[17:17:14] <capitalthree> Hubry: I
will post it today. just need a bit more polish
L1094[17:17:18] <KnightMiner> Set it to 5
seconds
L1095[17:17:23] <capitalthree> I still
have no legality checking, if you drop a pile of chests you get
highly illegal results :P
L1096[17:17:31] <KnightMiner> Drop a
stack of stone, mountain for you
L1097[17:17:49] <KnightMiner> Chests
don't exactly like that :P
L1098[17:17:55] <capitalthree> also part
of this is, if you are digging a tunnel and your inventory fills
up, you better not stop digging
L1099[17:18:04] <capitalthree> or the
earth will catch up and suffocate you as the tunnel fills in!
L1100[17:18:09] <Hubry> ...I think the
tunnel part is the best one
L1101[17:18:13]
⇨ Joins: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L1102[17:18:30] <Hubry> make it
configurable, pack makers will love it
L1103[17:18:52] <capitalthree> yeah. it's
already a modpack dev oriented mod, I'm a packer myself and I make
itch-scratch-ware mods
L1104[17:18:58] <capitalthree> (my other
mod is a server backup mod)
L1105[17:18:59] <TechnicianLP> i think
you should probably not do it for tileentites anyways ...
L1106[17:19:05] <capitalthree> this
feature I'm adding is just-for-fun and is off by default
L1107[17:19:16] <capitalthree> what kinda
configuration options do you have in mind?
L1108[17:19:39] <TechnicianLP>
white/blacklist of block(states) could be cool
L1109[17:19:46] <Hubry> well, time to
placing is a no-brainer
L1110[17:20:10] <capitalthree> Hubry: the
mod is already for configuring the dropped item despawn timers, so
that's in place
L1112[17:20:50] <capitalthree> it's just
the new silly feature, which I call "hardcore mode," that
isn't yet on curse
L1113[17:20:51] <KnightMiner> If it fails
to place, does it just linger until it finds a spot?
L1114[17:21:06] <KnightMiner> I can
imagine situations where a partial block lets it sit there without
placing
L1115[17:21:07] <capitalthree> I'm gonna
make it just lose the block if it fails to place in its current
location
L1116[17:21:23] <capitalthree> it will
still fragment and launch the rest of the stack away and
potentially place other blocks
L1117[17:21:29] <Hubry> hmmm.. this mod
makes me think of something I wanted once
L1118[17:21:34] <capitalthree> but that
guarantees that dropped stack sizes eventually go to 0
L1119[17:21:35] <KnightMiner> I have seen
the occasional mod that does with with saplings by the way, just
never all blocks
L1120[17:21:45] <capitalthree> do
saplings count as ItemBlock?
L1121[17:21:51] <KnightMiner>
Should
L1122[17:22:00] <capitalthree> if so,
then they should work out of the box with hardcore mode as
currently implemented
L1123[17:22:11] <capitalthree> but I do
want to come up with functionality for other items, eg, arrows will
just shoot themselves in random directions
L1124[17:22:21] <KnightMiner> OR seeds to
plant themselves?
L1125[17:22:34] <KnightMiner> Bonemeal
use itself on grass/crops
L1126[17:22:35] <capitalthree> yeah
basically it's gonna be whatever I can come up with. you leave your
toys out, crazy shit happens.
L1127[17:22:41] <capitalthree> tools will
start digging through the floor
L1128[17:23:00] <Hubry> ouch, player
deaths will hurt if you aren't using gravemods
L1129[17:23:03] <KnightMiner> But
couldn't I just leave a few pickaxes to make a quarry then?
L1130[17:23:18] <Hubry> the quarry will
fill itself :P
L1131[17:23:19] <KnightMiner> I mean, I
guess it will start to fill itself in if I wait too long
L1132[17:23:24] <KnightMiner> Yeah
L1133[17:23:48] <capitalthree> Hubry: btw
lingering loot's default config sets a 1 hour despawn timer on
items dropped by player death
L1134[17:24:03] <capitalthree> but of
course, if someone wants to use hardcore mode they are also
encouraged to lower the despawn timers in general
L1135[17:24:04] <Hubry> capitalthree: I
wanted to mention that, I think I need your mod
L1136[17:24:09] <Hubry> I don't really
like the grave mods
L1137[17:24:12] <capitalthree> Hubry: I
just linked it above
L1138[17:24:19] <Hubry> I know :P
L1139[17:24:19] <KnightMiner> I found a
pretty cool one called Souls
L1140[17:24:27] <KnightMiner> Instead of
a grave block, its a monster
L1141[17:24:28] <capitalthree> I like
grave mods but I like it when you have to actually craft a grave
and carry it in your inventory
L1142[17:24:32] <capitalthree> not just
free graves for all
L1143[17:24:55] <capitalthree> unascribed
made a feature called Spirit Graves, that is an entity, like what
KnightMiner describes maybe (you don't have to fight it
though)
L1144[17:25:05] <KnightMiner> You
actually have to fight your grave to get stuff back, and if you die
to lava/the void it will probably die
L1145[17:25:10] <capitalthree> and I am
working on adding a crafting recipe and making it require an item,
before I deploy it on my server
L1147[17:25:35] <KnightMiner> Thats the
one I use right now
L1148[17:25:39] <capitalthree> and bcak
in the 1.7.10 days I made a PR to OpenBlocks to add a config option
for requiring a grave in your inventory
L1149[17:25:44] <capitalthree>
(OpenBlocks had a graves feature)
L1150[17:25:52] <KnightMiner> Yep
L1151[17:26:09] <KnightMiner> Gravestone
Mod is a pretty good replacement for the openblocks one if you want
the simple style
L1153[17:26:41] <KnightMiner> Never been
a fan of anything more complex than that
L1154[17:26:48] <capitalthree> souls is
an interesting idea
L1155[17:27:05] <ghz|afk> same
L1156[17:27:06] <capitalthree> the
problem is so many of these mods are closed source
L1157[17:27:07] <ghz|afk> there was a
modpack
L1158[17:27:11] <ghz|afk> that had
corpses in it
L1159[17:27:16] <KnightMiner> Combined
with me using Antique Atlas for my Minimap, its pretty fun
L1160[17:27:22] <ghz|afk> and if those
corpses were dragged into lava or something, you'd lose the
items
L1161[17:27:27] <ghz|afk> I was like
"wtf do not want."
L1162[17:27:28] <capitalthree> so eg,
gravestone-mod is worthless to me because I can't make the edit I
made to OpenBlocks
L1163[17:27:53] <KnightMiner> Should be
able to do that with souls if you wish, throw in some item to do
that
L1164[17:28:10] <capitalthree> unascribed
made an unpublished tweaks mod that is kind of a grab bag of cool
stuff, including spirit graves and also other stuff
L1165[17:28:11] <KnightMiner> I also have
a backpack mod that drops on death instead of spilling out
L1166[17:28:24] <capitalthree> and I have
been finding it highly tempting to try to pull some of the
functionality out into standalone mods and publish them
L1167[17:28:28] <capitalthree> (he told
me he doesn't mind)
L1168[17:28:32] <KnightMiner> I want to
make one of those grab bag mods one day :P
L1169[17:28:55] <KnightMiner> Its half
random ideas that are too small for their own mod
L1170[17:29:02] <capitalthree> I still
feel like such a noob compared to most modders, I have 2 original
mods that are pretty tiny, and I jack other people's mods just to
make small tweaks
L1171[17:29:09] <capitalthree> but when I
see the size of other people's code I am flummoxed
L1172[17:29:31] <KnightMiner> I somehow
managed to join Tinkers despite having next to no experience, just
do what I did :P
L1173[17:29:41] <capitalthree> back in
the day I also published a fork of tinker's construct called
tinkered constructor, with some balance tweaks, because they were
refusing all my PRs
L1174[17:29:52] <Hubry> And I'm not a
modder at all. What I'm even doing here.
L1175[17:30:01] <KnightMiner> Well, the
indestructable items was a core of the mod
L1176[17:30:03] <capitalthree> I mean
they were balance tweak that apparently the tinker's construct devs
thought were stupid, but they were all offered as config
options
L1177[17:30:16] <KnightMiner> /o\
L1178[17:30:18] <capitalthree> hehe I
guess so but it's not how I wish to play it :P I find it too
silly
L1179[17:30:43] <KnightMiner> If I
recall, wern;t those PRs near the end of 1.7?
L1180[17:30:46] <ghz|afk> I wanted to
make a mod
L1181[17:30:49] <ghz|afk> where if a
player dies
L1182[17:30:52] <KnightMiner> I think
they were just done with builds
L1183[17:30:54] <ghz|afk> a corpse
remains of that player
L1184[17:30:58] <ghz|afk> including all
experience and such
L1185[17:30:59] <ghz|afk> and
L1186[17:31:06] <capitalthree>
KnightMiner: yeah you're correct, that was part of the reason
given, and then I was also told that they didn't like my
ideas
L1187[17:31:11] <ghz|afk> you have to
walk as a ghost to get back to it
L1188[17:31:24] <ghz|afk> or respawn at
your bed but you lose all that experience and have to walk back
manually
L1189[17:31:35] <KnightMiner> What was
there besides tools not being invincible?
L1190[17:31:40] <capitalthree>
KnightMiner: but at some point I'll try the same thing with modern
TiC. Like before, I'll PR it as config options that default to
changing nothing, and then if I get rejected again, I'll publish
the fork again for newer versions
L1191[17:31:41] <ghz|afk> and it would
have allowed someone to use a resurrection spell
L1192[17:31:46] <ghz|afk> that teleports
you to your corpse
L1193[17:31:54] <capitalthree> lemme look
it up, I had a list of my changes on my curse page
L1194[17:32:06] <ghz|afk> basically
MMO-style death
L1195[17:32:07] <ghz|afk> ;p
L1196[17:32:19] <capitalthree>
KnightMiner: by the way, I'm not questioning the team's right to
reject PRs they don't care about, of course
L1197[17:32:22] <KnightMiner> You might
be able to make an addon instead, I'm sure if you suggest adding
hooks if the feature is rejected it is more likely to be
accepted
L1198[17:32:25] <capitalthree> it would
just be convenient
L1199[17:32:39] <capitalthree> adding
hooks?
L1200[17:32:40] <KnightMiner> Yeah, I
know
L1201[17:32:51] <KnightMiner> Well, what
specific tweaks do you have in mind?
L1202[17:33:09] <capitalthree> so in
tinkered constructor, the 3 new options added (and enabled by
default, since I assume if someone was going out of their way to
download my version of the mod they wanted my changes),
L1203[17:33:15] <capitalthree> vulnerable
tools like you remember,
L1204[17:33:23] <capitalthree> life
canisters drop on death like any other loot,
L1205[17:33:28] <KnightMiner> Item
despawn might be hard to change with an addon due to how events
work (you could probably uncancel the event with a low
priority)
L1206[17:33:33] <capitalthree> and 3x
damage from dagger when thrown
L1207[17:33:37] <capitalthree> the latter
two are not relevant to modern TCon I think
L1208[17:33:49] <KnightMiner> Life
canisters always dropped on death I thought, but they are gone
now
L1209[17:33:51] <capitalthree> I did the
3x damage thing because the dagger otherwise seemed pretty useless
to throw
L1210[17:33:56] <capitalthree>
KnightMiner: nope you used to respawn with them
L1211[17:34:00] <KnightMiner> Dagger is
on the todo list
L1212[17:34:12] <capitalthree> which is
hilarious because tcon had *other* options enabled by default to
fuck with vanilla respawn mechanics in the direction of making
things harder
L1213[17:34:16] <capitalthree> oh cool
:D
L1214[17:34:26] <KnightMiner> It will be
properly balanced when added, I'll make sure of it
L1215[17:34:28] <capitalthree> do you
think the team would consider making the dagger have buffed damage
when thrown?
L1216[17:34:31] <capitalthree> ok
cool!
L1217[17:34:40] <KnightMiner> Not even
sure it will still have throwing
L1218[17:34:43] <capitalthree> after all
I don't fork tcon to be a butt, I just wanted what I wanted
:P
L1219[17:34:47] <KnightMiner> boni wants
all the tools to be unique
L1220[17:34:55] <capitalthree> it's
always easier if we can, like you say, have one tcon, and maybe an
addon mod if it's possible to do stuff that way
L1221[17:35:22] <capitalthree> making
dropped tools vulnerable is hard to do with an addon
L1222[17:35:30] <capitalthree> isn't a
melee weapon that is also thrown, unique?
L1224[17:35:56] <KnightMiner> Not right
now, but projectiles have always been weird
L1225[17:36:06] <Hubry> can't you bash
people with crossbows in TiC or did that change for TiC2
L1226[17:36:09] <KnightMiner> So there is
a chance the dagger will keep being thrown, or maybe javelins
L1227[17:36:41] <capitalthree> I really
hope so, I actually found the dagger fairly fun in my fork
L1228[17:38:10]
⇨ Joins: KnightMiner_
(~KnightMin@adsl-76-202-214-234.dsl.emhril.sbcglobal.net)
L1229[17:39:11] <KnightMiner_> (this is
why I prefer discord)
L1230[17:39:51]
⇦ Quits: KnightMiner
(~KnightMin@adsl-76-202-213-175.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L1231[17:40:02] ***
KnightMiner_ is now known as KnightMiner
L1232[17:40:05] <capitalthree>
KnightMiner: btw if you're curious, since I was publishing a fork
anyways I also changed a few defaults as per my balance
preferences... reduced slime island frequency some, disable keep
hunger on death, disable keep levels on death, and disable all
oreberry generation
L1233[17:40:25] <KnightMiner> We all
agree oreberries are OP
L1234[17:40:27] <capitalthree> the funny
thing is just making a few tweaks and republishing TiC got me far
more downloads than both my original mods D:
L1235[17:40:32] <KnightMiner> Thats why
we never brought them back
L1236[17:40:41] <capitalthree> not only
OP but just bad gameplay
L1237[17:40:44] <capitalthree> ore is not
supposed to be renewable
L1238[17:40:54] <KnightMiner> I just
remade the clay buckets from Iguana's and I got a ton of
downloads
L1239[17:41:03] <KnightMiner> Just find
something from 1.7 like that :P
L1240[17:41:09] <capitalthree> is
iguana's the one that makes tinker tools level up?
L1241[17:41:10] <Hubry> Ceramics, isn't
that that?
L1242[17:41:15] <capitalthree> that kind
of stuff drives me nuts xD
L1243[17:41:26] <KnightMiner> Yep,
leveling up is Iguanas, now its own mod
L1244[17:41:34] <KnightMiner> Bucket got
lost, so yeah, Ceramics is what I made
L1245[17:42:14] <KnightMiner> Still
missing the vanilla tool blocking, but not sure if that will be
brought back in any way
L1246[17:42:41] <capitalthree> ahh that's
something I am not keen on xD
L1247[17:42:44] <KnightMiner> But
anyways, no more hunger on death, no more levels on death
L1248[17:42:55] <capitalthree> I mean you
can probably guess, since some of my tweaks are just to make tcon
tools less dominant over other tools
L1249[17:43:04] <KnightMiner> Slime
islands is a config, no real reason to form for that
L1250[17:43:18] <capitalthree>
KnightMiner: yeah messing with vanilla respawn mechanics was always
a very strange default setting for a content mod
L1251[17:43:26] <KnightMiner> Yeah, part
of the issue in TiC 2 is less its more powerful, just more
intersting
L1252[17:43:33] <KnightMiner> Its like
its bad for being too good :P
L1253[17:43:34] <capitalthree> and yeah
like I said, I changed defaults in my fork because I had to publish
the fork anyways so why not
L1254[17:43:44] <capitalthree> but I'm
gonna see if I can do whatever I want without forking first
L1255[17:43:58] <capitalthree> I mean
first I try configuration, then I try tweaking with another mod,
then I try PR, and fork is last :P
L1256[17:44:00] <KnightMiner> mDiyo
originally just threw a bunch of random features in the mod
L1257[17:44:07] <KnightMiner> It was not
even Tinkers Construct at first
L1258[17:44:42] <KnightMiner> And we
generally have configs for anythign that might be a balance
concern, for example making obsidian in the smeltery
L1259[17:45:02] <KnightMiner> Invincible
tools is not, but thats something to ask about on the IRC channel
or in an issue
L1260[17:45:44] <capitalthree> yeah
that's something I find strange to not have a config option for,
just because it would be so easy
L1261[17:45:57] <capitalthree> I can't
imagine a risk of losing tools ruins the entire point of the
mod
L1263[17:46:22] <capitalthree> if
anything it makes you take your tools more seriously.
L1264[17:46:24] ***
PaleoCrafter is now known as PaleOff
L1265[17:46:29]
⇨ Joins: CoderPuppy (~cpup@32.218.117.4)
L1266[17:46:30] <capitalthree> maybe I
shouldn't bring my best upgraded pickaxe into the roguelike
dungeon.
L1267[17:46:31] <KnightMiner> Most of it
would just be replacing true with Config.blah
L1268[17:46:36]
⇨ Joins: sinkillerj
(~sinkiller@nc-67-232-8-104.dhcp.embarqhsd.net)
L1269[17:46:48] <capitalthree>
KnightMiner: yeah, I know, my PR for that was dead simple :P
L1270[17:47:09] <capitalthree> also yeah
making obsidian in the smeltery *is* pretty unbalanced
L1271[17:47:17] <capitalthree> I just did
it on my 1.11.2 server. soooo much obsidians
L1272[17:47:32] <capitalthree> is that
configurable?
L1273[17:48:09] <KnightMiner> I mean, you
don't get any more than from lava normally
L1274[17:48:09] <KnightMiner> ITs just
easier
L1275[17:49:13] <KnightMiner> Rate, no,
feature, es
L1276[17:49:44] <KnightMiner> *yes
L1277[17:49:51] ***
manmaed is now known as manmaed[away]
L1278[17:50:46]
⇦ Quits: cpup (~cpup@32.218.113.151) (Ping timeout: 383
seconds)
L1279[17:52:34] <capitalthree>
KnightMiner: yeah. well I mean, the thing is I also have buildcraft
:P
L1280[17:52:56] <capitalthree> so I was
able to pump lava directly into a smeltery while alloying it and
pumping back out into casting tables while I sit on my hands
L1281[17:53:01] <capitalthree> er
basins
L1282[17:53:27] <capitalthree> I will
admit that nothing is fast or convenient in TiC until you have a
mod that can move fluids xD
L1283[17:53:47] <TechnicianLP> it also
allows for obsidian without having a diamond pickaxe (sequence
breaking ...)
L1284[17:54:12]
⇨ Joins: KnightMiner_
(~KnightMin@adsl-76-202-215-18.dsl.emhril.sbcglobal.net)
L1285[17:55:15]
⇦ Quits: KnightMiner
(~KnightMin@adsl-76-202-214-234.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L1286[17:56:05] ***
KnightMiner_ is now known as KnightMiner
L1287[18:00:43] <Raycoms> Anyone can help
me with blockstates?
L1290[18:00:56] <Raycoms> For some reason
its not working out
L1291[18:02:26] <KnightMiner> That is
definately not how you do a blockstate
L1292[18:02:38] <KnightMiner> Each
variant is is own root tag, they are not nested
L1293[18:02:47] <KnightMiner> And you
need the forge marker at the top
L1294[18:03:03]
⇦ Quits: CoderPuppy (~cpup@32.218.117.4) (Ping timeout: 186
seconds)
L1296[18:03:54] <KnightMiner> So facing
will apply a rotation, and whatever your variant tag is will
provide the model
L1297[18:05:40] <capitalthree> hey
speaking of blockstates and rotations, right now my mod, for
placing blocks, just does this: world.setBlockState(pos,
type.block.blockState.baseState)
L1298[18:05:54] <capitalthree> but is
there a way to get a distribution of "reasonable" states,
besides just baseState?
L1299[18:07:02] <KnightMiner> Probably
want a getStateFromMeta call in there
L1300[18:07:38]
⇦ Quits: Rokiyo (~Rokiyo@101.167.173.217) (Ping timeout: 204
seconds)
L1301[18:08:01] <KnightMiner> Hard to
tell on a per block basis
L1302[18:08:21] <KnightMiner> In Tinkers,
you can ask for our variant property for the decorative blocks, but
that only applies to Tinkers
L1303[18:08:26] <KnightMiner> Chisel has
a similar one
L1304[18:08:45]
⇨ Joins: cpup (~cpup@32.218.117.40)
L1305[18:11:24]
⇦ Quits: Intektor (~Intektor@p5B2742D9.dip0.t-ipconnect.de)
(Quit: Leaving)
L1306[18:12:05]
⇨ Joins: Rokiyo (~Rokiyo@101.167.173.217)
L1307[18:14:30] <capitalthree>
KnightMiner: if I use getStateFromMeta, how do I find what values
are valid for a given block?
L1308[18:14:44] <capitalthree> and is
there a chance of some value being valid, but a bad idea for a mod
to be automatically placing?
L1309[18:15:03] <Raycoms> like that
KnightMiner
L1311[18:15:05] <Raycoms> ?
L1312[18:15:40] <KnightMiner> Is valid:
nearly impossible to tell as I am aware
L1313[18:15:59] <KnightMiner> Bad idea
for placing: almost definately for some states, but usually just
missing a dependant block
L1314[18:16:13] <KnightMiner>
getSubBlocks might actually help though, its server side in
1.12
L1315[18:16:49] <KnightMiner> Raycoms:
just follow the doc link I posted
L1316[18:16:55] <KnightMiner> You still
need it all in the variants tag
L1317[18:17:30] <KnightMiner> Its just
variants: [property{value:{},value2:{}},property2:{value3:{}}
L1318[18:17:32] <KnightMiner> ]
L1319[18:18:00] <Raycoms> Ah okay
L1320[18:20:04] <capitalthree> I might
just stick to baseState for now
L1321[18:20:11] <capitalthree> right now
I'm working in 1.11.2
L1322[18:20:16] <capitalthree> was gonna
do this feature first and then port
L1324[18:25:14] <Raycoms> now I got it
right?
L1325[18:25:28] <KnightMiner> facing=up
should just be up
L1326[18:25:33] <KnightMiner> Same with
the rest
L1327[18:26:12] <KnightMiner> If
property=value or property=value2, the structure is
property:{value:{},value2:{}}
L1328[18:26:35] ***
MrKickkiller is now known as MrKick|Away
L1329[18:27:07]
⇨ Joins: CoderPuppy (~cpup@32.218.117.91)
L1330[18:29:48]
⇦ Quits: cpup (~cpup@32.218.117.40) (Ping timeout: 204
seconds)
L1331[18:40:33]
⇦ Quits: bilde2910
(bilde2910@178.51-174-170.customer.lyse.net) (Ping timeout: 383
seconds)
L1332[18:42:52]
⇨ Joins: bilde2910
(bilde2910@178.51-174-170.customer.lyse.net)
L1333[18:44:39]
⇦ Quits: CoderPuppy (~cpup@32.218.117.91) (Ping timeout: 186
seconds)
L1334[18:44:58] <Raycoms> There is a
capability to make a "double chest" ?
L1335[18:45:02] <Raycoms> Is there*
L1336[18:46:42] <Raycoms> and how do I
register an item for two blockstates?
L1337[18:49:03]
⇨ Joins: KnightMiner_
(~KnightMin@adsl-76-202-215-169.dsl.emhril.sbcglobal.net)
L1338[18:50:25]
⇨ Joins: cpup (~cpup@32.218.117.121)
L1339[18:51:21]
⇦ Quits: KnightMiner
(~KnightMin@adsl-76-202-215-18.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L1340[18:54:20] <capitalthree> what does
the third argument, axisalignedbb, mean in mayPlace?
L1341[18:54:31] <capitalthree> (that's
not the argument name but there is no mapping for it)
L1342[18:54:56] <Raycoms> in which
case?
L1343[18:54:59] <Raycoms> which
method?
L1344[18:55:16] <capitalthree>
World.mayPlace
L1345[18:55:36] <capitalthree> it's a
boolean argument
L1346[18:56:51] <c64cosmin> spawnParticle
doesn't show any displayed particles, does anyone have been through
this?!?
L1347[18:57:09] <Raycoms> need to do it
on client side afaik c64cosmin
L1348[18:57:41] <c64cosmin> I feel like
donkey now, yes I was doing it on the server side...silly me,
thanks!
L1349[19:00:59] <Raycoms> =D we've all
been through this
L1350[19:01:20]
⇦ Quits: quadraxis
(~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
(Ping timeout: 201 seconds)
L1351[19:02:34]
⇦ Quits: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com) (Read error:
Connection reset by peer)
L1352[19:02:47] ***
KnightMiner_ is now known as KnightMiner
L1353[19:03:24]
⇦ Quits: Seppon (~Noppes@ip56530f2e.direct-adsl.nl) (Read
error: Connection reset by peer)
L1354[19:03:53] <primetoxinz> is there
anyway to make a furnace recipe preserve an nbt?
L1355[19:04:10]
⇨ Joins: srs_bsns
(blk@198-48-175-31.cpe.pppoe.ca)
L1356[19:04:16]
⇨ Joins: CoderPuppy (~cpup@32.218.117.158)
L1357[19:04:29] <capitalthree> there's
some pretty weird stuff
L1358[19:04:39] <capitalthree> like
getAge being @ClientOnly on EntityItems xD a headache for my
mod
L1359[19:04:56] <capitalthree> I guess I
can't call particles not working on the server weird stuff
though
L1360[19:05:01] <primetoxinz> just
reflect the age field capitalthree
L1361[19:05:02] <capitalthree> if it
didn't even crash your server, you're lucky :P
L1362[19:05:07] <capitalthree>
primetoxinz: yeah that's what I do
L1363[19:05:15] <capitalthree> I have an
extension function that wraps a reflection call
L1364[19:07:30]
⇦ Quits: cpup (~cpup@32.218.117.121) (Ping timeout: 201
seconds)
L1365[19:08:50]
⇦ Quits: Xalcon
(~Xalcon@ip4d171d68.dynamic.kabel-deutschland.de) (Remote host
closed the connection)
L1366[19:13:54]
⇨ Joins: howtonowin (~howtonotw@75.110.22.15)
L1367[19:17:01]
⇦ Quits: KnightMiner
(~KnightMin@adsl-76-202-215-169.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L1368[19:17:32]
⇨ Joins: KnightMiner
(~KnightMin@adsl-76-202-215-237.dsl.emhril.sbcglobal.net)
L1369[19:17:45] <Raycoms> how do I
register an item for two blockstates
L1370[19:17:45] <Raycoms> ?
L1371[19:18:02]
⇨ Joins: airbreather
(~airbreath@d149-67-99-43.nap.wideopenwest.com)
L1372[19:18:39] <howtonowin> Can you
clarify?
L1373[19:20:39] <Raycoms> I have a block
with two blockStates
L1374[19:20:46] <Raycoms> and I have 2
items for it in the creative tab
L1375[19:20:51] <Raycoms> but only one of
it with texture
L1376[19:22:05]
⇦ Quits: bilde2910
(bilde2910@178.51-174-170.customer.lyse.net) (Ping timeout: 190
seconds)
L1377[19:22:42] <howtonowin> You map
items to model definitions with ModelLoader.setCustomMRL, and you
have to do It for both items.
L1378[19:22:53]
⇦ Quits: CoderPuppy (~cpup@32.218.117.158) (Ping timeout: 200
seconds)
L1379[19:23:26] <Raycoms> and if I want
to make one of the blockStates not obtainable?
L1380[19:23:54] <howtonowin> Then don't
create an item for it.
L1381[19:23:56]
⇨ Joins: bilde2910
(bilde2910@178.51-174-170.customer.lyse.net)
L1382[19:28:32]
⇨ Joins: cpup (~cpup@32.218.117.172)
L1383[19:29:46] <Raycoms> I didn't
L1384[19:29:58] <Raycoms> Ahh sub items
get pulled?
L1385[19:30:08] <howtonowin> Yes
L1386[19:32:33] <Raycoms> Ahh
thanks
L1387[19:32:35] <howtonowin> So I'm
porting a PR for Forge 1.11 to 1.12. I checked out the 1.12.x
branch, ran gradle setup, changed some files, and then tried to run
genPatches. It failed with a bunch of "symbol not found"
errors. I didn?t touch any of the failing files. I?m not sure how
to proceed.
L1388[19:40:39]
⇦ Quits: cpup (~cpup@32.218.117.172) (Ping timeout: 186
seconds)
L1389[19:45:46]
⇨ Joins: KnightMiner_
(~KnightMin@adsl-75-5-68-62.dsl.emhril.sbcglobal.net)
L1390[19:46:48]
⇨ Joins: cpup (~cpup@32.218.117.207)
L1391[19:47:49]
⇦ Quits: KnightMiner
(~KnightMin@adsl-76-202-215-237.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L1392[19:48:47]
⇨ Joins: killjoy
(~killjoy@2606:a000:1118:8126:8545:b600:97f4:2d06)
L1393[19:51:29] <Raycoms> Howtonowin do
you know if there is a capability for double chests?
L1394[19:51:43]
⇨ Joins: Waterpicker
(~Waterpick@2602:306:35ba:ca40:fcc2:15a6:be45:c62f)
L1395[19:52:42] <howtonowin> Double
chests are done through a normal itemhandler cap, but the
capability instance is different depending on whether the chest is
single or double.
L1396[19:53:05] <howtonowin> You can look
at how it's done to make your own version
L1397[19:53:25] <howtonowin> (Or it might
already be generic enough, not sure)
L1398[19:56:03] <ghz|afk> it should be
generic enough
L1399[19:56:08] <ghz|afk> you shouldn't
need to distinguish them
L1400[19:56:11]
⇨ Joins: CoderPuppy (~cpup@32.218.117.240)
L1401[19:56:32] <ghz|afk> if you want to
implement a custom double-chest
L1402[19:56:38] <ghz|afk> it's just a
matter of combining the two inventories together
L1403[19:57:02] <ghz|afk> using
CombinedInvWrapper
L1404[19:57:44] <howtonowin> So I'm
porting a PR for Forge 1.11 to 1.12. I checked out the 1.12.x
branch, ran gradle setup, changed some files, and then tried to run
genPatches. It failed with a bunch of "symbol not found"
errors. I didn?t touch any of the failing files. I?m not sure how
to proceed.
L1405[19:57:53] <ghz|afk> howtonowin: I
have heard switching the existing forge repo to 1.12 doesn't really
work
L1406[19:57:59] <ghz|afk> and you need to
re-setup on a new folder
L1407[19:58:02] <ghz|afk> or manually
delete the caches
L1408[19:58:07] <ghz|afk> I don't know if
that's still the case
L1409[19:58:25] <howtonowin> I'll try
that, thanks
L1410[19:58:28]
⇦ Quits: cpup (~cpup@32.218.117.207) (Ping timeout: 204
seconds)
L1411[20:02:21] ***
Mumfrey is now known as mumfrey
L1412[20:10:08] <Raycoms> How do I
combine it with the CombinedInvWrapper? Do I have to set that
inside the TileEntity or in the block?
L1413[20:10:09]
⇦ Quits: Hubry (~Hubry@pip9.t19.ds.pwr.wroc.pl) (Quit: Good
night.)
L1414[20:11:21] <ghz|afk> Raycoms:
CombinedInvWrapper takes other IItemHandlerModifiables
L1415[20:11:34] <ghz|afk> you can just
get the two chest inventories, and combine them into one
L1416[20:11:42] <ghz|afk> in
getCapability
L1417[20:12:28] <howtonowin> getCap(...)
{ if (cap == ITEM_HANDLER) { if(single) return this.singleInv; else
return new CIW(this.singleInv, getOtherChest().singleInv); } ...
}
L1418[20:12:35] <howtonowin> Or
something
L1419[20:12:54]
⇨ Joins: cpup (~cpup@32.218.118.15)
L1420[20:13:21] <Raycoms> thanks =)
L1421[20:13:46] <capitalthree> I'm
thinking about trying to see if I can make exploding block stacks
push stuff around like pistons. anyone know if that's hard to
do?
L1422[20:14:50] <Raycoms> I doubt so, you
could just check if you can move a block like with a piston, if yes
explode else move the block like with a piston xD
L1423[20:15:07] <howtonowin> If worst
comes to worst, <C-C><C-V> on the piston code ?
L1424[20:15:20]
⇦ Quits: CoderPuppy (~cpup@32.218.117.240) (Ping timeout: 201
seconds)
L1425[20:15:30]
⇦ Quits: howtonowin (~howtonotw@75.110.22.15) (Quit: This
computer has gone to sleep)
L1426[20:17:24] <ghz|afk> I don't think
the problem is how hard it is
L1427[20:17:29] <ghz|afk> but how slow it
would be to do that
L1428[20:17:56] <capitalthree> also is
there some kind of block placing function that's typically used or
is setBlockState the way to go?
L1429[20:18:15] <ghz|afk> if all you want
to do is change the block that is placed in the world grid
L1430[20:18:19] <ghz|afk> then
setBlockState
L1431[20:18:31] <ghz|afk> if you want to
simulate a player placing a block, then check
ItemBlock#onItemUse
L1432[20:18:34] <capitalthree> and hmm my
mod wouldn't be pistoning stuff *constantly*
L1433[20:18:51] <ghz|afk> either
way
L1434[20:18:52] <capitalthree> ok.
simulating a player placing the block sounds good
L1435[20:18:55] <ghz|afk> gotta
sleep
L1436[20:18:56]
⇨ Joins: howtonotwin
(~howtonotw@75-110-22-15.gvllcmtk01.res.dyn.suddenlink.net)
L1437[20:18:58] *
ghz|afk poofs
L1438[20:19:42] <Raycoms> It seems like
the piston fires a block event for the moving
L1439[20:19:48] <Raycoms> Check out the
piston code I'd suggest
L1440[20:19:59] <capitalthree> thanks
will do!
L1441[20:20:19] <Raycoms>
worldIn.addBlockEvent(pos, this, 1, enumfacing.getIndex());
L1442[20:20:25] <Raycoms> that seems too
easy
L1443[20:20:58] <howtonotwin> That's not
the moving part, I don't think
L1444[20:21:29] <howtonotwin> It likely
just sets a flag somewhere "hey something changed plz
recalculate stuff"
L1445[20:22:15] <Raycoms> Ah what a
pity
L1446[20:22:17] <Raycoms> private boolean
doMove(World worldIn, BlockPos pos, EnumFacing direction, boolean
extending)
L1447[20:22:21] <Raycoms> the moving is
inside here
L1448[20:22:33] <capitalthree> awesome
:D
L1449[20:22:46] <capitalthree> gotta
figure out this ensuring legal placement thing first but then I
will do pistoning
L1450[20:23:08] <capitalthree> I'm
guessing ItemBlock#onItemUse is not going to be able to encase and
suffocate entities
L1451[20:23:24] <capitalthree> I want to
avoid illegal placement like too many chests next to each other but
still be able to suffocate things
L1452[20:23:57] ***
KnightMiner_ is now known as KnightMiner
L1453[20:24:55]
⇦ Quits: KGS (~KGS@h-158-174-9-249.NA.cust.bahnhof.se) (Ping
timeout: 186 seconds)
L1454[20:28:14] <Raycoms> Is there
anything smart to detect a block placement next to my tileEntity or
do I have to do it similar to vanilla?
L1456[20:31:43] <howtonotwin> Raycoms,
block updates should do.
L1457[20:32:23]
⇦ Quits: cpup (~cpup@32.218.118.15) (Ping timeout: 186
seconds)
L1458[20:35:50]
⇦ Quits: Delaxarnyazer (~Delaxarny@ip56572345.direct-adsl.nl)
(Ping timeout: 204 seconds)
L1459[20:37:27]
⇨ Joins: Delaxarnyazer
(~Delaxarny@2a02:a44e:91ce:1:80dc:7855:5421:3308)
L1460[20:38:08]
⇨ Joins: cpup (~cpup@32.218.118.34)
L1461[20:40:52]
⇦ Quits: howtonotwin
(~howtonotw@75-110-22-15.gvllcmtk01.res.dyn.suddenlink.net) (Quit:
This computer has gone to sleep)
L1462[20:44:22]
⇨ Joins: CoderPuppy (~cpup@32.218.118.40)
L1463[20:45:33]
⇦ Quits: cpup (~cpup@32.218.118.34) (Ping timeout: 201
seconds)
L1464[20:51:32] <capitalthree> what's the
difference between onItemUse and onItemRightClick?
L1465[20:53:00]
⇦ Quits: h5h77
(~h5h77@2a02:8108:4b40:907:922b:34ff:feae:b38b) (Remote host closed
the connection)
L1466[20:54:49]
⇦ Quits: primetoxinz
(~primetoxi@ip68-107-226-229.hr.hr.cox.net) (Remote host closed the
connection)
L1467[20:59:05]
⇨ Joins: halvors
(~halvors@2a02:fe0:c810:16b2:48ad:1018:9b91:fe40)
L1468[20:59:59] <halvors> Hi. I'm trying
to get my head around the (for me) new json blockstates and models
in 1.10.2, is it so that it's enough with a blockstates json file
for each block in order to texture it?
L1469[21:00:12] <Raycoms> Yes
L1470[21:00:39] <Raycoms> you can even
have multiple states of the same block in one blockState file
L1471[21:02:33]
⇨ Joins: cpup (~cpup@32.218.118.50)
L1472[21:02:35] <halvors> So i do not
need models for each block?
L1473[21:02:46] <halvors> Assume i have a
simple block that is just textured?
L1474[21:02:47]
⇦ Quits: Wastl2_ (~Wastl2@x4e34c765.dyn.telefonica.de) (Ping
timeout: 186 seconds)
L1475[21:05:37]
⇨ Joins: Wastl2
(~Wastl2@x4e34c637.dyn.telefonica.de)
L1476[21:06:25]
⇨ Joins: howtonotwin
(~howtonotw@75-110-22-15.gvllcmtk01.res.dyn.suddenlink.net)
L1478[21:06:45] <halvors> Any idea why
that might be?
L1479[21:07:58]
⇦ Quits: CoderPuppy (~cpup@32.218.118.40) (Ping timeout: 383
seconds)
L1480[21:07:59] <howtonotwin> Items do
get assigned models automatically
L1481[21:08:18] <howtonotwin> (There is
no relation between a block and its item in the model
system.)
L1482[21:08:48] <howtonotwin> Set it with
ModelLoader.setCustomMRL
L1484[21:09:49] <howtonotwin> halvors,
^
L1485[21:10:27] <howtonotwin> *Items do
not
L1486[21:11:56] <halvors> howtonotwin: I
do register the block with
ModelLoader.setCustomModelResourceLocation
L1487[21:12:14] <halvors> Or else it
wouldn't render in world would it?
L1488[21:14:10] <howtonotwin> 1) It is
impossible to set a BLOCK's model that way; it only works for
ITEMs. (A block-as-an-item is an item and is only related to the
block via a bunch of specialcases for ItemBlock) 2) Blocks are
automatically assigned their models via a statemapper, which
defaults to <blockregistryname>#<propertystring>
L1489[21:14:36] <howtonotwin> What
exactly did you write as the arg to ML.setCustomMRL?
L1490[21:15:21]
⇨ Joins: CoderPuppy (~cpup@32.218.118.61)
L1492[21:17:27] <howtonotwin> Do you
register the item block before that call?
L1493[21:17:33] <howtonotwin>
*ItemBlock
L1494[21:19:30] <halvors> Yeah.
L1495[21:19:46] <howtonotwin> Well that's
funky. Can you post the logs?
L1497[21:20:32] <halvors> Oh, wait. I
messed up when testing this earlier i think.
L1498[21:20:36] <halvors> Let me
test.
L1499[21:20:38] <howtonotwin> Also, fyi,
you'll need to change those resource names to snake_case if you
want to use this mod on 1.11+
L1500[21:21:30]
⇦ Quits: cpup (~cpup@32.218.118.50) (Ping timeout: 383
seconds)
L1501[21:21:34] <halvors> Oh.
thanks.
L1502[21:21:55] <halvors> just lowercase
and underscores?
L1503[21:21:58] <howtonotwin> yes
L1504[21:22:38] <halvors> You know the
TileEntitySpecialRender from 1.7.10.
L1505[21:23:23] <halvors> Is it possible
to do dynamic OBJ renders where i load a OBJ model and does OpenGL
rendering for rotation parts of it etc in 1.10.2? Or is it just as
much hassle as i fear?
L1506[21:24:12] <howtonotwin> If it's in
a TESR you can do whatever you like, just like before, but it will
be just as slow as before.
L1507[21:24:13] <halvors> howtonotwin: It
is working as expected now, thanks. I messed up when testing a
block earlier, the code that registered the
"setCustomMRL".
L1508[21:24:35] <halvors> :)
L1509[21:24:35] <howtonotwin> That's
great!
L1510[21:25:05] <halvors> howtonotwin:
Also, connected textures, is this now easy to do with json?
L1511[21:25:19] <howtonotwin> Very
L1512[21:25:27] <halvors> Ah nice.
L1513[21:26:10] <howtonotwin> See how the
fence does it for details
L1514[21:26:25] <halvors> Is it correct
that if i where to use the vanilla json format, i would need models
for each block and not just the blockstates file?
L1515[21:26:34] <halvors> Thanks, or
glass?
L1516[21:26:49] <howtonotwin> Glass isn't
connected
L1517[21:26:54] <howtonotwin> That's
optifine ?
L1518[21:27:14] <howtonotwin> The block
states file IS a model definition as far as the model system is
concerned
L1519[21:27:15] <howtonotwin> But
yes
L1520[21:27:40] <howtonotwin> There's a
new 1.9 format too that's less of a horror though
L1521[21:28:18] <howtonotwin> I suggest
you read that link I posted earlier
L1522[21:32:05] <halvors> Thank you very
much for all help :)
L1523[21:32:11] <halvors> I'll get
porting this mod :)
L1524[21:32:12]
⇦ Quits: bilde2910
(bilde2910@178.51-174-170.customer.lyse.net) (Ping timeout: 204
seconds)
L1525[21:32:28] <howtonotwin> np
L1526[21:33:39]
⇨ Joins: bilde2910
(bilde2910@178.51-174-170.customer.lyse.net)
L1527[21:36:43]
⇦ Quits: CoderPuppy (~cpup@32.218.118.61) (Ping timeout: 200
seconds)
L1528[21:41:03]
⇦ Quits: Umbraco
(~Umbraco@113x37x12x233.ap113.ftth.ucom.ne.jp) (Ping timeout: 201
seconds)
L1529[21:42:54]
⇨ Joins: cpup (~cpup@32.218.118.86)
L1530[21:45:29]
⇦ Quits: Raycoms (~Raycoms@2804:14d:baa6:25e1::1002) (Remote
host closed the connection)
L1531[21:45:52] <capitalthree> can
world.getMinecraftServer return null for a loaded world?
L1532[21:46:18] <capitalthree> better yet
what's the best way to get a WorldServer from an EntityItem?
L1533[21:47:32]
⇨ Joins: CoderPuppy (~cpup@32.218.118.106)
L1534[21:48:40]
⇦ Quits: cpup (~cpup@32.218.118.86) (Ping timeout: 204
seconds)
L1535[21:59:48] <halvors> howtonotwin: On
1.7.10 i could override getRenderBlockPass() in order for the block
to be transparent, how can i do that in 1.10.2?
L1536[22:00:12] <howtonotwin> Return the
render layer from Block.getRenderLayer()
L1537[22:01:08] <halvors> Ah thanks :)
Love the use of enums instead of just integers in 1.10.2 :D
L1538[22:01:44] <howtonotwin> And the
CUTOUT layer means that pixels are either completely transparent or
completely opaque, so it doesn't have to do blending like with
translucent pixels.
L1539[22:02:10]
⇨ Joins: McJty
(~jorrit@94-224-152-129.access.telenet.be)
L1540[22:05:05] <halvors> There is a way
to not render faces of the a block if the block next to it is the
same block, but i do not remember it, do you recall? Also same you
also can do in shouldSideBeRendered().
L1541[22:09:48] <howtonotwin> It's face
culling
L1542[22:10:28] <howtonotwin> You assign
"cullface: direction" to each face in the model file, and
then if an opaque block is on that side the face is never
drawn
L1543[22:11:23] <howtonotwin> IIRC
shouldSideBeRendered is what decides when to do the face
culling
L1544[22:11:54] <howtonotwin> halvors,
^
L1545[22:15:06] <halvors> Thanks :)
L1546[22:21:10]
⇨ Joins: primetoxinz
(~primetoxi@ip68-107-226-229.hr.hr.cox.net)
L1547[22:37:04] ***
Santa|afk is now known as SatanicSanta
L1548[22:38:36]
⇨ Joins: MikrySoft
(~kvirc@89-76-18-43.dynamic.chello.pl)
L1549[22:45:41]
⇦ Quits: primetoxinz
(~primetoxi@ip68-107-226-229.hr.hr.cox.net) (Remote host closed the
connection)
L1550[22:53:43]
⇦ Quits: Lathanael|Away
(~Lathanael@p5496046C.dip0.t-ipconnect.de) (Ping timeout: 186
seconds)
L1551[22:59:54]
⇨ Joins: Lathanael|Away
(~Lathanael@p5496020E.dip0.t-ipconnect.de)
L1552[23:01:43]
⇦ Quits: killjoy
(~killjoy@2606:a000:1118:8126:8545:b600:97f4:2d06) (Ping timeout:
186 seconds)
L1553[23:33:25]
⇦ Quits: sinkillerj
(~sinkiller@nc-67-232-8-104.dhcp.embarqhsd.net) (Quit:
またね)
L1554[23:33:28]
⇨ Joins: Umbraco
(~Umbraco@113x37x12x233.ap113.ftth.ucom.ne.jp)
L1555[23:38:49]
⇦ Quits: KnightMiner
(~KnightMin@adsl-75-5-68-62.dsl.emhril.sbcglobal.net) (Ping
timeout: 200 seconds)
L1556[23:40:21]
⇨ Joins: KnightMiner
(~KnightMin@adsl-75-5-68-236.dsl.emhril.sbcglobal.net)
L1557[23:43:29] <darkevilmac> Hey, I'm
trying to render an indicator of sorts on my block whenever it does
something, essentially I need to overlay a texture on my block with
a tile renderer.
L1558[23:43:50] <darkevilmac> I'm using a
tile for this instead of a block so I don't cause chunk updates too
much as the indicator on the block goes on quite a bit.
L1559[23:45:23]
⇨ Joins: Ipsis
(~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk)
L1560[23:55:43]
⇨ Joins: cpup (~cpup@32.218.118.178)