<<Prev Next>> Scroll to Bottom
Stuff goes here
L1[00:00:20] ⇦ Quits: williewillus (~williewil@cpe-24-28-24-13.austin.res.rr.com) (Quit: Leaving)
L2[00:00:47] ⇨ Joins: Ashindigo (uid202308@id-202308.hathersage.irccloud.com)
L3[00:07:44] ⇨ Joins: Hunterz (~hunterz@2001:af0:8000:1c01:6af7:28ff:fe37:5d6a)
L4[00:13:25] ⇦ Quits: bilde2910 (bilde2910@51.174.170.178) (Ping timeout: 189 seconds)
L5[00:15:43] ⇨ Joins: bilde2910 (bilde2910@51.174.170.178)
L6[00:20:06] ⇦ Quits: LordSkittles_ (~LordSkitt@101.191.24.47) (Quit: Leaving)
L7[00:21:21] ⇦ Quits: IceDragon (~ThatGuy@184.170.47.167) (Ping timeout: 384 seconds)
L8[00:24:50] ⇦ Quits: turmfalke (~turmfalke@p20030056CF23032E152D989A4F2753B0.dip0.t-ipconnect.de) (Quit: turmfalke)
L9[00:26:58] *** fry|sleep is now known as fry
L10[00:27:05] <fry> tterrag: poing
L11[00:30:28] ⇦ Quits: RandomX45 (~random@2601:44:8802:2060:cd3d:37f2:6e90:25d9) (Ping timeout: 206 seconds)
L12[00:43:10] ⇨ Joins: RandomX45 (~random@2601:44:8802:2060:6127:2f84:23f9:92bc)
L13[00:47:06] *** minecreatr is now known as Mine|dreamland
L14[00:57:18] ⇨ Joins: VikeStep (~VikeStep@192.43.96.58.static.exetel.com.au)
L15[00:59:42] ⇨ Joins: Cooler (~CoolerExt@45.249.156.60)
L16[01:03:04] ⇦ Quits: Brokkoli (~Brokkoli@p5B23C6BC.dip0.t-ipconnect.de) (Quit: Die Sprache der Politik ist daf�r gemacht, dass L�gen wahr klingen und das T�ten angemessen wirkt. (George Orwell))
L17[01:03:17] ⇦ Quits: RandomX45 (~random@2601:44:8802:2060:6127:2f84:23f9:92bc) (Ping timeout: 206 seconds)
L18[01:03:47] *** Darkevilmac is now known as DarkevilAway
L19[01:07:43] ⇦ Quits: kinggoesgaming (uid23106@id-23106.tooting.irccloud.com) (Quit: Connection closed for inactivity)
L20[01:16:46] ⇨ Joins: RandomX45 (~random@2601:44:8880:f4a5:84ec:8442:2df3:dfd9)
L21[01:22:36] ⇨ Joins: CoolerExtreme (~CoolerExt@45.249.156.60)
L22[01:23:54] ⇨ Joins: mux (webchat@174-25-150-118.ptld.qwest.net)
L23[01:25:38] ⇦ Quits: Cooler (~CoolerExt@45.249.156.60) (Ping timeout: 194 seconds)
L24[01:30:03] <FusionLord> With Tinkers' Construct is the Furnace Controller the only way to pipe in and out of the furnace?
L25[01:30:40] ⇦ Quits: mux (webchat@174-25-150-118.ptld.qwest.net) (Quit: Web client closed)
L26[01:30:40] ⇨ Joins: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net)
L27[01:32:53] ⇨ Joins: muxxx (~mux@174-25-150-118.ptld.qwest.net)
L28[01:33:19] <muxxx> Woot! Anyone around?
L29[01:36:57] <Kaiyouka> I am, but I'm unhelpful so I hope you're not in need of help :p
L30[01:38:12] <muxxx> Heh, good to be up front about it. ;) Have a question about registering custom entities and eggs.
L31[01:38:53] <Kaiyouka> I don't think I've touched mod code since 1.8. If entity registry hasn't changed since then, maybe I can help. If it has, hell if I know anymore.
L32[01:39:52] <muxxx> I don't think it's changed much since 1.8, but this might a higher-level question anyhow. :)
L33[01:40:25] <Kaiyouka> Well, worst case scenario I can at least give you a laugh :p
L34[01:40:33] <muxxx> I have created a custom llama class, and this class will have a few different types of llama, controlled by variables in the llama class.
L35[01:41:33] <Kaiyouka> oooh llamas
L36[01:41:36] <muxxx> I would like to have separate spawn eggs that will spawn each type of llama individually, even though they're the same class. (Not randomly picking a llama type each spawn)
L37[01:42:07] <muxxx> Can I do this, or do I have to have each llama type be a separate class?
L38[01:42:22] <Kaiyouka> I feel like it can be done
L39[01:42:44] <muxxx> Seems like there should be a way to pass in different constructor values from different egg types, but can't find an example of this anywhere.
L40[01:42:55] ⇦ Quits: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a) (Ping timeout: 206 seconds)
L41[01:43:30] ⇨ Joins: Noppes (~Noppes@ip56530f2e.direct-adsl.nl)
L42[01:43:47] <tterrag> muxxx: you could always just create your own spawn eggs
L43[01:43:52] <tterrag> but I think that is possible
L44[01:44:34] <muxxx> I have a spawn egg for my custom llamas, but can't figure out how to make additional ones with different constructor values.
L45[01:45:03] ⇨ Joins: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a)
L46[01:45:13] <muxxx> Oh, you mean override the spawn egg type and make a custom egg type? Might work...
L47[01:46:29] <muxxx> Also thought there might be a way to register the same class multiple times with different constructor values in the EntityRegistry.
L48[01:47:55] <Kaiyouka> I'd boot into Eclipse and try to trace some helpful confirmations on any of that but I'm afraid my computer might explode trying to do that > w >;
L49[01:48:36] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 194 seconds)
L50[01:48:38] <tterrag> muxxx: use IEntityAdditionalSpawnData or whatever it's called now
L51[01:48:43] <tterrag> instead of multiple registratyions
L52[01:48:43] ⇦ Quits: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a) (Ping timeout: 206 seconds)
L53[01:49:01] ⇨ Joins: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a)
L54[01:49:02] <tterrag> fry: what would you say to a PR making VanillaModelWrapper public and exposing a few protected methods for overriding?
L55[01:49:14] <fry> probably no
L56[01:49:51] <fry> anything that IModel doesn't expose is subject to unexpected change with the next MC version
L57[01:50:03] <fry> and limits you from using custom models
L58[01:50:53] <fry> if you have something in mind that's exploitable by everyone - then it should be a subinterface of IModel
L59[01:51:06] <muxxx> tterag - I'll look that up, thanks!
L60[01:51:15] <tterrag> well, the problem is my model "with extras" I need to be able to do stuff based on the info in the ModelBlock
L61[01:51:22] <fry> what info?
L62[01:51:29] <tterrag> which has no ties to the IBakedModel, only the VanillaModelWrapper has the mappings between them
L63[01:51:36] <fry> what info?
L64[01:51:37] <tterrag> part/face info
L65[01:51:41] <fry> why?
L66[01:52:32] <tterrag> https://drive.google.com/file/d/0BwDDNuT6abxIalJIeXhrZ1prR1k/view?usp=sharing
L67[01:52:44] <tterrag> that's a potential new model format I'm trying to implement
L68[01:52:59] <tterrag> as you can see, I need to be able to map our extra info (at the bottom of the model file) to individual parts/faces
L69[01:53:26] <tterrag> so I can do chisely things to them at render-time
L70[01:56:36] ⇨ Joins: Hgrebnednav_ (~Hgrebnedn@d8d872a6e.access.telenet.be)
L71[01:58:52] <tterrag> the current way we do things is limited, it applies a given "face" to every quad facing in that direction. there's no way to do something like a beacon, which has different textures on different parts (hence why it's part of the spec)
L72[01:59:11] <fry> all I see right now is accessing the texture name
L73[01:59:19] <fry> which is exposed alteady
L74[01:59:23] <fry> *already
L75[02:00:03] <MCPBot_Reborn> [TEST CSV] Pushing snapshot_20170112 mappings to Forge Maven.
L76[02:00:07] <MCPBot_Reborn> [TEST CSV] Maven upload successful for mcp_snapshot-20170112-1.11.zip (mappings = "snapshot_20170112" in build.gradle).
L77[02:00:16] <fry> + you shouldn't put additional info inside the vanilla model file
L78[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/
L79[02:00:50] <fry> because, if it ever updates (and it probably will), you'll have to either drop support for all your old models, or rewrite the vanilla loader
L80[02:01:27] <tterrag> fry: the point is we want to be transient to vanilla
L81[02:01:33] <fry> transient?
L82[02:01:37] <tterrag> if the mod is removed, the resources should load fine by the vanilla loader
L83[02:01:44] <tterrag> ours just "intercepts" and adds things
L84[02:02:09] <tterrag> so we can't require users to point to our custom files in their blockstates, or completely change the format
L85[02:02:32] <fry> put your "interseptions" in a separate resource pack, and keep vanilla parts in the main resourcepack
L86[02:02:44] <fry> put that interception resource pack in the mod jar
L87[02:02:46] <fry> done
L88[02:03:06] <tterrag> "users" in this case will mostly be mods
L89[02:03:09] <tterrag> not resource packs
L90[02:03:17] <tterrag> mods cannot easily have separate resource packs
L91[02:03:25] <fry> yes they can?
L92[02:03:52] <tterrag> how?
L93[02:04:03] <fry> mod.jar + resourcepack.zip? :P
L94[02:04:15] <tterrag> so, two file downloads? no
L95[02:04:32] <tterrag> great way to assure this gets no adoption whatsoever
L96[02:04:43] * gigaherz yawns
L97[02:04:58] <gigaherz> I was going to link to how I add a custom resourcpack in my guidebook mod, but github is down
L98[02:05:02] <gigaherz> so
L99[02:05:15] <gigaherz> couldn't you you check if resourcepath+".extra.json" exists inside ICustomModelLoader#accepts?
L100[02:05:30] <fry> you can
L101[02:05:57] <gigaherz> this way you only take over models that have the extra data present, and you can have the normal json as a dependency
L102[02:06:11] ⇦ Quits: smbarbour (~smbarbour@c-73-211-171-154.hsd1.il.comcast.net) (Ping timeout: 384 seconds)
L103[02:06:20] <gigaherz> well not a dependency, then you'd have a loop
L104[02:06:31] <tterrag> that doesn't really solve the problem then
L105[02:06:37] <tterrag> I still need to associate things to different parts/faces
L106[02:06:43] <tterrag> whether it's a separate file or not isn't really the concern
L107[02:06:46] <fry> you haven't explained why
L108[02:07:58] <tterrag> well, github seems to be down or something
L109[02:08:11] <fry> then we wait :P
L110[02:08:12] <tterrag> yeah rip github
L111[02:08:42] <tterrag> "We are failing over a data service, you may experience exceptions and delay while receiving notifications. Apologies for the inconvenience."
L112[02:09:32] <tterrag> fry: http://pastebin.com/ZNmgzq9E
L113[02:09:37] <tterrag> that's the old/current way of doing it
L114[02:09:52] <tterrag> that class structure is read directly from json
L115[02:10:09] ⇨ Joins: npe|office (~NPExcepti@bps-gw.hrz.tu-chemnitz.de)
L116[02:10:42] <tterrag> it's bad in a number of ways, but the point is that it needs to say "this direction uses this type of rendering"
L117[02:10:53] <tterrag> now, in the new format, I need to say "this specific face of this specific part uses this type of rendering"
L118[02:11:06] <tterrag> for which I need to be able to cross reference the ModelBlock info with the baked data
L119[02:15:56] <fry> what's IChiselFace?
L120[02:16:12] <fry> github seems to be up for me
L121[02:16:58] ⇦ Quits: Hgrebnednav_ (~Hgrebnedn@d8d872a6e.access.telenet.be) (Read error: Connection reset by peer)
L122[02:19:03] <tterrag> yep, unrip
L123[02:19:10] ⇦ Quits: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a) (Ping timeout: 206 seconds)
L124[02:19:15] <tterrag> fry: https://github.com/Chisel-Team/Chisel/blob/1.10/dev/src/main/java/team/chisel/client/render/ModelChisel.java
L125[02:19:18] <tterrag> the same file on GH
L126[02:19:24] <fry> ty
L127[02:19:27] <tterrag> (bit different since I've started my refactor)
L128[02:20:26] <tterrag> IChiselFace is more or less a glorified list of textures. that's why it's being phased out
L129[02:20:45] <tterrag> basically just consider it more or less identical to an IChiselTexture[]
L130[02:20:52] <fry> which is? :P
L131[02:21:05] <tterrag> https://github.com/Chisel-Team/Chisel/blob/1.10/dev/src/main/java/team/chisel/api/render/IChiselTexture.java
L132[02:21:16] <fry> in words? :D
L133[02:21:38] ⇨ Joins: Holocene (~Genuine@66-191-1-249.dhcp.knwc.wa.charter.com)
L134[02:22:06] <tterrag> any amount of "real" textures (resource locations) and a render type. used for, say, a CTM texture, or some other special rendering
L135[02:23:31] ⇦ Quits: VikeStep (~VikeStep@192.43.96.58.static.exetel.com.au) (Ping timeout: 206 seconds)
L136[02:24:00] ⇦ Quits: Toluene (~Genuine@104.200.154.21) (Ping timeout: 206 seconds)
L137[02:24:04] <fry> what's IBlockRenderContext?
L138[02:25:01] <tterrag> data bean for a render type. what gets passed into the extended state, basically
L139[02:25:15] <tterrag> you're going a bit too deep :P
L140[02:25:45] <fry> so, in what way transformQuad is different from IBakedModel.getQuads?
L141[02:26:45] ⇨ Joins: gigaherz|work (~gigaherz@84.89.63.25)
L142[02:27:38] <tterrag> well, it is called from there
L143[02:28:09] <tterrag> but the point is that it applies the render type to the given quad
L144[02:28:40] <fry> why do you have a particle texture per texture?
L145[02:30:20] <tterrag> because a chisel texture can be multiple "real" textures
L146[02:30:32] <tterrag> getParticle is basically just saying which one represents it best
L147[02:30:55] <fry> where is it called?
L148[02:30:58] <tterrag> poorly named? perhaps
L149[02:31:43] <tterrag> is that important? :P
L150[02:31:47] <tterrag> it's called during face parsing
L151[02:32:01] <tterrag> which is another thing due to be phased out, so not really relevant to the current problem
L152[02:33:08] <fry> all I see so far is copies of IBakedModel, and converters from objects to longs
L153[02:33:12] <fry> nothing concrete
L154[02:33:42] <tterrag> https://github.com/Chisel-Team/Chisel/tree/1.10/dev/src/main/java/team/chisel/client/render/type
L155[02:33:55] <tterrag> https://github.com/Chisel-Team/Chisel/tree/1.10/dev/src/main/java/team/chisel/client/render/texture
L156[02:35:49] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L157[02:37:04] <fry> what's the purpose of quadGoal?
L158[02:38:14] <tterrag> hacky way to avoid z-fighting
L159[02:38:18] <tterrag> in reality it's only ever 1 or 4
L160[02:38:46] <tterrag> not my design, but it works
L161[02:38:51] ⇨ Joins: VikeStep (~VikeStep@192.43.96.58.static.exetel.com.au)
L162[02:39:39] <fry> so, nothing inside those 2 folders seems to care about anything from ModelBlock
L163[02:40:31] <tterrag> no, why would it? that's the thing I'm working on now. like I said, the old way only cares about facing
L164[02:40:37] <tterrag> which is a property of the quad
L165[02:40:54] <fry> and what do you want to care about?
L166[02:42:28] <tterrag> look at the spec, I need to know what quads came from what part/face of the model
L167[02:42:56] <fry> the pastebin one?
L168[02:43:08] <tterrag> no, the zip
L169[02:43:35] <fry> all I see there is "faces": { "beacon": ["blocks/beacon", "blocks/lines"] }
L170[02:43:42] <fry> is there something else?
L171[02:44:08] <tterrag> nope, not really
L172[02:44:18] <tterrag> but the point is I need to know where "beacon" is used
L173[02:44:27] <fry> so, again, that only uses the texture
L174[02:44:41] <fry> which is exposed in the BakedQuad
L175[02:45:38] <fry> is there any reason that doesn't work for you?
L176[02:45:53] <tterrag> hm
L177[02:45:58] <tterrag> can I access metadata from that?
L178[02:46:01] <tterrag> texture metadata, that is
L179[02:46:05] <fry> metadata?
L180[02:46:08] <tterrag> .mcmewta
L181[02:46:10] <tterrag> -w
L182[02:46:49] <fry> if you bake with custom textureGetter (which you do already somewhere), you can associate TAS with the resourcelocation
L183[02:46:55] <fry> (or do that in some other way)
L184[02:47:14] <fry> then, you get mcmeta however you're doing that already
L185[02:47:26] <tterrag> I mean, the TAS already has the RL name
L186[02:47:27] ⇨ Joins: Hgrebnednav (~Hgrebnedn@d8D872A6E.access.telenet.be)
L187[02:47:31] <tterrag> so that seems trivial
L188[02:47:45] <fry> also, TextureAtlasSprite.animationMetadata
L189[02:47:54] <fry> (which doesn't have a getter, but oh well)
L190[02:48:03] <fry> (assuming you want that section)
L191[02:48:07] <tterrag> no
L192[02:48:10] <tterrag> our own section :P
L193[02:48:38] <fry> TAS doesn't store anything else directly
L194[02:48:56] <tterrag> nope, I'd have to reverse lookup
L195[02:48:59] <fry> but anyway, there you go, anything else you need from ModelBlock? :P
L196[02:49:02] <tterrag> but that would only be a one-time op
L197[02:49:17] <fry> yup, loading time, not very important
L198[02:49:19] <tterrag> hm...not at the current time. but this is still early stages. still plenty of roadblocks left
L199[02:49:29] <tterrag> thanks for the help
L200[02:49:36] <fry> ask again if you need something else :P
L201[02:49:37] <tterrag> I'm not sure why I didn't think of reverse engineering the TAS info
L202[02:49:45] <fry> most likely it's already exposed
L203[02:50:15] <tterrag> unfortunately it's 4AM and I have no brain power to try doing this now
L204[02:50:23] <fry> fair enough :P
L205[02:50:29] <tterrag> night :P
L206[02:53:06] <fry> night
L207[02:53:30] <fry> (TAS is exposed for the breaking model retexturing, which does more or less exactly what you want to do :D)
L208[02:55:22] <tterrag> more less than more
L209[02:55:23] <tterrag> what?
L210[02:55:29] <tterrag> :P
L211[02:57:13] <fry> https://pics.onsizzle.com/Facebook-92e2d9.png
L212[03:01:39] <tterrag> fry: hold up
L213[03:01:49] <tterrag> TAS will tell me the RL, not the "#beacon" identifier
L214[03:02:03] <tterrag> eh, nvm, I can map that 1-1 during parsing
L215[03:02:30] <fry> keep in mind that long chains are possible
L216[03:02:52] <fry> "left" maps to "side" that maps to "stone"
L217[03:02:54] <fry> e.t.c.
L218[03:03:07] <tterrag> yeah I have yet to decide exactly how well I will support that
L219[03:03:22] <tterrag> I'll have to see
L220[03:03:26] <fry> why don't you want to use the actual resource location? :P
L221[03:03:51] <tterrag> well it would look a bit silly to say "foo/bar" : ["foo/bar", "foo/baz"]
L222[03:04:04] <fry> but it would work for anything
L223[03:04:12] <fry> and not for just json models :P
L224[03:04:41] <tterrag> I suppose
L225[03:05:12] ⇨ Joins: Upthorn (~ogmar@wsip-174-79-184-178.dc.dc.cox.net)
L226[03:05:15] <fry> right now there's technically nothing stopping you from working with objs too, for example
L227[03:05:43] <tterrag> except for the fact that our system is meaningless for non axis-aligned quads :p
L228[03:06:20] <fry> can it not be meaningless? :P
L229[03:06:28] <fry> also, what happens for rotated json models? :P
L230[03:06:43] <tterrag> how could CTM be resolved for a quad that is between directions?
L231[03:07:11] <fry> I have no idea how your CTM works, so I can't answer that :P
L232[03:07:18] <tterrag> I mean the IDEA of ctm
L233[03:07:24] <tterrag> connections between block faces
L234[03:07:34] <tterrag> what face is a quad at a 45 degree angle a part of?
L235[03:08:19] <fry> how do you handle that right now, for non-axis-aligned faces of json models? :P
L236[03:08:25] <tterrag> we don't
L237[03:08:30] <tterrag> it's a requirement of using ctm
L238[03:08:33] <fry> what exactly happens? :P
L239[03:08:37] <tterrag> god knows
L240[03:08:41] <fry> lol
L241[03:08:42] <tterrag> it's undefined behavior
L242[03:08:58] <tterrag> our code doesn't attempt to special case it, it would probably act on whatever is returned from BakedQuad.getFacing
L243[03:09:13] <tterrag> which would look strange, but technically "work" I guess
L244[03:09:22] <fry> then doing the same for all models is probably not much worse
L245[03:09:38] <tterrag> no
L246[03:09:39] ⇦ Quits: Upth (~ogmar@wsip-174-79-184-178.dc.dc.cox.net) (Ping timeout: 384 seconds)
L247[03:09:47] <tterrag> all I mean is that it's *much* easier to do crazy models with obj
L248[03:09:57] <tterrag> the only way to do it with JSON is blockstate rotations
L249[03:10:04] <tterrag> I think?
L250[03:10:16] <fry> no, the json itself has rotations too
L251[03:10:32] <fry> in multiples of 22.5 degrees, but still not only axis-aligned
L252[03:10:44] <tterrag> ah well, it will be well documented as "supported, but undefined"
L253[03:10:54] <tterrag> nothing I can do, ctm as a concept just doesn't deal with that kind of thing
L254[03:11:17] ⇨ Joins: smbarbour (~smbarbour@c-73-211-171-154.hsd1.il.comcast.net)
L255[03:11:29] <fry> maybe you can spend a little bit more effort on actual design and think of a way to make it work? just a thought :D
L256[03:11:50] <fry> you've spent way too little time on that, it seems
L257[03:12:16] <tterrag> you tell me what a face at a 45 degree angle should connect to and I'll think about it
L258[03:12:19] <tterrag> I don't see how that can work, ever
L259[03:12:23] <tterrag> in any way that looks good
L260[03:12:58] <fry> if the face touches the side, and the block at that side is solid, use texture A, else use texture B? :P
L261[03:13:12] <fry> (touches with an edge)
L262[03:13:48] <fry> s/solid/some sane way of triggering connection/
L263[03:13:57] <tterrag> and if it touches both sides? think octagonal prism
L264[03:14:18] <fry> there's only so many cases for a quad
L265[03:14:22] <fry> even less for a triangle :P
L266[03:14:48] <tterrag> also, if I did what you say, it could result in a connection to a quad that is not flush, which looks awful
L267[03:15:19] <fry> that can happen already, if the face is not at the edge of the block, can it not? :P
L268[03:15:27] <fry> how do you handle slabs, for example?
L269[03:15:33] <fry> (top faces of slabs)
L270[03:15:50] <tterrag> well, ideally slabs would only connect to slabs. but at a point it becomes up to the resource designer
L271[03:16:10] <fry> which is a fine solution for objs/arbitrary models too
L272[03:16:26] <tterrag> I just think that angled quads are too much of an edge case to explicitly support beyond "I'll just use what the quad tells me"
L273[03:16:42] <fry> > edge case
L274[03:16:47] <fry> >.>
L275[03:17:11] <fry> also, what does the "quad tells you"? :P
L276[03:17:19] ⇨ Joins: TechnicianLP (~Technicia@p5DE945AB.dip0.t-ipconnect.de)
L277[03:17:24] <tterrag> all quads have a facing
L278[03:17:33] <tterrag> even if angled
L279[03:17:36] <tterrag> it computes the nearest facing
L280[03:17:37] <tterrag> no?
L281[03:18:01] <fry> yes, and that facing is basically closest facing to the face normal
L282[03:18:09] <tterrag> that's what I mean
L283[03:18:13] <fry> which is meaningless beyong meaning exactly that :P
L284[03:18:34] <fry> (and it's only used for uvlock, which is broken by design)
L285[03:18:43] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 384 seconds)
L286[03:19:18] <TechnicianLP> is there a way to get the name of the modpack my mod is running in? (if present)
L287[03:19:19] <tterrag> anyways, I should really get some sleep
L288[03:19:27] <tterrag> wat
L289[03:19:34] <tterrag> how would that even be defined
L290[03:19:37] <tterrag> bah, I don't have time
L291[03:19:38] <tterrag> night
L292[03:19:40] *** tterrag is now known as tterrag|ZZZzzz
L293[03:19:40] <fry> o/
L294[03:21:43] <TechnicianLP> i think path to folder would be better anyways ...
L295[03:21:49] ⇦ Quits: TechnicianLP (~Technicia@p5DE945AB.dip0.t-ipconnect.de) (Client Quit)
L296[03:23:27] ⇦ Quits: immibis (~chatzilla@122-61-224-36.jetstream.xtra.co.nz) (Ping timeout: 206 seconds)
L297[03:30:13] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L298[03:38:40] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 194 seconds)
L299[03:48:10] *** V is now known as Vigaro
L300[03:50:52] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L301[03:52:34] ⇨ Joins: iari (~iari___@tyaralin.shadowdrake.eu)
L302[03:57:56] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 180 seconds)
L303[04:03:37] *** Vigaro is now known as V
L304[04:03:37] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L305[04:15:26] ⇦ Quits: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net) (Ping timeout: 180 seconds)
L306[04:27:57] ⇦ Quits: jackmcbarn (jackmcbarn@gateway.insomnia247.nl) (Ping timeout: 192 seconds)
L307[04:29:31] ⇨ Joins: jackmcbarn (jackmcbarn@gateway.insomnia247.nl)
L308[04:39:53] ⇨ Joins: Upth (~ogmar@wsip-174-79-184-178.dc.dc.cox.net)
L309[04:40:13] ⇦ Quits: Upthorn (~ogmar@wsip-174-79-184-178.dc.dc.cox.net) (Killed (NickServ (GHOST command used by Upth)))
L310[04:40:14] *** Upth is now known as Upthorn
L311[04:54:04] ⇦ Quits: MoxieGrill (~MoxieGrrl@173-23-172-139.client.mchsi.com) (Ping timeout: 194 seconds)
L312[05:01:49] ⇨ Joins: MoxieGrrl (~MoxieGrrl@173-23-172-139.client.mchsi.com)
L313[05:25:17] ⇨ Joins: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se)
L314[05:32:59] ⇨ Joins: Upth (~ogmar@wsip-174-79-184-178.dc.dc.cox.net)
L315[05:38:41] ⇦ Quits: Upthorn (~ogmar@wsip-174-79-184-178.dc.dc.cox.net) (Ping timeout: 384 seconds)
L316[05:47:58] ⇦ Quits: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se) (Ping timeout: 206 seconds)
L317[05:59:46] ⇨ Joins: cpup (~cpup@32.218.114.36)
L318[06:01:56] ⇦ Quits: CoderPuppy (~cpup@32.218.119.167) (Ping timeout: 180 seconds)
L319[06:08:18] ⇨ Joins: Cast0077 (~Cast0077@24-181-179-41.dhcp.nwtn.ct.charter.com)
L320[06:11:15] ⇨ Joins: AtomicStryker (~AtomicStr@93.239.64.221)
L321[06:12:19] ⇨ Joins: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net)
L322[06:22:03] ⇦ Quits: Naiten (Naiten@5.143.101.212) (Read error: Connection reset by peer)
L323[06:30:11] ⇦ Quits: AtomicStryker (~AtomicStr@93.239.64.221) (Quit: Leaving)
L324[07:05:18] ⇨ Joins: MikrySoft (~mikrysoft@89-76-18-43.dynamic.chello.pl)
L325[07:35:29] ⇦ Quits: VikeStep (~VikeStep@192.43.96.58.static.exetel.com.au) (Read error: Connection reset by peer)
L326[07:39:49] ⇦ Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com) (Quit: Leaving)
L327[07:47:49] ⇨ Joins: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
L328[07:51:36] *** V is now known as Vigaro
L329[07:53:07] ⇨ Joins: IceDragon (~ThatGuy@184.170.45.185)
L330[08:06:15] ⇦ Quits: RandomX45 (~random@2601:44:8880:f4a5:84ec:8442:2df3:dfd9) (Quit: [Sein] Sein is just strong enough to throw it. [Prospero] but now you've dented the poor companion cube, you monster.)
L331[08:14:09] ⇨ Joins: turmfalke (~turmfalke@p20030056CF23035DC0A30F69FFAAF6AA.dip0.t-ipconnect.de)
L332[08:17:17] ⇨ Joins: fatguylaughing (~fatguylau@worx01.worxco.com)
L333[08:40:37] ⇦ Quits: Hunterz (~hunterz@2001:af0:8000:1c01:6af7:28ff:fe37:5d6a) (Remote host closed the connection)
L334[08:43:36] ⇨ Joins: Maxwell (~Maxwell@pool-108-50-151-21.nwrknj.fios.verizon.net)
L335[08:46:34] <Maxwell> Is there a way to get a bounding box of the chunk a TE is in? I can't seem to find a function that would return that. This can't possibly be the best way: https://gist.github.com/Maxwell-lt/c6cd47c081ee91995df6be2641376d1f
L336[08:47:44] <gigaherz|work> I think there's a function in like, world, which returns the chunk origin from coords
L337[08:48:00] ⇦ Quits: npe|office (~NPExcepti@bps-gw.hrz.tu-chemnitz.de) (Remote host closed the connection)
L338[08:48:19] <gigaherz|work> also you can avoid the if/else
L339[08:48:21] <gigaherz|work> by doing
L340[08:48:29] <gigaherz|work> x - (x&15)
L341[08:49:23] <fry> x & ~0xF
L342[08:49:34] <gigaherz|work> that works, too ;p
L343[08:49:49] <Maxwell> bitwise operators?
L344[08:49:53] <gigaherz|work> yes
L345[08:50:17] ⇨ Joins: TechnicianLP (~Technicia@p4FE1C313.dip0.t-ipconnect.de)
L346[08:50:59] *** amadornes[OFF] is now known as amadornes
L347[08:54:47] *** Vigaro is now known as V
L348[08:55:04] ⇦ Quits: cpw|out (~cpw@76-10-144-162.dsl.teksavvy.com) (Ping timeout: 206 seconds)
L349[08:57:21] ⇨ Joins: cpw|out (~cpw@24-212-223-237.cable.teksavvy.com)
L350[08:57:21] MineBot sets mode: +o on cpw|out
L351[08:57:45] *** cpw|out is now known as cpw
L352[08:58:26] *** diesieben|away is now known as diesieben07
L353[08:59:13] *** TTFT|Away is now known as TTFTCUTS
L354[09:03:03] *** DarkevilAway is now known as Darkevilmac
L355[09:05:57] ⇨ Joins: NamrocSmith (~NamrocSmi@2601:347:4000:42c9:5c2:b5f4:fd28:51b4)
L356[09:11:38] ⇦ Quits: Noppes (~Noppes@ip56530f2e.direct-adsl.nl) (Read error: Connection reset by peer)
L357[09:17:07] ⇨ Joins: Noppes (~Noppes@ip56530f2e.direct-adsl.nl)
L358[09:20:28] ⇨ Joins: ThePsionic (~Psi@ip5457f909.direct-adsl.nl)
L359[09:27:35] ⇨ Joins: williewillus (~williewil@cpe-24-28-24-13.austin.res.rr.com)
L360[09:28:19] ⇨ Joins: OrionOnline (~OrionOnli@dslb-178-005-152-051.178.005.pools.vodafone-ip.de)
L361[09:28:30] ⇦ Quits: Noppes (~Noppes@ip56530f2e.direct-adsl.nl) (Read error: Connection reset by peer)
L362[09:28:52] ⇨ Joins: Schwowsers (~Schwowser@pool-108-2-77-251.phlapa.fios.verizon.net)
L363[09:36:54] <williewillus> !latest
L364[09:41:22] <williewillus> !gm Block.isBlockSolid
L365[09:41:31] *** Keridos|away is now known as Keridos
L366[09:49:28] <Baughn> raoulvdberge: Hey
L367[09:49:49] <Baughn> raoulvdberge: Did you do anything special to the 1.2.16 release of RS?
L368[09:50:06] <Baughn> raoulvdberge: I ask because the MD5 listed on the download page on Curseforge does not match the MD5 of the download.
L369[09:50:27] <Baughn> raoulvdberge: The former is c46952df798066d5aa15c6109a247510, the latter is 4ca39eeea683aa122ba78c3a7c578711. Do you know which one is correct?
L370[09:52:58] <gigaherz|work> curseforge computes the md5 themselves
L371[09:53:11] <gigaherz|work> so if something changed, it's being intercepted between curseforge and you
L372[09:53:27] <Baughn> This is over https.
L373[09:53:41] <Lord_Ralex> that doesn't mean it couldn't be intercepted technically
L374[09:53:43] <Baughn> It's not comforting, in any case, but the *probable* cause would be corruption in Curse.
L375[09:53:46] <gigaherz|work> well
L376[09:53:48] <gigaherz|work> #curseforge
L377[09:53:52] <Baughn> Aka. bitflip on some disk
L378[09:53:52] <gigaherz|work> you could try asking there
L379[09:53:58] <Baughn> I shall.
L380[09:54:06] <Baughn> Ah -- just in case, could one of you try?
L381[09:54:11] <gigaherz|work> they should be in the office by now
L382[09:54:13] <Baughn> curl -L https://minecraft.curseforge.com/projects/refined-storage/files/2359886/download | md5sum
L383[09:55:46] <gigaherz|work> 4ca39eeea683aa122ba78c3a7c578711
L384[09:56:01] <Baughn> Ok, that's four locations now. Almost certainly Curse.
L385[09:56:32] ⇨ Joins: Girafi (Girafi@0x555178eb.adsl.cybercity.dk)
L386[09:57:16] <gigaherz|work> yep I'd report it to the curse people
L387[09:57:22] <gigaherz|work> worst case raoulvdberge may need to reupload
L388[09:57:29] <Lord_Ralex> Baughn, what version?
L389[09:57:36] <Baughn> https://minecraft.curseforge.com/projects/refined-storage/files/2364128
L390[09:57:37] <Lord_Ralex> cause your dl is pointing to a .14
L391[09:57:55] <Lord_Ralex> https://minecraft.curseforge.com/projects/refined-storage/files/2359886
L392[09:57:57] <Lord_Ralex> that's your file you linked
L393[09:58:08] <Lord_Ralex> which has the correct md5
L394[09:58:25] <Baughn> ...
L395[09:58:28] <Baughn> Wait a second.
L396[09:58:30] <Lord_Ralex> https://minecraft.curseforge.com/projects/refined-storage/files/2364128/download is .16
L397[09:58:38] <Lord_Ralex> which is then a different file, so different md5
L398[09:59:29] <Baughn> That appears to be the case. -_-
L399[09:59:37] <Baughn> Bloxgaaaate!
L400[10:00:08] ⇨ Joins: Toluene (~Genuine@66-191-1-249.dhcp.knwc.wa.charter.com)
L401[10:00:21] <Baughn> Okay, in retrospect I should have noticed that the url didn't change. *sigh*
L402[10:00:34] <Baughn> Figures, it's always PEBKAC somewhere.
L403[10:02:41] ⇦ Quits: Holocene (~Genuine@66-191-1-249.dhcp.knwc.wa.charter.com) (Ping timeout: 206 seconds)
L404[10:04:02] ⇨ Joins: McJty (~jorrit@94-224-154-146.access.telenet.be)
L405[10:09:02] <williewillus> anyone have a 1.8.x workspace (mdk or forge dev) handy? curious about something
L406[10:09:04] ⇨ Joins: Vazkii (~Vazkii@144.134.37.188.rev.vodafone.pt)
L407[10:09:15] <gigaherz|work> nope!
L408[10:09:52] ⇨ Joins: RandomX45 (~random@2601:44:8802:2060:6554:567c:3823:1f8)
L409[10:10:22] <gigaherz|work> it was a joke but no, I don't actually have any
L410[10:10:28] <gigaherz|work> I just looked, and the oldest I have is 1.9
L411[10:10:36] <gigaherz|work> but it doesn't matter since I cleanCache'd at some point after that
L412[10:10:41] <gigaherz|work> so I'd have to rerun setup either way
L413[10:10:49] <williewillus> just curious because I was looking at renaming a method: https://github.com/ModCoderPack/MCPBot-Issues/issues/331
L414[10:10:56] ⇦ Quits: McJty (~jorrit@94-224-154-146.access.telenet.be) (Ping timeout: 180 seconds)
L415[10:11:03] <williewillus> and the wiki says this for water in 1.9: No longer shows the flowing animation when against glass or stained glass.
L416[10:11:25] <gigaherz|work> and water calls that?
L417[10:11:37] <williewillus> liquids and fluids
L418[10:11:52] <heldplayer> Are we talking about cats?
L419[10:12:07] ⇦ Quits: Schwowsers (~Schwowser@pool-108-2-77-251.phlapa.fios.verizon.net) (Quit: Leaving)
L420[10:12:21] <williewillus> the method in question is called by getFlow, which is used both for rendering and for actually pushing things
L421[10:12:25] <williewillus> so there may be a connection
L422[10:14:29] ⇦ Quits: gigaherz|work (~gigaherz@84.89.63.25) (Remote host closed the connection)
L423[10:17:45] <williewillus> ooh got another one
L424[10:17:48] <williewillus> isFullyOpaque
L425[10:17:52] <williewillus> should really be isTopSolid
L426[10:18:24] ⇨ Joins: McJty (~jorrit@94-224-154-146.access.telenet.be)
L427[10:18:34] <williewillus> !gm Block.isFullyOpaque
L428[10:26:23] <MCPBot_Reborn> MCPBot_Reborn is now in read-only mode. Commands that change database data are currently disabled.
L429[10:27:08] ⇨ Joins: Zolingoto (~Melakion@50-35-186-32.evrt.wa.frontiernet.net)
L430[10:32:25] ⇦ Quits: MCPBot_Reborn (~MCPBot_Re@mcpbot.bspk.rs) (Remote host closed the connection)
L431[10:32:58] ⇨ Joins: MCPBot_Reborn (~MCPBot_Re@mcpbot.bspk.rs)
L432[10:37:36] ⇦ Quits: MCPBot_Reborn (~MCPBot_Re@mcpbot.bspk.rs) (Remote host closed the connection)
L433[10:38:23] ⇨ Joins: MCPBot_Reborn (~MCPBot_Re@24.152.202.255)
L434[10:41:18] <MCPBot_Reborn> MCPBot_Reborn is now in read-only mode. Commands that change database data are currently disabled.
L435[10:45:42] ⇦ Quits: CoolerExtreme (~CoolerExt@45.249.156.60) (Ping timeout: 206 seconds)
L436[10:51:23] ⇦ Quits: Searge|office (~Searge@h-85-24-130-18.na.cust.bahnhof.se) (Read error: Connection reset by peer)
L437[10:54:16] ⇨ Joins: Hunterz (~hunterz@62.182.234.189)
L438[11:04:02] ⇨ Joins: Brokkoli (~Brokkoli@p5B23C6BC.dip0.t-ipconnect.de)
L439[11:13:16] ⇨ Joins: Orion (~OrionOnli@dslb-092-073-080-247.092.073.pools.vodafone-ip.de)
L440[11:16:29] ⇨ Joins: BlueMonster (~BlueMonst@cpc23-telf11-2-0-cust237.16-1.cable.virginm.net)
L441[11:16:59] ⇦ Quits: OrionOnline (~OrionOnli@dslb-178-005-152-051.178.005.pools.vodafone-ip.de) (Ping timeout: 384 seconds)
L442[11:24:08] ⇨ Joins: quadraxis (~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
L443[11:28:53] ⇦ Quits: Katrix (~Katrix@2a02:fe0:cb10:2420:11e9:fd4c:8bd7:da37) (Ping timeout: 384 seconds)
L444[11:36:52] *** diesieben07 is now known as diesieben|away
L445[11:39:27] ⇨ Joins: NineChickens (uid196646@id-196646.ealing.irccloud.com)
L446[11:44:49] ⇨ Joins: Samario (~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net)
L447[11:49:55] <Maxwell> How do I print to the console output?
L448[11:52:06] ⇨ Joins: Holocene (~Genuine@66-191-1-249.dhcp.knwc.wa.charter.com)
L449[11:54:15] ⇨ Joins: Cooler (~CoolerExt@101.60.25.120)
L450[11:54:24] ⇦ Quits: Toluene (~Genuine@66-191-1-249.dhcp.knwc.wa.charter.com) (Ping timeout: 194 seconds)
L451[11:56:41] <williewillus> println? :P
L452[11:56:44] <williewillus> or use a logger
L453[11:56:53] <williewillus> if you're actually releasing a mod pls use a logger
L454[11:58:02] <Maxwell> Okay, so it must be that my update function just isn't getting called.
L455[11:59:30] <williewillus> an a TE?
L456[11:59:40] *** PaleOff is now known as PaleoCrafter
L457[11:59:58] <Maxwell> yes
L458[12:00:03] ⇦ Quits: bilde2910 (bilde2910@51.174.170.178) (Ping timeout: 384 seconds)
L459[12:00:08] <williewillus> does it implement ITickable and did you register it?
L460[12:00:16] <williewillus> also does your block say it as a TE?
L461[12:01:03] <Maxwell> Well, it can't be pushed by a piston. It's only extending TileEntity, is that not enough?
L462[12:01:17] ⇨ Joins: bilde2910 (bilde2910@51.174.170.178)
L463[12:04:01] <Maxwell> Yep, I just needed to implement ITickable
L464[12:04:22] ⇦ Quits: cpup (~cpup@32.218.114.36) (Ping timeout: 194 seconds)
L465[12:04:32] ⇨ Joins: cpup (~cpup@32.218.114.36)
L466[12:08:02] ⇨ Joins: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a)
L467[12:08:24] ⇦ Quits: samschaap (~samschaap@5469BF1F.cm-12-2c.dynamic.ziggo.nl) (Ping timeout: 206 seconds)
L468[12:10:59] ⇨ Joins: Jezza (~Jezza@92.206.161.17)
L469[12:16:05] ⇦ Quits: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a) (Ping timeout: 206 seconds)
L470[12:16:25] ⇨ Joins: samschaap (~samschaap@5469bf1f.cm-12-2c.dynamic.ziggo.nl)
L471[12:20:26] ⇦ Quits: RichardG (~richardg8@201.37.255.130) (Ping timeout: 180 seconds)
L472[12:22:42] ⇨ Joins: Genuine (~Genuine@66-191-1-249.dhcp.knwc.wa.charter.com)
L473[12:23:20] ⇦ Quits: Holocene (~Genuine@66-191-1-249.dhcp.knwc.wa.charter.com) (Ping timeout: 206 seconds)
L474[12:27:32] ⇨ Joins: RichardG (~richardg8@201.37.255.130)
L475[12:27:32] MineBot sets mode: +v on RichardG
L476[12:32:21] *** MrKick|Away is now known as MrKickkiller
L477[12:33:56] ⇨ Joins: Katrix (~Katrix@cm-84.210.73.141.getinternet.no)
L478[12:40:51] ⇦ Quits: bilde2910 (bilde2910@51.174.170.178) (Ping timeout: 195 seconds)
L479[12:42:51] ⇨ Joins: bilde2910 (bilde2910@51.174.170.178)
L480[12:47:50] ⇨ Joins: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a)
L481[12:50:15] *** Keridos is now known as Keridos|away
L482[12:53:24] ⇨ Joins: IoP (jikuja@kapsi.fi)
L483[12:53:52] ⇦ Quits: NamrocSmith (~NamrocSmi@2601:347:4000:42c9:5c2:b5f4:fd28:51b4) (Quit: Leaving)
L484[12:56:41] ⇦ Quits: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a) (Ping timeout: 206 seconds)
L485[13:01:16] ⇦ Quits: ThePsionic (~Psi@ip5457f909.direct-adsl.nl) (Read error: Connection reset by peer)
L486[13:03:48] ⇨ Joins: AstralSorcerer (~AstralSor@c-73-187-127-230.hsd1.pa.comcast.net)
L487[13:06:36] ⇨ Joins: ScottehBoeh (~ScottehBo@95.144.82.254)
L488[13:06:44] <ScottehBoeh> Hey guys, did addChatComponentMessage change in 1.11?
L489[13:06:50] <williewillus> sendMessage
L490[13:07:07] <ScottehBoeh> My god, everything has such reasonable names now
L491[13:07:43] <williewillus> because people get frustrated and complain here about them: https://github.com/ModCoderPack/MCPBot-Issues/issues ;p
L492[13:07:53] <Ashindigo> I like that new memory bar on the loading screen
L493[13:08:58] <ScottehBoeh> Yeah its pretty nice, Thought I'd accidentaly added something to my code
L494[13:09:12] <williewillus> not sure if that's something you can "accidentally add" ;p
L495[13:09:48] <McJty> ScottehBoeh, the names of several things changed yes
L496[13:10:14] <williewillus> and we hope that they get better names :P
L497[13:10:28] <williewillus> sometimes in the next major version something gets refactored and MCP doesn't detect it, leaving it unnmaed
L498[13:10:37] <williewillus> then someone comes in and gives it an awful name when the old one was good
L499[13:13:45] ⇦ Quits: MCPBot_Reborn (~MCPBot_Re@24.152.202.255) (Read error: Connection reset by peer)
L500[13:14:17] ⇦ Quits: AstralSorcerer (~AstralSor@c-73-187-127-230.hsd1.pa.comcast.net) (Ping timeout: 384 seconds)
L501[13:14:19] ⇨ Joins: MCPBot_Reborn (~MCPBot_Re@mcpbot.bspk.rs)
L502[13:14:45] <ScottehBoeh> for my blood mod
L503[13:14:54] <ScottehBoeh> The amount of blood particles depends on the damage conflicted
L504[13:15:07] <ScottehBoeh> inflicted*
L505[13:17:56] *** diesieben|away is now known as diesieben07
L506[13:19:18] <williewillus> hm
L507[13:19:23] <williewillus> any better suggestions for https://github.com/ModCoderPack/MCPBot-Issues/issues/331?
L508[13:20:20] <gigaherz> can't think of anything better
L509[13:20:54] <diesieben07> wow that is some strange game mechanic
L510[13:20:58] <Ashindigo> Same as giga
L511[13:21:03] <diesieben07> i wonder what the idea behind it is
L512[13:21:05] <williewillus> yeah i didn't even know that existed :P
L513[13:21:17] <gigaherz> diesieben07: makes it hard to jump out of the lava
L514[13:21:29] <williewillus> but not with ice? :P
L515[13:21:34] <diesieben07> yeh...
L516[13:21:36] <diesieben07> strange :D
L517[13:21:50] <gigaherz> well IMO it should be the other way around
L518[13:21:55] <diesieben07> or glass for that matter
L519[13:21:59] <gigaherz> since ice is slippery so it should make it harder to jump out
L520[13:21:59] <gigaherz> ;P
L521[13:22:02] <diesieben07> since glass isn't solid either, is it
L522[13:22:26] <williewillus> the method is never polymorphically called
L523[13:22:38] <williewillus> BlockLiquid always just calls its own `isBlockSolid`
L524[13:22:46] <williewillus> (which makes the name make even less sense)
L525[13:22:50] <ScottehBoeh> Strange.. particles only seem to spawn on the LAN-server Owner's client
L526[13:22:58] <diesieben07> wait... wat
L527[13:23:02] <diesieben07> wtf is that :o
L528[13:23:11] <diesieben07> scotteh, show your code.
L529[13:23:18] ⇦ Quits: BlueMonster (~BlueMonst@cpc23-telf11-2-0-cust237.16-1.cable.virginm.net) (Remote host closed the connection)
L530[13:23:38] <ScottehBoeh> https://hastebin.com/oyeyerofig.cs
L531[13:23:40] ⇨ Joins: BlueMonster (~BlueMonst@cpc23-telf11-2-0-cust237.16-1.cable.virginm.net)
L532[13:23:45] <Ashindigo> That sounds pretty arbitary
L533[13:24:13] <williewillus> I'm calling reaching across sides ;p
L534[13:24:15] <diesieben07> ScottehBoeh, World world = Minecraft.getMinecraft().world; - no... just no.
L535[13:24:19] <williewillus> heh
L536[13:24:21] <williewillus> called it
L537[13:24:39] <williewillus> is livingattackevent fired clientside?
L538[13:24:43] <diesieben07> http://mcforge.readthedocs.io/en/latest/concepts/sides/ read it
L539[13:24:48] <diesieben07> no, it's not afaik
L540[13:24:52] <diesieben07> at least not in the general case
L541[13:24:57] <ScottehBoeh> Ah I see
L542[13:25:11] <diesieben07> read that link and understand it
L543[13:25:18] <diesieben07> if you don't understand something, ask :D
L544[13:25:22] <williewillus> it seems to be called at the top of every attackEntityFrom, so I think it's both sides
L545[13:25:26] <williewillus> but not in EntityPlayerSP
L546[13:25:32] <williewillus> since that just returns false
L547[13:25:38] ⇨ Joins: AstralSorcerer (~AstralSor@2601:981:c002:98c0::1)
L548[13:25:54] <diesieben07> i don't think attackEntityFrom is called on the cleint though
L549[13:26:06] <williewillus> i think it gets called with damagesource generic
L550[13:26:07] <williewillus> lemme check
L551[13:26:08] <Ashindigo> Does forge have a logger set or should I use FML's?
L552[13:26:16] <diesieben07> use your own
L553[13:26:27] <Ashindigo> For a PR
L554[13:26:30] <diesieben07> oh
L555[13:26:45] <diesieben07> eh, well, fml's logging is a mess
L556[13:26:55] <diesieben07> but FMLLog will do
L557[13:27:00] <williewillus> lol
L558[13:27:01] <diesieben07> or rather, it's what is used
L559[13:27:06] <williewillus> in the general case, this happens clientside: this.attackEntityFrom(DamageSource.GENERIC, 0.0F);
L560[13:27:18] <diesieben07> very useful.
L561[13:27:18] <Ashindigo> Thanks diesie
L562[13:27:19] <diesieben07> lol
L563[13:27:26] <williewillus> for EntityPlayerSP case, at least the value passed in is correct
L564[13:27:51] <williewillus> actually not EPSP doesn't call attackEntityFrom
L565[13:28:02] <williewillus> so you just get a GENERIC 0 :P
L566[13:28:09] <williewillus> yay vestiges of 1.2
L567[13:28:27] ⇦ Quits: cpup (~cpup@32.218.114.36) (Ping timeout: 384 seconds)
L568[13:30:12] ⇨ Joins: cpup (~cpup@32.218.114.36)
L569[13:33:08] ⇦ Quits: killjoy (~killjoy@cpe-76-182-16-229.nc.res.rr.com) (Read error: Connection reset by peer)
L570[13:35:29] <ScottehBoeh> ok I've removed the line casting the World and added this line:
L571[13:35:30] <ScottehBoeh> https://hastebin.com/ridesemedi.cs
L572[13:35:53] <ScottehBoeh> or is that still the server trying to cast a client-side world?
L573[13:35:59] <williewillus> that's not the whole issue. first, check what side you're receiving the event want
L574[13:36:04] <williewillus> do you *want* to handle this client or server side?
L575[13:36:11] <williewillus> choose one
L576[13:36:12] <ScottehBoeh> Server side
L577[13:36:21] <williewillus> okay then add an if statement for isRemote :P
L578[13:36:29] <williewillus> and also you need to use the particle methods in WorldServer
L579[13:36:35] <williewillus> since the ones in World only work clientside
L580[13:37:46] <tterrag|ZZZzzz> does hastebin just try to guess what language it is or something?
L581[13:37:49] <tterrag|ZZZzzz> it never guesses java
L582[13:37:52] *** tterrag|ZZZzzz is now known as tterrag
L583[13:38:04] <williewillus> lol
L584[13:40:14] <Maxwell> So, this code is /supposed/ to get all the entities in the same block as my TE. However, the AABB it uses somehow is always "0,0,0->15,256,15", regardless of the location of the placed block:
L585[13:40:15] <Maxwell> https://gist.github.com/Maxwell-lt/4908c590fb6fe9d08573501cb42e4817
L586[13:41:03] <Maxwell> I'm guessing getPos isn't working quite like I expect?
L587[13:41:14] <williewillus> getPos is block coords
L588[13:41:22] <williewillus> you are calling getChunkFrom *ChunkCoords*
L589[13:41:35] <williewillus> you're also passing X Y when the method expects X Z
L590[13:41:56] <williewillus> not sure why you need to get the chunk then get the pos then unwrap it in to an aabb...
L591[13:42:03] <williewillus> just use the block coords in the aabb directly
L592[13:42:44] ⇦ Quits: RebelKeithy (~RebelKeit@173-240-139-59.pool.dsl.nctc.com) (Ping timeout: 194 seconds)
L593[13:43:20] ⇦ Parts: Cast0077 (~Cast0077@24-181-179-41.dhcp.nwtn.ct.charter.com) ())
L594[13:46:45] ⇦ Quits: McJty (~jorrit@94-224-154-146.access.telenet.be) (Quit: Leaving)
L595[13:47:55] ⇦ Quits: Cooler (~CoolerExt@101.60.25.120) (Ping timeout: 206 seconds)
L596[13:48:51] ⇦ Quits: p455w0rd (~p455w0rd@172.77.95.208) (Ping timeout: 384 seconds)
L597[13:49:05] ⇨ Joins: p455w0rd (~p455w0rd@172.76.192.95)
L598[13:55:34] <Maxwell> So what do I use to get an AABB representing the chunk a given blockPos is in?
L599[13:56:12] <williewillus> take the block position and round it down to chunk boundaries
L600[13:58:18] <gigaherz> you asked that like 5 hours ago?
L601[13:58:29] <gigaherz> [15:46] (Maxwell): Is there a way to get a bounding box of the chunk a TE is in? I can't seem to find a function that would return that. This can't possibly be the best way: https://gist.github.com/Maxwell-lt/c6cd47c081ee91995df6be2641376d1f
L602[13:58:34] <gigaherz> [15:49] (@fry): x & ~0xF
L603[13:59:00] <Maxwell> I guess it's back to that. I thought that there was a nice way to do that
L604[13:59:19] <diesieben07> that *is* the nice way :P
L605[13:59:24] ⇦ Quits: Wuppy (~wuppyZNC@2001:19f0:6400:8965:5400:ff:fe07:8777) (Ping timeout: 202 seconds)
L606[13:59:34] <Maxwell> well, now I know
L607[13:59:38] <gigaherz> x = pos.getX() & ~0xF; same for y and x;
L608[13:59:45] <diesieben07> the not so nice way is int roundedToChunk = (pos / 16) * 16
L609[13:59:49] <williewillus> ew
L610[13:59:49] <gigaherz> return new AABB(x,y,z,x+16,y+16,z+16);
L611[13:59:50] <williewillus> :P
L612[13:59:52] <gigaherz> boom
L613[14:00:00] <williewillus> gigaherz: well chunks are full vertical
L614[14:00:05] <williewillus> that gets you your chunk section
L615[14:00:10] <gigaherz> unless you get cubic chunks installed
L616[14:00:20] <gigaherz> but yes, you can hardcode y to 0..256
L617[14:00:21] <heldplayer> y+256 you mean
L618[14:00:21] <gigaherz> ;p
L619[14:00:26] <williewillus> that's on barteks to deal with lol
L620[14:00:48] <williewillus> 0 to world.getHeight or whatever it's called
L621[14:01:07] <Barteks2x> if mods hardcode 0-256 range, the only way for me to make them compatible will be to either create modified versions of these mods, or patch their code at runtime
L622[14:01:25] <tterrag> what is the alternative
L623[14:01:27] <williewillus> ^
L624[14:01:32] ⇨ Joins: Wuppy (~wuppyZNC@abrarsyed.com)
L625[14:01:34] <Barteks2x> that's the bad thing, there isn;t
L626[14:01:45] <PaleoCrafter> you know, getting them to fix it themselves would be an option :P
L627[14:02:00] <williewillus> well there isn't a suitable substitute method is there?
L628[14:02:04] <Barteks2x> almost noone will do it, even if I make cubic chunks API
L629[14:02:07] <williewillus> or does a getHeight that returns 256 exist?
L630[14:02:12] <PaleoCrafter> I think there is?
L631[14:02:23] <Barteks2x> there is getHeioght and getActualHeight
L632[14:02:27] <williewillus> WorldProvider.getHeight
L633[14:02:28] <Barteks2x> but not sure which is which one
L634[14:02:35] <williewillus> getActualHeight is 128 in nether
L635[14:02:47] <williewillus> getHeight is hardcoded to 256
L636[14:02:51] <Barteks2x> and both are close to 8 million with cubic chunks
L637[14:03:01] <williewillus> welp
L638[14:03:13] <quadraxis> yeah but getHeight returning 8,388,608 would cause issues
L639[14:03:25] <quadraxis> if it's in a loop
L640[14:03:30] <williewillus> moral of the story: just use 0 256 lol
L641[14:03:38] <Barteks2x> well then I will be abe to see the issue very quickly
L642[14:04:02] <Barteks2x> without even testig every single mod feature above y=256 or below y=0
L643[14:04:06] <quadraxis> what you want is a getChunkHeight
L644[14:04:16] <quadraxis> but that doesn't exist in vanilla
L645[14:04:23] <williewillus> quadraxis: that still doesn't solve the problem of how mods can adapt without depending on CC's api
L646[14:04:29] <Barteks2x> in cubic chunks, hunks become containers for cubic chunks
L647[14:04:58] <gigaherz> the basic problem is that the game has been designed in such a way that it allows forgetting about the Y
L648[14:05:32] <Barteks2x> so basically, all responsibility for making it works lies on me and the only way is using bad hackery
L649[14:05:41] <quadraxis> well yes the issue is the relation between 'worldgen' and 'chunkgen'
L650[14:05:47] <gigaherz> well, IMO
L651[14:05:57] <quadraxis> as vanilla worlds are all 1 chunk high]
L652[14:06:14] <gigaherz> if you release a fully working "vanilla cubic chunks" base mod
L653[14:06:20] <Barteks2x> it's with forge
L654[14:06:30] <gigaherz> with a decent api
L655[14:06:37] <gigaherz> some mods will want to support it
L656[14:06:44] <Barteks2x> sure, there will be some
L657[14:06:51] <Barteks2x> but I wouldn't expect it to work fine in modpacks
L658[14:07:00] <gigaherz> others may be content with simply not caring about Y coords
L659[14:07:10] <gigaherz> not hardcoding anything that may break with values outside 0..255
L660[14:07:18] <Barteks2x> there are still util methods like "is this chunk loaded for player X?"
L661[14:07:48] <Barteks2x> which seem to have nothing to do with Y but actually bbreak with cubic chunks (return true when it's not really loaded)
L662[14:08:51] <Barteks2x> so basically, mods shouldn't need to care at least until I have API
L663[14:09:16] <Barteks2x> unless there is actually something they can do like in case of packing BlockPos into long
L664[14:09:53] <diesieben07> well, there is nothing you can do there, since if y is a full int it doesn't fit
L665[14:10:10] <diesieben07> i think x and z need 22 bits or something like that in vanilla
L666[14:10:25] <diesieben07> that would be 2 too many bits even if you limit y to those 22 bits as well
L667[14:10:28] ⇨ Joins: immibis (~chatzilla@122-61-224-36.jetstream.xtra.co.nz)
L668[14:10:32] <Barteks2x> x and z are ceil(log2(30000000)) bits
L669[14:10:41] ⇦ Quits: Hunterz (~hunterz@62.182.234.189) (Remote host closed the connection)
L670[14:11:11] <quadraxis> block pos will fit 26/26/12
L671[14:11:16] <Barteks2x> and technically Y will be completely unlimited once I do some changes to surface tracker
L672[14:11:30] <quadraxis> chunk pos fits 22/22/20
L673[14:11:51] <Barteks2x> and with mapdb I did pack chunkpos into long too
L674[14:11:59] <Barteks2x> but I went away from mapdb some time ago
L675[14:12:14] <diesieben07> blockpos uses 25 bits for x and z
L676[14:12:47] <quadraxis> signed?
L677[14:12:52] ⇨ Joins: kinggoesgaming (uid23106@id-23106.tooting.irccloud.com)
L678[14:13:12] <Barteks2x> log2(30000000)=24.83845916493269
L679[14:13:19] <williewillus> quadraxis: well yes, because you can have negative coords
L680[14:13:22] <diesieben07> no. 30000000 needs 24 bits. then 1 bit for sign
L681[14:13:30] <Barteks2x> oh, right, +1 bit for sign
L682[14:13:31] <quadraxis> no it needs 25+1
L683[14:13:35] ⇦ Quits: ScottehBoeh (~ScottehBo@95.144.82.254) (Quit: Leaving)
L684[14:13:38] <quadraxis> that's what i'm saying
L685[14:13:46] <diesieben07> where do you get the 25 from?
L686[14:13:55] <diesieben07> wait...
L687[14:13:56] <diesieben07> nvm me
L688[14:14:24] <diesieben07> off-by-ones are stupid
L689[14:14:25] <Barteks2x> I'm actually curious what will happen when I completely unlock Y limit
L690[14:14:39] <Barteks2x> and /tp to something close to Integer.MIN/MAX_VALUE
L691[14:14:40] <diesieben07> http://i.imgur.com/XGHcYpz.png
L692[14:14:57] ⇦ Quits: psxlover (psxlover@ppp-94-64-176-30.home.otenet.gr) (Read error: Connection reset by peer)
L693[14:16:34] <Barteks2x> I remember removing x/z limits once and teleporting close to the limit
L694[14:16:47] <Barteks2x> forst thing I noticed was that frustum culling was very broken
L695[14:17:08] <Barteks2x> and second thign was that when I went closer the game crashed with ArrayIndexOutOfBoundsException somewhere
L696[14:18:08] <Barteks2x> then I attempted to workaround these crashed, which made the game enter into close-to-infinite loop somewhere in physics code
L697[14:18:20] <williewillus> fun stuff
L698[14:18:45] <Barteks2x> I actually hoped I could get the world to loop around
L699[14:20:31] ⇨ Joins: Mathe172 (~Mathe172@80-248-204-56.dynamic.modem.fl1.li)
L700[14:23:51] ⇨ Joins: Cooler (~CoolerExt@101.60.28.24)
L701[14:24:28] <quadraxis> williewillus, do you think it'd be worth having Forge patch ChunkCache.getTileEntity ?
L702[14:26:04] <diesieben07> the least intrusive solution might be to convert EnumCreateEntityType.IMMEDIATE to QUEUED
L703[14:27:24] <quadraxis> yeah that's what I thought
L704[14:27:40] <quadraxis> as the queue is threadsafe
L705[14:29:13] ⇦ Quits: bilde2910 (bilde2910@51.174.170.178) (Ping timeout: 189 seconds)
L706[14:29:29] <diesieben07> only problem with that is that it does won't return the newly created TE, which might crash some mods
L707[14:29:48] <diesieben07> but htose mods are then inherently broken.
L708[14:30:01] <quadraxis> if the TE was null, then it might crash with CME anyway
L709[14:30:23] <quadraxis> as IMMEDIATE will try to create it at that point
L710[14:30:24] <williewillus> no idea
L711[14:30:25] <diesieben07> yeah, like I said those are broken anyways
L712[14:30:30] ⇦ Quits: x3n0ph0b3 (~x3n0ph0b3@2001:19f0:6400:8965:5400:ff:fe07:8777) (Ping timeout: 206 seconds)
L713[14:30:33] <williewillus> vanilla itself never uses QUEUED
L714[14:30:40] <williewillus> so there's no evidence that it actually works as advertised
L715[14:31:00] <williewillus> I think it should just be a big warning for now
L716[14:31:03] <diesieben07> it should work, onTick empies the queue
L717[14:31:06] ⇨ Joins: x3n0ph0b3 (~x3n0ph0b3@abrarsyed.com)
L718[14:31:13] <diesieben07> but why do they have it if they don't use it... wtf :D
L719[14:31:20] <quadraxis> i feel like vanilla was supposed to use QUEUED there
L720[14:31:31] ⇨ Joins: bilde2910 (bilde2910@51.174.170.178)
L721[14:31:32] ⇨ Joins: Mathe172_ (~Mathe172@80-248-204-56.dynamic.modem.fl1.li)
L722[14:31:41] <williewillus> but they are explicitly aware of what calling getTileEntity does
L723[14:31:46] <williewillus> because they did the hack in flower pot
L724[14:31:53] <quadraxis> Mojang
L725[14:32:43] <gigaherz> QUEUED seems broken, to me
L726[14:33:02] <gigaherz> suppose you call getTileEntity(QUEUED), and in the same tick, I call the default one which is IMMEDIATE
L727[14:33:03] ⇨ Joins: Mathe172__ (~Mathe172@80-248-204-56.dynamic.modem.fl1.li)
L728[14:33:27] <gigaherz> ah nevermind
L729[14:33:33] <gigaherz> the loop on tick uses CHECK
L730[14:33:44] <quadraxis> yeah
L731[14:33:52] ⇦ Quits: Mathe172 (~Mathe172@80-248-204-56.dynamic.modem.fl1.li) (Ping timeout: 194 seconds)
L732[14:34:18] <diesieben07> some people... http://www.minecraftforge.net/forum/index.php?topic=44644.0
L733[14:35:03] <williewillus> that's why I stay off the forums :P
L734[14:35:32] ⇨ Joins: Mathe172 (~Mathe172@80-248-204-56.dynamic.modem.fl1.li)
L735[14:35:51] <Barteks2x> So I'm not the only one feeling like most questions asked on forums seem like they are asked by people who have no idea what they are doing
L736[14:36:02] ⇦ Quits: Mathe172_ (~Mathe172@80-248-204-56.dynamic.modem.fl1.li) (Ping timeout: 194 seconds)
L737[14:36:03] <williewillus> the barrier of entry to irc is higher
L738[14:36:24] <williewillus> also you get real time discussion of the issues at hand
L739[14:36:54] ⇦ Quits: Mathe172__ (~Mathe172@80-248-204-56.dynamic.modem.fl1.li) (Ping timeout: 194 seconds)
L740[14:37:01] <Barteks2x> if I knew about IRC at the time I started working on cubic chunks back in 1.5.2/1.6.4 I would probably be already banned there
L741[14:37:01] <gigaherz> yeah, people who have no idea what they are doing won't know how to speak here
L742[14:37:10] <gigaherz> since they won't figure out how to get a client that doesn't use webchat as ident
L743[14:37:12] ⇨ Joins: Mathe172_ (~Mathe172@80-248-204-56.dynamic.modem.fl1.li)
L744[14:39:56] ⇦ Quits: Mathe172 (~Mathe172@80-248-204-56.dynamic.modem.fl1.li) (Ping timeout: 194 seconds)
L745[14:40:39] ⇨ Joins: Mathe172__ (~Mathe172@80-248-204-56.dynamic.modem.fl1.li)
L746[14:42:32] ⇦ Quits: Mathe172_ (~Mathe172@80-248-204-56.dynamic.modem.fl1.li) (Ping timeout: 206 seconds)
L747[14:42:37] ⇨ Joins: psxlover (psxlover@ppp-94-64-176-30.home.otenet.gr)
L748[14:43:24] <diesieben07> i cannot even. http://www.minecraftforge.net/forum/index.php?topic=44644.msg238667#msg238667
L749[14:47:46] * gigaherz facepalms hard
L750[14:48:19] <SkySom> Oh... good lord
L751[14:48:27] <gigaherz> https://qph.ec.quoracdn.net/main-qimg-7c6148068e8b37e4818dbbb90c816398
L752[14:48:42] <diesieben07> let the memes commence
L753[14:49:11] <gigaherz> wtf http://facepalm.motifake.com/image/demotivational-poster/1012/epic-facepalm-epic-facepalm-fail-spacetime-continuum-demotivational-posters-1293247316.jpg
L754[14:49:16] * gigaherz shudders
L755[14:49:56] <diesieben07> i still prever the classics. http://i.imgur.com/iWKad22.jpg
L756[14:51:11] <gigaherz> https://c2.staticflickr.com/6/5014/5543864653_5ac1097dce_b.jpg
L757[14:51:26] <diesieben07> awww
L758[14:52:04] ⇦ Quits: Orion (~OrionOnli@dslb-092-073-080-247.092.073.pools.vodafone-ip.de) (Ping timeout: 194 seconds)
L759[14:52:27] <IoP> It's damn cool to write programs without knowing name of the language you are using :P
L760[14:52:56] ⇦ Quits: Zed (~Zed@213.152.161.10) (Remote host closed the connection)
L761[14:53:02] <diesieben07> and whitespace is for pussies.
L762[15:03:57] ⇦ Quits: BlueMonster (~BlueMonst@cpc23-telf11-2-0-cust237.16-1.cable.virginm.net) (Read error: Connection reset by peer)
L763[15:04:36] ⇨ Joins: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se)
L764[15:08:38] ⇦ Quits: Hgrebnednav (~Hgrebnedn@d8D872A6E.access.telenet.be) (Ping timeout: 206 seconds)
L765[15:10:05] ⇦ Quits: Cooler (~CoolerExt@101.60.28.24) (Ping timeout: 206 seconds)
L766[15:11:09] ⇨ Joins: Naiten (Naiten@86-102-14-144.xdsl.primorye.ru)
L767[15:12:07] *** PaleoCrafter is now known as PaleOff
L768[15:16:05] ⇨ Joins: ThePsionic (~Psi@ip5457f909.direct-adsl.nl)
L769[15:18:10] <TechnicianLP> is there a clean way to get the instancefolder of minecraft? (parent of mods folder)
L770[15:18:28] <williewillus> it's a field in Minecraft somewhere
L771[15:18:33] <williewillus> / MinecraftServer
L772[15:18:43] <williewillus> find where the game loads options.txt / server.properties
L773[15:19:06] <diesieben07> on the client Minecraft::mcDataDir
L774[15:19:16] <diesieben07> universally MinecraftServer::getFile(".")
L775[15:24:58] ⇨ Joins: Cooler (~CoolerExt@101.60.44.118)
L776[15:25:50] ⇨ Joins: Cast0077 (~Cast0077@24-151-68-108.dhcp.nwtn.ct.charter.com)
L777[15:29:16] ⇨ Joins: Noppes (~Noppes@ip56530f2e.direct-adsl.nl)
L778[15:31:51] <Maxwell> I'm looking through the vanilla code for Enderman teleportation, but this one line (line 296), I don't get what it is doing: if (net.minecraftforge.common.MinecraftForge.EVENT_BUS.post(event)) return false;
L779[15:32:01] <williewillus> forge adds that
L780[15:32:17] <Maxwell> I got that much :P
L781[15:32:18] <williewillus> it creates an Ender Telerport Event and broadcasts it to all mods
L782[15:32:28] <williewillus> post returns *true* if a mod canceled the event
L783[15:32:28] *** V is now known as Vigaro
L784[15:32:42] <williewillus> meaning teleportation should not happen
L785[15:32:44] <williewillus> so the method returns
L786[15:32:53] <Maxwell> ah, so it just makes the event overridable
L787[15:33:25] <williewillus> also as you can see further down this event also lets you override the destination of the teleport
L788[15:42:28] ⇦ Quits: RandomX45 (~random@2601:44:8802:2060:6554:567c:3823:1f8) (Ping timeout: 206 seconds)
L789[15:43:46] ⇦ Quits: ezterry (~ezterry@reno.devnull.name) (Remote host closed the connection)
L790[15:44:48] ⇦ Quits: Vazkii (~Vazkii@144.134.37.188.rev.vodafone.pt) (Quit: seeya m8 thx 4 playin)
L791[16:01:08] ⇦ Quits: NineChickens (uid196646@id-196646.ealing.irccloud.com) (Quit: Connection closed for inactivity)
L792[16:10:14] *** Keridos|away is now known as Keridos
L793[16:15:16] ⇦ Quits: Mathe172__ (~Mathe172@80-248-204-56.dynamic.modem.fl1.li) (Ping timeout: 194 seconds)
L794[16:19:01] ⇦ Quits: Jezza (~Jezza@92.206.161.17) (Ping timeout: 384 seconds)
L795[16:22:19] *** fry is now known as fry|sleep
L796[16:23:13] *** Keridos is now known as Keridos|away
L797[16:24:04] *** Keridos|away is now known as Keridos
L798[16:26:24] *** Keridos is now known as Keridos|away
L799[16:27:22] *** Keridos|away is now known as Keridos
L800[16:28:06] *** Keridos is now known as Keridos|away
L801[16:32:21] *** Keridos|away is now known as Keridos
L802[16:33:13] ⇦ Quits: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net) (Ping timeout: 206 seconds)
L803[16:38:38] *** Keridos is now known as Keridos|away
L804[16:39:26] ⇦ Quits: TechnicianLP (~Technicia@p4FE1C313.dip0.t-ipconnect.de) (Ping timeout: 180 seconds)
L805[16:41:23] *** Keridos|away is now known as Keridos
L806[16:43:39] ⇦ Quits: Samario (~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net) (Quit: You think you are above consequences.)
L807[16:47:04] *** Keridos is now known as Keridos|away
L808[16:47:22] *** Keridos|away is now known as Keridos
L809[16:50:11] ⇨ Joins: sinkillerj (~sinkiller@nc-67-232-15-221.dhcp.embarqhsd.net)
L810[16:50:33] *** MrKickkiller is now known as MrKick|Away
L811[16:50:37] ⇨ Joins: founderio (~Thunderbi@p200300C4E3C17F00026F75D228F58BC0.dip0.t-ipconnect.de)
L812[16:51:37] ⇦ Quits: founderio (~Thunderbi@p200300C4E3C17F00026F75D228F58BC0.dip0.t-ipconnect.de) (Client Quit)
L813[16:54:31] ⇦ Quits: iari (~iari___@tyaralin.shadowdrake.eu) (Quit: Leaving)
L814[16:57:22] ⇦ Quits: ThePsionic (~Psi@ip5457f909.direct-adsl.nl) (Quit: Leaving)
L815[17:00:19] *** Gaz is now known as Gaz[Away]
L816[17:09:06] *** Mine|dreamland is now known as minecreatr
L817[17:10:16] *** amadornes is now known as amadornes[OFF]
L818[17:15:11] *** Abrar|gone is now known as AbrarSyed
L819[17:19:44] ⇨ Joins: Lapiman (~tcmzeal@pool-72-66-83-14.washdc.fios.verizon.net)
L820[17:21:46] <Lapiman> Sometimes, depending on click length, a BreakEvent can be triggered twice
L821[17:21:52] <Lapiman> Is there any way to recognize when this happens?
L822[17:33:21] ⇨ Joins: HellFirePvP (~HellFireP@141.84.69.81)
L823[17:35:21] ⇦ Quits: HellFirePvP (~HellFireP@141.84.69.81) (Client Quit)
L824[17:38:56] *** minecreatr is now known as Mine|away
L825[17:38:57] ⇦ Quits: Noppes (~Noppes@ip56530f2e.direct-adsl.nl) (Read error: Connection reset by peer)
L826[17:52:00] ⇨ Joins: HellFirePvP (~HellFireP@141.84.69.81)
L827[17:59:40] ⇦ Parts: HellFirePvP (~HellFireP@141.84.69.81) (Leaving))
L828[18:11:59] <Maxwell> Is there a trick to getting world.getTopSolidOrLiquidBlock() to work? The output for the y coord is always -1.
L829[18:14:24] <diesieben07> that shouldn't be... show your code.
L830[18:16:12] ⇨ Joins: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net)
L831[18:17:44] <Maxwell> https://gist.github.com/Maxwell-lt/77e76aea7d6d37f0eb2e6be56da42cdf
L832[18:17:54] *** Mine|away is now known as minecreatr
L833[18:19:06] ⇨ Joins: TotalHamman (~TotalHamm@136.63.15.92)
L834[18:19:40] <diesieben07> why are you moving on x and z potentially 320 blocks negatively?!
L835[18:20:14] <williewillus> negatively?
L836[18:20:40] <diesieben07> yes. he is doing x + (rand.nextDouble() - 5) * 64
L837[18:20:42] <Maxwell> wait, what? That might be part of the problem. I pretty much borrowed the vanilla enderman code
L838[18:20:52] <williewillus> is that a problem though? :p
L839[18:20:58] <williewillus> xz's are allowed to be negative
L840[18:21:11] <diesieben07> yes, but why over 300 blocks?
L841[18:21:22] <diesieben07> and why only negatively?
L842[18:21:26] <quadraxis> client side or server side?
L843[18:21:36] <Maxwell> server side
L844[18:21:42] <quadraxis> also 0.5 seems better than 5.0
L845[18:21:56] <diesieben07> yes 0.5 would make sense.
L846[18:22:05] <diesieben07> that would spread the 64 evenly into postivie and negative
L847[18:22:29] <Maxwell> well, turns out I really should copy code instead of retyping it D:
L848[18:22:56] <diesieben07> no, what you should do is never blindly use code that you don't understand :P
L849[18:23:21] <Maxwell> I understood the code, but I just retyped it wrong
L850[18:23:41] <diesieben07> ...
L851[18:23:44] <Maxwell> Let me try with the correct values
L852[18:28:51] <quadraxis> ah i see
L853[18:29:00] <Maxwell> The typo seems to have been the error
L854[18:29:01] <quadraxis> https://github.com/Maxwell-lt/MobBlocker/blob/master/src/main/java/maxwell_lt/mobblocker/blocks/TileEntityChunkProtector.java
L855[18:29:04] <quadraxis> this current
L856[18:29:06] <quadraxis> ?
L857[18:29:11] <Maxwell> not quite
L858[18:29:28] <quadraxis> that checks world.isRemote
L859[18:29:36] <quadraxis> which means client side
L860[18:30:33] <Maxwell> world.isRemote is clientside?
L861[18:30:35] <quadraxis> client side, blocks 256-320 away likely won't exist
L862[18:30:51] <quadraxis> so getTopEtc returns -1
L863[18:30:59] *** diesieben07 is now known as diesieben|away
L864[18:31:04] ⇦ Quits: Ashindigo (uid202308@id-202308.hathersage.irccloud.com) (Quit: Connection closed for inactivity)
L865[18:31:18] <Maxwell> Well, that would explain why they seem to repetitively teleport around
L866[18:31:28] <quadraxis> http://mcforge.readthedocs.io/en/latest/concepts/sides/
L867[18:31:47] <quadraxis> "That is, if this field is true, the world is currently running on the logical client. If the field is false, the world is running on the logical server."
L868[18:33:35] <Maxwell> Well, that explains things. That seems a little backwards, but I guess that's just for Minecraft is
L869[18:34:35] <Maxwell> ...That explains so much of the weirdness I was experiencing
L870[18:47:29] ⇦ Quits: zml (~zml@minions.aoeu.xyz) (Ping timeout: 384 seconds)
L871[18:52:39] ⇨ Joins: zml (~zml@minions.aoeu.xyz)
L872[18:56:52] ⇨ Joins: AceSevenFive (~androirc@66.102.85.88)
L873[18:57:34] <AceSevenFive> ...
L874[18:58:42] ⇨ Joins: howtonotwin (~howtonotw@r75-110-22-15.gvllcmtc01.gnvlnc.ab.dh.suddenlink.net)
L875[18:58:45] <williewillus> ..?
L876[19:29:14] ⇨ Joins: Denyol (webchat@202-89-168-183.static.dsl.amnet.net.au)
L877[19:32:49] ⇦ Quits: Denyol (webchat@202-89-168-183.static.dsl.amnet.net.au) (Quit: Web client closed)
L878[19:37:12] ⇦ Quits: Naiten (Naiten@86-102-14-144.xdsl.primorye.ru) (Read error: Connection reset by peer)
L879[19:42:39] ⇨ Joins: Schwowsers (~Schwowser@pool-108-2-77-251.phlapa.fios.verizon.net)
L880[19:45:11] ⇨ Joins: Denyol (kiwiirc@202-89-168-183.static.dsl.amnet.net.au)
L881[19:45:38] <Denyol> I cant seem to get the textures to display for a block held in the inventory
L882[19:46:00] <Denyol> Using forge block states
L883[19:46:19] *** diesieben|away is now known as diesieben07
L884[19:46:40] <diesieben07> I am not sure if i am supposed to be angry, confused or just sad. http://www.minecraftforge.net/forum/index.php?topic=44651.0
L885[19:46:55] <diesieben07> Denyol, show your code, jsons and the FML log.
L886[19:47:48] <Denyol> pastehttp://pastebin.com/YL7gyWCG
L887[19:47:58] <Denyol> thats my json in blockstates
L888[19:48:55] <Denyol> Texture is set with http://pastebin.com/uHmGctaF
L889[19:49:09] <diesieben07> that is not "setting the texture"
L890[19:49:28] <diesieben07> and... that does not make any sense, you need to use the existing ItemBlock
L891[19:49:34] <diesieben07> you cannot just make a new one
L892[19:49:45] <Denyol> This is my first trial mod, im used to spigot plugins, frankly I have no Idea what im doing
L893[19:50:17] <Denyol> Neither have I managed to find an official guide and the documentation is incomplete
L894[19:51:02] <Denyol> Maybe I could be shoved in the right direction?
L895[19:51:17] <diesieben07> like i said you have to use the existing itemblock
L896[19:51:31] <diesieben07> Item.getItemFromBlock
L897[19:51:51] <Maxwell> isn't that supposed to be "block/cube_all" ?
L898[19:51:55] <Denyol> this is what I have for managing blocks http://pastebin.com/8R1dxXf3
L899[19:52:23] ⇨ Joins: Upthorn (~ogmar@wsip-174-79-184-178.dc.dc.cox.net)
L900[19:52:43] <Denyol> I have changed it to Item.getItemFromBlock
L901[19:52:59] <howtonotwin> documentation: https://gist.github.com/howtonotwin/88fd07f419ae5c9560e9ae2615514018
L902[19:53:02] <Denyol> hmm that fixed it thankyou
L903[19:53:39] <Denyol> Do i also need a json for the block in assets/mod/models/block
L904[19:53:44] <Denyol> or only in blockstates?
L905[19:53:56] <diesieben07> do you intend to use a model other then cube_all?
L906[19:54:07] <Denyol> Not yet
L907[19:54:13] <diesieben07> then you do not need a model :P
L908[19:54:14] <howtonotwin> blockstates ARE models
L909[19:54:17] ⇦ Quits: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net) (Ping timeout: 206 seconds)
L910[19:54:17] <diesieben07> no...
L911[19:54:25] <howtonotwin> they define a model that pulls data from other models
L912[19:54:26] <diesieben07> blockstate jsons map blcok states to models
L913[19:54:35] <howtonotwin> well
L914[19:54:36] <diesieben07> they do not define models themselves
L915[19:54:40] <howtonotwin> they map variant strings to models
L916[19:54:45] <diesieben07> they say "variant X uses model Y"
L917[19:54:47] <howtonotwin> and they can define those models too
L918[19:55:01] <howtonotwin> see: "submodel"
L919[19:55:13] <howtonotwin> everything beyond the blockstate is completely opaque
L920[19:55:17] <Denyol> do I also need a model for the block under models/item?
L921[19:55:29] <Denyol> a tutorial Ive followed said I do, but I dont understand why
L922[19:55:32] <howtonotwin> the only thing that really matters it it
L923[19:55:35] <howtonotwin> *is it
L924[19:55:50] <diesieben07> Denyol, you specified to use cube_all for the inventory variant in the blocksstates json already
L925[19:55:51] <howtonotwin> if you don't need a model that isn't a cube, you don't
L926[19:55:58] <diesieben07> you only need json models if you want a custom model
L927[19:56:04] <howtonotwin> if you do, then you do
L928[19:56:08] <howtonotwin> it's all the same
L929[19:56:12] <Denyol> ok thankyou
L930[19:56:40] <Denyol> Why can't I seem to find any good guide for some of these things? Am I not looking hard enough?
L931[19:56:43] <Denyol> Or are they not there
L932[19:57:19] <Maxwell> Denyol: I found looking through the GitHub repos of other mods helps a lot.
L933[19:57:22] <diesieben07> a lot of the guides for this json stuff are very crappy
L934[19:57:31] <Denyol> ^ true
L935[19:57:39] <Denyol> I had been looking through some open source mods
L936[19:57:45] ⇦ Quits: Upth (~ogmar@wsip-174-79-184-178.dc.dc.cox.net) (Ping timeout: 384 seconds)
L937[19:57:54] <Denyol> I also cant find a forge javadoc
L938[19:58:05] <Denyol> maybe its not a thing
L939[19:58:20] <howtonotwin> the entire codebase is crappily doc'd
L940[19:58:22] <howtonotwin> :P
L941[19:58:35] <Denyol> but even the parts that are documented
L942[19:58:37] <howtonotwin> good luck finding docs on ANYTHING in there
L943[19:58:57] <williewillus> because docs get outdated without warning
L944[19:59:38] <diesieben07> the javadocs are not built seperately anymore, you can read them in the code though
L945[19:59:41] <diesieben07> or build them yourself
L946[19:59:43] <Denyol> Also how do I make it so that a block gets placed from an itom
L947[20:00:01] <diesieben07> ehh, the block already has an ItemBlck
L948[20:00:07] <diesieben07> which places the block
L949[20:00:19] <diesieben07> you can subclass ItemBlock and add additional functionality if you want
L950[20:00:43] <Denyol> Because I want to be able to make them item then place it directly into that block
L951[20:00:57] <diesieben07> what?
L952[20:01:14] <Denyol> Using an Item instead of an ItemBlock
L953[20:01:16] <Denyol> I think
L954[20:01:25] <diesieben07> ItemBlcok extends Item
L955[20:01:29] <diesieben07> so... why? what?!
L956[20:02:17] <Denyol> Because I have an item made for this test block
L957[20:02:29] <Denyol> but I want the item to be able to be placed as the block
L958[20:02:51] <Denyol> or is that not a thing
L959[20:02:56] <williewillus> ?
L960[20:03:00] <williewillus> I'm confused what you want
L961[20:03:06] <diesieben07> that is literally waht the ItemBlock is...
L962[20:03:08] <Denyol> I wouldnt be surprised if it isn't, I can't remember why I wanted to do it
L963[20:03:12] <diesieben07> it is the item... thaat places the block
L964[20:03:28] <williewillus> by the way, a block is only a block when it's placed in the world. at ANY other time, it's in Item form
L965[20:03:31] <williewillus> just to get that clear
L966[20:03:35] <howtonotwin> Item and block are totally unrelated
L967[20:03:46] <howtonotwin> ItemBlock is just a nice class that makes a default item for a block
L968[20:03:48] ⇦ Quits: Snapples (~uid167569@id-167569.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
L969[20:03:53] <howtonotwin> Blocks only exist in world
L970[20:03:59] <howtonotwin> Items only exist in ItemStacks
L971[20:03:59] <Denyol> So I can use a custom Item as an ItemBlock?
L972[20:04:06] <williewillus> yes by extending ItemBlock
L973[20:04:06] <diesieben07> you can subclass ItemBlock
L974[20:04:19] <williewillus> though we should xy this, what exactly do you want to do
L975[20:04:23] <williewillus> specially, on block place?
L976[20:04:48] <diesieben07> as in, describe it as how the end user would describe the feature. don't describe how you intend to code it.
L977[20:04:55] <williewillus> ^
L978[20:04:56] <Denyol> I don't even remember what I wanted to do, I think I wanted to use a item (with item model) to place as a block
L979[20:05:03] <williewillus> wat
L980[20:05:11] <Denyol> the Item (itemblock) has a different texture to the block
L981[20:05:12] <diesieben07> you can specify any model you want for the ItemBlock...
L982[20:05:18] <williewillus> ^
L983[20:05:26] <Maxwell> Denyol, you want a flat model for the item, right?
L984[20:05:31] <Denyol> yes
L985[20:05:34] <diesieben07> your code above said to use the inventory variant for the item
L986[20:05:39] <williewillus> that's just rendering
L987[20:05:44] <williewillus> no need for custom itemblock class
L988[20:05:49] <diesieben07> then specify whichever model you want for the item for the inventory variant in your blockstate
L989[20:06:00] <williewillus> ^
L990[20:06:27] <Denyol> what even are the options for setCustomModelResourceLocation
L991[20:06:32] <Denyol> for the last parameter
L992[20:06:46] <diesieben07> the last parameter is the variant
L993[20:06:51] ⇦ Quits: IceDragon (~ThatGuy@184.170.45.185) (Ping timeout: 206 seconds)
L994[20:06:54] <Denyol> o
L995[20:06:57] <williewillus> Item, meta, the model path
L996[20:07:00] <Denyol> from blockstates
L997[20:07:01] <diesieben07> in your blockstates file you had "normal" and "inventory"
L998[20:07:12] <williewillus> an MRL is a blockstate json + a variant
L999[20:07:17] <diesieben07> normal is the default for a block wihtout blcokstate properties
L1000[20:07:22] <williewillus> (most of the time)
L1001[20:07:24] <diesieben07> and you specified "inventory" for the item model
L1002[20:08:21] <Denyol> Oh, thankyou everyone for clearing that up
L1003[20:09:39] <Denyol> is "1.10.2-A1" an acceptable version number? What is the convention?
L1004[20:09:44] <williewillus> semver
L1005[20:09:52] <williewillus> I've never seen something like that before haha
L1006[20:09:55] <williewillus> what's "A1" mean?
L1007[20:10:01] <Denyol> Alpha1
L1008[20:10:03] <williewillus> http://semver.org/
L1009[20:10:21] ⇦ Quits: Searge (~Searge@c83-250-150-134.bredband.comhem.se) (Read error: Connection reset by peer)
L1010[20:10:27] <Denyol> 1.10.2 is the minecraft version
L1011[20:10:35] <Denyol> A1 is the mod version
L1012[20:10:41] <williewillus> please use something more sane :P
L1013[20:10:45] <williewillus> like semver
L1014[20:10:54] <Denyol> I did think the version thing im using was bad
L1015[20:10:59] <Denyol> found it on the internet
L1016[20:11:05] <Denyol> -.-
L1017[20:11:19] <williewillus> lol
L1018[20:12:13] <Denyol> How do you use semver with alpha and beta?
L1019[20:12:20] <williewillus> 1.0.0-alpha
L1020[20:12:24] <williewillus> scroll down
L1021[20:12:37] <Denyol> o
L1022[20:12:38] <Denyol> thx
L1023[20:16:18] ⇦ Quits: howtonotwin (~howtonotw@r75-110-22-15.gvllcmtc01.gnvlnc.ab.dh.suddenlink.net) (Read error: Connection reset by peer)
L1024[20:16:41] ⇨ Joins: howtonotwin (~howtonotw@r75-110-22-15.gvllcmtc01.gnvlnc.ab.dh.suddenlink.net)
L1025[20:18:15] ⇦ Quits: Denyol (kiwiirc@202-89-168-183.static.dsl.amnet.net.au) (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
L1026[20:21:44] ⇦ Quits: Cast0077 (~Cast0077@24-151-68-108.dhcp.nwtn.ct.charter.com) (Quit: Poof)
L1027[20:22:30] ⇨ Joins: IceDragon (~ThatGuy@184.170.23.236)
L1028[20:30:17] ⇨ Joins: Waterpicker (~Waterpick@2602:306:35ba:ca40:ad38:8ded:3b28:4c0f)
L1029[20:31:12] <Waterpicker> How can what method would I overrid in the block class if I want change what happens when a block is placed
L1030[20:31:17] <Waterpicker> or attempted to be placed
L1031[20:31:31] ⇦ Quits: IceDragon (~ThatGuy@184.170.23.236) (Quit: WeeChat 1.6)
L1032[20:31:46] <Lapiman> onBlockPlacedBy() ?
L1033[20:33:30] <howtonotwin> Also getStateForPlacement
L1034[20:33:38] <howtonotwin> onBlockPlaced is called after the block is actually placed
L1035[20:33:57] <diesieben07> getStateForPlacement is NOT "this block will now be placed"
L1036[20:33:59] <howtonotwin> getStateForPlacement is called right before it is placed so you can modify the IBlockState being placed
L1037[20:34:17] <howtonotwin> it should be pure
L1038[20:34:24] <diesieben07> yes
L1039[20:34:31] <diesieben07> dont assume the block will be placed.
L1040[20:35:38] <howtonotwin> e.g. torches use getSFP to pick their orientation, but if you wanted a block that explodes on placement that goes in onBP.
L1041[20:35:51] <Waterpicker> So you can manuall decrement the held stack as well?
L1042[20:36:01] <williewillus> well ItemBlock does that already
L1043[20:36:38] <howtonotwin> I'd say that's more a behavior of the item than the block and should be put in the item instead
L1044[20:36:51] <williewillus> yeah
L1045[20:37:09] <williewillus> but I'm pretty sure ItemBlock handles it
L1046[20:37:17] <howtonotwin> it does
L1047[20:37:45] <howtonotwin> therefore you only need to do it if a) you aren't using ItemBlock or b) you want to remove more than one item
L1048[20:38:04] <diesieben07> Why would you not be using ItemBlock.. :D
L1049[20:38:26] <howtonotwin> Minechem come to mind
L1050[20:38:28] <howtonotwin> *comes
L1051[20:38:37] <williewillus> ...what do they do?
L1052[20:38:43] <howtonotwin> you can place one block of a substance in world with 8 tubes of its item
L1053[20:39:00] <howtonotwin> so you need 8 Sucrose items to place one Sucrose block
L1054[20:41:17] ⇦ Quits: howtonotwin (~howtonotw@r75-110-22-15.gvllcmtc01.gnvlnc.ab.dh.suddenlink.net) (Quit: Pop!)
L1055[20:43:15] ⇨ Joins: Upth (~ogmar@wsip-174-79-184-178.dc.dc.cox.net)
L1056[20:46:28] <Waterpicker> williewillus, howtonotwin, I'm reworking the dimensional doors mods.
L1057[20:47:23] <Waterpicker> I'm working the blocks taht compose the pocket dimensions from this mod. They can be replaced when your right click on them with a itemBlock
L1058[20:47:52] <Waterpicker> expect when it is a blockcontainer or the player is sneaking.
L1059[20:48:45] ⇦ Quits: Upthorn (~ogmar@wsip-174-79-184-178.dc.dc.cox.net) (Ping timeout: 384 seconds)
L1060[20:51:51] <williewillus> blockcontainer?
L1061[20:55:08] <Waterpicker> inventory containing blocks like chest
L1062[20:56:01] <diesieben07> you mean blocks with a TileEntity?
L1063[20:56:11] <williewillus> oh
L1064[20:56:11] <williewillus> ew
L1065[20:56:14] <williewillus> BlockContainer
L1066[20:56:16] *** Upth is now known as Upthorn
L1067[20:56:37] <diesieben07> yeah, don't touch BlockContainer, ever
L1068[20:57:22] <Waterpicker> ... The block I mentioned before has custom behavior where it won't change if it is a block that extends BlockContainer.
L1069[20:57:32] <williewillus> yes that is old legacy stuff
L1070[20:57:47] <diesieben07> that's terrible and broken then
L1071[20:57:49] <williewillus> replace Block instanceof BlockContainer with block.hasTileEntity(state)
L1072[20:58:09] <williewillus> because 90% of mod TE's nowadays (I hope) don't extend BlockContainer
L1073[20:58:23] ⇦ Quits: rebecca (~rebecca@60-241-180-77.static.tpgi.com.au) (Ping timeout: 384 seconds)
L1074[20:58:38] <Waterpicker> Considering that dimensional doors that's from 1.6.4.
L1075[20:58:51] <diesieben07> hasTileEntity did exist in 1.6.4
L1076[20:59:08] <Waterpicker> well tell that to the original creator of DD. :P
L1077[20:59:21] <williewillus> either way if you're going to port might was well modernize
L1078[20:59:29] <Waterpicker> That's the idea.
L1079[20:59:38] <Waterpicker> Why do you think I'm talking right now
L1080[20:59:38] <williewillus> the reason why ancient mods take longer and longer to port is because they just get it to compile witohut modernizing :P
L1081[20:59:46] <williewillus> *especially* when they copy vanilla >_>
L1082[21:00:48] ⇨ Joins: rebecca (~rebecca@60-241-180-77.static.tpgi.com.au)
L1083[21:02:34] ⇦ Quits: Wastl2 (~Wastl2@x4e350bb5.dyn.telefonica.de) (Ping timeout: 194 seconds)
L1084[21:05:14] ⇨ Joins: Wastl2 (~Wastl2@x4e34f115.dyn.telefonica.de)
L1085[21:10:51] ⇦ Quits: Synergiance (~syn@lsv1.synerfiles.info) (Ping timeout: 384 seconds)
L1086[21:11:46] ⇨ Joins: Synergiance (~syn@lsv1.synerfiles.info)
L1087[21:13:03] <williewillus> !latest 3
L1088[21:13:16] <williewillus> !latest 1.10.2
L1089[21:19:21] ⇦ Quits: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se) (Ping timeout: 206 seconds)
L1090[21:19:28] <Waterpicker> sigh >< Can I show the method that needs to modernized?
L1091[21:20:09] <Waterpicker> williewillus,
L1092[21:20:24] <williewillus> sure
L1093[21:20:29] <Waterpicker> https://gist.github.com/Robijnvogel/d6e4ac43513c18e042533b22375f5a36
L1094[21:20:54] <Waterpicker> A fellow dev got the code working again so it's old but funcitons. ><
L1095[21:21:13] <diesieben07> replace instanceof BlockContainer with .hasTileEntity(state)
L1096[21:21:18] <diesieben07> like it was said befeore
L1097[21:21:47] <williewillus> also if you name a property TYPE I'm expecting it to be an enum not an int
L1098[21:22:02] <Waterpicker> it's an enum.
L1099[21:22:06] <Waterpicker> *int
L1100[21:22:16] <williewillus> then why's it called TYPE?
L1101[21:22:18] <diesieben07> and the 0 in getStateForPlacement should be item.getMetadata(stack)
L1102[21:22:21] <williewillus> TYPE 1 doesn't mean anything
L1103[21:22:24] ⇦ Quits: sinkillerj (~sinkiller@nc-67-232-15-221.dhcp.embarqhsd.net) (Quit: またね)
L1104[21:22:45] ⇦ Quits: AceSevenFive (~androirc@66.102.85.88) (Ping timeout: 384 seconds)
L1105[21:24:36] <Waterpicker> Because during the initial port of dimensional doors I didn't work on the block. The guy I'm working with chose that.
L1106[21:24:58] <Ordinastie> if only you could refactor code... oh wait, you can :)
L1107[21:25:34] ⇨ Joins: Denyol (~Denyol@202-89-168-183.static.dsl.amnet.net.au)
L1108[21:25:35] <williewillus> it's not directed at you specifically, just mentioning it
L1109[21:25:38] <Waterpicker> Heh. So minus those edits I need to do. Does the method my fellow developer did look correct?
L1110[21:25:50] <williewillus> I've seen people "modernize" meta -> blockstates by just making a propertyInt "meta" and stuffing it all in
L1111[21:25:55] <Waterpicker> Like fits moodern standards.
L1112[21:25:57] <williewillus> yeah looks fine otherwise
L1113[21:26:13] <Maxwell> Is it possible to check whether an EntityArrow was fired by a skeleton?
L1114[21:26:21] <williewillus> you can get the firer
L1115[21:27:02] <williewillus> arrow.shootingEntity instanceof AbstractSkeleton
L1116[21:27:40] <Maxwell> yep, that looks like it
L1117[21:27:41] <diesieben07> AbstractSkeleton sounds like something out of an enterprise java solution with 20 million lines of code
L1118[21:27:54] <Ordinastie> Waterpicker, it that supposed to be work for items that are not itemBlocks ?
L1119[21:28:09] <Waterpicker> no.
L1120[21:28:23] <williewillus> wat
L1121[21:28:32] <Ordinastie> then why not just call onItemUse on the itemBlock directly ?
L1122[21:28:59] <Waterpicker> Have you used the mod dimensional doors before Ordinastie?
L1123[21:29:09] <Ordinastie> not really
L1124[21:29:18] <Ordinastie> I kinda remember what it does
L1125[21:29:45] <Ordinastie> you place doors, they let you reach another dimension
L1126[21:29:48] <Waterpicker> YOu know how there were blocsk in pocket dimensions that can get changed into what ever block is placed on it.
L1127[21:30:00] <Ordinastie> hum, yes
L1128[21:30:12] <Waterpicker> that method is the the block's placement code
L1129[21:30:21] <williewillus> uh, can't you just set replaceable to true in the block's material?
L1130[21:30:25] <Ordinastie> ^
L1131[21:30:25] <williewillus> i always thought that was how they did it
L1132[21:30:35] <Waterpicker> Yea. That was my solution
L1133[21:30:48] <Waterpicker> The issue is that the block has some stuff it does.
L1134[21:31:23] <Ordinastie> williewillus, athough, if you drop a bucket of water... :p
L1135[21:31:24] <Waterpicker> Actually no. It wouldn't work
L1136[21:32:14] <Waterpicker> It is custom placement behavior. is replaceable wouldn't work
L1137[21:35:26] <Waterpicker> Just to reiterate. onBlockActivated the right method
L1138[21:35:44] <Ordinastie> I meant inside the it
L1139[21:35:48] <Ordinastie> -the
L1140[21:35:56] <Waterpicker> ?
L1141[21:36:06] <Ordinastie> instead of manually do setBlockState/getStateForPlacement
L1142[21:36:17] <Ordinastie> just do item.onItemUse ?
L1143[21:36:45] <Waterpicker> would that work?
L1144[21:36:57] *** Vigaro is now known as V
L1145[21:37:07] * Waterpicker is just confused whether onItemUse is already fired before onBlockActivated
L1146[21:37:30] <williewillus> no, block goes first
L1147[21:37:35] <Ordinastie> it's fired if onBlockActivated returns false
L1148[21:38:07] ⇨ Joins: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net)
L1149[21:39:11] <Ordinastie> actually, I don't do that either
L1150[21:39:49] <Ordinastie> https://github.com/Ordinastie/MalisisBlocks/blob/1.9.4/src/main/java/net/malisis/blocks/tileentity/VanishingTileEntity.java#L165-L176
L1151[21:40:56] ⇨ Joins: brandon3055 (~Brandon@122-129-151-82.dynamic.ipstaraus.com)
L1152[21:45:56] ⇦ Quits: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net) (Ping timeout: 206 seconds)
L1153[22:00:59] ⇨ Joins: wundrweapon (uid131782@id-131782.hathersage.irccloud.com)
L1154[22:01:05] <wundrweapon> Alrighty
L1155[22:01:34] <wundrweapon> ModelBakery.registerItemVariants…… how do I get this bugger to work? I think I have it set up right but it isn't working
L1156[22:01:42] <williewillus> show code
L1157[22:02:03] <wundrweapon> https://github.com/bvanseghi/Starcraft-Mod/blob/MC1.10.2/src/main/java/net/bvanseghi/starcraft/blocks/BlockRenderRegister.java
L1158[22:02:14] <wundrweapon> That little preInit there
L1159[22:02:53] <williewillus> you need to use MRL's in registerItemVariants
L1160[22:03:06] <williewillus> also, setCustomMRL already calls registerItemVariants for you
L1161[22:03:11] <williewillus> you shouldn't need to do it yourself
L1162[22:03:17] <wundrweapon> Ah
L1163[22:03:32] <wundrweapon> So where should I change what to setCustomMRL?
L1164[22:03:43] <wundrweapon> Is that the thing in ClientProxy?
L1165[22:03:44] <williewillus> uhh aren't you already calling it?
L1166[22:03:51] <williewillus> setCustomMRL : https://github.com/bvanseghi/Starcraft-Mod/blob/MC1.10.2/src/main/java/net/bvanseghi/starcraft/blocks/BlockRenderRegister.java#L22
L1167[22:04:51] <wundrweapon> Oh… right
L1168[22:05:07] <wundrweapon> Sorry, 23:04's a bit late for me on weekdays
L1169[22:05:21] <williewillus> is registerBlockRender being called in preinit?
L1170[22:05:23] ⇨ Joins: killjoy (~killjoy@cpe-76-182-16-229.nc.res.rr.com)
L1171[22:06:21] <wundrweapon> I can't tell
L1172[22:06:30] <wundrweapon> Can't use eclipse to find it either because mobile
L1173[22:07:07] <williewillus> but yeah that registerItemVariants shouldn't be needed, make sure the register is called in preinit, and make sure the jsons are in the right place
L1174[22:07:43] <wundrweapon> Right. Thanks mate
L1175[22:07:47] <williewillus> np
L1176[22:08:26] ⇨ Joins: McJty (~jorrit@94-224-154-146.access.telenet.be)
L1177[22:10:37] ⇦ Parts: wundrweapon (uid131782@id-131782.hathersage.irccloud.com) ())
L1178[22:11:21] <Denyol> getBoundingBox is deprecated in Block, anyone know the replacement?
L1179[22:11:33] <williewillus> it's just saying "use the one in IBlockState"
L1180[22:11:44] <williewillus> if you're implementing it, ignore the deprec
L1181[22:11:59] <Denyol> also is "new ModelResourceLocation(Reference.MODID + ":" + file" even necesarry
L1182[22:12:09] <williewillus> ?
L1183[22:12:13] <Denyol> im using thing.getRegistryName()
L1184[22:12:19] <williewillus> yeah that's basically the same
L1185[22:12:21] <Denyol> instead of Reference.MODID + ":" + file"
L1186[22:12:32] <williewillus> you might have an item whose model isn't its registry name
L1187[22:12:36] <williewillus> but that's the exception not the normal
L1188[22:12:38] <Denyol> oh
L1189[22:12:39] <williewillus> getRegistryName is fine
L1190[22:12:39] <Denyol> yeh
L1191[22:16:22] <Denyol> so overriding deprecated methods is fine?
L1192[22:16:58] ⇨ Joins: Naiten (Naiten@77.35.250.41)
L1193[22:19:22] <McJty> yes
L1194[22:24:09] <Denyol> why is this happening? http://prntscr.com/duzqe6
L1195[22:25:13] <Denyol> also how can I view the minecraft source code?
L1196[22:25:37] <williewillus> override isOpaqueCube to return false
L1197[22:25:41] <williewillus> and your IDE should includei t already
L1198[22:25:51] <williewillus> all of vanilla should show up as a library
L1199[22:26:08] <Denyol> there are many libraries
L1200[22:26:20] <Denyol> whats it named?
L1201[22:26:30] <williewillus> has the word "forge" in it
L1202[22:26:32] <williewillus> and yuor forge version
L1203[22:26:38] <Denyol> forgeSrc?
L1204[22:26:38] <williewillus> usually you navigate to the class directly
L1205[22:26:45] <williewillus> ctrl+n in IDEA, ctrl shift T in eclipse
L1206[22:27:19] <Maxwell> Denyol, forgeSrc is where the Minecraft source code is
L1207[22:27:25] <Denyol> thx
L1208[22:27:30] <Denyol> found it
L1209[22:30:00] <Denyol> also how do I do bounding boxes
L1210[22:30:08] <williewillus> check vanilla
L1211[22:30:17] <williewillus> also what does "doing" bounding boxes even mean :D
L1212[22:30:21] <Denyol> Im looking in the anvil class now
L1213[22:30:27] <Denyol> set the bounding box correctly
L1214[22:30:39] <williewillus> override getBoundingBox
L1215[22:30:51] <williewillus> return an AABB from 0 to 1 bounds representing the shape
L1216[22:30:52] <williewillus> profit
L1217[22:30:55] <Denyol> No, how do I decide the numbers
L1218[22:31:00] <williewillus> 0 to 1
L1219[22:31:05] <williewillus> you pick the shape of your block :P
L1220[22:31:16] <Denyol> 1 is a full cube though?
L1221[22:31:34] <williewillus> new AABB ( 0, 0, 0, 1, 1, 1 ) is a full block
L1222[22:31:41] <williewillus> new AABB ( 0, 0, 0, 1, 0.5, 1 ) is a slab
L1223[22:31:44] <williewillus> so forth
L1224[22:31:44] *** diesieben07 is now known as diesieben|away
L1225[22:32:07] <Denyol> oh ok thx
L1226[22:32:33] <Denyol> is setting getRenderType neccessary?
L1227[22:32:40] <williewillus> necessary for what
L1228[22:32:48] <Denyol> rendering, the anvil did it
L1229[22:32:54] <Denyol> set it to EnumBlockRenderType.MODEL
L1230[22:32:59] <williewillus> it's already model by default
L1231[22:33:03] <Denyol> oh
L1232[22:33:04] <Denyol> thx
L1233[22:33:52] <Denyol> AxisAlignedBB(0, 0, 0.0625 * 14, 1, 1, 0.0625 * 14); this definitely didnt work
L1234[22:34:03] <williewillus> uh what
L1235[22:34:16] <williewillus> just write it in fractions of 16
L1236[22:34:22] <williewillus> each one is one pixel in the default resource pack
L1237[22:34:25] <Denyol> 14/16?
L1238[22:34:31] <williewillus> 14.0/16.0
L1239[22:34:32] <williewillus> but yes
L1240[22:34:35] <Denyol> oh
L1241[22:34:51] <Denyol> regardless it should have worked?
L1242[22:35:04] <williewillus> you need to say what you mean by "didn't work" :P
L1243[22:35:10] <williewillus> also show code
L1244[22:35:11] <Denyol> ill get a picture
L1245[22:35:49] <Denyol> http://pastebin.com/EEmLjWmP
L1246[22:36:04] <williewillus> 14.0
L1247[22:36:17] <williewillus> 14/16 in java => 0
L1248[22:36:21] <Denyol> Oh forgot it takes a double
L1249[22:36:44] <williewillus> also you don't need to override getCollisionBB it uses getBoundingBox by default
L1250[22:36:51] <williewillus> look at the superclass before overriding
L1251[22:37:56] <Denyol> bounding box. http://prntscr.com/duztma
L1252[22:38:22] <williewillus> did you update the code?
L1253[22:38:28] <Denyol> yes
L1254[22:38:51] <williewillus> lol
L1255[22:38:56] <williewillus> look at your AABB constructor again
L1256[22:39:00] <williewillus> especially the two Z args
L1257[22:39:19] <williewillus> they're the same. you have a 2D bounding box
L1258[22:39:30] <Denyol> the AABB thing confuses me
L1259[22:39:34] <williewillus> ??
L1260[22:39:42] <williewillus> startX startY startZ endX endY endZ
L1261[22:40:03] <Denyol> Oh, so the first startZ should be 0
L1262[22:40:17] <williewillus> it should be whatever it needs to be for your shape to be what you want :P
L1263[22:40:33] <williewillus> e.g. if startY is 0 and endY is 1 then the *height* of the block extends to the full height of the cube
L1264[22:40:44] <williewillus> if startY is 0 and endY is 0.5 then it only extends half way up the cube, aka a slab
L1265[22:40:49] <williewillus> same for X and Z
L1266[22:41:04] <Denyol> hmm yes, now its semi working
L1267[22:42:51] <Denyol> forgot how to search for a word in a single file in eclipse
L1268[22:42:56] <Denyol> im too used to MonoDevelop
L1269[22:42:58] <williewillus> ctrl f? :p
L1270[22:43:18] <Denyol> oh, yeh that thx
L1271[22:44:56] ⇦ Quits: Lathanael|Away (~Lathanael@p54960285.dip0.t-ipconnect.de) (Ping timeout: 180 seconds)
L1272[22:46:29] ⇨ Joins: Lathanael|Away (~Lathanael@p54961AB5.dip0.t-ipconnect.de)
L1273[22:46:51] <Denyol> http://prntscr.com/duzvki i think i did something wrong with the model
L1274[22:49:22] <Denyol> fixed :)
L1275[22:50:05] <Maxwell> How do I remove a wolf's aggression? Running setAttackTarget(null) and setAngry(false) removes the aggression from the herd, but not the wolf a player attacked.
L1276[22:57:23] <Denyol> how do I change the break particles for a block?
L1277[22:59:04] ⇦ Quits: Cooler (~CoolerExt@101.60.44.118) (Quit: Leaving)
L1278[23:02:27] <williewillus> Denyol: change the particle texture of the model
L1279[23:02:48] <Denyol> how?...
L1280[23:02:53] <williewillus> open up the json
L1281[23:03:09] <williewillus> under the textures section set the particle texture to whatever else you want it to be
L1282[23:03:35] <Denyol> oh ok thx
L1283[23:05:01] <williewillus> Maxwell: setRevengeTarget(null)
L1284[23:05:05] <williewillus> try that
L1285[23:05:10] <williewillus> the methods are badly named unfortunately
L1286[23:05:50] <Maxwell> That one is better than isRemote, at least
L1287[23:06:01] <williewillus> isRemote is pretty self explanatory..
L1288[23:06:19] <Maxwell> I found it to be backwards of what I
L1289[23:06:22] <williewillus> oh actually
L1290[23:06:23] <Maxwell> d expect
L1291[23:06:24] <williewillus> yeah
L1292[23:06:43] <williewillus> either way isRemote isn't changing, last time it got changed there was a big fuss about it
L1293[23:06:47] <williewillus> since it's such a commonly used field
L1294[23:07:15] <Maxwell> hmm. setRevengeTarget doesn't seem to work either
L1295[23:08:41] <williewillus> try getting the wolf's EntityAIHurtByTarget task instance and call resetTask() on it
L1296[23:09:49] <Denyol> how do I set block resistance?
L1297[23:10:17] <Denyol> nvm found it
L1298[23:11:10] ⇦ Quits: Lapiman (~tcmzeal@pool-72-66-83-14.washdc.fios.verizon.net) (Quit: lol bye)
L1299[23:11:25] ⇨ Joins: PitchBright_ (~PitchBrig@CPE00fc8d8a3ce3-CM00fc8d8a3ce0.cpe.net.cable.rogers.com)
L1300[23:11:34] <Denyol> "setResistance(30.0f);" in the constructor?
L1301[23:11:50] <williewillus> yes
L1302[23:13:13] <Maxwell> how would I go about getting that instance?
L1303[23:14:56] ⇦ Quits: PitchBright_ (~PitchBrig@CPE00fc8d8a3ce3-CM00fc8d8a3ce0.cpe.net.cable.rogers.com) (Ping timeout: 180 seconds)
L1304[23:14:57] ⇦ Quits: PitchBright (~PitchBrig@CPE00fc8d8a3ce3-CM00fc8d8a3ce0.cpe.net.cable.rogers.com) (Ping timeout: 384 seconds)
L1305[23:15:26] <williewillus> entityliving.targetTasks.taskEntries
L1306[23:16:03] <Denyol> is addCollisionBoxToList for multiple collision boxes?
L1307[23:16:19] <williewillus> yes. see the vanilla cauldron class for an example of how that's done
L1308[23:16:32] <Denyol> I was just looking at it, wanting confirmatino
L1309[23:16:59] <williewillus> it uselessly override getBoundingBox to the same thing as its superclass though :P
L1310[23:17:07] <williewillus> i wish that was an IDE inspection
L1311[23:17:09] <williewillus> "useless overriding"
L1312[23:23:46] ⇦ Quits: McJty (~jorrit@94-224-154-146.access.telenet.be) (Remote host closed the connection)
L1313[23:23:47] ⇨ Joins: PitchBright (~PitchBrig@cpe00fc8d8a3ce3-cm00fc8d8a3ce0.cpe.net.cable.rogers.com)
L1314[23:24:11] ⇨ Joins: McJty (~jorrit@94-224-154-146.access.telenet.be)
L1315[23:29:45] <killjoy> has anyone noticed that the voxelmap author is evil? (not blaming him)
L1316[23:29:50] <Denyol> should public BlockRenderLayer getBlockLayer() be set as @SideOnly(Side.CLIENT)?
L1317[23:30:09] <killjoy> he obfuscates his mod, which isn't really bad.
L1318[23:30:28] <killjoy> The thing I'm noticing is a lot of the methods are obfuscated to keywords
L1319[23:30:48] ⇨ Joins: Ashindigo (uid202308@id-202308.hathersage.irccloud.com)
L1320[23:31:50] <killjoy> names include do, if, for, do, new, try, byte, int, if, for, etc
L1321[23:31:55] <killjoy> heh
L1322[23:32:10] <killjoy> does proguard do that?
L1323[23:32:41] <tterrag> Denyol: does vanilla use the annotation?
L1324[23:32:53] <killjoy> define vanilla
L1325[23:33:17] <williewillus> Denyol: if you are overriding a sideonly method from vanilla annotate it sideonly as well
L1326[23:34:08] <Denyol> vanilla has that annotation
L1327[23:35:53] <Denyol> odd, eclipse doesnt show that it has that annotation when it suggests it
L1328[23:43:18] ⇨ Joins: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net)
L1329[23:45:19] ⇦ Quits: Maxwell (~Maxwell@pool-108-50-151-21.nwrknj.fios.verizon.net) (Ping timeout: 206 seconds)
L1330[23:46:19] ⇦ Quits: McJty (~jorrit@94-224-154-146.access.telenet.be) (Quit: Leaving)
L1331[23:48:14] <tterrag> annotations do not have to be inherited
L1332[23:48:16] <tterrag> this is a special case
L1333[23:48:21] <tterrag> eclipse has no reason to suggest that to you
L1334[23:51:13] <Denyol> what if I want it to
L1335[23:51:25] <Denyol> I would have no idea that that method would need to be annotated
L1336[23:51:31] <Denyol> then the mod would crash on servers
L1337[23:52:33] <Ordinastie> it wouldn't
L1338[23:52:52] <Denyol> getBlockLayer() is a client only method?
L1339[23:53:00] <Denyol> I think
L1340[23:53:13] <Denyol> Its used for rendering, which servers dont do
L1341[23:54:58] <Ordinastie> you block having that method won't affect anything
L1342[23:55:09] <Ordinastie> the method is just not call on servers
L1343[23:55:17] <tterrag> it may, if someone reflects the class
L1344[23:55:25] <Ordinastie> and the Enum it references it not client only
L1345[23:55:48] <tterrag> really?
L1346[23:55:51] <tterrag> well, then yeah
L1347[23:55:54] <tterrag> it's safe
L1348[23:56:17] <Denyol> what about other client only methods
L1349[23:56:18] <williewillus> it's just better to though get in the habit of it in general though
L1350[23:56:25] <Denyol> the point is that eclipse doesnt say
L1351[23:56:36] <williewillus> because eclipse doesn't know about forge
L1352[23:56:37] <Ordinastie> how could it ?
L1353[23:56:47] <Denyol> I want it to tell me tho
L1354[23:57:05] <Ordinastie> and I want eclipse to make my mods for me
L1355[23:57:27] <Denyol> well it *does* handle compiling them
L1356[23:57:41] <williewillus> lol
<<Prev Next>> Scroll to Top