<<Prev Next>> Scroll to Bottom
Stuff goes here
L1[00:01:46] *** Vigaro is now known as V
L2[00:06:49] ⇨ Joins: Hunterz (~hunterz@2001:af0:8000:1c01:6af7:28ff:fe37:5d6a)
L3[00:09:07] *** TTFTCUTS is now known as TTFT|Away
L4[00:10:07] <tankcr> is anyone around, I am having difficulties with oregen https://github.com/tankcr/everything_adamantium/blob/master/src/main/java/tankcmod/evadamant/world/OreGen.java
L5[00:12:26] *** fry|sleep is now known as fry
L6[00:15:09] ⇦ Quits: IceDragon (~ThatGuy@184.170.15.41) (Ping timeout: 384 seconds)
L7[00:17:26] ⇨ Joins: Snapples (uid167569@id-167569.highgate.irccloud.com)
L8[00:49:00] ⇦ Quits: Unh0ly_Tigg (~Robert@c-76-115-95-185.hsd1.or.comcast.net) (Quit: bed)
L9[00:53:14] ⇦ Quits: Brokkoli (~Brokkoli@p5b23c6cf.dip0.t-ipconnect.de) (Quit: Die Sprache der Politik ist daf�r gemacht, dass L�gen wahr klingen und das T�ten angemessen wirkt. (George Orwell))
L10[00:54:55] ⇦ Quits: KnightMiner (~KnightMin@107-1-23-59-ip-static.hfc.comcastbusiness.net) (Quit: Leaving)
L11[01:14:01] *** cpw is now known as cpw|out
L12[01:21:43] ⇦ Quits: Gil (uid147942@id-147942.brockwell.irccloud.com) (Quit: Connection closed for inactivity)
L13[01:25:29] *** minecreatr is now known as Mine|Minecon
L14[01:44:39] ⇨ Joins: mallrat208 (~mallrat20@107-145-175-135.res.bhn.net)
L15[01:52:50] ⇨ Joins: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se)
L16[01:57:59] ⇨ Joins: ThePsionic (~ThePsioni@ip5457f909.direct-adsl.nl)
L17[01:58:22] *** AbrarSyed is now known as Abrar|gone
L18[01:59:48] <MCPBot_Reborn> [TEST CSV] Pushing snapshot_20160923 mappings to Forge Maven.
L19[01:59:51] <MCPBot_Reborn> [TEST CSV] Maven upload successful for mcp_snapshot-20160923-1.10.2.zip (mappings = "snapshot_20160923" in build.gradle).
L20[02:00:02] <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/
L21[02:17:52] ⇦ Quits: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se) (Read error: Connection reset by peer)
L22[02:18:09] ⇨ Joins: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se)
L23[02:18:48] ⇨ Joins: Jezza (~Jezza@bps-gw.hrz.tu-chemnitz.de)
L24[02:29:12] ⇦ Quits: ThePsionic (~ThePsioni@ip5457f909.direct-adsl.nl) (Quit: Leaving)
L25[02:39:26] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 186 seconds)
L26[02:42:19] ⇨ Joins: gigaherz|work (~gigaherz@84.89.63.25)
L27[02:43:13] <gigaherz|work> I should add a mechanic to Survivalist where you receive damage from punching things with your bare hands
L28[02:43:25] <gigaherz|work> and a gloves slot to add hand-armor to mitigate it
L29[02:43:42] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L30[02:51:02] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 195 seconds)
L31[02:55:51] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L32[03:14:06] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 186 seconds)
L33[03:18:20] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L34[03:18:49] <Subaraki> why is it you cannot turn a modelpiece twice in the json files ?
L35[03:19:00] <Subaraki> or is it just the editor i have that's good for nothing ?
L36[03:22:06] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 186 seconds)
L37[03:24:34] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L38[03:25:18] ⇦ Quits: AstralSorcerer (~AstralSor@128.151.114.203) (Ping timeout: 186 seconds)
L39[03:27:51] <gigaherz|work> Subaraki: what do you mean "turn twice"?
L40[03:28:13] <Subaraki> ah, yeah. on more then one axis
L41[03:28:22] <Subaraki> that one ^
L42[03:28:49] <gigaherz|work> how are you trying to achieve that?
L43[03:28:49] <Subaraki> is that a minecraft restriction ? or is it my modeler that doesn't allow it ?
L44[03:28:52] <gigaherz|work> there's two ways
L45[03:29:03] <gigaherz|work> oh i see
L46[03:29:07] <gigaherz|work> you have an external editor
L47[03:29:10] <Subaraki> yeah
L48[03:29:13] <gigaherz|work> not the json file directly
L49[03:29:21] ⇦ Quits: p455w0rd (~p455w0rd@172.77.92.84) (Ping timeout: 206 seconds)
L50[03:29:26] <Subaraki> no :/
L51[03:29:38] <gigaherz|work> actually, I have no idea if you can turn the boxes in more than one axis
L52[03:29:49] <gigaherz|work> i know it's possible using the submodel system
L53[03:29:56] <gigaherz|work> but I haven't looked at the json models themselves
L54[03:30:35] <Subaraki> "rotation": { "origin": [ 8.0, 0.7, 8.0 ], "axis": "z", "angle": -45.0 },
L55[03:31:04] <Subaraki> it doesnt start with ' [...] '
L56[03:31:14] <Subaraki> so i don't think you can turn it more then on one axis
L57[03:35:58] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 186 seconds)
L58[03:37:05] ⇦ Quits: codahq (~codahq@c-73-65-219-228.hsd1.ut.comcast.net) (Ping timeout: 206 seconds)
L59[03:48:32] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L60[04:03:58] ⇨ Joins: ScottehBoeh (~ScottehBo@104.238.169.24)
L61[04:06:03] *** PaleOff is now known as PaleoCrafter
L62[04:09:32] ⇦ Quits: mezz (~mezz@24.6.28.151) (Read error: Connection reset by peer)
L63[04:11:47] ⇨ Joins: mezz (~mezz@24.6.28.151)
L64[04:11:47] MineBot sets mode: +v on mezz
L65[04:12:14] ⇦ Quits: RichardG (~richardg8@201.37.243.191) (Ping timeout: 186 seconds)
L66[04:12:17] ⇨ Joins: RichardG_ (~richardg8@201.37.243.191)
L67[04:12:17] MineBot sets mode: +v on RichardG_
L68[04:20:30] <ScottehBoeh> Uuugh. Don't know what to make
L69[04:20:53] <gigaherz|work> as in, what mod to create?
L70[04:21:04] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 206 seconds)
L71[04:21:04] <gigaherz|work> or what to cook for lunch
L72[04:21:11] <ScottehBoeh> I'm sitting here clueless whilst Psionic is over there making epic pink clouds
L73[04:21:23] <ScottehBoeh> Mod to make
L74[04:21:36] <gigaherz|work> Make a rainbow cloud gun?
L75[04:22:01] <Ordinastie> you mean unicorn fart gun ?
L76[04:22:22] <gigaherz|work> it would shoot multi-color bubbles that explode after a couple seconds into a 4x4x4ish sphere of cloud blocks
L77[04:22:29] <gigaherz|work> so yes
L78[04:22:30] <ScottehBoeh> All Pink/Rainbow/Fart ideas must be directed to Psionic
L79[04:22:35] <gigaherz|work> unicorn fart gun
L80[04:23:14] <gigaherz|work> make a water-jet backpack that can be used as a jetpack or as a cleaning device
L81[04:23:22] <gigaherz|work> like in supermario sunshine
L82[04:24:05] ⇦ Quits: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se) (Ping timeout: 198 seconds)
L83[04:24:19] <ScottehBoeh> I'm thinking about developing onto my Whistle mod
L84[04:24:25] <ScottehBoeh> Which literally consists of pressing F to whistle
L85[04:24:37] <gigaherz|work> for what purpose?
L86[04:24:49] <ScottehBoeh> There's a good question
L87[04:24:54] <ScottehBoeh> Mostly just to grab attention of other players
L88[04:25:09] <ScottehBoeh> If you're behind someone and need to grab their attention but they're walking away. you can Whistle
L89[04:25:20] <gigaherz|work> can you use the mouse Y coord to variate the pitch?
L90[04:25:29] <ScottehBoeh> Oho! Good idea
L91[04:25:43] <ScottehBoeh> But no. however I'll work on adding that
L92[04:26:10] <gigaherz|work> maybe you could use special pitch patterns as commands to control minions
L93[04:26:32] <ScottehBoeh> I could try to make it grab the attention of animals/mobs you're looking at
L94[04:26:36] <ScottehBoeh> For instance, a Zombie
L95[04:26:44] <gigaherz|work> short-low,long-high,short-low = follow
L96[04:26:58] <ScottehBoeh> Ooh. I see what you mean
L97[04:27:10] <gigaherz|work> s-low,s-high,s-low,s-high = attack/harvest this
L98[04:27:16] <gigaherz|work> and such
L99[04:29:27] <ScottehBoeh> Time to tell a dirty secret. First time working on a non-1.7.10 mod
L100[04:31:25] <gigaherz|work> heh
L101[04:39:58] ⇦ Quits: Doty1154 (~Doty1154@67.215.244.186) (Ping timeout: 186 seconds)
L102[04:42:57] <ScottehBoeh> Ohey there's no IExtendedEntityProperties
L103[04:43:17] <ScottehBoeh> Oh, its capabilities now
L104[04:44:49] ⇨ Joins: Nitrodev (~Nitrodev@85-23-77-207.bb.dnainternet.fi)
L105[04:55:16] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L106[04:57:23] *** PaleoCrafter is now known as PaleOff
L107[05:03:42] ⇨ Joins: Naiten (Naiten@77.35.115.49)
L108[05:08:04] <Ordinastie> I wonder, is something like that considered expensive ? https://github.com/Ordinastie/MalisisCore/blob/1.9.4/src/main/java/net/malisis/core/block/IComponent.java#L67-L79
L109[05:08:13] <Ordinastie> with : https://github.com/Ordinastie/MalisisCore/blob/1.9.4/src/main/java/net/malisis/core/block/IComponentProvider.java#L59-L62
L110[05:08:40] <barteks2x> I have a question, I asked it yesterday but noone replied
L111[05:09:12] <barteks2x> I have a question. I was trying to debug a race condition in cubic chunks, that I tracked down to removing a chunk from chunksToUnloadmap before it's written to disk. So I went to see how Forge does it. And to my surprised forge does the same. AnvilChunkLoader.loadChunk__Async removes the chunkPos from chunksToRemove and then proceeds to save it. But AnvilChunkLoader.loadChunk__Async uses chunksToRemove to check if
L112[05:09:12] <barteks2x> the chunk is currently queued for unloading. How it doesn't cause race condition?
L113[05:10:49] <gigaherz|work> you mean there can be two AnvilChunkLoader.loadChunk__Async running concurrently?
L114[05:12:09] <barteks2x> uh... I got the question wrong,I wrote one method name wrong replace the first loadChunk__Async with writeNextIO
L115[05:13:09] <barteks2x> so writeNextIO removed the chunkPos from chunksToRemove and then loadChunk__Async uses it to check if the chunk is currently queued for unloading
L116[05:13:50] <barteks2x> So there is a short moment where each chunk is neighter loaded, nor in chunksToRemove, nor saved
L117[05:14:33] <barteks2x> so if you try to get that chunk in this exact moment it will be regenerated if it hasn't been saved before
L118[05:14:45] <gigaherz|work> ah I see
L119[05:15:19] <barteks2x> So it there real possibility that it happens or is there something in the code I don't see that prevents it?
L120[05:15:35] <gigaherz|work> no idea
L121[05:15:38] <gigaherz|work> XD
L122[05:15:51] <barteks2x> Should I make issue on github to be sure?
L123[05:17:22] * gigaherz|work shrugs
L124[05:17:50] <barteks2x> what made it noticable for me was that MapDB is slow
L125[05:18:16] <barteks2x> In Cubic Chunks
L126[05:19:41] <Nitrodev> i wonder what are willies plans now that Vazkii took Botania over again
L127[05:20:32] <gigaherz|work> he seems to be busier also
L128[05:20:47] <Nitrodev> vazkii or willie?
L129[05:21:08] <gigaherz|work> willie
L130[05:21:14] <Nitrodev> oh
L131[05:21:31] <gigaherz|work> I think his classes started again
L132[05:21:37] <gigaherz|work> he hasn't been around as much as during summer
L133[05:22:19] ⇨ Joins: VikeStep (~VikeStep@101.184.243.180)
L134[05:23:21] <barteks2x> I actually need to see what would the code be without forge patches...
L135[05:23:54] <Nitrodev> huh
L136[05:26:51] <barteks2x> If it's a bug, it's vanilla bug
L137[05:27:23] <barteks2x> Forge doesn't really touch that exact code
L138[05:28:55] <barteks2x> I have no proof for it other than decompiled code
L139[05:30:38] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 186 seconds)
L140[05:30:57] <barteks2x> I will try to add some atrificial delay there and see if the same chunk is ever generated twice
L141[05:32:23] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L142[05:32:27] ⇨ Joins: howtonotwin (~howtonotw@r75-110-22-15.gvllcmtc01.gnvlnc.ab.dh.suddenlink.net)
L143[05:34:07] <howtonotwin> barteks2x: If you clone the Forge repo itself and set it up you'll get two projects: Clean and Forge. Clean contains the decompiled code of vanilla.
L144[05:35:13] *** PaleOff is now known as PaleoCrafter
L145[05:37:56] <barteks2x> If I manage to set up forge, I wasn't able to do it last time I tried
L146[05:38:05] <gigaherz|work> why not?
L147[05:38:13] <gigaherz|work> how are you doing all of this without setupForge?!
L148[05:39:08] <barteks2x> Doing what?
L149[05:39:36] <gigaherz|work> the changes
L150[05:39:47] <gigaherz|work> wait, it's a mod, not forge changes
L151[05:39:52] <gigaherz|work> nevermind.
L152[05:40:17] <barteks2x> Since it's for testing, I was planning to use asm or mixins (because I really don't know how to properly set up forge dev environment)
L153[05:40:19] <Ordinastie> although, considering the mod, the question still stands
L154[05:40:39] <barteks2x> For cubic chunks I use mixin
L155[05:41:37] ⇨ Joins: Hawaii_Beach (~Hawaii_Be@c83-248-121-215.bredband.comhem.se)
L156[05:42:26] <ScottehBoeh> Got another model I want to post in a min :D
L157[05:43:27] <barteks2x> And should I report is somewhere (where?) if there really is a tiny possibility that it happens if I don't have any way to reproduce it in vanilla/forge?
L158[05:43:41] <barteks2x> And have never seen it happen
L159[05:44:01] <gigaherz|work> well I'd talk to people who know that part of the code
L160[05:44:13] <gigaherz|work> and if you can't figure out why it wouldn't happen
L161[05:44:20] <gigaherz|work> then report it to both mojang and forge
L162[05:44:39] <gigaherz|work> however, I feel that you'd need some sort of reproducible case for it to be meaningful
L163[05:44:51] <barteks2x> And tell them "I've never seen it happen, can;t reproduce it, but from decompiled code I see there is a slight chance it might happen"?
L164[05:45:00] <gigaherz|work> yep. ;P
L165[05:45:02] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 186 seconds)
L166[05:45:15] <gigaherz|work> which is why I think you may want to try to reproduce it before posting
L167[05:45:33] <barteks2x> I would need tome really slooooooow hdd for that...
L168[05:45:49] <PaleoCrafter> wouldn't it be just producing here? xD
L169[05:45:54] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L170[05:47:00] <barteks2x> As I said, I will first try to reproduce it with atrificial delay (Thread.sleep), and test it by checking if the same chunk is generated twice
L171[05:47:15] <barteks2x> (because chunks should be only ever generated once, right?)
L172[05:48:04] ⇦ Quits: cpup (~cpup@32.218.118.127) (Ping timeout: 206 seconds)
L173[05:48:05] <barteks2x> Then I will think of some real-world way
L174[05:48:41] <howtonotwin> If you're on Linux you can write a FUSE that delays IO
L175[05:49:00] <howtonotwin> ^ terrible ideas from htnw
L176[05:50:06] <barteks2x> I am on linxu but I don't feel like using C++ for something that can be done in pure java or by writing a script that causes heavy background disk usage
L177[05:50:46] <barteks2x> uh... my typing "linxu"
L178[05:50:57] ⇦ Quits: Hunterz (~hunterz@2001:af0:8000:1c01:6af7:28ff:fe37:5d6a) (Remote host closed the connection)
L179[05:52:10] <howtonotwin> (dd if=/dev/zero of=file bs=1 & (while true; do truncate -s 0 file; done))
L180[05:52:11] <barteks2x> Or by saving on network drive over crappy wifi connection
L181[05:52:13] <howtonotwin> maybe?
L182[05:52:59] <barteks2x> a few of such scripts running in background should do it
L183[05:53:42] <howtonotwin> for i in {0..99}; do diskkiller & done :P
L184[05:55:39] <gigaherz|work> phhh
L185[05:55:40] <gigaherz|work> pfff*
L186[05:55:56] <gigaherz|work> just get some sort of framework for intercepting/instrumenting calls
L187[05:56:03] <gigaherz|work> and add a sleep call on the write functions
L188[05:56:14] <gigaherz|work> no need to go below jvm level ;p
L189[05:56:18] <barteks2x> meh, I already have Mixin. @Redirect is fun
L190[05:56:23] <barteks2x> or @Inject
L191[05:56:52] ⇦ Quits: howtonotwin (~howtonotw@r75-110-22-15.gvllcmtc01.gnvlnc.ab.dh.suddenlink.net) (Quit: Gotta scram!)
L192[05:59:04] ⇨ Joins: Nepharius (~Nepharius@dyndsl-085-016-206-080.ewe-ip-backbone.de)
L193[06:00:38] ⇦ Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com) (Quit: Leaving)
L194[06:01:47] ⇨ Joins: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
L195[06:02:03] <Nepharius> Is rotationYaw from the entity class supposed to be the head's or the body's rotation?
L196[06:03:37] <PaleoCrafter> body, there's a separate head value for entities which have a head
L197[06:03:53] <Nepharius> hm, weird
L198[06:03:59] <PaleoCrafter> so it isn't really body either, more like the entire entity
L199[06:04:13] <Nepharius> for me it's the head
L200[06:04:14] <Nepharius> oh
L201[06:04:15] <Nepharius> okay
L202[06:06:13] <Nepharius> is there a way to get the body's rotation? I need something like that for rendering a backpack. Tried renderYawOffset but those aren't synced between server and client
L203[06:06:27] <gigaherz|work> not from the entity
L204[06:06:34] <gigaherz|work> but the entity layer renderer should have the info
L205[06:07:18] <gigaherz|work> the backpack should be a layer renderer, so if you did it correctly, you should be able to have access to the numbers
L206[06:07:26] <gigaherz|work> check how the elytra draws itself
L207[06:07:37] <gigaherz|work> (there should be a layer renderer for elytra)
L208[06:07:51] <Nepharius> thanks, i'm gonna try that
L209[06:11:21] <Hawaii_Beach> Waah, IDEA is great!
L210[06:12:34] <Nepharius> that look's like it's client side only
L211[06:13:06] <PaleoCrafter> why would you need this information on the server?
L212[06:13:38] <Nepharius> The mechanics are dependet on the rotation
L213[06:14:23] <Nepharius> let's say I got a crane backpack und the blocks will be carried 2 blocks in front of me, playing them down would need me to know how the player is rotated
L214[06:14:34] <Nepharius> placing*
L215[06:20:01] <gigaherz|work> Nepharius: yo ucan't rely on the body rotation
L216[06:20:03] <gigaherz|work> it's client only
L217[06:20:13] <gigaherz|work> use only the head's "looking at" for it
L218[06:21:05] <gigaherz|work> make it so that the crane rotates so that it intercepts the player's "look at"
L219[06:21:12] <gigaherz|work> each client will have to figure out the angle to use
L220[06:21:18] <gigaherz|work> and the mechanics will still be consistent
L221[06:22:56] <Nepharius> yeah, I guess my example was chosen badly
L222[06:23:19] <gigaherz|work> maybe, but the point is the same: the server does not know the "body rotation"
L223[06:23:24] <gigaherz|work> it's simply not a thing in the server
L224[06:23:29] <gigaherz|work> there's the general entity rotation
L225[06:23:33] <Hawaii_Beach> the hell? IDEA tells me to pay for addons i just installed?
L226[06:23:43] <gigaherz|work> and the head rotation
L227[06:23:48] <PaleoCrafter> you're doing it wrong, Hawaii_Beach
L228[06:24:04] <gigaherz|work> Hawaii_Beach: either you chose the wrong edition of IDEA
L229[06:24:07] <gigaherz|work> or you chose paid addons
L230[06:24:51] <Hawaii_Beach> using the community edition, installed the markdown plugin and stuff just turned on me
L231[06:25:02] <PaleoCrafter> use the other markdown plugin :P
L232[06:25:11] <Hawaii_Beach> nothing against it, i understand that devs want a income
L233[06:25:16] <gigaherz|work> sounds like you chose the wrong plugin, then
L234[06:25:21] <gigaherz|work> ;P
L235[06:25:29] <Hawaii_Beach> i feel the devs
L236[06:25:31] <Nepharius> But I could just send packets to sync that, can I?
L237[06:25:45] <gigaherz|work> Nepharius: each player will calculate that body rotation separately
L238[06:25:47] <Hawaii_Beach> at least they didn't add weird ads which covers my entire screen
L239[06:25:49] <gigaherz|work> so they don't even have to be on sync
L240[06:25:53] <gigaherz|work> mc just simply doesn't care
L241[06:26:01] <gigaherz|work> you can sync it, yes
L242[06:26:13] <gigaherz|work> but it would be hacky
L243[06:26:20] <gigaherz|work> since that info is only stored in the renderer, not in the entity
L244[06:26:32] <gigaherz|work> (IIRC)
L245[06:27:20] <gigaherz|work> I really wouldn't make a mod that relies on the backpack's direction instead of the head direction, that's all.
L246[06:28:35] <Nepharius> It just looks weird without
L247[06:28:59] ⇨ Joins: iari (~iari___@evana.futhark24.org)
L248[06:30:08] ⇦ Quits: MoxieGrrl_ (~MoxieGrrl@173-23-172-139.client.mchsi.com) (Read error: Connection reset by peer)
L249[06:30:25] ⇨ Joins: MoxieGrrl_ (~MoxieGrrl@173-23-172-139.client.mchsi.com)
L250[06:30:46] <Nepharius> Or the other way around, it would be awesome if the shells always spawned exactly at the muzzle of the cannon
L251[06:32:11] <Subaraki> how do you know wether the player is using left or right hand ?
L252[06:32:40] <PaleoCrafter> literally left or right or main and off?
L253[06:33:33] <Subaraki> literally. but i think i found it. in entity living base : getPrimaryHand
L254[06:33:40] <PaleoCrafter> yeah
L255[06:38:12] <gigaherz|work> Nepharius: yeah but since the body doesn't always point toward where the player is looking
L256[06:38:28] <gigaherz|work> it would be quite weird if they spawned correctly, but then moved in the look-at direction
L257[06:38:28] <gigaherz|work> XD
L258[06:38:43] <gigaherz|work> that works for like, spells
L259[06:38:56] <gigaherz|work> you can draw a beam between the tip of the wand, and the enemy
L260[06:38:59] <gigaherz|work> and it looks "right"
L261[06:39:06] <gigaherz|work> but for a bow/gun
L262[06:39:11] <gigaherz|work> it's best to make sure the body is in the right rotation
L263[06:39:15] <gigaherz|work> before you start drawing effects
L264[06:39:33] <gigaherz|work> which is what happens when you draw a bow or swing a sword
L265[06:40:13] <Nepharius> well the rotation and stuff works, the muzzle always points to where the player is looking, you only see that in 3rd person
L266[06:40:38] <gigaherz|work> well then the rest is maths ;P
L267[06:40:54] <gigaherz|work> unless a resourcepack changes the location of the gun
L268[06:40:57] <gigaherz|work> then all bets are off.
L269[06:42:11] <Nepharius> as I said, the only problem is syncing the rotation of the player itself. When my body is rotate relative to my head, the muzzle is offset to the left or right and so should the projectile
L270[06:42:25] <Nepharius> and that's where the desync ruins it
L271[06:44:33] <gigaherz|work> when you shoot
L272[06:44:39] <gigaherz|work> you should force the body to rotate into the right direction
L273[06:45:06] <gigaherz|work> really
L274[06:45:17] <gigaherz|work> the rotation of the body shouldn't be a problem at all
L275[06:46:46] <gigaherz|work> does this happen when you have a bow in the hand and draw the string?
L276[06:47:44] <Nepharius> hm, no..
L277[06:52:22] ⇨ Joins: jordibenck (~jordi@145.102.91.11)
L278[06:54:20] ⇨ Joins: Vazkii (~Vazkii@62.28.200.62)
L279[06:54:45] ⇨ Joins: ollieread (~ollieread@exia.ollieread.com)
L280[06:58:09] ⇨ Joins: brandon3055 (~Brandon@122.129.142.14)
L281[07:04:33] ⇨ Joins: cpup (~cpup@32.218.118.127)
L282[07:08:27] ⇨ Joins: Abastro (~Abastro@112.166.128.227)
L283[07:09:03] ⇦ Quits: Vazkii (~Vazkii@62.28.200.62) (Quit: seeya m8 thx 4 playin)
L284[07:13:00] ⇨ Joins: Cooler (~CoolerExt@59.97.202.105)
L285[07:26:36] ⇦ Quits: gigaherz|work (~gigaherz@84.89.63.25) (Remote host closed the connection)
L286[07:27:14] ⇦ Quits: Nepharius (~Nepharius@dyndsl-085-016-206-080.ewe-ip-backbone.de) (Quit: Leaving)
L287[07:27:58] <Subaraki> child models from ModelBase aren't scaling anymore when the parent is scaled up or down ?
L288[07:43:23] <Naiten> Is there something like entity dismount event? No special dismounting method is present and mountEntity() is called from player instance, not from my custom entity
L289[07:46:44] <masa> there is some entity mount event nowadays I believe
L290[07:50:14] ⇦ Quits: npe|office (~NPExcepti@bps-gw.hrz.tu-chemnitz.de) (Remote host closed the connection)
L291[08:08:36] *** PaleoCrafter is now known as PaleOff
L292[08:17:51] *** TTFT|Away is now known as TTFTCUTS
L293[08:19:39] ⇦ Quits: jordibenck (~jordi@145.102.91.11) (Ping timeout: 384 seconds)
L294[08:26:14] <Naiten> masa, any way to handle that on 1.7.10?
L295[08:28:47] ⇦ Quits: mrkirby153 (mrkirby153@the.government.stole-your.pw) (Ping timeout: 195 seconds)
L296[08:28:52] <Subaraki> Naiten, what do you need it for anyway ?
L297[08:28:56] <Subaraki> prevent someone mounting ?
L298[08:29:02] <Subaraki> that could be handmled in your entity
L299[08:29:22] <Subaraki> you could get the entity that has mounted your entity in the onlivingupdate and do stuff
L300[08:29:43] <Naiten> Subaraki, my trains are big and dismounting into stock position is not acceptable
L301[08:29:45] <Subaraki> i'm pretty sure you can hook into your entity's models
L302[08:29:57] <Subaraki> oh
L303[08:30:01] <Subaraki> ah yeah trains
L304[08:30:24] <Naiten> i want to catch the dismount and use riddenByEntity.setPosition() to put player aside the train
L305[08:32:14] <Subaraki> if (!net.minecraftforge.event.ForgeEventFactory.canMountEntity(this, entity, false)) return;
L306[08:32:20] <Subaraki> ^ just found this piece of code
L307[08:32:34] <Subaraki> happens on dismounting
L308[08:33:34] <Naiten> Subaraki, 1.7.10?
L309[08:33:40] <Subaraki> ah no, sorry
L310[08:33:47] <Subaraki> why are you still in 1.7 though ?
L311[08:34:39] <Naiten> Because porting to 1.10 is taking so much time I get tired of it and take breaks by switching to work on 1.7
L312[08:36:16] <Naiten> oh well
L313[08:36:32] <Naiten> i guess i can just handle the shift-key
L314[08:39:17] <barteks2x> Something is seriously wrong, I'm getting horrible rendering issues (chunks not rendering), with plain forge + my 2 mixins for testing
L315[08:40:01] ⇦ Quits: ScottehBoeh (~ScottehBo@104.238.169.24) (Quit: Leaving)
L316[08:42:09] *** amadornes[OFF] is now known as amadornes
L317[08:42:34] <barteks2x> my mixins didn't even apply
L318[08:42:37] <barteks2x> so it was plain forge
L319[08:43:25] <barteks2x> As I'm flying around, chunks are all appearing and disappearing, thise that previosuly rendered - stop renderingonly to appear a while later, and it's all no more than 4-5 chunks away
L320[08:43:57] <Naiten> What's the proper way of getting GameSettings instance?
L321[08:44:48] <luacs1998> lol, i wonder if twitter's mysterious buyer was the EFF
L322[08:44:51] <luacs1998> how would the place change
L323[08:45:54] <barteks2x> Why minecraft chunk rendering never works correctly for me, and works for almost evryone else
L324[08:50:37] ⇨ Joins: Hunterz (~hunterz@62.182.234.189)
L325[08:51:14] *** Darkhax_AFK is now known as Darkhax
L326[08:53:18] <Naiten> what's the server analog of Minecraft.getMinecraft() ?
L327[08:57:17] <luacs1998> FMLCommonHandler.instance().getMinecraftServerInstance()
L328[08:59:57] <Subaraki> barteks2x,
L329[09:00:02] <Subaraki> enable vbo's
L330[09:00:05] <Subaraki> ive had the same proble
L331[09:00:09] <Subaraki> problem *
L332[09:00:40] ⇦ Quits: Cooler (~CoolerExt@59.97.202.105) (Quit: Leaving)
L333[09:01:27] ⇦ Quits: Keridos|away (~Keridos@ironhide.stw-bonn.de) (Ping timeout: 195 seconds)
L334[09:11:00] ⇨ Joins: Keridos|away (~Keridos@ironhide.stw-bonn.de)
L335[09:14:37] ⇦ Quits: Chais (~Chais@62.178.210.212) (Read error: Connection reset by peer)
L336[09:16:05] ⇨ Joins: Chais (~Chais@62.178.210.212)
L337[09:18:40] ⇨ Joins: Hgrebnednav (~Hgrebnedn@d8d872a6e.access.telenet.be)
L338[09:19:20] ⇦ Quits: brandon3055 (~Brandon@122.129.142.14) (Read error: Connection reset by peer)
L339[09:19:47] <Subaraki> did it do anything barteks2x ??
L340[09:20:15] <Subaraki> has anyone got some spare time to figure something out with me ?
L341[09:20:29] <Subaraki> ModelRenderer's childmodels aren't scaling with the model, and I do not know why
L342[09:24:18] <Subaraki> oh wait found it. the model boxes take a scale argument (not default)
L343[09:25:25] ⇨ Joins: Brokkoli (~Brokkoli@p5B23C6CF.dip0.t-ipconnect.de)
L344[09:27:53] <kashike> luacs1998: what, is twitter being sold?
L345[09:28:29] <luacs1998> kashike, according to tech blogs and such
L346[09:28:55] <kashike> interesting
L347[09:29:09] <kashike> get out your wallets
L348[09:29:34] <luacs1998> kek
L349[09:30:02] <gigaherz> apparently it has been downgraded to "underperforming", and people are considering who will buy it and reorganize it
L350[09:30:21] <gigaherz> http://baseballnewssource.com/markets/twitter-inc-twtr-downgraded-by-rbc-capital-markets-to-underperform/112267.html
L351[09:30:36] <kashike> whoever buys it, if anyone, should deal with the stupid-ass spam problem
L352[09:30:49] <gigaherz> whoever buys it
L353[09:30:52] <gigaherz> will have to monetize more
L354[09:30:56] <gigaherz> and that will drive people away
L355[09:31:11] <luacs1998> that's why the eff buying twitter will be funny lol
L356[09:31:29] <kashike> I don't really even use twitter so I don't really care what happens to it
L357[09:31:31] <kashike> lol
L358[09:31:35] <gigaherz> I do
L359[09:31:50] <gigaherz> I don't post much on it
L360[09:31:55] <luacs1998> well pretty much everyone worth their salt dows
L361[09:31:57] <gigaherz> but I use twitter as a way to receive info from others
L362[09:32:26] <gigaherz> for me, twitter is sortof a "news feed"
L363[09:32:43] <fry> maybe if it wasn't fucking up the chronological order so much it wouldn't be underperfroming
L364[09:32:49] <fry> but what do I know :P
L365[09:32:54] <gigaherz> XD
L366[09:37:52] ⇨ Joins: mrkirby153 (mrkirby153@the.government.stole-your.pw)
L367[09:41:27] ⇦ Quits: Jezza (~Jezza@bps-gw.hrz.tu-chemnitz.de) (Quit: Leaving)
L368[09:46:25] *** V is now known as Vigaro
L369[09:46:48] <Naiten> Subaraki, yay, done my dismount issue \o/ https://youtu.be/1AIjZq6qiYw
L370[09:47:43] <Subaraki> nice :D
L371[09:49:33] <barteks2x> Subaraki, I had to go away for a while and still didn't get it running with mixin
L372[09:49:45] <Subaraki> :/
L373[09:49:51] <Subaraki> how about using vbo's ?
L374[09:51:04] <Subaraki> what's mixin btw ?
L375[09:51:26] <barteks2x> testing now
L376[09:51:38] <barteks2x> but it probably won't do anything
L377[09:52:12] <barteks2x> eighter it's because I use intel gpu (because bumblebee has a bug that prevents me from using it in most cases), or it's a minecraft bug
L378[09:53:39] ⇦ Quits: Hawaii_Beach (~Hawaii_Be@c83-248-121-215.bredband.comhem.se) (Quit: Hawaii_Beach)
L379[09:53:44] <barteks2x> the mixin library I use provides similar possibilities to asm but more readable, like this: https://github.com/Barteks2x/CubicChunks/blob/master/src/main/java/cubicchunks/asm/mixin/core/common/MixinChunkCache_HeightLimits.java
L380[09:55:02] <barteks2x> also, I had VBOs enabled the whole time
L381[09:55:05] <kashike> Subaraki: https://github.com/SpongePowered/Mixin/wiki
L382[09:55:33] <barteks2x> ^also that
L383[09:55:45] <barteks2x> I totally forgot it has wiki
L384[09:58:32] <barteks2x> rendering works correctly only when my FPS limit is below actual FPS I get without it and with vsync disabled. If I wanted to make it behave like that without it being obvious from code - I would have no idea how
L385[09:59:13] <barteks2x> I had this problem in 1.8, 1.9 and 1.10...
L386[10:01:16] ⇨ Joins: secknv (~secknv@194.117.18.101)
L387[10:01:37] ⇨ Joins: Hgreb (~Hgrebnedn@d8d872a6e.access.telenet.be)
L388[10:02:27] <barteks2x> Also, i got one chunk generated twice. So the bug is real.
L389[10:04:14] ⇦ Quits: Hgrebnednav (~Hgrebnedn@d8d872a6e.access.telenet.be) (Ping timeout: 186 seconds)
L390[10:06:04] <barteks2x> Is it possible to somehow quickly use 2+ commands? (write them before using them and them use one after another?)
L391[10:09:08] <luacs1998> command block haha
L392[10:09:16] <luacs1998> (is the only way i can think of)
L393[10:09:29] <XDjackieXD> or a macro keyboard/program ^^
L394[10:10:01] <barteks2x> I want tp command... so command block isn't a good idea
L395[10:10:16] <barteks2x> and specifially tp to not yet generated area
L396[10:13:55] <Subaraki> is it possible to set the lightlevel of a 9x9 area in minecraft to light level sky ?
L397[10:15:14] <Subaraki> i'm making an entity (a light sword put in the ground) that generates solar energy in a 9x9 area, that would ignite entities nearby
L398[10:15:16] ⇨ Joins: Samario (~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net)
L399[10:16:17] <barteks2x> the only way I can think of is directly setting light values in chunks, but then to undo it you need to remember old values, and there is still possibility that they change to the exact values you set it to before you restore it
L400[10:17:57] ⇦ Quits: VikeStep (~VikeStep@101.184.243.180) (Quit: Leaving)
L401[10:18:20] <barteks2x> wait
L402[10:18:29] <barteks2x> I somehow read skylight insyead of lightlevel
L403[10:19:12] ⇦ Quits: cpup (~cpup@32.218.118.127) (Quit: Breaking stuff)
L404[10:19:15] <barteks2x> But still, if you don't want it to spread out like torch light does - the answer remains the same
L405[10:20:13] <Subaraki> i thought maybe getting the blockpositions around an entity and manually setting them to sky light ?
L406[10:20:16] <Subaraki> would that do ?
L407[10:20:26] ⇨ Joins: cpup (~cpup@32.218.118.127)
L408[10:20:31] <Subaraki> and then when the entity dies / is pulled out of the ground, somehow reset it ?
L409[10:20:43] <Subaraki> or make them recalculate the normal light level ?
L410[10:26:50] ⇨ Joins: Jezza (~Jezza@92.206.33.136)
L411[10:27:23] <barteks2x> It doesn't matter how you change skylight level, world.checkLightFor will use raw light values it creates using heightmap
L412[10:28:02] <barteks2x> so you won't be able to spread it out unless you copy logic from world.checkLightFor
L413[10:28:30] *** Abrar|gone is now known as AbrarSyed
L414[10:28:34] <Subaraki> i dont need to spread it out really
L415[10:28:46] <Subaraki> it just needs to flick on and off
L416[10:28:48] <barteks2x> if you don't need to spread it out - setting light values directly would work, but any block updates may cause it to be recalculated
L417[10:29:32] <Subaraki> true. maybe set it every like 10 ticks ? to be sure ? if the entity only lives for like 5 seconds, it shouldn't be too intense right ?
L418[10:30:45] <barteks2x> If it's not too many blocks that would work, but I would spread out resetting them over meny ticks, world.checkLightFor(EnumSkyBlock.SKY, position) should handle recalculating it
L419[10:31:21] <barteks2x> it's still not ideal solution, but minecraft doesn't allow to really do it differently
L420[10:31:51] *** Vigaro is now known as V
L421[10:33:28] <Subaraki> i'm already using that :)
L422[10:33:53] <Subaraki> now as to reset it ... force a chunk update ? or mark all those blocks for an update ?
L423[10:34:54] <barteks2x> let me check something, i need to make sure
L424[10:35:49] <Subaraki> checked the code, this might do something worldObj.getChunkFromBlockCoords(pos).checkLight();
L425[10:35:54] <barteks2x> if you do it through world.setLightFor, it will be updated automatically, but server won't send the update to client
L426[10:36:24] <barteks2x> basically, client ans server calculate light on their own
L427[10:36:34] <Subaraki> hmm....
L428[10:36:56] <Subaraki> how would i notify the client ? a block update ?
L429[10:37:23] <barteks2x> If it's entity that does it, why can't that entity do it on both sides?
L430[10:37:28] <Subaraki> on the other hand, do i not need a light value for that ?
L431[10:37:46] <Subaraki> idk, you told me it doesn't send it to the client
L432[10:38:03] <Subaraki> i didn't make any isRemote checks anywhere ... so it should right ?
L433[10:38:07] <barteks2x> t doesn't send light update to client by itself, if you do it on both sides - it will be done on both sides
L434[10:38:41] <barteks2x> Just note that in case entity position isn't exactly the same as serverside, it may cause different values clientside and serverside
L435[10:39:27] <barteks2x> and what did you mean by "do I need light value for that"?
L436[10:39:57] <Subaraki> setLightFor takes an integer as argument, for the light lever
L437[10:39:59] <Subaraki> level
L438[10:40:16] <barteks2x> yes, you set it to whatever light value you need
L439[10:40:20] <barteks2x> 0-15
L440[10:40:27] <Subaraki> that's for lighting it
L441[10:40:36] <Subaraki> how about stopping to light it ?
L442[10:40:44] <Subaraki> i remove the entity. do i set 0 ?
L443[10:40:49] <barteks2x> world.checkLightForshould recalculate it
L444[10:40:53] <barteks2x> based on heightmap
L445[10:41:35] <barteks2x> and it also spreads out light values
L446[10:44:03] ⇨ Joins: codahq (~codahq@c-73-65-219-228.hsd1.ut.comcast.net)
L447[10:46:49] ⇦ Quits: secknv (~secknv@194.117.18.101) (Remote host closed the connection)
L448[10:52:49] ⇨ Joins: gr8pefish (~gr8pefish@24-121-241-166.flagcmtk01.res.dyn.suddenlink.net)
L449[10:54:02] ⇨ Joins: IceDragon (~ThatGuy@184.170.42.135)
L450[11:01:01] *** PaleOff is now known as PaleoCrafter
L451[11:03:46] ⇨ Joins: quadraxis (~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
L452[11:13:42] <Subaraki> welp, barteks2x, it seems to work, but only darker. if i set it to 15, it doesnt do anything. if i set it to higher then 15, the area will become darker, or lower then 0 it will become darker as well.
L453[11:13:52] <Subaraki> 0 itself is the same value as all around, up intull 15
L454[11:13:58] <Subaraki> (testing in night time btw)
L455[11:14:25] <Ordinastie> it's 0-14 btw
L456[11:15:16] <barteks2x> I'm sure there are 4 bits for light value...
L457[11:15:39] <Ordinastie> FF00 the max
L458[11:15:45] <Subaraki> here's a picture when set to 14 P: http://i.imgur.com/rpjFPXn.png
L459[11:15:57] <Subaraki> ff00 ? lets try to put in 0xff00 then instead of 14 :)
L460[11:16:15] <Ordinastie> actually, nvm
L461[11:16:18] <Ordinastie> it's 15
L462[11:16:22] <PaleoCrafter> that's like bigger than 255 :P
L463[11:16:53] <Ordinastie> yeah, watching a show, I was messing it all ><
L464[11:16:57] <Ordinastie> it's F0
L465[11:17:04] <PaleoCrafter> Just F :P
L466[11:17:15] <Subaraki> f is 16
L467[11:17:17] <Subaraki> ff ?
L468[11:17:20] <PaleoCrafter> F is 15
L469[11:17:22] <Subaraki> ff is 255
L470[11:17:26] <Ordinastie> no, the max value is 240
L471[11:17:48] <barteks2x> max value of what? Skylight? No way it's 240
L472[11:17:54] ⇨ Joins: CoderPuppy (~cpup@32.218.117.72)
L473[11:17:58] <Subaraki> i think it was 255
L474[11:18:12] <barteks2x> Blocklight has max 15, and skylight has max 15
L475[11:18:12] <Subaraki> but i tried all of the numbers said in the past minute
L476[11:18:17] <Subaraki> they just all turn the area darker
L477[11:18:26] <Ordinastie> it's 240 because it's 15 < 4
L478[11:20:32] <barteks2x> What O.o
L479[11:20:49] <barteks2x> I'm sure I'm setting skylight values to 0-15 in cubic chunks
L480[11:21:01] <barteks2x> 0 is dark, 15 is full brightness
L481[11:21:11] <Ordinastie> but it's then translated
L482[11:21:26] <PaleoCrafter> lol, never realised that that's why Vanilla passes 240 (in the decompiled code) to achieve fixed lighting in some places xD
L483[11:21:27] <barteks2x> yes, but world.setLightFor uses untrabslated values
L484[11:21:35] <Ordinastie> and then packed into one int with block and sky light
L485[11:22:06] <Subaraki> aah
L486[11:22:09] <Subaraki> thats why :)
L487[11:22:20] <barteks2x> world.setLightFor and chunk.setLightFor should use 0-15. That's it.
L488[11:22:22] <Subaraki> still doesn't fix why there's no light in the area though :/
L489[11:22:31] <Subaraki> passing 15 doesnt change a thing
L490[11:22:48] <barteks2x> Maybe start debugging and get the light value after it's rendered to see what happens?
L491[11:22:49] <Ordinastie> what are you doing ?
L492[11:22:55] <barteks2x> Also, it won't work in the nether and the end
L493[11:23:13] <Subaraki> i'm putting down an entity that is supposed to create an area of sun light, so it will burn mobs
L494[11:23:20] ⇨ Joins: SanAndreasP (~SanAndrea@ip-2-201-3-132.web.vodafone.de)
L495[11:23:27] <Subaraki> worldObj.setLightFor(EnumSkyBlock.SKY, pos, 15); doesnt work, because it doesnt burn them
L496[11:23:36] <Subaraki> it sets it to the ambient light, even if it's night
L497[11:23:49] ⇦ Quits: cpup (~cpup@32.218.118.127) (Ping timeout: 384 seconds)
L498[11:23:51] <barteks2x> Also for burning mobs I think mc checks if they are avove heightmap, but I may be wrong
L499[11:24:25] <barteks2x> Also, at night skylight values are decreased to moonlight values
L500[11:24:50] <barteks2x> If you want it to work at noght, the best option is to set blocklight and burn mobs yourself
L501[11:25:03] <barteks2x> (I don't see any othe roption)
L502[11:25:32] <Subaraki> is that not what we do with worldObj.setLightFor ?
L503[11:25:46] <Subaraki> it works when we're in darker places, the light gets augmented
L504[11:25:50] <barteks2x> what EnumSkyBlock do you give?
L505[11:25:58] <Subaraki> doesnt create that torch light though
L506[11:26:02] <Subaraki> Sky
L507[11:26:25] <barteks2x> Sky means skylight, which is basically sunlight and it will change depending on day night cycle
L508[11:26:42] <barteks2x> Blocklight doesn't but it has slightly different color
L509[11:26:57] <Subaraki> okay
L510[11:26:58] <Subaraki> nice :)
L511[11:27:16] <barteks2x> And you probably need to burn mobs yourself because the mob burning code uses canBlockSeeSky or soemthing like that
L512[11:27:54] <barteks2x> since you specifically asked for skylight, I thought that's what you means
L513[11:28:14] <Subaraki> yeah, i thought they just burned with light level 15 in sky or something like that
L514[11:28:24] <Subaraki> anyway, i now have a permantly lit cave ...
L515[11:28:52] <Subaraki> destroyed the entity, but the lights didnt go away. using setLightFor(Block, 0)
L516[11:30:20] <Subaraki> guess where the sword was xD http://i.imgur.com/eM4AcBk.png
L517[11:30:29] <barteks2x> checkLightFor with EnumSkyBlock.BLOCk should relight blocks too
L518[11:30:30] <barteks2x> Also, I broke linux. Everything is horribly slow
L519[11:30:49] <barteks2x> And it all hangs every few seconds
L520[11:31:04] <barteks2x> I tried to simulate high disk IO...
L521[11:32:22] <Subaraki> D: ai ai ai
L522[11:32:25] <Subaraki> bad idea bartek :/
L523[11:36:58] <fry> sync && echo 3 > /proc/sys/vm/drop_caches
L524[11:37:45] <gr8pefish> Hi all. I want to store some data on the client, an itemstack specifically, so that it can be referenced quickly to render something on the client player. What is the best way to go about this (in 1.10)?
L525[11:37:59] ⇨ Joins: cpup (~cpup@32.218.117.127)
L526[11:38:19] <gigaherz> gr8pefish: rendere where?
L527[11:39:41] ⇦ Quits: CoderPuppy (~cpup@32.218.117.72) (Ping timeout: 384 seconds)
L528[11:39:53] <gr8pefish> I need to render an entity if the player has item x. Currently that data is stored in the server player via capabilities, but I need to get it on the client side. I could send a bunch of messages, but I'd rather not do that every render tick
L529[11:40:19] <Subaraki> gr8pefish, then send it once
L530[11:40:24] <Subaraki> and once again when it is changed
L531[11:40:25] <Subaraki> :)
L532[11:40:27] <Ordinastie> gr8pefish, just send when it's changed
L533[11:40:29] <Subaraki> that's the only way
L534[11:40:47] <Subaraki> that's the way vanilla does it for armor as well
L535[11:41:01] <gr8pefish> Agreed, I need to send it once, but how do I store that returned itemstack on the client player?
L536[11:41:18] <gr8pefish> You can tell me to just look at armor code if needed ^
L537[11:41:20] <Subaraki> same as you do server side
L538[11:41:21] <gigaherz> you store it in the capability
L539[11:41:25] <gigaherz> just the client copy of that capability
L540[11:41:25] <gr8pefish> oh okay
L541[11:41:34] <gr8pefish> that makes sense, I can do that
L542[11:41:36] <gigaherz> since the client entity is a whole new copy of the entity
L543[11:41:44] <gigaherz> you can just synchronize the capability objects
L544[11:41:44] <gr8pefish> perfect
L545[11:41:47] <gigaherz> and then query it from rendering
L546[11:41:51] <Subaraki> don't check for client or so though. just send a message to the client, and acces player capabilty from there
L547[11:41:56] <gigaherz> and in fact ,that's for the best
L548[11:42:02] <Subaraki> yes :) ^
L549[11:42:03] <gigaherz> because that way the rendering doesn't have to know about netowrking
L550[11:42:10] <Subaraki> i'm still puzzled on how to make an area dark again ...
L551[11:42:12] <gr8pefish> exactly, that's what I wanted to avoid
L552[11:42:16] <gr8pefish> thanks fellas
L553[11:42:21] <Subaraki> i just lit up an entire cave with daylight
L554[11:42:26] <Subaraki> dont know how to get rid of it
L555[11:44:37] ⇨ Joins: brandon3055 (~Brandon@122.129.142.14)
L556[11:48:22] <gigaherz> Subaraki: you can either force those chunks to compute the light again
L557[11:48:26] <gigaherz> or just reload the save
L558[11:48:44] <gigaherz> hmm wait woudl that work?
L559[11:48:46] <Subaraki> i'd like to force the chunk to recompute
L560[11:48:49] <gigaherz> maybe you need to forge light recalc
L561[11:48:50] <Subaraki> dont know how though
L562[11:49:00] <gigaherz> cna't point you to a function, sorry
L563[11:49:10] <Subaraki> i'm still looking :) no worries
L564[11:50:21] ⇨ Joins: jordibenck (~jordi@86.89.212.184)
L565[11:50:39] ⇦ Quits: Naiten (Naiten@77.35.115.49) (Read error: Connection reset by peer)
L566[11:52:32] <quadraxis> generateSkylightMap() ?
L567[11:59:02] <Subaraki> good point :o
L568[11:59:10] <Subaraki> lets see if i can acces that
L569[12:02:42] ⇨ Joins: Kenny164 (~pkinney@host217-42-126-116.range217-42.btcentralplus.com)
L570[12:09:04] *** RoboSky is now known as Robotbrain
L571[12:09:08] *** Robotbrain is now known as robotbrain
L572[12:09:52] *** robotbrain is now known as RoboSky
L573[12:12:19] ⇨ Joins: ThePsionic (~ThePsioni@ip5457f909.direct-adsl.nl)
L574[12:16:44] *** Keridos|away is now known as Keridos
L575[12:21:34] ⇨ Joins: CoderPuppy (~cpup@32.218.117.196)
L576[12:22:11] ⇦ Quits: cpup (~cpup@32.218.117.127) (Ping timeout: 384 seconds)
L577[12:28:21] ⇨ Joins: founderio (~Thunderbi@p200300C4E3C10B0056BE9ECADDDC14FE.dip0.t-ipconnect.de)
L578[12:29:06] *** RichardG_ is now known as RichardG
L579[12:44:22] <tankcr> morning all
L580[12:47:58] <barteks2x> I don't think I should have C:\Windows\System32\explorer.exe running on linux...
L581[12:48:04] <Subaraki> morning tankcr
L582[12:48:30] <tankcr> hows things?
L583[12:48:55] <Subaraki> i'm still trying to make an entity give off light
L584[12:49:00] <Subaraki> goes pretty good
L585[12:49:06] <Subaraki> it's taking away the light that's harder
L586[12:49:06] <PaleoCrafter> hm, anybody got an idea for a general "fact" icon? xD
L587[12:49:22] <barteks2x> World.checkLightFor at each of those positions should work
L588[12:49:29] <Subaraki> PaleoCrafter, : an erlenmeier
L589[12:49:31] <kashike> PaleoCrafter: lightbulb
L590[12:49:33] <Subaraki> with a light bulb
L591[12:49:41] <Subaraki> nah, lightbubl alone is idea
L592[12:49:41] <tankcr> better then me then, I am struggling with increasing my ore spawn rate, I don't quite understand my variables yet, still learning, lol
L593[12:49:51] <Subaraki> ooh, ores is easy :)
L594[12:49:55] <tankcr> https://github.com/tankcr/everything_adamantium/blob/master/src/main/java/tankcmod/evadamant/world/OreGen.java
L595[12:49:57] <Subaraki> show me your code, i'll explain
L596[12:50:07] <PaleoCrafter> this is more of a statistical fact, I should mention xD
L597[12:50:27] <tankcr> I think I have them set to purely random right now, is that correct?
L598[12:51:17] <PaleoCrafter> I can actually get a description of the data, so I'll just display that
L599[12:51:28] <Subaraki> what's the chance variable worth ?
L600[12:51:58] <tankcr> thats just it, I am not really even sure where to set that
L601[12:52:11] <tankcr> I assume in the init?
L602[12:52:29] <barteks2x> O.o my linux is really broken now... I have "cat" running in background... somehow.Aside of that, C:\Windows\system32\explorer.exe and C:\windows\system32\services.exe
L603[12:52:43] <tankcr> or is it in the actual block class?
L604[12:52:44] <barteks2x> and I didn't start any of them
L605[12:52:51] <Subaraki> no tankcr, it just defines how much your loop goes over generating ore
L606[12:53:01] <Subaraki> if you set that to 1, it'll try once for generating ore
L607[12:53:12] <Subaraki> of you set that to 100, it'll try 100 times
L608[12:53:23] <kashike> barteks2x: wine?
L609[12:53:33] <barteks2x> teamvoewer uses it so probably
L610[12:53:41] <barteks2x> I also have 2 unkillable cat processes
L611[12:53:46] <kashike> lol
L612[12:53:49] <barteks2x> even sudo kill -9 doesn't work
L613[12:53:57] <tankcr> so the i=0 means that its trying 0 times?
L614[12:54:05] <Subaraki> yes
L615[12:54:09] <Subaraki> no
L616[12:54:11] <tankcr> ha no wonder
L617[12:54:13] <Subaraki> no tankcr
L618[12:54:15] <tankcr> oh
L619[12:54:16] <Subaraki> that's not it
L620[12:54:21] <Subaraki> do you know how for loops work ?
L621[12:54:32] <tankcr> yes
L622[12:54:46] <tankcr> each time it loops it adds i++
L623[12:54:52] <Subaraki> if you say that i = 0 makes it loop 0 times, then no you don't
L624[12:55:02] <Subaraki> and no, it doesn't add i++
L625[12:55:06] <IoP> How did you write that code if you don't know what it does?
L626[12:55:10] <Subaraki> i++ means the integer i + 1
L627[12:55:14] <Subaraki> that's ++
L628[12:55:20] <Subaraki> short for += 1
L629[12:55:23] <tankcr> ha, intensive google searching and piecing together
L630[12:55:33] <Subaraki> i = 0 is the starting value
L631[12:55:43] <Subaraki> i < aNumber is when it will stop
L632[12:55:48] <Subaraki> i++ is the increment
L633[12:55:52] <tankcr> ok
L634[12:55:56] <Subaraki> could also be i+=5 if you needed that
L635[12:56:02] <Subaraki> or i--
L636[12:56:12] <IoP> = copy pasted from some other mod with 0 attribution? (not sure if thresold of originality...)
L637[12:56:14] <Subaraki> so the range is from 0 to aNumber
L638[12:56:23] <Subaraki> lets say 16
L639[12:56:36] <tankcr> ok
L640[12:56:38] <Subaraki> if you increment by one (i++) every time, it'll loop 16 times
L641[12:57:01] <Subaraki> if you decrease by one (i--) every time, it'll never stop, because it will never hit 16
L642[12:57:13] <Subaraki> so it runs that code 16 times, lets say
L643[12:57:25] <IoP> for ( ;true; ) { ;)
L644[12:58:10] <Subaraki> the next part is the code trying to get a random spot in the chunk
L645[12:58:46] <Subaraki> chunk coordinates (chunkX and chunkZ) start in the upper left corner. that's why you get a random number in between 0 and 16 to add to that
L646[12:58:55] <Subaraki> because chunks are 16x16
L647[12:59:10] <tankcr> ok
L648[12:59:38] <Subaraki> and you also multiply those coordinates by 16, because chunks x1z1 is located at in-world x16 blocks z16 blocks :)
L649[13:00:37] <Subaraki> random.nextInt(heightRange) + minY : you get a random number in between the value you set (minY) lets pretend it's 30. and heightRange (lets say its 128)
L650[13:00:39] <tankcr> ok
L651[13:01:03] <Subaraki> so your ore will spawn in between 30-128 blocks, if the conditions are ideal. the conditions are calculated in the generate method :)
L652[13:01:12] <Subaraki> like, can this ore replace this block ? etc
L653[13:01:39] <tankcr> oh, I hadn't even though of that
L654[13:02:17] <tankcr> is that based upon the block type, or is it something you have to tell it additionally in the code?
L655[13:02:44] <Subaraki> additional
L656[13:03:10] <tankcr> so if you don't define that it can replace another block, will it even spawn?
L657[13:03:34] <Subaraki> i dont think so
L658[13:03:53] <Subaraki> BlockMatcher.forBlock(Blocks.STONE) in 1.10.2, when extending WorldGenerator, you can use that to know what blocks you'll replace
L659[13:04:18] <tankcr> I think I have it set to diamond right now
L660[13:04:25] <Subaraki> yeah, i saw that
L661[13:04:29] <Subaraki> that's pretty rare
L662[13:04:43] <tankcr> so for testing I should change that to stone, lol
L663[13:04:46] <Subaraki> you should start with like a 100 loop to know it works
L664[13:04:56] <Subaraki> ah yeah
L665[13:04:59] <Subaraki> you replace diamond xD
L666[13:05:05] <Subaraki> even a slimmer chance of it spawning
L667[13:05:18] <Subaraki> because the block targetted needs to be diamond to be replaced xDDD
L668[13:06:07] ⇦ Quits: ThePsionic (~ThePsioni@ip5457f909.direct-adsl.nl) (Quit: Leaving)
L669[13:06:21] <tankcr> yeah, that makes sense
L670[13:09:38] <tankcr> aand btw, that did the trick, thank you!
L671[13:12:45] <tankcr> so I have chance set at 100, but what would be a typical rate for iron or diamond?
L672[13:13:40] <Subaraki> diamond is 8
L673[13:14:02] <Subaraki> and you can look that up P:
L674[13:14:21] <Subaraki> if you're using eclipse, type ctrl shift T and look for WorldGenMinable
L675[13:15:25] <Subaraki> i mean, look for BiomeDecorator
L676[13:15:57] <Subaraki> and look for ironGen
L677[13:16:32] <Subaraki> the ctrl click your way up to follow chunkprovidersetting.ironSize :)
L678[13:16:33] <tankcr> thanks!
L679[13:16:40] <Subaraki> and apperantly it's 9 ..? o.O
L680[13:16:55] <Subaraki> ah but there's also count
L681[13:16:58] <Subaraki> ironCount is 20
L682[13:17:10] <Subaraki> and diamondCount is 1
L683[13:17:23] *** brandon3055 is now known as brandon3055|Zz
L684[13:17:47] <Subaraki> now all i need is to know how to notify the client of light changes :o
L685[13:18:10] <Subaraki> because placing my entity it will display light if i reconect, and if i kill it, it will remove the light once i reconect
L686[13:20:56] <Subaraki> does anyone know how to queue a chunk for light update or something ?
L687[13:21:57] <barteks2x> for render update you mean?
L688[13:22:46] <barteks2x> Subaraki, if you call world.setLightFor clientside, it should re-render automatically
L689[13:23:09] <Subaraki> it doesn't though
L690[13:23:15] ⇨ Joins: raoulvdberge (uid95673@id-95673.richmond.irccloud.com)
L691[13:23:16] <Subaraki> i set it both sides
L692[13:23:28] <Subaraki> but the entity is initially spawned server side
L693[13:23:33] <barteks2x> are you sure it really is called clientside?
L694[13:23:35] <Subaraki> could that have anynith to do with it ?
L695[13:25:02] <Subaraki> yes
L696[13:25:10] <Subaraki> but it gets called twice server side
L697[13:25:18] <Subaraki> i set it ince before spawning the entity
L698[13:25:20] <barteks2x> world.setLightFor calls notifyLightSet(pos), which notifies all IWorldEventListeners and one of them is RenderGlobal
L699[13:25:34] <Subaraki> entity e = new entity. e.setstuff. (world.isserver) spawn(e)
L700[13:26:07] <Subaraki> e.setstuff is called twice. because it prints out server client, and then server once more
L701[13:26:25] <barteks2x> are you sure you aren't doing it clientside when entity has wrong position? (that's just my guess)
L702[13:27:07] <barteks2x> Check if it's called clientside with the right position
L703[13:28:14] <Subaraki> what ?
L704[13:28:41] <Subaraki> i call the setLightFor after the super of setLocationAndAngles
L705[13:28:53] <Subaraki> in the setLocationAndAngles method
L706[13:29:01] <barteks2x> still, just print out these positions and check if they are what you expect
L707[13:29:19] <barteks2x> and if you really insist on that: to re-render a block you use markBlockRangeForRenderUpdate
L708[13:29:22] <Subaraki> the entity position ?
L709[13:29:32] <barteks2x> the position you use in setLightFor
L710[13:29:38] *** AbrarSyed is now known as Abrar|gone
L711[13:30:00] <barteks2x> There is no way world.setLightFor doesn't re-render anything
L712[13:30:09] <barteks2x> if it's really done clientside
L713[13:30:35] <Subaraki> is client for settign location. position is -287.5 63.0 -32.5 all values are the same
L714[13:30:40] <Subaraki> all threa of them
L715[13:30:50] <Subaraki> two client sides
L716[13:30:52] <Subaraki> one server side
L717[13:30:57] <Subaraki> well, isRemote
L718[13:31:26] <barteks2x> are you using world.setLightFor or chunk.setLightFor?
L719[13:32:06] <Subaraki> world
L720[13:32:36] <barteks2x> if you insist that you manually update it: world.markBlockRangeForRenderUpdate
L721[13:32:51] <barteks2x> But I doubt it will work
L722[13:33:35] <barteks2x> also, are you setting light for only one block or more of them?
L723[13:34:52] <barteks2x> And I thought it already worked as you had some screenshots
L724[13:35:18] <Subaraki> well it did
L725[13:35:24] <Subaraki> god knows what the fuck i changed since then
L726[13:35:34] <Subaraki> but it never went away
L727[13:35:36] <Subaraki> it does now
L728[13:35:41] <Subaraki> but now i need updates
L729[13:36:12] <barteks2x> It appears, and it disappears... so what else do you need?
L730[13:36:23] <barteks2x> I'm confused
L731[13:36:54] <Subaraki> found it
L732[13:36:55] <Subaraki> checkLightFor
L733[13:37:10] <Subaraki> i use checkLightFor after setlight. it disperses it, just like with torches
L734[13:37:19] <Subaraki> if i don't use that, it doesnt dispers, and stays
L735[13:37:36] <Subaraki> even setting the block's light to 0 keeps the light on
L736[13:37:49] <Subaraki> by using checkLightFor it removes it correctly
L737[13:37:55] <Subaraki> but now i need syncing somehow
L738[13:41:16] <barteks2x> I guess I know too little about anything other than some minecraft internals, worldgen and lighting to understand what is the problem
L739[13:41:25] <Subaraki> there was a time where you could send a vanilla packet to update vanilla stuff :/
L740[13:41:28] ⇦ Quits: Hink (~Hink@hink.me) (Quit: quit from client)
L741[13:41:30] <Subaraki> i wish it was still here
L742[13:41:36] <Subaraki> i'll study the lighting code
L743[13:41:41] <Subaraki> i'll try to get some wiser
L744[13:41:54] <barteks2x> But what do you want it to do if you can make it appear and disappear already and it shows clientside?
L745[13:42:28] ⇨ Joins: Gil (uid147942@id-147942.brockwell.irccloud.com)
L746[13:42:48] <barteks2x> "but now i need syncing somehow" seems a bit vague
L747[13:42:57] <Subaraki> well, i'll tell again
L748[13:43:10] <Subaraki> placing it down with just setLightFor creates a square of light
L749[13:43:27] <Subaraki> setting the blocks back to 0 with setForLight doesn't work
L750[13:43:31] <Subaraki> the light source stays existing
L751[13:43:44] <Subaraki> even reconnecting doesnt remove it
L752[13:44:17] <Subaraki> using checkForLight after using setLightFor allows the light to disperse, and even removes it when setting the values back to 0 !
L753[13:44:22] <Subaraki> problem is, this happens server side only
L754[13:44:39] <Subaraki> so client side, placing and removing the entity doesnt do anything
L755[13:44:44] <Subaraki> it stays dark
L756[13:44:54] <Subaraki> placing it, log out, and back in will have your light in place
L757[13:45:03] <Subaraki> remove it, and log out and back in, will have the light gone
L758[13:45:27] <barteks2x> It would be easier if I saw the code
L759[13:45:32] <Subaraki> conclusion, i need a sync for the chunk i think or something so the server tells the client that there is light
L760[13:45:34] <Subaraki> i'll paste you a copy
L761[13:47:04] <Subaraki> http://pastebin.com/dSUwb6KQ
L762[13:48:26] <Ordinastie> when you do setLightFor, is it receive on the client ?
L763[13:48:42] <Subaraki> yes
L764[13:48:56] <Ordinastie> so it just doesn't redraw?
L765[13:49:12] *** Keridos is now known as Keridos|away
L766[13:49:20] <Subaraki> yeah
L767[13:49:23] <Ordinastie> if you then place a block, does it light up ?
L768[13:49:29] *** Keridos|away is now known as Keridos
L769[13:50:01] <barteks2x> Does checkLightFor return true or false?
L770[13:50:57] <Subaraki> true both sides
L771[13:51:05] <Subaraki> Ordinastie, ?
L772[13:51:48] <Ordinastie> after you do setLightFor, if you place block, does the light change ?
L773[13:51:49] <Subaraki> placing a torch next to said entity draws the torch's light, but not the entity's
L774[13:52:01] <Subaraki> nor does placing another block update it
L775[13:52:04] <Ordinastie> not the torch, another one
L776[13:52:11] <Ordinastie> then client didn't receive it
L777[13:52:13] <barteks2x> so the light value isn't set clientside
L778[13:52:16] <barteks2x> Wait...
L779[13:52:18] <barteks2x> I think I know
L780[13:52:22] <Subaraki> but how ... ? ._.
L781[13:52:36] <Ordinastie> that's why you have access to a debugger
L782[13:52:43] <Subaraki> well, yes. we figured it isn't set client side
L783[13:52:52] <Subaraki> that's why i wanted syncing ...
L784[13:52:58] <Ordinastie> <Ordinastie> when you do setLightFor, is it receive on the client ?
L785[13:52:58] <Ordinastie> <Subaraki> yes
L786[13:53:23] <Subaraki> why yeah... because it prints out true when checked inside the loop for client side :/
L787[13:53:28] <barteks2x> He does setLightFor on both client and server side
L788[13:54:04] ⇨ Joins: Hanii (~user@35.214.9.51.dyn.plus.net)
L789[13:54:11] <barteks2x> (also, my idea was wrong)
L790[13:54:48] <Subaraki> Ordinastie, just used debugger in the World class, in setLightFor
L791[13:54:56] <Subaraki> and the chunk argument says it's on worldCLient
L792[13:54:57] <Subaraki> so yeah
L793[13:55:18] <Ordinastie> don't stop there
L794[13:55:26] <Subaraki> what's next ?
L795[13:55:29] <Subaraki> there's nothing more :/
L796[13:55:32] <Subaraki> ah heck
L797[13:55:32] <Ordinastie> keep going until you see why it doesn't redraw
L798[13:55:36] <Subaraki> i'll try to solve it tommorow
L799[13:55:50] <barteks2x> I would say something updates light a while later
L800[13:56:26] <Hanii> Is there any way to uniquely identify a biome in the world? Such that I could generate or get a (probably unique) hashcode that’s different for each instance of a biome?
L801[13:57:01] <Hanii> i.e. so I could differentiate a grasslands in one part of the world from another, unconnected grasslands in a different part of the world?
L802[13:57:19] <Ordinastie> not natively
L803[13:57:24] <Hanii> :(
L804[13:57:33] <Ordinastie> and not really doable unless you pregen the world
L805[13:57:36] <barteks2x> all places where a biome is are identital in every way possible
L806[13:57:48] <barteks2x> it would be doable by modifying biome generator
L807[13:58:12] <barteks2x> biome generator knows which parts are connected before it finishes generating
L808[13:58:35] <barteks2x> bit norlally - it's not possible
L809[14:00:19] *** Jezza is now known as Jezza|Nom
L810[14:00:20] <Hanii> That’s handy knowing that, thanks, I could patch that to connect a random integer to each biome instance.
L811[14:00:51] <Hanii> I’ve been trying to find out a way for a while now, and now I have direction \o/
L812[14:01:03] <barteks2x> it wouldn't be easy anyway, and patching biome generator in any way is probably not a good idea
L813[14:01:35] <Hanii> Don’t suppose there’s an event that fires that would let me do this without patching?
L814[14:02:17] ⇨ Joins: Girafi (Girafi@0x555178eb.adsl.cybercity.dk)
L815[14:02:21] <barteks2x> It's possible to know which biomes are connected (in a very broad sense of possible) because of how GenLayers internally work. This isn't exposed in any API
L816[14:02:38] <barteks2x> And only GenLayers may possibly know it
L817[14:03:41] <barteks2x> I dtill think it's a bad idea
L818[14:04:10] <Hanii> Unless there’s a better way to identify them, it’s the best idea so far.
L819[14:05:44] ⇨ Joins: Ipsis (~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk)
L820[14:06:31] <barteks2x> As I said, it's very broad sense of possible, it may very turn out that it would be too slow
L821[14:07:05] <gigaherz> I assumed it simply computed an overall "temperature" for the area, and it would choose biomes based on that
L822[14:07:14] <gigaherz> no idea how it works, though
L823[14:07:15] <barteks2x> that's how it worked in beta 1.7.3 and before
L824[14:07:26] <gigaherz> oh?
L825[14:07:55] <barteks2x> Now it basically generates random biomes at very large stale, zooms in, generates more, zooms in, generates more, repeat until finished
L826[14:08:04] <barteks2x> *stale->scale
L827[14:08:38] <barteks2x> *raneom - with some restrictions
L828[14:10:16] ⇦ Quits: Hunterz (~hunterz@62.182.234.189) (Quit: Leaving.)
L829[14:13:30] <barteks2x> Hanii: possible patch-free but still a big hack: (I did it once in 1.7 to make biomes loop around) wrap each genlayer into your own class that extends GenLayer, and there do what you need to do
L830[14:15:59] <quadraxis> can I get an expert opinion on something?
L831[14:16:58] <barteks2x> I wouldn't expect anyone to answer without knowing what it's about
L832[14:17:45] <Ordinastie> you'd be surprised
L833[14:18:06] <quadraxis> it seems that model jsons don't inherit overrides from their parents
L834[14:18:19] <quadraxis> should that be considered a bug?
L835[14:20:21] ⇦ Quits: tankcr (~KRoy.Loca@97.115.183.101) (Read error: Connection reset by peer)
L836[14:22:12] ⇨ Joins: tankcr (~KRoy.Loca@97.115.183.101)
L837[14:22:18] ⇨ Joins: FlareLine (webchat@125.253.101.85)
L838[14:22:18] <tankcr> in 1.10.2 did something replace addShapelessRecipe?
L839[14:23:17] ⇦ Parts: FlareLine (webchat@125.253.101.85) ())
L840[14:23:34] ⇨ Joins: FlareLine (webchat@125.253.101.85)
L841[14:24:21] ⇨ Joins: Koward (~Koward@2a02:2788:344:2d0:c4c6:e20:5028:8089)
L842[14:25:29] ⇦ Quits: FlareLine (webchat@125.253.101.85) (Client Quit)
L843[14:25:51] ⇨ Joins: FlareLine (kiwiirc@125.253.101.85)
L844[14:26:04] <FlareLine> Anyone got any information on crop trampling?
L845[14:26:24] <FlareLine> i.e. how to prevent it?
L846[14:27:24] ⇨ Joins: nxsupert (nxsupert@2001:19f0:6800:8161:1337:c0de:4:11fe)
L847[14:33:09] *** Keridos is now known as Keridos|away
L848[14:34:38] <quadraxis> revive https://github.com/MinecraftForge/MinecraftForge/pull/2466
L849[14:36:00] <quadraxis> FlareLine --^
L850[14:36:52] <FlareLine> Ta @quadraxis
L851[14:38:16] <quadraxis> probably just needs retargeting to 1.10.x branch
L852[14:38:52] *** Jezza|Nom is now known as Jezza
L853[14:39:21] <FlareLine> Eh, I'll have a screw around with it and make a small mod to combat it, I'm just so sick of trampling arrrghh
L854[14:40:53] ⇨ Joins: PolarizedIons_ (~Polarized@168.235.88.38)
L855[14:42:25] *** Keridos|away is now known as Keridos
L856[14:44:00] ⇨ Joins: Woodstone (~quassel@188.166.5.73)
L857[14:49:47] <FlareLine> @quadraxis Not sure if this event exists anymore, don't know where to actually go with this, would you be able to help a little bit more?
L858[14:49:56] ⇦ Quits: PolarizedIons (~Polarized@ip4da49ab9.direct-adsl.nl) (Quit: PolarizedIons)
L859[14:50:38] <quadraxis> the PR wasn't merged
L860[14:50:54] <quadraxis> it doesn't seem like there was anything wrong with it
L861[14:51:02] *** PolarizedIons_ is now known as PolarizedIons
L862[14:51:10] <quadraxis> just got closed when lex killed the master branch
L863[14:52:04] <quadraxis> I left a comment asking the author if they're still interested
L864[14:52:49] <quadraxis> if they don't care, then either remake the patches yourself or ask someone here to do it
L865[14:52:57] <FlareLine> Perhaps I can develop my own event using this code somehow?
L866[14:53:12] <FlareLine> Does that sound like a feasible thing to do?
L867[14:53:48] <Ordinastie> doesn't sound like you have any programming knowledge :s
L868[14:54:12] <FlareLine> Yeah I do, just I haven't really done much with Forge
L869[14:55:01] *** fry is now known as fry|sleep
L870[14:57:04] <FlareLine> I'm not looking for a lecture on my programming skills, I'm just looking for a little bit of help :\
L871[14:57:46] <Ordinastie> if you do know how to code, sure no problem
L872[14:57:52] <Ordinastie> it's just that sentence : <FlareLine> Perhaps I can develop my own event using this code somehow?
L873[14:57:55] <Ordinastie> that made me wonder
L874[14:58:12] ⇨ Joins: KnightMiner (~KnightMin@107-1-23-59-ip-static.hfc.comcastbusiness.net)
L875[14:58:34] <FlareLine> Nah it's just I'm not sure what to do about all this 'patch' stuff, I've never worked with it before.
L876[14:59:02] <Ordinastie> you're not really supposed to do anything with it
L877[14:59:07] <FlareLine> What I'm not sure of is how to implement the TrampleEvent when there's no hook for it
L878[14:59:14] <Ordinastie> you can't
L879[14:59:29] <FlareLine> So there's no way to do this?
L880[15:00:19] ⇦ Quits: tankcr (~KRoy.Loca@97.115.183.101) (Read error: Connection reset by peer)
L881[15:00:24] <Ordinastie> not really
L882[15:00:50] <Ordinastie> not without using dangerous means that are purposefully forbidden to talk about in this channel
L883[15:01:25] <FlareLine> Yeah I see
L884[15:01:45] <FlareLine> I'm still surprised nothing's been done about it for a long time
L885[15:01:49] <quadraxis> the 'right' thing to do is get the hook into forge
L886[15:02:36] <FlareLine> Does that mean custom building forge?
L887[15:02:50] <Ordinastie> that means making a PR
L888[15:03:01] <Ordinastie> doing it right
L889[15:03:05] <Ordinastie> and hoping it gets pulled
L890[15:03:14] <FlareLine> Hm
L891[15:03:39] <quadraxis> tbh there doesn't seem any reason the original can't be pulled
L892[15:03:48] <quadraxis> it just needs retargeting
L893[15:04:04] <Koward> One does not simply get its hook into Forge. There is evil there that does not sleep, and the Great Lex is ever watchful.
L894[15:05:01] <gigaherz> one does simply get hooks into forge
L895[15:05:04] <gigaherz> you jsut haveto justify them
L896[15:05:10] <gigaherz> show why they are useful for mods
L897[15:05:15] <FlareLine> Eh, I think I'll leave it to the more experienced contributors here, seems like I'd just screw something up somewhere
L898[15:05:19] <gigaherz> and show that they won't negatively impact general gameplay
L899[15:05:26] <gigaherz> (such as slowing down the game)
L900[15:05:46] <gigaherz> that's how one learns, though, FlareLine ;P
L901[15:06:18] <FlareLine> Never done anything like that before, unless someone's willing to take me through it, I don't think I'd do a good enough job
L902[15:06:30] <gigaherz> well
L903[15:06:35] <FlareLine> But I would really appreciate it if someone did want to take me through it
L904[15:06:35] <quadraxis> also you may have to bother people so your PR isn't forgotten for 6 months and then inadvertantly deleted >_>
L905[15:06:37] <gigaherz> first step is to clone the forge repository
L906[15:06:41] <gigaherz> and run "gradlew setupForge"
L907[15:07:14] <gigaherz> then load the projects folder as an eclipseworkspace, or load the two projects into some existing workspace (I recommend the former)
L908[15:07:19] <gigaherz> you'll see there's two projects
L909[15:07:21] <gigaherz> Clean, and Forge
L910[15:07:25] <gigaherz> Clean is the vanilla code, decompiled
L911[15:07:29] <PitchBright> You don't hook into Forge. Forge hooks into you.
L912[15:07:32] <gigaherz> Forge has the patches applied
L913[15:07:34] <gigaherz> then
L914[15:07:39] <gigaherz> you edit the forge code
L915[15:07:43] <gigaherz> if you are editing vanilla
L916[15:07:49] <gigaherz> try to keep the patches as self-contained as possible
L917[15:07:53] <gigaherz> so that it's easy to port them over
L918[15:08:04] ⇦ Quits: PolarizedIons (~Polarized@168.235.88.38) (Quit: Quitting.)
L919[15:08:12] <gigaherz> and do not EVER modify anything else on the file
L920[15:08:15] ⇨ Joins: PolarizedIons (~Polarized@168.235.88.38)
L921[15:08:23] <gigaherz> no adding or removing imports -- use explicit package names
L922[15:08:30] <gigaherz> no reformatting AT ALL
L923[15:08:45] <quadraxis> gigaherz, what they want is https://github.com/MinecraftForge/MinecraftForge/pull/2466
L924[15:08:45] <gigaherz> you can make use of existing files like ForgeHooks
L925[15:08:48] <gigaherz> to place the real implementation
L926[15:09:14] <gigaherz> ah
L927[15:09:20] <FlareLine> Yeah
L928[15:09:23] <quadraxis> but in a pullable form
L929[15:09:25] <gigaherz> that's quite a good example of a clean hook
L930[15:09:30] <gigaherz> FlareLine: in your case
L931[15:09:38] <FlareLine> See I've got all of this information
L932[15:09:44] <gigaherz> clone/fork that branch
L933[15:09:47] <FlareLine> But I'm still a little stumped on how to go about things
L934[15:09:50] <FlareLine> Yep
L935[15:09:55] <gigaherz> into a local folder
L936[15:10:03] <gigaherz> then rebase into forge 1.10.2
L937[15:10:06] <gigaherz> (the branch)
L938[15:10:46] <gigaherz> the patch line will PROBABLY not match up correctly
L939[15:11:03] <gigaherz> when you run "gradlew setupForge"
L940[15:11:05] <gigaherz> in which case
L941[15:11:12] <gigaherz> you'll have to edit the file from within eclipse
L942[15:11:19] <FlareLine> So when I fork the branch
L943[15:11:19] ⇦ Quits: SanAndreasP (~SanAndrea@ip-2-201-3-132.web.vodafone.de) (Quit: See ya)
L944[15:11:23] <gigaherz> using the copy in the *FORGE* project (never clean)
L945[15:11:28] <FlareLine> It'll come with all gradle and stuff yeah?
L946[15:11:31] <gigaherz> yes
L947[15:11:44] <gigaherz> everything you need to run "gradlew setupForge" is there in the repository
L948[15:11:45] <FlareLine> I don't need to fork the whole project
L949[15:11:48] <gigaherz> and will be copied into the forks
L950[15:11:53] <gigaherz> that's the thing
L951[15:11:56] <gigaherz> when you fork, you fork
L952[15:11:58] <gigaherz> everything
L953[15:12:00] <gigaherz> including all the history
L954[15:12:01] <FlareLine> oic
L955[15:12:02] <gigaherz> that's how git works
L956[15:12:04] <FlareLine> ty for the help btw
L957[15:12:24] <FlareLine> Yeah I tried to use git when I started out modding a bit but I never really got the whole gist of it all
L958[15:12:27] <gigaherz> the point is
L959[15:12:31] <gigaherz> you want to fork that dude's repository
L960[15:12:43] <gigaherz> and then pull from the proper one
L961[15:12:45] <gigaherz> and then rebase
L962[15:12:47] <gigaherz> so in your local copy
L963[15:12:50] <gigaherz> you'll want two remotes
L964[15:12:55] <gigaherz> your fork (I'll call origin)
L965[15:13:01] <gigaherz> and the main repository (I'll call upstream)
L966[15:13:12] <Ordinastie> seriously, just remke from the begining, that'll be way simpler
L967[15:13:22] <gigaherz> probably, lol
L968[15:13:25] <Ordinastie> it's one line
L969[15:13:26] <FlareLine> :(
L970[15:13:30] <gigaherz> but these are steps you'll want to follow regardless
L971[15:13:35] <gigaherz> just instead of your fork being based on that dude's branch
L972[15:13:41] <bartman> well don't clone without --depth 1
L973[15:13:46] <gigaherz> it will be based on the main repository also
L974[15:14:02] <FlareLine> So I've forked the 1.10 branch
L975[15:14:44] <FlareLine> Wtf I don't have git windows anymore
L976[15:15:07] <FlareLine> I just kinda follow what the guy has done yeah?
L977[15:15:18] <FlareLine> Then make a pr with my new code?
L978[15:16:16] <gigaherz> yup
L979[15:16:28] <gigaherz> but what Iw as trying to explain
L980[15:16:29] <gigaherz> the process is
L981[15:16:32] <FlareLine> Okay I'll message again if I run into any issues
L982[15:16:33] <gigaherz> gradlew setupForge
L983[15:16:38] <gigaherz> will apply the patches to the clean code
L984[15:16:44] <FlareLine> ok
L985[15:16:45] <gigaherz> in order to generate the forge code
L986[15:16:50] <gigaherz> then you edit this forge code
L987[15:16:52] <gigaherz> and afterward
L988[15:16:58] <gigaherz> you run "gradlew genPatches"
L989[15:17:11] <gigaherz> and you probably want to have built and run the result to test that it works ;P
L990[15:17:14] ⇨ Joins: ThePsionic (~ThePsioni@ip5457f909.direct-adsl.nl)
L991[15:17:20] <FlareLine> and it will generate patches for forge with my new patch included?
L992[15:17:25] <gigaherz> yup
L993[15:17:28] <gigaherz> you edit the vanilla code
L994[15:17:29] <FlareLine> ok i get it now
L995[15:17:33] <gigaherz> and it generates the patch lines for you
L996[15:17:38] <gigaherz> then after genPatches is done
L997[15:17:43] <gigaherz> you can commit & push & PR
L998[15:18:11] <gigaherz> make sure you didn't modify anything unexpected
L999[15:18:24] <FlareLine> Only things related to my feature
L1000[15:18:31] <gigaherz> yes
L1001[15:18:35] <gigaherz> but like, the things I said earlier
L1002[15:19:16] <FlareLine> So what I need to add, is the line in ForgeHooks
L1003[15:19:27] <FlareLine> And add a new event class?
L1004[15:21:43] <gigaherz> AND a test mod
L1005[15:21:56] <gigaherz> a "testcase" for this feature
L1006[15:21:57] <FlareLine> Yeah to test it with a subscribeevent
L1007[15:22:03] <gigaherz> that shows that it works and how it works
L1008[15:22:07] <FlareLine> Or whatever
L1009[15:22:15] <FlareLine> Do I need to upload this testcase?
L1010[15:22:43] <gigaherz> yes
L1011[15:22:56] <gigaherz> put it in the test/debug folder alongside the other testcases
L1012[15:23:13] <gigaherz> https://github.com/MinecraftForge/MinecraftForge/tree/1.10.x/src/test/java/net/minecraftforge/debug
L1013[15:24:33] <FlareLine> So I just setup forge like I do when I create a mod?
L1014[15:24:35] <FlareLine> eclipse*
L1015[15:24:59] ⇨ Joins: howtonotwin (~howtonotw@r75-110-22-15.gvllcmtc01.gnvlnc.ab.dh.suddenlink.net)
L1016[15:26:06] ⇨ Joins: Naiten (Naiten@77.35.163.203)
L1017[15:33:29] <barteks2x> to simulate slow IO I ended up creating RAID 1 array out of 10 devices (that are actually files on one disk)
L1018[15:33:38] ⇦ Quits: jordibenck (~jordi@86.89.212.184) (Quit: Leaving)
L1019[15:33:50] * gigaherz facepalms
L1020[15:34:01] <gigaherz> couldn't you just have a mixing for the disk IO functions in java?
L1021[15:34:05] <gigaherz> mixin*
L1022[15:34:11] <gigaherz> or in your db library
L1023[15:34:13] <barteks2x> I want to make sure it really happens in real life
L1024[15:34:24] <barteks2x> I already know it can happen if I add the delay in code
L1025[15:34:34] <howtonotwin> o_O
L1026[15:35:01] <gigaherz> heh
L1027[15:35:21] <gigaherz> btw barteks2x, wouldn't it have worked to use some old usb flash drive?
L1028[15:35:30] ⇦ Quits: Naiten (Naiten@77.35.163.203) (Read error: Connection reset by peer)
L1029[15:35:34] <barteks2x> my oldest flash drive is still too fast
L1030[15:35:37] <gigaherz> lol
L1031[15:35:42] <howtonotwin> ...
L1032[15:36:08] <barteks2x> I probably could fly a few days and finally see it happen once but I don't want to wait that long
L1033[15:36:08] <FlareLine> https://thepb.in/p/BghPxA4A4zyHY
L1034[15:36:22] <howtonotwin> install git
L1035[15:36:23] <FlareLine> Error when trying to run 'gradlew setupForge'
L1036[15:36:35] <gigaherz> you have two choices
L1037[15:36:39] <gigaherz> 1. make sure git is in the PATH
L1038[15:36:55] <gigaherz> 2. copy git.exe from "git for windows" in the forge folder
L1039[15:37:04] <barteks2x> if that raid array is still too fast,I will move it to my old flash drive
L1040[15:37:09] <gigaherz> option #2 is a hack and will have other issues
L1041[15:37:16] <gigaherz> but it's a workaround if you don't want to do #1 (like me)
L1042[15:37:23] <gigaherz> oh and
L1043[15:37:23] <howtonotwin> There's an env variable for setting something directly I think
L1044[15:37:25] <gigaherz> normal PATH won't work
L1045[15:37:29] <howtonotwin> GIT_BRANCH=master maybe
L1046[15:37:32] <gigaherz> you must set it in the SYSTEM path
L1047[15:37:37] <howtonotwin> *1.10
L1048[15:37:40] <howtonotwin> or whatever
L1049[15:37:42] <gigaherz> which is why I refuse to do it
L1050[15:37:51] <bartman> set PATH=%PATH%;c:\progra~1\git\bin\git.exe
L1051[15:37:56] <gigaherz> nope that won't work
L1052[15:37:57] <IoP> if using windows git for windows asks if git/other tools should be added into path
L1053[15:37:58] <bartman> this is widnows right
L1054[15:38:03] <gigaherz> and no
L1055[15:38:04] <bartman> er
L1056[15:38:05] <gigaherz> that's not valid either
L1057[15:38:06] <gigaherz> XD
L1058[15:38:09] <bartman> don't need git.exe
L1059[15:38:14] <FlareLine> Git for windows hasn't asked for anything to be added to path
L1060[15:38:15] ⇦ Quits: Ipsis (~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk) (Ping timeout: 384 seconds)
L1061[15:38:22] <gigaherz> FlareLine: the installer has a page
L1062[15:38:25] <howtonotwin> Open git bash
L1063[15:38:27] <gigaherz> that asks where it shoudl be visible
L1064[15:38:28] <howtonotwin> and do it that way
L1065[15:38:37] <gigaherz> "git bash only" is the default
L1066[15:38:51] <gigaherz> howtonotwin: I believe editing the PATH variable on the local environment won't work
L1067[15:39:04] <gigaherz> since gradle spawns projects without inheriting the env
L1068[15:39:04] <howtonotwin> Never said anything about PATH :P
L1069[15:39:16] <bartman> well edit the system path then
L1070[15:39:21] <gigaherz> yeah, nothx.
L1071[15:39:26] <gigaherz> git doesn't belong there.
L1072[15:39:43] <gigaherz> so I use that workaround
L1073[15:39:45] <gigaherz> ;P
L1074[15:39:49] <bartman> I think thats what I did
L1075[15:39:56] <bartman> when I used windows
L1076[15:40:12] ⇨ Joins: ScottehBoeh (~ScottehBo@104.238.169.24)
L1077[15:40:13] <howtonotwin> Final conclusion: use git bash and throw cmd into the trash can where it belongs
L1078[15:40:18] <ScottehBoeh> Good day
L1079[15:40:32] <bartman> or just use linux
L1080[15:40:34] <bartman> :)
L1081[15:40:37] <howtonotwin> <ScottehBoeh> Good day
L1082[15:40:48] <ScottehBoeh> LOL Who here uses cmd
L1083[15:41:16] <FlareLine> Use the workaround?
L1084[15:41:18] <IoP> Final conclusion 2: It's stupid to invoke git from build script
L1085[15:41:23] <FlareLine> Will that be okay for what I'm doing
L1086[15:41:35] <ScottehBoeh> is it someones first time using a Repository?
L1087[15:41:44] <ScottehBoeh> I'd be more than happy to halp.
L1088[15:41:49] <gigaherz> howtonotwin: how does git bash help in this case?
L1089[15:42:19] <gigaherz> IoP: morel ike it's stupid to *require* git to build
L1090[15:42:26] <FlareLine> Scotteh I'm trying to make a patch so I can add a new Event to forge
L1091[15:42:28] <FlareLine> Well a PR
L1092[15:42:33] <gigaherz> "if git found, use version, else use placeholder"
L1093[15:42:54] <FlareLine> I'm a little rusty with the whole git thing
L1094[15:45:34] <FlareLine> With the system path, I point it to the 'cmd' folder, the one with git.exe in it right?
L1095[15:46:41] <bartman> yes in enviromental variables edit path and add it to the end
L1096[15:46:55] <bartman> then open a new command prompt and should be gtg
L1097[15:47:26] <FlareLine> It mentions something about being built for 1..4
L1098[15:47:29] <FlareLine> 1.9.4*
L1099[15:47:32] <bartman> ant isn't required anymore is it?
L1100[15:48:05] <FlareLine> 'This mapping snapshot_nodoc_XXXX was designed for MC 1.9.4! ...'
L1101[15:48:07] <howtonotwin> that's fine ignore it
L1102[15:48:12] <FlareLine> Alrighty
L1103[15:52:44] <FlareLine> Holy batman it's almost 7am and I haven't slept
L1104[15:55:08] <FlareLine> Okay so once I've got setupForge complete, I setup eclipse right?
L1105[15:55:19] <FlareLine> How do I do that sorry?
L1106[15:56:11] <PaleoCrafter> http://c78437.try.invisionpower.com/ slowly getting there
L1107[15:56:17] <barteks2x> looks like IO speed doesn't matter... I think when it starts writing data to disk reading chunks will block until it's finished. There is still the short time between removing it from unloadedChunksMap and writing it to disk - it needs to open region file and write the data to byte array. Is it really a bug if it never happens in real world?
L1108[16:03:33] *** Abrar|gone is now known as AbrarSyed
L1109[16:04:38] <gr8pefish> looking good paleo
L1110[16:04:57] ⇦ Quits: founderio (~Thunderbi@p200300C4E3C10B0056BE9ECADDDC14FE.dip0.t-ipconnect.de) (Quit: founderio)
L1111[16:05:21] *** V is now known as Vigaro
L1112[16:05:35] <PaleoCrafter> thanks
L1113[16:08:35] <FlareLine> if I want to make a PR for a feature I'm adding, do I add my code into the Forge project in the src/java folder?
L1114[16:08:52] <FlareLine> Or in the debug folder
L1115[16:09:53] <FlareLine> http://prntscr.com/clldzj
L1116[16:13:24] ⇨ Joins: hehe (uid43090@id-43090.ealing.irccloud.com)
L1117[16:13:38] * hehe meow
L1118[16:14:01] <hehe> porting form 1.7.10 -> 1.10
L1119[16:14:05] <hehe> yuck
L1120[16:14:11] <gr8pefish> agreed
L1121[16:14:35] <gr8pefish> Anyone know where CapabilityManager.INSTANCE.register(myCapability) should be called from exactly?
L1122[16:14:37] ⇦ Quits: phroa (phroa@173.254.236.155) (Ping timeout: 192 seconds)
L1123[16:14:58] <barteks2x> so should I report a vanilla bug that I know can't possibly be reeproduced because it may never happen?
L1124[16:15:48] ⇦ Quits: avgJoe (Elite17280@this.bnc.isnt.from.chi-town.elitebnc.org) (Quit: EliteBNC free bnc service - http://elitebnc.org - be a part of the Elite!)
L1125[16:16:49] <FlareLine> Could anyone help me with a PR for a new Event please?
L1126[16:18:07] <thor12022> gr8pefish: https://github.com/MinecraftForge/MinecraftForge/blob/1.10.x/src/test/java/net/minecraftforge/test/TestCapabilityMod.java#L40
L1127[16:20:46] ⇨ Joins: phroa (phroa@173.254.236.155)
L1128[16:22:31] <gr8pefish> Thanks thor12022, that's what I expected, and yet I'm still getting an issue. Time to track it down I guess. I'm trying to register to my capability to have the functionality of old IEEPs, but I keep getting a NPE when MC tries to saveWorldInfoWithPlayer.
L1129[16:22:48] ⇦ Quits: FlareLine (kiwiirc@125.253.101.85) (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
L1130[16:23:50] <howtonotwin> FlareLine: MC source is the src/main/java folder, forge is in main-java
L1131[16:24:18] <howtonotwin> test-java is where you put test mods like the TestCapabilityMod
L1132[16:24:56] <howtonotwin> If you modify the mc source you must run gradle genPatches to generate the diffs under patches
L1133[16:25:10] <howtonotwin> the mc source code is ignored by git and only the patches matter
L1134[16:27:29] <howtonotwin> oh he left >.<
L1135[16:27:38] <howtonotwin> I totally saw that
L1136[16:27:48] <gr8pefish> xD
L1137[16:28:28] <gigaherz> [23:14] (hehe): porting form 1.7.10 -> 1.10
L1138[16:28:28] <gigaherz> [23:14] (hehe): yuck
L1139[16:28:38] <hehe> yes?
L1140[16:28:39] <gigaherz> mostly 1.7.10 (and older)'s fault ;P
L1141[16:28:50] <hehe> Im just having issues with blockstates
L1142[16:29:05] <gigaherz> how so?
L1143[16:29:08] <hehe> im trying to add a block with no other states
L1144[16:29:18] <howtonotwin> no properties means variant "normal"
L1145[16:29:22] <gigaherz> if it has no states, then don't implement blockstates
L1146[16:29:25] <gigaherz> it will just have "normal"
L1147[16:29:33] <gigaherz> (and "inventory")
L1148[16:29:43] <howtonotwin> not really
L1149[16:30:03] <gigaherz> (but that's not really used by the block, only by the corresponding ItemBlock)
L1150[16:30:05] <howtonotwin> inventory is for the item
L1151[16:30:23] ⇦ Quits: Koward (~Koward@2a02:2788:344:2d0:c4c6:e20:5028:8089) (Quit: Leaving)
L1152[16:30:31] <howtonotwin> and I think the "normal" model works for items too
L1153[16:32:18] <howtonotwin> yep, "minecraft:block/block" defines all the default transforms for the item form
L1154[16:32:39] <gigaherz> I think that's just because
L1155[16:32:47] <howtonotwin> so you really only need the one variant for the simplest blocks
L1156[16:32:49] *** Vigaro is now known as V
L1157[16:32:52] <gigaherz> models/item/whateverblock.json will do "parent":"block/whateverblock"
L1158[16:33:03] <gigaherz> and then "block/whateverblock" has "parent":"block/block"
L1159[16:33:07] <howtonotwin> yep
L1160[16:33:17] *** V is now known as Vigaro
L1161[16:33:20] <gigaherz> I don't think it will work wihtout the item model json file
L1162[16:33:27] <howtonotwin> oh no it works fine
L1163[16:33:50] <howtonotwin> one of the main points of forge's model system is that blockstates work for items
L1164[16:33:54] <hehe> so like what?
L1165[16:33:55] <hehe> {
L1166[16:33:55] <hehe> "forge_marker": 1,
L1167[16:33:55] <hehe> "variants": {
L1168[16:33:55] <hehe> "normal": "minecraft:block/block",
L1169[16:33:55] <hehe> }
L1170[16:33:55] <hehe> }
L1171[16:33:56] <hehe> }
L1172[16:33:56] <hehe> }
L1173[16:34:25] <howtonotwin> variants { normal [{ model: blah }] }
L1174[16:34:50] <gigaherz> no need for forge marker if you aren't using forge features ;P
L1175[16:35:05] <gigaherz> just like whatever vanilla does for like... a note block
L1176[16:35:28] <hehe> variants { normal [{ model: block/blockname.json }] } ???
L1177[16:35:34] <howtonotwin> yes
L1178[16:35:38] <gigaherz> no
L1179[16:35:40] <gigaherz> no .json in it
L1180[16:35:41] <hehe> maybe?
L1181[16:35:44] <hehe> oh ok
L1182[16:35:48] <gigaherz> { "variants": { "normal": { "model": "noteblock" } }}
L1183[16:35:53] <hehe> wait, where does this need to go?
L1184[16:36:01] <hehe> i made a model
L1185[16:36:02] <gigaherz> blockstates/blockregistryname.json
L1186[16:36:12] <hehe> In asses.modid
L1187[16:36:16] <hehe> assets*
L1188[16:36:18] <gigaherz> yes
L1189[16:36:29] <gigaherz> assets/modid/blockstates/...
L1190[16:36:46] <howtonotwin> wait I have an elaboration on models
L1191[16:36:49] <howtonotwin> gimme a moment
L1192[16:37:11] ⇦ Quits: Nitrodev (~Nitrodev@85-23-77-207.bb.dnainternet.fi) (Read error: Connection reset by peer)
L1193[16:37:52] <howtonotwin> https://github.com/howtonotwin/MCForgeDocumentation/tree/models/docs/models
L1194[16:37:58] <howtonotwin> read as much as you need
L1195[16:38:37] <howtonotwin> and Intro to Blockstate JSONs has been rewritten
L1196[16:38:45] <howtonotwin> read that too :P
L1197[16:39:39] <SquareWheel> I'm back to playing with rendering, too. With some trial and error, I worked out the metadata and custom mesh approaches you mentioned yesterday.
L1198[16:39:52] <SquareWheel> Hopefully with that knowledge I'll be able to better understand the more elaborate blockstate approach now.
L1199[16:40:58] <howtonotwin> yay!
L1200[16:41:05] * howtonotwin does happy dance
L1201[16:41:08] <hehe> hrm
L1202[16:41:12] <hehe> still not working
L1203[16:41:21] <gr8pefish> lol I love/hate finding dumb bugs. Had skeleton code as a filler returning null (as I wasn't using the returned value), but since it was an overridden method MC needed one, but the log didn't point me in the right direction at all. Goodbye 2 hours of my life.
L1204[16:41:43] ⇨ Joins: AstralSorcerer (~AstralSor@128.151.114.12)
L1205[16:41:52] <howtonotwin> /TODO comments are magic
L1206[16:41:59] <howtonotwin> *// TODO
L1207[16:42:17] <howtonotwin> darn IRC eating slashes :P
L1208[16:42:25] <howtonotwin> hehe: what's wrong?
L1209[16:42:25] <hehe> lol
L1210[16:42:37] <Subaraki> todo comments are the best :)
L1211[16:42:47] <SquareWheel> Certainly beats FIXME
L1212[16:42:52] <howtonotwin> I was about to */// before I realized * was a buffer xD
L1213[16:42:57] <hehe> someone want to take a look
L1214[16:43:08] <howtonotwin> I will ofc :P
L1215[16:43:28] <hehe> https://github.com/hehe3301/compressionCraft2
L1216[16:43:37] <howtonotwin> for reference, willie_willus and fr_y are both rendering gurus if I'm not around
L1217[16:44:00] <howtonotwin> and don't ping fr_y by accident because he's an op and shouldn't be pinged as per the rules :P
L1218[16:44:56] <howtonotwin> You actually have to register an items model
L1219[16:45:11] <howtonotwin> see: https://github.com/howtonotwin/MCForgeDocumentation/blob/models/docs/models/using.md#using-item-models
L1220[16:45:51] <howtonotwin> this all has to be done from ClientProxy ofc
L1221[16:47:06] <howtonotwin> about https://github.com/hehe3301/compressionCraft2/blob/master/src/main/resources/assets/compressionCraft2/models/block/compressedCobble0.json#L4
L1222[16:47:30] <howtonotwin> needs to be "cc2:blocks/cC0"
L1223[16:47:35] <howtonotwin> unabbreviated ofc
L1224[16:48:11] <howtonotwin> Also names should be snake_case
L1225[16:48:17] <howtonotwin> and this WILL be enforced in 1.11
L1226[16:48:28] <hehe> why the fu...
L1227[16:48:31] <gigaherz> at great annoyance for me
L1228[16:48:32] <gigaherz> ;P
L1229[16:48:34] <howtonotwin> so rename all the textures :P
L1230[16:48:45] * gigaherz dislikes snake_case and kebab-case
L1231[16:49:18] <SquareWheel> I was lucky in that I already did snake_case. camelCase all the way for everything else though. So much uses PascalCase in Java-land.
L1232[16:50:02] <howtonotwin> and uh didn't mean for https://github.com/hehe3301/compressionCraft2/blob/master/src/main/resources/assets/compressionCraft2/blockstates/compressedCobble0.json to be literally that way xD
L1233[16:50:20] <howtonotwin> I use a shorthand for JSON that I thought was pretty obvious but apparently not :P
L1234[16:50:42] <howtonotwin> You're intelligent; I presume you can figure that out yourself?
L1235[16:50:45] <hehe> I program in ADA and fortran90
L1236[16:51:04] <gigaherz> I use C# naming convention in java ;P
L1237[16:51:04] <SquareWheel> Dang
L1238[16:51:17] ⇦ Quits: gr8pefish (~gr8pefish@24-121-241-166.flagcmtk01.res.dyn.suddenlink.net) (Quit: I'm gone)
L1239[16:51:26] <SquareWheel> Yeah, C#/Java conventions are pretty close.
L1240[16:51:30] <gigaherz> well, and style conventions too
L1241[16:51:44] <gigaherz> xcept for methods
L1242[16:51:45] <sham1> Styles are very similar
L1243[16:51:51] <gigaherz> using TitleCase on java methods feels wrong
L1244[16:51:58] <sham1> However there are also differences just like PascalCase for method names
L1245[16:52:20] <gigaherz> but yeah, { in its own line
L1246[16:52:33] <gigaherz> no silly things like "} else {" in my code.
L1247[16:52:35] <hehe> ok fixing jason
L1248[16:52:39] <howtonotwin> :P
L1249[16:52:43] <sham1> silly?
L1250[16:52:57] <SquareWheel> I always write Allman, so doing K&R on this Java project has thrown me for a loop.
L1251[16:53:27] <howtonotwin> Cyclomatic complexity! Burn the heathen! He has refused to see the light of the higher-order! /s
L1252[16:53:54] <sham1> K&R just looks weird
L1253[16:54:06] <sham1> Sometimes curlies are on their own lines and sometimes they are not
L1254[16:54:10] <SquareWheel> Yeah. I find it much easier to parse when the braces line up. But different strokes.
L1255[16:54:11] ⇦ Quits: Subaraki (~Artix@mf763-h01-176-150-102-154.dsl.sta.abo.bbox.fr) (Ping timeout: 384 seconds)
L1256[16:54:19] <hehe> ok, pushed
L1257[16:54:33] <gigaherz> https://github.com/gigaherz/Survivalist/blob/master/src/main/java/gigaherz/survivalist/Survivalist.java#L261
L1258[16:54:46] <gigaherz> random link to a piece of code showing my formatting choices ;P
L1259[16:54:55] <sham1> I just use the Java style
L1260[16:55:13] <SquareWheel> Yeah, I'd like to use my preferred Allman but figured I might as well get used to the convention.
L1261[16:55:18] <sham1> But consistency is all that matters
L1262[16:55:20] <howtonotwin> JSON tags need to be in "tag" too and you need "key": "value"
L1263[16:55:28] <sham1> One may use whatever they wish as long as they are consistent
L1264[16:55:54] <howtonotwin> http://www.json.org/ take a look at the definition on the right
L1265[16:56:12] <SquareWheel> I do violate PEP8 by using tabs in Python though. Not willing to break that habit.
L1266[16:56:31] <howtonotwin> and then there's Haskell
L1267[16:56:47] <howtonotwin> where everything breaks horribly if you don't meticulously care for indents :P
L1268[16:57:27] <sham1> Or you could just use curly braces and semicolons
L1269[16:57:46] <sham1> No need to care about layout in that case
L1270[16:57:48] <howtonotwin> I'll take the indents please :P
L1271[16:58:44] <SquareWheel> I think that's the problem though, sham. If layout doesn't matter, people will effectively not bother doing it well.
L1272[16:59:28] <PaleoCrafter> uhm... wat
L1273[17:00:16] <howtonotwin> PaleoCrafter: https://en.wikibooks.org/wiki/Haskell/Indentation
L1274[17:00:35] <gigaherz> night ppl
L1275[17:00:37] <PaleoCrafter> I know, the wat was directed at SquareWheel :P
L1276[17:00:39] <hehe> for json should i keep the stuff in the brackets on one line?
L1277[17:00:43] <PaleoCrafter> layout doesn't matter in Java et al. and people still make a fuss about doing it "the right way" :P
L1278[17:00:45] *** gigaherz is now known as ghz|afk
L1279[17:00:51] <SquareWheel> Paleo: If whitespace doesn't matter and lexical scope is only determined by braces, people are much more likely to write poorly formed code. It's tough to find an example of sloppy Python, for instance.
L1280[17:00:52] <howtonotwin> JSON's layout doesn't matter one bit
L1281[17:00:58] <howtonotwin> whatever tickles your fancy
L1282[17:01:19] <howtonotwin> just as long is it follows the rules
L1283[17:01:27] <SquareWheel> Maybe I've just written too much HTML/PHP in my time. :p
L1284[17:01:37] <SquareWheel> Getting people to indent well is like herding cats.
L1285[17:02:14] <PaleoCrafter> what were auto-formatters created for if not for this? :P
L1286[17:04:09] <SquareWheel> hehe: You should probably go with compressed_cobble_0 for your blockstate name. That's the snake_case we were discussing earlier.
L1287[17:04:18] <hehe> I know snake case
L1288[17:04:27] <hehe> Once it works i will refactor
L1289[17:04:37] <sham1> Snake? Snake!? SNAKE!!!
L1290[17:04:49] <hehe> Mushroom Mushroom
L1291[17:04:49] <howtonotwin> snek
L1292[17:04:54] <howtonotwin> sneaky snek
L1293[17:05:31] <sham1> to anyone who didn't get it, it was a MGS reference
L1294[17:06:06] <hehe> which was a reference to the original Badgers Badgers Badgers
L1295[17:06:13] <howtonotwin> main = forever $ do putStr "Snake? Snake!? SNAKE!!!"
L1296[17:06:22] <howtonotwin> *!!! "
L1297[17:06:45] <sham1> But I don't want to spam my stdout
L1298[17:07:22] <howtonotwin> concat $ replicate "Snake? Snake!? SNAKE!!! "
L1299[17:07:36] <howtonotwin> *repeat
L1300[17:07:42] <howtonotwin> dammit brain
L1301[17:08:05] <hehe> while(1){cout<<" Snake? Snake!? SNAKE!!! ";}
L1302[17:09:16] <howtonotwin> " !!!EKANS ?!ekanS ?ekanS"oooooooooooooooooooooooo
L1303[17:09:24] <howtonotwin> should be valid ><>
L1304[17:09:30] <hehe> anyway
L1305[17:09:47] <hehe> halp?
L1306[17:09:53] <howtonotwin> yeah what broke?
L1307[17:10:08] <hehe> still trying to get the json figured out
L1308[17:10:16] <howtonotwin> json is like the simplest thing xD
L1309[17:10:22] <howtonotwin> "key": "value"
L1310[17:10:25] <hehe> for people who have used it
L1311[17:10:47] <howtonotwin> where value is an object {}, array [], string "", or number 0.0
L1312[17:10:56] <howtonotwin> so "obj": {}
L1313[17:10:57] <hehe> right,
L1314[17:10:59] <howtonotwin> "arr": []
L1315[17:11:01] <hehe> i made this
L1316[17:11:01] <hehe> https://github.com/hehe3301/compressionCraft2/tree/master/src/main/resources/assets/compressionCraft2
L1317[17:11:04] <howtonotwin> "s": ""
L1318[17:11:08] <howtonotwin> and "num": 0.0
L1319[17:11:51] <PaleoCrafter> arr, pirates do like arrays
L1320[17:12:18] <PaleoCrafter> value can be a boolean too, btw :P
L1321[17:12:19] <howtonotwin> {
L1322[17:12:19] <howtonotwin> "variants": {
L1323[17:12:19] <howtonotwin> "normal": {
L1324[17:12:19] <howtonotwin> "model": "blah"
L1325[17:12:19] <howtonotwin> }
L1326[17:12:19] <howtonotwin> }
L1327[17:12:21] <howtonotwin> }
L1328[17:12:35] <howtonotwin> super simple
L1329[17:12:44] <howtonotwin> there is basically no complexity in JSON
L1330[17:13:18] <howtonotwin> and JSON has nulls but we don't really care :P
L1331[17:14:04] <howtonotwin> also you have a giant repository of JSON in the form of MC's assets
L1332[17:14:11] <howtonotwin> and even more on the internet
L1333[17:14:22] <howtonotwin> if you don't get it you'll get it very soon :P
L1334[17:15:29] <barteks2x> Damn minecraft launcher. It should tell me it wants to ask security questions instead of telling me my password is incorrect...
L1335[17:15:29] *** Keridos is now known as Keridos|away
L1336[17:15:58] <howtonotwin> I once found out that the launcher seems to have a limit on pass length that is shorter than that on mojang.com
L1337[17:16:03] <howtonotwin> idek
L1338[17:16:37] <barteks2x> I couldn't login from launcher. Logged in from website, it asked security questions because "I logged in first time from that computer".Then I could login from launcher
L1339[17:17:05] <howtonotwin> http://img.pandawhale.com/86918-Shia-LaBeouf-magic-gif-SNL-dou-qiOs.gif
L1340[17:17:26] <barteks2x> If I really had new computer each time such website tells me that - I would have a lot of comoputers already
L1341[17:17:37] *** Keridos|away is now known as Keridos
L1342[17:18:12] *** PaleoCrafter is now known as PaleOff
L1343[17:18:20] <howtonotwin> paste this into your browsers console :P http://hastebin.com/yesuxonoli.js
L1344[17:19:07] <hehe> ok, got a block but the textures are ALL wrong
L1345[17:19:17] <howtonotwin> black+magenta
L1346[17:19:19] <howtonotwin> ?
L1347[17:19:22] <hehe> yes
L1348[17:19:28] <howtonotwin> yeah thats the missing texture
L1349[17:19:34] <hehe> i am aware
L1350[17:19:36] <ThePsionic> howtonotwin: You're a fan of JSFuck I see
L1351[17:19:41] <howtonotwin> "fan"
L1352[17:19:49] <howtonotwin> IDTTMWYTTM
L1353[17:19:51] <hehe> see aforementioned "All Wrong"
L1354[17:20:24] <howtonotwin> check the stacktrace
L1355[17:20:28] <ThePsionic> howtonotwin: You're obsessed with JSFuck I see
L1356[17:20:30] ⇦ Quits: KnightMiner (~KnightMin@107-1-23-59-ip-static.hfc.comcastbusiness.net) (Ping timeout: 186 seconds)
L1357[17:20:35] <howtonotwin> should be complaining about something
L1358[17:20:45] <howtonotwin> *stacktrace -> log
L1359[17:20:58] <howtonotwin> the log tends to be flooded with stacktraces if you mess up your models :P
L1360[17:21:31] *** amadornes is now known as amadornes[OFF]
L1361[17:22:14] ⇦ Quits: ThePsionic (~ThePsioni@ip5457f909.direct-adsl.nl) (Quit: Leaving)
L1362[17:22:39] * hehe checks
L1363[17:23:23] <hehe> only authentication stuff
L1364[17:23:40] <howtonotwin> eh?
L1365[17:23:47] <howtonotwin> push again and I'll scan again
L1366[17:24:20] <hehe> pushed
L1367[17:25:15] <howtonotwin> if you place the block is it still broken?
L1368[17:25:22] <hehe> yes
L1369[17:25:33] <howtonotwin> well first register your item models :P
L1370[17:25:50] <howtonotwin> https://github.com/howtonotwin/MCForgeDocumentation/blob/models/docs/models/using.md#using-item-models
L1371[17:26:52] <howtonotwin> and do get your proxies up
L1372[17:27:03] <howtonotwin> all model stuff is clientside
L1373[17:27:57] <howtonotwin> https://github.com/hehe3301/compressionCraft2/blob/master/src/main/resources/assets/compressionCraft2/blockstates/compressedCobble0.json#L4
L1374[17:28:01] <howtonotwin> dingdingdingdin
L1375[17:28:03] <howtonotwin> *g
L1376[17:28:15] * g sits on howtonotwin
L1377[17:28:19] <howtonotwin> qualify the model name with the resource domain
L1378[17:28:25] <howtonotwin> lol @ g
L1379[17:28:39] <howtonotwin> you have to expect pings with a name like that :P
L1380[17:28:39] <g> it's okay
L1381[17:28:41] <g> I get this a lot
L1382[17:28:43] <g> :P
L1383[17:29:09] <howtonotwin> if you don't qualify a RL with a domain, it basically always defaults to minecraft
L1384[17:29:19] <hehe> that goes in the quotation as "domain:blah"
L1385[17:29:27] <howtonotwin> the only exception off the top of my head is setRegistryName
L1386[17:29:30] <howtonotwin> yes
L1387[17:30:16] <howtonotwin> and you should format the blockstate JSON the same way you did the one in models/block; the discrepancy is annoying :P
L1388[17:31:28] <hehe> maybe i made a mistake but they are are different brace levels on each
L1389[17:31:41] <howtonotwin> wut
L1390[17:31:46] <howtonotwin> no I meant the style
L1391[17:31:53] <howtonotwin> spaces after :
L1392[17:31:58] <howtonotwin> indents the same way
L1393[17:31:58] <hehe> oh
L1394[17:32:22] <hehe> done to all not in ""
L1395[17:32:27] <hehe> nada
L1396[17:32:33] <hehe> still broken
L1397[17:32:40] <howtonotwin> logs?
L1398[17:32:50] <howtonotwin> also don't restart MC every time you change models
L1399[17:32:54] <howtonotwin> F3+T is golden
L1400[17:33:07] <howtonotwin> F3+Q is help IIRC
L1401[17:33:26] <hehe> there was this
L1402[17:33:32] <hehe> https://www.irccloud.com/pastebin/rcl1p3Qk/
L1403[17:33:46] <howtonotwin> and you haven't registered your item model, so place it when you test it.
L1404[17:33:58] <howtonotwin> that is the one stacktrace you can ignore :P
L1405[17:34:00] <hehe> it is placed
L1406[17:34:26] <howtonotwin> placed = broken then?
L1407[17:34:29] <hehe> https://www.irccloud.com/pastebin/Cnjnf8b2/
L1408[17:34:36] ⇨ Joins: cppchriscpp (~cppchrisc@c-76-24-45-127.hsd1.nh.comcast.net)
L1409[17:34:40] <hehe> I can place the P&B block
L1410[17:34:56] <howtonotwin> [18:30:34] [Client thread/ERROR] [FML]: Exception loading model for variant compressioncraft2:tile.compressedCobble0#normal for blockstate "compressioncraft2:tile.compressedCobble0"
L1411[17:35:01] <howtonotwin> -.-
L1412[17:35:12] <howtonotwin> oh right
L1413[17:35:26] <howtonotwin> getUnlocalizedName means "tile.name"
L1414[17:35:34] <howtonotwin> so you are fucking over everything
L1415[17:35:51] <SquareWheel> Thus the substring() nonsense everybody did before.
L1416[17:36:09] <howtonotwin> The way i do it is I set the reg name first and set the unloc name FROM the reg name
L1417[17:36:20] <kenzierocks> the right way
L1418[17:36:26] <kenzierocks> if i remember correctly
L1419[17:39:19] <howtonotwin> you do this (wrong): https://github.com/hehe3301/compressionCraft2/blob/master/src/main/java/com/hehe/compressionCraft2/blocks/AllBlocks.java#L32
L1420[17:39:24] <hehe> trying with dat fix
L1421[17:39:31] <howtonotwin> I do this (mind the Scala): http://hastebin.com/cupaqofode.scala
L1422[17:39:55] <howtonotwin> note lines 11-12
L1423[17:40:32] <hehe> I will fix this later, I need to leave
L1424[17:40:37] <howtonotwin> alright, ta!
L1425[17:42:22] *** MrKickkiller is now known as MrKick|Away
L1426[17:46:40] ⇦ Quits: iari (~iari___@evana.futhark24.org) (Quit: Leaving)
L1427[17:53:08] ⇨ Joins: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net)
L1428[17:56:54] ⇦ Quits: Samario (~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net) (Quit: You think you are above consequences.)
L1429[18:03:45] *** Vigaro is now known as V
L1430[18:04:12] *** V is now known as Vigaro
L1431[18:15:42] ⇦ Quits: Hanii (~user@35.214.9.51.dyn.plus.net) (Quit: Hanii)
L1432[18:16:30] ⇦ Quits: Jezza (~Jezza@92.206.33.136) (Ping timeout: 186 seconds)
L1433[18:21:38] ⇨ Joins: Hanii (~user@35.214.9.51.dyn.plus.net)
L1434[18:26:22] ⇦ Quits: primetoxinz (~primetoxi@ip68-107-226-229.hr.hr.cox.net) (Remote host closed the connection)
L1435[18:28:33] ⇨ Joins: primetoxinz (~primetoxi@ip68-107-226-229.hr.hr.cox.net)
L1436[18:30:47] ⇦ Quits: ScottehBoeh (~ScottehBo@104.238.169.24) (Ping timeout: 195 seconds)
L1437[18:33:07] ⇦ Quits: CoderPuppy (~cpup@32.218.117.196) (Ping timeout: 195 seconds)
L1438[18:35:07] ⇨ Joins: sinkillerj (~sinkiller@nc-67-232-14-224.dhcp.embarqhsd.net)
L1439[18:35:34] ⇨ Joins: cpup (~cpup@32.218.112.134)
L1440[18:43:14] <barteks2x> The logger setup makes it a bit hard to debug some things using System.out.println() approach...
L1441[18:43:26] <kashike> why?
L1442[18:43:49] <barteks2x> a single output line I ended up with: Populating vanilla cube CubeCoords(-34, 0, 23)... [01:32:45] [Server thread/INFO] [net.minecraft.util.LoggingPrintStream]: [STDOUT]@.(VanillaPopulationProcessor.java:52): false
L1443[18:44:03] <kashike> and?
L1444[18:44:05] <kashike> :p
L1445[18:44:18] <barteks2x> it was supposed to be: Populating vanilla cube CubeCoords(-34, 0, 23)... false
L1446[18:44:25] <barteks2x> it doesn't fit on my screen
L1447[18:44:46] <kashike> so use your actual logger? p
L1448[18:44:47] <kashike> :p
L1449[18:45:15] <barteks2x> The thing is that I WANT to avoif the lengthy logger stuff before actual information
L1450[18:45:31] <kashike> how is it lengthy
L1451[18:45:33] <kashike> [modid]
L1452[18:45:52] <kashike> vs [net.m.u.LPS]: [STDOUT]@.(...)
L1453[18:45:58] <barteks2x> [01:35:15] [File IO Thread/DEBUG] [cubicchunks]: - this is what I get
L1454[18:46:13] <barteks2x> But maybe that's because I had to change log4j xml to even get debug output
L1455[18:46:17] <barteks2x> and I changed it incoreectly
L1456[18:46:26] <kashike> you can change the format
L1457[18:46:54] <barteks2x> in log4j.xml that I don't understand and I dont feel like spending a few hours going through log4j documentation
L1458[18:47:39] <barteks2x> when I try to read anything about configuring log4j, I always feel like it has literally every feature except what I want to do
L1459[18:48:08] <IoP> barteks2x: where do you want to write debug or strace?
L1460[18:48:10] <kashike> <PatternLayout pattern="[%d{HH:mm:ss}] [%level]: %msg%n" />
L1461[18:48:30] ⇦ Quits: cpup (~cpup@32.218.112.134) (Ping timeout: 186 seconds)
L1462[18:48:52] <barteks2x> and where exactly should I put such line?
L1463[18:49:01] <kashike> your log4j.xml
L1464[18:49:04] <kashike> find <PatternLayout pattern="[%d{HH:mm:ss}] [%t/%level]: %msg%n" />
L1465[18:49:08] <kashike> replace it with the abvoe
L1466[18:49:13] <kashike> (removing %t/)
L1467[18:49:19] <kashike> %t = thread
L1468[18:49:22] <barteks2x> IoP: I just want to write some additional logic that won't spam console with unnecessary information by default
L1469[18:49:31] <barteks2x> *logic-->logs
L1470[18:50:23] <IoP> afaik logging to file is done with debug level
L1471[18:50:37] <barteks2x> yes, but I want to be able to see that debug log in idea console
L1472[18:50:58] <barteks2x> that's the only reason I have that hacked together log4j.xml
L1473[18:51:24] <IoP> https://github.com/MinecraftForge/MinecraftForge/blob/1.10.x/src/main/resources/log4j2.xml#L54 change that line
L1474[18:51:35] <barteks2x> I copied it from forge source and modified until it showed debug output
L1475[18:51:53] <IoP> :P
L1476[18:52:28] <barteks2x> so now it looks like this: https://github.com/Barteks2x/CubicChunks/blob/master/src/main/resources/log4j2.xml
L1477[18:54:22] <kashike> https://github.com/Barteks2x/CubicChunks/blob/master/src/main/resources/log4j2.xml#L14
L1478[18:54:29] <kashike> remove %t/ to get rid of thread
L1479[18:55:19] <kashike> barteks2x: https://github.com/Barteks2x/CubicChunks/blob/master/build.gradle#L118
L1480[18:55:22] <kashike> exclude 'log4j2.xml'
L1481[18:55:27] <barteks2x> Thread information is useful..
L1482[18:55:31] <kashike> to answer your comment at the top
L1483[18:55:33] ⇨ Joins: cpup (~cpup@32.218.112.173)
L1484[18:55:50] <kashike> <barteks2x> [01:35:15] [File IO Thread/DEBUG] [cubicchunks]: - this is what I get
L1485[18:55:57] <kashike> thought you meant that was too much
L1486[18:56:04] <kashike> what's the issue with that?
L1487[18:56:23] <barteks2x> I just want to be able to write something to console for debugging that doesn't start with this
L1488[18:56:53] <IoP> barteks2x: or -Dlog4j.configurationFile=<path to .. your configuration file>
L1489[18:57:13] <IoP> as JVM argument. => no need to put that into jar at all
L1490[18:59:23] <barteks2x> I will do it that way now, thanks. I guess the default length of what logger gives must be short enough. Laptops without full hd should die...
L1491[19:07:10] ⇦ Quits: cpup (~cpup@32.218.112.173) (Ping timeout: 186 seconds)
L1492[19:08:15] ⇨ Joins: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se)
L1493[19:13:15] ⇨ Joins: cpup (~cpup@32.218.112.196)
L1494[19:20:17] <SquareWheel> howtonotwin, correct me if I'm wrong here. In ModelDynBucket you need to handle all the baking and caching yourself before using ItemOverrideList, and this all happens in BakedDynBucketOverrideHandler. Is that right?
L1495[19:20:29] <howtonotwin> yes
L1496[19:20:45] <howtonotwin> though I doubt you need something THAT complicated :P
L1497[19:20:59] <howtonotwin> but wait I need to open eclipse to verify everything a bit more surely
L1498[19:21:04] <SquareWheel> Would I need to do the same to create a dynamic item texture?
L1499[19:21:22] <SquareWheel> I mean, I could do it all through a bunch of json. I just wanted to conserve memory/textures.
L1500[19:21:39] <howtonotwin> sorry, BakedDynBucket holds the cache
L1501[19:21:49] <howtonotwin> Map<String, IBakedModel>
L1502[19:22:15] <howtonotwin> and this does NOTHING towards conserving memory/textures
L1503[19:22:26] <howtonotwin> nor should you be worrying about it
L1504[19:22:45] <SquareWheel> Heh, I like to write lean code when I can.
L1505[19:22:51] <howtonotwin> this is MC
L1506[19:22:57] <howtonotwin> running on Java
L1507[19:23:00] *** AbrarSyed is now known as Abrar|gone
L1508[19:23:28] <SquareWheel> So I guess this approach is no better on performance because it's still the end result, it's just doing it automatically for you?
L1509[19:23:29] <howtonotwin> you are a wishful thinker if you believe good perf is possible without a monster computer xD
L1510[19:23:47] <howtonotwin> (jk)
L1511[19:24:05] <howtonotwin> and the perf is MUCH higher than it used to be, give Mojang SOME credit
L1512[19:24:15] <SquareWheel> Oh no doubt.
L1513[19:24:40] <SquareWheel> 1.7 was dismal when it first appeared. People forget.
L1514[19:25:01] <howtonotwin> basically it's either a) recompute models every frame and demolish the CPU or b) compute models once and cache them by demolishing RAM
L1515[19:25:11] <howtonotwin> and b doesn't use that much RAM
L1516[19:25:37] ⇦ Quits: cpup (~cpup@32.218.112.196) (Ping timeout: 195 seconds)
L1517[19:26:17] <SquareWheel> So in my case I was planning on having 4 variations of layer0, and 8 variations of layer1. I thought it'd be nicer to generate automatically via this blockstate approach than create all the json files myself.
L1518[19:26:31] <howtonotwin> Can't you just use a blockstate JSON
L1519[19:26:56] <SquareWheel> On an item?
L1520[19:26:58] <howtonotwin> ItemMeshDefinition mapping to variants like #a=3,b=3
L1521[19:26:59] <howtonotwin> yes
L1522[19:27:04] <howtonotwin> blockstate is a misnomer under forge
L1523[19:27:10] ⇨ Joins: cpup (~cpup@32.218.112.224)
L1524[19:27:11] <howtonotwin> it's true for vanilla
L1525[19:27:22] <howtonotwin> but Forge does dark magic to make it more flexible
L1526[19:27:34] <SquareWheel> I tested using setCustomMeshDefinition, but found I couldn't set layers independently. It set the whole MRL.
L1527[19:27:39] <howtonotwin> yeah
L1528[19:27:46] <howtonotwin> use a blockstate json for the rest
L1529[19:28:10] <SquareWheel> So that brings me back to using ItemOverrideList, which we discussed yesterday.
L1530[19:28:19] ⇦ Quits: Nymphaea (~maria@BMTNON3746W-LP130-04-1279272677.dsl.bell.ca) (Ping timeout: 384 seconds)
L1531[19:28:29] <howtonotwin> { defaults { model "item/generated" } variants { layer0 { var1 {...} ... } layer1 { var1 {...} ... } } }
L1532[19:28:51] <howtonotwin> and inside each variant textures { layerx "something" }
L1533[19:29:34] <howtonotwin> and then IMD for ItemStack -> mod:item#layer0=var1,layer1=var3
L1534[19:29:59] <howtonotwin> and finally ModelBakery.loadItemVariants (or something like) on all 32 MRLs
L1535[19:31:01] <howtonotwin> for(l0 <- 1 to 8; l1 <- 1 to 4) ModelBakery.loadItemVariants(new MRL(item.getRegistryName(), s"layer0=${l0},layer1=${l1}"))
L1536[19:31:18] <howtonotwin> (two nested for loops and string substitution)
L1537[19:32:06] <howtonotwin> got that?
L1538[19:32:19] <SquareWheel> Just working out acronyms! IMD = ItemMeshDefinition. I got that working in a test earlier.
L1539[19:32:54] <SquareWheel> So I'm actually building on that existing system instead of doing it in a completely different way like I thought.
L1540[19:33:02] <howtonotwin> yep
L1541[19:33:05] <howtonotwin> also this is more flexible
L1542[19:33:21] <howtonotwin> because resourcepacks can override each variant individually
L1543[19:33:35] <SquareWheel> Does DynBucket not do it this way because it can't know all the possible states in advance? I see it loads from the fluid registry.
L1544[19:33:38] ⇦ Quits: Snapples (uid167569@id-167569.highgate.irccloud.com) (Quit: Connection closed for inactivity)
L1545[19:33:41] <howtonotwin> yes
L1546[19:33:45] <howtonotwin> that's exactly why
L1547[19:33:53] ⇨ Joins: VikeStep (~VikeStep@101.184.243.180)
L1548[19:33:56] <howtonotwin> DynBucket is DYNamic
L1549[19:34:15] ⇨ Joins: Everseeking (~Everseeki@pool-100-6-106-71.pitbpa.fios.verizon.net)
L1550[19:34:19] <howtonotwin> its models MUST be computed at runtime because fluids can be added by any mod
L1551[19:34:50] <SquareWheel> Okay. So I don't actually have to worry about the caching or baking after all. Just a more clever use of loadItemVariants.
L1552[19:34:54] <howtonotwin> while your item has exactly 32 possible states and therefore is suited to plain old blockstates
L1553[19:35:01] <howtonotwin> yes
L1554[19:36:30] <SquareWheel> Does that become an issue under more extreme conditions? I only have 32 possible states, but that could easily grow.
L1555[19:37:19] <SquareWheel> I guess at that time I'd need to do the CPU thrashing option you mentioned earlier, instead of ram consuming.
L1556[19:37:32] <howtonotwin> well with this you'll need about 4 lines*12 variant defs+20-ish other lines = ~68 lines which is nothing
L1557[19:37:52] ⇦ Quits: cpup (~cpup@32.218.112.224) (Ping timeout: 195 seconds)
L1558[19:37:53] <howtonotwin> (note: I can't estimate)
L1559[19:38:09] <howtonotwin> and vanilla MC has literally hundreds of models it barely impinges on memory
L1560[19:38:18] <howtonotwin> have you SEEN the debug world?
L1561[19:38:28] <howtonotwin> and that's JUST blocks
L1562[19:39:20] <SquareWheel> So basically don't worry about it unless dealing with millions of blockstates. And then find a more unique solution.
L1563[19:39:34] <howtonotwin> if you have millions you probably want a TESR lol :P
L1564[19:40:08] <SquareWheel> I figured there'd be a way to more dynamically mix and match MRLs, but I guess with how it's all baked together that's not doable.
L1565[19:40:10] ⇨ Joins: cpup (~cpup@32.218.112.239)
L1566[19:40:24] <howtonotwin> What's "dynamic" about what you're doing?
L1567[19:40:29] <howtonotwin> Everything is static
L1568[19:40:55] <howtonotwin> there are a predetermined 32 item forms and there is nothing to dynamically add there
L1569[19:41:03] <SquareWheel> Well not much yet. I was just hoping to get away without loading a bunch of jsons/textures with mostly redundant info.
L1570[19:41:12] <howtonotwin> redundant?
L1571[19:41:25] <howtonotwin> there shouldn't be redundancy in what I suggested
L1572[19:41:29] ⇦ Quits: KGS (~KGS@h-155-4-129-249.na.cust.bahnhof.se) (Ping timeout: 198 seconds)
L1573[19:41:55] <howtonotwin> and remember, every model in code is a model resourcepacks can't alter
L1574[19:42:35] <howtonotwin> for buckets it's a necessary trade-off and anyway you'd be hard pressed to model it better
L1575[19:42:57] <howtonotwin> for your own item there's no reason to chain packs down to MC's 3D textures
L1576[19:44:36] <SquareWheel> By redundancy, I just meant that I'd have a lot of jsons with similar info. But I do see why it's done the way it is.
L1577[19:44:48] <howtonotwin> you wouldn't though?
L1578[19:45:21] <SquareWheel> Sorry?
L1579[19:46:48] <howtonotwin> erm one moment
L1580[19:46:49] <SquareWheel> I might have misunderstood you there. By json I actually meant blockstates earlier though.
L1581[19:47:10] <howtonotwin> you'd only have one blockstate with ~70 lines
L1582[19:47:13] <howtonotwin> less than
L1583[19:47:48] <howtonotwin> and redundancy I GUESS would look pretty high but why build a 1000 line system for it when you can do it so much faster and more flexible?
L1584[19:48:50] ⇦ Quits: JustRamon (~JustRamon@168.235.88.38) (Quit: Quitting.)
L1585[19:48:51] ⇦ Quits: PolarizedIons (~Polarized@168.235.88.38) (Quit: Quitting.)
L1586[19:48:52] <SquareWheel> By line here, do you mean the JSON lines of code? I think there was a communication breakdown at some point.
L1587[19:49:12] <howtonotwin> yep
L1588[19:49:30] <howtonotwin> I just wrote an example for your case and it's about ~25 lines
L1589[19:49:37] <SquareWheel> I don't mind the JSON lines. It's actually quite a useful system for modders/resource packer authors.
L1590[19:49:38] <howtonotwin> "about ~25" >.<
L1591[19:49:59] <howtonotwin> tada! http://hastebin.com/sanowobilu.json
L1592[19:50:04] *** Vigaro is now known as V
L1593[19:50:12] *** V is now known as Vigaro
L1594[19:50:31] <SquareWheel> Oh cool, thanks
L1595[19:51:10] <howtonotwin> let's see if my model ADT is any good at this kinda stuff...
L1596[19:51:23] <howtonotwin> oh crap wait I didn't implement blockstates
L1597[19:51:26] <howtonotwin> I said nothing
L1598[19:51:29] <howtonotwin> >.>
L1599[19:51:31] <howtonotwin> <.<
L1600[19:54:39] <SquareWheel> So then to switch to one of these, I'd return a different MRL (using the same path as was registed) in the ItemMeshDefinition, right?
L1601[19:54:50] <SquareWheel> registered*
L1602[19:54:51] <howtonotwin> yes
L1603[19:55:15] *** Abrar|gone is now known as AbrarSyed
L1604[19:55:46] <SquareWheel> Gotta say, 24 hours ago I didn't understand how rendering worked at all. Starting to feel like it's making sense now.
L1605[19:55:55] <howtonotwin> so INSTEAD OF (i.e. completely not using) ModelLoader.setCustomMRL, you'd use setCustomIMD and then loop over MRLs and register in ModelBAKERY
L1606[19:56:33] ⇨ Joins: PolarizedIons (~Polarized@vauff.me)
L1607[19:57:11] <SquareWheel> And when I register MRLs like this, it knows to pull from the blockstate file?
L1608[19:57:16] <howtonotwin> yes
L1609[19:57:27] <howtonotwin> well it ALWAYS tries to pull from the blockstate :P
L1610[19:57:36] <howtonotwin> iff it fails does it go to models/item
L1611[19:57:44] <howtonotwin> iff is intentional
L1612[19:58:02] <SquareWheel> That's awesome. I thought I was going to have to use ItemOverrideList and do all this stuff manually.
L1613[19:58:35] <howtonotwin> if you had to do everything manually rainwarrior would be drowning in the salty tears of modders :P
L1614[20:00:29] <SquareWheel> Okay well I think I have enough to try again. Cheers again for the info.
L1615[20:01:11] <howtonotwin> np
L1616[20:02:31] ⇨ Joins: LexLap (~LexManos@2602:306:3bf8:a2f0:1078:8091:9c91:42b5)
L1617[20:02:31] MineBot sets mode: +o on LexLap
L1618[20:07:25] ⇦ Quits: Abastro (~Abastro@112.166.128.227) (Read error: Connection reset by peer)
L1619[20:07:49] ⇨ Joins: Abastro (~Abastro@112.166.128.227)
L1620[20:36:23] *** Keridos is now known as Keridos|away
L1621[20:42:59] <SquareWheel> Hrmm. From my item blockstate, am I loading the texture directly, or am I loading a model which in turn loads the texture?
L1622[20:44:46] ⇦ Quits: raoulvdberge (uid95673@id-95673.richmond.irccloud.com) (Quit: Connection closed for inactivity)
L1623[20:46:52] *** Vigaro is now known as V
L1624[20:47:01] *** V is now known as Vigaro
L1625[20:47:06] <williewillus> depends
L1626[20:47:47] <SquareWheel> Oh?
L1627[20:48:10] <williewillus> actually it doesn't really depend. the modelloader just throws all the texture paths it finds into a collection
L1628[20:48:17] <williewillus> and everything in that collection is loaded at once
L1629[20:49:31] <SquareWheel> Ah alright. So if using a blockstate for my item, I can get rid of the model jsons then. And just have the layer info nested inside it.
L1630[20:50:05] <williewillus> yes that's possible. if you care about customizability though don't put muiltiple definitions into the same blockstate json
L1631[20:50:22] <SquareWheel> Customizability from resource packs?
L1632[20:50:28] <williewillus> yea
L1633[20:50:52] <SquareWheel> This is the blockstate howto linked me earlier: http://hastebin.com/sanowobilu.json
L1634[20:50:58] <SquareWheel> It seems to include the texture info directly.
L1635[20:51:06] <SquareWheel> How would I rewrite that to use models instead?
L1636[20:51:35] <williewillus> what an interesting model lol. i think the way it is is okay in this case
L1637[20:51:43] <williewillus> unless you wanted to make 32 different models :P
L1638[20:51:52] <SquareWheel> Nope, that's what I was hoping to avoid.
L1639[21:00:16] <SquareWheel> Looks like it's still trying to load it from a model json. I see an error for it in the log.
L1640[21:01:08] <williewillus> what's "it"
L1641[21:01:23] <SquareWheel> A watering can item. :)
L1642[21:01:31] <williewillus> what do you setCustomMRL to?
L1643[21:01:36] <howtonotwin> wait a watering can?
L1644[21:01:52] <howtonotwin> Are the models continuous in some form?
L1645[21:02:08] <SquareWheel> They're just layers on top of each other. A base, and a graphic on top.
L1646[21:02:08] <howtonotwin> Like a continuous spectrum of depleting cans?
L1647[21:02:19] <williewillus> because the way you're laying this out you have to setCustomMRL to quite a specific name
L1648[21:02:23] <howtonotwin> alright, carry on :P
L1649[21:02:35] <howtonotwin> the data is from NBT
L1650[21:02:43] <howtonotwin> I told him to ItemMeshDefinition it
L1651[21:03:05] <williewillus> show the log w errors
L1652[21:03:50] <SquareWheel> Log shows: Exception loading model for variant wateringcans:watering_can#layer0=gold for item "wateringcans:watering_can", normal location exception:
L1653[21:03:59] <williewillus> yeah wrong MRL being built
L1654[21:04:07] <SquareWheel> I tried the MRL in two ways: ModelResourceLocation(WateringCans.MODID + ":watering_can#layer0=iron", "inventory") and ModelResourceLocation(WateringCans.MODID + ":watering_can", "layer0=iron")
L1655[21:04:12] ⇦ Quits: IceDragon (~ThatGuy@184.170.42.135) (Ping timeout: 195 seconds)
L1656[21:04:14] <williewillus> yes but how about layer1?
L1657[21:04:19] <howtonotwin> ^
L1658[21:04:25] <SquareWheel> Oh, I decided to simplify it to one layer for testing.
L1659[21:04:27] <SquareWheel> Just to get it loading.
L1660[21:04:32] <howtonotwin> :P
L1661[21:04:33] <williewillus> that blockstate json is generating these MRL's: "mymod:blockstatejsonname#layer0=2,layer1=4" ...
L1662[21:04:44] <williewillus> so you need to remove it from the blockstate json as well
L1663[21:04:45] <howtonotwin> but you are asking for something else
L1664[21:05:43] <SquareWheel> In my blockstate and the setCustomMeshDefinition I just have the one layer for testing.
L1665[21:05:53] <williewillus> it has to match your blockstate json
L1666[21:06:10] <SquareWheel> Which part doesn't match?
L1667[21:06:19] <howtonotwin> also ew string manips + resource locs
L1668[21:06:29] <williewillus> your blockstate json does not have avariant called layer0=iron. it has variants called "layer0=1,layer1=4", "layer0=2,layer1+1", etc.
L1669[21:06:33] <SquareWheel> Some hardcoding while testing. I'll use the registry name.
L1670[21:06:40] <williewillus> an MRL is a variant in a blockstate json
L1671[21:06:57] <williewillus> and it generates all combinations of them
L1672[21:07:01] <SquareWheel> Oh sorry, I should have shown my current blockstate. I did rename the numbers to materials.
L1673[21:07:08] <williewillus> paste the updated one
L1674[21:07:38] <SquareWheel> http://pastebin.com/junXVt0H
L1675[21:07:54] <SquareWheel> Again, just one layer for testing.
L1676[21:08:22] <williewillus> what is the log when you do it the second way you mentioned?
L1677[21:08:29] <williewillus> the first way is wrong, but that second one should have worked
L1678[21:08:31] <williewillus> check your file name
L1679[21:08:42] <howtonotwin> *privilege /s
L1680[21:09:16] <SquareWheel> watering_can.json for the blockstate. watering_can_base_iron.png for the texture.
L1681[21:10:13] <williewillus> whats the log when you do MRL("mymod:watering_can", "layer0=iron"). it shouldve worked. did you registerItemVariants?
L1682[21:10:25] <SquareWheel> Log: Exception loading model for variant wateringcans:watering_can#layer0=gold for item "wateringcans:watering_can", normal location exception
L1683[21:10:40] <williewillus> did you registerItemVariants before setting the mesher?
L1684[21:10:41] <SquareWheel> I did register it with the same MRL path.
L1685[21:10:44] <williewillus> okay
L1686[21:10:45] <williewillus> hm
L1687[21:10:46] <SquareWheel> No, after I think.
L1688[21:10:59] <SquareWheel> setCUstomMesh and then registerItemVariants.
L1689[21:11:17] <SquareWheel> That worked in my non-blockstate test though.
L1690[21:11:23] <williewillus> it shouldnt matter before or after i don't think
L1691[21:12:28] <howtonotwin> nope, just building up two unrelated maps
L1692[21:13:04] <SquareWheel> Sidenote, but can I change that layer0=gold to material=gold? I assume that's just an identifier and doesn't actually set the layer.
L1693[21:13:09] <howtonotwin> yep
L1694[21:13:23] <SquareWheel> Awesome
L1695[21:13:35] <howtonotwin> I should stop using so many easily confused names...
L1696[21:13:44] <SquareWheel> And acronyms. ;)
L1697[21:13:53] <howtonotwin> first acronyms, then my JSON shorthand, and now this xD
L1698[21:15:57] <howtonotwin> post the entire log maybe?
L1699[21:16:33] <howtonotwin> and also your IMD and registering code.
L1700[21:16:52] ⇦ Quits: Girafi (Girafi@0x555178eb.adsl.cybercity.dk) ()
L1701[21:16:53] <SquareWheel> I could push the code to github.
L1702[21:16:55] ⇦ Quits: flappy (~flappy@a88-113-155-120.elisa-laajakaista.fi) (Quit: /0)
L1703[21:17:01] <howtonotwin> Or gists
L1704[21:17:14] <howtonotwin> I like gists because you don't have to deal with git :P
L1705[21:17:36] ⇦ Quits: quadraxis (~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net) (Remote host closed the connection)
L1706[21:17:39] <SquareWheel> Well it'd just be a commit/push for me. But I hate pushing broken code.
L1707[21:17:53] <howtonotwin> you can have multiple files in a gist
L1708[21:18:08] <SquareWheel> Complete log: http://pastebin.com/yKiCpbK3
L1709[21:18:10] <SquareWheel> I'll grab the code.
L1710[21:18:28] ⇨ Joins: flappy (~flappy@a88-113-155-120.elisa-laajakaista.fi)
L1711[21:19:32] <howtonotwin> Caused by: java.io.FileNotFoundException: minecraft:models/block/item/generated.json
L1712[21:19:34] <howtonotwin> ???
L1713[21:19:47] <howtonotwin> that can't be good
L1714[21:20:06] <SquareWheel> /block/item?
L1715[21:21:06] <SquareWheel> https://github.com/WesCook/WateringCans/blob/master/src/main/java/ca/wescook/wateringcans/items/ItemWateringCan.java#L47-L48
L1716[21:21:10] <SquareWheel> https://github.com/WesCook/WateringCans/blob/master/src/main/java/ca/wescook/wateringcans/MeshDefinitions.java
L1717[21:22:33] <howtonotwin> Why not lambdas?
L1718[21:22:59] <SquareWheel> Eh, something something anonymous functions?
L1719[21:23:12] <SquareWheel> Oh, for the mesh definitions?
L1720[21:23:16] <howtonotwin> yes
L1721[21:23:42] <SquareWheel> I dunno. I already had a lot of code in that class. If I can keep it clean I'll probably do so.
L1722[21:27:11] ⇦ Quits: codahq (~codahq@c-73-65-219-228.hsd1.ut.comcast.net) (Ping timeout: 206 seconds)
L1723[21:28:35] <SquareWheel> Is it safe to assume a computer ghost is involved somehow?
L1724[21:29:25] <howtonotwin> maybe
L1725[21:31:09] ⇨ Joins: quadraxis (~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net)
L1726[21:33:57] <SquareWheel> From what I can tell, it seems to be looking for a model still.
L1727[21:34:00] <SquareWheel> Caused by: java.io.FileNotFoundException: wateringcans:models/item/watering_can.json
L1728[21:34:19] <howtonotwin> no
L1729[21:34:24] <howtonotwin> it is loading the blockstate
L1730[21:34:36] <howtonotwin> and the blockstate is loading item/generated from the looks of it
L1731[21:34:43] <howtonotwin> and something breaks because of that
L1732[21:35:08] <howtonotwin> you can see that the stacktrace passes through VariantLoader
L1733[21:35:15] <howtonotwin> which is used for blockstates
L1734[21:35:25] <SquareWheel> Ah, alright
L1735[21:36:02] <SquareWheel> I'll try updating Forge.
L1736[21:40:03] <howtonotwin> conditional breakpoint ModelLoader.VariantLoader.loadModel(ResourceLocation) for your MRL and step through and see what breaks
L1737[21:40:13] <howtonotwin> for that matter I'll just clone your repo and test :P
L1738[21:40:53] ⇨ Joins: CoderPuppy (~cpup@32.218.113.107)
L1739[21:42:26] <SquareWheel> No difference on the latest Forge.
L1740[21:42:37] ⇦ Quits: cpup (~cpup@32.218.112.239) (Ping timeout: 384 seconds)
L1741[21:42:53] ⇨ Joins: theFlaxbeard (~theFlaxbe@184.97.151.56)
L1742[21:44:57] <howtonotwin> tfw the warning count on a project is easily related to the progress made in compiling it
L1743[21:45:04] <theFlaxbeard> A user is reporting a bug where I am attempting to cast another capability data class to my capability's data class - how can this possibly be occuring if I'm getting the data using entity.getCapability and passing my Capability instance?
L1744[21:45:41] <SquareWheel> I'd like to eliminate warnings if possible. Don't understand all of them yet.
L1745[21:45:54] <SquareWheel> Some seem wrong altogether.
L1746[21:46:05] <howtonotwin> talking about Forge itself :P
L1747[21:48:44] <howtonotwin> I just realized how appropriate your name is for this channel
L1748[21:48:48] <howtonotwin> oh
L1749[21:48:49] <howtonotwin> OH
L1750[21:48:56] <SquareWheel> Suddenly it all makes sense
L1751[21:48:58] <howtonotwin> - howtonotwin, 2016
L1752[21:54:15] ⇦ Quits: CoderPuppy (~cpup@32.218.113.107) (Ping timeout: 206 seconds)
L1753[21:55:23] ⇨ Joins: cpup (~cpup@32.218.113.120)
L1754[21:58:55] *** brandon3055|Zz is now known as brandon3055
L1755[22:06:17] ⇦ Quits: theFlaxbeard (~theFlaxbe@184.97.151.56) (Killed (NickServ (GHOST command used by theFlaxbeard2)))
L1756[22:11:54] ⇦ Quits: diesieben07 (~diesieben@2001:19f0:6400:8965:5400:ff:fe07:8777) (Ping timeout: 182 seconds)
L1757[22:12:22] ⇨ Joins: diesieben07 (~diesieben@abrarsyed.com)
L1758[22:12:40] ⇦ Quits: auenfx4 (David@DC-24-199.bpb.bigpond.com) (Ping timeout: 182 seconds)
L1759[22:13:03] ⇦ Quits: wolfmitchell (~wolfmitch@149.56.182.12) (Ping timeout: 182 seconds)
L1760[22:13:21] ⇨ Joins: auenf (David@DC-24-199.bpb.bigpond.com)
L1761[22:13:35] ⇦ Quits: Aedda (~aedda@2600:3c00::19:cace) (Ping timeout: 206 seconds)
L1762[22:14:38] ⇨ Joins: Aedda (~aedda@2600:3c00::19:cace)
L1763[22:17:04] ⇨ Joins: wolfmitchell (~wolfmitch@149.56.182.12)
L1764[22:20:01] ⇦ Quits: Lathanael|Away (~Lathanael@p54960B7F.dip0.t-ipconnect.de) (Ping timeout: 384 seconds)
L1765[22:20:18] ⇨ Joins: Lathanael|Away (~Lathanael@p549613B0.dip0.t-ipconnect.de)
L1766[22:23:20] ⇨ Joins: McJty (~jorrit@94-225-203-206.access.telenet.be)
L1767[22:27:52] ⇨ Joins: KnightMiner (~KnightMin@107-1-23-59-ip-static.hfc.comcastbusiness.net)
L1768[22:36:14] ⇦ Quits: McJty (~jorrit@94-225-203-206.access.telenet.be) (Quit: Leaving)
L1769[22:37:35] ⇦ Quits: bilde2910 (bilde2910@51.174.170.178) (Ping timeout: 384 seconds)
L1770[22:37:43] ⇨ Joins: McJty (~jorrit@94-225-203-206.access.telenet.be)
L1771[22:39:26] ⇦ Quits: KnightMiner (~KnightMin@107-1-23-59-ip-static.hfc.comcastbusiness.net) (Ping timeout: 186 seconds)
L1772[22:45:43] <SquareWheel> I've concluded it's probably just a computer ghost.
L1773[22:45:46] <SquareWheel> Nothing to be done about that.
L1774[22:47:52] ⇨ Joins: agowa339 (~Thunderbi@p549187AB.dip0.t-ipconnect.de)
L1775[22:48:02] ⇦ Quits: agowa338 (~Thunderbi@p54918D47.dip0.t-ipconnect.de) (Ping timeout: 195 seconds)
L1776[22:48:02] *** agowa339 is now known as agowa338
L1777[22:50:33] ⇨ Joins: KnightMiner (~KnightMin@107-1-23-59-ip-static.hfc.comcastbusiness.net)
L1778[22:51:19] <howtonotwin> :P I'll debug it tomorrow
L1779[22:51:32] ⇦ Quits: howtonotwin (~howtonotw@r75-110-22-15.gvllcmtc01.gnvlnc.ab.dh.suddenlink.net) (Quit: Good night!)
L1780[22:51:43] <SquareWheel> Would appreciate any insight you could offer. :)
L1781[22:51:50] <SquareWheel> I'll push an update with some code cleanup, too.
L1782[22:59:09] <SquareWheel> Wait. Is it supposed to be item/generated? Isn't it builtin/generated?
L1783[23:00:31] <SquareWheel> Well that renders...
L1784[23:05:16] ⇨ Joins: tankcr (~KRoy.Loca@97.115.183.101)
L1785[23:12:21] ⇨ Joins: bilde2910 (bilde2910@51.174.170.178)
L1786[23:12:51] ⇦ Quits: quadraxis (~quadraxis@cpc77293-basf12-2-0-cust699.12-3.cable.virginm.net) (Quit: ChatZilla 0.9.92 [Firefox 49.0.1/20160922113459])
L1787[23:14:46] ⇦ Quits: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net) (Read error: Connection reset by peer)
L1788[23:28:14] ⇨ Joins: p455w0rd (~p455w0rd@172.77.92.84)
L1789[23:49:00] ⇨ Joins: Naiten (Naiten@5.143.60.129)
L1790[23:50:33] *** Vigaro is now known as V
L1791[23:58:27] ⇨ Joins: Girafi (~Girafi@0x555178eb.adsl.cybercity.dk)
<<Prev Next>> Scroll to Top