<<Prev Next>> Scroll to Bottom
Stuff goes here
L1[00:00:34] *** AbrarSyed is now known as Abrar|gone
L2[00:01:03] ⇨ Joins: Ashindigo (uid202308@id-202308.hathersage.irccloud.com)
L3[00:01:27] ⇦ Quits: McJty (~jorrit@94-224-154-146.access.telenet.be) (Quit: Leaving)
L4[00:04:20] ⇨ Joins: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net)
L5[00:06:18] <Zidane> anyone good with blockstates and can tell me how to fix the screwup with my formatting lol?
L6[00:06:47] ⇨ Joins: armed_troop (~armedtroo@pool-98-114-59-249.phlapa.fios.verizon.net)
L7[00:14:16] <Ashindigo> Post your file
L8[00:17:05] ⇦ Quits: npe|office (~NPExcepti@bps-gw.hrz.tu-chemnitz.de) (Remote host closed the connection)
L9[00:17:27] <Zidane> Ashindigo, http://pastie.org/10987976
L10[00:19:49] <Akkarin> is it just me or does it expect scale to be an array usually?
L11[00:20:15] <Zidane> Fairly sure I have the variants section quite wrong
L12[00:20:30] <Zidane> Cause the client is reading the variants as facing=blah, inventory=gui
L13[00:20:33] ⇨ Joins: npe|office (~NPExcepti@bps-gw.hrz.tu-chemnitz.de)
L14[00:33:52] ⇦ Quits: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net) (Ping timeout: 194 seconds)
L15[00:36:07] <williewillus> !mh processInitialInteract
L16[00:40:18] <Zidane> williewillus, have you done a lot with blockstate files or?
L17[00:40:31] <williewillus> i guess? :P
L18[00:40:50] <Zidane> Could you check this one and tell me if you see anything outright wrong?
L19[00:40:53] <Zidane> http://pastie.org/private/ufcgwtjhqtltpm9jnelrw
L20[00:40:56] <Zidane> Driving me bonkers
L21[00:41:45] <williewillus> i get a timeout error lol
L22[00:41:52] <williewillus> oh nvm here we go
L23[00:42:12] <williewillus> around the inventory variant put []
L24[00:42:17] <williewillus> "inventory": [{ ... }]
L25[00:43:18] <Zidane> williewillus, is that because there are arrays of transforms or?
L26[00:43:56] <williewillus> in variants, you're either declaring a single full vanilla variant string, or you're declaring combinations you want the loader to eventually generate into full vanilla variant strings
L27[00:44:02] <kenzierocks> it forces the loader to recognize it properly
L28[00:44:07] <williewillus> like facing {} will eventually become facing=south, facing=west, facing=east
L29[00:44:11] <williewillus> if you don't put [] around inventory
L30[00:44:16] <williewillus> it thinks inventory is a blockstate property
L31[00:44:20] <williewillus> and transform is a value for it
L32[00:44:50] <Zidane> See, now this all makes sense :p
L33[00:45:09] <kenzierocks> also I just figured out how to read https://gist.github.com/RainWarrior/0618131f51b8d37b80a6
L34[00:45:16] <kenzierocks> after reading it like 100 times
L35[00:45:30] ⇨ Joins: Hunterz (~hunterz@62.182.234.189)
L36[00:45:38] <williewillus> lol
L37[00:46:33] <Zidane> williewillus, I assume I have to put north in there even if its empty right?
L38[00:46:49] <williewillus> yep
L39[00:47:13] <Zidane> Thanks a ton, finally loaded
L40[00:47:17] <Zidane> Really appreciate it
L41[00:50:01] <williewillus> np
L42[01:01:31] ⇨ Joins: MoxieGrrl_ (~MoxieGrrl@173-23-172-139.client.mchsi.com)
L43[01:03:54] ⇦ Quits: MoxieGrrl (~MoxieGrrl@173-23-172-139.client.mchsi.com) (Ping timeout: 206 seconds)
L44[01:07:40] ⇦ Quits: kinggoesgaming (uid23106@id-23106.tooting.irccloud.com) (Quit: Connection closed for inactivity)
L45[01:07:46] ⇦ Quits: killjoy (~killjoy@cpe-76-182-16-229.nc.res.rr.com) (Ping timeout: 206 seconds)
L46[01:08:49] ⇦ Quits: Hunterz (~hunterz@62.182.234.189) (Remote host closed the connection)
L47[01:11:34] ⇦ Quits: gr8pefish (~gr8pefish@24-121-184-14.flagcmtk01.res.dyn.suddenlink.net) (Quit: I'm gone)
L48[01:16:31] ⇨ Joins: MoxieGrrl (~MoxieGrrl@173-23-172-139.client.mchsi.com)
L49[01:18:53] ⇦ Quits: MoxieGrrl_ (~MoxieGrrl@173-23-172-139.client.mchsi.com) (Ping timeout: 206 seconds)
L50[01:18:53] ⇦ Quits: DemonWav (~DemonWav@69.197.179.106) (Ping timeout: 206 seconds)
L51[01:20:37] <Zidane> williewillus, is there a way to apply the scale I do but apply everything else from forge:default-block ?
L52[01:20:51] <Zidane> I'd rather not have to put in all the transformations from that state
L53[01:20:59] <williewillus> unfortunately not, those don't inherit
L54[01:21:07] <Zidane> That is a bummer
L55[01:21:40] <tterrag> yeah, it reads transforms{} as one object, not piecewise
L56[01:21:52] <tterrag> that's sorta just how json works
L57[01:22:44] ⇦ Quits: Doty1154 (~Doty1154@2601:648:8000:134f:8083:b7b1:2569:afac) (Read error: Connection reset by peer)
L58[01:50:43] ⇦ Quits: Meronat (uid190493@ealing.irccloud.com) (Quit: Connection closed for inactivity)
L59[01:52:04] ⇨ Joins: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se)
L60[01:54:39] ⇦ Quits: RandomX45 (~random@2601:44:8802:2060:4c2b:86c9:1e9a:46d7) (Ping timeout: 206 seconds)
L61[01:55:00] ⇨ Joins: RandomX45 (~random@2601:44:8802:2060:cd3d:37f2:6e90:25d9)
L62[01:56:36] ⇨ Joins: Naiten (Naiten@5.143.19.236)
L63[02:00:03] <MCPBot_Reborn> [TEST CSV] Pushing snapshot_20170105 mappings to Forge Maven.
L64[02:00:06] <MCPBot_Reborn> [TEST CSV] Maven upload successful for mcp_snapshot-20170105-1.11.zip (mappings = "snapshot_20170105" in build.gradle).
L65[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/
L66[02:09:43] ⇦ Quits: Chais (~Chais@62.178.210.212) (Read error: Connection reset by peer)
L67[02:11:00] ⇨ Joins: Chais (~Chais@62-178-210-212.cable.dynamic.surfer.at)
L68[02:16:47] <williewillus> !gf JUMP_STRENGTH
L69[02:20:11] ⇨ Joins: Hgrebnednav (~Hgrebnedn@d8D872A6E.access.telenet.be)
L70[02:21:14] ⇦ Quits: RandomX45 (~random@2601:44:8802:2060:cd3d:37f2:6e90:25d9) (Ping timeout: 206 seconds)
L71[02:21:36] ⇨ Joins: RandomX45 (~random@2601:44:8802:2060:cd3d:37f2:6e90:25d9)
L72[02:31:38] ⇨ Joins: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net)
L73[02:37:53] ⇦ Quits: williewillus (~williewil@cpe-24-28-24-13.austin.res.rr.com) (Quit: Leaving)
L74[02:55:34] ⇦ Quits: blood (unknown@ool-45741267.dyn.optonline.net) ()
L75[02:58:19] ⇨ Joins: DemonWav (~DemonWav@69.197.179.106)
L76[02:59:25] ⇨ Joins: brandon3055 (~Brandon@122-129-151-83.dynamic.ipstaraus.com)
L77[03:00:47] ⇦ Quits: Everseeking (~Everseeki@pool-100-6-95-214.pitbpa.fios.verizon.net) (Quit: Big Gulps, huh? Alright... Welp, see ya later)
L78[03:02:47] ⇨ Joins: fry (~rainwarri@195.91.246.187)
L79[03:02:47] MineBot sets mode: +o on fry
L80[03:05:15] ⇨ Joins: gigaherz|work (~gigaherz@84.89.63.25)
L81[03:14:51] ⇦ Quits: brandon3055 (~Brandon@122-129-151-83.dynamic.ipstaraus.com) (Read error: Connection reset by peer)
L82[03:16:57] ⇨ Joins: brandon3055 (~Brandon@122-129-151-83.dynamic.ipstaraus.com)
L83[03:21:06] ⇨ Joins: VikeStep (~VikeStep@192.43.96.58.static.exetel.com.au)
L84[03:21:36] ⇦ Quits: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se) (Ping timeout: 206 seconds)
L85[03:33:26] ⇦ Quits: immibis (~chatzilla@122-61-224-36.jetstream.xtra.co.nz) (Ping timeout: 180 seconds)
L86[03:56:00] ⇨ Joins: ThePsionic (~Psi@ip5457f909.direct-adsl.nl)
L87[04:06:00] ⇨ Joins: iari (~iari___@tyaralin.shadowdrake.eu)
L88[04:10:51] ⇦ Quits: HiddenKnowledge (~HiddenKn@93.ip-158-69-206.net) (Remote host closed the connection)
L89[04:12:49] *** amadornes[OFF] is now known as amadornes
L90[04:15:52] ⇨ Joins: SotS (~SotS@80.87.113.158)
L91[04:16:03] ⇦ Quits: SotS (~SotS@80.87.113.158) (Client Quit)
L92[04:21:04] ⇨ Joins: SotS (~SotS@80.87.113.158)
L93[04:21:13] <SotS> Good morning everyone
L94[04:21:58] <ntzrmtthihu777> heyo
L95[04:22:10] <ntzrmtthihu777> think this will be a good night for me, though ;)
L96[04:22:51] ⇦ Quits: Naiten (Naiten@5.143.19.236) (Read error: Connection reset by peer)
L97[04:34:38] <gigaherz|work> Good $moment_of_day to you too
L98[04:46:15] <SotS> Hmmm...anyone happen to know how obj visibility groups can be used in a multilayer model?
L99[04:47:42] ⇨ Joins: Ordinastie (~Ordinasti@bronyville.me)
L100[04:55:54] ⇦ Quits: SotS (~SotS@80.87.113.158) (Ping timeout: 206 seconds)
L101[05:12:56] ⇦ Quits: IceDragon (~ThatGuy@69.160.120.193) (Ping timeout: 180 seconds)
L102[05:18:53] ⇨ Joins: SotS (~SotS@80.87.113.158)
L103[05:19:33] <SotS> There went my connection
L104[05:19:40] <SotS> Did i miss anything?
L105[05:20:07] ⇦ Quits: turmfalke (~turmfalke@p20030056CF23037631B60750505170FF.dip0.t-ipconnect.de) (Ping timeout: 384 seconds)
L106[05:27:08] <Ashindigo> Nope
L107[05:27:59] <SotS> Ahright
L108[05:30:21] ⇨ Joins: turmfalke (~turmfalke@p20030056CF2303E2106DFBBB5BF04732.dip0.t-ipconnect.de)
L109[05:38:54] <SotS> Hmm is it still ok to use OBJState or is that a No-Go
L110[05:44:34] ⇨ Joins: sokratis12gr (kiwiirc@84.252.54.199)
L111[05:44:50] ⇨ Joins: TechnicianLP (~Technicia@p4FE1C45A.dip0.t-ipconnect.de)
L112[05:52:24] ⇨ Joins: Hgreb (~Hgrebnedn@d8D872A6E.access.telenet.be)
L113[05:54:49] ⇦ Quits: Hgrebnednav (~Hgrebnedn@d8D872A6E.access.telenet.be) (Ping timeout: 206 seconds)
L114[06:35:40] ⇨ Joins: Hunterz (~hunterz@62.182.234.189)
L115[06:36:48] ⇨ Joins: lclc98 (~lclc98@208.81.180.144)
L116[06:48:21] ⇨ Joins: Cast0077 (~Cast0077@24-181-179-41.dhcp.nwtn.ct.charter.com)
L117[06:49:44] *** Keridos is now known as Keridos|away
L118[06:53:04] ⇦ Quits: SotS (~SotS@80.87.113.158) (Read error: Connection reset by peer)
L119[07:18:37] ⇨ Joins: Marenthyu (~Marenthyu@marenthyu.de)
L120[07:27:41] ⇨ Joins: SotS (~SotS@80.87.113.158)
L121[07:30:26] ⇦ Quits: VikeStep (~VikeStep@192.43.96.58.static.exetel.com.au) (Quit: Leaving)
L122[07:33:45] <SotS> Is it possible to combine all parts of 2 or more OBJ Models into a single IModelState? So i can show and hide them dynamicly
L123[07:35:35] <Ordinastie> aren't you supposed to be able to do that with a single obj ?
L124[07:35:38] <Ordinastie> like with groups ?N
L125[07:37:12] <gigaherz|work> SotS: if you combine the models using submodels
L126[07:37:20] <gigaherz|work> you can then create a special IModelState
L127[07:37:24] <gigaherz|work> that has sub-modelstates
L128[07:37:28] <gigaherz|work> for the submodel names
L129[07:37:34] <gigaherz|work> I don't know the exact name of that class
L130[07:37:36] <gigaherz|work> but it's a thing
L131[07:37:50] <gigaherz|work> it's used by the blockstates loader
L132[07:37:58] <gigaherz|work> when you specify things like "transform" on a submodel
L133[07:38:09] <gigaherz|work> the loader constructs this composite IModelState
L134[07:38:21] <gigaherz|work> and then the composite model relays the sub-states to the submodels
L135[07:38:24] <gigaherz|work> based on their submodel name
L136[07:38:36] <gigaherz|work> so like state.getPart("submodelname") or similar
L137[07:38:50] <gigaherz|work> also
L138[07:38:56] <gigaherz|work> you seem to be confused between models, and model states
L139[07:39:03] <gigaherz|work> IModelState is a class that you pass on to IModel
L140[07:39:15] <gigaherz|work> to describe the configuration (transforms, visibility, animation) of that model
L141[07:39:29] <gigaherz|work> you don't "combine models into an IModelState"
L142[07:39:37] <gigaherz|work> you have a combined IModel that combines multiple other IModels
L143[07:39:50] <gigaherz|work> and you can give it a combined IModelState that combines the IModelStates of the respective IModels
L144[07:39:55] <gigaherz|work> on the bake method
L145[07:40:07] <gigaherz|work> [/rant]
L146[07:46:14] ⇨ Joins: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a)
L147[07:51:07] ⇦ Quits: npe|office (~NPExcepti@bps-gw.hrz.tu-chemnitz.de) (Remote host closed the connection)
L148[07:51:21] ⇦ Quits: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a) (Ping timeout: 206 seconds)
L149[07:51:31] *** Kolatra|away is now known as Kolatra
L150[07:56:53] <SotS> gigaherz|work: im super confused...
L151[07:59:23] <SotS> Just so I understand this right, a submodel is a variation of the base model, like fence connections
L152[08:00:09] <SotS> So, can I assign a visibility group of my OBJ to a submodel?
L153[08:04:21] <SotS> Ordinastie: cant really do it in a single model...at least as it appears and ive been told so before
L154[08:04:52] <SotS> Since i have parts of the model on the SOLID render Layer, and other parts on TRANSLUCENT
L155[08:13:56] <gigaherz|work> no
L156[08:14:03] <gigaherz|work> by submodel I mean the forge blockstates feature
L157[08:14:07] <gigaherz|work> where you can say
L158[08:14:11] <gigaherz|work> "submodels": {
L159[08:14:16] <gigaherz|work> "partname": {
L160[08:14:19] <gigaherz|work> "model": something
L161[08:14:21] <gigaherz|work> ...
L162[08:14:22] <gigaherz|work> }
L163[08:14:22] <gigaherz|work> }
L164[08:14:51] <gigaherz|work> which lets you combine multiple models into one
L165[08:21:31] *** V is now known as Vigaro
L166[08:23:05] ⇨ Joins: williewillus (~williewil@cpe-24-28-24-13.austin.res.rr.com)
L167[08:23:59] *** PaleOff is now known as PaleoCrafter
L168[08:24:56] ⇦ Quits: Cooler (~CoolerExt@42.109.168.83) (Read error: Connection reset by peer)
L169[08:24:57] ⇨ Joins: CoolerExtreme (~CoolerExt@45.249.157.114)
L170[08:29:06] ⇨ Joins: fatguylaughing (~fatguylau@worx01.worxco.com)
L171[08:29:36] <williewillus> color handlers for tinting items somehow don't work after porting to 1.11
L172[08:29:41] <williewillus> anyone run into something similar?
L173[08:30:00] <Ashindigo> Havent tried yet
L174[08:32:14] ⇨ Joins: Toluene (~Genuine@104.200.154.65)
L175[08:32:25] ⇦ Quits: Genuine (~Genuine@104.200.154.65) (Read error: Connection reset by peer)
L176[08:34:42] ⇨ Joins: Genuine (~Genuine@104.200.154.65)
L177[08:35:44] ⇦ Quits: Toluene (~Genuine@104.200.154.65) (Ping timeout: 194 seconds)
L178[08:40:25] ⇨ Joins: gr8pefish (~gr8pefish@24-121-184-14.flagcmtk01.res.dyn.suddenlink.net)
L179[08:40:31] ⇨ Joins: parzivail-mobile (kiwiirc@107-1-175-242-ip-static.hfc.comcastbusiness.net)
L180[08:42:06] ⇦ Quits: parzivail-mobile (kiwiirc@107-1-175-242-ip-static.hfc.comcastbusiness.net) (Client Quit)
L181[08:42:36] ⇨ Joins: parzivail-mobile (kiwiirc@107-1-175-242-ip-static.hfc.comcastbusiness.net)
L182[08:43:18] ⇦ Quits: parzivail-mobile (kiwiirc@107-1-175-242-ip-static.hfc.comcastbusiness.net) (Client Quit)
L183[08:50:08] ⇦ Quits: SotS (~SotS@80.87.113.158) (Read error: Connection reset by peer)
L184[08:50:49] ⇨ Joins: SotS (~SotS@80.87.113.158)
L185[08:52:40] <SotS> gigaherz|work: i see....now could I specify wich sub-object of the model i want to use as the submodel?
L186[08:52:50] <gigaherz|work> you can't
L187[08:52:56] <SotS> Dang
L188[08:53:08] <SotS> So that makes submodels useless for me
L189[08:53:14] <gigaherz|work> you could attempt to use visibility on them
L190[08:53:21] <williewillus> okay this is weird
L191[08:53:25] <gigaherz|work> but Ithink the current version still only supports them by manually using model states
L192[08:53:34] <williewillus> nothing is getting color handlers applied
L193[08:53:39] <gigaherz|work> SotS: can't you just split up the model?
L194[08:53:43] <gigaherz|work> it would save you lots of trouble
L195[08:53:51] <gigaherz|work> if you can have the parts in different .obj models
L196[08:54:00] <gigaherz|work> and just merge them from the blockstates file
L197[08:54:53] <SotS> I could split it into each connection yeah...but that would leave me with 7 obj's for the frame and core, 6 for the connectors and 6 for the glas
L198[08:55:00] <SotS> I suppose that can work
L199[08:55:10] <gigaherz|work> are the connections not identical?
L200[08:55:17] <gigaherz|work> you could have just one and rotate it?
L201[08:56:06] <SotS> That could work...rotation is supported as far as ive seen in the examole of yours
L202[08:56:11] <gigaherz|work> yup
L203[08:56:17] <SotS> Those "x": 90 lines
L204[08:56:20] <gigaherz|work> yep
L205[08:56:26] <SotS> Hmmm...
L206[08:56:42] <gigaherz|work> make the default connection be north-facing
L207[08:56:53] <gigaherz|work> and then rotate 90, 180, 270 for east, south, west
L208[08:56:57] <gigaherz|work> on Y
L209[08:57:04] <gigaherz|work> and 90 and 270 on X for up and down
L210[08:57:10] <SotS> Could be worth a try, but im not sure
L211[08:57:39] <SotS> That would shrink down the model quite alot...
L212[08:58:30] <SotS> And that way i can still have the multiple render layers right?
L213[08:58:49] <gigaherz|work> I have no idea XD
L214[08:58:59] <SotS> Well i hope so...
L215[08:59:08] <SotS> Otherwhise id waste alot of time
L216[08:59:19] <williewillus> what parts do you need to be be on separate render layers?
L217[09:00:04] <SotS> Core, Side Pieces and Connectors need to be SOLID, Glas pieces on translucent
L218[09:00:19] <williewillus> is the glass on the connection?
L219[09:00:51] <SotS> Glas is a part of the side pieces and the core
L220[09:00:59] <SotS> Wait i have a picture
L221[09:01:05] <SotS> Somewhere....
L222[09:01:37] <SotS> http://m.imgur.com/a/kbQEn
L223[09:01:50] <SotS> Thats from 1.8
L224[09:02:58] <SotS> The pictures show the whole model rendered in Both Translucent and Cutout layer
L225[09:04:18] <SotS> As you see in the pics of the Translucent Layer try, i get artifacts where the side pieces intersect in 90° angles, due to the Translucent Layer not featuring a depth buffer
L226[09:04:37] <SotS> (Looks really shitty)
L227[09:05:43] <SotS> But ill defenitly give the split model a try
L228[09:08:06] *** Vigaro is now known as V
L229[09:17:15] ⇨ Joins: Schwowsers (~Schwowser@pool-108-2-77-251.phlapa.fios.verizon.net)
L230[09:18:15] ⇦ Quits: gigaherz|work (~gigaherz@84.89.63.25) (Remote host closed the connection)
L231[09:21:21] ⇦ Quits: amadornes (~amadornes@framez.is.wtfcool.com) (Quit: Switching servers. Yay espernet.)
L232[09:21:57] ⇨ Joins: amadornes (~amadornes@framez.is.wtfcool.com)
L233[09:21:57] MineBot sets mode: +v on amadornes
L234[09:25:57] <gr8pefish> williewillus, you around? I want to ask some questions about your capability primer (which is fantastic btw!)
L235[09:26:10] <williewillus> ask away
L236[09:26:41] <gr8pefish> Okay so first off, thanks for doing that doc, it's super helpful.
L237[09:28:22] <gr8pefish> Sorry, reading more so I don't ask dumb questions
L238[09:28:23] <williewillus> np
L239[09:28:42] <SotS> Could you post the link?
L240[09:28:56] <SotS> Seems like sth i should look into
L241[09:29:05] <williewillus> https://gist.github.com/williewillus/c8dc2a1e7963b57ef436c699f25a710d
L242[09:29:10] <SotS> Thx
L243[09:36:14] ⇨ Joins: Gil (uid147942@id-147942.brockwell.irccloud.com)
L244[09:37:20] ⇨ Joins: Brokkoli (~Brokkoli@p5B23C6BC.dip0.t-ipconnect.de)
L245[09:40:16] <SotS> Wow thats a very good primer indeed
L246[09:48:18] ⇨ Joins: Jezza (~Jezza@92.206.161.17)
L247[09:48:47] ⇨ Joins: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net)
L248[09:49:21] ⇦ Quits: SotS (~SotS@80.87.113.158) (Read error: Connection reset by peer)
L249[09:49:46] ⇨ Joins: covers1624_ (~covers162@ppp122-232-6.static.internode.on.net)
L250[09:52:11] ⇦ Quits: covers1624 (~covers162@ppp122-232-6.static.internode.on.net) (Ping timeout: 206 seconds)
L251[09:55:37] ⇨ Joins: SotS (~SotS@80.87.113.158)
L252[10:00:51] *** diesieben|away is now known as diesieben07
L253[10:01:10] ⇨ Joins: Naiten (Naiten@77.35.131.240)
L254[10:06:23] <gr8pefish> willie, you should link to the ProjectE repo more, seeing the cap 'in action' (in clean code) is super helpful
L255[10:06:36] <gr8pefish> that's what I'm reading through now
L256[10:06:59] ⇨ Joins: Stiforr (~Stiforr@ip70-191-177-19.pn.at.cox.net)
L257[10:15:03] ⇦ Quits: brandon3055 (~Brandon@122-129-151-83.dynamic.ipstaraus.com) (Read error: Connection reset by peer)
L258[10:24:22] <gr8pefish> williewillus, is the only reason you have this because of the color param? https://github.com/sinkillerj/ProjectE/blob/MC19/src/main/java/moze_intel/projecte/impl/AlchBagImpl.java#L67
L259[10:24:45] ⇦ Quits: SotS (~SotS@80.87.113.158) (Read error: Connection reset by peer)
L260[10:36:23] ⇨ Joins: brandon3055 (~Brandon@122-129-151-95.dynamic.ipstaraus.com)
L261[10:45:24] ⇨ Joins: AstralSorcerer (~AstralSor@87.sub-174-200-7.myvzw.com)
L262[10:48:52] ⇨ Joins: killjoy (~killjoy@cpe-76-182-16-229.nc.res.rr.com)
L263[10:51:06] <gr8pefish> Another question for you williewillus, here you have the player, but is that parameter only necessary for syncing to other players than the given one? Because to get the capability you must have a reference to the player already, as that is where the data is stored, no? https://github.com/sinkillerj/ProjectE/blob/master/src/main/java/moze_intel/projecte/api/capabilities/IKnowledgeProvider.java#L78
L264[10:54:00] ⇦ Quits: killjoy (~killjoy@cpe-76-182-16-229.nc.res.rr.com) (Ping timeout: 206 seconds)
L265[10:56:16] <williewillus> gr8pefish: i didn't want to pass the player and hold it inside the cap instance
L266[10:56:44] <williewillus> also you have to resync the caps whenever the player entity is copied while returning from the end so it's convenient to be able to sync it to anyone
L267[10:56:57] <gr8pefish> Ah ture, okay
L268[10:57:00] <gr8pefish> *true
L269[10:57:15] <williewillus> as for your first question, yes. that method writes just one of the 16 inventories
L270[10:57:27] <gr8pefish> okay perfect
L271[10:58:37] <gr8pefish> This class has been crazy helpful, btw: https://github.com/sinkillerj/ProjectE/blob/MC19/src/main/java/moze_intel/projecte/impl/AlchBagImpl.java
L272[11:00:41] ⇨ Joins: SotS (~SotS@5.146.64.126)
L273[11:01:17] <williewillus> good to hear :D
L274[11:02:16] <gr8pefish> So assuming you needed a similar call to this [https://github.com/sinkillerj/ProjectE/blob/MC19/src/main/java/moze_intel/projecte/impl/AlchBagImpl.java#L75] from elsewhere (let's say some other mod), you would inject, get the cap, and then do entity.getCapability(cap, side), and the do getStorage() or whatever method you'd like, right?
L275[11:04:09] <williewillus> IStorage is something that knows how to read and write the Capability's default Capability Implementation, so if you had one of those you'd do that. It just so happens that I know IItmeHandler's IStorage can write most every implementation so I just use it
L276[11:04:18] <williewillus> and the inventories in the map are the default impl anyway :P
L277[11:05:58] <ghz|afk> hmmm, mc for 1.11.2 doesn't have iron nugger oredict yet, does it?
L278[11:06:02] <ghz|afk> iron nugget*
L279[11:06:09] <williewillus> there's a 1 line pr that hasn't been pulled yet
L280[11:06:10] <williewillus> so no
L281[11:06:11] <williewillus> :P
L282[11:06:18] <ghz|afk> thought so
L283[11:06:31] <ghz|afk> I'm wondering
L284[11:06:37] <ghz|afk> in my survivalist mod, I have my own iron nugget
L285[11:07:08] <gr8pefish> Now, if it was a custom cap, and you couldn't safely assume like that, don't you have to do null checks? If the player doesn't have that capability, calling getStorage (or cap.anything) will break, right? That seems like a decent bit of boilerplate for a 3rd party.
L286[11:07:11] <ghz|afk> so it would be "safe" to do like, if(mc version < 1.11.2) register nugget
L287[11:07:15] <ghz|afk> or
L288[11:07:22] <ghz|afk> some @ObjectHolder for it
L289[11:07:28] <ghz|afk> and if it's null register the nugget
L290[11:07:36] <ghz|afk> but it's also ugly at the same time
L291[11:07:44] <williewillus> gr8pefish: yeah if you inject a foreign cap you need to null check it (or put it on a method)
L292[11:07:56] <williewillus> but iitemhandler cap is forge provided so it's always going to be there
L293[11:08:02] <ghz|afk> maybe I should just do like
L294[11:08:17] <ghz|afk> in getSubItems, if(blocks contains "minecraft:iron_nugget") return;
L295[11:08:24] <ghz|afk> to hide it from the creative menu
L296[11:09:12] <ghz|afk> anyone knows when in the lifecycle the object holders are assigned?
L297[11:09:14] <williewillus> ghz|afk: when you put cap inject on a method does the parameter need to have the right generic?
L298[11:09:22] <ghz|afk> no
L299[11:09:36] <ghz|afk> but it doesn't matter
L300[11:09:43] <ghz|afk> since it would be erased anyhow
L301[11:10:05] <gr8pefish> Is there a good way to do a helper class for all those null checks you'll need, or is it best to just let the other mod deal with that? Ideally I'd like them to be able to call myAPI.someHelperMethodThatUsesCapsToDoSomething(), and if the cap is registered it works fine. Or can I just assume that if they are using my API the cap will be registered anyway? hmmm
L302[11:10:32] <williewillus> i would do something like
L303[11:10:37] <williewillus> @CapabilityInject(ITeslaWhateverItIs.class) public void enableTesla(Capability<?> cap) { teslaEnabled = true; }
L304[11:10:42] <ghz|afk> gr8pefish: IMO,
L305[11:10:44] <williewillus> and then @CapInject on a field
L306[11:10:57] <williewillus> or you could just nullcheck the field :P
L307[11:10:57] <ghz|afk> the cap should ALWAYS be present if the mod is loaded
L308[11:11:01] <ghz|afk> so
L309[11:11:07] <ghz|afk> if the coder can do myapi.whatever
L310[11:11:10] <ghz|afk> then the mod must be loaded
L311[11:11:13] <ghz|afk> so the capability will exists
L312[11:11:15] <ghz|afk> exist*
L313[11:11:29] <williewillus> i don't think you can rely on that though
L314[11:11:35] <williewillus> a mod can choose to not call register() for whatever reason
L315[11:11:43] <williewillus> so injecting and null checking is better
L316[11:11:45] <williewillus> or using the method
L317[11:11:51] <ghz|afk> that's what I'm saying, I'd enable the cap if the mod is present
L318[11:12:37] <ghz|afk> unless he wants to do an "embedded" api that uses FML's deduplication feature
L319[11:12:48] <williewillus> the deduplicator is vaporware i thuoght
L320[11:12:51] <gr8pefish> so willie, capinject a field and then just nullcheck that field? That seems like the easiest solution to me
L321[11:12:56] <williewillus> yeah
L322[11:13:07] <ghz|afk> what do you mean vaporware?
L323[11:13:25] <williewillus> it doesn't actually do anything with @API annotations last time I was told
L324[11:13:33] <ghz|afk> if a jar contains a package with @API, and that package with @API had already been loaded before
L325[11:13:34] <ghz|afk> it won't load it
L326[11:13:40] <ghz|afk> that's how the RF api has worked for all these years
L327[11:13:50] <ghz|afk> all the mods embed it, they rely on @API to deduplicate
L328[11:14:03] <gr8pefish> willie: But I had that yesterday and y'all said it was a bad thing (I thought)
L329[11:14:08] <ghz|afk> I have done the same with WAILA api also
L330[11:14:20] <williewillus> null checking a cap field is bad? 0.o
L331[11:14:23] <gr8pefish> ^ that's how I understood the API stuff ghz
L332[11:14:24] <williewillus> what was the context
L333[11:14:43] <ghz|afk> gr8pefish: problem with that approach is that it's ugly
L334[11:14:50] <ghz|afk> it forces FML to mess with classloading
L335[11:15:01] <ghz|afk> it's much better to have a soft-dependency API
L336[11:15:20] <ghz|afk> and activate the features only if the library mod is present
L337[11:15:26] <ghz|afk> example: Tesla
L338[11:15:38] <williewillus> ghz|afk: is that an fml thing though? like if you just had any standard JVM it would ignore duplicate class defs from different jars
L339[11:15:47] <williewillus> and take the first (iirc)
L340[11:15:57] <ghz|afk> I believe it crashes with duplicate class
L341[11:16:04] <ghz|afk> if the package isn't @api
L342[11:16:06] <gr8pefish> ghz: So the "clean" solution is more along the lines of to just have the interface and then let others inject the cap with it?
L343[11:16:12] <ghz|afk> but maybe i have misunderstood it all this time
L344[11:16:14] *** ghz|afk is now known as gigaherz
L345[11:16:29] <gigaherz> gr8pefish: the clean solution is that
L346[11:16:32] <gigaherz> you have a mod
L347[11:16:36] <gigaherz> with the capability and the interface
L348[11:16:42] <williewillus> SO seems to say whichever is first in the classpath gets loaded
L349[11:16:46] <williewillus> so I'm not quite convinced ;p
L350[11:17:07] <gigaherz> and you put it on a maven
L351[11:17:18] <gigaherz> and then other mods can use the maven dependency to compile their things
L352[11:17:31] <gigaherz> and rely on @CapabilityInject to detect if they should activate your api support or not
L353[11:17:41] <gigaherz> that's the cleanest in terms of hacks
L354[11:17:52] <gr8pefish> Okay, thanks for clearing that up, yeah that would work
L355[11:18:01] <gigaherz> the cleanest in terms of code readability is @Optional.Interface -- but that's the hackiest of them all
L356[11:18:08] <gr8pefish> hehe yeah
L357[11:18:39] *** williewillus is now known as willieaway
L358[11:18:58] <gr8pefish> @Optional wouldn't work in an API, right? Or is that just so hacky/wrong you'd prefer not to think about it?
L359[11:19:29] <gigaherz> it works on APIs for certain purposes
L360[11:19:31] <gigaherz> example:
L361[11:19:51] <gigaherz> I have this mod, which has its own api
L362[11:19:52] <gigaherz> https://github.com/gigaherz/Guidebook
L363[11:20:03] <gigaherz> the api is a client-only BookRegistryEvent
L364[11:20:31] <gigaherz> the recommended way to use it is
L365[11:20:32] <gigaherz> https://github.com/gigaherz/Ender-Rift/blob/master/src/main/java/gigaherz/enderRift/client/ClientProxy.java#L48
L366[11:20:38] <gigaherz> using @Optional.Method with the modid
L367[11:20:50] <gigaherz> I tried very hard to think of other solutions
L368[11:20:59] <gigaherz> everything else was fugly at best
L369[11:21:04] <gigaherz> that was clean, concise, and effective
L370[11:21:26] <gigaherz> at the cost of a little part of me dying from knowing the hack that it implies
L371[11:21:26] <gigaherz> ;p
L372[11:21:47] <gr8pefish> lol
L373[11:21:52] <gr8pefish> thanks for that info
L374[11:22:00] <gigaherz> but your case
L375[11:22:02] <gigaherz> you have a capability
L376[11:22:12] <gigaherz> the capabilities have an existing implicit way to allow soft dependencies
L377[11:22:31] <gr8pefish> which is?
L378[11:22:35] <gigaherz> which is @CapabilityInject, along with java's erasure and the ability to discard annotations
L379[11:22:38] <gr8pefish> okay
L380[11:23:42] <gigaherz> this is a rather ugly and extreme example of a soft-dependency implemented through @CapabilityInject
L381[11:23:43] <gigaherz> https://github.com/gigaherz/Ender-Rift/tree/master/src/main/java/gigaherz/enderRift/plugins/tesla
L382[11:23:47] <gigaherz> consider this the worst case scenario
L383[11:24:35] <gigaherz> in here, I have a set of wrappers
L384[11:24:53] <gigaherz> that expose the Tesla api, by wrapping the forge energy buffer
L385[11:25:20] <gigaherz> this is how I use my wrappers:
L386[11:25:20] <gigaherz> https://github.com/gigaherz/Ender-Rift/blob/master/src/main/java/gigaherz/enderRift/rift/TileEnderRiftCorner.java#L21,L66
L387[11:26:20] <gigaherz> it's incorrect to say "this is the ugliest it can get", because people have the ability to make things worse if they try
L388[11:26:41] <gr8pefish> Huh, okay. Yeah, seems like a good way to go about an inherently ugly problem imo
L389[11:26:48] <gigaherz> yeah so
L390[11:26:55] <gigaherz> for a less than ideal situation
L391[11:27:01] <gigaherz> which is that I need custom wrappers
L392[11:27:04] <gigaherz> that's what I had to do
L393[11:27:07] <gigaherz> but if the API is cleaner
L394[11:27:10] <gigaherz> if it can work by itself
L395[11:27:18] <gigaherz> and specially, if it can work using the default instance factory
L396[11:27:26] <gigaherz> it can be much shorter
L397[11:29:09] ⇨ Joins: iBurke (iBurke@ipv6.3.xi.elitebnc.org)
L398[11:29:11] ⇦ Parts: iBurke (iBurke@ipv6.3.xi.elitebnc.org) ())
L399[11:30:38] <gigaherz> best case scenario: https://gist.github.com/gigaherz/d5ec51d7d64c1d5ed58c0d1dfbdb7d59
L400[11:33:14] <gr8pefish> Oh, great, that makes it more clear, thanks! I was just reading about the factory for just that case.
L401[11:33:37] <gigaherz> you can replace Optional<T> with Object
L402[11:33:45] <gigaherz> but it's more type-safe this way
L403[11:34:40] <gigaherz> paranoia++: https://twitter.com/anttiviljami/status/816585860661518336
L404[11:35:37] <gr8pefish> Oh that;s cool, I didn't know about Optional<T>
L405[11:36:08] <gigaherz> you could initialize the field to Optional.empty
L406[11:36:12] <gigaherz> or absent
L407[11:36:15] <gigaherz> whichever the java.util has
L408[11:37:26] <gr8pefish> it's .empty
L409[11:38:55] ⇨ Joins: tfox83 (~uid47177@id-47177.highgate.irccloud.com)
L410[11:40:21] ⇦ Quits: AstralSorcerer (~AstralSor@87.sub-174-200-7.myvzw.com) (Ping timeout: 384 seconds)
L411[11:41:49] ⇨ Joins: biasq (kiwiirc@81.177.240.217)
L412[11:41:57] <biasq> Hello, i have issue with launching minecrat after installing forge 1.7.2. my launcher just crashes as soon as i click "play".
L413[11:42:28] <gigaherz> 1.7.2 is quite old
L414[11:43:11] <g> Why do you need 1.7.2?
L415[11:43:47] <biasq> idk, somebody told me to play this version because thats where the most amount of mods are supported
L416[11:43:53] <g> they meant 1.7.10
L417[11:44:03] <biasq> and i honestly dont really care about the version
L418[11:44:10] <g> that's becoming false though, 1.10.2 is getting a ton of mods these days
L419[11:44:18] <g> and 1.11 is picking up
L420[11:45:02] <gigaherz> SkyFactory 3 launched recently -- on 1.10.2
L421[11:45:09] <biasq> so do i just download forge for 1.10.2
L422[11:45:13] <biasq> and play there?
L423[11:45:21] <g> yeah, use 1.10.2
L424[11:45:23] <gigaherz> my recommendation is to get the curse launcher, and play some existing modpacks
L425[11:45:28] <gigaherz> best experience that way ;P
L426[11:45:29] <g> draconic evolution just released on 1.10.2 as well..
L427[11:45:32] <g> heh, yeah, that's easiest
L428[11:45:43] <gigaherz> but if you want to do it by hand, yeah
L429[11:45:52] <gigaherz> get 1.10.2 forge installed in your launcher
L430[11:45:56] <gigaherz> and then create a new profile
L431[11:46:00] <gigaherz> with the forge version selecte
L432[11:46:04] <biasq> i mean i am going to play with a couple of friends so we play the mods we choose
L433[11:46:07] ⇨ Joins: McJty (~jorrit@94-224-154-146.access.telenet.be)
L434[11:46:08] <gigaherz> and some custom path for storing the game data
L435[11:46:15] <biasq> thats why curse is not a solution
L436[11:46:25] <gigaherz> and then customize the java args
L437[11:46:25] <g> huh? that doesn't make curse not a solution
L438[11:46:34] <gigaherz> to change the -Xmx value to 3g or so
L439[11:46:37] <g> just make your own modpack on curse..
L440[11:46:47] <gigaherz> yeah you can upload modpacks to curse
L441[11:46:55] <gigaherz> if all the mods you want are in curseforge
L442[11:47:06] <gigaherz> you can do it with just a couple text files
L443[11:47:06] <gigaherz> ;P
L444[11:47:18] <biasq> well, will try this then. anyways thank you
L445[11:47:27] <biasq> see you later
L446[11:55:30] <biasq> hey
L447[11:55:33] <biasq> that didnot help
L448[11:55:39] <biasq> the launcher still crashes
L449[11:55:52] <g> well, you'll need to give us a crash log to help further
L450[11:56:02] <biasq> which one?
L451[11:56:06] <g> the latest one
L452[11:56:35] <biasq> https://thepasteb.in/p/3lh76wYpyqNh1
L453[11:57:07] <g> that's for 1.7.2
L454[11:57:32] <gigaherz> biasq: you have to create or edit a launcher profile
L455[11:57:42] <gigaherz> to make sure you choose the 1.10.2 forge version
L456[11:57:45] <gigaherz> from the versions list
L457[11:57:58] <biasq> oh nvm
L458[11:58:00] <biasq> my bad
L459[11:58:04] <biasq> forgot to change profile
L460[11:58:38] <biasq> why does it say 3 mods loaded tho if i have none installed yet?
L461[11:58:55] <gigaherz> forge, fml
L462[11:58:58] <g> because MCP, forge and FML
L463[11:59:05] <gigaherz> and.. ah, mcp
L464[11:59:05] <biasq> i see
L465[11:59:09] <biasq> thanks
L466[11:59:47] ⇦ Quits: biasq (kiwiirc@81.177.240.217) (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
L467[12:03:42] ⇦ Quits: sokratis12gr (kiwiirc@84.252.54.199) (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
L468[12:07:15] ⇨ Joins: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a)
L469[12:11:29] ⇨ Joins: Noppes (~Noppes@ip56530f2e.direct-adsl.nl)
L470[12:14:31] <TechnicianLP> does someone know by chnce why this: http://i.imgur.com/PuD8T8f.png is happening? those pixels shouldnt be there ....
L471[12:14:43] *** MrKick|Away is now known as MrKickkiller
L472[12:15:24] ⇨ Joins: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se)
L473[12:15:25] <gigaherz> TechnicianLP: my guess is it's semitransparent in like, photoshop
L474[12:15:32] <gigaherz> not quite empty
L475[12:15:41] <gigaherz> enough to be > the alpha threshold
L476[12:15:45] <gigaherz> so it shows as solid
L477[12:15:56] <gigaherz> the easy solution is to open the image in paint.net/photoshop/gimp
L478[12:15:58] <gigaherz> and delete those pixels
L479[12:16:01] <gigaherz> even if you can't see them
L480[12:16:30] <TechnicianLP> if that were the case the pixels would be wider .... the hole blue thing is 48 pixels
L481[12:17:32] <gigaherz> hmmm
L482[12:17:41] <gigaherz> then something is very wrong with your computer
L483[12:17:42] <gigaherz> XD
L484[12:19:00] ⇨ Joins: quadraxis (~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
L485[12:19:27] <TechnicianLP> yeah it absolutely makes no sense
L486[12:20:59] <Akkarin> You have three seconds until your graphics card goes up in flames. Use them wisely.
L487[12:21:00] * Akkarin runs
L488[12:21:55] <TechnicianLP> yeah it could be that stupid integrated intel gpu .... but last time i tried to install drivers for my real graphics card i crashed my devicemanager ...
L489[12:22:06] <gigaherz> hmmm
L490[12:22:17] <gigaherz> is the texture 24bit?
L491[12:22:43] <TechnicianLP> 32-bit color
L492[12:22:52] <gigaherz> nevermind then
L493[12:22:58] <gigaherz> I was thinking there could be some issue with palettes
L494[12:23:01] <Akkarin> tbh I'd be surprised if your integrated graphics were less conform than a real one ;-)
L495[12:23:42] <TechnicianLP> could it have smth todo with the 48px texture size?
L496[12:28:19] <Akkarin> tbh it's probably the easiest answer you can imagine. e.g. something actually for some reason renders those extra pixels
L497[12:28:28] <Akkarin> double check everything before you end up wasting hours on that ^^
L498[12:29:14] <TechnicianLP> it seems the positioning on the itemmodel is consistant
L499[12:29:14] <gigaherz> it looks like the texture is distorted, which is what bothers me
L500[12:29:23] <TechnicianLP> yeah
L501[12:29:25] <gigaherz> TechnicianLP: is mipmapping enabled in the mc config?
L502[12:29:34] <barteks2x> any reasonable way to either create Iterable from Iterator, have some kind of AbstractIterable or some non-verbose way to iterate over everything from given iterator?
L503[12:30:08] <gigaherz> Iterable<String> iterable = () -> iterator;
L504[12:30:36] <barteks2x> really? that works?
L505[12:30:42] <gigaherz> well it's a single-method interface
L506[12:30:42] <diesieben07> not really...
L507[12:30:44] <TechnicianLP> hile(it.hasNext()) it.next()
L508[12:30:46] <gigaherz> so you can wrap a lambda
L509[12:30:51] <diesieben07> it does work for iterating ONCE
L510[12:30:55] <gigaherz> to TECHNICALLY, it will return the iterator
L511[12:30:56] <gigaherz> once.
L512[12:30:59] <diesieben07> but the thing is, Iterable can be iterated as much as you want
L513[12:31:07] <diesieben07> so it's not really a solution
L514[12:31:16] <gigaherz> so if you need multiple iterations, just fill in a list
L515[12:31:31] <diesieben07> if you don't want the ugly while loop, do iterator.forEachRemaining(e -> doStuffWithE(e))
L516[12:31:32] <barteks2x> it's deep in lighting code
L517[12:31:40] <barteks2x> so I want to avoid creating collections of BlockPos
L518[12:32:11] <TechnicianLP> gigaherz: mipmap is set to 4 in the options
L519[12:32:18] <gigaherz> see if setting it to 0 fixes the issue
L520[12:33:09] <barteks2x> and creating a temporary iterable with ()->iterator was what I wanted
L521[12:33:13] <gigaherz> (probably won't, but to remove variables)
L522[12:33:35] <barteks2x> well, actually I could have just used iterator directly
L523[12:33:40] <diesieben07> yes please do...
L524[12:33:41] <barteks2x> the same amount of code
L525[12:33:44] <diesieben07> that lambda thing hack is ugly
L526[12:34:11] <barteks2x> well, it allows me to do iterable.forEach
L527[12:34:18] <barteks2x> why iterator doesn't have forEach :(
L528[12:34:22] <diesieben07> iterator.forEachRemaining
L529[12:34:25] <willieaway> ^
L530[12:34:37] <barteks2x> I feel stupid...
L531[12:34:39] <willieaway> you just don't call next so that "remaining" is the whole thing :P
L532[12:34:50] <barteks2x> I simply changed iterable->iterator and saw it doesn't compile
L533[12:35:33] <barteks2x> oh, wait, I do need to iterate twice
L534[12:35:38] <barteks2x> exactly twice
L535[12:36:14] <willieaway> where's the iterator come from?
L536[12:36:20] <willieaway> can you just pass that source through?
L537[12:36:58] <willieaway> or you could just do 2 things in forEachRemaining if you can
L538[12:37:00] <barteks2x> the iterable/iterator is usually special iterable/iterator that iterates over some BlockPos range
L539[12:37:17] <willieaway> .forEachRemaining(p -> { doA(p); doB(p); })
L540[12:37:27] <barteks2x> it can't be both done at the same time
L541[12:37:38] <barteks2x> I have to iterate once, do something, iterate second time
L542[12:37:46] <diesieben07> then you have to either pass in an iterable
L543[12:37:48] <diesieben07> or copy to a list.
L544[12:37:54] <gigaherz> is the source your own class?
L545[12:37:57] <gigaherz> or something given to you?
L546[12:38:07] <willieaway> yeah where's this come from
L547[12:38:14] <barteks2x> I don't actually remember, anyway, I unexpectedely have to go somewhere
L548[12:38:21] <diesieben07> lol
L549[12:38:23] <willieaway> is this vanilla's getAllInBox thing? because that returns iterable
L550[12:38:34] <barteks2x> 1maybe
L551[12:38:40] <barteks2x> I didn';ty see that code ina lonmg time
L552[12:38:52] <barteks2x> and I'm writing second piece of code that uses my Lightpropagator
L553[12:39:23] <willieaway> on a tangent, does anyone know if PooledMutableBlockPos actually provides any benefit over normal MutableBlockPos :P
L554[12:39:33] <TechnicianLP> gigaherz: i fixed it by resizing the texture to 64px and adding uv to the model
L555[12:39:36] <willieaway> i'm curious why they reintroduced a pool after getting rid of almost every other one
L556[12:39:48] <diesieben07> depends on the system, the GC algorithm, etc. etc.
L557[12:40:06] <diesieben07> with a good GC and a decent CPU... unpooled is most likely better
L558[12:40:20] <diesieben07> on a CPU with very low core count it might help to pool
L559[12:41:23] <gigaherz> any decent GC environment has "common object pools"
L560[12:41:48] <gigaherz> so it should not make that much of a difference
L561[12:42:03] <willieaway> well I hope they did their profiling on that :P
L562[12:42:12] <gigaherz> however mc uses millions of blockpos in weird ways
L563[12:42:16] <gigaherz> so maybe it does in that case
L564[12:42:29] <willieaway> well the pooled mutable ones are only used in a few places
L565[12:42:34] <willieaway> mostly aabb and collision stuff
L566[12:42:37] <gigaherz> yeah
L567[12:42:38] <gigaherz> it's weird
L568[12:42:43] <gigaherz> why have pooledmutable
L569[12:42:45] <gigaherz> which is less used
L570[12:43:10] <gigaherz> sounds like pooling the normal BlockPos instances makes more sense
L571[12:43:36] <gigaherz> wait
L572[12:43:39] <gigaherz> because those are not mutable
L573[12:43:41] <gigaherz> soyou can't do
L574[12:43:46] <gigaherz> getFromPool().setValue(x,y,z)
L575[12:44:13] <gigaherz> java needs valuetypes asap.
L576[12:44:40] <gigaherz> it would make blockpos trashing a non-issue
L577[12:45:20] ⇦ Quits: brandon3055 (~Brandon@122-129-151-95.dynamic.ipstaraus.com) (Ping timeout: 194 seconds)
L578[12:51:04] ⇦ Quits: McJty (~jorrit@94-224-154-146.access.telenet.be) (Quit: Leaving)
L579[12:51:14] <gigaherz> so
L580[12:51:23] <gigaherz> I was lifting my morale a bit
L581[12:51:31] <gigaherz> by looking at the dependants list of my mods
L582[12:51:37] <gigaherz> to see what kinds of modpacks they are being used in
L583[12:51:39] <gigaherz> https://minecraft.curseforge.com/projects/enderthing/relations/dependents
L584[12:51:43] <gigaherz> the top one for enderthing is
L585[12:51:56] ⇦ Quits: quadraxis (~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net) (Ping timeout: 180 seconds)
L586[12:51:57] <gigaherz> A Slightly Larger Amount of the Mods lite
L587[12:51:57] <gigaherz> by build2stone
L588[12:51:57] <gigaherz> Kind of a Ripoff
L589[12:52:08] <gigaherz> yes that's the description
L590[12:53:12] <gigaherz> https://minecraft.curseforge.com/projects/advancedcolonies
L591[12:53:17] <gigaherz> this modpack uses like, all of my mods
L592[12:53:17] <gigaherz> XD
L593[12:54:22] * Ashindigo makes a reminder to check that after he gets his 8gb of ram back
L594[12:55:03] <SotS> How would i specify more then one variant of my Model to render in a specific Layer(in the Blockstate JSON)?
L595[12:55:32] ⇨ Joins: Koward (~Koward@2a02:2788:7d4:4dd:69ba:5e9f:345a:6033)
L596[12:55:33] <barteks2x> Now I need to make an iterable that will iterate over all BlockPos in a 25x25x25 area that need l;ight update, and another one for 16x16x16 area...
L597[12:55:42] <barteks2x> *25->45
L598[12:55:44] ⇨ Joins: quadraxis (~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
L599[12:55:58] ⇨ Joins: McJty (~jorrit@94-224-154-146.access.telenet.be)
L600[12:56:17] <SotS> Example: "Translucent": "modid:block#1"
L601[12:56:38] <SotS> how would i be able to specify more than 1 variant there
L602[12:57:30] <gigaherz> maybe
L603[12:57:38] <gigaherz> "Translucent": [ "modid:block#1", "modid:block#2" ]
L604[12:57:42] <gigaherz> but no idea -- just maybe
L605[12:58:17] <SotS> tried, resulted in a fuckton of errors XD
L606[12:58:30] <SotS> unless sth else about my Blockstate is wrong
L607[12:59:00] <SotS> ill comit it real quick if anyone wants to take a look
L608[12:59:54] <SotS> https://github.com/Bitterholz/LP2/blob/master/src/main/resources/assets/lptwo/blockstates/pipe_basic.json
L609[13:00:56] ⇦ Quits: CoderPuppy (~cpup@32.218.119.221) (Ping timeout: 194 seconds)
L610[13:01:07] ⇨ Joins: cpup (~cpup@32.218.119.221)
L611[13:02:49] <SotS> gigaherz, also that submodel way left me with a ton of models bieng baked
L612[13:03:00] <SotS> 19561 to be exact
L613[13:04:37] <SotS> cuz of the multilayer i have 14 different submodels
L614[13:04:49] <SotS> i dont think its supposed to be that high
L615[13:05:06] ⇦ Quits: ThePsionic (~Psi@ip5457f909.direct-adsl.nl) (Quit: Leaving)
L616[13:06:38] <SotS> I get the feeling im either doing utter BS or its not possible the standard way
L617[13:07:43] <gigaherz> hmmm, that's a lot
L618[13:07:49] <SotS> yep
L619[13:08:58] <barteks2x> argh, changing from nested loops to iterator/iterable is hard...
L620[13:09:19] <SotS> feel ya barteks
L621[13:09:30] <SotS> i struggled hard the first time too in Uni
L622[13:09:36] ⇨ Joins: Samario (~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net)
L623[13:10:29] <barteks2x> expecially whe the code looks like this: https://github.com/Barteks2x/CubicChunks/blob/MC_1.11/src/main/java/cubicchunks/lighting/FirstLightProcessor.java#L171-L210
L624[13:10:37] *** Mine|dreamland is now known as minecreatr
L625[13:11:50] <SotS> i see why youre struggling XD
L626[13:11:53] ⇨ Joins: kinggoesgaming (~uid23106@id-23106.tooting.irccloud.com)
L627[13:19:21] ⇨ Joins: Xilef11 (~xilef11@bas1-ottawa09-174-92-84-64.dsl.bell.ca)
L628[13:22:36] <Xilef11> Is there a nice way to detect when the screen size changes? Best I got is this https://github.com/Xilef11/MC-realTimeClock/blob/master/src/main/java/xilef11/mc/realtimeclock/client/gui/Clock.java#L68-L78
L629[13:23:52] <barteks2x> Is there some interface that has only forEach method that I can use, instead of full iterator?
L630[13:24:00] <barteks2x> (or iterable)
L631[13:25:58] <barteks2x> or would it be Consumer<Consumer<T>>?
L632[13:26:12] <gigaherz> no it wouldn't be called forEach
L633[13:26:21] <gigaherz> itwould be accept(consumer)
L634[13:26:29] <barteks2x> well, it would be close enough
L635[13:27:12] <barteks2x> Is there something like that in java?
L636[13:27:29] <gigaherz> just roll your own?
L637[13:27:34] <gigaherz> interface Eacher { void forEach(Consumer<? super T> action); }
L638[13:27:36] ⇦ Quits: Samario (~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net) (Killed (NickServ (GHOST command used by Samario1)))
L639[13:28:10] <Ordinastie> but that's just a consumer
L640[13:28:22] <barteks2x> I would probably call it ForEachIterable
L641[13:28:34] <Ordinastie> then that's a foreach
L642[13:28:54] <barteks2x> well, technically Vec2f would be pair of floats, but you don't use pair of floats
L643[13:29:19] <Ordinastie> because it's native
L644[13:29:58] <barteks2x> well, I could just use Consumer<Consumer<BlockPos>> as I said before
L645[13:30:15] <gigaherz> no you use Vec2f because the name has certain implications on purpose
L646[13:30:16] <Ordinastie> why double consumer thouhg ?
L647[13:30:43] <barteks2x> forEach takes consumer. And I need to pass the firEach method itself
L648[13:30:46] <gigaherz> becauseit "takes" a consumer, and calls it for each item in the source
L649[13:31:39] <Ordinastie> I guess I don't really understand your problem
L650[13:31:58] ⇦ Quits: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net) (Quit: Bye :))
L651[13:32:11] ⇨ Joins: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net)
L652[13:32:34] ⇨ Joins: Samario (~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net)
L653[13:34:49] ⇦ Quits: AKTheKnight (sid155133@id-155133.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
L654[13:35:26] ⇦ Quits: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net) (Client Quit)
L655[13:35:48] ⇨ Joins: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net)
L656[13:36:10] ⇦ Quits: Xilef11 (~xilef11@bas1-ottawa09-174-92-84-64.dsl.bell.ca) (Quit: Leaving)
L657[13:38:12] ⇦ Quits: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net) (Client Quit)
L658[13:38:23] ⇨ Joins: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net)
L659[13:40:11] ⇦ Quits: Cast0077 (~Cast0077@24-181-179-41.dhcp.nwtn.ct.charter.com) (Quit: Poof)
L660[13:44:28] ⇨ Joins: killjoy (~killjoy@cpe-76-182-16-229.nc.res.rr.com)
L661[13:46:26] ⇨ Joins: RedXIII (~sid74944@id-74944.tooting.irccloud.com)
L662[13:46:34] *** V is now known as Vigaro
L663[13:47:51] <barteks2x> sorry that I didn't reply, that was unexpected...
L664[13:49:06] <barteks2x> the problem is that I want to have an interface that has only forEach method so that I don't have to transform my nested loops into iterator
L665[13:49:34] <Ordinastie> why not ?
L666[13:49:46] <barteks2x> because it will be even more of a mess than it's now
L667[13:49:54] <barteks2x> https://github.com/Barteks2x/CubicChunks/blob/MC_1.11/src/main/java/cubicchunks/lighting/FirstLightProcessor.java#L171-L210
L668[13:50:28] <killjoy> what's wrong with iterator?
L669[13:50:36] <killjoy> Guava's got some great stuff for that
L670[13:50:57] <Ordinastie> I don't see why it would be a mess
L671[13:51:10] <Ordinastie> you just want an iterator<MutableBlockPos>
L672[13:51:35] <barteks2x> because I will have to completely rewrite the code
L673[13:51:48] <barteks2x> And so much time after writing it I barely understand how it works
L674[13:51:54] <killjoy> Is that such a bad thing?
L675[13:52:05] <killjoy> I've rewritten code lots of times
L676[13:52:11] <barteks2x> I first need to mofe the innermost loop to outer level
L677[13:52:29] <killjoy> just make it a stream and you can do a flatmap
L678[13:52:56] <barteks2x> and if I want to use iterator, change the 2 nested for loops and contents of diffuseSkylightInBlockColumn into stateful iterator
L679[13:53:06] <barteks2x> and I somehow have to implement hasNext
L680[13:53:20] <killjoy> Look at Guava's Iterators and Iterables
L681[13:53:26] <barteks2x> it needs to be fast
L682[13:53:38] <Ordinastie> there already is an iterable<blockPos> example in MC
L683[13:53:39] <barteks2x> and guava AbstractIterator has noticable overhead
L684[13:53:41] <Ordinastie> start for that
L685[13:54:01] <killjoy> define overhead
L686[13:54:15] <barteks2x> As I said, AbstractIterator has very noticable overhead that I actually saw when benchmarking code that used it with jmh
L687[13:56:13] <barteks2x> I created implementation of exactly the same BlockPos iterator with AbstractIterator and manually and the one I created manually was noticably faster
L688[13:57:17] ⇦ Quits: Koward (~Koward@2a02:2788:7d4:4dd:69ba:5e9f:345a:6033) (Quit: Leaving)
L689[13:57:37] <barteks2x> and cince this code has to run on every single generated 16x16x16 block section it's obvious that it needs to be as fast as possible, expecially the no light update case because that's most of the blocks
L690[13:57:45] ⇦ Quits: Schwowsers (~Schwowser@pool-108-2-77-251.phlapa.fios.verizon.net) (Quit: Leaving)
L691[13:59:25] ⇦ Quits: tfox83 (~uid47177@id-47177.highgate.irccloud.com) (Quit: Connection closed for inactivity)
L692[13:59:26] ⇦ Quits: cpup (~cpup@32.218.119.221) (Ping timeout: 180 seconds)
L693[13:59:37] ⇨ Joins: cpup (~cpup@32.218.119.221)
L694[13:59:38] <killjoy> forEach in inherintly Iterable
L695[13:59:48] <barteks2x> And I also already saw how rewriting this kind of code to use iterator worked... it didn't end well, compare https://github.com/Barteks2x/CubicChunks/blob/MC_1.11/src/jmh/java/cubicchunks/worldgen/builder/OldScalingIterator.java and https://github.com/Barteks2x/CubicChunks/blob/MC_1.11/src/jmh/java/cubicchunks/worldgen/builder/ScalingForEachVanillaWithGradientNoOpts.java
L696[13:59:55] <killjoy> base it off an array maybe?
L697[14:00:21] <barteks2x> I don't know size of that array befopre I make it
L698[14:00:46] <barteks2x> and in a lot of cases it may be 0
L699[14:01:27] <barteks2x> the difference between forEach and iterable is that with iterator I have to write complicates state tracking and with forEach I just create simple loops
L700[14:01:37] <killjoy> could you use list.toArray?
L701[14:02:11] <barteks2x> also ideally I would like to either make sure JVM escape analysis works for these BlockPos instances or use mutable block pos
L702[14:02:57] <killjoy> So why aren't you just creating an interface forEach?
L703[14:04:08] ⇦ Quits: Hunterz (~hunterz@62.182.234.189) (Quit: Leaving.)
L704[14:04:30] <barteks2x> My initial question was if there is one in java already...
L705[14:04:39] <killjoy> Just iterable
L706[14:04:49] <barteks2x> one that doesn't require implementing full iterator
L707[14:05:13] <killjoy> Something that takes a supplier
L708[14:06:04] <killjoy> Consumer<Consumer<T>>\
L709[14:07:27] <barteks2x> which is what I initially came up with but didn't really like the idea of consumer that takes another consumer
L710[14:07:59] <killjoy> Just create an interface. they're cheap
L711[14:14:35] <barteks2x> looking at github blame output on my FIrstLightProcessor class, the only thing that ha sleft from the original now is parts of license header, package name and the last closing bracket :D
L712[14:14:52] <barteks2x> (where the original if in TallWorldsMod)
L713[14:18:07] <LexMobile> tterrag: HEY YOU HAZ A BUG!
L714[14:20:07] ⇨ Joins: primetoxinz (~primetoxi@ip68-107-226-229.hr.hr.cox.net)
L715[14:22:52] <ntzrmtthihu777> someone set us up the bug?
L716[14:24:00] <tterrag> lex: ?
L717[14:25:52] ⇦ Quits: McJty (~jorrit@94-224-154-146.access.telenet.be) (Quit: Leaving)
L718[14:30:05] <tterrag> LexMobile, what is the bug?
L719[14:30:39] <killjoy> I also haz a bug.. in my monitor's display
L720[14:30:50] <killjoy> It's very annoying
L721[14:31:06] <gigaherz> in front of, or inside?
L722[14:31:20] <killjoy> inside
L723[14:31:25] <killjoy> between the lcd and backlight
L724[14:31:36] <gigaherz> ouch
L725[14:31:38] <gigaherz> worst case scenario
L726[14:31:45] <Ashindigo> One of my ram sticks became unseated sometime and I just noticed today :/
L727[14:31:53] <killjoy> This monitor was $500 too
L728[14:32:02] <killjoy> though the price has gone down since I bought it
L729[14:32:09] ⇨ Joins: McJty (~jorrit@94-224-154-146.access.telenet.be)
L730[14:33:24] <LexMobile> your simple acheivements mod
L731[14:33:36] <LexMobile> on multipleayer, doesnt properly store the checked stuff
L732[14:33:47] <LexMobile> they keep changing when other players change things
L733[14:34:26] *** killjoy is now known as killjoy|work
L734[14:34:54] <killjoy|work> aren't achievements stat based anyway?
L735[14:35:55] <gigaherz> yes achievements are normally one-off stats
L736[14:36:37] *** willieaway is now known as williewillus
L737[14:37:25] ⇦ Quits: McJty (~jorrit@94-224-154-146.access.telenet.be) (Quit: Ik ga weg)
L738[14:38:43] <LexMobile> these arnt actually achivements, its just hte mods name
L739[14:38:49] <LexMobile> its a book where you can put check marks
L740[14:42:34] <gigaherz> oh
L741[14:42:39] <gigaherz> playing skyfactory 3? ;P
L742[14:44:27] <LexMobile> ya
L743[14:58:05] <tterrag> never heard of that issue
L744[14:58:14] <tterrag> I store a simple map of player->data
L745[14:59:28] *** mumfrey is now known as Mumfrey
L746[14:59:31] <tterrag> issue tracker is here https://github.com/wyldmods/SimpleAchievements/issues
L747[15:04:17] *** MrKickkiller is now known as MrKick|Away
L748[15:05:23] *** MrKick|Away is now known as MrKickkiller
L749[15:08:13] <LexMobile> why is it wylds mods not yours? and why isnt that linked in the curse site/
L750[15:09:04] <barteks2x> urgh... I got the client into crashed-but-not-stopped state again...
L751[15:09:09] <tterrag> is the source not linked?
L752[15:09:16] <barteks2x> client thread left running, server thread gone
L753[15:09:30] <barteks2x> well, waiting, not running
L754[15:10:12] <tterrag> the source is linked
L755[15:10:19] <tterrag> I just checked
L756[15:10:41] <tterrag> I don't have an "issues" link but that's just GH issues so
L757[15:10:44] <tterrag> but I'll add it
L758[15:10:57] <barteks2x> it's stuck in exactly the same place as last time
L759[15:12:01] <barteks2x> just now the cause of stopping was crash
L760[15:13:51] <williewillus> hm so nowadays is it good practice to still do something like: stack.shrink(1); if (stack.isEmpty()) player.setHeldItem(EMPTY)? or should it not matter at all anymore
L761[15:14:12] <williewillus> afaict empty stacks still get saved
L762[15:23:41] ⇨ Joins: KnightMiner (~KnightMin@adsl-75-5-75-217.dsl.emhril.sbcglobal.net)
L763[15:23:54] <LexMobile> humm must not of seen it i looked for source
L764[15:24:10] <PaleoCrafter> if you were on Curse rather than CurseForge, it doesn't display those links
L765[15:24:21] <PaleoCrafter> I still wonder why they haven't phased it out yet ._.
L766[15:24:59] <gigaherz> curse.com is the "for noobs" site
L767[15:25:18] <gigaherz> curseforge is for more knowledgeable users (and the modders)
L768[15:25:32] <PaleoCrafter> the noobs should just be using the Curse client anyways :P
L769[15:26:45] <gigaherz> for browsing mods?
L770[15:26:54] <heldplayer> tbh curse.com is more confusing for me
L771[15:28:50] <Akkarin> tbh the real "noobs" will just grab ftb or whatever and call it a day
L772[15:29:18] <Akkarin> "oh look <insert "famous" youtuber/streamer/taco here> played <insert modpack name here> I want it too!"
L773[15:33:09] ⇦ Quits: kashike (kashike@is.a.miserable.ninja) (Quit: WeeChat 1.7-dev)
L774[15:33:57] ⇨ Joins: kashike (kashike@is.a.miserable.ninja)
L775[15:34:23] ⇨ Joins: ThePsionic (~Psi@ip5457f909.direct-adsl.nl)
L776[15:36:36] <barteks2x> I recreated the world that crashed when creating it, with exactly the same code, and it stopped normally now...
L777[15:37:12] ⇨ Joins: Koward (~Koward@2a02:2788:7d4:4dd:69ba:5e9f:345a:6033)
L778[15:37:50] <Koward> Still no one that understands why vanilla fetchs its own block instances from the registry ? That bothers me.
L779[15:38:10] <williewillus> ?
L780[15:38:19] <MCPBot_Reborn> MCPBot_Reborn is now in read-only mode. Commands that change database data are currently disabled.
L781[15:38:51] <barteks2x> any way to tell idea to ignore tests when compiling?
L782[15:39:07] <williewillus> unmark it as test dir
L783[15:39:57] <barteks2x> nope, that didn't change anything
L784[15:40:04] <williewillus> wat
L785[15:40:05] <barteks2x> it still complains about my tests not compiling
L786[15:40:16] <williewillus> it shouldn't even see them as tests if you unmark it properly
L787[15:40:20] <barteks2x> And I don't want to fix them for now, I want to test something else ingame
L788[15:40:29] <barteks2x> I literally marked it as excluded
L789[15:41:15] <barteks2x> meh, will probably be faster to fix these tests
L790[15:44:29] ⇦ Quits: kashike (kashike@is.a.miserable.ninja) (Quit: WeeChat 1.7-dev)
L791[15:45:43] ⇨ Joins: kashike (kashike@is.a.miserable.ninja)
L792[15:57:56] ⇦ Quits: fatguylaughing (~fatguylau@worx01.worxco.com) (Quit: fatguylaughing)
L793[15:58:39] ⇦ Quits: MCPBot_Reborn (~MCPBot_Re@mcpbot.bspk.rs) (Remote host closed the connection)
L794[15:59:12] ⇨ Joins: MCPBot_Reborn (~MCPBot_Re@24.152.202.255)
L795[15:59:23] <MCPBot_Reborn> MCPBot_Reborn is now in read-only mode. Commands that change database data are currently disabled.
L796[16:01:12] * williewillus slaps shadowfacts
L797[16:03:33] <williewillus> actually I take that back, that was weird
L798[16:03:37] <williewillus> I'm confused now
L799[16:03:40] ⇦ Quits: Naiten (Naiten@77.35.131.240) (Read error: Connection reset by peer)
L800[16:05:03] <williewillus> actually yes that was a real slap, you reapplied the patches wrong when moving the ENtityHorse cap patch to AbstractHorse :P
L801[16:05:18] <williewillus> it got patched into readFromNBT which is not where it's supposed to be
L802[16:07:56] ⇦ Quits: KnightMiner (~KnightMin@adsl-75-5-75-217.dsl.emhril.sbcglobal.net) (Ping timeout: 180 seconds)
L803[16:20:00] ⇨ Joins: sinkillerj (~sinkiller@nc-67-232-15-221.dhcp.embarqhsd.net)
L804[16:20:54] ⇨ Joins: founderio (~Thunderbi@p200300C4E3C1C00073BE640EE2AC4FCF.dip0.t-ipconnect.de)
L805[16:21:10] ⇦ Quits: founderio (~Thunderbi@p200300C4E3C1C00073BE640EE2AC4FCF.dip0.t-ipconnect.de) (Client Quit)
L806[16:23:19] ⇦ Quits: williewillus (~williewil@cpe-24-28-24-13.austin.res.rr.com) (Quit: Leaving)
L807[16:24:22] ⇨ Joins: KnightMiner (~KnightMin@adsl-75-5-75-217.dsl.emhril.sbcglobal.net)
L808[16:26:32] ⇨ Joins: williewillus (~williewil@cpe-24-28-24-13.austin.res.rr.com)
L809[16:33:57] ⇨ Joins: LexManos (~LexManos@50-39-179-178.bvtn.or.frontiernet.net)
L810[16:33:57] MineBot sets mode: +o on LexManos
L811[16:34:31] *** fry is now known as fry|sleep
L812[16:36:41] ⇦ Quits: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a) (Ping timeout: 206 seconds)
L813[16:36:47] <williewillus> so is the whole "magma block retains neighbor light" a bug or feature? :P
L814[16:36:55] <gigaherz> bug
L815[16:36:57] <williewillus> community thinks it's a feature but wiki says it's a bug
L816[16:37:03] <williewillus> how does something like that happen
L817[16:37:03] <gigaherz> since reloading chunks/game cancels it
L818[16:37:18] <gigaherz> block somehow has "sticky" light values
L819[16:37:27] *** Abrar|gone is now known as AbrarSyed
L820[16:37:32] <gigaherz> no idea what the bug is, though
L821[16:37:54] <williewillus> it seems pretty intentional looking at the class though, it has a hardcoded getPackedLightmapCoords
L822[16:38:33] <gigaherz> then the bug is it loses the light value after reloading?
L823[16:39:00] <gigaherz> although they could have had the block use the meta value to store the light level
L824[16:39:20] <gigaherz> and just change blockstates when the light value changes
L825[16:39:23] <gigaherz> but they didn't do that
L826[16:40:09] <williewillus> so the result of that method goes directly into the WR lightmap
L827[16:40:19] <williewillus> maybe they were playing with fullbright blocks and it didn't really work
L828[16:40:26] <gigaherz> maybe
L829[16:43:12] <williewillus> yeah the value that's hardcoded decodes into 15 for both sky and block light
L830[16:43:17] <williewillus> so looks like a failed fullbright experiment
L831[16:45:59] <Akkarin> Frankenstein's Block?
L832[16:46:31] <williewillus> actually, it *is* pretty fullbright, so the actually the light retention is probably a bug :P
L833[16:46:36] <williewillus> back where we started lol
L834[16:47:09] <SotS> so Yeah...i think im going back to Fry's example method for rendering my Pipe and am gonna leave the Glas out
L835[16:47:19] <williewillus> ?
L836[16:47:30] <williewillus> use blockstates, don't use that thing you copied
L837[16:47:39] <williewillus> even if you do models in code use blockstates
L838[16:47:53] <SotS> Using Submodels i ended up with sth about 16K models being baked
L839[16:47:54] ⇦ Quits: LexManos (~LexManos@50-39-179-178.bvtn.or.frontiernet.net) (Read error: Connection reset by peer)
L840[16:48:07] <williewillus> ? what properties did you have?
L841[16:48:13] <williewillus> just the 6 directions right?
L842[16:48:18] ⇨ Joins: LexManos (~LexManos@50-39-179-178.bvtn.or.frontiernet.net)
L843[16:48:18] MineBot sets mode: +o on LexManos
L844[16:48:25] <williewillus> this may be a good application of the 1.9 blockstate json
L845[16:48:28] <williewillus> instead of the forge one
L846[16:48:38] <SotS> I need a Submodel for Each solid Part and each translucent part, ending up with 14 Submodels
L847[16:48:59] <SotS> 2 For Core, and 12 for Connections
L848[16:49:00] ⇦ Quits: Samario (~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net) (Quit: You think you are above consequences.)
L849[16:49:05] <SotS> remember, multilayer
L850[16:49:20] <williewillus> okay if you remove the multilayer part then it should get even easier
L851[16:49:33] <williewillus> so please don't use the hidden state thing it's really dirty
L852[16:49:39] <williewillus> try out the 1.9 json format
L853[16:50:06] <williewillus> though, it probably doesn't support loading alternate model formats x.x
L854[16:50:10] <SotS> Then i have to decide between either: No Glas in the Pipe, or Crappy depth buffer artifacts
L855[16:50:43] <SotS> Hidden State is the only thing that worked until now
L856[16:50:58] <williewillus> at ****least**** make it use blockstates
L857[16:51:01] <williewillus> instead of arbitrary magic code
L858[16:51:20] <SotS> i guess Multilayer isnt used that often eh?
L859[16:51:26] <williewillus> not really :P
L860[16:51:31] <PaleoCrafter> *at *******************************least******************************* make it use blokstates
L861[16:51:33] <SotS> Crap
L862[16:51:36] <PaleoCrafter> ftfy
L863[16:51:57] <williewillus> fry hasn't been doing much lately :/
L864[16:52:03] <williewillus> there's lots of things to do rendering wise
L865[16:52:13] <SotS> Yeah i see that
L866[16:52:18] <LexManos> someone should step up then, i've said it before and i'll say it again.
L867[16:52:26] <LexManos> rendering isn't my strong suit.
L868[16:52:33] <SotS> neither is it mine
L869[16:52:54] <SotS> and the rather poor documentation makes it difficult to get in to
L870[16:53:01] <williewillus> I'll probably start with that lol
L871[16:53:06] <williewillus> documenting all the stuff already there
L872[16:53:25] <SotS> That would be what i call a high priority XD
L873[16:53:36] <TechnicianLP> docs on the asm would be nice
L874[16:53:43] ⇦ Quits: Jezza (~Jezza@92.206.161.17) (Ping timeout: 384 seconds)
L875[16:53:52] <williewillus> there's the grammar
L876[16:53:53] <williewillus> :P
L877[16:53:56] ⇦ Quits: Koward (~Koward@2a02:2788:7d4:4dd:69ba:5e9f:345a:6033) (Ping timeout: 180 seconds)
L878[16:54:31] <williewillus> i tried starting to make a doc for it but I felt like the more i uinderstood the less I'm able to explain
L879[16:54:34] <williewillus> the system :P
L880[16:55:00] <SotS> IDk...im tired of blockstates...the submodels create a fuckload of baking process and the "hacky magic thing" worked fine
L881[16:55:31] <TechnicianLP> Sots extended state?
L882[16:55:33] <williewillus> no, I mean use blockstate properties
L883[16:55:35] <williewillus> at least
L884[16:56:01] <PaleoCrafter> what grammar would you need for coremodding?
L885[16:56:05] * PaleoCrafter sees himself out
L886[16:56:12] <williewillus> treading a thin line there
L887[16:56:17] <SotS> Well i have an older 1.8 Version of my Mod wich uses OBJState
L888[16:56:19] <TechnicianLP> AnimationStateMachine
L889[16:56:25] <PaleoCrafter> I know :P
L890[16:56:30] <williewillus> TechnicianLP: thatsthejoke.tiff
L891[16:56:38] <diesieben07> .tiff lol
L892[16:56:54] <gr8pefish> williewillus, this look better? https://github.com/gr8pefish/OpenGlider/blob/1.10/src/main/java/gr8pefish/openglider/common/capabilities/GliderCapabilityImplementation.java
L893[16:56:55] <williewillus> SotS: you can just do that but it's good to specify your connections using getActualState
L894[16:57:03] <williewillus> instead of just calling a method somewhere
L895[16:57:47] <SotS> Well i was told i should get the connection list via my tile
L896[16:57:58] <SotS> then use that for the extended state
L897[16:58:11] <williewillus> who told you to use extended state 0.o
L898[16:58:16] * williewillus smacks them
L899[16:58:29] <SotS> some people before
L900[16:58:30] <williewillus> getActualState works good enough in this case
L901[16:58:36] <williewillus> gr8pefish: looks good
L902[16:58:48] <williewillus> gr8pefish: this field I named kinda badly, I'd callit `impl` https://github.com/gr8pefish/OpenGlider/blob/1.10/src/main/java/gr8pefish/openglider/common/capabilities/GliderCapabilityImplementation.java#L102
L903[16:59:12] <gr8pefish> yeah, good call, thanks
L904[16:59:27] ⇨ Joins: KnightMiner_ (~KnightMin@adsl-75-5-73-129.dsl.emhril.sbcglobal.net)
L905[16:59:31] <TechnicianLP> so pipes have 64 permutations for connections .... if you do something like opaque/glass it gets even worse
L906[17:00:05] <SotS> Well Willus maybe you can provide an example, because currently, i have the model with getactualState, doing it in Blockstates and PropertyBools...but A, that throws me a bunch of errors, and bakes 16k models...
L907[17:00:13] ⇨ Joins: Shambling (~Shambling@24-181-186-74.dhcp.nwtn.ct.charter.com)
L908[17:00:31] <williewillus> I'm saying keep the propertybools and getactualstate but do the model generation in code
L909[17:01:25] <SotS> i can keep my OBJ for that? <.<
L910[17:01:49] ⇦ Quits: KnightMiner (~KnightMin@adsl-75-5-75-217.dsl.emhril.sbcglobal.net) (Ping timeout: 206 seconds)
L911[17:01:53] <SotS> Ive got no clue how to do the rendering in code thing
L912[17:02:07] <williewillus> I'm saying it's okay to do the hidden model part thing
L913[17:02:12] * SotS still prefers the fry method Kappa
L914[17:02:13] <williewillus> but get the connectinos from the state
L915[17:02:18] <williewillus> and use properties
L916[17:02:49] <SotS> Now im lost
L917[17:03:30] <SotS> I can get the Connections via Tile entity just fine
L918[17:03:51] <williewillus> i'm saying put the connections into the IBLockState using getActualState and then get them back out to make the model
L919[17:04:01] <williewillus> I hope you weren't accessing the TE directly to bake models
L920[17:04:56] <SotS> Nope im just using the TE to get the list of Parts that is hidden, thzen pass the IModelState into the Extended State of the Block
L921[17:05:54] <SotS> I still dont get why i should use Properties
L922[17:06:11] <williewillus> better practice
L923[17:06:31] <SotS> But what does it actually offer me over having none
L924[17:06:32] <williewillus> though I think I get what you're doing and god it's ugly but it's convenient and requires little work ;p
L925[17:07:00] <SotS> well first time is allways ugly eh :P
L926[17:07:03] <diesieben07> the problem with directly accessing the TE in the model stuff is that it's not thread safe.
L927[17:07:04] <williewillus> not sure if Properties.AnimationProperty was designed to be used this way lol
L928[17:07:25] <diesieben07> beacuse rendering will happen in a different thread.
L929[17:07:28] <williewillus> yeah what method are you accessing the TE to gather this info?
L930[17:07:38] <williewillus> *in what
L931[17:07:57] <SotS> in getExtended State
L932[17:08:02] <SotS> only time i use the TE
L933[17:08:28] <williewillus> okay then it's fine for now. I really really don't like it but it'll do for now :P
L934[17:08:28] <diesieben07> and do you pass stuff that is not threadsafe into the extended state?
L935[17:08:51] <williewillus> nah it's an IModelState put into Properties.AnimationProperty
L936[17:08:54] ⇨ Joins: Naiten (Naiten@5.143.101.250)
L937[17:09:01] <williewillus> which has deep hardcoded fry magic in getQuads to rebake the model
L938[17:09:19] <williewillus> which is ugly but guess fry thought that was the best design possible for the system :P
L939[17:09:42] <SotS> And used in the debug Code, wich i got refered to and learned from
L940[17:10:03] <williewillus> that needs to be cleaned up too >_>
L941[17:10:07] <SotS> Everyone was like: look at that debug code
L942[17:10:12] ⇦ Quits: Noppes (~Noppes@ip56530f2e.direct-adsl.nl) (Read error: Connection reset by peer)
L943[17:10:15] <SotS> all wrong agfain -.-
L944[17:10:47] <SotS> ill just hire someone with experience to get this damn model working
L945[17:10:50] <SotS> XD
L946[17:10:59] <williewillus> wait
L947[17:11:03] <williewillus> so if it worked fine in 1.8.x
L948[17:11:08] <williewillus> what's wrong with it rn?...
L949[17:11:15] <williewillus> nothing you used should have changed
L950[17:11:28] <SotS> i got spooked by mojangprecation
L951[17:11:37] <gr8pefish> williewillus, is an 'a;ready has' check like this necessary? I noticed you didn't have one like it, is it taken care of automagically by Forge? https://github.com/gr8pefish/OpenGlider/blob/431e6747135b316798b227bdaa42b0d427c61e7c/src/main/java/gr8pefish/openglider/common/event/ServerEventHandler.java#L29
L952[17:11:52] <SotS> @Depricated is like a red towel for me
L953[17:12:48] <williewillus> gr8pefish: i guess it's good to have that, didn't think of it.
L954[17:12:55] <SotS> in 1.8 i used Visibility Groups, as i looked through the Debug code, i came across Fry's Magic
L955[17:13:04] <SotS> for 1.10
L956[17:13:10] <williewillus> which debug did yuo find it in?
L957[17:13:50] <SotS> williewillus, https://gitlab.prok.pw/Mirrors/MinecraftForge/blob/1.10.x/src/test/java/net/minecraftforge/debug/ModelLoaderRegistryDebug.java
L958[17:14:53] *** Darkhax_AFK is now known as Darkhax
L959[17:14:53] <SotS> There used to be stuff done with simple Visbility Groups in 1.8
L960[17:15:01] <williewillus> oh yeah
L961[17:15:09] <williewillus> he made a general form
L962[17:15:14] <williewillus> so vanilla models can have group vis too
L963[17:16:23] <SotS> i guess ill just keep on going as is with the Fry haxx
L964[17:16:33] <SotS> works pretty well even if dirty
L965[17:16:39] ⇨ Joins: TechnicianLP2 (~Technicia@p4FE1C45A.dip0.t-ipconnect.de)
L966[17:16:51] ⇦ Quits: TechnicianLP (~Technicia@p4FE1C45A.dip0.t-ipconnect.de) (Quit: Leaving)
L967[17:17:12] <SotS> i could actually try doing it the old way
L968[17:17:18] <SotS> see if it still works
L969[17:17:34] <SotS> oh wait no there was sth about why it didnt...
L970[17:17:42] <williewillus> do you have your old 1.8 code up somewhere?
L971[17:17:45] <SotS> sth doesnt accept OBJState anymore
L972[17:17:51] <SotS> sure gimme a sec
L973[17:18:00] ⇦ Quits: ThePsionic (~Psi@ip5457f909.direct-adsl.nl) (Quit: Leaving)
L974[17:18:44] <SotS> williewillus, https://github.com/Bitterholz/Conveyor-Tubes/tree/master/src
L975[17:19:11] <williewillus> what class
L976[17:19:18] <SotS> https://github.com/Bitterholz/Conveyor-Tubes/blob/master/src/java/com/caledios/conveyortubes/block/pipe/BlockBasicPipe.java
L977[17:20:04] <williewillus> ah i see
L978[17:20:18] <williewillus> yeah best solution is to just take the old thing and make it use the new genral group vis stuff
L979[17:20:22] <williewillus> which shouldn't be terribly hard\
L980[17:20:34] <SotS> hmmm
L981[17:21:22] <SotS> What would i have to switch out? I guess OBJModel.OBJProperty.instance for AnimationProperty?
L982[17:21:56] <williewillus> yes
L983[17:22:03] <SotS> Anything else?
L984[17:22:27] * SotS takes notes
L985[17:23:06] *** DarkevilAway is now known as Darkevilmac
L986[17:23:44] <gr8pefish> huh I think I understand why you have that sync method in your capability interface now, it's a cleaner way of going about it
L987[17:23:59] <williewillus> the OBJ specific classic shold be replaced by the general versions and using Models.getParts
L988[17:24:06] <williewillus> basically the ModelLoaderRwegistryDebug examples xD
L989[17:24:17] <TechnicianLP2> sync method? grepfish
L990[17:24:44] <SotS> There is an example on that?
L991[17:24:51] <williewillus> i have a sync method in my cap interface
L992[17:24:52] <SotS> dafuq how did i not spot it
L993[17:24:59] <gr8pefish> sorry, that was meant for willie, that is super vague in retrospect. This one https://github.com/sinkillerj/ProjectE/blob/MC19/src/main/java/moze_intel/projecte/api/capabilities/IAlchBagProvider.java#L34
L994[17:25:05] <gr8pefish> ^ TechnicianLP2
L995[17:25:34] <williewillus> SotS: OBJTesseractTileEntity
L996[17:25:42] <williewillus> in the ModelLoaderRegistryDebug
L997[17:26:00] ⇨ Joins: Everseeking (~Everseeki@pool-100-6-95-214.pitbpa.fios.verizon.net)
L998[17:26:11] <SotS> so basicly keep on doing what i did originally
L999[17:26:46] <williewillus> i would not take his structure directly though since it's super dirty, put the IModelState computation in getExtendedState where it should be lol
L1000[17:26:52] <williewillus> TE's should be storing rendering crap in fields
L1001[17:27:00] <williewillus> like IModelState's
L1002[17:27:12] <TechnicianLP2> i have written a nbttagcompound that detects changes made to it; the client only gets the diff
L1003[17:27:16] <williewillus> *shouldN"T be :P
L1004[17:27:32] <gr8pefish> ohh that's nice, link me tehnician?
L1005[17:27:47] <SotS> so shift the ModelState to the Block itself
L1006[17:28:02] * TechnicianLP2 leaves bey and starts computer
L1007[17:28:11] <SotS> but keep using the TE to determine the connections
L1008[17:28:14] <williewillus> yeah
L1009[17:28:20] <SotS> i see
L1010[17:28:31] ⇦ Quits: Gil (uid147942@id-147942.brockwell.irccloud.com) (Quit: Connection closed for inactivity)
L1011[17:28:35] <SotS> man this model is quite a Journey
L1012[17:28:38] <williewillus> also, access to the TE needs to be read-only and have appropriate safety checks
L1013[17:28:57] <williewillus> we just discovered that calling getTileEntity may make the world actually instantiate one if it doesnt exist
L1014[17:29:09] <williewillus> which is bad news if that call is in getExntededState, from another thread :P
L1015[17:29:34] <williewillus> see big orange box https://mcforge.readthedocs.io/en/latest/blockstates/states/#actual-states
L1016[17:29:44] <SotS> Wait...so even checking if it returns null isnt safe?
L1017[17:29:51] <williewillus> nope lol
L1018[17:29:52] <williewillus> it's dumb
L1019[17:29:52] ⇨ Joins: TechnicianLP (~Technicia@p4FE1C45A.dip0.t-ipconnect.de)
L1020[17:30:05] <gigaherz> williewillus: what are the conditions where that happens?
L1021[17:30:06] <williewillus> simply calling getTileEntity may cause writes to occur
L1022[17:30:14] <gigaherz> I haven't experienced it myself -- or never noticed
L1023[17:30:34] <williewillus> like any other race condition, it's rare but has happened
L1024[17:30:38] <williewillus> https://github.com/Vazkii/Botania/pull/2101
L1025[17:31:30] <gigaherz> hmmm
L1026[17:31:31] <gigaherz> TileEntity tileentity = worldIn instanceof ChunkCache ? ((ChunkCache)worldIn).getTileEntity(pos, Chunk.EnumCreateEntityType.CHECK) : worldIn.getTileEntity(pos);
L1027[17:31:32] <williewillus> chunk.getTileEntity actually has a secret parameter, telling it 1. create when not present 2. queued create when not present, 3. just read
L1028[17:31:35] <gigaherz> that's ugly, lol XD
L1029[17:31:38] <williewillus> guess which one's the default?
L1030[17:31:39] <williewillus> #1
L1031[17:32:37] <SotS> that stuff is dualy noted
L1032[17:32:42] <barteks2x> yey for minecraft crash reporting, my code threw ReportedException but crash report shows io.netty.channel.ChannelException: connection refused anyway
L1033[17:32:55] <gigaherz> so I'll have to go through all my implementations of getActualState
L1034[17:32:57] <gigaherz> and add that
L1035[17:33:01] <gigaherz> because I have never done it ;P
L1036[17:33:08] <williewillus> hm
L1037[17:33:13] <Tencao> I learned something new today
L1038[17:33:19] <SotS> well who the F would have expected a race condition there
L1039[17:33:20] <williewillus> i hope setting up old forge dev spaces still works
L1040[17:33:34] <gigaherz> how old? XD
L1041[17:33:34] <williewillus> who the hell expected a getter to write is the question
L1042[17:33:35] *** MrKickkiller is now known as MrKick|Away
L1043[17:33:38] <williewillus> 1.8.9
L1044[17:33:41] <gigaherz> should work
L1045[17:33:44] <gigaherz> anything 1.7.10+ should do
L1046[17:34:00] <SotS> getters writing is the biggest BS ive yet encountered
L1047[17:34:09] <gigaherz> problem is we call it getTileEntity
L1048[17:34:14] <gigaherz> we don't know what mojang calls it ;p
L1049[17:34:18] <barteks2x> well, getBlockState also loads a chunk if it's not there
L1050[17:34:18] <williewillus> trying to see if the animation api performed as badly as it does now (memory wise) back then because I'm pretty sure it was nice and efficient in 1.8.x
L1051[17:34:53] <SotS> allright Code reset here wo come
L1052[17:35:42] <barteks2x> So there, all my crash report details are gone because MInecraft threw another exception
L1053[17:35:50] <williewillus> !latest
L1054[17:37:01] <williewillus> uh
L1055[17:37:10] <williewillus> MinecraftForge/jsons/1.8.9-dev.json could not be parsed
L1056[17:38:01] <gigaherz> o_O
L1057[17:39:23] <SotS> github doesnt happen to have a way to reset the remote to a previous commit?
L1058[17:39:53] <williewillus> force push
L1059[17:41:09] <shadowfacts> Is there a way to apply the forge:default-block transformation to a custom IBakedModel impl?
L1060[17:41:23] <TechnicianLP> gr8pfish: https://gist.github.com/TechnicianLP/db08146f4fb6fd11792469e6ce44a5b4
L1061[17:41:41] <gigaherz> SotS: reset the local, then force-push the result
L1062[17:42:13] <gr8pefish> thanks technician
L1063[17:42:17] <SotS> yeah had to deal with Sourcetree firrst to even allow me to force
L1064[17:42:22] <SotS> thanks guys
L1065[17:42:42] <williewillus> bleh
L1066[17:42:45] <williewillus> I'll try 1.9 first
L1067[17:42:52] <williewillus> but I think the performance problem already happened by then
L1068[17:43:21] <gr8pefish> that's quite cool TechnicianLP
L1069[17:43:30] <gr8pefish> Does it work as-intended?
L1070[17:43:57] ⇦ Quits: NoChance (~nochance@206.ip-51-254-139.eu) (Quit: Bye)
L1071[17:44:03] <TechnicianLP2> yes
L1072[17:44:27] <gigaherz> SotS: i'm a TortoiseGit person ;P
L1073[17:44:36] <gigaherz> I use sourcetree at work
L1074[17:44:40] <gigaherz> but it never feels right
L1075[17:44:43] <gr8pefish> so this is outdated? https://gist.github.com/TechnicianLP/db08146f4fb6fd11792469e6ce44a5b4#file-nbttagcompound-L62
L1076[17:44:45] <gigaherz> it's like, it was dumbed down too much
L1077[17:45:00] <gr8pefish> ^ The ToDo that is
L1078[17:45:03] <williewillus> cmdline master race ;p
L1079[17:45:14] <williewillus> though I use gitg from time to time
L1080[17:45:18] <williewillus> and formerly sourcetree on windows
L1081[17:46:19] <gr8pefish> random question, is it better to crash/throw an exception when using the proxy on the wrong side (e.g. getClientWhatever(){} on the ServerProxy), or to just return null?
L1082[17:46:43] <illy> all yiss good told git commit -sS
L1083[17:46:45] <williewillus> if you're going to crash when it's "called on the wrong side"
L1084[17:46:50] <williewillus> why is it in a proxy?
L1085[17:47:11] <williewillus> the whole point of it is that you can transparently make side specific calls *wihout crashing* :P
L1086[17:47:11] <TechnicianLP2> i didnt need to remove nbtkeys ... what the clear is for ... no clue i wrote that a while back
L1087[17:47:18] <gr8pefish> Good point willie
L1088[17:47:28] ⇦ Quits: iari (~iari___@tyaralin.shadowdrake.eu) (Quit: Leaving)
L1089[17:48:41] ⇦ Quits: TechnicianLP (~Technicia@p4FE1C45A.dip0.t-ipconnect.de) (Ping timeout: 384 seconds)
L1090[17:49:10] <gr8pefish> Another random question (I'm on a roll today), what's the difference between: FMLClientHandler.instance().getClientPlayerEntity() and Minecraft.getMinecraft.thePlayer for getting the clientside player?
L1091[17:49:37] <gigaherz> one will cause loading errors if it's referenced inthe server
L1092[17:50:21] <gr8pefish> the latter will cause that error and the former won't I assume?
L1093[17:50:27] <gigaherz> yes ;p
L1094[17:51:08] <gr8pefish> okay, so is there any reason to use the Minecraft.getMinecraft.thePlayer then?
L1095[17:51:34] <gigaherz> yes: it's shorter to type, and more direct if you are calling it from client code
L1096[17:52:14] <gigaherz> otherwise no, since the method just returns mc.thePlayer
L1097[17:52:32] <gigaherz> actually,
L1098[17:52:33] <gr8pefish> well shouldn't you call both from client code anyway, so what do you mean by 'more direct'?
L1099[17:52:34] <gigaherz> looking at it
L1100[17:52:42] <gigaherz> FMLClientHandler references Minecraft directly
L1101[17:52:46] <gigaherz> I may have been wrong on that
L1102[17:53:07] <gigaherz> I mean code that is only loaded in the client
L1103[17:53:13] <gigaherz> vs some function with if(isRemote)
L1104[17:53:37] <gr8pefish> ah, okay
L1105[17:53:57] <gr8pefish> So they're very similar then
L1106[18:02:56] <williewillus> FMLClientHandler should only be touched on physical client
L1107[18:03:57] <gr8pefish> ^ thanks willie
L1108[18:04:58] <SotS> off for tonite! cya guys
L1109[18:05:02] <gr8pefish> o/
L1110[18:05:13] <SotS> and thanks willus n giga again
L1111[18:05:23] ⇦ Quits: SotS (~SotS@5.146.64.126) (Quit: Leaving)
L1112[18:11:02] ⇦ Quits: Ashindigo (uid202308@id-202308.hathersage.irccloud.com) (Quit: Connection closed for inactivity)
L1113[18:17:42] *** Darkevilmac is now known as DarkevilAway
L1114[18:24:26] ⇦ Quits: Smack (~Pepe@563412ad.rev.stofanet.dk) (Ping timeout: 180 seconds)
L1115[18:24:26] ⇦ Quits: secknv (~secknv@bl14-176-22.dsl.telepac.pt) (Ping timeout: 180 seconds)
L1116[18:28:58] ⇦ Quits: Naiten (Naiten@5.143.101.250) (Read error: Connection reset by peer)
L1117[18:37:24] ⇨ Joins: blood (unknown@ool-45741267.dyn.optonline.net)
L1118[18:42:21] <williewillus> how do I list the available versions of something on a maven server?
L1119[18:42:29] <williewillus> I want to see what FG versions are available on the forge maven
L1120[18:42:33] <williewillus> so I can try using an older one
L1121[18:42:52] <williewillus> since I the newer ones seem to not like setting up 1.8 forge dev spaces
L1122[18:44:14] *** amadornes is now known as amadornes[OFF]
L1123[18:44:20] <gigaherz> load server/group-id/artifact-id/maven-metadata.xml
L1124[18:44:31] <gigaherz> you can try to use directory listing to find the group id and artifact id
L1125[18:44:37] <gigaherz> but those may not be available
L1126[18:44:47] <PaleoCrafter> not on the Forge maven :P
L1127[18:44:53] <williewillus> balrgh
L1128[18:45:10] <williewillus> this is why we should *not* have been using 2.1/2-SNAPSHOT FG's for the last 3 years lol
L1129[18:45:15] <PaleoCrafter> http://files.minecraftforge.net/maven/net/minecraftforge/gradle/ForgeGradle/index.html
L1130[18:45:34] <williewillus> is that all lol
L1131[18:45:39] <PaleoCrafter> that doesn't seem to be quite up-to-date :D
L1132[18:46:00] <gigaherz> well, there haven't been any actual releases
L1133[18:46:02] <gigaherz> so ;P
L1134[18:46:23] <gigaherz> http://files.minecraftforge.net/maven/net/minecraftforge/gradle/ForgeGradle/maven-metadata.xml
L1135[18:46:40] <gigaherz> there's just the other versions, and the snapshot
L1136[18:46:46] <gigaherz> snapshots*
L1137[18:46:57] <gigaherz> there aren't any "build ids" in there
L1138[18:48:28] <williewillus> apparently I can use the unique date version number
L1139[18:48:33] <williewillus> but no idea what those are for fg
L1140[18:48:49] <williewillus> >.<
L1141[18:49:17] <williewillus> should I open an issue or make a forum post or something? the purpose of archiving all these jsons etc. is that we *can* go back and pull old versions back out and have them work but they don't
L1142[18:49:55] <gigaherz> yeah it's annoying
L1143[18:50:33] <PaleoCrafter> I wonder what's Abrar been up to anyway xD
L1144[18:50:43] <PaleoCrafter> wasn't there something about becoming a doctor? D:
L1145[18:50:46] <PaleoCrafter> *:D
L1146[18:50:47] <LexMobile> Fuck you break in fg now?
L1147[18:50:56] <kenzierocks> lol
L1148[18:50:57] <gigaherz> old forge
L1149[18:51:05] <LexMobile> ?
L1150[18:51:15] <gigaherz> apparently williewillus is unable to setup forge on 1.8.9
L1151[18:51:18] <williewillus> yeah I want to setup a 1.8.9 forge proper dev env to investigate a performance thing with the animation api
L1152[18:51:21] <gigaherz> the MDK I mean
L1153[18:51:21] <williewillus> but setupForge fails
L1154[18:51:26] <williewillus> not mdk
L1155[18:51:28] <williewillus> forge proper
L1156[18:51:28] <gigaherz> oh it is actual forge proper
L1157[18:51:40] <LexMobile> ... we keep that shit stable
L1158[18:51:48] <LexMobile> So no idea wrf you're doing
L1159[18:51:57] <AbrarSyed> work, and school, and general non-MC stuff
L1160[18:52:27] <williewillus> clone repo -> gradlew clean setupForge ->
L1161[18:52:28] <williewillus> > java.io.FileNotFoundException: Inherited json file (null) not found! Maybe you are running in offline mode?
L1162[18:52:38] <williewillus> *clone repo, siwtch to 1.8.9
L1163[18:52:48] <gr8pefish> williewillus, what's this for? https://github.com/sinkillerj/ProjectE/blob/MC19/src/main/java/moze_intel/projecte/impl/AlchBagImpl.java#L142
L1164[18:52:54] <illy> Abrar There's stuff outside of MC?
L1165[18:53:05] <illy> this is madness
L1166[18:53:09] <AbrarSyed> lol
L1167[18:53:18] <AbrarSyed> mostly work. Corporate stuff sucks.
L1168[18:53:23] <williewillus> gr8pefish: AlchBgaImpl is just a container for the other nested classes and static methods, so I made it un constructable
L1169[18:53:48] <gr8pefish> AH, okay, just to make sure there were no errors down the road, clever
L1170[18:54:46] <williewillus> btw, setting up 1.9.4 works, and it seems 1.9 uses fg 2.2 and 1.8.9 used 2.1, so maybe something there? no idea about the inner workings of the build sys though
L1171[18:55:12] <gigaherz> night ppl
L1172[18:55:21] <illy> I've spent way to much time on Linux I just tried to install git on windows my doing "pacman -S git" in cmd....
L1173[18:55:24] *** gigaherz is now known as ghz|afk
L1174[18:55:43] <AbrarSyed> #archmasterrace
L1175[18:55:50] <williewillus> one of us!
L1176[18:56:41] <illy> one day ill figure out how to get graphics working properly in this VM but today is not the day :D
L1177[18:56:52] <gr8pefish> night ghz|afk, thanks for the help today!
L1178[18:57:18] ⇨ Joins: NoChance (~nochance@206.ip-51-254-139.eu)
L1179[18:59:36] <williewillus> if someone else has a bit of time to spare and has forge cloned, can you switch to the 1.8.9 branch and see if you can run setupforge?
L1180[18:59:46] *** diesieben07 is now known as diesieben|away
L1181[19:00:15] <PaleoCrafter> did you just say "a bit of spare time" and "setupforge" in one sentence? D:
L1182[19:00:44] <kenzierocks> lol
L1183[19:00:51] <kenzierocks> williewillus: working on it
L1184[19:00:52] <illy> the clone it's self is enough time to prep for dinner :P
L1185[19:01:03] <kenzierocks> does it need MOAR RAM
L1186[19:01:15] <williewillus> well I mean, all I need to know is does it start
L1187[19:01:22] <kenzierocks> yea
L1188[19:01:24] <williewillus> because it doesn't even start for me :P
L1189[19:01:27] <kenzierocks> i'm at decompileJar
L1190[19:01:29] <AbrarSyed> do a shallow clone
L1191[19:01:48] <williewillus> so you can start 1.8.9 decompile for forge proper?
L1192[19:01:51] <kenzierocks> yep
L1193[19:01:55] <williewillus> hmm
L1194[19:02:03] <williewillus> idk what's up with my env then
L1195[19:02:14] <kenzierocks> $ git branch
L1196[19:02:14] <kenzierocks> * 1.8.9
L1197[19:05:22] <williewillus> http://pastebin.com/R9DWtiDW
L1198[19:05:28] <williewillus> idk what's up
L1199[19:07:58] ⇦ Quits: Shambling (~Shambling@24-181-186-74.dhcp.nwtn.ct.charter.com) (Quit: Leaving)
L1200[19:08:12] <PaleoCrafter> the sky/ceiling, most likely
L1201[19:08:36] <kenzierocks> williewillus: works fine, just followed those commands
L1202[19:08:59] <kenzierocks> i'm kinda concerned about /home/vincent/mods/forge2/jsons/1.8.9-dev.json could not be parsed...
L1203[19:09:07] <williewillus> what OS are you on?
L1204[19:09:18] <kenzierocks> macOS
L1205[19:09:24] <AbrarSyed> delete it and try again. sometimes this stuff gets corrupted.. not sure why
L1206[19:09:31] <kenzierocks> AbrarSyed: it's part of the clone
L1207[19:09:40] <kenzierocks> literally a fresh clone
L1208[19:09:49] <AbrarSyed> oh.. OH.. WTH
L1209[19:09:54] <williewillus> that was my 3rd fresh clone ;p
L1210[19:10:01] <kenzierocks> what's your hash of choice on the file?
L1211[19:10:21] <williewillus> the dev json?
L1212[19:10:23] <kenzierocks> yea
L1213[19:10:28] <kenzierocks> just to double check
L1214[19:10:41] <williewillus> $ sha256sum jsons/1.8.9-dev.json 47adbb996168cd35aa54931d1ca50b8dc172e8c78321fcc1e9cec0dd04f14629 jsons/1.8.9-dev.json
L1215[19:11:06] <kenzierocks> exact same..
L1216[19:11:13] <kenzierocks> bizzare
L1217[19:13:19] <williewillus> is there some other gradle state in my system that might be sticking around?
L1218[19:13:53] <kenzierocks> ~/.gradle/caches/minecraft could have stuff
L1219[19:14:17] <kenzierocks> try clearing that maybe -- with the warning that it will delete all your current setup* caches :)
L1220[19:14:24] <williewillus> welp time to wipe out my other dev spaces for science
L1221[19:14:59] <williewillus> nope same problem
L1222[19:17:16] ⇨ Joins: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a)
L1223[19:18:44] <williewillus> if you have the workspace setup, wanna do a quick test for me? xD just wanna know how crazy the memory usage is if you open up a flat world, and place 12-ish `forgedebugmodelanimation:test_animation_block`'s around
L1224[19:18:57] <williewillus> because in 1.9+ it eats 500M of ram a second
L1225[19:18:58] <williewillus> lol
L1226[19:19:04] <kenzierocks> i can try sure
L1227[19:20:30] <sinkillerj> ouch~
L1228[19:21:53] <gr8pefish> I just found this existed today, quite handy: https://minecraft.curseforge.com/projects/devworld
L1229[19:22:44] <williewillus> it would be nice if it made a void world in 1.9+
L1230[19:23:01] <williewillus> 1.9+ has a superflat prefix The Void which is just a 1 chunk stone platform and nothing else
L1231[19:23:05] <williewillus> great to isolate things
L1232[19:23:26] <gr8pefish> I didn't know that existed, that would be nice
L1233[19:23:34] <gr8pefish> Still, a flat world is good for some things
L1234[19:23:50] <sinkillerj> Theres a mod for that but I cant remember the name
L1235[19:23:58] <sinkillerj> Its fairly easy to recreate however
L1236[19:25:08] <gr8pefish> Yeah, I'm not overly concerned. I just found that mod and it saves me small but nice amounts of time, so I thought I'd share.
L1237[19:28:07] ⇦ Quits: gr8pefish (~gr8pefish@24-121-184-14.flagcmtk01.res.dyn.suddenlink.net) (Quit: I'm gone)
L1238[19:30:53] <williewillus> bleh, enough fiddling with gradle for today
L1239[19:30:56] <williewillus> time to play :P
L1240[19:31:39] <kenzierocks> ergu
L1241[19:31:42] <sinkillerj> I kinda wish I was fiddling with gradle... I get to play the wait for visual studio to install game
L1242[19:31:46] <kenzierocks> how much heap space does setupForge need
L1243[19:32:26] <williewillus> i do 3
L1244[19:32:35] <williewillus> for both mdk and forge and it hasn't failed
L1245[19:32:38] <williewillus> (yet)
L1246[19:32:49] <kenzierocks> maybe i gave it 3 the wrong way
L1247[19:40:01] ⇨ Joins: luacs1998 (~sayuka@abrarsyed.com)
L1248[19:41:14] ⇦ Quits: lashtear (~lashtear@cpe-50-113-67-84.san.res.rr.com) (Quit: Leaving)
L1249[19:42:02] <kenzierocks> williewillus: is it still runClient in a forge wkspace
L1250[19:42:14] <williewillus> believe so
L1251[19:42:19] <williewillus> i go through ide but I think it's the same
L1252[19:42:21] <kenzierocks> rip
L1253[19:42:35] <kenzierocks> time to pull out the entire IDE
L1254[19:42:59] <kenzierocks> or not...?
L1255[19:43:04] <kenzierocks> what tasks are even in this project
L1256[19:43:29] <AbrarSyed> `gradle tasks`
L1257[19:44:05] <kenzierocks> yea
L1258[19:44:08] <kenzierocks> but what do i need :P
L1259[19:44:51] ⇦ Quits: primetoxinz (~primetoxi@ip68-107-226-229.hr.hr.cox.net) (Ping timeout: 384 seconds)
L1260[19:45:25] ⇨ Joins: lashtear (~lashtear@cpe-50-113-67-84.san.res.rr.com)
L1261[19:45:47] <AbrarSyed> for forgedev, you do `gradle setup` and then import the projects folder into your IDE workspace
L1262[19:45:50] ⇨ Joins: KnightMinerX (~KnightMin@adsl-75-5-73-129.dsl.emhril.sbcglobal.net)
L1263[19:46:40] <kenzierocks> yea ok
L1264[19:49:03] ⇦ Quits: KnightMiner_ (~KnightMin@adsl-75-5-73-129.dsl.emhril.sbcglobal.net) (Ping timeout: 206 seconds)
L1265[19:50:08] *** KnightMinerX is now known as KnightMiner
L1266[19:51:06] <KnightMiner> Is random models not supported in the Forge blockstate split format?
L1267[19:51:42] <KnightMiner> It is outputting "Not a JSON Object" to the log on my random model array
L1268[19:54:05] <kenzierocks> williewillus: there is no block "forgedebugmodelanimation:test_animation_block"
L1269[19:54:13] <williewillus> did you load the test mods?
L1270[19:54:17] <kenzierocks> ...no
L1271[19:54:32] <kenzierocks> how do
L1272[19:55:10] ⇨ Joins: primetoxinz (~primetoxi@ip68-107-226-229.hr.hr.cox.net)
L1273[19:55:12] ⇦ Quits: Stiforr (~Stiforr@ip70-191-177-19.pn.at.cox.net) (Ping timeout: 194 seconds)
L1274[19:55:39] ⇨ Joins: TTFTCUTS (~ttftcuts@ns3366511.ovh.net)
L1275[19:55:49] <williewillus> it's kind of a hack but in idea you just add the compilation output folder as a dep
L1276[19:55:51] <williewillus> :P
L1277[19:56:10] <kenzierocks> wut/wut
L1278[19:56:12] <kenzierocks> ok
L1279[19:59:08] <kenzierocks> that didnt work williewillus
L1280[19:59:19] <kenzierocks> what's the class for one of the mods?
L1281[19:59:38] <williewillus> manually compile the test module in idea (right click the folder and hit compile)
L1282[20:00:28] <kenzierocks> oh its in the test stuff
L1283[20:00:39] <kenzierocks> separate output folder :P
L1284[20:03:36] <kenzierocks> williewillus: i'm getting memory climbs and then GC
L1285[20:03:38] <kenzierocks> but no leaks
L1286[20:03:51] <williewillus> how much freed per gc
L1287[20:03:54] <williewillus> with about 12 of them
L1288[20:04:42] <kenzierocks> 500MB
L1289[20:04:53] <kenzierocks> but only every like, 30seconds
L1290[20:05:26] <williewillus> yeah something's changed
L1291[20:05:48] <williewillus> 12 of them in 1.9+ forces it to gc 500M every 2-4 seconds
L1292[20:08:05] *** Vigaro is now known as V
L1293[20:12:14] ⇦ Quits: sinkillerj (~sinkiller@nc-67-232-15-221.dhcp.embarqhsd.net) (Remote host closed the connection)
L1294[20:12:21] ⇨ Joins: fivestang (fivestang@shell.xshellz.com)
L1295[20:13:38] ⇦ Quits: fivestang (fivestang@shell.xshellz.com) (Quit: Reconnecting)
L1296[20:13:43] ⇨ Joins: fivestang (fivestang@shell.xshellz.com)
L1297[20:16:16] <kenzierocks> williewillus: diff to 1.9 is pretty big
L1298[20:16:25] <kenzierocks> looks like it was basically rewritten :P
L1299[20:16:47] <williewillus> fry pls
L1300[20:16:52] <williewillus> literally unusable
L1301[20:19:56] ⇦ Quits: KnightMiner (~KnightMin@adsl-75-5-73-129.dsl.emhril.sbcglobal.net) (Ping timeout: 180 seconds)
L1302[20:21:08] *** PaleoCrafter is now known as PaleOff
L1303[20:30:57] ⇨ Joins: KnightMiner (~KnightMin@adsl-75-5-73-129.dsl.emhril.sbcglobal.net)
L1304[20:31:01] <kenzierocks> williewillus: i was going to test 1.9 but i can't build it :(
L1305[20:32:44] *** Mumfrey is now known as mumfrey
L1306[20:34:13] <williewillus> okay i just reimplemented the caching
L1307[20:34:21] <williewillus> and it didn't take long
L1308[20:34:26] <williewillus> i wonder why he left it out
L1309[20:34:50] <williewillus> it's more like ~40M every couple seconds now
L1310[20:36:29] ⇦ Quits: KnightMiner (~KnightMin@adsl-75-5-73-129.dsl.emhril.sbcglobal.net) (Quit: Leaving)
L1311[20:42:31] ⇨ Joins: Doty1154 (~Doty1154@2601:648:8000:134f:ad7c:d8af:e6a8:c400)
L1312[20:48:17] ⇨ Joins: KnightMiner (~KnightMin@adsl-75-5-73-129.dsl.emhril.sbcglobal.net)
L1313[20:49:36] ⇨ Joins: Tahg (~Tahg@pool-71-248-165-18.bstnma.fios.verizon.net)
L1314[20:49:36] MineBot sets mode: +v on Tahg
L1315[21:02:34] ⇦ Quits: Wastl2 (~Wastl2@x4e341182.dyn.telefonica.de) (Ping timeout: 206 seconds)
L1316[21:04:46] ⇨ Joins: Wastl2 (~Wastl2@x4e35083c.dyn.telefonica.de)
L1317[21:09:22] ⇦ Quits: williewillus (~williewil@cpe-24-28-24-13.austin.res.rr.com) (Quit: Leaving)
L1318[21:12:24] ⇨ Joins: Stiforr (~Stiforr@ip70-191-177-19.pn.at.cox.net)
L1319[21:12:46] ⇨ Joins: PrinceCat (~PrinceCat@58-7-209-132.dyn.iinet.net.au)
L1320[21:13:38] <PrinceCat> Hey guys, does anyone have any open source examples of variant panes using Forge Blockstates?
L1321[21:22:20] ⇦ Quits: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se) (Ping timeout: 206 seconds)
L1322[21:23:27] ⇦ Quits: TechnicianLP2 (~Technicia@p4FE1C45A.dip0.t-ipconnect.de) (Ping timeout: 384 seconds)
L1323[21:31:57] <KnightMiner> Variant panes? You mean like glass panes?
L1324[21:34:45] <PrinceCat> Yeah, like the coloured glass panes but using Forge Blockstates
L1325[21:38:36] ⇨ Joins: TechnicianLP2 (~Technicia@p4FE1C436.dip0.t-ipconnect.de)
L1326[21:39:30] <KnightMiner> Not that I have seen, but the vanilla fence is basically the same
L1327[21:40:20] <KnightMiner> (depending on your needs, vanilla multipart may be better)
L1328[21:42:09] ⇦ Quits: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net) (Ping timeout: 384 seconds)
L1329[21:43:28] ⇦ Quits: blood (unknown@ool-45741267.dyn.optonline.net) ()
L1330[21:45:50] <PrinceCat> Yeah, the closest I've seen is Botania's panes as they use Forge Blockstates but they don't have any other variants or properties.
L1331[21:47:20] <PrinceCat> Anyway, I'm going to get some food, I'm stumped..
L1332[21:47:24] ⇦ Quits: PrinceCat (~PrinceCat@58-7-209-132.dyn.iinet.net.au) (Quit: My MacBook has gone to sleep. ZZZzzz…)
L1333[21:55:34] <RebelKeithy> I'm making a paintable block, right now it rebuilds the quads everytime it updates the renderer, but it only needs to rebuild them if the tileentity's pixel colors change.
L1334[21:55:36] ⇨ Joins: SatanicSanta (~SatanicSa@c-76-115-175-15.hsd1.or.comcast.net)
L1335[21:56:13] <SatanicSanta> Can someone explicitly explain how you are supposed to use the BreakSpeed event? Every time I end up needing to use it it makes 0 sense and testing proves entirely useless.
L1336[21:56:23] <RebelKeithy> I'm thinking either store the list of quads in the TileEntity or in a Map<BlockPos, Quads> in the model. Is there a beter way of doing that?
L1337[21:59:45] <RebelKeithy> It looks like you need to cancel the BreakSpeed event after setting newBreakSpeed
L1338[22:01:01] <SatanicSanta> wtf
L1339[22:01:21] <SatanicSanta> uh i dont think so
L1340[22:01:25] <SatanicSanta> "If it is canceled, the player is unable to break the block." from the javadocs
L1341[22:02:14] <RebelKeithy> er, right
L1342[22:03:00] <RebelKeithy> is just setting newBreakSpeed not working?
L1343[22:04:58] <RebelKeithy> seems to work for me
L1344[22:05:57] <SatanicSanta> if it is the difference is insigificant
L1345[22:06:11] <SatanicSanta> the newSpeed value gets set, it just doesnt actually appear to be having any difference in behavior
L1346[22:07:53] <RebelKeithy> seems work fine for me. I set it to 0.1f and it takes forever to break anything, set it to 20.0f and everything breaks instantly
L1347[22:09:34] <SatanicSanta> yeah, just set it to 0.1F and it didn't change anything.
L1348[22:10:37] <RebelKeithy> Hmm, are you sure your event is firing? That's definitely changing it for me.
L1349[22:10:57] <SatanicSanta> yes
L1350[22:16:46] ⇨ Joins: Kaiyouka (~IdiotNono@c-75-71-231-133.hsd1.co.comcast.net)
L1351[22:20:44] ⇨ Joins: blood (unknown@ool-45741267.dyn.optonline.net)
L1352[22:20:49] ⇦ Quits: MCPBot_Reborn (~MCPBot_Re@24.152.202.255) (Read error: Connection reset by peer)
L1353[22:21:34] ⇨ Joins: MCPBot_Reborn (~MCPBot_Re@mcpbot.bspk.rs)
L1354[22:23:34] *** killjoy|work is now known as killjoy
L1355[22:31:45] ⇦ Quits: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net) (Quit: Bye :))
L1356[22:31:52] ⇨ Joins: McJty (~jorrit@94-224-154-146.access.telenet.be)
L1357[22:42:26] ⇦ Quits: Lathanael|Away (~Lathanael@p54960694.dip0.t-ipconnect.de) (Ping timeout: 180 seconds)
L1358[22:44:03] ⇨ Joins: Lathanael|Away (~Lathanael@p549609F1.dip0.t-ipconnect.de)
L1359[22:45:15] ⇨ Joins: CoolerExtreme__ (~CoolerExt@45.249.157.111)
L1360[22:46:56] ⇦ Quits: McJty (~jorrit@94-224-154-146.access.telenet.be) (Quit: Leaving)
L1361[22:47:26] ⇦ Quits: CoolerExtreme (~CoolerExt@45.249.157.114) (Ping timeout: 180 seconds)
L1362[22:51:01] <killjoy> huh. the new i5s are pretty powerful
L1363[22:51:18] <killjoy> 3.5Ghz
L1364[22:55:25] <killjoy> I... I think I need this. https://www.youtube.com/watch?v=j3qZThdcZMo
L1365[22:55:38] <killjoy> tri-screen laptop
L1366[22:55:44] ⇨ Joins: McJty (~jorrit@94-224-154-146.access.telenet.be)
L1367[22:56:23] <AbrarSyed> meh
L1368[22:56:32] <AbrarSyed> laptops are for travelers. Real fulltimers use desktops
L1369[22:56:47] <SatanicSanta> and poor people
L1370[22:56:48] <killjoy> that's a nice laptop, though
L1371[22:56:53] * AbrarSyed really resents this laptop culture
L1372[22:57:08] <AbrarSyed> not gonna lie, nice laptop, but im sure ot heats up like no othder
L1373[22:57:16] <illy> I can see myself braking that
L1374[22:57:19] <killjoy> If cloud computing was at a better place, I'd connect my laptop to my desktop
L1375[22:57:25] <SatanicSanta> laptops make way more sense if you are not certain that you will always have a place to set up your desktop
L1376[22:57:30] <SatanicSanta> ie poor people
L1377[22:57:31] <AbrarSyed> SatanicSanta, Desktop with comparable specs is cheaper
L1378[22:57:45] <killjoy> if you build it yourself
L1379[22:57:47] <AbrarSyed> yeah hence traveling.. or mvoe often I guess
L1380[22:57:51] <illy> A desktop in the long run is cheaper
L1381[22:57:57] <SatanicSanta> I'm not talking about price.
L1382[22:58:03] <SatanicSanta> Price is irrelevant if you can't use it half the time.
L1383[22:58:10] <AbrarSyed> true
L1384[22:58:26] <killjoy> You'd rather have a tablet?
L1385[22:58:29] <AbrarSyed> but thats what phones are for.. all the usual things you use your laptop for.. checking email, chatting on IRC, etc
L1386[22:58:35] <AbrarSyed> any real work.. needs a computer
L1387[22:58:39] <killjoy> laptops are a good option for touch screens
L1388[22:58:57] <AbrarSyed> tablet > touchscreen laptop IMO
L1389[22:59:01] <SatanicSanta> ^
L1390[22:59:03] <killjoy> Unfortunately, outfitting my 28" screen with touch would be super expensive
L1391[22:59:09] <AbrarSyed> anyways.. to each their own..
L1392[22:59:13] <killjoy> You don't like the Surface?
L1393[22:59:41] <AbrarSyed> what aboyut it?
L1394[22:59:50] <AbrarSyed> I dont have one, cant make any judgement
L1395[22:59:50] <killjoy> technically a laptop
L1396[23:00:00] <killjoy> advertized as a tablet
L1397[23:00:33] <AbrarSyed> its a table. IIRC it comes with windows RT, which is the crippled version
L1398[23:00:36] <AbrarSyed> *tablet
L1399[23:00:42] <killjoy> It does not
L1400[23:00:52] <killjoy> it has full windows 10
L1401[23:00:59] <killjoy> you can run any app you can on your desktop
L1402[23:01:08] <AbrarSyed> if you mean the sSurface Pro, thats just a criplled laptop lacking the basics like a mouse and keyboard, + far fiewer ports
L1403[23:01:28] <killjoy> surface pro 4
L1404[23:01:29] <AbrarSyed> surface != surface Pro
L1405[23:01:49] <killjoy> like the iPad != iPad Pro
L1406[23:02:00] <AbrarSyed> yeah dude, IpadPro is an abomination..
L1407[23:02:03] <killjoy> but if you get one, you'll just call it the iPad
L1408[23:02:04] <AbrarSyed> its like... huge
L1409[23:02:15] <AbrarSyed> monstrous
L1410[23:02:21] <killjoy> Then again, my neice calls her kindle a iPad
L1411[23:02:23] <AbrarSyed> like that wall DT says hes gonna build :P
L1412[23:02:40] <AbrarSyed> there are people that call anything touchscreen bigger than their phone an Ipad.. and everything smaller an iphone
L1413[23:02:52] <SatanicSanta> [20:58:29] <@AbrarSyed> but thats what phones are for.. all the usual things you use your laptop for.. checking email, chatting on IRC, etc
L1414[23:03:01] <SatanicSanta> AbrarSyed: are you referring to poor people using laptops here or something else?
L1415[23:03:39] <AbrarSyed> I cant speak for poor people. Thankfully I am not one.
L1416[23:04:01] <SatanicSanta> mkay
L1417[23:04:39] <AbrarSyed> but as far as best tools for the job.. I feel like laptops are stuck in the middle. Just nobody actually has any use for a desktop nowadays...makes me sad.
L1418[23:05:12] <AbrarSyed> desktop is good at all the jobs nobody needs done. Except us professionals
L1419[23:05:36] <tterrag> sorry but my phone won't cut it when I'm gone for a week
L1420[23:05:42] <tterrag> or I need to code on campus
L1421[23:05:53] <illy> heh I need a laptop to do work away from home
L1422[23:05:56] <tterrag> nor would a tablet
L1423[23:06:10] <AbrarSyed> hence travel
L1424[23:06:16] <illy> that and por... netflix
L1425[23:06:19] <AbrarSyed> only time a laptop is useful
L1426[23:06:34] <AbrarSyed> yall didnt here? android app for netflix now supports caching for offline play
L1427[23:06:43] ⇨ Joins: immibis (~chatzilla@122-61-224-36.jetstream.xtra.co.nz)
L1428[23:06:52] <AbrarSyed> using this beutiful peaice of tech: http://techblog.netflix.com/2016/12/netflixoss-announcing-hollow.html
L1429[23:08:31] <SatanicSanta> I'm poor. Laptops make way more sense.
L1430[23:09:01] <AbrarSyed> lol, thats fair.
L1431[23:09:33] <AbrarSyed> Im just sad desktops are out of fashion and elft behind now :(
L1432[23:10:06] <AbrarSyed> but really.. whats the popint in getting such a massive laptop thats hard to mvoe anyways?
L1433[23:12:53] ⇦ Quits: Stiforr (~Stiforr@ip70-191-177-19.pn.at.cox.net) (Quit: Leaving)
L1434[23:26:29] ⇦ Quits: quadraxis (~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net) (Quit: ChatZilla 0.9.93 [Firefox 50.1.0/20161208153507])
L1435[23:30:22] ⇨ Joins: Smack (~Pepe@563412ad.rev.stofanet.dk)
L1436[23:35:25] *** Kolatra is now known as Kolatra|away
L1437[23:36:13] ⇦ Quits: AstralSorcerer (~AstralSor@2601:981:c002:98c0::a) (Ping timeout: 206 seconds)
L1438[23:44:31] ⇦ Quits: McJty (~jorrit@94-224-154-146.access.telenet.be) (Quit: Leaving)
L1439[23:48:56] ⇦ Quits: CoolerExtreme__ (~CoolerExt@45.249.157.111) (Ping timeout: 180 seconds)
L1440[23:50:38] *** TTFTCUTS is now known as TTFT|Away
L1441[23:51:35] ⇨ Joins: Cooler (~CoolerExt@45.249.157.148)
L1442[23:53:25] ⇨ Joins: Ashindigo (~uid202308@id-202308.hathersage.irccloud.com)
L1443[23:56:51] <KnightMiner> Is there any way for the Forge blockstate "string builder" system to support random models? I have a slab with random textures, and I would prefer not to have to list out all the variants twice
<<Prev Next>> Scroll to Top