<<Prev Next>> Scroll to Bottom
Stuff goes here
L1[00:03:49] *** Keridos is now known as Keridos|away
L2[00:03:55] ⇦ Quits: sinkillerj (~sinkiller@nc-67-232-14-224.dhcp.embarqhsd.net) (Quit: またね)
L3[00:04:07] ⇦ Quits: TechnicianLP (~Technic@p4FE56995.dip0.t-ipconnect.de) (Ping timeout: 384 seconds)
L4[00:04:37] *** Keridos|away is now known as Keridos
L5[00:07:09] *** TTFTCUTS is now known as TTFT|Away
L6[00:11:19] ⇨ Joins: Hunterz (~hunterz@2001:af0:8000:1c01:6af7:28ff:fe37:5d6a)
L7[00:21:00] ⇦ Quits: agowa338 (~Thunderbi@p5491858F.dip0.t-ipconnect.de) (Ping timeout: 190 seconds)
L8[00:24:21] <tterrag> finally got to use glScissor :P http://i.imgur.com/ycG1Ld5.gifv
L9[00:25:59] <jrbudda> i used a triangle_fan once
L10[00:26:02] <jrbudda> felt weird
L11[00:26:56] <tterrag> as have I. it has limited uses but it's pretty good at those uses :P
L12[00:28:25] <jrbudda> it will draw the hell out of a circle
L13[00:35:09] ⇨ Joins: Abastro (~Abastro@110.70.59.85)
L14[00:37:36] ⇨ Joins: VikeStep (~VikeStep|@203.15.33.192)
L15[00:37:50] ⇦ Quits: VikeStep (~VikeStep|@203.15.33.192) (Remote host closed the connection)
L16[00:38:22] *** mrkirby153 is now known as kirby|gone
L17[00:39:55] ⇨ Joins: Actuarius (~Actuarius@195.91.246.187)
L18[00:39:55] MineBot sets mode: +v on Actuarius
L19[00:42:03] *** kroeser|away is now known as kroeser
L20[00:52:11] ⇦ Quits: Slind (~Slind@static.168.103.243.136.clients.your-server.de) (Remote host closed the connection)
L21[00:52:50] ⇨ Joins: Slind (~Slind@static.168.103.243.136.clients.your-server.de)
L22[00:52:56] ⇦ Quits: Drullkus (~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net) (Quit: Night o/)
L23[00:52:59] *** kroeser is now known as kroeser|away
L24[00:54:00] ⇦ Quits: alekso56 (~znc@2001:464b:c2aa:0:745d:45ff:fe3b:a098) (Ping timeout: 190 seconds)
L25[00:56:02] ⇨ Joins: alekso56 (~znc@2001:464b:c2aa:0:745d:45ff:fe3b:a098)
L26[00:57:37] *** minecreatr is now known as Mine|dreamland
L27[00:58:22] ⇦ Quits: Cooler (~CoolerExt@117.207.163.188) (Quit: Leaving)
L28[01:04:05] ⇦ Quits: MattDahEpic (~MattDahEp@65-128-125-182.hlrn.qwest.net) (Ping timeout: 186 seconds)
L29[01:38:41] ⇨ Joins: Jezza (~Jezza@bps-gw.hrz.tu-chemnitz.de)
L30[01:38:45] ⇦ Quits: IceDragon (~ThatGuy@69.160.106.76) (Ping timeout: 186 seconds)
L31[01:40:25] ⇨ Joins: blood|sleep (unknown@ool-4574115b.dyn.optonline.net)
L32[01:41:00] ⇦ Quits: [NK]Ghost (~GFt@72.64.90.31) (Ping timeout: 190 seconds)
L33[01:41:52] *** blood|sleep is now known as blood__
L34[01:43:00] <jrbudda> ok.. oddball question. When installed does Forge's .library jar file contain the full modified game, or is the vanilla jar referenced in the version.json ?
L35[01:43:20] ⇦ Quits: blood_ (unknown@ool-4574115b.dyn.optonline.net) (Ping timeout: 190 seconds)
L36[01:43:40] *** Keridos is now known as Keridos|away
L37[01:43:59] *** kroeser|away is now known as kroeser
L38[01:46:36] <jrbudda> my question is specific to 1.7.10 if that matters
L39[01:48:16] ⇦ Quits: simon816 (~simon816@ec2-54-85-252-2.compute-1.amazonaws.com) (Remote host closed the connection)
L40[01:53:23] *** kroeser is now known as kroeser|away
L41[01:55:45] ⇨ Joins: KGS (~KGS@h-155-4-135-249.na.cust.bahnhof.se)
L42[01:59:54] <MCPBot_Reborn> [TEST CSV] Pushing snapshot_20160628 mappings to Forge Maven.
L43[01:59:58] <MCPBot_Reborn> [TEST CSV] Maven upload successful for mcp_snapshot-20160628-1.10.2.zip (mappings = "snapshot_20160628" in build.gradle).
L44[01:59:58] ⇦ Quits: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com) (Read error: Connection reset by peer)
L45[02:00:08] <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/
L46[02:00:16] ⇨ Joins: airbreather (~airbreath@d149-67-99-43.nap.wideopenwest.com)
L47[02:02:31] ⇦ Quits: blood__ (unknown@ool-4574115b.dyn.optonline.net) ()
L48[02:04:21] ⇦ Quits: killjoy (~killjoy@2606:a000:1118:c06d:a144:5e50:2482:fb52) (Ping timeout: 192 seconds)
L49[02:04:35] ⇨ Joins: abab9579 (~Abastro@221.138.238.111)
L50[02:05:55] *** Keridos|away is now known as Keridos
L51[02:08:50] ⇨ Joins: Kenny164 (~pkinney@5.80.60.119)
L52[02:09:13] ⇨ Joins: robedpixel (~robedpixe@bb42-60-79-185.singnet.com.sg)
L53[02:11:03] ⇦ Quits: Abastro (~Abastro@110.70.59.85) (Ping timeout: 384 seconds)
L54[02:12:34] <robedpixel> whats the new method for registering items in 1.9.4?
L55[02:15:21] <sham1> GameRegisty.register(K object);
L56[02:17:02] ⇨ Joins: Upthorn (~ogmar@108-204-125-173.lightspeed.frokca.sbcglobal.net)
L57[02:21:34] <robedpixel> onarmortick has been deprecated for 1.9.4?
L58[02:22:30] <sham1> does it have a deprecation annotation
L59[02:25:48] <robedpixel> no but i get a "method does not override method from its superclass"
L60[02:26:03] <robedpixel> when trying to override onarmortick
L61[02:26:13] <sham1> ... that dles not mean it is not deprecated
L62[02:26:31] <sham1> You just have to change the signature
L63[02:28:04] ⇦ Quits: tips48|away (~tips48@nope.bz) (Network ban)
L64[02:28:31] <robedpixel> the signatures are correct though?
L65[02:28:54] <sham1> are they
L66[02:29:02] <sham1> Have you checked
L67[02:30:02] ⇨ Joins: Abastro (~Abastro@221.138.238.111)
L68[02:30:05] ⇦ Quits: abab9579 (~Abastro@221.138.238.111) (Read error: Connection reset by peer)
L69[02:30:08] <robedpixel> oh wait nvm
L70[02:30:19] <robedpixel> just needed to remove static
L71[02:30:54] <robedpixel> now i just need to know the new methods for two other functions
L72[02:31:10] <robedpixel> getting the id of a potion and ModelResourceLocation
L73[02:31:11] <tterrag> use your IDE please
L74[02:32:36] <sham1> ^
L75[02:33:20] <Cazzar> or at least, use javadocs
L76[02:33:26] <robedpixel> ok
L77[02:35:56] *** Keridos is now known as Keridos|away
L78[02:36:27] *** Keridos|away is now known as Keridos
L79[02:42:01] ⇦ Quits: Larry1123 (Larry1123@irc.larry1123.net) (Ping timeout: 186 seconds)
L80[02:44:49] ⇦ Quits: robedpixel (~robedpixe@bb42-60-79-185.singnet.com.sg) (Remote host closed the connection)
L81[02:48:19] *** AEnterpriseAFK is now known as AEnterprise
L82[02:50:26] *** Keridos is now known as Keridos|away
L83[02:50:30] *** Keridos|away is now known as Keridos
L84[02:53:14] ⇨ Joins: Larry1123 (Larry1123@irc.larry1123.net)
L85[02:53:47] ⇨ Joins: VikeStep (~VikeStep@101.184.243.180)
L86[02:58:00] ⇦ Quits: alekso56 (~znc@2001:464b:c2aa:0:745d:45ff:fe3b:a098) (Ping timeout: 190 seconds)
L87[02:59:46] ⇨ Joins: alekso56 (~znc@2001:464b:c2aa:0:745d:45ff:fe3b:a098)
L88[03:05:02] *** Keridos is now known as Keridos|away
L89[03:07:30] ⇨ Joins: Aroma1997 (~Aroma1997@104.131.97.244)
L90[03:10:53] *** Keridos|away is now known as Keridos
L91[03:21:17] *** Keridos is now known as Keridos|away
L92[03:21:30] ⇦ Quits: Gil (uid147942@2604:8300:100:200b:6667:5:2:41e6) (Quit: Connection closed for inactivity)
L93[03:21:53] ⇦ Quits: Abastro (~Abastro@221.138.238.111) (Ping timeout: 384 seconds)
L94[03:23:14] *** Keridos|away is now known as Keridos
L95[03:23:33] *** big_Xplosion is now known as big_Xplo|AFK
L96[03:23:55] *** Keridos is now known as Keridos|away
L97[03:24:33] *** Keridos|away is now known as Keridos
L98[03:29:40] ⇦ Quits: bilde2910 (bilde2910@51.174.170.178) (Ping timeout: 190 seconds)
L99[03:29:49] ⇨ Joins: tips48|away (~tips48@nope.bz)
L100[03:31:20] ⇨ Joins: bilde2910 (bilde2910@51.174.170.178)
L101[03:32:11] ⇦ Quits: Dark (~MrDark@cpe-76-181-157-113.columbus.res.rr.com) (Ping timeout: 192 seconds)
L102[03:35:43] ⇦ Quits: Kenny164 (~pkinney@5.80.60.119) (Remote host closed the connection)
L103[03:40:41] *** Keridos is now known as Keridos|away
L104[03:45:42] ⇨ Joins: Ordinastie_ (~Ordinasti@87-231-58-94.rev.numericable.fr)
L105[03:54:33] ⇨ Joins: Nitrodev (~Nitrodev@87-92-75-66.bb.dnainternet.fi)
L106[03:57:37] ⇨ Joins: Dragroth (~Dragroth@dslc-082-083-115-072.pools.arcor-ip.net)
L107[03:58:47] ⇨ Joins: Abastro (~Abastro@221.138.238.111)
L108[04:00:45] ⇨ Joins: Hgrebnednav (~Hgrebnedn@d8D872A6E.access.telenet.be)
L109[04:03:46] ⇦ Quits: brandon3055 (~brandon30@ppp118-210-42-252.lns20.adl2.internode.on.net) (Quit: brandon3055 has left the game!)
L110[04:08:55] ⇦ Quits: Abastro (~Abastro@221.138.238.111) (Ping timeout: 384 seconds)
L111[04:14:22] ⇦ Quits: covers1624 (~covers162@ppp118-210-42-252.lns20.adl2.internode.on.net) (Read error: Connection reset by peer)
L112[04:14:34] ⇨ Joins: covers1624 (~covers162@ppp118-210-42-252.lns20.adl2.internode.on.net)
L113[04:19:36] ⇦ Quits: McJty (~jorrit@94-225-203-206.access.telenet.be) (Quit: Ik ga weg)
L114[04:34:00] ⇦ Quits: Dragroth (~Dragroth@dslc-082-083-115-072.pools.arcor-ip.net) ()
L115[04:35:13] ⇦ Quits: covers1624 (~covers162@ppp118-210-42-252.lns20.adl2.internode.on.net) (Ping timeout: 186 seconds)
L116[04:35:22] ⇨ Joins: covers1624 (~covers162@ppp121-45-21-215.lns20.adl2.internode.on.net)
L117[04:50:35] ⇦ Quits: KGS (~KGS@h-155-4-135-249.na.cust.bahnhof.se) (Ping timeout: 198 seconds)
L118[04:53:26] ⇨ Joins: Abastro (~Abastro@221.138.238.111)
L119[04:56:25] ⇦ Parts: Aroma1997 (~Aroma1997@104.131.97.244) ())
L120[04:59:55] ⇦ Quits: Abastro (~Abastro@221.138.238.111) (Ping timeout: 384 seconds)
L121[05:08:29] ⇨ Joins: Abastro (~Abastro@221.138.238.111)
L122[05:08:52] ⇨ Joins: Cooler (~CoolerExt@117.207.167.210)
L123[05:09:19] ⇨ Joins: simon816 (~simon816@ec2-54-85-252-2.compute-1.amazonaws.com)
L124[05:16:33] *** tterrag is now known as tterrag|ZZZzzz
L125[05:17:58] ⇨ Joins: ichttt (~ichttt@pd95dfd8e.dip0.t-ipconnect.de)
L126[05:18:01] <LatvianModder> lol item.banner lang entries take like... 1/3 of the whole en_US.lang file...
L127[05:24:17] ⇦ Quits: Abastro (~Abastro@221.138.238.111) (Ping timeout: 384 seconds)
L128[05:31:24] ⇨ Joins: Abastro (~Abastro@175.223.17.6)
L129[05:36:21] <kashike> gotta love banners
L130[05:44:07] ⇦ Quits: Hgrebnednav (~Hgrebnedn@d8D872A6E.access.telenet.be) (Ping timeout: 384 seconds)
L131[05:49:30] <Lordmau5> someone gimme a punch bag or something
L132[05:50:34] ⇨ Joins: Sava_ (~Sava@cable-178-148-181-232.dynamic.sbb.rs)
L133[05:51:48] <Sava_> Where can I search for forge field details? Interested in String p_i46081_2_
L134[05:52:06] <Lordmau5> !gf p_i46081_2_
L135[05:52:12] <Lordmau5> or what was the command again?
L136[05:52:13] <Lordmau5> findf?
L137[05:52:17] <Lordmau5> yes findf.
L138[05:52:22] <Lordmau5> !findf p_i46081_2_
L139[05:52:29] <Lordmau5> I tried.
L140[05:52:51] <Ordinastie_> !gp p_i46081_2_
L141[05:53:13] <Lordmau5> method parameter, oh
L142[05:53:18] <kashike> Lordmau5: see !help
L143[05:53:19] <Lordmau5> so !find is universal, that's nice
L144[05:53:20] <kashike> :P
L145[05:53:30] <Lordmau5> yea I PMed the bot
L146[05:54:57] <Sava_> !gp p_i46081_2_
L147[05:56:18] ⇨ Joins: yopu (~yopu@184-89-171-53.res.bhn.net)
L148[05:57:31] <Sava_> Hmm, still can't figure out why is a same string "inventry" passed to all instances of ModelResourceLocation I can find
L149[06:00:18] <ghz|afk> "inventory" is the default variant string for things in item form
L150[06:00:28] <ghz|afk> thanks to forge, you can use other strings
L151[06:00:34] <ghz|afk> and they will load from the blockstate file
L152[06:00:41] <ghz|afk> (even for items!)
L153[06:01:02] ⇨ Joins: sokratis12GR (kiwiirc@62.221.158.165)
L154[06:12:57] <LatvianModder> Thanks to that I dont have item models anymore. Gotta love blockstates
L155[06:13:20] ⇦ Quits: alekso56 (~znc@2001:464b:c2aa:0:745d:45ff:fe3b:a098) (Ping timeout: 190 seconds)
L156[06:15:15] <ghz|afk> LatvianModder: indirectly
L157[06:15:27] <ghz|afk> that also means if you use the same blockstates file for more than one "state"
L158[06:15:34] <ghz|afk> as in, subitems, or different states on one item
L159[06:15:38] ⇨ Joins: alekso56 (~znc@2001:464b:c2aa:0:745d:45ff:fe3b:a098)
L160[06:15:42] <ghz|afk> a resource pack can't replace one
L161[06:15:47] <ghz|afk> without replacing the whole blockstates file
L162[06:16:06] <LatvianModder> Resourcepacks Usually only replace textures, so its fine
L163[06:16:29] <LatvianModder> That also means it will break when I add something, right?
L164[06:18:14] <ghz|afk> yup
L165[06:18:36] <ghz|afk> it's the price of putting the models inside blockstate files
L166[06:18:41] <ghz|afk> rather than in their own json files
L167[06:21:06] ⇨ Joins: PBlock96 (~PBlock96@64.53.13.215)
L168[06:35:50] ⇨ Joins: Coolway99 (~cway@66.212.212.2)
L169[06:37:50] *** linuxdaemon is now known as Fawkes
L170[06:38:06] *** Fawkes is now known as linuxdaemon
L171[06:47:40] ⇨ Joins: Brokkoli (~Brokkoli@p5B23C638.dip0.t-ipconnect.de)
L172[06:52:51] ⇨ Joins: Necr0 (~Necr0@p200300700D46EB0D34B5DEC9C6A68A3A.dip0.t-ipconnect.de)
L173[06:53:48] ⇦ Quits: GildedGames (~GildedGam@ec2-54-92-137-121.compute-1.amazonaws.com) (Remote host closed the connection)
L174[06:54:00] ⇨ Joins: GildedGames (~GildedGam@ec2-54-146-229-97.compute-1.amazonaws.com)
L175[07:00:06] ⇨ Joins: MattDahEpic (~MattDahEp@65-128-125-182.hlrn.qwest.net)
L176[07:01:40] <Coolway99> which is better to use
L177[07:01:47] <Coolway99> EntityPlayer#dimension
L178[07:01:53] <Coolway99> or world.provider.dimension ?
L179[07:02:07] <Coolway99> *dimensionID
L180[07:11:45] ⇨ Joins: Backslash (~Backslash@ip-95-222-125-109.hsi15.unitymediagroup.de)
L181[07:12:16] <Backslash> Hey guys.
L182[07:12:46] <Backslash> Is there any way to install forge on a client without the installer?
L183[07:13:43] <ghz|afk> possible, yes, but not straightforward
L184[07:14:02] <Backslash> could you explain it a little bit more?
L185[07:14:59] <ghz|afk> well you'd need to add a new "version" in the mc versions
L186[07:15:26] <ghz|afk> I don't know the details of what this implies
L187[07:15:27] <Backslash> That should be no problem.
L188[07:15:31] <ghz|afk> https://github.com/MinecraftForge/Installer/blob/master/src/main/java/net/minecraftforge/installer/ClientInstall.java
L189[07:15:35] <ghz|afk> if you want to convert this code
L190[07:15:41] <ghz|afk> into a set of human instructions to follow ;P
L191[07:17:17] <Backslash> I will take a look, but i dont think that its going to help me.. :D
L192[07:17:29] <ghz|afk> well that is exactly the code that does the installing ;P
L193[07:17:43] <ghz|afk> it creates the version folders, writes the version's json file
L194[07:17:44] <Backslash> yeah buts its java :D
L195[07:17:46] <ghz|afk> installs the libraries
L196[07:18:12] <ghz|afk> that's what I meant by "not straightforward"
L197[07:18:29] <ghz|afk> there's no "just drop these files in these folders and done"
L198[07:18:44] <ghz|afk> why do you need to run without the installer?
L199[07:18:48] <ghz|afk> it seems counter-productive
L200[07:19:48] <Backslash> I'm trying to create a small launcher in C#, already got it working to install and launch minecraft with just giing the version number to the launcher, but now i'm getting into problems with forge :/
L201[07:19:57] <Backslash> *giving
L202[07:20:06] ⇨ Joins: Hgrebnednav (~Hgrebnedn@d8d872a6e.access.telenet.be)
L203[07:21:00] <Ordinastie_> if you know C#, you shouldn't have any problem reading java
L204[07:21:15] <ghz|afk> well if you already know C#, why is it... what Ordinastie_ said
L205[07:21:16] <ghz|afk> ;P
L206[07:21:30] <sham1> C# and Java are pretty similar yeah
L207[07:21:51] <Backslash> I'm learning, i'm not an expert in C#.. :P
L208[07:22:20] ⇨ Joins: abab9579 (~Abastro@175.223.16.121)
L209[07:22:30] <sham1> You need to see sharp if you want to learn C#
L210[07:23:07] <Ordinastie_> here is a door [ -], take it
L211[07:23:14] <sham1> Nah
L212[07:23:21] <Backslash> sham1 http://geekshumor.com/wp-content/uploads/2014/06/Developer-Problems1.jpg
L213[07:23:22] <Backslash> ? :D
L214[07:23:45] <sham1> A variation of that indeed
L215[07:24:13] <ghz|afk> the joke would work the other way around too
L216[07:24:20] <ghz|afk> "you'll need glasses if you wnat to C#"
L217[07:24:29] <Backslash> :P
L218[07:24:48] <sham1> Although in reality the languages have so much in common that a decent Java dev can do something nice on C#
L219[07:25:36] <Ordinastie_> the hard part imo, is lack of knowledge about the librairies
L220[07:25:40] <ghz|afk> and the other way around
L221[07:25:54] <sham1> I thought that was implied
L222[07:26:02] <ghz|afk> in both cases
L223[07:26:03] <Backslash> That may be true, but if you just started to learn, its not that easy to read a source :P
L224[07:26:08] <ghz|afk> you spend a lot of time doing things
L225[07:26:16] <sham1> But yeah, different libraries might be a problem
L226[07:26:17] <ghz|afk> and a lot of time going "d'oh!" because of the semantic differences
L227[07:26:23] <ghz|afk> such as the meaning of "protected"
L228[07:26:28] <sham1> Different-ish idioms
L229[07:26:35] <ghz|afk> which for some stupid reason
L230[07:26:38] <ghz|afk> is public to the package in java
L231[07:26:58] <Ordinastie_> hum, no?
L232[07:27:02] <ghz|afk> yes it is.
L233[07:27:05] <sham1> Why they didn't do the protected like in C++, I don't know
L234[07:27:21] <ghz|afk> https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
L235[07:27:23] <ghz|afk> see the table ;p
L236[07:27:39] <ghz|afk> private -> class only
L237[07:27:41] <sham1> Because in C++, protected only has the things show up to inheriting classes
L238[07:27:44] <kashike> protected is package + subclasses
L239[07:27:47] <ghz|afk> no modifier -> class and package
L240[07:27:49] ⇦ Quits: Abastro (~Abastro@175.223.17.6) (Ping timeout: 384 seconds)
L241[07:27:54] <ghz|afk> protected -> clas,s package, and subclasses
L242[07:27:54] <kashike> no modifier = package only
L243[07:27:56] <ghz|afk> public -> all
L244[07:28:05] <Ordinastie_> right, yeah, that's so stupid I forgot about it
L245[07:28:28] <Backslash> a simple question about the forge installer turns into a full topic about programming languages, i just love it :D
L246[07:29:14] <sham1> Welcome to #minecraftforge, where we probably could pull any topic into the Category of programming
L247[07:29:44] <Coolway99> your task: program the entirety of forge in rocks
L248[07:31:26] <ghz|afk> it's technically possible to simulate an electric circuit using pipes, gravity, and water
L249[07:31:51] <Coolway99> which is entirely why they compare the two
L250[07:31:54] <sham1> *sigh* related XKCD https://xkcd.com/505/
L251[07:32:03] <Coolway99> I was about to post that XKCD, sham
L252[07:32:05] <Coolway99> >.>
L253[07:32:06] <abab9579> Only approximately possible.
L254[07:32:33] <ghz|afk> abab9579: ofc, you can't simulate things such as quantum tunneling ;P
L255[07:33:06] <ghz|afk> or electric fields affecting the circuit
L256[07:33:24] <fry> *Turing-Complete
L257[07:33:35] <abab9579> ghz, yes. I just like to say approximation :P
L258[07:33:46] <ghz|afk> but the water pressure is a good approximation for voltage, narrow pipes are a good approximation of resistors, an elastic membrane is a good approximation of a capacitor
L259[07:34:05] <sham1> One could stimulate a modern computer with a pen and paper
L260[07:34:18] <sham1> Lots and lots of paper is required
L261[07:34:23] <sham1> And probably a lot of pens
L262[07:34:24] <Coolway99> one could simulate the universe with a bunch of rocks
L263[07:35:16] <sham1> It is kind of interesting how the turing machine became the basis of computer science
L264[07:35:25] <sham1> As it is only possible as a mathematical consept
L265[07:35:44] <ghz|afk> well it's possible to build one
L266[07:35:52] <ghz|afk> you can dynamically extend the tape as needed
L267[07:35:53] <sham1> One simply does not "have enough tape" to be able to do any arbitrary task
L268[07:35:56] <ghz|afk> by stitching new sections to the ends
L269[07:35:57] <ghz|afk> ;p
L270[07:35:58] <Coolway99> Windows seems to get a good idea if a program has crashed or not
L271[07:36:01] <fry> http://mathoverflow.net/questions/54820/physics-and-church-turing-thesis
L272[07:36:20] <fry> looks like quantum mechanics is compuatable, which is nice
L273[07:36:23] <sham1> The fact that one cannot have infinite memory in their computer
L274[07:36:33] <abab9579> Well, the time when uncountable problem appears.
L275[07:36:44] <sham1> Is uncountable
L276[07:36:46] <sham1> I guess
L277[07:37:39] <sham1> But I could use a turing machine to stimulate Minecraft that stimulates a turing machine
L278[07:37:48] <Coolway99> that simulates minecraft
L279[07:37:51] <sham1> Yes
L280[07:38:01] <Coolway99> sadly, you can't simulate forge XD
L281[07:38:12] <sham1> How so
L282[07:38:12] <ghz|afk> ofc you can
L283[07:38:17] <ghz|afk> look at "Gamemode 4"
L284[07:38:23] <ghz|afk> it was mods, using command blocks and sweat
L285[07:38:38] <ghz|afk> it produced interesting mechanics, and lag
L286[07:38:41] <ghz|afk> lots and lots of lag.
L287[07:38:41] <sham1> And probably few armour stands
L288[07:38:47] <ghz|afk> "few"
L289[07:39:50] <sham1> It is kind of weird how people can mod MC in-game
L290[07:41:17] <fry> "The idea is that the real universe exhibits relativistic phenomenon of which we might take advantage for computational effect, and doing so might take us beyond the Turing barrier. Hogarth and others have described physical models, Malament-Hogarth spacetimes, in which one observer has access to the results of an infinite computation carried out by another in that world." :O
L291[07:44:22] <sham1> The biggest question is about that. Can we solve the halting problem
L292[07:45:09] ⇦ Quits: Hunterz (~hunterz@2001:af0:8000:1c01:6af7:28ff:fe37:5d6a) (Quit: Leaving.)
L293[07:46:14] ⇨ Joins: Abastro (~Abastro@221.138.238.111)
L294[07:48:22] <ghz|afk> hmmm where would be the right place to have some code that needs to run when a TE is loaded into the world
L295[07:48:35] <ghz|afk> but after the world can handle getting getTileEntity called?
L296[07:48:41] <ghz|afk> validate() and onLoad seems to be too early
L297[07:49:40] ⇦ Quits: npe|office (~NPExcepti@bps-gw.hrz.tu-chemnitz.de) (Remote host closed the connection)
L298[07:51:03] ⇦ Quits: abab9579 (~Abastro@175.223.16.121) (Ping timeout: 384 seconds)
L299[07:52:55] <sham1> Test and see
L300[07:54:23] <Coolway99> hey, what does the profiler do?
L301[07:54:45] <sham1> It profiles
L302[07:55:21] <Coolway99> and that means?
L303[07:55:37] <sham1> It profiles for instance the performance
L304[07:55:49] <Coolway99> ah
L305[07:56:06] <Coolway99> well I used it in my render code because I replaced the XP Bar and the XP Bar used it
L306[07:57:10] <sham1> You prolly want some breakpoints
L307[07:58:12] <ghz|afk> \o/ it works!
L308[07:58:26] <ghz|afk> so I finished coding a generic graph management "lib"
L309[07:58:39] <ghz|afk> designed for managing TE networks
L310[07:59:29] ⇨ Joins: IceDragon (~ThatGuy@184.170.2.232)
L311[07:59:29] ⇨ Joins: abab9579 (~abab9579@221.138.238.111)
L312[08:00:22] <sham1> Should probably do some routing algo for my pulling energy network thingamagig
L313[08:04:20] ⇦ Quits: Hgrebnednav (~Hgrebnedn@d8d872a6e.access.telenet.be) (Ping timeout: 186 seconds)
L314[08:07:35] ⇦ Quits: covers1624 (~covers162@ppp121-45-21-215.lns20.adl2.internode.on.net) (Ping timeout: 192 seconds)
L315[08:08:03] ⇦ Quits: turmfalke (~turmfalke@p20030056CF06BADEE9CECBCD45D2C456.dip0.t-ipconnect.de) (Ping timeout: 384 seconds)
L316[08:12:18] <ghz|afk> hmm actually no I'm not done
L317[08:12:36] <ghz|afk> the current graph can't handle unidirectional connections
L318[08:12:49] ⇨ Joins: minot (~minot@pool-100-1-168-123.nwrknj.fios.verizon.net)
L319[08:12:54] <ghz|afk> and there's no way to disconnect two nodes or connect two nodes that were previously disconnected
L320[08:13:05] <sham1> DO IT
L321[08:13:47] <Lordmau5> energy network API soon™?
L322[08:13:50] <Lordmau5> @ ghz|afk
L323[08:13:57] ⇨ Joins: covers1624 (~covers162@ppp118-210-124-127.lns20.adl2.internode.on.net)
L324[08:14:04] <Lordmau5> or rather, Tile-network API
L325[08:14:27] <ghz|afk> yup
L326[08:14:28] <Lordmau5> or what do you mean with "Graph management lib" :p?
L327[08:14:29] <ghz|afk> that's the goal
L328[08:14:36] *** TTFT|Away is now known as TTFTCUTS
L329[08:14:37] <ghz|afk> any tile network
L330[08:14:42] <ghz|afk> it's generic
L331[08:14:45] <ghz|afk> in fact
L332[08:14:51] <ghz|afk> it doesn't even care if it's tiles or not
L333[08:15:03] <Lordmau5> lol
L334[08:15:04] <ghz|afk> any IGraphThing can be part of a network
L335[08:15:21] ⇨ Joins: covers1624_ (~covers162@ppp118-210-124-127.lns20.adl2.internode.on.net)
L336[08:15:23] <Lordmau5> wait
L337[08:15:31] <Lordmau5> so it's not an API to create / manage networks
L338[08:15:35] <Lordmau5> ...?
L339[08:16:54] <ghz|afk> it's a graph library
L340[08:17:00] <ghz|afk> you add a thing to a graph
L341[08:17:11] <ghz|afk> you tell it who it has as neighbours
L342[08:17:16] <sham1> You can then use the graph as a network
L343[08:17:19] <ghz|afk> and it will automatically merge networks when they come together
L344[08:17:29] <ghz|afk> and split networks when the bit that kept them together disappears
L345[08:17:41] <fry> what's the complexity of split and merge operations?
L346[08:17:58] <ghz|afk> I have not worried about that yet
L347[08:17:59] <ghz|afk> ;P
L348[08:18:00] <sham1> I hope O(n log n)
L349[08:18:10] <Lordmau5> so it *is* a network API
L350[08:18:13] <ghz|afk> what's the worst it can be without purposefully doing it wrong?
L351[08:18:19] <Lordmau5> god damn people, you are confusing me with the word Graph
L352[08:18:21] ⇨ Joins: turmfalke (~turmfalke@p20030056CF06BA1985F2C90036051E49.dip0.t-ipconnect.de)
L353[08:18:25] ⇦ Quits: covers1624 (~covers162@ppp118-210-124-127.lns20.adl2.internode.on.net) (Ping timeout: 186 seconds)
L354[08:18:30] <ghz|afk> Lordmau5: it's a directed graph.
L355[08:18:33] <ghz|afk> it has nodes
L356[08:18:34] <ghz|afk> and edtes
L357[08:18:36] <ghz|afk> edgeS*
L358[08:18:37] <fry> it's a useless API even if it's O(N)
L359[08:18:40] <Lordmau5> https://cdn0.iconfinder.com/data/icons/social-messaging-productivity-1-1/128/chart2-128.png
L360[08:18:48] <sham1> O(1) would be nice
L361[08:18:48] <Lordmau5> that's what I understood from "Graph"
L362[08:18:50] <ghz|afk> fry: I consider that an implementation detail that I can improve later
L363[08:18:56] <Lordmau5> so it didn't make sense to me
L364[08:19:10] <ghz|afk> not THAT kind of graph
L365[08:19:11] <ghz|afk> https://en.wikipedia.org/wiki/Graph_theory
L366[08:19:13] <ghz|afk> THIS kind of graph
L367[08:19:39] <Lordmau5> ah
L368[08:19:43] <Lordmau5> well yea, then it makes sense lol
L369[08:21:00] <ghz|afk> fry: insertion and removal are O(1)-ish, merging is O(n), splitting is O(n log n)-ish?
L370[08:21:07] <fry> ghz|afk: without taking the algorithm into account you run a very high risk of making an API that'll guarantee only a slow implementation :P
L371[08:21:14] <ghz|afk> no
L372[08:21:18] <fry> yes :P
L373[08:21:22] <ghz|afk> this is just not designed for a graph with a million nodes
L374[08:21:33] <ghz|afk> it's designed for relatively small graphs as seen in a minecraft network
L375[08:21:44] <ghz|afk> so even if it was O(n^2), it wouldn't really matter
L376[08:21:51] <fry> yes it would :P
L377[08:21:59] <fry> don't underestimate players
L378[08:22:06] <sham1> I shall
L379[08:22:14] <ghz|afk> anyhow
L380[08:22:15] <Lordmau5> Oh god I almost did something stupid
L381[08:22:17] <ghz|afk> I want it to work first
L382[08:22:25] <ghz|afk> I'll worry about efficiency later.
L383[08:22:28] <Lordmau5> almost clicked the "buy winrar" button by accident
L384[08:22:29] <fry> you can do as well as O(log^2(n)) for both split and merge
L385[08:22:47] <fry> with linear memory
L386[08:22:55] ⇨ Joins: KnightMiner (~KnightMin@adsl-68-255-0-49.dsl.emhril.sbcglobal.net)
L387[08:24:39] <ghz|afk> the merge is really just
L388[08:24:42] <ghz|afk> nodes.addAll
L389[08:24:45] <ghz|afk> neighbours.addAll
L390[08:24:53] <ghz|afk> putAll*
L391[08:25:11] <ghz|afk> and then a loop assigning the new graph to each node
L392[08:25:28] ⇦ Quits: AnrDaemon (~ZNC@darkdragon-nln.starlink.ru) (Quit: q)
L393[08:26:32] <ghz|afk> so it can't really get any faster than that without completely changing the data structure ;P
L394[08:26:36] <ghz|afk> and that's something I won't do
L395[08:26:43] <ghz|afk> no matter how much you say it's bad
L396[08:27:06] <Lordmau5> https://static1.squarespace.com/static/53b20345e4b02529e48af929/t/575983764d088edd6f3e8b6e/1465484158610/?format=750w
L397[08:27:12] <ghz|afk> the split is where the optimizations can go
L398[08:27:23] <ghz|afk> since I basically iterate through all the nodes
L399[08:27:29] <ghz|afk> and the ones I haven't visited, are considered disjoint
L400[08:27:34] <sham1> O(n) alert
L401[08:27:39] <ghz|afk> no
L402[08:27:41] ⇨ Joins: AnrDaemon (~ZNC@darkdragon-nln.starlink.ru)
L403[08:27:42] <ghz|afk> worse
L404[08:27:50] <ghz|afk> I iterate through each node, and THEN I check if I have seen it
L405[08:27:55] <ghz|afk> which means a Set#contains
L406[08:27:59] <ghz|afk> so it's n * log n
L407[08:28:08] <ghz|afk> or whatever set#contains is
L408[08:28:18] <sham1> n*log n is nice
L409[08:29:07] <ghz|afk> so basically
L410[08:29:15] <ghz|afk> I don't *care* about the complexity of merge and split
L411[08:29:23] <sham1> n * log n could theoretically end up just n
L412[08:29:32] <sham1> Scales better than O(N)
L413[08:29:42] <ghz|afk> I care that looking for other neighbouts
L414[08:29:47] <ghz|afk> is quick
L415[08:29:51] <ghz|afk> neighbours*
L416[08:30:01] <ghz|afk> and checking the entire list of nodesi n the graph is quick
L417[08:30:09] <ghz|afk> which is really what matters here
L418[08:33:44] <Coolway99> it seems like minecraft doesn't care if I accidently divide by zero
L419[08:33:49] <Coolway99> >.>
L420[08:34:11] <sham1> It should
L421[08:34:19] <Coolway99> I'm using doubles
L422[08:34:26] <Coolway99> I think it tries to set it to infinity
L423[08:34:28] <Coolway99> or NAN
L424[08:34:49] <Coolway99> which ends up being greater than 1, so it sets it to 1
L425[08:35:32] <sham1> Well, apparently IEEE standard mandates that any positive floating number divided by zero is INFINITY
L426[08:35:42] <Coolway99> which is greater than 1
L427[08:35:46] <Coolway99> therefore it sets it to 1
L428[08:36:14] <abab9579> So that case should be taken care of separately.
L429[08:36:15] <Coolway99> anyways, I forgot to add a clause in my math
L430[08:36:25] <Coolway99> negative levels, anyone?
L431[08:44:57] <KnightMiner> Is there any way to run code after the block is added via world loading? My block has a powered state, but I do not have enough metadata values left to store it, and onBlockAdded + neighborChanged both don't run when the world is loaded
L432[08:45:52] <Coolway99> events
L433[08:49:02] <KnightMiner> Is there one specific for a block being loaded? The world load event would require me to iterare through every block in the world to find mine
L434[08:49:11] ⇦ Quits: VikeStep (~VikeStep@101.184.243.180) (Read error: Connection reset by peer)
L435[09:04:01] <Baughn> ...why is ArrayList:removeAll one of the major CPU sucks in minecraft? Why?
L436[09:04:09] <Baughn> Are they seriously--
L437[09:04:16] * Baughn has a minor breakdown. MOJAAANG!
L438[09:05:58] <sham1> I think it is a bottleneck because O(n)
L439[09:05:59] *** amadornes[OFF] is now known as amadornes
L440[09:06:08] <sham1> And because ArrayList is a nice data structure, it is spammed a lot
L441[09:06:24] <Baughn> Um, no. removeAll is O(N^2(
L442[09:06:31] <sham1> Why would it be
L443[09:06:39] <sham1> It iterates over all the elements
L444[09:06:40] <sham1> That is n
L445[09:06:46] <sham1> And deletes them
L446[09:06:56] <sham1> Which would logically be contant time
L447[09:07:11] <Coolway99> wouldn't that be 2n?
L448[09:07:15] <Baughn> That's clear()
L449[09:07:33] <sham1> Coolway99: what is n * 1
L450[09:07:37] <Baughn> removeall(x) removes all elements in the ArrayList which compare equal to one of the elements in collection x
L451[09:08:02] <Coolway99> oh wait, I thought you're the one that said n^2
L452[09:09:02] <Baughn> Clear should be O(1), or close enough..
L453[09:09:17] <sham1> It could set the internal array to null
L454[09:09:33] <Coolway99> run minecraft inside minecraft inside minecraft
L455[09:09:38] <Coolway99> make it n^n
L456[09:09:38] <sham1> I see why removeAll is O(n^2)
L457[09:09:52] <sham1> Becvause it takes a collection with the items to be removed
L458[09:09:56] <sham1> Oh brilliant
L459[09:09:56] <Baughn> A naive implementation of removeAll is a loop around remove, which makes it O(n^2). It's possible that they're being more clever, but even then, the best they'd get is O(N*M), and at a performance cost for the (common) tiny case
L460[09:10:09] <Baughn> So it's probably not that clever.
L461[09:10:20] <Baughn> removeAll exists presumably only because it's in the collection spec.
L462[09:10:42] <Baughn> And when minecraft is spending tons of CPU on it, that sort of implies they're doing it wrong. :X
L463[09:11:13] <Baughn> Urgh~
L464[09:11:22] <sham1> Well if you give removeAll the same collection you remove from, that should be O(1) because Oracle could just do if (this == givenCollection) this.clear();
L465[09:11:28] <Baughn> Kinda want to patch it, but can't really.
L466[09:11:37] ⇦ Quits: Actuarius (~Actuarius@195.91.246.187) (Ping timeout: 192 seconds)
L467[09:11:51] <Baughn> sham1: Special case. Yes, they could do that, but it's clearly not what's happening here.
L468[09:11:56] <sham1> Ya
L469[09:11:59] <Baughn> Wouldn't bet on Oracle doing that check either
L470[09:12:18] <Baughn> ..ok, possibly they have to, to avoid breakage
L471[09:12:28] <sham1> Nope
L472[09:12:58] <sham1> They don't cover that edge case
L473[09:13:07] <Baughn> Undefined behaviour?
L474[09:13:21] <Coolway99> why cover a rare case when it would infact just slow it down more?
L475[09:13:48] <sham1> But it would be a boolean comparition
L476[09:14:05] <sham1> It would do it if is told to delete everything inside itself
L477[09:14:14] <sham1> like: list.removeAll(list)
L478[09:14:37] * Baughn checks the code.
L479[09:14:43] <sham1> It does not do it
L480[09:15:08] <Baughn> It's either N*M or N*N*M. Not sure what the performance of indexed remove is.
L481[09:15:25] <kenzierocks> the default performance is dependent on the iterator
L482[09:15:36] <Baughn> I'm talking about ArrayList specifically.
L483[09:15:38] <kenzierocks> and it doesn't break if list.removeAll(list) is called
L484[09:15:45] <kenzierocks> ArrayList might be different
L485[09:16:18] <Baughn> Anyway, mojang uses ArrayList everywhere. And removeAll.
L486[09:16:35] <Baughn> Hence my state of outrage.
L487[09:16:35] <kenzierocks> it does multiple calls to c.contains, which could be very slow if you're not using a Set...
L488[09:17:05] <Coolway99> if you have any major code with multiple contributors over time
L489[09:17:09] <Coolway99> it's going to be a mess
L490[09:17:31] <Baughn> Working on a codebase like that is my day job. It's /not/ this sort of mess.
L491[09:17:39] <Baughn> But, to be fair, the Mojang devs weren't professional programmers.
L492[09:17:43] <kenzierocks> yea, we focus on performance
L493[09:17:59] <Coolway99> 100 bugs in the code, 100 bugs in the code
L494[09:18:03] <kenzierocks> i'm technically not a professional programmer
L495[09:18:04] <Coolway99> take one down, compile it around
L496[09:18:05] <Baughn> Anyway, I think this should probably be a TreeSet.
L497[09:18:11] <Coolway99> 65,829 bugs in the code
L498[09:18:23] * Baughn wonders if it's actually possible to patch Minecraft like that
L499[09:19:21] <kashike> you can do anything really, you just can't at the same time if you don't want to break anything else (mods, etc) that use it
L500[09:19:57] <Coolway99> and forge probably won't accept it as a OR
L501[09:20:00] <Coolway99> *PR
L502[09:20:05] ⇦ Quits: Jezza (~Jezza@bps-gw.hrz.tu-chemnitz.de) (Remote host closed the connection)
L503[09:20:16] <Baughn> Yeah, figured.
L504[09:20:23] <Baughn> Maybe it'll be fixed upstream sometime.
L505[09:20:29] <Baughn> For all I know, it already has been.
L506[09:20:43] <Coolway99> signs point to "no"
L507[09:22:18] ⇨ Joins: Girafi (Girafi@0x555178eb.adsl.cybercity.dk)
L508[09:22:30] ⇦ Quits: Girafi (Girafi@0x555178eb.adsl.cybercity.dk) (Remote host closed the connection)
L509[09:26:20] <kenzierocks> i really liked 1.9
L510[09:26:29] <kenzierocks> where every block place triggered the copy of an array
L511[09:26:35] <kenzierocks> that was some great code
L512[09:26:59] <Coolway99> that sounds horrid
L513[09:28:40] <kenzierocks> Coolway99: https://gist.github.com/kenzierocks/4030b224bc0558d95edc367dbee45b2c
L514[09:28:47] <kenzierocks> check out line 28
L515[09:29:32] <Coolway99> ew
L516[09:29:41] <sham1> Yay for immutable arrays
L517[09:30:10] *** kroeser|away is now known as kroeser
L518[09:36:00] <ghz|afk> funny thing about forge
L519[09:36:09] <ghz|afk> in spanish, the "j" sounds sortof like an english "h"
L520[09:36:20] <ghz|afk> so when something goes wrong and crashes
L521[09:36:24] <ghz|afk> I see "UCHIJAAAA"
L522[09:36:25] *** Darkhax is now known as Darkhax_AFK
L523[09:36:33] <ghz|afk> which in my head, sounds like "Uchiha", the naruto clan
L524[09:36:45] <diesieben07> immutable arrays? where?
L525[09:36:58] <ghz|afk> s it's like "Damn you, Uchihaaaaa!!!"
L526[09:37:20] <diesieben07> lol
L527[09:38:04] *** ghz|afk is now known as gigaherz
L528[09:39:17] ⇦ Quits: RichardG (~richardg8@201.17.105.96) (Ping timeout: 384 seconds)
L529[09:39:22] ⇨ Joins: RichardG_ (~richardg8@201.17.105.96)
L530[09:39:22] MineBot sets mode: +v on RichardG_
L531[09:41:01] ⇨ Joins: Drullkus (~Dru11kus@2601:646:8301:ead3:75a7:2c6:8fc2:3d20)
L532[09:41:10] ⇨ Joins: Xilef11 (~xilef11@bas1-ottawa09-1176116972.dsl.bell.ca)
L533[09:41:14] ⇦ Quits: RichardG_ (~richardg8@201.17.105.96) (Client Quit)
L534[09:41:40] ⇦ Quits: Backslash (~Backslash@ip-95-222-125-109.hsi15.unitymediagroup.de) ()
L535[09:44:49] ⇦ Quits: jrbudda (~jrbudda__@cpe-24-211-51-47.sc.res.rr.com) (Ping timeout: 186 seconds)
L536[09:45:29] ⇨ Joins: TechnicianLP (~Technic@p4FE56995.dip0.t-ipconnect.de)
L537[09:49:16] <kashike> gigaherz: hehe, I thought that before - minus Spanish part
L538[09:50:56] ⇨ Joins: PrinceCat (~PrinceCat@58-6-199-119.dyn.iinet.net.au)
L539[09:52:08] ⇦ Quits: Drullkus (~Dru11kus@2601:646:8301:ead3:75a7:2c6:8fc2:3d20) (Remote host closed the connection)
L540[09:53:33] ⇦ Quits: Abastro (~Abastro@221.138.238.111) (Read error: Connection reset by peer)
L541[09:53:45] ⇨ Joins: Abastro (~Abastro@221.138.238.111)
L542[09:55:09] ⇦ Quits: abab9579 (~abab9579@221.138.238.111) (Read error: Connection reset by peer)
L543[09:56:41] ⇨ Joins: Aroma1997 (~Aroma1997@104.131.97.244)
L544[09:57:51] ⇨ Joins: abab9579 (~Abastro@221.138.238.111)
L545[09:58:31] ⇦ Quits: Abastro (~Abastro@221.138.238.111) (Read error: Connection reset by peer)
L546[10:02:21] ⇨ Joins: Jezza (~Jezza@92.206.5.6)
L547[10:04:18] ⇨ Joins: Chais (~Chais@62.178.210.212)
L548[10:04:43] <Chais> I suppose this is the right place to ask questions regarding minecraft modding?
L549[10:04:48] <gigaherz> yup
L550[10:04:56] <gigaherz> at least so far as the modding ocncerns forge ;P
L551[10:04:58] <gigaherz> concerns*
L552[10:05:31] <sham1> We donät do jar-modding
L553[10:05:54] <Chais> k. trying to get into modding. following jty's tutorial. currently stuck with the tileentity. the block renders correctly when placed in the world, but not when held or in the inv. I get no error messages though...
L554[10:06:21] <sham1> Do you have an item model
L555[10:06:58] <Chais> not expressed. as I understood it should be created automatically, since I'm only using a simple textured block
L556[10:07:23] <Chais> I think I'm registering the block as an item though
L557[10:07:27] <sham1> What version
L558[10:07:34] <Chais> 1.9.4
L559[10:07:43] <sham1> Show your code
L560[10:07:51] <Chais> sec
L561[10:07:56] <sham1> And your item model JSON
L562[10:07:57] <sham1> And your blockstate JSON
L563[10:08:14] <sham1> Your block needs a specific model when inside the inventory
L564[10:08:37] <sham1> Thus you can have a different block and item models
L565[10:09:08] ⇨ Joins: Drullkus (~Dru11kus@2601:646:8301:ead3:75a7:2c6:8fc2:3d20)
L566[10:09:42] <Chais> Block class: http://sprunge.us/jdMj?java
L567[10:09:52] ⇨ Joins: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net)
L568[10:10:30] <Chais> blockstate: http://sprunge.us/TQEe?json
L569[10:10:51] <Chais> model: http://sprunge.us/DcRU?json
L570[10:11:47] <Chais> I thoght the GameRegistry.registerTileEntity() would take care of creating the corresponding item model
L571[10:11:58] <Chais> ah no.
L572[10:12:08] <sham1> Why would that do it
L573[10:12:18] <sham1> Look at the method name
L574[10:12:20] <Chais> yea. wrong line. 43 in the class
L575[10:12:25] ⇦ Quits: Drullkus (~Dru11kus@2601:646:8301:ead3:75a7:2c6:8fc2:3d20) (Ping timeout: 186 seconds)
L576[10:13:08] <sham1> But no
L577[10:13:08] <sham1> You need to do ModelLoader.setCustomModelResourceLocation
L578[10:13:23] <Chais> that's line 43
L579[10:13:28] <sham1> Is it
L580[10:14:05] <sham1> Did the tutorial tell you to have that client-only thing in your block class
L581[10:14:21] <sham1> Because registering the block model belongs to the client proxy
L582[10:14:55] <Chais> you mean that initModel should be client only?
L583[10:15:20] <sham1> I clearly did say client proxy
L584[10:15:29] <gigaherz> models make no sense in the server
L585[10:15:37] <gigaherz> as the server simply doesn't have any of the clases related to rendering
L586[10:15:48] <sham1> http://mcforge.readthedocs.io/en/latest/concepts/sides/
L587[10:15:48] <gigaherz> so the attempts to work with models would crash with missing classes
L588[10:16:05] <gigaherz> by placing the calls in a client proxy
L589[10:16:19] <gigaherz> you ensure that those missing classes are never referenced when the mod loads on a dedicated server
L590[10:16:47] <Chais> yes. just noticed I forgot to actually call it in the mod's main class ._.'
L591[10:17:18] <sham1> Have fun
L592[10:17:18] <sham1> TL:DR, you should not use @SideOnly with your own custom methods and classes
L593[10:17:18] <sham1> Only things that override things that are also @SideOnly should be marked @SideOnly
L594[10:18:12] <Chais> that's what jty said too. but you see the code
L595[10:18:14] <sham1> Moreover, your block class would just crash to begin with
L596[10:18:14] <sham1> In a dedicated server
L597[10:18:14] <sham1> Because you try to import a thing that does not exist at the server
L598[10:18:25] <sham1> Well Jty is wrong then
L599[10:18:34] <sham1> Wait no
L600[10:18:36] <sham1> He's right
L601[10:18:49] <sham1> But first of all, you should not use @SideOnly with your own methods
L602[10:19:05] <sham1> Also I see the code, I see it crashing and burning
L603[10:19:25] <Chais> why?
L604[10:20:31] <sham1> Because you are importing net.minecraftforge.client.model.ModelLoader in a class that gets referenced at both the physical client and physical server
L605[10:20:41] <sham1> net.minecraftforge.client.model.ModelLoader does not EXIST at the physical server
L606[10:20:50] <sham1> Therefore you will get a ClassNotFoundException
L607[10:20:55] <sham1> And you will crash
L608[10:22:25] <Chais> and how would I avoid that? I'd need to split the class in server and client side code, no?
L609[10:23:02] <sham1> Did you even read the document I linked to you?
L610[10:23:20] <sham1> You need to use a sided proxy and register the model at the client proxy
L611[10:23:51] <Chais> that's what @SideOnly does, isn't it?
L612[10:23:58] <sham1> No
L613[10:24:11] <sham1> It stirps the method out of the class at the side not specified
L614[10:24:22] <gigaherz> hmm anyone here happens to know if I can make forgegradle include the stuff from test/java/ into the debug environment?
L615[10:24:25] <sham1> The problem is that it is still trying to load a client-only class
L616[10:24:38] <sham1> I'd ask at #forgegradle
L617[10:24:44] <sham1> They know this stuff way more :P
L618[10:25:10] <gigaherz> yeah
L619[10:26:36] <Chais> but if the method is stripped for the server side shouldn't the import be removed too then? since no other method requires it?
L620[10:26:55] <sham1> The classloader is not that smart
L621[10:28:14] <Chais> so what do you suggest then? the page you linked doesn't mention imports with a single syllable
L622[10:28:41] ⇦ Quits: Jezza (~Jezza@92.206.5.6) (Ping timeout: 192 seconds)
L623[10:28:41] ⇦ Quits: primetoxinz (~primetoxi@ip68-107-226-229.hr.hr.cox.net) (Ping timeout: 192 seconds)
L624[10:29:03] ⇨ Joins: primetoxinz (~primetoxi@ip68-107-226-229.hr.hr.cox.net)
L625[10:29:14] <sham1> Mon dieu
L626[10:29:27] <sham1> I've repeated it countless times
L627[10:29:34] <sham1> Use a client proxy
L628[10:29:37] <Chais> I do
L629[10:29:44] <sham1> Good
L630[10:29:45] <Chais> just not in the block class
L631[10:29:45] <sham1> Show it
L632[10:29:50] <Chais> that would be silly
L633[10:30:04] <sham1> THAT'S THE ENTIRE POINT. TO SEPERATE THE BLOCK FROM DECLARING THE MODLES
L634[10:30:18] <sham1> Jesus "tapdancing" Christ
L635[10:30:57] <Chais> no I mean I don't define the client proxy in the block class. the block class only defines its respective block
L636[10:31:25] <sham1> http://i2.kym-cdn.com/entries/icons/original/000/013/005/3mLydMU.png
L637[10:31:44] <sham1> You reference your block *FROM* your client proxy
L638[10:31:53] <sham1> You declare the model there
L639[10:31:53] <sham1> You do it for all the models
L640[10:31:55] <Chais> I know oO. chill man
L641[10:32:03] <sham1> Do you?
L642[10:32:06] <Chais> here's the main class: http://sprunge.us/JcYZ?java
L643[10:32:08] <sham1> Because you don't seem to
L644[10:32:27] <sham1> Okay
L645[10:32:38] <sham1> Umn
L646[10:32:45] <sham1> @SidedProxy requires two parametres
L647[10:32:48] <Chais> what the heck made you think that first link was the entire code?
L648[10:32:55] <Chais> not anymore
L649[10:33:00] <sham1> Here
L650[10:33:10] <sham1> Let me show you
L651[10:33:18] <sham1> I was not given enough context
L652[10:33:36] <Chais> In Forge 11.15.0.1671 and up, you don't have to fill in the @SidedProxy parameters anymore. When you leave the parameter the default value (an empty String), it uses the nested Server- and ClientProxy classes from the parent class. To use it, you have to make the nested ServerProxy and ClientProxy class inside the class with the @SidedProxy annotation.
L653[10:33:58] <sham1> Where is that said
L654[10:34:00] ⇨ Joins: Drullkus (~Dru11kus@205.155.154.1)
L655[10:34:08] <Chais> jty's tut
L656[10:34:26] ⇨ Joins: Jezza (~Jezza@92.206.5.6)
L657[10:34:27] <sham1> That just defeats the entire purpose of the proxies
L658[10:34:32] <sham1> Because again
L659[10:34:46] <sham1> You import client-only classes in your main mod class for the inner classes
L660[10:35:15] <Chais> for actual client/server separation, yes. for local play and development it's absolutely sufficient
L661[10:35:16] <sham1> Which will crash
L662[10:35:30] <sham1> You should be thinking about the seperation since day fucking 1
L663[10:35:44] <Chais> it is day fucking 1
L664[10:35:58] <Chais> calm down
L665[10:36:03] <sham1> So think about it
L666[10:37:19] ⇦ Quits: Drullkus (~Dru11kus@205.155.154.1) (Ping timeout: 190 seconds)
L667[10:37:32] <sham1> Next time I see McJty, I'll slap him and his tutorial
L668[10:38:14] <sham1> There are just things that should not be told to new modders
L669[10:38:16] <Chais> he has it in there. just says it's not required. meaning the code will compile without it
L670[10:38:25] <sham1> It will compile
L671[10:38:32] <sham1> Will it run, that's another question
L672[10:38:39] <Chais> locally, absolutely
L673[10:38:39] <sham1> On client, it will
L674[10:38:48] <sham1> On a dedicated server, not so much
L675[10:42:26] <Chais> but proper client/server separation on its own is a rather big topic. dumping that on new modders in addition to everything MC does may be a bit much
L676[10:42:56] <sham1> One literally creates one extra class if they want to have a CommonProxy as their server side
L677[10:43:07] <sham1> Well, two
L678[10:43:16] <sham1> But one of them can be an interface
L679[10:44:02] <sham1> There is a reason why people are assumed that they know how to code before they jump in
L680[10:44:18] <sham1> So they know what to do when they are told to jump, you know
L681[10:44:24] <Coolway99> I know how to code
L682[10:44:32] <Coolway99> but I'm rather new to modding
L683[10:44:36] <Chais> yes. but knowing java and knowing client/server infrstructure are two different things
L684[10:44:46] <Coolway99> and this client-server separation has gotten my head into a spin multiple times
L685[10:44:51] <Chais> *infrastructure
L686[10:44:56] <Chais> ^
L687[10:45:11] <sham1> Client-server seperation is about having certain things at their own classes, so that they don't leak
L688[10:45:19] <sham1> And create lots of pain and destruction
L689[10:45:25] <Coolway99> I've tried my best and my code still doesn't run on the server XD
L690[10:45:35] <Coolway99> though I haven't been trying
L691[10:45:37] <Coolway99> >.>
L692[10:49:03] <Coolway99> so I'm happeh, my system works
L693[10:49:13] <Coolway99> and it makes leveling up actually rather painful
L694[10:49:13] ⇦ Quits: wizjany (~wizjany@2604:180::c1e2:128b) (Read error: Connection reset by peer)
L695[10:49:59] ⇨ Joins: Hgrebnednav (~Hgrebnedn@d8d872a6e.access.telenet.be)
L696[10:50:57] ⇦ Quits: PrinceCat (~PrinceCat@58-6-199-119.dyn.iinet.net.au) (Quit: My Mac has gone to sleep. ZZZzzz…)
L697[10:51:01] <Coolway99> yay Math.pow
L698[10:51:16] <Chais> .pow is fun
L699[10:51:40] <Coolway99> I separated the concept of EXP = Levels
L700[10:52:05] <Coolway99> you can level up the normal way up to level 5, but after that you have to use a transformer block
L701[10:52:13] <Coolway99> and this block has efficiency
L702[10:52:37] <Coolway99> double eff = Math.pow(0.95, level);
L703[10:53:06] <Coolway99> right away at level 5 that turns into 75%-ish efficiency
L704[10:53:23] <Coolway99> and the higher it goes, the worse it gets XD
L705[10:53:34] <Chais> err... yay?
L706[10:54:26] <Coolway99> ((level*exp)*eff)/new_level
L707[10:54:32] <Coolway99> = new EXP
L708[10:54:53] <Chais> it should actually top out at some point, no?
L709[10:55:11] <Coolway99> ... nah
L710[10:55:27] <Coolway99> power has a price
L711[10:55:46] <Coolway99> quite litterally, since I'm treating levels as voltage and EXP as current
L712[10:55:53] <Coolway99> therefore, Level * EXP = power
L713[10:56:26] <Coolway99> hrrm...
L714[10:56:31] <Chais> so dying makes your machines run slower?
L715[10:56:33] <Coolway99> perhaps I should lessen the curve a bit, actually
L716[10:56:54] <Coolway99> at level 30 the efficiency is 21.5%
L717[10:57:28] <Chais> and keep in mind that exp levels don't rise linearly either
L718[10:57:33] <Coolway99> I know
L719[10:57:38] <Coolway99> I changed them to be on a cubic curve
L720[10:57:38] <abab9579> ..power=sum{exp_per_level}!=level*exp
L721[10:58:05] <Coolway99> I'm not using exp per level
L722[10:58:10] <Coolway99> I'm actually just using power directly
L723[10:58:15] <Coolway99> EXP doesn't exist anymore in my system
L724[10:58:42] <Coolway99> dying resets you to 1 power and removes 5 levels
L725[10:59:11] <Coolway99> bleh, what should I do
L726[10:59:25] <Coolway99> Math.pow(0.95, level/5) or level/3 ?
L727[10:59:36] <Coolway99> level/3 at level 30 is 50% eff
L728[10:59:41] <Coolway99> level/5 at level 30 is 75% eff
L729[11:00:13] <Coolway99> actually, 60% eff and 74% eff respectively >.>
L730[11:00:30] <Coolway99> level/2 is 50% eff
L731[11:00:35] ⇦ Quits: Sava_ (~Sava@cable-178-148-181-232.dynamic.sbb.rs) (Quit: Leaving)
L732[11:01:39] <Coolway99> you're not supposed to go to insanely-high levels in my mod, so that's why level 30 can hold like 200k EXP
L733[11:01:55] <abab9579> Well pow(0.95, level/x)=pow (pow (0.95,1/x),level)
L734[11:02:17] <Coolway99> yes, I'm well aware of how mathematics work
L735[11:02:42] <Coolway99> it's also == to pow(root(0.95, x), level)
L736[11:03:57] ⇨ Joins: RichardG (~richardg8@201.17.105.96)
L737[11:03:57] MineBot sets mode: +v on RichardG
L738[11:04:23] <Coolway99> actually, it seems level 30 can store 1 million EXP :/
L739[11:04:27] <Coolway99> hrm
L740[11:04:34] <Coolway99> no idea where I went wrong there
L741[11:05:35] <Coolway99> ohwait, that's power
L742[11:05:42] <Coolway99> 1 million power, 37.1 k EXP
L743[11:06:40] ⇨ Joins: BlueMonster (uid82864@id-82864.tooting.irccloud.com)
L744[11:09:38] ⇨ Joins: Drullkus (~Dru11kus@205.155.154.1)
L745[11:12:53] ⇦ Quits: Drullkus (~Dru11kus@205.155.154.1) (Ping timeout: 192 seconds)
L746[11:13:07] ⇨ Joins: agowa338 (~Thunderbi@p5491858F.dip0.t-ipconnect.de)
L747[11:16:50] *** big_Xplo|AFK is now known as big_Xplosion
L748[11:43:56] ⇨ Joins: Noppes (~Noppes@82-168-99-26.ip.telfort.nl)
L749[11:46:47] *** AEnterprise is now known as AEnterpriseAFK
L750[11:47:09] *** cpw|out is now known as cpw
L751[11:47:55] ⇦ Quits: Xilef11 (~xilef11@bas1-ottawa09-1176116972.dsl.bell.ca) (Ping timeout: 384 seconds)
L752[11:49:23] ⇨ Joins: Xilef11 (~xilef11@bas1-ottawa09-1176116972.dsl.bell.ca)
L753[11:51:30] *** big_Xplosion is now known as big_Xplo|AFK
L754[11:55:57] ⇦ Quits: capitalthree (~alex@capitalthree.pwnz.org) (Ping timeout: 192 seconds)
L755[11:56:27] ⇨ Joins: Vazkii (~Vazkii@a79-169-163-74.cpe.netcabo.pt)
L756[11:57:10] *** PaleOff is now known as PaleoCrafter
L757[11:57:58] <BlueMonster> PlayerEvent.HarvestCheck doesnt seem to be firing for all blocks... is it just me or is it a bug?
L758[11:59:18] <PaleoCrafter> Hm, does a PR changing "degrees Kelvin" to "Kelvin" in the fluid stuff classify as typo PR?
L759[12:02:51] <diesieben07> BlueMonster, its not fired if the material does not require a tool.
L760[12:06:42] <Xilef11> is it possible to modify the beacon beam's opacity from this code (without copying the renderBeamSegment method)? https://gist.github.com/Xilef11/81de368e58483c89644974124a8ffd01
L761[12:07:33] <BlueMonster> oohhhh
L762[12:11:48] *** Wuppy is now known as NoPantsMcWuppy
L763[12:12:25] ⇦ Quits: c233 (~c233@164.40.196.251) (Quit: Leaving)
L764[12:13:07] <diesieben07> Xilef11, doesn't seem like it, it's hardcoded to 0.125
L765[12:14:01] <Xilef11> that's what I thought :( I kinda hoped there was a way to override that with GL calls or something
L766[12:14:09] *** NoPantsMcWuppy is now known as Wuppy
L767[12:18:07] ⇨ Joins: Samario (~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net)
L768[12:19:38] <Chais> sham1: I take it the clientSide and serverSide parameters take class paths?
L769[12:19:50] <sham1> Yeah
L770[12:19:57] <sham1> Fully qualified class paths
L771[12:19:58] ⇦ Quits: Searge|mojang (~Searge@h-85-24-130-18.na.cust.bahnhof.se) (Read error: Connection reset by peer)
L772[12:20:02] <sham1> So packages and then the ClassName
L773[12:20:07] <Chais> mkay
L774[12:21:58] <Chais> huh... a nested class is referenced with a . like everything else, isn't it?
L775[12:22:16] <diesieben07> $
L776[12:22:26] <diesieben07> MyClass$NestedClass
L777[12:22:28] <Chais> ah. why the heck wouldn't google tell this
L778[12:22:37] <gigaherz> unless you use reflection
L779[12:22:40] <gigaherz> in reflection, it's a "."
L780[12:22:47] ⇨ Joins: Actuarius (~Actuarius@195.91.246.187)
L781[12:22:48] MineBot sets mode: +v on Actuarius
L782[12:22:50] <diesieben07> really?
L783[12:22:51] <gigaherz> that's why .getName and .getCanonicalname are different
L784[12:22:54] <diesieben07> i dont think so giga
L785[12:23:01] <gigaherz> I could remember wrongly
L786[12:23:13] <Chais> I even specifically searched for $, because I saw it flashing through the log. my google-fu failed me
L787[12:23:15] <diesieben07> but yes thats the difference with name / canonical name
L788[12:23:41] ⇨ Joins: Searge|office (~Searge@h-85-24-130-18.na.cust.bahnhof.se)
L789[12:25:00] *** MrKick|Away is now known as MrKickkiller
L790[12:28:03] <Chais> yup, that did it. thx
L791[12:28:14] <sham1> Do the models work now?
L792[12:28:49] ⇨ Joins: thecodewarrior (~thecodewa@75-128-36-21.static.mtpk.ca.charter.com)
L793[12:29:20] <Xilef11> what's the resourcelocation for the missing texture?
L794[12:29:49] <sham1> I think it is minecraft:missing_block_texture
L795[12:29:58] <sham1> Not sure
L796[12:30:27] <Ordinastie_> missing_no iirc
L797[12:30:41] <sham1> Hah
L798[12:31:10] <Chais> yup. that worked as soon as I actually started calling ModBlocks.initModels() had forgotten that
L799[12:32:12] ⇨ Joins: capitalthree (~alex@capitalthree.pwnz.org)
L800[12:32:19] <thecodewarrior> Is there a guide/tutorial somewhere on how to set up a library mod?
L801[12:32:40] <sham1> What do you mean with a "library" mod
L802[12:32:54] <gigaherz> an api mod is just a normal mod
L803[12:32:58] <thecodewarrior> A mod like CoFHLib or whatnot.
L804[12:33:00] <gigaherz> but rather than have blocks and such
L805[12:33:05] <gigaherz> it just has classes that others can use
L806[12:33:08] <thecodewarrior> Specifically in Eclipse and IDEA
L807[12:33:09] <gigaherz> a library (not mod)
L808[12:33:14] <gigaherz> is just a jar with packages
L809[12:33:16] <gigaherz> but without @Mod
L810[12:33:24] <gigaherz> so you choose ;p
L811[12:33:42] <thecodewarrior> I know how to in source. Just how to do parallel development on both.
L812[12:33:54] <sham1> Like anything else
L813[12:34:07] <gigaherz> so the question really is
L814[12:34:12] <gigaherz> "how to I develop two mods at once?"
L815[12:34:13] <gigaherz> ;P
L816[12:34:20] <thecodewarrior> yep. :)
L817[12:34:20] <sham1> Damn it XY questions
L818[12:34:24] <gigaherz> for which I have no answer ;P
L819[12:37:01] <diesieben07> thecodewarrior, push the lib to local maven, depend on it in the other mod
L820[12:48:59] <masa> was the question specifically how to set up multiple mdos in eclipse for example?
L821[12:49:22] <masa> or something else about the library mod development
L822[12:50:08] <thecodewarrior> Specifically multiple mods. I should just be able to refer to the other project somehow in eclipse, correct?
L823[12:50:08] ⇨ Joins: theFlaxbeard (~theFlaxbe@65-128-188-122.mpls.qwest.net)
L824[12:50:42] <masa> if the library mod is a dependency/in the classpath of the other, I would think so?
L825[12:50:45] *** Coolway99 is now known as Cway|Away
L826[12:51:24] <masa> it just so happens that I wrote my personal eclipse mod environment setup as a guide for someone else yesterday
L827[12:51:36] <masa> so I'll pm a link to you too...
L828[12:52:03] ⇦ Quits: capitalthree (~alex@capitalthree.pwnz.org) (Ping timeout: 192 seconds)
L829[12:54:46] <gigaherz> geh
L830[12:54:56] <gigaherz> what was it to get the block the player is looking at?
L831[12:55:32] <gigaherz> objectMouseOver.
L832[12:58:10] <Necr0> where should i put the autojump distance in the PR? since it's client-side only having in the PlayerInteractionManager would be stupid. would having it on EntityPlayerSP itself be fine?
L833[13:00:46] *** Cway|Away is now known as Coolway99
L834[13:01:12] <sham1> I don't understand why they made it client-only at any rate
L835[13:01:58] <Coolway99> well, if you're faking the player pressing "jump"
L836[13:02:17] <sham1> You could just do that at the server side though'
L837[13:02:39] <Coolway99> err... yes and no
L838[13:02:45] <sham1> Why not
L839[13:02:46] <Coolway99> the server isn't perfect
L840[13:03:01] <sham1> But it has more information about the state of the world than the client does
L841[13:03:21] <Coolway99> all the client needs to know (for mojang's implementation) is if there's a block
L842[13:03:36] <sham1> And mods usually like to modify stuff at the server side anyway
L843[13:03:48] <Necr0> also lag could really mess with this feature.
L844[13:03:50] <sham1> Having to send a packet when your mod wants to do something with the autojump
L845[13:03:55] <sham1> How so
L846[13:04:10] <sham1> It matters more when it is at the client
L847[13:04:53] <sham1> The server knows when the player is walking/sprinting forward
L848[13:05:12] <Necr0> but the players movement is ahead of the server
L849[13:05:18] ⇨ Joins: Gil (uid147942@id-147942.brockwell.irccloud.com)
L850[13:05:22] <Necr0> on the client side i mean
L851[13:06:24] <sham1> The server should be the one to decide if you move forwards or not. The client should just take inputs and render your view
L852[13:06:30] <sham1> That's how it should be anyway
L853[13:06:51] <sham1> Besides
L854[13:06:53] <Coolway99> well, I'm sure you know that if you've ever lagged out on a server
L855[13:06:59] <Coolway99> you can "move" while the server is still lagging
L856[13:07:04] <ezterry> if the client didn't assume, and get corrections, walking in peaceful would be painful with 300ms network delay
L857[13:07:08] <Coolway99> then the lag stops and you snap into place
L858[13:07:17] <sham1> Yeah
L859[13:07:26] <sham1> The server has the ultimate authority about your positions
L860[13:07:34] <Coolway99> if the client didn't predict though
L861[13:07:47] <Coolway99> you would stutter ahead like the old DOS FPS games
L862[13:07:55] <sham1> BS
L863[13:08:31] <Coolway99> because trying to talk forward, would have the client go "hey server, the player pressed W"
L864[13:08:35] <Coolway99> *walk
L865[13:08:57] <sham1> And?
L866[13:09:08] <sham1> It does that anyway
L867[13:09:12] <Coolway99> then the server would go "move forward X blocks"
L868[13:09:26] <Coolway99> what if there's lag?
L869[13:09:27] <sham1> I'd have it rather be "Add this velocity"
L870[13:09:42] <Coolway99> not everybody has perfect internet
L871[13:09:50] <sham1> Well I havew
L872[13:09:54] <Coolway99> and what if the server has TPS lag?
L873[13:09:58] ⇨ Joins: synthetica (~synthetic@cpe-76-188-199-137.neo.res.rr.com)
L874[13:10:04] <sham1> And I should not be handicapped by people not having perfect internet
L875[13:10:04] <Coolway99> if the server has TPS lag, get out the barf bags
L876[13:10:19] <sham1> Jokes aside
L877[13:10:41] <sham1> The whole scheme of sending user input to the server does work
L878[13:10:47] <Coolway99> hell, massive massive servers like mineplex would be unplayable
L879[13:10:56] <Coolway99> because of the sheer amount of lag
L880[13:11:20] <Coolway99> because, in that world
L881[13:11:25] <Coolway99> the moment you have lag, you sit there like a duck
L882[13:11:49] <Coolway99> of course, you do that server side as well already, but client side it's not so obvious you're lagging
L883[13:11:50] <sham1> But is having the autojump at the client really wise
L884[13:11:54] <Coolway99> especially if it's ~ .5 second lag
L885[13:12:01] <sham1> Because, it will lag as well
L886[13:12:24] <Coolway99> sure, the server trusts the client enough
L887[13:12:26] <sham1> Plus one has to send packets to the client to be able to use the autojump for anything
L888[13:12:28] ⇨ Joins: founderio (~Thunderbi@p200300C4E3C0EA0068C518523839E82C.dip0.t-ipconnect.de)
L889[13:12:29] <Coolway99> that's why things like flying mods exist
L890[13:13:09] <sham1> A mod cannot directly manipulate a thing that is at the client side
L891[13:13:19] <sham1> Like for instance from an item or whatever
L892[13:13:21] <sham1> Tick event
L893[13:13:33] <Coolway99> yes and no, the mod would be running on both sides
L894[13:13:44] <Coolway99> unless it's a server-side mod, like bukkit
L895[13:13:45] <sham1> Well I don't trust the client
L896[13:13:56] <sham1> So I don't want to do anything I don't have to do at the client
L897[13:13:59] <Coolway99> if you don't trust the client, and run everything server side, that's fine
L898[13:14:09] <Coolway99> it's your own issues that you have to overcome, then
L899[13:14:27] <sham1> Not even an issue
L900[13:14:33] <sham1> Just some anti-cheating measures
L901[13:14:51] <Coolway99> I meant that you have your own issues caused by that that you would need to overcome
L902[13:15:04] <Coolway99> like, you have to manage syncing and stuff
L903[13:15:10] <sham1> Yes
L904[13:15:15] <sham1> Indeed I do
L905[13:16:06] <sham1> I just feel like it is something that should be done at the server
L906[13:16:24] <sham1> But, there probably is enough justifications that it really does not matter what I think about the matter
L907[13:16:38] <sham1> I just don't like it. That's all
L908[13:17:05] <sham1> Not that I would even use it, as it seems extremely unreliable. Rather would have gotten a step-assist
L909[13:17:09] <Coolway99> there's justification either way
L910[13:17:16] <Coolway99> really, it comes down to what you want to do
L911[13:18:07] ⇦ Quits: Upthorn (~ogmar@108-204-125-173.lightspeed.frokca.sbcglobal.net) (Ping timeout: 192 seconds)
L912[13:21:07] ⇨ Joins: McJty (~jorrit@94-225-203-206.access.telenet.be)
L913[13:22:39] <sham1> Like, if Mojang thought that step-assist with bare bone Steve would have been too broken, they could have made it a rare enchant or something
L914[13:22:43] <Xilef11> TESR#isGLobalRenderer doesn't seem to work... https://github.com/Xilef11/Runes-of-Wizardry/blob/starbeam/src/main/java/com/zpig333/runesofwizardry/client/render/RenderDustActive.java
L915[13:23:43] ⇦ Quits: keybounce (~keybounce@45-25-230-67.lightspeed.bkfdca.sbcglobal.net) (Quit: Sleep? Did I say sleep?)
L916[13:25:54] <Coolway99> the goal with auto-jump was to help players new to the game
L917[13:26:25] <Coolway99> also, maaaaath
L918[13:26:27] <Coolway99> http://www.wolframalpha.com/input/?i=graph+1.5(x%5E3)++-4(x%5E2)+%2B6.5x+%2B1+and+graph+x*((0.95)%5E(x%2F4))+from+0%3C%3Dx%3C%3D15+and+0%3C%3Dy%3C%3D1500
L919[13:27:57] ⇨ Joins: Drullkus (~Dru11kus@205.155.154.1)
L920[13:31:06] ⇨ Joins: Seppon (~Noppes@82-168-99-26.ip.telfort.nl)
L921[13:31:37] ⇦ Quits: Drullkus (~Dru11kus@205.155.154.1) (Ping timeout: 186 seconds)
L922[13:34:16] <gigaherz> hmm does java streams have something like stream.except(this other stream)?
L923[13:34:47] <gigaherz> meh nevermind, it wouldn't even work
L924[13:35:43] <Chais> Was ITickable.tick() named ITickable.update() in 1.7?
L925[13:35:44] <sham1> Why didn't Oracle make lambdas work well with exceptions
L926[13:35:45] <sham1> Just why
L927[13:35:49] <gigaherz> no
L928[13:35:59] <gigaherz> there was no ITickable in 1.7
L929[13:36:04] <Chais> 1.8?
L930[13:36:07] <fry> because exceptions are stupid :P
L931[13:36:09] <gigaherz> 1.8 was IUpdatePlayerListBox
L932[13:36:20] <sham1> Would not say that fry
L933[13:36:39] <sham1> They help with stuff like file system access
L934[13:36:43] ⇦ Quits: Noppes (~Noppes@82-168-99-26.ip.telfort.nl) (Ping timeout: 384 seconds)
L935[13:37:09] <gigaherz> sham1: some people dislike exaceptions because by the time you get the catch, it's too late to try to correct the issue and continue
L936[13:37:10] <fry> exceptions should be part of the type system
L937[13:37:15] <Chais> perhaps what he means is they shouldn't be used to regularly control the program flow, yet frequently are
L938[13:37:34] <gigaherz> exceptions*
L939[13:37:41] <sham1> Well, with stuff like "File not found", they are nice
L940[13:37:52] <sham1> Because you don't just crash and burn, you can try alternative things
L941[13:38:00] <gigaherz> sure
L942[13:38:04] <gigaherz> but in some way
L943[13:38:11] <gigaherz> file access would be best with status results
L944[13:38:27] <sham1> Either Error FileHandler
L945[13:38:31] <sham1> Something like that
L946[13:38:35] <sham1> for opening files
L947[13:38:44] <gigaherz> but at the same time
L948[13:38:57] <gigaherz> using status results for all error situations
L949[13:39:00] <gigaherz> ends up with very ugly code
L950[13:39:11] <sham1> something something golang something
L951[13:39:14] <gigaherz> so it would need syntactic support
L952[13:39:17] <gigaherz> like
L953[13:40:12] <gigaherz> nah I can't come up with any syntax for this that would make sense
L954[13:40:12] <gigaherz> XD
L955[13:40:34] <sham1> Some sort of pattern matching to be able to branch between having a good and a bad value
L956[13:40:44] <gigaherz> well ideally you'd have like
L957[13:41:23] <gigaherz> contents = path.getStream() <and in case of> ReadError { something something };
L958[13:43:23] <sham1> Well, You could have something like the Either type
L959[13:43:35] ⇨ Joins: Kenny164 (~pkinney@5.80.60.119)
L960[13:44:40] <gigaherz> hmmm
L961[13:44:43] <gigaherz> how does that work?
L962[13:45:12] <sham1> Something like (really pseudocode): either (const "Some error") (id) $ openPath path "rw" >>= {- insert your manipulation and reading here -}
L963[13:45:14] <gigaherz> I can imagine something that does like:
L964[13:45:17] <sham1> Like
L965[13:45:26] <gigaherz> stream = path.getStream().or((error) => { ... })
L966[13:45:33] <sham1> That could work
L967[13:45:34] ⇦ Quits: synthetica (~synthetic@cpe-76-188-199-137.neo.res.rr.com) (Quit: Leaving)
L968[13:45:40] <gigaherz> with "or" returning the value if success
L969[13:45:45] <gigaherz> and running the lambda if not
L970[13:45:48] <sham1> Yeh
L971[13:45:52] <gigaherz> and returning whatever the lambda returns
L972[13:46:18] ⇨ Joins: SanAndreasP (~SanAndrea@p54b60444.dip0.t-ipconnect.de)
L973[13:46:23] <sham1> The lambda would have the type of :: Error -> Stream
L974[13:46:31] <gigaherz> and some sort of alternative .getStream().get() that throws, as an alternative
L975[13:46:36] <sham1> Probably something like an empty stream
L976[13:46:54] <sham1> Empty stream in case of an error
L977[13:47:06] <sham1> An actual stream if everything goes correctly
L978[13:47:37] <sham1> Well that getStream() sounds like it could return Optional<Stream>
L979[13:47:50] ⇦ Quits: Xilef11 (~xilef11@bas1-ottawa09-1176116972.dsl.bell.ca) (Quit: Leaving)
L980[13:48:37] <sham1> But then it could not give you the error
L981[13:49:00] * gigaherz hits head against wall
L982[13:49:04] <gigaherz> my graph library is broken
L983[13:49:13] <gigaherz> it leaves neighbours on the list
L984[13:49:17] <gigaherz> that don't exist anymore
L985[13:50:57] <sham1> Well, Rust handels IO errors in a very nice manner
L986[13:51:26] <AKTheKnight> Giga, you have twitter?
L987[13:53:54] <Chais> I can't just System.out.println from within a TileEntity, can I?
L988[13:54:02] <gigaherz> yes AKTheKnight
L989[13:54:03] <sham1> Why couldn't you
L990[13:54:17] ⇦ Quits: abab9579 (~Abastro@221.138.238.111) (Ping timeout: 384 seconds)
L991[13:54:18] <gigaherz> https://twitter.com/therealgigaherz
L992[13:54:19] <gigaherz> that's me
L993[13:54:20] <gigaherz> ;P
L994[13:54:34] <gigaherz> Chais: forge redirects System.out to the log
L995[13:54:36] <Chais> I mean I can, it compiles, but I didn't see anything in the log, which leads me to believe that it's not enough
L996[13:54:53] <Chais> ok oO. in that case my TileEntity doesn't seem to tick...
L997[13:55:07] <gigaherz> put a breakpoint?
L998[13:55:08] <Chais> and yes, it implements ITickable
L999[13:55:09] <gigaherz> also
L1000[13:55:17] <gigaherz> ah nm then
L1001[13:55:19] <sham1> Chais: show code
L1002[13:55:29] <sham1> Also, I just followed you giga
L1003[13:55:42] <gigaherz> \o/
L1004[13:55:59] <Chais> sham1: http://sprunge.us/Caij?java
L1005[13:55:59] ⇦ Quits: Brokkoli (~Brokkoli@p5B23C638.dip0.t-ipconnect.de) (Ping timeout: 384 seconds)
L1006[13:56:18] <Chais> gigaherz: I'm not running it in the IDE, so I can't break, can I?
L1007[13:56:32] <sham1> WHY YOU NO
L1008[13:56:46] <gigaherz> wat o_O
L1009[13:56:48] <Chais> because Idea won't compile the stuff
L1010[13:56:55] <sham1> What?
L1011[13:56:55] <gigaherz> thne you didn't import it right
L1012[13:57:05] <sham1> Also, I see no System.out.println here4
L1013[13:57:06] <Chais> gradle does just fine, no idea how to tell Idea
L1014[13:57:16] <gigaherz> open idea -> open the build.gradle file
L1015[13:57:19] <Chais> sham1: I removed it already :D was at the beginning of tick()
L1016[13:57:19] <gigaherz> import as default wrapper
L1017[13:57:25] <gigaherz> open the gradle panel
L1018[13:57:31] <sham1> Also
L1019[13:57:32] <gigaherz> wait until the gradle panel is populated
L1020[13:57:38] <sham1> it should be !worldObj.isRemote
L1021[13:57:40] <sham1> Most likely
L1022[13:57:40] <gigaherz> run setupDecompWorkspace from it -- if you didn't od it
L1023[13:57:42] <gigaherz> and then
L1024[13:57:46] <gigaherz> run the genIntellijRuns task
L1025[13:57:46] ⇨ Joins: Upthorn (~ogmar@108-85-88-44.lightspeed.frokca.sbcglobal.net)
L1026[13:57:47] <sham1> As you want to do that kind of stuff at the server
L1027[13:57:55] <gigaherz> then press the blue refresh icon in the gradle panel
L1028[13:57:57] <gigaherz> and with that
L1029[13:57:58] <sham1> Client is the remote
L1030[13:57:59] <gigaherz> you should be set
L1031[13:58:11] <gigaherz> you should have "Minecraft client" and "minecraft server" in the run targets list
L1032[13:58:18] <gigaherz> then afterward
L1033[13:58:19] ⇨ Joins: DoodleFungus (~Mutter@207.118.3.22)
L1034[13:58:23] <gigaherz> every time you need to update forge/mappings
L1035[13:58:28] ⇨ Joins: Brokkoli (~Brokkoli@p5B23C522.dip0.t-ipconnect.de)
L1036[13:58:29] <gigaherz> just re-run the setupDecompWorkspace task
L1037[13:58:33] <gigaherz> and click the blue icon again
L1038[13:58:39] *** PaleoCrafter is now known as PaleOff
L1039[13:59:14] ⇨ Joins: Ipsis (~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk)
L1040[13:59:53] <DoodleFungus> Just out of curiosity, is there a reason Forge doesn't cache stitched textures to save startup time?
L1041[14:01:21] <gigaherz> caching the results of stitching?
L1042[14:01:24] <gigaherz> that'd be dangerous
L1043[14:01:29] <gigaherz> as it is
L1044[14:01:35] <gigaherz> forge has to stitch *twice*
L1045[14:01:38] <gigaherz> due to bugged mods
L1046[14:01:50] <gigaherz> so caching would just simply not work
L1047[14:01:56] <gigaherz> but even if it was a viable solution
L1048[14:02:00] <gigaherz> things like mod settings changes
L1049[14:02:13] <gigaherz> may change which textures are loaded
L1050[14:02:19] <gigaherz> although I suppose that could be stored as part of the cache
L1051[14:02:31] <gigaherz> well, as you know, forge accepts pull request -- if they make sense
L1052[14:02:42] <DoodleFungus> Good point. I thought you could just invalidate that on present mods, but yeah. Settings.
L1053[14:02:46] <Chais> gigaherz: thx.
L1054[14:02:47] <gigaherz> if you can provide a working cache implementation that is robust against unexpected texture list changes
L1055[14:03:02] <DoodleFungus> I'll try and find time for a PR (or just a mod for starters).
L1056[14:03:03] <gigaherz> it would be awesome ;p
L1057[14:05:00] <DoodleFungus> I've found that texture stitching takes a LOT of time on my low-end Mac, so yeah. It would be awesome.
L1058[14:07:28] <gigaherz> yeah texture stitching is the #1 cause of load times
L1059[14:07:41] <gigaherz> the main reason forge takes longer to load is that due to some very broken mods
L1060[14:07:46] <gigaherz> it has to run the stitching twice
L1061[14:07:47] <gigaherz> as I said
L1062[14:09:21] <LexManos> The frist run should take almost no time.
L1063[14:09:32] <LexManos> As we skip it and make everything missing texture
L1064[14:09:51] <LexManos> which at the end of the day is just 2 loops over the registered textures.
L1065[14:10:22] <gigaherz> oh I didn't know that
L1066[14:10:55] <Chais> lol... set a breakpoint, broke the block in question and idea hung up...
L1067[14:11:04] <gigaherz> wat XD
L1068[14:11:26] ⇨ Joins: tbsc (~tbsc@bzq-84-109-126-252.cablep.bezeqint.net)
L1069[14:11:31] ⇨ Joins: mustangflyer (~mustangfl@p5483476E.dip0.t-ipconnect.de)
L1070[14:11:34] <Chais> seems to have taken my DE with it... don't have a cursor any more...
L1071[14:11:38] ⇦ Quits: mustangflyer (~mustangfl@p5483476E.dip0.t-ipconnect.de) (Client Quit)
L1072[14:11:57] <Chais> I can switch between running programs, but not start new ones...
L1073[14:12:59] ⇦ Quits: Samario (~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net) (Ping timeout: 384 seconds)
L1074[14:14:27] <Chais> ok it didn't completely hang. could resume execution
L1075[14:14:45] <Chais> but the breakpoint in tick() is never reacher...
L1076[14:14:51] ⇨ Joins: Girafi (Girafi@0x555178eb.adsl.cybercity.dk)
L1077[14:15:50] <Chais> *reached
L1078[14:16:47] <Chais> sham1: and no, I want stuff to happen only client side in that case. that blocks counts nearby entities. no need to bother the server with that
L1079[14:16:59] <sham1> Umn
L1080[14:17:09] <sham1> You can do that with the server
L1081[14:17:13] ⇦ Quits: minot (~minot@pool-100-1-168-123.nwrknj.fios.verizon.net) (Ping timeout: 186 seconds)
L1082[14:17:20] <sham1> In fact, it is recommended you do that
L1083[14:17:38] <Chais> another thing to get towards jty then ^^
L1084[14:18:57] <Chais> sham1: also I want to change the appearence of the block accordingly, so I really wanna do it client-side in this case
L1085[14:19:13] ⇦ Quits: DoodleFungus (~Mutter@207.118.3.22) (Ping timeout: 186 seconds)
L1086[14:19:43] <sham1> Set the blockstate at the server
L1087[14:19:49] <sham1> It will be synced to the client
L1088[14:19:57] <sham1> And it will change the model accordingly
L1089[14:20:01] <Chais> several times a second?
L1090[14:20:31] <sham1> Yes
L1091[14:20:46] ⇨ Joins: Mohron (~mohron@2a00:61e0:4054:a201:28e4:348:e4a3:7d4a)
L1092[14:21:36] <Chais> but right now setting !worldObj.isRemote wouldn't change anything. tick() is never called
L1093[14:22:06] <sham1> Care to show your new block code
L1094[14:22:09] <sham1> I need to check a thing
L1095[14:22:17] <Chais> didn't change it
L1096[14:22:44] <sham1> I lost the link
L1097[14:22:57] <Chais> sham1: http://sprunge.us/Caij?java
L1098[14:23:03] <sham1> Stop pinging me
L1099[14:23:05] <sham1> Please
L1100[14:23:06] <Chais> sry
L1101[14:23:11] <Chais> bad habit
L1102[14:23:18] <sham1> Umn
L1103[14:23:22] <sham1> I asked the block code
L1104[14:23:26] <Chais> used to more active channels
L1105[14:23:28] <sham1> Not the TileEntity
L1106[14:23:29] <Chais> oh sry
L1107[14:23:51] <Chais> http://sprunge.us/jCKb?java
L1108[14:24:21] <sham1> You never actually tell Minecraft that you have a tileentity
L1109[14:24:37] <sham1> You have to override public boolean hasTileEntity
L1110[14:24:54] <sham1> At the block class
L1111[14:25:01] <sham1> The one with IBlockAccess and IBlockState
L1112[14:26:27] <Chais> and just return true?
L1113[14:26:39] <sham1> yes
L1114[14:27:03] ⇨ Joins: minot (~minot@pool-100-1-168-123.nwrknj.fios.verizon.net)
L1115[14:27:15] <Chais> I only have one with IBlockState
L1116[14:27:24] <Chais> no IBlockAccess
L1117[14:27:27] <sham1> Well, use the one that is not deprecated
L1118[14:29:51] <Chais> and actually, doesn't registerTileEntity give that away?
L1119[14:29:59] <sham1> No
L1120[14:30:21] <Chais> kinda misleading name then
L1121[14:30:31] <gigaherz> registration is so that it can be serialized to disk
L1122[14:30:31] <sham1> Stop assuming intelligent things about the codebase
L1123[14:30:34] <gigaherz> for saving purposes
L1124[14:30:42] <gigaherz> it has nothing to do with who and when uses it
L1125[14:30:47] <Chais> ah ok
L1126[14:31:29] <Chais> well in that case I guess I have to actually return the respective TileEntity somehow?
L1127[14:32:40] <sham1> Well, you return your tileentity in the createTileEntity
L1128[14:33:01] <Chais> I create it. I return it in getActualState
L1129[14:33:10] <gigaherz> wat
L1130[14:33:27] <gigaherz> the TileEntity is created by createTileEntity
L1131[14:33:31] <gigaherz> and then stored in the world grid
L1132[14:33:42] <gigaherz> you can obtain it later using world.getTileEntity(pos)
L1133[14:33:49] <Chais> createNewTileEntity. cerateTileEntity isn't overridden
L1134[14:33:59] <Chais> *create
L1135[14:34:00] <gigaherz> createNewTileEntity is part of ITileEntityProvider
L1136[14:34:02] <gigaherz> you shouldn't use that
L1137[14:34:16] <gigaherz> it has been deprecated since 1.7 or so
L1138[14:34:31] <Chais> I have no idea what I *should* do. right now I'm doing what the tut tells me to
L1139[14:34:39] <gigaherz> and we are talling you the tut is wrong ;P
L1140[14:34:58] <Chais> so my block shouldn'
L1141[14:35:12] <Chais> shouldn't implement ITileEntityProvider either?
L1142[14:35:21] <sham1> I need to slap McJty whenever I see him
L1143[14:35:22] <sham1> NO
L1144[14:35:25] <sham1> It's deprecated
L1145[14:35:27] *** linuxdaemon is now known as opinion
L1146[14:35:51] <Chais> is there any documentation?
L1147[14:35:56] <sham1> You need to use the Blockstate sensitive versions provided by the Block class
L1148[14:36:04] <sham1> That's a good point
L1149[14:36:05] *** opinion is now known as linuxdaemon
L1150[14:36:20] <sham1> I don't think there is a rtfm for doing tile entities
L1151[14:36:46] <gigaherz> yeah
L1152[14:36:50] <gigaherz> but it's so simple it's not worth it
L1153[14:36:53] *** linuxdaemon is now known as opinion
L1154[14:36:59] <gigaherz> just override hasTileEntity and createTileEntity
L1155[14:37:03] <Chais> easy to say if you're used to it
L1156[14:37:10] <gigaherz> and avoid ITileEntityProvider and the overrides that are deprecated
L1157[14:37:21] <sham1> Unless it is getStateFromMeta
L1158[14:37:33] <Chais> no. no meta
L1159[14:37:36] <gigaherz> that's not related to tileentities
L1160[14:37:36] <gigaherz> ;P
L1161[14:37:41] <sham1> Indeed
L1162[14:37:45] <sham1> But for any block stuff
L1163[14:37:50] <sham1> And why "no meta"
L1164[14:38:01] <sham1> It is for when you have to save a permutation to the disk
L1165[14:38:14] <sham1> There still is metadata for a while
L1166[14:38:16] <Chais> because this block doesn't need meta. it doesn't need to persist anything
L1167[14:38:18] <sham1> Until they can remove it
L1168[14:38:31] <sham1> Chais: that was for future reference
L1169[14:39:14] <Chais> I mean just a stub for creating your own blocks would be really helpful. because right now I can only guess which methods I need to override and which not
L1170[14:39:32] <Chais> and which interfaces a block should implement
L1171[14:39:35] <sham1> We don't provide code to just copy and paste
L1172[14:39:39] *** opinion is now known as linuxdaemon
L1173[14:39:55] ⇨ Joins: Samario (~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net)
L1174[14:39:59] <Chais> but you don't provide documentation either. which only leaves guesswork, which leads to mistakes
L1175[14:40:15] <sham1> That's because we expect people to read the javadocs
L1176[14:40:28] <Chais> there barely is any
L1177[14:41:10] *** LatvianModder is now known as Latvian|mc
L1178[14:41:12] <sham1> There's enough
L1179[14:41:22] <sham1> For people who understand how programming works
L1180[14:41:22] <Chais> none that exceed the basic signature of methods
L1181[14:41:28] <sham1> Umn
L1182[14:41:33] <gigaherz> Chais: the documentation is created by the community
L1183[14:41:41] <gigaherz> we are all equally guilty of not contributing enough
L1184[14:42:27] <gigaherz> after I learned how to use TEs, I didn't write any docs, and neither did sham1, and probably neither will you
L1185[14:42:34] <gigaherz> so docs will remain in written ;P
L1186[14:42:50] <sham1> Wait
L1187[14:42:54] <sham1> How did that not ping me
L1188[14:43:00] * gigaherz shrugs
L1189[14:43:07] <gigaherz> maybe it read it as "sham1,"?
L1190[14:44:32] <Chais> I wouldn't even know where to find any documentation
L1191[14:44:45] <Chais> the forge doc barely covers the very basics
L1192[14:48:51] <sham1> That could be it
L1193[14:49:02] <sham1> Although if it is, then damn it irssi
L1194[14:49:13] ⇦ Quits: IceDragon (~ThatGuy@184.170.2.232) (Ping timeout: 186 seconds)
L1195[14:50:16] <Chais> weechat ^^
L1196[14:50:40] <sham1> Nah
L1197[14:50:48] ⇦ Quits: McJty (~jorrit@94-225-203-206.access.telenet.be) (Quit: Ik ga weg)
L1198[14:53:02] ⇦ Quits: thecodewarrior (~thecodewa@75-128-36-21.static.mtpk.ca.charter.com) (Remote host closed the connection)
L1199[14:57:13] ⇦ Quits: minot (~minot@pool-100-1-168-123.nwrknj.fios.verizon.net) (Ping timeout: 186 seconds)
L1200[14:58:20] <Chais> so which interface would a TE block need to implement?
L1201[14:58:43] <Chais> since it's apparently not ITileEntityProvider (not marked as deprecated for me btw)
L1202[14:59:54] <gigaherz> none.
L1203[15:00:05] <gigaherz> just override Block's hasTileEntity and createTileEntity
L1204[15:02:47] <sham1> Ah
L1205[15:02:55] <Chais> my TE's tick() function still isn't called
L1206[15:03:06] <sham1> Now I was able to find the sources made by setupDecompWorkspace
L1207[15:03:13] <sham1> Show new block code
L1208[15:03:35] <sham1> You obviously have to replace the block to create the tileentity
L1209[15:03:48] <Chais> did
L1210[15:04:09] <diesieben07> wait, tick() method?
L1211[15:04:18] <Chais> yup
L1212[15:04:19] <diesieben07> you implemented the wrong ITickable.
L1213[15:04:32] <sham1> Oh yeah
L1214[15:04:34] <sham1> Damn it
L1215[15:04:44] <Chais> how many are there oO
L1216[15:04:48] <diesieben07> 2
L1217[15:05:24] <Chais> that explains this
L1218[15:06:14] <Chais> yeah, jty's github shows the correct import. could've checked that
L1219[15:06:41] <diesieben07> or you could have been suspicious about the one you used being @SideONly
L1220[15:08:11] <Chais> it wasn't
L1221[15:08:43] <diesieben07> yeah it is.
L1222[15:09:49] <Chais> where?
L1223[15:10:37] <diesieben07> http://i.imgur.com/IU7MCy0.png
L1224[15:11:13] ⇦ Quits: Girafi (Girafi@0x555178eb.adsl.cybercity.dk) (Ping timeout: 186 seconds)
L1225[15:11:33] <Chais> well, that's not visible on child classes
L1226[15:14:11] *** Latvian|mc is now known as LatvianModder
L1227[15:22:03] <Necr0> I still don't know where to put the auto-jump distance for my PR. I put it in the EntityPlayerSP instance for now. Should I put it somewhere else or is it fine that way?
L1228[15:23:34] ⇨ Joins: covers1624 (~covers162@ppp118-210-124-127.lns20.adl2.internode.on.net)
L1229[15:24:14] ⇦ Quits: ichttt (~ichttt@pd95dfd8e.dip0.t-ipconnect.de) (Quit: Leaving)
L1230[15:25:37] ⇦ Quits: covers1624_ (~covers162@ppp118-210-124-127.lns20.adl2.internode.on.net) (Ping timeout: 186 seconds)
L1231[15:25:55] ⇦ Quits: covers1624 (~covers162@ppp118-210-124-127.lns20.adl2.internode.on.net) (Max SendQ exceeded)
L1232[15:26:00] ⇨ Joins: KnightMiner_ (~KnightMin@68.255.0.49)
L1233[15:26:21] ⇨ Joins: covers1624 (~covers162@ppp118-210-124-127.lns20.adl2.internode.on.net)
L1234[15:27:11] ⇦ Quits: KnightMiner (~KnightMin@adsl-68-255-0-49.dsl.emhril.sbcglobal.net) (Ping timeout: 198 seconds)
L1235[15:27:14] *** KnightMiner_ is now known as KnightMiner
L1236[15:29:12] ⇨ Joins: Girafi (Girafi@0x555178eb.adsl.cybercity.dk)
L1237[15:33:11] ⇦ Quits: Ipsis (~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk) (Ping timeout: 198 seconds)
L1238[15:38:01] *** Jezza is now known as Jezza|AFK
L1239[15:39:44] <Cypher121> I have an itemblock with additional conditions for block placement in onItemUse. if those are not met, should I return PASS or FAIL?
L1240[15:40:32] ⇦ Quits: Hgrebnednav (~Hgrebnedn@d8d872a6e.access.telenet.be) (Read error: Connection reset by peer)
L1241[15:40:43] <Cypher121> ItemBed returns FAIL, should I keep it that way?
L1242[15:44:18] ⇦ Quits: Kenny164 (~pkinney@5.80.60.119) (Remote host closed the connection)
L1243[15:46:45] ⇨ Joins: KGS (~KGS@h-155-4-135-249.na.cust.bahnhof.se)
L1244[15:48:17] ⇦ Quits: tbsc (~tbsc@bzq-84-109-126-252.cablep.bezeqint.net) (Ping timeout: 192 seconds)
L1245[15:50:32] ⇨ Joins: KnightMiner_ (~KnightMin@68.255.1.247)
L1246[15:50:44] *** Jezza|AFK is now known as Jezza
L1247[15:52:23] ⇦ Quits: KnightMiner (~KnightMin@68.255.0.49) (Ping timeout: 198 seconds)
L1248[15:54:24] <gigaherz> Cypher121: FAIL means you accept the event
L1249[15:54:29] <gigaherz> and it shouldn't continue with the next hand
L1250[15:54:34] <gigaherz> PASS means you don't want it
L1251[15:54:38] <gigaherz> so it can activate the next hand
L1252[15:54:39] <gigaherz> IIRC
L1253[15:54:40] ⇦ Quits: agowa338 (~Thunderbi@p5491858F.dip0.t-ipconnect.de) (Ping timeout: 190 seconds)
L1254[16:01:53] *** KnightMiner_ is now known as KnightMiner
L1255[16:06:19] ⇦ Quits: Saturn812 (~Saturn812@93.170.168.24) (Ping timeout: 384 seconds)
L1256[16:12:26] ⇦ Parts: Aroma1997 (~Aroma1997@104.131.97.244) ())
L1257[16:18:27] *** fry is now known as fry|sleep
L1258[16:19:00] ⇦ Quits: TechnicianLP (~Technic@p4FE56995.dip0.t-ipconnect.de) (Ping timeout: 190 seconds)
L1259[16:20:02] ⇦ Quits: sokratis12GR (kiwiirc@62.221.158.165) (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
L1260[16:21:57] ⇨ Joins: Xilef11 (~xilef11@bas1-ottawa09-1176116972.dsl.bell.ca)
L1261[16:23:43] <Xilef11> returning "true" in my TESR#isGlobalRenderer doesn't seem to do anything... https://github.com/Xilef11/Runes-of-Wizardry/blob/starbeam/src/main/java/com/zpig333/runesofwizardry/client/render/RenderDustActive.java
L1262[16:27:01] <gigaherz> isGlobalRenderer ensures that the TESR is always considered
L1263[16:27:57] <gigaherz> non-global TESRs are subject to extra logic
L1264[16:28:27] <gigaherz> you still have to increase the AABB
L1265[16:29:22] <gigaherz> I think the isGlobalRenderer may only work on the vertical axis
L1266[16:30:41] ⇨ Joins: Cojo (~Cojo@2606:a000:4c46:8d00:a914:39b0:928e:8573)
L1267[16:33:35] *** kirby|gone is now known as mrkirby153
L1268[16:34:38] <Xilef11> what AABB? I did increase the TE's getMaxRenderDistanceSquared() value, but the TESR still stops drawing when the block is out of the direct view
L1269[16:38:22] <iso2013> Can someone update TerrainControl 1.7.10 to 1.10 pleeease? I'm willing to pay
L1270[16:40:12] <gigaherz> Xilef11: getRenderBoundingBox?
L1271[16:40:36] <gigaherz> return INFINITE_EXTENT_AABB
L1272[16:40:38] <gigaherz> or something adequate
L1273[16:41:06] <gigaherz> iso2013: willieaway said yesterday he was looking for something simple to update -- how complex is that mod? ;P
L1274[16:41:21] <iso2013> nightmare fuel
L1275[16:41:29] <iso2013> otherwise i'd update it :P
L1276[16:41:34] ⇨ Joins: Abastro (~Abastro@221.138.238.111)
L1277[16:41:35] ⇦ Quits: Necr0 (~Necr0@p200300700D46EB0D34B5DEC9C6A68A3A.dip0.t-ipconnect.de) (Read error: Connection reset by peer)
L1278[16:41:57] ⇨ Joins: Necr0 (~Necr0@p200300700D46EB0D34B5DEC9C6A68A3A.dip0.t-ipconnect.de)
L1279[16:43:51] <Xilef11> thanks
L1280[16:44:43] ⇨ Joins: Noppie (~Noppes@82-168-99-26.ip.telfort.nl)
L1281[16:46:31] ⇦ Quits: Girafi (Girafi@0x555178eb.adsl.cybercity.dk) ()
L1282[16:48:15] ⇦ Quits: Abastro (~Abastro@221.138.238.111) (Ping timeout: 384 seconds)
L1283[16:49:14] *** kroeser is now known as kroeser|away
L1284[16:49:56] ⇦ Quits: Seppon (~Noppes@82-168-99-26.ip.telfort.nl) (Ping timeout: 384 seconds)
L1285[16:50:30] ⇦ Quits: Necr0 (~Necr0@p200300700D46EB0D34B5DEC9C6A68A3A.dip0.t-ipconnect.de) (Ping timeout: 384 seconds)
L1286[16:55:04] ⇦ Quits: Samario (~Samario@cpc5-bigg3-2-0-cust219.9-2.cable.virginm.net) (Quit: See ya.)
L1287[16:55:18] ⇦ Quits: Xilef11 (~xilef11@bas1-ottawa09-1176116972.dsl.bell.ca) (Quit: Leaving)
L1288[16:59:41] <Lymia> wtf.
L1289[16:59:57] <Lymia> This Terraria mod loader has flags to hide resources and code from their extractor in the mod file format.
L1290[17:00:08] <Lymia> Because people who mod a game totally can't bypass such a thing trivially.
L1291[17:01:33] <theFlaxbeard> I keep running out of memory in my dev environment, and I'm not sure if its because of my mod. What's the best way to diagnose a potential memory leak?
L1292[17:03:27] ⇨ Joins: killjoy (~killjoy@2606:a000:1118:c06d:1c0:490:2324:40a2)
L1293[17:07:48] ⇦ Quits: romibi (~quassel@cable-static-7-174.rsnweb.ch) (Ping timeout: 186 seconds)
L1294[17:09:23] <diesieben07> theFlaxbeard, a profiler
L1295[17:10:13] ⇨ Joins: Drullkus (~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
L1296[17:10:19] <theFlaxbeard> Any specific one you recommend?
L1297[17:10:21] ⇦ Quits: BlueMonster (uid82864@id-82864.tooting.irccloud.com) (Quit: Connection closed for inactivity)
L1298[17:10:38] ⇦ Quits: Noppie (~Noppes@82-168-99-26.ip.telfort.nl) (Read error: Connection reset by peer)
L1299[17:10:57] <diesieben07> only used VisualVM, it comes with your JDK
L1300[17:11:45] <gigaherz> I have a visualvm "launcher" plugin for idea installed
L1301[17:12:03] <diesieben07> yep
L1302[17:12:41] <gigaherz> oh hey
L1303[17:12:41] <gigaherz> https://plugins.jetbrains.com/plugin/7115?pr=
L1304[17:12:44] <gigaherz> there's a new version
L1305[17:13:51] ⇦ Quits: Drullkus (~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net) (Ping timeout: 192 seconds)
L1306[17:14:17] ⇨ Joins: Drullkus (~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
L1307[17:17:18] ⇦ Quits: Ordinastie_ (~Ordinasti@87-231-58-94.rev.numericable.fr) (Quit: Leaving)
L1308[17:18:14] ⇦ Quits: founderio (~Thunderbi@p200300C4E3C0EA0068C518523839E82C.dip0.t-ipconnect.de) (Quit: founderio)
L1309[17:22:29] ⇦ Quits: Turkey (~Turkey@cpe-24-95-73-99.columbus.res.rr.com) (Read error: Connection reset by peer)
L1310[17:23:26] ⇨ Joins: Turkey (~Turkey@cpe-24-95-73-99.columbus.res.rr.com)
L1311[17:25:16] ⇦ Quits: SanAndreasP (~SanAndrea@p54b60444.dip0.t-ipconnect.de) (Quit: Leaving)
L1312[17:30:02] ⇦ Quits: Nitrodev (~Nitrodev@87-92-75-66.bb.dnainternet.fi) (Read error: Connection reset by peer)
L1313[17:30:31] *** amadornes is now known as amadornes[OFF]
L1314[17:32:42] ⇦ Quits: killjoy (~killjoy@2606:a000:1118:c06d:1c0:490:2324:40a2) (Ping timeout: 192 seconds)
L1315[17:33:42] ⇦ Quits: dangranos (~dangranos@hekate.pc-logix.com) (Ping timeout: 195 seconds)
L1316[17:42:20] <gigaherz> GAH!
L1317[17:42:20] <gigaherz> [00:41:53] [Netty Server IO #1/WARN]: Catched unhandled exception : [class gigaherz.graph.api.test.TileNetworkTest] java.lang.NullPointerException
L1318[17:42:22] <gigaherz> WHERE?!
L1319[17:42:26] <gigaherz> print a stacktrace dammit!
L1320[17:42:46] <Tazz> haha
L1321[17:42:49] <diesieben07> also catched? seriously? :D
L1322[17:42:59] <Tazz> ikr
L1323[17:43:28] ⇦ Quits: Jezza (~Jezza@92.206.5.6) (Quit: Leaving)
L1324[17:43:31] <Tazz> at least its not a constant propagator that does nothing but remove constant instructions from the flow graph >.<
L1325[17:43:48] <diesieben07> i dont even have "Catched" anywhere in the forge workspace except somewhere in ASM
L1326[17:44:28] <gigaherz> I think it's through WAILA
L1327[17:44:36] <gigaherz> [00:41:53] [Netty Server IO #1/WARN]: gigaherz.graph.api.test.WailaProviders$NetworkTestProvider.getNBTData:69
L1328[17:44:36] <gigaherz> [00:41:53] [Netty Server IO #1/WARN]: mcp.mobius.waila.network.Message0x01TERequest.channelRead0:133
L1329[17:44:36] <gigaherz> [00:41:53] [Netty Server IO #1/WARN]: Catched unhandled exception : [class gigaherz.graph.api.test.TileNetworkTest] java.lang.NullPointerException
L1330[17:44:51] <diesieben07> damn wall-e :D
L1331[17:45:04] <Tazz> wall-e? wtf
L1332[17:45:05] <Tazz> XD
L1333[17:45:15] <diesieben07> etho called it that for a while :D
L1334[17:45:23] <Tazz> oh haha
L1335[17:45:26] <Tazz> love etho haha
L1336[17:45:30] <gigaherz> which means it must be "network.getNetworkHandler()"
L1337[17:45:40] <gigaherz> but that makes 0 sense
L1338[17:45:42] <diesieben07> you cannot NOT love etho
L1339[17:45:45] <gigaherz> since it's just return
L1340[17:45:49] <Tazz> diesieben07, ikr
L1341[17:45:55] <diesieben07> he is the cutest
L1342[17:45:56] <Tazz> hes genious and funny
L1343[17:46:56] <Tazz> I love his crash landing series haha
L1344[17:58:17] ⇨ Joins: Mimiru (~Mimiru@2607:5300:60:9553::1bad:babe)
L1345[17:58:19] *** Server sets mode: +CQcnrtf #RegisterYourNameMoron
L1346[18:07:48] ⇨ Joins: Abastro (~Abastro@221.138.238.111)
L1347[18:12:14] *** hipsterpig is now known as Minecraft
L1348[18:12:32] *** Minecraft is now known as pig
L1349[18:19:21] ⇨ Joins: MalkContent (kiwiirc@p5B02D971.dip0.t-ipconnect.de)
L1350[18:19:57] <MalkContent> i recently played crashlanding which was quite cool
L1351[18:20:16] <MalkContent> are there any more maps like that? i don't know the term i'd google for
L1352[18:20:19] *** mumfrey is now known as Mumfrey
L1353[18:20:47] <MalkContent> and i know there's these skyblock thingies, but those aren't really up my alley
L1354[18:21:20] ⇦ Quits: Abastro (~Abastro@221.138.238.111) (Ping timeout: 384 seconds)
L1355[18:23:10] <gigaherz> MalkContent: Regrowth?
L1356[18:23:17] <gigaherz> on the FTB launcher
L1357[18:23:22] <gigaherz> it's magick-y, HQM-based
L1358[18:23:40] *** Darkhax_AFK is now known as Darkhax
L1359[18:23:46] <gigaherz> or blastoff if you want more techy
L1360[18:24:05] ⇨ Joins: theFlaxbeard (~theFlaxbe@65-128-188-122.mpls.qwest.net)
L1361[18:24:18] <gigaherz> or "journey to the core" if you want extra difficulty
L1362[18:24:37] <MalkContent> thank, imma look at those :)
L1363[18:24:48] <theFlaxbeard> diesieben07: Got the profiler working, I'm using the sampler but I can't seem to find anything too specific other than what data types are using the most memory
L1364[18:24:58] <gigaherz> or Void World which is more sci-fi
L1365[18:25:01] <theFlaxbeard> Is there a way to get more specific data?
L1366[18:25:24] <gigaherz> theFlaxbeard: are you looking for memory leaks
L1367[18:25:26] <gigaherz> or cpu issues?
L1368[18:25:49] <theFlaxbeard> Memory leak
L1369[18:25:53] <theFlaxbeard> potential
L1370[18:25:57] * gigaherz nods
L1371[18:26:03] <Horfius> VisualVM?
L1372[18:26:06] <gigaherz> yeah can't help with that, never done leak tracking ;P
L1373[18:26:12] <theFlaxbeard> Yeah, through the eclipse launcher plugin
L1374[18:28:23] ⇨ Joins: Doty1154 (~Doty1154@2601:648:8000:134f:6c97:1fdd:537b:10c2)
L1375[18:30:05] <diesieben07> theFlaxbeard, what do you want to know? :D
L1376[18:30:22] <theFlaxbeard> How I can use the sampler to more precisely figure out if/where the memleak is coming from
L1377[18:30:30] <theFlaxbeard> right now all I can see is which data types are consuming the most memory
L1378[18:31:15] <diesieben07> yes. let me try to remmeber the buttons here
L1379[18:31:52] <theFlaxbeard> I can specify packages to profile but only for the CPU profiling
L1380[18:32:46] ⇦ Quits: GildedGames (~GildedGam@ec2-54-146-229-97.compute-1.amazonaws.com) (Ping timeout: 192 seconds)
L1381[18:34:24] <theFlaxbeard> Erm - it does turn out I only assigned 1GB of memory to my debug configuration, that could be part of the issue :P
L1382[18:36:12] ⇨ Joins: wizjany (~wizjany@2604:180::c1e2:128b)
L1383[18:37:15] <diesieben07> huh i cannot find how to do this
L1384[18:40:17] <gigaherz> unascribed: around? https://github.com/gigaherz/GraphLib
L1385[18:41:27] <diesieben07> IGraphThing? Seriously? :D
L1386[18:42:00] <gigaherz> sure ;p
L1387[18:42:35] <gigaherz> I could have easily called it "IGraphContainer" or something, but I was calling them "things" before I made the interface
L1388[18:42:37] <gigaherz> so it sortof stuck ;P
L1389[18:42:59] <diesieben07> lol
L1390[18:43:02] <diesieben07> Node?
L1391[18:43:07] <gigaherz> ?
L1392[18:43:14] <diesieben07> it's a node.
L1393[18:43:20] <gigaherz> no
L1394[18:43:23] <gigaherz> Node is an object in there
L1395[18:43:43] <diesieben07> what is the difference between node and IGraphThing
L1396[18:43:58] <gigaherz> well in hindsight, I'm not sure
L1397[18:44:07] <gigaherz> the original idea was that you could do TileEntity implements IGraphThing
L1398[18:44:17] <gigaherz> and the Node would be the internal data needed by the Graph
L1399[18:44:23] ⇨ Joins: Abastro (~Abastro@221.138.238.111)
L1400[18:44:44] <diesieben07> i get that. but i don't see why that needs to be an interface
L1401[18:44:55] <diesieben07> can't it just be Graph<T> and Node<T>?
L1402[18:45:10] <gigaherz> yes it could ;P
L1403[18:45:21] <gigaherz> and well
L1404[18:45:28] <gigaherz> the point was to be able to store the Graph in it
L1405[18:45:29] <gigaherz> XD
L1406[18:45:38] <diesieben07> aha
L1407[18:45:41] <gigaherz> so I can check if it was already in another graph
L1408[18:45:53] <gigaherz> but yes, I could generify
L1409[18:46:15] <gigaherz> Graph<T implements IGraphThing>
L1410[18:46:25] <diesieben07> lol
L1411[18:46:27] <gigaherz> XD
L1412[18:46:49] <gigaherz> (well extends because java.=
L1413[18:46:51] <gigaherz> )*
L1414[18:47:35] ⇨ Joins: sinkillerj (~sinkiller@nc-67-232-14-224.dhcp.embarqhsd.net)
L1415[18:48:03] <gigaherz> ah no I can't generify
L1416[18:48:10] <gigaherz> not that easily, at least
L1417[18:48:15] <gigaherz> due to mergeWith(other graph)
L1418[18:48:26] <gigaherz> I'd have to also keep the class if I want to make that type-safe
L1419[18:49:46] <diesieben07> uhhh aha :D
L1420[18:49:56] <diesieben07> haven't looked at it much :P
L1421[18:50:01] <gigaherz> np
L1422[18:50:18] <gigaherz> those kinds of questions help reduce the BS in a design ;p
L1423[18:51:39] ⇦ Quits: Gil (uid147942@id-147942.brockwell.irccloud.com) (Quit: Connection closed for inactivity)
L1424[18:53:57] ⇨ Joins: pixlepix (uid14779@id-14779.ealing.irccloud.com)
L1425[19:00:43] <unascribed> gigaherz, am now
L1426[19:01:40] <gigaherz> hmm so
L1427[19:01:51] <gigaherz> what owuld be a better name than IGraphThing?
L1428[19:01:52] <gigaherz> ;P
L1429[19:02:08] <gigaherz> GraphHolder?
L1430[19:02:13] <unascribed> IGraphElement?
L1431[19:02:24] <unascribed> oh
L1432[19:02:26] <unascribed> IGraphHolder
L1433[19:02:28] <gigaherz> IGraphNode may also work
L1434[19:02:28] <diesieben07> IThingThatIsInAGraphAndStartsWithAnUnecessaryI
L1435[19:02:30] <unascribed> I hadn't looked at the API yet
L1436[19:02:41] <TehNut> IGraphStuff
L1437[19:02:43] <unascribed> it starts with an I because legacy naming
L1438[19:02:51] <unascribed> oh, it is a graph element
L1439[19:02:54] <unascribed> IGraphElement :L
L1440[19:02:54] <gigaherz> it starts with an I because I like the convention
L1441[19:03:02] <diesieben07> we are in 2016, legacy can suck my you know what
L1442[19:03:08] <unascribed> "The thing is not of this graph."
L1443[19:03:09] <TehNut> toe?
L1444[19:03:13] <BaronNox> mmh how do I detect key presses when a gui is open in 1.9.4?
L1445[19:03:13] <gigaherz> but I don't mind removing it
L1446[19:03:14] <gigaherz> ,p
L1447[19:03:23] <BaronNox> KeyInputEvent?
L1448[19:03:25] <gigaherz> BaronNox: if it's a GuiScreen or such, there's an event for it
L1449[19:03:30] <gigaherz> a method in the gui itself
L1450[19:03:56] <BaronNox> Oh nice, didn’t see it :D
L1451[19:04:05] <diesieben07> GuiScreenEvent.KeyboardInputEvent
L1452[19:05:10] <gigaherz> that ^ if it's not your own GUI ;P
L1453[19:05:18] <gigaherz> keyTyped if it's your own
L1454[19:06:11] <gigaherz> hmf somehow GraphElement doesn't feel right to me
L1455[19:06:12] <BaronNox> Does it work with scroll wheel up/down too?
L1456[19:06:28] <gigaherz> that's handleMouseInput
L1457[19:06:45] <gigaherz> https://github.com/gigaherz/Ender-Rift/blob/master/src/main/java/gigaherz/enderRift/gui/GuiBrowser.java#L241
L1458[19:06:51] <gigaherz> https://github.com/gigaherz/Ender-Rift/blob/master/src/main/java/gigaherz/enderRift/gui/GuiBrowser.java#L255
L1459[19:07:16] <BaronNox> Thank you very much giga
L1460[19:07:25] <gigaherz> in windows, a standard mouse wheel is 120 units per tick, but the mouse wheel can be high-precision, in which case the value may be smaller
L1461[19:07:39] ⇦ Quits: Drullkus (~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net) (Quit: restart)
L1462[19:07:40] <diesieben07> that is OS specific? really? :D
L1463[19:07:46] <gigaherz> in linux
L1464[19:07:47] ⇦ Quits: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net) (Quit: Leaving)
L1465[19:07:50] <gigaherz> mouse wheel is 2 buttons
L1466[19:07:53] <pixlepix> Are mods from /libs now auto loaded by forge? I'm setting a deobf jar to 'provided', but still getting duplicate mod errors
L1467[19:07:59] <diesieben07> buttons? wat
L1468[19:07:59] <gigaherz> there's no "high precision" handling at all
L1469[19:08:02] ⇨ Joins: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net)
L1470[19:08:03] <gigaherz> no axis or anything
L1471[19:08:11] <gigaherz> just a mouse event with "wheel_up" and "wheel_down" or similar
L1472[19:08:19] <diesieben07> pixlepix, they always were. libs/ is put on the classpath
L1473[19:08:22] <iso2013> :o i made hexchat have the minecraft font
L1474[19:08:26] <diesieben07> oh god :D
L1475[19:08:27] <gigaherz> lol
L1476[19:08:38] ⇨ Joins: portablejim (~portablej@1.41.233.79)
L1477[19:08:56] ⇨ Joins: Drullkus (~Dru11kus@2601:646:8301:ead3:48fa:51b6:db8a:756d)
L1478[19:08:56] <pixlepix> @diesieben07 I thought /libs used to just be added by FG? I remember doing this before, at least
L1479[19:09:05] <diesieben07> uh, yeah it is added by FG
L1480[19:09:54] ⇦ Quits: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net) (Client Quit)
L1481[19:10:02] <pixlepix> I mean, it used to be that libs/*.jar were added individually as libaries
L1482[19:10:02] <gigaherz> fuck it, GraphObject
L1483[19:10:04] <gigaherz> and without the I ;P
L1484[19:10:07] ⇨ Joins: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net)
L1485[19:10:14] <diesieben07> <3
L1486[19:10:25] <pixlepix> Anyway, whats the cleanest option to use a different jar during runtime
L1487[19:10:26] <diesieben07> pixlepix, yes, isn't that what you are experiencing?
L1488[19:10:28] <gigaherz> semver dictates that this should be 2.0, but fuck that too
L1489[19:10:28] <gigaherz> XD
L1490[19:10:44] <iso2013> ew i have to run HexChat at size 12 or size 6 otherwise it looks hideous
L1491[19:10:49] <pixlepix> @diesieben07 I tried to modify the libaries manually from Intellij, but it's still getting loaded in both places
L1492[19:10:55] <TehNut> that is why you never submit 1.0 until you publicly post your code :p
L1493[19:10:58] <diesieben07> both places?
L1494[19:11:02] <diesieben07> i am confuzzled
L1495[19:11:09] ⇨ Joins: elan_oots (~elan_oots@ip-64-134-34-94.public.wayport.net)
L1496[19:11:36] <pixlepix> I have a deobf jar in /libs, and a normal one in /run/mods
L1497[19:11:45] <diesieben07> oh god why? you only need one.
L1498[19:11:48] <pixlepix> I want to use the deobf jar during compile time and the standard one during runtime
L1499[19:11:54] <pixlepix> The deobf jar breaks on my mappings
L1500[19:12:01] <TehNut> why are you even using a deobf jar
L1501[19:12:11] <pixlepix> OH! FUCK FORGEGRADLE
L1502[19:12:14] <pixlepix> Figured it out
L1503[19:12:24] <pixlepix> FG was including the library twice for some unknown reason
L1504[19:13:28] <pixlepix> @TehNut Because the API wasn't enough for my needs, and it's standard practice to use a deobf of baubles?
L1505[19:14:01] <TehNut> There is no need for deobf jars as of 1.8.8
L1506[19:14:57] ⇦ Quits: Cojo (~Cojo@2606:a000:4c46:8d00:a914:39b0:928e:8573) (Quit: If we wish to explore, if we wish to see what's over the next hill, wonders unfold before us; all we have to do is want it enough.)
L1507[19:15:26] <pixlepix> Really? I pulled this from some other people
L1508[19:15:48] <pixlepix> Have been gone for a *really* long time, but how does that work?
L1509[19:16:03] <diesieben07> you use deobfCompile 'fooBar' instead of compile
L1510[19:16:11] <diesieben07> and FG deobfuscates the thing
L1511[19:16:38] <gigaherz> it requires using gradle dependencies, though
L1512[19:16:43] <gigaherz> can't just do it on a random lib
L1513[19:16:49] <TehNut> deobfProvided is also there IIRC
L1514[19:16:54] <gigaherz> oh?
L1515[19:17:03] <gigaherz> first time I hear about that
L1516[19:17:23] <TehNut> https://github.com/MinecraftForge/ForgeGradle/blob/b0310471d4852387d0c7e798413a9f023a819100/src/main/java/net/minecraftforge/gradle/user/UserConstants.java#L38
L1517[19:17:31] <pixlepix> How does FG tell your IDE about that?
L1518[19:18:00] <diesieben07> just like it does with any other dependency
L1519[19:18:03] <diesieben07> has nothing to do with FG
L1520[19:18:09] <diesieben07> it's purely gradle functionality
L1521[19:18:38] <pixlepix> But won't your IDE consider that an error?
L1522[19:18:51] <diesieben07> what?
L1523[19:18:55] <TehNut> wut
L1524[19:18:57] <gigaherz> pixlepix: I thin kthe way it works is
L1525[19:19:01] <gigaherz> rather than take the dep directly
L1526[19:19:04] <gigaherz> FG takes the jar
L1527[19:19:08] <gigaherz> deobfuscates it
L1528[19:19:16] <gigaherz> and then tell gradle "this is the actual dependency you want"
L1529[19:19:19] <gigaherz> from the gradle cache
L1530[19:19:33] <elan_oots> http://imgur.com/gIrVcMV anyone see anything wrong with the lighting on my copper ore?
L1531[19:19:47] <diesieben07> it's darker
L1532[19:19:55] <elan_oots> dang it it's not just me
L1533[19:20:00] <pixlepix> Okay, thats pretty sweet
L1534[19:20:10] <elan_oots> What are possible reasons for that?
L1535[19:20:16] <diesieben07> MC version?
L1536[19:20:26] <elan_oots> 1.9.4
L1537[19:20:38] <elan_oots> The texture has the same stone colors as the other ores
L1538[19:21:01] <pixlepix> On another note, what's a good resource in 1.8/1.9 jsons that doesn't assume the reader is 12?
L1539[19:21:02] <diesieben07> any kinda of ... special rendering?
L1540[19:21:15] <TehNut> mod source code
L1541[19:21:30] <elan_oots> Nope it's just a normal block
L1542[19:21:32] <diesieben07> this is a good start at least for blockstates: http://mcforge.readthedocs.io/en/latest/blockstates/introduction/
L1543[19:22:19] <diesieben07> and for models, the minecraft wiki is actually pretty good: http://minecraft.gamepedia.com/Model
L1544[19:22:29] ⇨ Joins: DoodleFungus (~Mutter@207.118.3.22)
L1545[19:22:57] *** Coolway99 is now known as Cway|Away
L1546[19:23:50] <gigaherz> there
L1547[19:23:53] <gigaherz> v1.1.0 release done
L1548[19:24:37] <gigaherz> what the, why the F does the cleanup insist on removing the package from a STRING
L1549[19:24:52] <gigaherz> FMLInterModComms.sendMessage("Waila", "register", "WailaProviders.callbackRegister");
L1550[19:24:55] <gigaherz> it's meant to be
L1551[19:24:55] <gigaherz> FMLInterModComms.sendMessage("Waila", "register", "gigaherz.graph.api.WailaProviders.callbackRegister");
L1552[19:25:03] <diesieben07> cleanup?
L1553[19:25:22] <gigaherz> either "Reformat Code" or the "Rename" refactoring
L1554[19:25:31] <pixlepix> @diesieben07 What about complex items?
L1555[19:26:14] <gigaherz> same thing to my proxy annotation
L1556[19:26:15] <gigaherz> it became clientSide= "ClientProxy"
L1557[19:26:17] ⇨ Joins: mezz_ (~mezz@24.6.28.151)
L1558[19:26:18] ⇨ Joins: Searge_DP (~Searge@c83-252-50-53.bredband.comhem.se)
L1559[19:26:18] MineBot sets mode: +v on mezz_
L1560[19:26:25] <diesieben07> define complex.
L1561[19:26:25] <diesieben07> gigaherz, make sure to not tick the "non-code occurances" thingy
L1562[19:26:27] ⇨ Joins: LexDesktop (~LexManos@172.76.2.58)
L1563[19:26:28] MineBot sets mode: +o on LexDesktop
L1564[19:26:52] ⇦ Quits: DoodleFungus (~Mutter@207.118.3.22) (Remote host closed the connection)
L1565[19:27:37] <pixlepix> I'm looking at an item spread across multiple files for multiple textures
L1566[19:27:56] ⇦ Quits: KGS (~KGS@h-155-4-135-249.na.cust.bahnhof.se) (Ping timeout: 198 seconds)
L1567[19:29:55] <pixlepix> Oh, wait, nevermind
L1568[19:30:00] <pixlepix> Just a weird non-json thing
L1569[19:30:33] *** Cway|Away is now known as Coolway99
L1570[19:31:02] <gigaherz> pixlepix: regarding rendering stuffs, you may also want to look at: https://gist.github.com/williewillus/57d7093efa80163e96e0
L1571[19:31:10] <diesieben07> the jsons are really pretty straightforward. ModelResourceLocation specfies resource domain, path and variant
L1572[19:31:21] <diesieben07> resource domain and path go to a blockstate json which then has the variant inside it
L1573[19:31:36] ⇦ Quits: Mohron (~mohron@2a00:61e0:4054:a201:28e4:348:e4a3:7d4a) (Ping timeout: 384 seconds)
L1574[19:31:36] ⇦ Quits: LexManos (~LexManos@172.76.2.58) (Ping timeout: 384 seconds)
L1575[19:31:36] ⇦ Quits: mezz (~mezz@24.6.28.151) (Ping timeout: 384 seconds)
L1576[19:31:36] ⇦ Quits: SeargeDP (~Searge@c83-252-50-53.bredband.comhem.se) (Ping timeout: 384 seconds)
L1577[19:31:37] <diesieben07> and for hte variant it specifies how that variant shoudl behave, i.e. whcih model to use, how to rotate it, etc.
L1578[19:31:37] <pixlepix> Literally the person whose code I'm looking at, so that should be helpful, thanks
L1579[19:32:10] <diesieben07> for items there is a shortcut if you set the variant to "inventory" it will first look for a simple model in models/item instead of going for the blockstate file directly
L1580[19:32:10] ⇦ Quits: Pentium320 (aperture@31.7.44.169) (Ping timeout: 384 seconds)
L1581[19:32:18] ⇨ Joins: Pentium320 (aperture@31.7.44.169)
L1582[19:50:35] *** Coolway99 is now known as Cway|Away
L1583[19:52:15] <gigaherz> and last release for the night, I think -- https://github.com/gigaherz/GraphLib/releases/tag/v1.1.1
L1584[19:54:50] ⇦ Quits: Abastro (~Abastro@221.138.238.111) (Ping timeout: 384 seconds)
L1585[19:55:46] ⇨ Joins: VikeStep (~VikeStep|@203.15.33.192)
L1586[19:58:50] <gigaherz> night ppl
L1587[19:58:57] *** gigaherz is now known as ghz|afk
L1588[19:59:06] <ghz|afk> tomorrow I'll actually try to use that lib for my own stuff ;P
L1589[20:00:24] <BaronNox> gn8
L1590[20:01:19] ⇨ Joins: PrinceCat (~PrinceCat@58-6-199-119.dyn.iinet.net.au)
L1591[20:01:53] ⇨ Joins: Naiten (Naiten@77.34.127.105)
L1592[20:04:09] *** tterrag|ZZZzzz is now known as tterrag
L1593[20:08:38] ⇨ Joins: Unh0ly_Tigg (~Robert@c-76-115-95-185.hsd1.or.comcast.net)
L1594[20:09:01] <BaronNox> How can I get a NullPointerException on a List when iteration through it with a for/each loop?!
L1595[20:09:12] <BaronNox> iterating*
L1596[20:09:15] <Unh0ly_Tigg> Granted not everything has been put in yet, I'm just going to drop this here.
L1597[20:09:17] <Unh0ly_Tigg> https://gist.github.com/Unh0lyTigg/87d083e9a93df92456e6057a91b78838
L1598[20:11:18] <TehNut> BaronNox: is the list null?
L1599[20:11:41] <BaronNox> nope, it worked fine with 2 entries but on 3 it complains about nullpointer
L1600[20:11:56] <TehNut> Is the value of 3 null?
L1601[20:11:56] <kashike> null item in list?
L1602[20:11:59] <BaronNox> using for/each loop so this shouldn’t actually happen ever
L1603[20:12:02] <BaronNox> nope
L1604[20:12:09] <BaronNox> OHHH
L1605[20:12:11] <BaronNox> OMG
L1606[20:12:22] <BaronNox> naming failing
L1607[20:12:49] <BaronNox> entry3 had the same var name as entry2
L1608[20:13:01] <BaronNox> I feel stupid now
L1609[20:17:00] <BaronNox> somehow that 2 looked like a 3 for me. Maybe shouldn’t code at 3:14am
L1610[20:17:44] ⇦ Quits: Drullkus (~Dru11kus@2601:646:8301:ead3:48fa:51b6:db8a:756d) (Remote host closed the connection)
L1611[20:19:21] ⇦ Quits: Naiten (Naiten@77.34.127.105) (Read error: Connection reset by peer)
L1612[20:22:33] ⇦ Parts: kinggoesgaming (uid23106@id-23106.tooting.irccloud.com) ())
L1613[20:31:50] ⇨ Joins: Drullkus (~Dru11kus@c-67-180-188-243.hsd1.ca.comcast.net)
L1614[20:35:59] *** willieaway is now known as williewillus
L1615[20:42:22] <elan_oots> If I change the inventory in a tile entity do I have to do anything special to get the GUI updated on the client?
L1616[20:44:40] <williewillus> sync the inventory
L1617[20:44:54] <elan_oots> How can I do that?
L1618[20:44:58] <williewillus> packets :P
L1619[20:45:04] <tterrag> uhhh it should do that automatically
L1620[20:45:10] <tterrag> detectAndSendChanges compares every tick
L1621[20:45:17] <tterrag> I've never had to do anything manually for that
L1622[20:45:18] <williewillus> well while it's open
L1623[20:45:23] <williewillus> I'm not sure what your scenario is :P
L1624[20:45:30] <elan_oots> Just a typical machine
L1625[20:45:30] *** Cway|Away is now known as Coolway99
L1626[20:45:37] <williewillus> then yeah it should be synced for you
L1627[20:45:40] <elan_oots> Cool
L1628[20:45:42] <williewillus> provided you setup your containers right
L1629[20:45:46] <elan_oots> What about a field like a progress bar?
L1630[20:45:56] <tterrag> there is a vanilla way to do that
L1631[20:45:59] <tterrag> but it's strange
L1632[20:46:10] <tterrag> you can look at how the furnace does it
L1633[20:46:10] <williewillus> it's limited to a short if you don't use a custom packet :P
L1634[20:46:11] <elan_oots> getField and setField?
L1635[20:46:14] <williewillus> yes
L1636[20:46:16] <williewillus> wait
L1637[20:46:17] <tterrag> no
L1638[20:46:19] <williewillus> no not that one
L1639[20:46:20] <tterrag> updateProgressBar
L1640[20:46:22] <elan_oots> Ahh
L1641[20:46:23] <elan_oots> Ok
L1642[20:46:25] <tterrag> in teh container
L1643[20:46:38] <elan_oots> I'll look at the furnace
L1644[20:46:40] <williewillus> I needed the full int range for that so I send custom packets with the full int
L1645[20:46:48] <williewillus> no idea why it uses shorts (notchcode :P)
L1646[20:48:04] <elan_oots> well I don't need 65536 values so I think I'm good
L1647[20:48:08] <elan_oots> I'll check how furnace does it
L1648[20:49:12] ⇨ Joins: Abastro (~Abastro@221.138.238.111)
L1649[20:49:37] ⇦ Quits: Coolway99 (~cway@66.212.212.2) (Remote host closed the connection)
L1650[20:50:10] <elan_oots> Ok so sendProgressBarUpdate uses the getField and setField methods
L1651[20:50:51] <williewillus> yes but you don't have to do it that way
L1652[20:51:38] *** Mine|dreamland is now known as minecreatr
L1653[20:54:20] ⇨ Joins: BaronNox_ (~BaronNox@pD9E98A46.dip0.t-ipconnect.de)
L1654[20:55:28] ⇦ Quits: Sangar (~Sangar@2001:41d0:2:b7b9::) (Ping timeout: 384 seconds)
L1655[20:55:41] ⇦ Quits: smbarbour (~smbarbour@c-73-211-171-154.hsd1.il.comcast.net) (Ping timeout: 186 seconds)
L1656[20:56:10] ⇦ Quits: BaronNox (~BaronNox@pD9E98E71.dip0.t-ipconnect.de) (Ping timeout: 186 seconds)
L1657[20:56:10] *** BaronNox_ is now known as BaronNox
L1658[20:56:22] *** Mumfrey is now known as mumfrey
L1659[20:58:06] ⇨ Joins: Sangar (~Sangar@2001:41d0:2:b7b9::)
L1660[20:59:07] <elan_oots> What is an IContainerListener?
L1661[20:59:32] ⇨ Joins: killjoy (~killjoy@2606:a000:1118:c06d:6906:7731:e399:ac00)
L1662[20:59:45] <Tazz> wtsf
L1663[20:59:50] <williewillus> exactly that, something that listenms to updates from a container
L1664[20:59:53] <williewillus> usually a player
L1665[20:59:56] <elan_oots> Ok
L1666[21:00:01] <Tazz> Ive been working on this constant propagator for like 2-3 days and all it needed was a line change >.,
L1667[21:02:28] ⇨ Joins: smbarbour (~smbarbour@c-73-211-171-154.hsd1.il.comcast.net)
L1668[21:03:04] <elan_oots> Also is it possible to convert a CombinedInvWrapper to an IInventory?
L1669[21:03:08] <williewillus> no
L1670[21:03:13] <williewillus> they are completely different systems
L1671[21:03:18] <williewillus> you shouldn't be using IInventory
L1672[21:03:21] <elan_oots> Ok
L1673[21:04:34] ⇦ Quits: yopu (~yopu@184-89-171-53.res.bhn.net) (Ping timeout: 186 seconds)
L1674[21:09:53] ⇦ Quits: MalkContent (kiwiirc@p5B02D971.dip0.t-ipconnect.de) (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
L1675[21:14:31] <Tazz> williewillus, wanna see a cool algorithm?
L1676[21:15:18] ⇦ Quits: Sangar (~Sangar@2001:41d0:2:b7b9::) (Ping timeout: 384 seconds)
L1677[21:16:06] ⇨ Joins: Sangar (~Sangar@2001:41d0:2:b7b9::)
L1678[21:16:29] ⇦ Quits: VikeStep (~VikeStep|@203.15.33.192) (Ping timeout: 186 seconds)
L1679[21:26:04] ⇦ Quits: Sangar (~Sangar@2001:41d0:2:b7b9::) (Ping timeout: 384 seconds)
L1680[21:30:51] ⇦ Quits: Turkey (~Turkey@cpe-24-95-73-99.columbus.res.rr.com) (Read error: Connection reset by peer)
L1681[21:35:58] *** williewillus is now known as willieaway
L1682[21:36:01] ⇨ Joins: Andres_ (webchat@187.153.111.168)
L1683[21:40:07] ⇦ Quits: Andres_ (webchat@187.153.111.168) (Ping timeout: 195 seconds)
L1684[21:43:07] <BaronNox> omg i forgot like all those sideonly calls so far :C
L1685[21:47:57] <elan_oots> Ok so I have a block that has a BlockState that has a boolean that it gets from its TileEntity
L1686[21:48:02] <elan_oots> And in the F3 menu that works fine
L1687[21:48:10] <elan_oots> But it doesn't ever change the blockstate it renders
L1688[21:53:44] ⇨ Joins: VikeStep (~VikeStep|@203.15.33.192)
L1689[21:55:50] ⇦ Quits: Brokkoli (~Brokkoli@p5B23C522.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))
L1690[21:55:55] ⇨ Joins: Andres_ (~Andres@187.153.111.168)
L1691[21:56:13] ⇨ Joins: OneM_Industries (~OneM_Indu@69.27.73.255)
L1692[21:56:20] <Andres_> I have a question, how do I know which mods are inactive on my load order?
L1693[21:56:43] <Andres_> e.g. 270 mods loaded, 266 mods active
L1694[21:57:08] ⇨ Joins: MiningMark48 (~MiningMar@h228.58.187.173.dynamic.ip.windstream.net)
L1695[21:57:23] ⇦ Quits: elan_oots (~elan_oots@ip-64-134-34-94.public.wayport.net) (Remote host closed the connection)
L1696[21:57:28] <MiningMark48> Question: What is 1.9.4's version of Stat Collector?
L1697[21:57:53] *** Andres_ is now known as Andres
L1698[21:58:03] ⇦ Quits: VikeStep (~VikeStep|@203.15.33.192) (Client Quit)
L1699[21:58:28] ⇦ Quits: Abastro (~Abastro@221.138.238.111) (Remote host closed the connection)
L1700[21:59:27] <Andres> Anyone? No?
L1701[21:59:28] ⇨ Joins: Abastro (~Abastro@221.138.238.111)
L1702[21:59:51] <BaronNox> Andres: They should be greyed out iirc. They are most likely sub-mods like MFR’s recipes for Thermal Expansion and such
L1703[22:00:28] <Andres> Greyed out where exactly? The mod list?
L1704[22:00:32] <BaronNox> yep
L1705[22:00:37] <Andres> Oooooh.
L1706[22:01:06] <Andres> Ok so if say, MFR has a compattibility thingy for a mod I don't have, it will list it as a disabled mod?
L1707[22:01:17] <BaronNox> indeed it will
L1708[22:01:46] <Andres> That is very much appreciated- thank you.
L1709[22:01:51] <BaronNox> no problem
L1710[22:01:56] ⇦ Parts: Andres (~Andres@187.153.111.168) (Leaving))
L1711[22:02:15] ⇨ Joins: SatanicSanta (~SatanicSa@c-76-115-175-15.hsd1.or.comcast.net)
L1712[22:03:05] <BaronNox> MiningMark48 http://www.minecraftforge.net/forum/index.php?topic=39435.0
L1713[22:03:58] <BaronNox> MiningMark48 tl;dr: net.minecraft.util.text.translation.I18n is the new StatCollector
L1714[22:04:10] ⇦ Parts: OneM_Industries (~OneM_Indu@69.27.73.255) ())
L1715[22:04:42] ⇦ Quits: smbarbour (~smbarbour@c-73-211-171-154.hsd1.il.comcast.net) (Ping timeout: 192 seconds)
L1716[22:04:42] <MiningMark48> ok thanks
L1717[22:04:49] <BaronNox> np
L1718[22:05:28] <BaronNox> elan_oots can u link src?
L1719[22:07:02] ⇨ Joins: smbarbour (~smbarbour@c-73-211-171-154.hsd1.il.comcast.net)
L1720[22:11:11] ⇨ Joins: Ferdz_TheWeeb (~Ferdz@24.225.201.205)
L1721[22:11:32] <Ferdz_TheWeeb> Is there some sort of event I can listen to for when the player closes an inventory?
L1722[22:12:01] <Ferdz_TheWeeb> When he closes a GUI actually, not necessarilly an inventory
L1723[22:13:01] <BaronNox> Your own or another modder’s/vanilla?
L1724[22:13:06] ⇦ Quits: Abastro (~Abastro@221.138.238.111) (Ping timeout: 384 seconds)
L1725[22:13:14] <kashike> https://github.com/MinecraftForge/MinecraftForge/blob/1.10.0/src/main/java/net/minecraftforge/event/entity/player/PlayerContainerEvent.java
L1726[22:13:16] <kashike> https://github.com/MinecraftForge/MinecraftForge/blob/1.10.0/src/main/java/net/minecraftforge/client/event/GuiOpenEvent.java
L1727[22:14:49] <Ferdz_TheWeeb> It's a vanilla gui (the book) and I want it when it closes, or even better when he signs it, not open kashike
L1728[22:15:30] <BaronNox> You can cancel GuiOpenEvent
L1729[22:15:36] <BaronNox> So it wont open
L1730[22:15:42] <Ferdz_TheWeeb> I don't want to cancel the open event
L1731[22:16:18] <Ferdz_TheWeeb> I made it so the player can place the book and quill, and edit it, but when he signs it, I want to catch that even to handle that
L1732[22:18:10] <BaronNox> mmh as far as I can see there are 2 ways
L1733[22:18:18] <Ferdz_TheWeeb> Yeah?
L1734[22:18:24] <BaronNox> according to larsgerrits:
L1735[22:18:25] <BaronNox> You can use the GuiOpenEvent, in which the GuiScreen object is null when closing a gui.
L1736[22:18:28] *** Darkhax is now known as Darkhax_AFK
L1737[22:19:02] <BaronNox> According to KeeperofMee: You can also use currentScreen in any class -> Minecraft.getMinecraft().currentScreen
L1738[22:19:32] <Ferdz_TheWeeb> Won't Minecraft.getMinecraft() return null on server-side?
L1739[22:19:43] <BaronNox> it will return null if no gui is open
L1740[22:19:47] <BaronNox> iirc
L1741[22:20:22] <BaronNox> one of those 2 ways should do what u want
L1742[22:20:22] <BaronNox> http://www.minecraftforge.net/forum/index.php?topic=22485.0
L1743[22:20:38] <BaronNox> here is a forum link of some1 asking the same question so it might help u
L1744[22:20:57] <BaronNox> at least it worked for him
L1745[22:21:18] ⇨ Joins: keybounce (~keybounce@45-25-230-67.lightspeed.bkfdca.sbcglobal.net)
L1746[22:21:20] <Ferdz_TheWeeb> Yeah looks like it
L1747[22:21:56] <Ferdz_TheWeeb> I'm going to look into that and see if I can get the information I need from that event to create a written book
L1748[22:22:09] <Unh0ly_Tigg> technically, calling Minecraft.getMinecraft() would causing a class not found exception serverside, since the Minecraft class is client side only
L1749[22:22:25] <Unh0ly_Tigg> so long as you're talking about the physical client and server.
L1750[22:22:50] <Ferdz_TheWeeb> Yep that's what I was thinking
L1751[22:23:18] <Ferdz_TheWeeb> I'll try the event later tonight, see what info Container holds
L1752[22:23:23] <Unh0ly_Tigg> anything that has a @SideOnly annotation on it will only appear on the side declared in the annotation.
L1753[22:24:37] <BaronNox> http://www.minecraftforge.net/forum/index.php?topic=22764.0 nice article from die7 about how/when to use SideOnly
L1754[22:26:34] <BaronNox> Die7: „Moreover: @SideOnly is not made to be used by mods.“
L1755[22:27:38] ⇨ Joins: McJty (~jorrit@94-225-203-206.access.telenet.be)
L1756[22:29:16] <Unh0ly_Tigg> welp, looks like I'm going to either have to wait a bit longer for forge based multipart support, wait for alpha mcmp builds for 1.10 in case that happens, or make my own multipart system, and replace it once forge based multipart support is added...
L1757[22:29:19] <Tazz> oh how I love how inptr_t is getting fucked with right now >.<
L1758[22:30:34] <BaronNox> hasn’t forge recently added its mulripart system? I remeber Lex did his last revisions on it a few weeks ago
L1759[22:30:45] <Unh0ly_Tigg> https://github.com/MinecraftForge/MinecraftForge/pull/2984#issuecomment-226635933
L1760[22:31:21] <BaronNox> Ohh FeelsBadMan
L1761[22:32:10] ⇦ Quits: iso2013 (~iso2013@c-67-176-10-45.hsd1.co.comcast.net) (Read error: Connection reset by peer)
L1762[22:32:14] <Unh0ly_Tigg> and I have to wait for this, because I don't currently have anything to code against...
L1763[22:33:22] ⇨ Joins: Kolatra (~Kolatra@abrarsyed.com)
L1764[22:33:53] <BaronNox> Might still take a bit then. Not sure how high the priority is for multipart when 1.10 is on the way
L1765[22:34:28] <Unh0ly_Tigg> hopefully not a whole lot needs to change for the multipart system for it to work in 1.10.
L1766[22:34:45] <Unh0ly_Tigg> since a fair number of 1.9.4 mods work out of the box in 1.10
L1767[22:35:43] *** cpw is now known as cpw|out
L1768[22:37:02] <BaronNox> Yeah. Would be nice to have such a powerful system up and running.
L1769[22:37:48] <Tazz> haha I have seriously broke Eschelle XD
L1770[22:39:48] ⇦ Quits: PrinceCat (~PrinceCat@58-6-199-119.dyn.iinet.net.au) (Quit: My Mac has gone to sleep. ZZZzzz…)
L1771[22:41:28] *** kroeser|away is now known as kroeser
L1772[22:41:35] *** cj89898|Sleep is now known as cj89898
L1773[22:41:44] ⇦ Quits: Lathanael (~Lathanael@p54960C47.dip0.t-ipconnect.de) (Ping timeout: 198 seconds)
L1774[22:44:10] *** Darkhax_AFK is now known as Darkhax
L1775[22:44:41] ⇦ Quits: Vazkii (~Vazkii@a79-169-163-74.cpe.netcabo.pt) (Read error: Connection reset by peer)
L1776[22:45:35] <BaronNox> Where should the logic for handling which items are valid for which slot go?
L1777[22:46:08] ⇦ Quits: alekso56 (~znc@2001:464b:c2aa:0:745d:45ff:fe3b:a098) (Ping timeout: 190 seconds)
L1778[22:46:33] <BaronNox> I currently handle it inside TileEntity#update()
L1779[22:47:08] ⇦ Quits: Ferdz_TheWeeb (~Ferdz@24.225.201.205) (Ping timeout: 198 seconds)
L1780[22:48:35] ⇨ Joins: alekso56 (~znc@2001:464b:c2aa:0:745d:45ff:fe3b:a098)
L1781[22:49:01] <BaronNox> Could do it in a class extending ItemStackHandler and modify insertItem() to only accept certain items?
L1782[22:49:07] ⇨ Joins: Lathanael|Away (~Lathanael@p549606E1.dip0.t-ipconnect.de)
L1783[22:50:16] ⇦ Quits: pixlepix (uid14779@id-14779.ealing.irccloud.com) (Quit: Connection closed for inactivity)
L1784[22:51:00] *** kroeser is now known as kroeser|away
L1785[22:52:03] ⇨ Joins: elan_oots (~elan_oots@ip-64-134-34-94.public.wayport.net)
L1786[22:52:18] <elan_oots> I have an issue with blockstates, the wrong BlockState is being rendered
L1787[22:52:27] <elan_oots> The right one shows up in the F3 menu but it isn't rendered
L1788[22:54:21] <BaronNox> Can you link the source? Pretty hard to say what’s wrong without it.
L1789[22:54:52] ⇨ Joins: Abastro (~Abastro@221.138.238.111)
L1790[22:55:30] <elan_oots> https://github.com/factorsofx/BlackBox/blob/master/src/main/java/com/elan_oots/blackbox/tileentity/FiberSpinnerTileEntity.java
L1791[22:55:35] <elan_oots> This is the TileEntity
L1792[22:55:49] <elan_oots> https://github.com/factorsofx/BlackBox/blob/master/src/main/java/com/elan_oots/blackbox/blocks/BBMachineBlock.java
L1793[22:55:52] <elan_oots> This is the block
L1794[22:56:06] <elan_oots> The model doesn't change when the Active property changes
L1795[22:58:32] ⇦ Quits: SatanicSanta (~SatanicSa@c-76-115-175-15.hsd1.or.comcast.net) (Ping timeout: 198 seconds)
L1796[22:58:48] <Tazz> rofl are your programs overflowing their stack? increase the default stack size....nothing could ever go wrong with that rofl
L1797[22:59:28] <elan_oots> what?
L1798[23:00:08] <Tazz> oh Im just being a dumbass because I borked a project pretty bad somehow XD
L1799[23:00:57] <Tazz> keeps overflowing the stack because somehow it was a good idea to use intptr_t and uintptr_t interchangeably rofl
L1800[23:01:37] <BaronNox> Couldn’t find a rendering solution :( But you shouldn’t modify the stack this way: handlerOutput.getStackInSlot(0).stackSize++; (from javadoc: IMPORTANT: This ItemStack MUST NOT be modified. This method is not for altering an inventories contents. Any implementers who are able to detect modification through this method should throw an exception.)
L1801[23:02:03] <elan_oots> oh
L1802[23:02:12] <elan_oots> what should I do to add an item then?
L1803[23:02:31] <BaronNox> I made my own methods for that. Not sure what is the recommended way though
L1804[23:02:37] ⇨ Joins: Sangar (~Sangar@2001:41d0:2:b7b9::)
L1805[23:04:04] <BaronNox> like this: http://paste.ubuntu.com/18075686/
L1806[23:04:36] <BaronNox> oh found some old debug messages \o/
L1807[23:05:46] ⇦ Quits: MiningMark48 (~MiningMar@h228.58.187.173.dynamic.ip.windstream.net) (Quit: Leaving)
L1808[23:13:37] ⇨ Joins: npe|office (~NPExcepti@bps-gw.hrz.tu-chemnitz.de)
L1809[23:14:21] ⇦ Quits: primetoxinz (~primetoxi@ip68-107-226-229.hr.hr.cox.net) (Ping timeout: 186 seconds)
L1810[23:14:24] ⇦ Quits: MattDahEpic (~MattDahEp@65-128-125-182.hlrn.qwest.net) (Ping timeout: 192 seconds)
L1811[23:15:56] ⇦ Quits: Sangar (~Sangar@2001:41d0:2:b7b9::) (Ping timeout: 198 seconds)
L1812[23:19:08] ⇨ Joins: Sangar (~Sangar@2001:41d0:2:b7b9::)
L1813[23:21:52] ⇦ Quits: KnightMiner (~KnightMin@68.255.1.247) (Read error: Connection reset by peer)
L1814[23:23:40] ⇦ Quits: elan_oots (~elan_oots@ip-64-134-34-94.public.wayport.net) (Remote host closed the connection)
L1815[23:27:50] ⇨ Joins: primetoxinz (~primetoxi@ip68-107-226-229.hr.hr.cox.net)
L1816[23:31:37] *** minecreatr is now known as Mine|away
L1817[23:37:04] ⇦ Quits: Upth (~ogmar@108-85-88-44.lightspeed.frokca.sbcglobal.net) (Quit: this quit message is 100% guaranteed not to contain obscenity.)
L1818[23:39:38] ⇨ Joins: Upth (~ogmar@108-85-88-44.lightspeed.frokca.sbcglobal.net)
L1819[23:41:32] <Unh0ly_Tigg> and build 2001 of forge is for 1.10.2! \o/
L1820[23:43:46] ⇦ Quits: Abastro (~Abastro@221.138.238.111) (Ping timeout: 384 seconds)
L1821[23:46:57] ⇦ Quits: McJty (~jorrit@94-225-203-206.access.telenet.be) (Quit: Ik ga weg)
L1822[23:51:21] <Unh0ly_Tigg> Lex, version 12.18.0.2001 is for 1.10.2, but is under the 1.10.0 branch. You aware of this oddity (prior to now)?
L1823[23:56:26] ⇨ Joins: Ipsis (~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk)
<<Prev Next>> Scroll to Top